@charset "utf-8";
@media (max-width: 801px) {
}
.lum-lightbox { z-index: 101;}

#page-kv .inner-kv { padding: 132px 0 20px;}
#page-kv h2 { font-size: 18px; font-weight: 600; letter-spacing: 0.1rem; line-height: 1; text-align: center;}
#page-kv h2 span.eng { display: block; margin-bottom: 12px; font-size: 40px; font-weight: 400; letter-spacing: 0.25rem;}

#page-kv.kv-performance { background: url('../img/performance/bg-ttl.jpg') no-repeat 50% 50% / cover;}
#page-kv.kv-performance .inner-kv { padding: 172px 0; background:rgba(0,0,0,0.3);}
#page-kv.kv-performance h2 { color: #fff;}
#page-kv.kv-works { background: url('../img/works/bg-ttl.jpg') no-repeat 50% 50% / cover;}
#page-kv.kv-works .inner-kv { padding: 172px 0; background:rgba(0,0,0,0.3);}
#page-kv.kv-works h2 { color: #fff;}
#page-kv.kv-flow { background: url('../img/flow/bg-ttl-flow.webp') no-repeat 50% 50% / cover;}
#page-kv.kv-flow .inner-kv { padding: 172px 0; background:rgba(0,0,0,0.3);}
#page-kv.kv-flow h2 { color: #fff;}
#page-kv.kv-maintenance { background: url('../img/maintenance/bg-ttl-maintenance.webp') no-repeat 50% 50% / cover;}
#page-kv.kv-maintenance .inner-kv { padding: 172px 0; background:rgba(0,0,0,0.3);}
#page-kv.kv-maintenance h2 { color: #fff;}
#page-kv.kv-faq { background: url('../img/faq/bg-ttle-faq.webp') no-repeat 50% 50% / cover;}
#page-kv.kv-faq .inner-kv { padding: 172px 0; background:rgba(0,0,0,0.3);}
#page-kv.kv-faq h2 { color: #fff;}
#page-kv.kv-contact { background: url('../img/contact/bg-ttl.jpg') no-repeat 50% 50% / cover;}
#page-kv.kv-contact .inner-kv { padding: 172px 0; background:rgba(0,0,0,0.3);}
#page-kv.kv-contact h2 { color: #fff;}

@media (max-width: 801px) {
}
@media (max-width: 481px) {
	#page-kv .inner-kv { padding: 60px 0 20px;}
	#page-kv h2 { font-size: 14px;}
	#page-kv h2 span.eng { margin-bottom: 8px; font-size: 28px;}
	#page-kv.kv-performance .inner-kv { padding: 90px 0;}
	#page-kv.kv-works .inner-kv { padding: 90px 0;}
	#page-kv.kv-flow .inner-kv { padding: 90px 0;}
	#page-kv.kv-maintenance .inner-kv { padding: 90px 0;}
	#page-kv.kv-faq .inner-kv { padding: 90px 0;}
	#page-kv.kv-contact .inner-kv { padding: 90px 0;}
}


