@charset "UTF-8";
/* CSS Document */

.lay-nav {
	display: none;
}

.maincontents-inner {
    text-align: center;
}

.contents02 .midashi-box {
    background-image: url("../common/images/title-back01.svg");
background-position: center;
background-repeat: no-repeat;
background-size: auto 15px;
}


.layout01 h4, .contents03 h4 {
    font-family: var(--title-font);
font-weight: var(--base-weight);
}

.layout02 ul li, .layout04 h5, .contact table td:first-child, .layout05 h5, .layout05 h6 {
    font-family: var(--sub-font);
    font-weight: var(--base-weight2);
}


/* contents01 */

.contents01 {
    width: 100%;
    background-image: url("images/back01.png");
background-position: center top;
background-repeat: repeat-x;
background-size: auto 930px;
    text-align: center;
    padding-top: 30px;
}

/* contents03 */

.contents03 {
	padding: 100px 0px;
	background : #e3eeee;
}

.contents03 .layout-contents01 {
	margin-bottom: 80px;
}

/* layout01 */

.layout01 {
    margin-bottom: 100px;
}

.layout01 h4 {
	font-size: 23px;
line-height: 2.2;
letter-spacing: 0.15em;
    margin-bottom: 40px;
}

.layout01 p {
	line-height: 2.4;
}


/* layout02 */

.layout02 {
	padding: 60px 60px;
	background : #FFF;
    border-style : solid;
border-color : var(--color-main);
border-width : 2px;
    border-radius: 15px;
}

.layout02 .lay01 ul li {
	font-size: 18px;
line-height: 2;
letter-spacing: 0.05em;
    text-align: left;
    position: relative;
    padding-left: 30px;
}

.layout02 .lay01 ul li span {
	color : var(--color-main);
    font-size: 22px;
}

.layout02 .lay01 ul li::before {
    content: "";
	position: absolute;
left: 0px;
top: 3px;
	width: 20px;
	height: 20px;
    border-style : solid;
border-color : #000000;
border-width : 1px;
    border-radius: 50%;
}

.layout02 .lay01 ul li:not(:last-child) {
	margin-bottom: 25px;
}


/* layout03 */

.layout03:not(:last-child) {
    margin-bottom: 100px;
}

.layout03 .box {
    display: flex;
  justify-content: space-between;
    padding: 30px 5px;
    border-bottom-style : dotted;
border-color : var(--color-sub);
border-width : 3px;
}

.layout03 .box:first-child {
    border-top-style : dotted;
}


.layout03 .box-title {
    width: 210px;
    background-color: var(--color-sub3);
    padding: 15px 0px;
    display: flex;
  justify-content: center;
align-items: center;
flex-wrap: wrap;
    border-radius: 8px;
}

.layout03 .box-text {
    flex: 1;
    padding-left: 40px;
    text-align: left;
    display: flex;
  justify-content: flex-start;
align-items: center;
}

.layout03 h5 {
color: #FFF;
line-height: 1.2;
letter-spacing: 0.1em;
font-weight: var(--base-weight);
}



/* layout04 */

.layout04 .box-contact {
    display: flex;
  justify-content: space-between;
flex-wrap: wrap;
}

.layout04 .box-contact > div {
    width: 48%;
    height: 170px;
    background-color: #FFF;
    border-radius: 20px;
    display: flex;
  justify-content: center;
align-items: center;
flex-wrap: wrap;
    flex-direction: column;
    gap:20px;
}

.layout04 h4 {
    font-size: 26px;
line-height: 1.8;
letter-spacing: 0.15em;
    margin-bottom: 70px;
}

.layout04 h5 {
    font-size: 26px;
line-height: 1.2;
letter-spacing: 0.05em;
    color: var(--color-sub);
}

.layout04 .box-line h5 {
    font-size: 19px;
}


.layout04 .box-tel h6, .layout04 .box-tel h6 a {
    font-family: var(--number-font);
	line-height: 1.2;
	font-weight: var(--base-weight);
	font-size: 45px;
	color: var(--color-sub2);
}


.layout04 .box-tel h6 {
	display: inline-block;
	position: relative;
	padding-left: 35px;
}

.layout04 .box-tel h6::before {
	content: "";
	position: absolute;
left: 0px;
bottom: 5px;
	background-image: url("../common/images/tel-footer.svg");
background-position: left bottom;
background-repeat: no-repeat;
	background-size: auto 100%;
	width: 26px;
	height: 32px;
}


/* layout05 */

.layout05 .box {
	display: flex;
  justify-content: space-between;
flex-wrap: wrap;
    padding: 0px 30px;
}

.layout05 .box:not(:last-child) {
	margin-bottom: 50px;
    padding-bottom: 50px;
     border-bottom-style : dotted;
border-color : var(--color-main);
border-width : 3px;
}

.layout05 .box-title {
	width: 240px;
    background-color: var(--color-sub);
    border-radius: 20px;
    display: flex;
  justify-content: center;
align-items: center;
flex-wrap: wrap;
}

.layout05 .box-detail {
	flex: 1;
    padding: 10px 0px;
    padding-left: 50px;
    text-align: left;
}

.layout05 h5 {
	font-size: 30px;
color: #FFF;
line-height: 1;
letter-spacing: 0.1em;
    text-align: center;
}

.layout05 h5 span {
	font-size: 20px;
}

.layout05 h6 {
	font-size: 22px;
line-height: 1.4;
letter-spacing: 0.1em;
    margin-bottom: 20px;
}

.layout05 p a {
    color: var(--color-main);
}


/* contact */

.contact table {
	width: 100%;
	text-align: left;
}

