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


@media screen and (max-width: 737px) {

	
.maincontents-inner section:not(:last-child) {
	margin-bottom: 70px;
}

/* contents01 */

.maincontents-inner section.contents01 {
	margin-bottom: 40px;
}

/* contents03 */

.maincontents-inner section.contents03 {
	padding-bottom: 60px;
}

.contents03::before {
	height: 85%;
}

/* contents04 */

.maincontents-inner section.contents04, .maincontents-inner section.contents07, .maincontents-inner section.contents08 {
	width: 88%;
}

.contents04 h2 {
	font-size: 22px;
line-height: 1.2;
	margin-bottom: 20px;
}

.contents04 .box-text {
	text-align: left;
	margin-bottom: 40px;
}

/* contents05 */

.contents05 {
	padding: 60px 0px;
}


/* layout01 */

.layout01 h2 {
	font-size: 18px;
letter-spacing: 0.05em;
	padding: 10px 30px;
}

.layout01 h3 {
	font-size: 24px;
letter-spacing: 0.1em;
font-weight: 400;
	padding: 20px 0px 30px;
}

.layout01 ul {
	gap:12px 2%;
	padding: 0px 20px;
}

.layout01 ul li {
	width: 49%;
}

.layout01 ul li a {
	font-size: 16px;
letter-spacing: 0em;
	padding: 13px 0px;
}

/* layout02 */

.layout02, .layout09 {
	padding-bottom: 60px;
}

.layout02 .box-detail {
	width: 88%;
	border-radius: 25px;
}

.contents09 .layout02 .box-detail {
	padding: 30px 25px;
}

.contents02 .layout02 .box-detail .box {
  justify-content: center;
	flex-direction: column;
}

.contents02 .layout02 .box-detail .box:nth-child(even) {
	flex-direction: column;
}

.layout02 .box-detail .box > div {
	width: 100%;
}
	
.layout02 .box-detail .box-text {
	padding: 30px 20px;
}

.layout02 h2 {
	padding: 30px 0px;
	font-size: 20px;
letter-spacing: 0.1em;
	margin-bottom: 35px;
}

.layout02 h3, .layout03 h3 {
	font-size: 30px;
letter-spacing: 0.15em;
}

.layout03 h3 {
	padding: 20px 0px 10px;
	margin-bottom: 25px;
}

.contents02 .layout02 p, .layout03 p {
	font-size: 22px;
letter-spacing: 0.05em;
}
	
.contents02 .layout02 p.vision {
	font-size: 22px;
letter-spacing: 0.05em;
}	
	
.layout03 p {
	font-size: 17px;
}

/* layout03 */

.layout03 {
	padding: 40px 0px;
}

.layout03 .box-inner {
	width: 88%;
}
	
.layout03 ul li {
	font-size: 16px;
line-height: 1.4;
	text-indent: -16px;
	margin-left: 16px;
}	

/* layout04 */

.layout04 {
	width: 88%;
	margin-bottom: 50px;
	padding-top: 50px;
}

.layout04::before {
	font-size: 20px;
letter-spacing: 0.05em;
}

.layout04 .box-movie {
	border-radius: 20px;
}

/* layout05 */

.layout05 {
	width: 88%;
}

.layout05 .box-inner .box {
  justify-content: center;
	flex-direction: column;
}

.layout05 .box-inner .box:not(:last-child) {
	margin-bottom: 40px;
}

.layout05 .box-inner .box-img {
	width: 100%;
	text-align: center;
}

.layout05 .box-inner .box-img img {
	max-width: 400px;
}

.layout05 .box-inner .box-text {
	padding-left: 0px;
	width: 100%;
}

.layout05 h4, .layout08 h4 {
	font-size: 20px;
letter-spacing: 0.1em;
	margin-bottom: 25px;
	padding: 10px 20px;
}

.layout05 h5, .layout05 h6, .contents04 h3, .layout06 ul li, .layout09 h4 {
	font-size: 17px;
letter-spacing: 0.05em;
	margin-bottom: 40px;
}

.layout05 h6 {
	margin-bottom: 20px;
}

.contents04 h3 {
	margin-bottom: 15px;
}

.layout06 ul li {
	margin-bottom: 0px;
}

.layout09 h4 {
	padding: 30px 0px;
	margin-bottom: 50px;
}

/* layout06 */

.layout06 {
	padding: 30px 25px;
}

.layout06 ul li {
	text-align: left;
	text-indent: -17px;
	margin-left: 17px;
}

/* layout07 */

.layout07 {
  justify-content: center;
	gap:20px 0px;
}

.layout07 .box {
	width: 100%;
}

.contents05 .layout07 .box {
	padding-top: 45px;
}

.layout07 .box img {
	max-width: 400px;
}

.contents05 .layout07 .box::after {
	height: 90px;
}

.contents05 .layout07 .box h6 {
	min-height: 0px;
	padding: 20px 0px 15px;
	margin-bottom: 0px;
}

/* layout08 */

.layout08 {
	padding-top: 50px;
}

/* layout09 */

.layout09 .box-inner {
	width: 88%;
}

.layout09 .box-inner .box:not(:last-child) {
	margin-bottom: 50px;
}

.layout09 ul {
	padding: 25px 0px 0px;
}

.layout09 ul li {
	text-indent: -14px;
	margin-left: 14px;
}

.layout09 h5 {
	font-size: 20px;
letter-spacing: 0.1em;
border-width : 2px;
}

/* layout10 */

.layout10 .box {
	position: relative;
}

.layout10 .box::after {
	height: 15px;
	margin-bottom: -30px;
}

.layout10 .box:not(:last-child) {
	margin-bottom: 40px;
}
	
.layout10 h4 {
	font-size: 18px;
letter-spacing: 0.05em;
	padding: 12px 25px;
	border-radius: 12px;
	text-align: left;
	text-indent: -18px;
	padding-left: 43px;
}


/* box-guideline */

.box-guideline .guideline-inner {
	border-radius: 25px;
	padding: 30px 25px 30px;
	margin-top: 50px;
}

.box-guideline .guideline-inner::after {
left: 25%;
	width: 50%;
	font-size: 24px;
letter-spacing: 0.1em;
	margin-top: -15px;
}

.box-guideline .box {
	flex-direction: column;
	padding: 20px 5px;
	gap:5px;
}

.box-guideline .box .box01 {
	width: 100%;
	padding-left: 0px;
}

.box-guideline .box .box02 {
	width: 100%;
}

.box-guideline h5 {
	font-size: 16px;
letter-spacing: 0.1em;
}



/*contact*/
.contact {
	width: 100%;
}
	
.contact table tr {
	gap:10px;
	padding: 15px 0px;
	flex-direction: column;
}	

.contact table tr td:first-child {
	width: 100%;
	padding-right: 0px;
	font-size: 16px;
}

.contact table tr td:last-child {
	width: 100%;
}

.contact table tr td input.radio {
	width: 10%;
	height:auto;
}

	
#formWrap {
	padding-top: 30px;
	padding-bottom: 30px;
}
	
#formWrap .center {
	width:100%;
}

	
table.formtable td, table.formtable th {
	display: block;
}

table.formtable th {
	width: 100%;
	margin-bottom: 5px;
}
	
table.formtable td:last-child {
}
	

span.text003 {
	display: inline-block;
	padding-right:30px;
}
	
.contact .checktext {
	padding-top: 30px;
}

.contact .checktext h6 {
	font-size: 16px;
}
	
.contact .checktext div.box-text p {
	font-size: 14px;
}

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

    .pc-view {
        display: none;
    }
    .sp-view {
         display: inline-block;
    }
   
}