.breadlist { padding: 20px 0;}
.breadlist.gy { background: #dcdcdc;}
.breadlist ul { width: 92%; max-width: 1080px; margin: 0 auto; font-size: 0;}
.breadlist ul li { display: inline-block; margin-right: 6px; font-size: 13px;}
.breadlist ul li:before { content: '/'; display: inline-block; margin-right: 6px;}
.breadlist ul li:first-child:before { content: none; }
.breadlist ul li a { color: #000;}
.breadlist ul li a:hover { text-decoration: none;}
@media (max-width: 480px) {
	.breadlist { padding: 12px 0;}
	.breadlist ul li { margin-right: 4px; font-size: 12px;}
	.breadlist ul li:before { margin-right: 4px;}
}

.pager { padding: 40px 0 100px;}
.wp-pagenavi {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-flow: wrap;
      flex-flow: wrap;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  font-size: 1.25em;
  letter-spacing: 0;
  padding: 5.5rem 0 0;
}
.wp-pagenavi a, .wp-pagenavi span {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 35px;
  height: 35px;
  border-radius: 35px;
  line-height: 1;
  text-align: center;
  margin: 0 0.5em 0.5em 0;
}
.wp-pagenavi a { color: #000; text-decoration: none;}
.wp-pagenavi a:hover, .wp-pagenavi span:hover { background: #000; color: #fff;}
.wp-pagenavi .current { background: #000; color: #fff;}
@media screen and (max-width: 800px) {
  .wp-pagenavi { font-size: 1.28em; padding: 4rem 0 0;}
  .wp-pagenavi a, .wp-pagenavi span { width: 25px; height: 25px;}
}
@media (max-width: 480px) {
	.pager { padding: 40px 0px;}
}

.formBloc ul { width: 100%; max-width: 800px; margin: 0 auto 40px;}
.formBloc ul li { padding: 8px 0;}
.formBloc ul li dl { display: table; width: 100%;}
.formBloc ul li dl dt,
.formBloc ul li dl dd { display: table-cell; font-size: 18px; vertical-align: top;}
.formBloc ul li dl dd input[type="text"],
.formBloc ul li dl dd input[type="tel"],
.formBloc ul li dl dd input[type="date"],
.formBloc ul li dl dd input[type="email"]{ width: 100%; padding: 8px; background: #e7e7e7; border: none;}
.formBloc ul li dl dd .wpcf7-list-item { margin: 0; padding: 2px;}
.formBloc ul li dl dd label { display: block;}
.formBloc ul li dl dd input[type=checkbox],
.formBloc ul li dl dd input[type=radio] { width: 20px; height: 20px; margin: 0 5px 0 0; vertical-align: middle; background-color: #fff;}
.formBloc ul li dl dd textarea { width: 100%; height: 200px; padding: 8px; background: #e7e7e7; border: none;}
.formBloc .btn-submit { width: 80%; max-width: 300px; margin: 0 auto;}
.formBloc .btn-submit input { position: relative; display: block; z-index: 2; width: 100%; padding: 8px 0;
background: #000; color: #fff; font-size : 18px; font-weight: 700; text-align: center;
}
@media (max-width: 640px) {
	.formBloc ul li dl dt,
	.formBloc ul li dl dd { display: block;}
	.formBloc ul li dl dt { width: 100%; margin-bottom: 8px;}
	.formBloc ul li dl dd { width: 100%;}
}
@media (max-width: 480px) {
	.formBloc ul li dl dt,
	.formBloc ul li dl dd { font-size: 14px;}
	.formBloc ul li dl dt span.required { width: 50px; font-size: 12px;}
	.formBloc ul li dl dt span.optional { width: 50px; font-size: 12px;}
}

#about .inner-sct { padding: 80px 0 120px;} 
#about .read { width: 88%; max-width: 1080px; margin: 0 auto 80px;}
#about .read .flex { display: flex; justify-content: space-between;}
#about .read figure { width: 38%;}
#about .read figure img { width: 100%;}
#about .read .txt { width: 58%;}
#about .read h2 { margin-bottom: 20px; font-size: 30px; font-weight: 700;}
#about .read p { font-size: 18px; letter-spacing: 0.1rem; line-height: 1.8;}

#about .concept { width: 88%; max-width: 1080px; margin: 0 auto 30px;}
#about .concept.header { margin-bottom:80px;}
#about .concept .flex { display: flex; justify-content: space-between;}
#about .concept figure { width: 20%;}
#about .concept figure img { width: 100%;}
#about .concept .txt { width: 75%;}
#about .concept h2 { margin-bottom: 20px; font-size: 30px; font-weight: 700; text-align:center; background:var(--light-gray1);}
#about .concept h2 strong { font-size: 1.8em;}
#about .concept p { font-size: 17px; letter-spacing: 0.1rem; line-height: 1.8;}
#about .concept .flex { display: flex; justify-content: space-between;}
#about .concept h3 { margin-bottom: 30px; font-size: 26px; font-weight: 700; height: 45px; line-height: 40px;}
#about .concept h3 .hd_wrap{display:inline-block; position:relative;height: 42px; width:65px; color:var(--dark-gray1);}
#about .concept h3 .hd_wrap .hd_t1{display:inline-block; position:absolute; top:0; font-size: 14px; left: 3px; line-height:1em;}
#about .concept h3 .hd_wrap .hd_t2{display:inline-block; position:absolute; top: 12px; font-size: 42px;}

#about .concept a {text-decoration:none;}
#about .concept a h2 {position:relative; line-height:100px; width:70%; margin:20px auto;}
#about .concept a h2:after {position:absolute; right:20px; content:"▶"; font-size:12px;}

#about .performance-header { width: 88%; max-width: 1080px; margin: 0 auto 30px;}
#about .performance-header h2 { margin-bottom: 20px; font-size: min(22px, 2vw); font-weight: 700; text-align:center; background: linear-gradient(to right, #fffa86 0%, #b6d992 100%);}
#about .performance-header h2 strong { font-size: 1.8em; display:inline-block; margin:0 5px;}
#about .performance-header a {text-decoration:none;}
#about .performance-header a h2 {position:relative; line-height:100px; width80%; margin:20px auto; text-align: left; padding-left: 2em;}
#about .performance-header a h2:after {position:absolute; right:20px; content:"詳しく見る ▶"; font-size:12px;}
#about .pf01,#about .pf02,#about .pf03,#about .pf04{font-size: 1.2em; display: inline-block; margin: 0 4px;
text-shadow:2px 2px 0 #fff, -2px 2px 0 #fff, 2px -2px 0 #fff, -2px -2px 0 #fff;}
#about .pf01{color: #ed612f;}
#about .pf02{color: #306db8;}
#about .pf03{color: #4d8851;}
#about .pf04{color: #8d962d;}
#about .performance-sec h2{width:100%; text-align:center; font-size: 35px; line-height:120px; font-weight:700; background:var(--dark-gray1); color:#ffffff; margin-top:3em;}


@media (max-width: 800px) {
    #about .performance-header a h2 {
        line-height: 40px;
        margin: 0.7em auto;
        padding:1em 2em;
    }
#about .performance-header h2 {
    font-size: 3vw;
}
}

#about .company { width: 88%; max-width: 1080px; margin: 0 auto 80px; padding-top:80px;}
#about .company h3 { margin-bottom: 20px; font-size: 30px;}
#about .company ul {}
#about .company ul li { border-bottom: dashed 1px #ccc; padding: 10px;}
#about .company ul li dl { display: table; width: 100%;}
#about .company ul li dl dt,
#about .company ul li dl dd { display: table-cell; }
#about .company ul li dl dt { width: 200px; font-weight: 700;}
#about .company ul li dl dd { width: auto;}
#about .company h2 {margin-bottom: 20px;font-size: 30px;font-weight: 700;}

#about .greeting { width: 88%; max-width: 1080px; margin: 160px auto 0;}
#about .greeting .ctn { display: flex; justify-content: space-between;}
#about .greeting figure { width: 30%;}
#about .greeting figure img { width: 100%;}
#about .greeting .txt { width: 65%;}
#about .greeting h2 { margin-bottom: 20px; font-size: 30px; font-weight: 700;}
#about .greeting p { font-size: 17px; letter-spacing: 0.1rem; line-height: 1.8;}
#about .greeting p.greeting-name { margin-top:1em; text-align:right; }
#about .greeting p.greeting-name strong { font-size:1.2em; }
@media (max-width: 640px) {
	#about .read .flex { display: block;}
	#about .read figure { width: 100%; margin: 0 auto 20px;}
	#about .read .txt { width: 100%;}
	#about .read h2 { font-size: 24px;}
	#about .read p { font-size: 14px; line-height: 1.72;}
	
	#about .concept .flex { display: block;}
	#about .concept figure { width: 100%; margin: 0 auto 20px;}
	#about .concept .txt { width: 100%;}
	#about .concept h2 { font-size: 24px;}
	#about .concept p { font-size: 14px; line-height: 1.72;}

	#about .company h3 { margin-bottom: 12px; font-size: 20px;}
	#about .company ul li dl dt,
	#about .company ul li dl dd { display: block; }
	#about .company ul li dl dt { width: 100%; margin-bottom: 8px;}
	#about .company ul li dl dd { font-size: 14px;}

	#about .greeting .ctn { display: block;}
	#about .greeting figure { width: 30%; margin: 0 auto 20px;}
	#about .greeting .txt { width: 100%;}
	#about .greeting h2 { font-size: 20px;}
	#about .greeting p { font-size: 14px; letter-spacing: 0.1rem; line-height: 1.72;}
}
@media (max-width: 480px) {
	#about .inner-sct { padding: 40px 0 80px;} 
	#about .read { margin: 0 auto 40px;}
	#about .read h2 { font-size: 20px;}
	#about .read p { font-size: 13px; letter-spacing: 0.05rem;}
	#about .company h3 { font-size: 18px;}
	#about .company ul li{ padding: 8px 0;}
	#about .company ul li dl dt { margin-bottom: 4px; font-size: 14px;}
	#about .company ul li dl dd { font-size: 12px;}
	#about .greeting h2 { margin-bottom: 12px; font-size: 18px;}
	#about .greeting p { font-size: 13px; letter-spacing: 0.05rem;}
}


#about .bloc.bg-grey-1 { background:var(--light-gray1);}
#about .bloc.bg-grey-2 { background: var(--dark-gray1); color: #fff;}

#about .bloc .inner { width: 88%; max-width: 1000px; margin: 0 auto; padding: 50px 0;}
#about .bloc .inner:after { content:''; display: block; clear: both;}
#about .bloc .tit h2 { font-size: 24px; font-weight: 700; margin:1em 0;}
#about .bloc .tit h2 br.sp { display: none;}
#about .bloc .tit h2 strong { font-size: 1.4em; display:inline-block; margin:0 3px;}
#about .bloc figure img { width: 100%;}
#about .bloc .tit { margin-bottom: 12px;}
#about .bloc .txt p { letter-spacing: 0.1rem;}
#about .bloc .txt p.mb { margin-bottom: 20px;}
#about .bloc .txt ul.note li { font-size: 12px;}

#about .bloc .txt-50L { }
#about .bloc .txt-50L .tit { width: 48.5%; float: left;}
#about .bloc .txt-50L figure { width: 48.5%; float: right;}
#about .bloc .txt-50L .txt { width: 48.5%; float: left;}

#about .bloc .txt-50R { }
#about .bloc .txt-50R .tit { width: 48.5%; float: right;}
#about .bloc .txt-50R figure { width: 48.5%; float: left;}
#about .bloc .txt-50R .txt { width: 48.5%; float: right;}

#about .bloc .txt-65L { }
#about .bloc .txt-65L .tit { width: 64%; float: left;}
#about .bloc .txt-65L figure { width: 32%; float: right;}
#about .bloc .txt-65L .txt { width: 64%; float: left;}

#about .bloc .txt-65R { }
#about .bloc .txt-65R .tit { width: 64%; float: right;}
#about .bloc .txt-65R figure { width: 32%; float: left;}
#about .bloc .txt-65R .txt { width: 64%; float: right;}
@media (max-width: 800px) {
	#about .bloc .txt-50L .tit { width: 100%; float: none;}
	#about .bloc .txt-50L figure { width: 100%; float: none; margin-bottom: 12px;}
	#about .bloc .txt-50L .txt { width: 100%; float: none;}

	#about .bloc .txt-50R { }
	#about .bloc .txt-50R .tit { width: 100%; float: none;}
	#about .bloc .txt-50R figure { width: 100%; float: none; margin-bottom: 12px;}
	#about .bloc .txt-50R .txt { width: 100%; float: none;}

	#about .bloc .txt-65L { }
	#about .bloc .txt-65L .tit { width: 100%; float: none;}
	#about .bloc .txt-65L figure { width: 100%; float: none; margin-bottom: 12px;}
	#about .bloc .txt-65L .txt { width: 100%; float: none;}

	#about .bloc .txt-65R { }
	#about .bloc .txt-65R .tit { width: 100%; float: none;}
	#about .bloc .txt-65R figure { width: 100%; float: none; margin-bottom: 12px;}
	#about .bloc .txt-65R .txt { width: 100%; float: none;}
}
@media (max-width: 480px) {
	#about .bloc .inner { padding: 30px 0;}
	#about .bloc .tit h2 { font-size: 18px;}
	#about .bloc .tit h2 br.sp { display: block;}
	#about .bloc .txt p { font-size: 13px; letter-spacing: 0.05rem;}
}



#performance .bloc.bg-grey-1 { background: #dcdcdc;}
#performance .bloc.bg-grey-2 { background: var(--dark-gray1); color: #fff;}

#performance .bloc .inner { width: 88%; max-width: 1000px; margin: 0 auto; padding: 50px 0;}
#performance .bloc .inner:after { content:''; display: block; clear: both;}
#performance .bloc .tit h2 { font-size: 24px; font-weight: 700;}
#performance .bloc .tit h2 br.sp { display: none;}
#performance .bloc figure img { width: 100%;}
#performance .bloc .tit { margin-bottom: 12px;}
#performance .bloc .txt p { letter-spacing: 0.1rem;}
#performance .bloc .txt p.mb { margin-bottom: 20px;}
#performance .bloc .txt ul.note li { font-size: 12px;}

#performance .bloc .txt-50L { }
#performance .bloc .txt-50L .tit { width: 48.5%; float: left;}
#performance .bloc .txt-50L figure { width: 48.5%; float: right;}
#performance .bloc .txt-50L .txt { width: 48.5%; float: left;}

#performance .bloc .txt-50R { }
#performance .bloc .txt-50R .tit { width: 48.5%; float: right;}
#performance .bloc .txt-50R figure { width: 48.5%; float: left;}
#performance .bloc .txt-50R .txt { width: 48.5%; float: right;}

#performance .bloc .txt-65L { }
#performance .bloc .txt-65L .tit { width: 64%; float: left;}
#performance .bloc .txt-65L figure { width: 32%; float: right;}
#performance .bloc .txt-65L .txt { width: 64%; float: left;}

#performance .bloc .txt-65R { }
#performance .bloc .txt-65R .tit { width: 64%; float: right;}
#performance .bloc .txt-65R figure { width: 32%; float: left;}
#performance .bloc .txt-65R .txt { width: 64%; float: right;}
@media (max-width: 800px) {
	#performance .bloc .txt-50L .tit { width: 100%; float: none;}
	#performance .bloc .txt-50L figure { width: 100%; float: none; margin-bottom: 12px;}
	#performance .bloc .txt-50L .txt { width: 100%; float: none;}

	#performance .bloc .txt-50R { }
	#performance .bloc .txt-50R .tit { width: 100%; float: none;}
	#performance .bloc .txt-50R figure { width: 100%; float: none; margin-bottom: 12px;}
	#performance .bloc .txt-50R .txt { width: 100%; float: none;}

	#performance .bloc .txt-65L { }
	#performance .bloc .txt-65L .tit { width: 100%; float: none;}
	#performance .bloc .txt-65L figure { width: 100%; float: none; margin-bottom: 12px;}
	#performance .bloc .txt-65L .txt { width: 100%; float: none;}

	#performance .bloc .txt-65R { }
	#performance .bloc .txt-65R .tit { width: 100%; float: none;}
	#performance .bloc .txt-65R figure { width: 100%; float: none; margin-bottom: 12px;}
	#performance .bloc .txt-65R .txt { width: 100%; float: none;}
}
@media (max-width: 480px) {
	#performance .bloc .inner { padding: 30px 0;}
	#performance .bloc .tit h2 { font-size: 18px;}
	#performance .bloc .tit h2 br.sp { display: block;}
	#performance .bloc .txt p { font-size: 13px; letter-spacing: 0.05rem;}
}


#flow { background: #dcdcdc;}
#flow .inner-sct { padding: 80px 0 120px;}
#flow .row { width: 88%; max-width: 1000px; margin: 0 auto; padding: 20px 0;}
#flow .bloc { width: 100%; margin: 0 auto; padding: 20px 0;}
#flow .row:after,
#flow .bloc:after{ content: ''; display: block; width: 0; height: 0; border: solid 20px transparent; border-top: solid 30px #fff; border-bottom: 0; margin: 0 auto;}
#flow .row.end:after { content: none;}
#flow .flex { position: relative; padding-left: 100px; width: 88%; max-width: 1000px; margin: 0 auto;}
#flow .flex .tips { display: flex; align-items: center; width: 80px; height: calc( 100% - 50px ); padding-top: 30px; background: #000; writing-mode: vertical-rl; position: absolute; left: 0; top: 0;}
#flow .flex .tips p { color: #fff; font-size: 30px; font-weight: 700;}
#flow .ctn { position: relative; display: table; width: 100%;}
#flow .ctn .no { width: 76px; height: 76px; background: #000; border-radius: 50px; color: #fff; font-size: 32px; font-weight: 900; line-height: 76px; text-align: center;
 position: absolute; left: 0; top: -32px;
}
#flow .ctn .tit { display: table-cell; width: 360px; background: var(--dark-gray1); padding: 40px 0; vertical-align: middle;}
#flow .bloc .ctn .tit { width: 260px;}
#flow .ctn .tit p { color: #fff; font-size: 24px; font-weight: 700; line-height: 1.4; text-align: center;}
#flow .ctn .txt { display: table-cell; width: auto; padding: 30px; background: #fff; vertical-align: middle;}
#flow .ctn .txt p { font-size: 16px; letter-spacing: 0.1rem;}
#flow .ctn .txt p.note { font-size: 14px;}
#flow .ctn .txt a.btn { display: block; width: 100%; max-width: 300px; margin-top: 10px; padding: 5px; background: #000; border: solid 1px #000;
 color: #fff; font-size: 18px; font-weight: 700; text-align: center; text-decoration: none; transition: 0.3s ease;
}
#flow .ctn .txt a.btn:hover { background: #fff; color: #000;}

#flow .bloc-bk { padding: 20px 0;}
#flow .bloc-bk:after{ content: ''; display: block; width: 0; height: 0; border: solid 20px transparent; border-top: solid 30px #000; border-bottom: 0; margin: 0 auto;}
#flow .bloc-bk .inner { width: 88%; max-width: 1000px; margin: 0 auto; padding: 30px 0; background: #000;}
#flow .bloc-bk p { color: #fff; font-size: 24px; font-weight: 700; letter-spacing: 0.1rem; line-height: 1.4; text-align: center;}
#flow .bloc-bk p.note { margin-top: 8px; font-size: 14px; font-weight: 400;}
@media (max-width: 800px) {
	#flow .ctn .no { width: 60px; height: 60px; font-size: 24px; line-height: 60px; top: -28px;}

	#flow .flex { padding-left: 80px;}
	#flow .flex .tips { width: 60px;}
	#flow .flex .tips p { font-size: 24px;}

	#flow .ctn .tit { width: 260px;}
	#flow .bloc .ctn .tit { width: 160px;}
	#flow .ctn .tit p { font-size: 20px;}
	#flow .ctn .txt p { font-size: 14px;}
	#flow .ctn .txt p.note { font-size: 12px;}
}
@media (max-width: 640px) {
	#flow .ctn .tit { display: block; width: 100%;}
	#flow .bloc .ctn .tit { width: 100%;}
	#flow .ctn .txt { display: block;}
}
@media (max-width: 480px) {
	#flow .inner-sct { padding: 40px 0 80px;}
	#flow .row { padding: 15px 0;}
	#flow .bloc { padding: 15px 0;}
	#flow .row:after,
	#flow .bloc:after{ border: solid 12px transparent; border-top: solid 20px #fff; border-bottom: 0;}
	#flow .flex { padding-left: 40px;}
	#flow .flex .tips { width: 32px; height: calc( 100% - 35px );}
	#flow .flex .tips p { font-size: 20px;}
	#flow .ctn .tit { padding: 20px 0;}
	#flow .ctn .txt { padding: 20px;}
	#flow .ctn .txt a.btn { font-size: 14px;}
	#flow .ctn .txt p.note { font-size: 10px;}

	#flow .bloc-bk { padding: 15px 0;}
	#flow .bloc-bk:after{ border: solid 12px transparent; border-top: solid 20px #000; border-bottom: 0;}
	#flow .bloc-bk .inner { padding: 20px 0;}
	#flow .bloc-bk p { font-size: 16px;}
	#flow .bloc-bk p.note { font-size: 11px;}
}

#maintenance .inner-sct { padding: 50px 0 80px;}
#maintenance .sct .inner {  width: 88%; max-width: 1000px; margin: 0 auto; padding: 30px 0;}
#maintenance .sct .tips { width: 100%; margin: 0 auto 30px; padding: 20px 0; background: #000;}
#maintenance .sct .tips h2 { color: #fff; font-size: 21px; font-weight: 700; letter-spacing: 0.1rem; line-height: 1.4; text-align: center;}
#maintenance .sct .tips h2 span { display: block; font-size: 36px; font-weight: 900; letter-spacing: 0.2rem;}
#maintenance .sct h3 { margin-bottom: 30px; font-size: 30px; font-weight: 700;}
#maintenance .sct p { margin-bottom: 50px; letter-spacing: 0.1rem;}
#maintenance .sct figure { text-align:center }
#maintenance .sct figure.mb { margin-bottom: 60px; }
#maintenance .sct figure img { max-width: 100%;}
#maintenance .sct figure img.sp { display: none;}
#maintenance .sct .rating-youtube { width:80%; max-width:600px; margin:0 auto;}

@media (max-width: 640px) {
	#maintenance .sct figure img.pc { display: none;}
	#maintenance .sct figure img.sp { display: block;}
}
@media (max-width: 480px) {
	#maintenance .inner-sct { padding: 20px 0 40px;}
	#maintenance .sct .tips { margin: 0 auto 20px; padding: 15px 0;}
	#maintenance .sct .tips h2 { font-size: 16px;}
	#maintenance .sct .tips h2 span { font-size: 24px;}
	#maintenance .sct h3 { margin-bottom: 20px; font-size: 21px;}
	#maintenance .sct p { margin-bottom: 30px; font-size: 14px;}
	#maintenance .sct figure.mb { margin-bottom: 40px; }
}


#faq .inner-sct { padding: 80px 0 120px;}
#faq .ctn {  width: 88%; max-width: 1000px; margin: 0 auto;}
#faq .ctn ul li { margin-bottom: 30px; }
#faq .ctn ul li:last-child { margin-bottom: 0;}
#faq .ctn ul li dl dt { position: relative; padding: 8px; padding-left: 80px; cursor: pointer;}
#faq .ctn ul li dl dt:after { content: ''; display: block; width: 0px; height: 0px; border: solid 7px transparent; border-top: solid 14px #000; border-bottom: 0px;
 position: absolute; left: 23px; top: 64px;
}
#faq .ctn ul li dl dt.open:after { border-top: 0px; border-bottom:  solid 14px #000;}

#faq .ctn ul li dl dt span.icn { display: block; width: 60px; height: 60px; position: absolute; left: 0; top: 0; background: #000; border-radius: 50%;
 color: #fff; font-size: 21px; font-weight: 900; line-height: 60px; text-align: center;
}
#faq .ctn ul li dl dt span.tit { display: block; padding: 6px 0 18px; border-bottom: solid 1px #000; font-size: 21px; font-weight: 700; letter-spacing: 0.1rem;}
#faq .ctn ul li dl dt span.tit br.sp { display: none;}
#faq .ctn ul li dl dd { display: none; padding: 12px 0; font-size: 18px; letter-spacing: 0.1rem; line-height: 1.8;}


#policy .inner-sct { padding: 80px 0;}
#policy .read {  width: 88%; max-width: 1000px; margin: 0 auto 30px;}
#policy .read p { font-size: 18px; letter-spacing: 0.1rem;}
#policy .ctn {  width: 88%; max-width: 1000px; margin: 0 auto;}
#policy .ctn ul li { padding: 10px 0;}
#policy .ctn ul li span { display: block; font-size: 18px; font-weight: 700; letter-spacing: 0.1rem;}
@media (max-width: 480px) {
	#policy .inner-sct { padding: 40px 0 60px;}
	#policy .read p { font-size: 14px;}
	#policy .ctn ul li { font-size: 13px;}
	#policy .ctn ul li span { font-size: 14px;}
}


#sitemap .inner-sct { padding: 80px 0 120px;}
#sitemap .ctn {  width: 88%; max-width: 1000px; margin: 0 auto;}
#sitemap .ctn h3 { margin-bottom: 8px; padding: 6px 0; border-bottom: solid 2px #000; font-size: 24px; font-weight: 900; letter-spacing: 0.15rem; line-height: 1.4;}
#sitemap .ctn ul { margin-bottom: 30px; }
#sitemap .ctn ul li { padding: 4px 0;}
#sitemap .ctn ul li a { color: #000; text-decoration: none;}
#sitemap .ctn ul li a:hover { text-decoration: underline;}
@media (max-width: 480px) {
	#sitemap .inner-sct { padding: 40px 0 80px;}
	#sitemap .ctn h3 { font-size: 18px;}
	#sitemap .ctn ul li { padding: 2px 0; font-size: 14px;}
}