.contact table tr {
	display: flex;
  justify-content: space-between;
flex-wrap: wrap;
    border-radius: 8px;
    overflow: hidden;
}

.contact table tr:not(:last-child) {
	margin-bottom: 25px;
}

.contact table tr td {
    font-family: var(--sub-font);
    font-weight:  var(--base-weight);
    color: var(--color-sub2);
	font-size: 18px;
    line-height: 1.2;
letter-spacing: 0.1em;
}

.contact table tr td:first-child {
	flex: 1;
color: #FFF;
    background-color: var(--color-sub2);
    display: flex;
  justify-content: center;
align-items: center;
flex-wrap: wrap;
    padding: 15px 0px;
}

.contact table tr td:last-child {
	width: 75%;
    background-color: #FFF;
    display: flex;
  justify-content: flex-start;
align-items: center;
flex-wrap: wrap;
}

.contact table tr.box-radio td:last-child {
    background-color: rgba(0,0,0,0);
    padding-left: 20px;
}

.contact table span.sp-view {
	display: none;
}

.contact table tr td input {
	width:100%;
	border-radius: 10px;
	border-style : solid;
border-color : rgba(0,0,0,0);
border-width : 1px;
}

.contact table tr td input.radio {
	width: 15px;
}

.contact table tr td textarea {
	width:100%;
	border-radius: 10px;
	border-style : solid;
border-color : rgba(0,0,0,0);
border-width : 1px;
}

.contact table tr.errer td {
	color: var(--color-main);
	vertical-align: middle;
}


.contact span.c01 {
	line-height: 1.6;
	color: var(--color-main);
	vertical-align: top;
	display: inline-block;
	padding-left: 10px;
}

p.text02 {
	line-height: 1.6;
}

.contact p.error_messe {
    color: var(--color-main);
}

input,textarea,button{
	margin:0;
	padding:10px;
	font-size:100%;
	font-weight: 400;
}

td div.space {
	margin-top: 20px;
}

input[type="text"] {
	outline: 0;
	border: 1px solid rgba(0,0,0,0);
}

textarea[type="textarea"] {
	border: 1px solid rgba(0,0,0,0);
	padding: 10px;
}


.button {
	text-align: center;
	margin-top: 50px;
}

button {
	cursor: pointer;
	border:none;
	background-color:rgba(0,0,0,0);
}

.button img {
	height:40px;
	width:auto;
}

button span, a.btn-mail, .btn-box input, .btn-back {
	display:inline-block;
	padding:20px 70px;
    font-family: var(--sub-font);
	background-color:var(--color-sub3);
    font-weight: var(--base-weight2);
	color:#FFF;
    font-size: 18px;
	letter-spacing:0.1em;
	transition: .5s;
	border : solid rgba(255,255,255,0) 1px;
	border-radius: 8px;
}

button:hover span, a.btn-mail:hover, .btn-box input:hover, .btn-back:hover {
	background-color: var(--color-sub);
}


.btn-box {
	padding-top: 40px;
	margin-bottom:30px;
	display: flex;
  justify-content: center;
align-items: center;
flex-wrap: wrap;
	gap:10px;
}



#formWrap {
	width:100%;
	padding-top: 40px;
	padding-bottom: 40px;
	margin:0 auto;
	line-height:1.6;
	font-size: var(--base-font-size);
}

table.formtable{
	width:100%;
	margin:0 auto;
	border-collapse:collapse;
}

table.formtable td, table.formtable th {
	font-family: var(--sub-font);
    font-weight:  var(--base-weight);
    color: var(--color-sub2);
	font-size: 18px;
    line-height: 1.2;
letter-spacing: 0.1em;
}

table.formtable th{
	flex: 1;
color: #FFF;
    background-color: var(--color-sub2);
    display: flex;
  justify-content: center;
align-items: center;
flex-wrap: wrap;
    padding: 15px 0px;
}

table.formtable td:last-child{
	padding-left: 20px;
}


.contact h4 {
    font-family: var(--sub-font);
    font-weight: var(--base-weight);
	line-height: 1.6;
	letter-spacing: 0.05em;
	margin-bottom:30px;
}

.contact h5 {
	font-family: var(--sub-font);
    font-weight: var(--base-weight);
	line-height: 1.6;
	letter-spacing: 0.3em;
	font-size: 24px;
	text-align: center;
	margin-bottom: 20px;
}

span.text003 {
	display:none;
}


.contact .checktext {
    width: 100%;
	text-align: center;
	padding-top: 70px;
}

.contact .checktext h6 {
    font-family: var(--sub-font);
    font-weight: var(--base-weight);
	font-size: 20px;
line-height: 1.2;
    letter-spacing: 0.1em;
letter-spacing: 0.16;
	margin-bottom: 20px;
}

.contact .checktext div.box-text {
	background-color: #FFF;
	margin-bottom: 20px;
	text-align: left;
	overflow: auto;
	height: 200px;
}

.contact .checktext div.box-text .box-box {
	padding: 30px;
}

.contact .checktext div.box-text p {
    line-height: 1.8;
    letter-spacing: 0.05em;
}

.contents-contact .maincontents-inner {
	padding-top: 0px;
}


/* box-movie */

.box-movie {
    padding-top: 80px;
	width: 700px;
}

.box-movie .box-inner {
    position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.box-movie .box-inner iframe {
   position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

/*date*/
.date h4 {
	margin-bottom: 70px;
	font-family: var(--sub-font);
    font-weight: var(--base-weight);
	color: #1fa6ab;
	font-size: 40px;
} 



.sp-view {
	display: none;
}
