@charset "UTF-8";
/* ---------------------------------------------------
	common
------------------------------------------------------ */
.acms-entry .entry-container {margin: 0;}
.entry {border: none; max-width: 1200px; margin: 0 auto 50px;}
.entry-title {text-align: center; font-size: 30px; line-height: 1.2; font-weight: 500;}
.acms-grid, .acms-grid-r {margin: 0;}

.acms-admin-form .acms-admin-form-select, .acms-admin-form select { -moz-appearance: none; -webkit-appearance: none;}
.acms-entry [class*=column-map-]>div {margin: auto;}

.flexbox {display: -ms-flexbox; display: -webkit-box; display: flex; flex-wrap: wrap; align-items: top; justify-content: space-between;}
.flexbox.mid {align-items: center;}
.flexbox.center {justify-content: center;}
.flexbox.reverse {flex-direction: row-reverse;}

.flL {float: left;}
.flR {float: right;}

.taL {text-align: left;}
.taC {text-align: center;}
.taR {text-align: right;}

.rel {position: relative;}

@media screen and (max-width: 767px) {
    .acms-entry .entry-container {margin: 0;}
    .entry {width: 100%; margin: 0 auto 25px;}
}

.pc-only {display: block;}
.sp-only {display: none;}
.pc-block {display: block;}
.sp-block {display: none;}
.pc-inline {display: inline;}
.sp-inline {display: none;}
@media screen and (max-width: 767px) {
/*背景固定する場合	html.is-fixed,
	html.is-fixed body {height: 100%;overflow: hidden;}*/
	body {}
	a:hover img {opacity: 1;}
	a[href^="tel:"] {pointer-events: auto;}
	.container {max-width: 100%;}
	p {line-height: 1.4;}
	.w1200 {width: auto;}
	.pc-only {display: none !important;}
	.sp-only {display: block;}
	.pc-block {display: none !important;}
	.sp-block {display: block;}
	.pc-inline {display: none !important;}
	.sp-inline {display: inline;}
	.pc-hidden {display: block;}
}
/*.acms-entry .entry-container {margin: 0;}
.entry {border: none; margin: 0 auto 50px; max-width: 1200px;}
.entry div:before, .entry div:after {content: ""; display: none;}
.entry-title {text-align: center; font-size: 40px; font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif; margin: 0 0 40px;}
.acms-grid, .acms-grid-r {margin: 0;}
.entry-column h3 {font-size: 28px; line-height: 1.4; color: #000; padding: 0; margin: 80px auto 20px; background: none;}
.entry-column h3:before {content: ""; display: inline-block; width: 30px; height: 8px; margin-right: 10px; background: url("../img/common/ico-h3.png") no-repeat left; background-size: 100%; margin-top: -5px; vertical-align: middle;}
.entry-column h4 {padding: 0; margin: 0; font-size: 24px; line-height: 1.4; color: #BB4824; margin-bottom: 20px; padding-bottom: 10px; border-bottom: 1px dotted #BB4824;}
.entry-column h5 {padding: 0; margin: 0; font-size: 22px; line-height: 1.4; margin-bottom: 20px;}
.entry-column ul, .entry-column ol {padding: 0; margin: 0;}
.entry-column ul li, .entry-column ol li {padding: 0; margin: 0; font-size: 100%; line-height: 1.8;}
.entry-column h2 {margin: 0; padding: 0; border-left: none; color: #000;}
.entry-column p {margin: 0;}
.entry-column dl {margin: 1em 0; font-size: 100%;}
.entry-column dt {margin: 0; font-size: 100%;}
.entry-column td, .entry-column th {border-top: none; font-size: 100%;}
.entry-column tr:nth-child(odd) {background: none;}

.acms-admin-form .acms-admin-form-select, .acms-admin-form select { -moz-appearance: none; -webkit-appearance: none;}*/

/*@media screen and (max-width: 767px) {
    .acms-entry .entry-container {margin: 0; padding: 0 10px;}
    .entry {width: 100%; margin: 0 auto 25px;}
    h2.entry-title {font-size: 28px; margin: 0 auto 20px; padding: 0 10px;}
    .entry-column h2 {font-size: 28px; margin: 0 auto 20px; padding: 0 10px;}
    .entry-column h2 br {display: none;}
    .entry-column h3 {font-size: 24px; margin: 40px auto 20px; padding: 0 10px;}
    .entry-column h4 {padding: 0 10px; font-size: 20px; }
    .entry-column p {padding: 0 10px; margin-bottom: 20px;}
    .entry-column th {background: none;}
    
    .gmap {}
    .gmap iframe {width: 100%;}
}*/

/* ---------------------------------------------------
	汎用ユニット
------------------------------------------------------ */
/* 見出し大 */
.entry-column h2 {font-weight: 700; font-style: normal; font-size: 36px; line-height: 1.5; color: #000; margin: 140px auto 50px; padding: 0; border-left: none; letter-spacing: 0.1em;}
.entry-column h2:first-of-type {margin: 0 auto 50px;}

/* 見出し中 */
.entry-column h3 {font-weight: 700; font-style: normal; font-size: 30px; line-height: 1.4; color: #2A83A2; margin: 0 auto 30px; padding: 0 0 10px; background: none; letter-spacing: 0.1em; border-bottom: 2px solid #2A83A2;}

/* 見出し小 */
.entry-column h4 {font-weight: 700; font-style: normal; font-size: 24px; line-height: 1.4; color: #000; padding: 0; margin: 0 auto 20px; position: relative;}

/* 小見出し */
.entry-column h5 {font-weight: 700; font-style: normal; font-size: 20px; line-height: 1.4; padding: 0; margin: 0 auto 20px;}

/* 本文 */
.entry-column p {font-size: 18px; line-height: 1.8; margin: 0 auto 40px; padding: 0;}

/* リスト */
.entry-column ul, .entry-column ol {padding: 0; margin: 0;}
.entry-column ul li, .entry-column ol li {padding: 0; margin: 0; font-size: 18px; line-height: 1.8;}

.entry-column ul { margin-bottom: 40px; list-style: none;}
.entry-column ul li { padding-left: 25px; background: url(../images/common/ico-li@2x.png) no-repeat 0 5px; background-size: 20px 20px;}
.entry-column .acms-col-sm-6:nth-of-type(2n+1) ul {margin-bottom: 0;}
.entry-column .acms-col-sm-6:last-of-type ul {margin-bottom: 40px;}

.entry-column ol {counter-reset: oldef; margin-bottom: 40px; list-style: none;}
.entry-column ol li { padding-left: 30px; position: relative;}
.entry-column ol li:before { counter-increment: oldef; content: counter(oldef); color: #000; font-style: normal; font-weight: 500; font-size: 18px; display: block; width: 25px; position: absolute; top: 0; left: 0; text-align: center; line-height: 1.8;}

@media screen and (max-width: 767px) {
    h2.entry-title {font-size: 28px; margin: 0 auto 20px; padding: 0 10px;}
    .entry-column h2 {font-size: 26px; margin: 50px auto 20px; padding: 0 10px;}
    .entry-column h2:first-of-type {margin: 0 auto 20px;}
    .entry-column h2 br {display: none;}
    .entry-column h3 {font-size: 22px; margin: 0 auto 20px; padding: 0 10px 10px;}
    .entry-column h4 {padding: 0 10px; font-size: 20px; }
    .entry-column h5 {padding: 0 10px; font-size: 22px; margin: 0 auto 10px;}
    .entry-column p {padding: 0 10px; margin-bottom: 20px;}
    
    .ul-default ul { margin-bottom: 40px; padding: 0 10px;}
    .ol-default ol {margin-bottom: 40px; padding: 0 10px;}
    
    .entry-column p iframe {width: 100%;}
    .gmap {}
    .gmap iframe {width: 100%;}
}

/* ---------------------------------------------------
	テキストリンク
------------------------------------------------------ */
.txt-link {justify-content: flex-start;}
.txt-link .row_col {display: inline-block; margin-right: 60px; margin-bottom: 20px;}
.txt-link .row_col a { position: relative; display: block; padding: 2px 25px 2px 30px; color: #002BA2; line-height: 1.2; text-align: left; text-decoration: underline; box-sizing: border-box; }
.txt-link .row_col a:before { content: ""; position: absolute; top: 50%; left: 0; display: block; width: 20px; height: 20px; margin-top: -10px; background: url("../images/common/ico-link@2x.png") no-repeat center; background-size: 100%;}
.txt-link .row_col.blank a:after { content: ""; position: absolute; top: 50%; right: 0; display: block; width: 16px; height: 16px; margin-top: -8px; background: url(../images/common/ico-blank@2x.png) no-repeat center; background-size: cover;}
.txt-link .row_col a:hover {text-decoration: none;}

@media screen and (max-width: 767px) {
    .txt-link .row_col {margin: 0 10px 20px;}
}

/* ---------------------------------------------------
	ボタンリンク（3分割）
------------------------------------------------------ */
.btnlink {justify-content: flex-start; margin-bottom: 20px;}
.btnlink .row_col { width: 360px; max-width: 30%; margin-right: 5%; margin-bottom: 20px;}
.btnlink .row_col:nth-of-type(3n) {margin-right: 0;}
.btnlink .row_col:last-of-type {margin-right: 0;}
.btnlink .row_col a { position: relative; display: block; width: 100%; padding: 15px 50px; border: 1px solid #2A83A2; color: #FFF; font-weight: bold; text-align: center; text-decoration: none; background-color: #2A83A2; box-sizing: border-box; border-radius: 10px;}
.btnlink .row_col a:after { content: ""; position: absolute; top: 50%; right: 50px; display: block; width: 14px; height: 14px; margin-top: -6px; background: url(../images/common/ico-arrow-cr@2x.png) no-repeat center; background-size: 100%;}
.btnlink .row_col.blank a:after { content: ""; position: absolute; top: 50%; right: 50px; display: block; width: 16px; height: 16px; margin-top: -8px; background: url(../images/common/ico-blank-w@2x.png) no-repeat center; background-size: 100%;}
.btnlink .row_col.blank a[href$=".pdf"]:after { content: ""; position: absolute; top: 50%; right: 50px; display: block; width: 23.5px; height: 30px; margin-top: -15px; background: url(../images/common/ico-pdf.png) no-repeat center; background-size: 100%;}
.btnlink .row_col.blank a[href$=".doc"]:after, .btnlink .row_col.blank a[href$=".docx"]:after { content: ""; position: absolute; top: 50%; right: 50px; display: block; width: 23.5px; height: 30px; margin-top: -15px; background: url(../images/common/ico-doc.png) no-repeat center; background-size: 100%;}
.btnlink .row_col.blank a[href$=".xls"]:after, .btnlink .row_col.blank a[href$=".xlsx"]:after { content: ""; position: absolute; top: 50%; right: 50px; display: block; width: 23.5px; height: 30px; margin-top: -15px; background: url(../images/common/ico-xls.png) no-repeat center; background-size: 100%;}
.btnlink .row_col.blank a[href$=".ppt"]:after, .btnlink .row_col.blank a[href$=".pptx"]:after { content: ""; position: absolute; top: 50%; right: 50px; display: block; width: 23.5px; height: 30px; margin-top: -15px; background: url(../images/common/ico-ppt.png) no-repeat center; background-size: 100%;}

@media screen and (max-width: 767px) {
    .btnlink {display: block; margin-bottom: 10px; padding: 0 10px;}
    .btnlink .row_col { width: 100%; max-width: 100%; margin-right: 0; margin-bottom: 10px;}
    .btnlink .row_col:last-of-type {margin-bottom: 0;}
    .btnlink .row_col a {padding: 20px 50px;}
    .btnlink .row_col a:after {right: 30px;}
}

/* ---------------------------------------------------
	アンカーボタン（3分割）
------------------------------------------------------ */
.btn_row {justify-content: flex-start; margin-bottom: 40px;}
.btn_row .row_col { width: 360px; max-width: 30%; margin-right: 5%; margin-bottom: 60px;border-radius: 40px;overflow: hidden;}
.btn_row .row_col:nth-of-type(3n){margin-right: 0;}
.btn_row .row_col:last-of-type {margin-right: 0;}
.btn_row .row_col a {position: relative; display: block; width: 100%; padding:25px 20px 33px 20px; border: none; color: #333; font-weight: normal; text-align: center; text-decoration: none; background-color: #EEE; line-height: 1.2; box-sizing: border-box;font-weight: 700;font-size: 1.125rem;}
.btn_row .row_col a:after { content: ""; position: absolute; left: 50%;transform: translateX(-50%);bottom: 19px; display: block; width: 12px; height: 6px; margin-left: 0; background: url(../img/common/arb.png) no-repeat center; background-size: 100%; transition: transform .2s;}
.btn_row .row_col a:hover {opacity: 1;}
.btn_row .row_col a:hover:after {transform: translateX(-50%) translateY(2px);}

@media screen and (max-width: 767px) {
  .btn_row {justify-content: space-between; margin-bottom: 20px; padding: 0 10px;}
  .btn_row .row_col {width: 100%; max-width: 100%; margin-right: 0; margin-bottom: 10px;}
  .btn_row .row_col:last-of-type {margin-bottom: 0;}
  .btn_row .row_col a {padding: 10px 10px 15px;font-size: 0.75rem;}
  .btn_row .row_col a:after {width: 10px;height: 5px;bottom: 6px;}
  .btn_row .row_col a:hover {border-color: #444; color: #444;}
  .btn_row .row_col a:hover:after {transform: translateY(0);}
}

/* ---------------------------------------------------
	アンカーボタン（4分割）
------------------------------------------------------ */
.btn_row.c4{gap: 60px;}
.btn_row.c4::before,.btn_row.c4::after{display: none;}
.btn_row.c4 .row_col{width: calc((100%/4) - ((60px * 3)/4));margin-right: 0;}
.btn_row.c4 .row_col a{border-radius: 40px;}
@media screen and (max-width: 767px){
  .btn_row.c4{gap: 0;}
  .btn_row.c4 .row_col{width: 100%;}
}

/* ---------------------------------------------------
	アンカーボタン（2分割）
------------------------------------------------------ */
.btn_row.c2{gap: 60px;}
.btn_row.c2::before,.btn_row.c4::after{display: none;}
.btn_row.c2 .row_col{width: calc((100%/2) - (60px/2));margin-right: 0;max-width: none;}
.btn_row.c2 .row_col a{border-radius: 40px;}
@media screen and (max-width: 767px){
  .btn_row.c2{gap: 0;}
  .btn_row.c2 .row_col{width: 100%;}
}

/* ---------------------------------------------------
	アンカーボタン（単体）
------------------------------------------------------ */
.btn_row.mono{justify-content: center;}
.btn_row.mono .row_col{width: fit-content;max-width: 100%;}
.btn_row.mono .row_col a{padding: 25px 60px 33px 60px;}
@media screen and (max-width: 767px){
  .btn_row.mono .row_col{width: 100%;}
  .btn_row.mono .row_col a{padding: 10px 10px 15px;}
}

/* ---------------------------------------------------
	コラム：注意文
------------------------------------------------------ */
.column_caution {width: 100%; border: 4px solid #B10404; padding: 40px; box-sizing: border-box; margin: 0 auto 40px;box-sizing: border-box;}
.column_caution h4 {color: #000;}
.column_caution p {margin-bottom: 0;}

@media screen and (max-width: 767px) {
    .column_caution {padding: 20px; margin: 0 auto 20px;}
}

/* ---------------------------------------------------
	コラム：標準
------------------------------------------------------ */
.column_standard {width: 100%; border: none; padding: 40px; box-sizing: border-box; margin: 0 auto 40px; background: #E9F2F6;box-sizing: border-box;}
.column_standard h4 {}
.column_standard p {margin-bottom: 0;}

@media screen and (max-width: 767px) {
    .column_standard {padding: 20px; margin: 0 auto 20px;}
}

/* ---------------------------------------------------
	画像left＋テキスト
------------------------------------------------------ */
.pic_left {margin-bottom: 60px;}
.pic_left .row_pic {width: 40%; max-width: 480px;}
.pic_left .row_pic img {border-radius: 10px;}
.pic_left .row_txt {width: 56.667%; max-width: 680px;box-sizing: border-box;}
.pic_left .row_txt .txt_btn {margin-top: 40px; text-align: left;}
.pic_left .row_txt .txt_btn a { position: relative; display: block; width: 380px;max-width: 100%; padding: 15px 50px; border: 1px solid #2A83A2; color: #FFF; font-weight: bold; text-align: left; text-decoration: none; background-color: #2A83A2; border-radius: 10px; box-sizing: border-box;}
.pic_left .row_txt .txt_btn a:after { content: ""; position: absolute; top: 50%; right: 40px; display: block; width: 11px; height: 10px; margin-top: -5px; background: url(../images/common/ico-btn-arrow@2x.png) no-repeat center; background-size: 100%;}

@media screen and (max-width: 767px) {
    .pic_left {margin-bottom: 30px;}
  .pic_left .row_pic {width: 100%; margin-bottom: 20px; text-align: center;}
  .pic_left .row_txt {width: 100%; max-width: 100%; padding: 0 10px;}
  .pic_left .row_txt > * {margin-left: -10px; margin-right: -10px;}
  .pic_left .row_txt .txt_btn {margin: 20px -10px 0; text-align: center;}
}

/* ---------------------------------------------------
	画像right＋テキスト
------------------------------------------------------ */
.pic_right {margin-bottom: 60px;}
.pic_right .row_pic {width: 40%; max-width: 480px; order: 10;}
.pic_right .row_pic img {border-radius: 10px;}
.pic_right .row_txt {width: 56.667%; max-width: 680px;box-sizing: border-box;}
.pic_right .row_txt .txt_btn {margin-top: 40px;}
.pic_right .row_txt .txt_btn a { position: relative; display: block; width: 380px; max-width: 100%; padding: 15px 50px; border: 1px solid #2A83A2; color: #FFF; font-weight: bold; text-align: left; text-decoration: none; background-color: #2A83A2; border-radius: 10px; box-sizing: border-box;}
.pic_right .row_txt .txt_btn a:after { content: ""; position: absolute; top: 50%; right: 40px; display: block; width: 11px; height: 10px; margin-top: -5px; background: url(../images/common/ico-btn-arrow@2x.png) no-repeat center; background-size: 100%;}

@media screen and (max-width: 767px) {
.pic_right {margin-bottom: 30px;}
  .pic_right .row_pic {width: 100%; margin-bottom: 20px; order: 0; text-align: center;}
  .pic_right .row_txt {width: 100%; max-width: 100%; padding: 0 10px;}
  .pic_right .row_txt > * {margin-left: -10px; margin-right: -10px;}
  .pic_right .row_txt .txt_btn {margin: 20px -10px 0; text-align: center;}
}

/* ---------------------------------------------------
	画像＋テキスト（縦：2分割）※センターから表示する
------------------------------------------------------ */
.box_row2 {justify-content: space-between;}
.box_row2::before,.box_row2::after{display: none;}
.box_row2 h4 {margin-bottom: 20px;}
.box_row2 .row_col { width: 580px; max-width: 48.333%; margin-bottom: 40px;}
.box_row2 .row_col .col_pic { margin-bottom: 20px; text-align: center;}
.box_row2 .row_col .col_pic img {max-width: 100%;width: 100%;}
.box_row2 .row_col .col_txt h5{font-size: 1.875rem;font-weight: 700;color: #066F9D;font-feature-settings: "palt";}
.box_row2 .row_col .col_txt p {margin: 0;}

.box_row2.num{counter-reset: num2;}
.box_row2.num .row_col .col_txt h5::before{counter-increment: num2 1; content: counter(num2)"";font-family: "Lato", sans-serif;color: #fff;border-radius: 50%;overflow: hidden;background: #066F9D;margin-right: 15px;display: inline-flex;align-items: center;justify-content: center;font-weight: 500;aspect-ratio: 1;width: 40px;font-size: 1.5rem;transform: translateY(-2px);}

@media screen and (max-width: 767px) {
  .box_row2 {}
  .box_row2 h4 {margin-bottom: 10px;}
  .box_row2 .row_col { width: 100%; max-width: 100%; margin-bottom: 20px;}
  .box_row2 .row_col .col_pic { margin-bottom: 15px;}
  .box_row2 .row_col + .row_col { margin-top: 30px;}
}

/* ---------------------------------------------------
	画像＋テキスト（縦：3分割）※センターから表示する
------------------------------------------------------ */
.box_row3 {justify-content: center;}
.box_row3 h4 {margin-bottom: 20px;}
.box_row3 .row_col { width: 373px; max-width: 31.084%; margin-right: 3.37%; margin-bottom: 40px;}
.box_row3 .row_col:nth-of-type(3n) { margin-right: 0;}
.box_row3 .row_col:last-of-type { margin-right: 0;}
.box_row3 .row_col .col_pic { margin-bottom: 20px; text-align: center;}
.box_row3 .row_col .col_pic img {max-width: 100%;width: 100%;}
.box_row3 .row_col .col_txt h5{font-size: 1.875rem;font-weight: 700;color: #066F9D;font-feature-settings: "palt";}
.box_row3 .row_col .col_txt p {margin: 0;}
.box_row3 .row_col .col_btn {margin-top: 20px; text-align: left;}
.box_row3 .row_col .col_btn a {display: inline-block; border: 1px solid #0EA7AC; padding: 20px 20px; text-decoration: none; width: 100%; min-width: 360px; box-sizing: border-box;}
.box_row3 .row_col .col_btn a:before {content: url(../images/common/ico-arrow-cr.png); margin-right: 10px;}

.box_row3.num{counter-reset: num;}
.box_row3.num .row_col .col_txt h5::before{counter-increment: num 1; content: counter(num)"";font-family: "Lato", sans-serif;color: #fff;border-radius: 50%;overflow: hidden;background: #066F9D;margin-right: 15px;display: inline-flex;align-items: center;justify-content: center;font-weight: 500;aspect-ratio: 1;width: 40px;font-size: 1.5rem;transform: translateY(-2px);}

@media screen and (max-width: 767px) {
    .box_row3 {margin-bottom: 50px;}
    .box_row3 h4 {margin-bottom: 10px; font-size: 24px;}
    .box_row3 h5{margin-bottom: 10px; font-size: 24px;}
    .box_row3 .row_col {width: 100%; max-width: 100%; margin-right: 0;}
    .box_row3 .row_col:last-of-type { margin-bottom: 0;}
    .box_row3 .row_col .col_pic {margin-bottom: 15px;}
}

/* ---------------------------------------------------
	画像＋テキスト（縦：4分割）※センターから表示する
------------------------------------------------------ */
.box_row4 { justify-content: center;}
.box_row4 h5 {margin-bottom: 20px;font-feature-settings: "palt";color: #066F9D;}
.box_row4 .row_col { width: 22.5%; margin-right: 3.33%; margin-bottom: 40px;}
.box_row4 .row_col:nth-of-type(4n) { margin-right: 0;}
.box_row4 .row_col:last-of-type { margin-right: 0;}
.box_row4 .row_col .col_pic { margin-bottom: 20px; text-align: center;}
.box_row4 .row_col .col_pic img {max-width: 100%;width: 100%;}

@media screen and (max-width: 767px) {
    .box_row4 {margin-bottom: 50px; justify-content: space-between;}
    .box_row4 h5 {font-size: 20px; margin-left: 0; margin-right: 0; text-align: left;}
    .box_row4 .row_col {width: 100%; max-width: 100%; margin-right: 0;}
    .box_row4 .row_col:last-of-type { margin-botoom: 0;}
    .box_row4 .row_col .col_pic {margin-bottom: 15px;}
}

/* ---------------------------------------------------
	テーブル（ｗ100％）
------------------------------------------------------ */
/* デフォルトパーツ */
.column-table- { width: 100%; margin: 0 auto 40px;}

.column-table- table {width: 100%; border-spacing: 0; border-collapse: collapse; empty-cells: show; table-layout: fixed; background: #FFF;}
.column-table- table th, .column-table- table td { padding: 20px; border-bottom: 1px solid #CCCCCC; vertical-align: middle;}
.column-table- table th { width: 25%; background: #F2F8FF; text-align: left; font-weight: bold;}

@media screen and (max-width: 767px) {
  /* デフォルトパーツ */
    .column-table- { margin: 0 auto 30px;}
    .column-table- table th { width: 100%;}

    .column-table- table.js-table-unit-scroll-hint {table-layout: auto;}
    .column-table- table.acms-table-scrollable {table-layout: auto;}
}



/* ---------------------------------------------------
	よくあるご質問
------------------------------------------------------ */
/*.faq-content { margin-bottom: 40px;}
.faq-content .faq-q { position: relative; padding-left: 40px;}
.faq-content .faq-q:before { content: 'Q.'; margin-right: 10px; position: absolute; left: 0; font-family: Arial, Helvetica, "sans-serif"; font-size: 30px; font-weight: bold; color: #739D2C;}
.faq-content .faq-a { position: relative; padding-left: 40px;}
.faq-content .faq-a:before { content: 'A.'; margin-right: 10px; position: absolute; left: 0; font-family: Arial, Helvetica, "sans-serif"; font-size: 30px; font-weight: bold; color: #F94141; line-height: 1;}

@media screen and (max-width: 767px) {
	
}*/

/* ---------------------------------------------------
	余白
------------------------------------------------------ */
.hr_margin {
  margin: 0 auto;
  border: none !important;
}

.margin-s {
  margin-bottom: 20px;
}

.margin-m {
  margin-bottom: 40px;
}

.margin-l {
  margin-bottom: 60px;
}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape) {
  .margin-s {
    margin-bottom: 10px;
  }
  .margin-m {
    margin-bottom: 20px;
  }
  .margin-l {
    margin-bottom: 30px;
  }
}

/* ---------------------------------------------------
	ACMS.Config.LiteEditorConf.btnOptions
------------------------------------------------------ */
.txt-lll {font-size: 1.375em;}
.txt-ll {font-size: 1.25em;}
.txt-l {font-size: 1.125em;}
.txt-s {font-size: 0.875em;}
.txt-ss {font-size: 0.75em;}
.txt-sss {font-size: 0.625em;}
.tcol-red {color: red;}
.tcol-orange {color: orangered;}
.tcol-yellow {color: orange;}
.tcol-green {color: darkgreen;}
.tcol-blue {color: blue;}
.tcol-purple {color: purple;}

/* ---------------------------------------------------
	人物アイコン＋テキスト ユニット
------------------------------------------------------ */
.reco{margin-bottom: 40px;}
.reco .items{display: flex;gap: 10px;justify-content: flex-start;align-items: center;margin-bottom: 21px;}
.reco .items:last-of-type{margin-bottom: 0;}
.reco .items .ico{flex-shrink: 0;width: 75px;border-radius: 50%;overflow: hidden;aspect-ratio: 1/1;}
.reco .items .ico img{width: 100%;height: 100%;object-fit: cover;}
.reco .items .txt{font-size: 1.3125rem;color: #000;margin: 0;}
@media screen and (max-width: 767px), (max-width: 896px) and (orientation: landscape){
  .reco .items{gap: 5px;}
  .reco .items .ico{width: 60px;}
  .reco .items .txt{font-size: 1rem;}
}

/* ---------------------------------------------------
	診断メニュー ユニット
------------------------------------------------------ */
.inspection-menu{border-radius: 20px;overflow: hidden;margin-bottom: 40px;box-sizing: border-box;}
.inspection-menu *{box-sizing: border-box;}
.inspection-menu .title{background: #066F9D;color: #fff;margin: 0;font-size: 1.875rem;font-weight: 700;padding: 41px 30px 38px 30px;line-height: 1;letter-spacing: 0.05em;}
.inspection-menu .title .num{color: #066F9D;aspect-ratio: 1/1;background: #fff;font-size: 1.5rem;line-height: 1;display: inline-flex;justify-content: center;align-items: center;margin-right: 15px;width: 40px;border-radius: 50%;transform: translateY(-2px);letter-spacing: 0;}
.inspection-menu .box{background: #eee;padding: 40px;}

.inspection-menu .box .flow{display: flex;gap: 26px;flex-wrap: wrap;align-items:flex-start;margin-bottom: 30px;padding-bottom: 30px;border-bottom: 2px dashed #333;}
.inspection-menu .box .flow::before,.inspection-menu .box .flow::after{display: none;}
.inspection-menu .box .flow .items{width: calc((100%/4) - ((26px * 3)/4));}
.inspection-menu .box .flow .items .pic{aspect-ratio: 320/240;overflow: hidden;margin-bottom: 10px;}
.inspection-menu .box .flow .items .pic img{width: 100%;height: 100%;object-fit: cover;max-width: 100%;}
.inspection-menu .box .flow .items .cont{font-size: 1.25rem;font-weight: 700;color: #066F9D;margin: 0 0 10px 0;}
.inspection-menu .box .flow .items .price{font-size: 1.125rem;font-weight: 700;margin: 0;}

.inspection-menu .box .info{background: #fff;border-radius: 20px;overflow: hidden;display: flex;padding: 30px 30px 30px 62px;align-items: flex-start;}
.inspection-menu .box .info.not{display: none;}
.inspection-menu .box .info::before,.inspection-menu .box .info::after{display: none;}

.inspection-menu .box .info .left{width: 45%;padding-right: 50px;}
.inspection-menu .box .info .left.w100{width: 100%;}
.inspection-menu .box .info .left .desc{padding: 0 31px 0 13px;border-bottom: 1px solid #33333380;margin-bottom: 5px;}
.inspection-menu .box .info .left .desc::before,.inspection-menu .box .info .left .desc::after{display: none;}
.inspection-menu .box .info .left .desc .items{display: flex;justify-content: space-between;align-items: flex-start;margin-bottom: 5px;}
.inspection-menu .box .info .left .desc .items::before,.inspection-menu .box .info .left .desc .items::after{display: none;}
.inspection-menu .box .info .left .desc .items .cont{margin: 0;font-size: 1.125rem;line-height: 1.8;}
.inspection-menu .box .info .left .desc .items .price{margin: 0;font-size: 1.125rem;line-height: 1.8;flex-shrink: 0;}

.inspection-menu .box .info .left .total{margin: 0;display: flex;justify-content: space-between;align-items: flex-start;padding: 0 31px 0 13px;font-size: 1.125rem;line-height: 1.8;}

.inspection-menu .box .info .right{width: 55%;display: flex;align-items: center;justify-content: flex-start;}
.inspection-menu .box .info .right::before{content: "";background: #066f9d80;clip-path: polygon(0 0, 0% 100%, 100% 50%);height: 50px;width: 25px;display: block;flex-shrink: 0;margin-right: 26px;}
.inspection-menu .box .info .right .tag{background: #066F9D;border-radius: 10px;overflow: hidden;width: 100%;color: #fff;padding: 30px 40px;}
.inspection-menu .box .info .right .tag .set{background: #fff;color: #066F9D;font-size: 1.5rem;width: 100%;text-align: center;margin-bottom: 32px;font-weight: 700;}
.inspection-menu .box .info .right .tag .tp{font-weight: 700;font-size: 3rem;text-align: center;margin: 0;line-height: 1;}
.inspection-menu .box .info .right .tag .disc{text-align: center;font-size: 1rem;margin: 0;}

.inspection-menu .box .note{margin: 0;font-size: 1rem;}
.inspection-menu .box .note:first-of-type{margin-top: 47px;}

.i-menu .acms-admin-form-radio::before,acms-admin-form-radio::after{display: none;}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation:landscape) {
  .inspection-menu{width: calc(100% - 20px);margin-left: auto;margin-right: auto;}
  .inspection-menu .title{font-size: 1.375rem;padding: 21px 20px 18px 20px;}
  .inspection-menu .title .num{width: 35px;margin-right: 10px;font-size: 1.375rem;}
  .inspection-menu .box{padding: 20px;}
  .inspection-menu .box .flow{gap: 20px;}
  .inspection-menu .box .flow .items{width: calc((100%/2) - (20px/2));}
  .inspection-menu .box .flow .items .cont{padding: 0;font-size: 1.125rem;margin-bottom: 0;}
  .inspection-menu .box .flow .items .price{padding: 0;font-size: 1rem;}
  .inspection-menu .box .info{display: block;padding: 20px;}
  .inspection-menu .box .info .left{width: 100%;padding: 0;margin-bottom: 20px;}
  .inspection-menu .box .info .left .desc{padding: 0;}
  .inspection-menu .box .info .left .desc .items .cont{padding: 0;}
  .inspection-menu .box .info .left .desc .items .price{padding: 0;}
  .inspection-menu .box .info .left .total{padding: 0;}
  .inspection-menu .box .info .right{width: 100%;flex-direction:column}
  .inspection-menu .box .info .right .tag{padding: 20px;}
  .inspection-menu .box .info .right::before{margin-right:0;margin-bottom: 20px;clip-path: polygon(50% 100%, 0 0, 100% 0);width: 50px;height: 25px;}
  .inspection-menu .box .info .right .tag .set{font-size: 1.375rem;margin-bottom: 20px;}
  .inspection-menu .box .info .right .tag .tp{font-size: 2.1875rem;margin-bottom: 10px;}
}

/* ---------------------------------------------------
	住宅診断 ユニット
------------------------------------------------------ */
.inspection{margin-bottom: 80px;box-sizing: border-box;}
.inspection *{box-sizing: border-box;}
.inspection *::before,.inspection *::after{display: none;}
.inspection .box{display: flex;align-items: flex-start;gap: 20px;}
.inspection .box .image{aspect-ratio: 387/280;background: #E8E8E8;border-radius: 10px;overflow: hidden;text-align: center;width: 32.25%;display: flex;align-items: center;justify-content: center;flex-shrink: 0;}
.inspection .box .image img{}
.inspection .box .desc{display: flex;width: 100%; }
.inspection .box .desc .cont{width: 50%;counter-reset: con 0;}
.inspection .box .desc .cont.fw{width: 100%;}
.inspection .box .desc .cont .tit{font-size: 1.375rem;margin-bottom: 20px;}
.inspection .box .desc .cont .tit::before{content: "";display: inline-block;clip-path: circle(50% at 50% 50%);background: #06799E;aspect-ratio: 1/1;width: 12px;margin-right: 10px;transform: translateY(-2px);}
.inspection .box .desc .cont .item{margin:0;font-size: 1.125rem;line-height: 1.8;}
.inspection .box .desc .cont .item.link{text-decoration: underline;color: #2A83A2;}
.inspection .box .desc .cont .item::before{content: counter(con)"";counter-increment: con 1;display: inline;color: #066F9D;font-size: 1.125rem;font-weight: 700;margin-right: 10px;}
.inspection .links{display: flex;gap: 40px;margin-top: 40px;}
.inspection .links a{width: calc((100%/2) - (40px/2));display: block;text-align: center;line-height: 1;padding: 19px;background: #2A83A2;color: #fff;font-weight: 700;border-radius: 10px;font-size: 1.125rem;position: relative;}
.inspection .links a::after{content: "";width: 20px;aspect-ratio: 1/1;position: absolute;display: block;top: 50%;transform: translateY(-50%);right: 20px;background: url(../img/common/arcw.png) no-repeat center/contain;}
@media screen and (max-width: 767px), (max-width: 896px) and (orientation:landscape) {
  .inspection{padding: 0 10px;}
  .inspection .box{display: block;}
  .inspection .box .image{width: 100%;margin-bottom: 20px;}
  .inspection .box .desc .cont .tit{padding: 0;font-size: 1.25rem;margin-bottom: 10px;}
  .inspection .box .desc .cont .item{padding: 0 0 0 1em;text-indent: -1em;}
  .inspection .links{display: block;}
  .inspection .links a{width: 100%;margin-bottom: 10px;}
  .inspection .links a:last-of-type{margin-bottom: 0;}
}

/* ---------------------------------------------------
	GoogleMap・iframe用 ユニット
------------------------------------------------------ */
.gmap-iframe{}
.gmap-iframe iframe{max-width: 100%;}


/* ---------------------------------------------------
	画像＋テキスト（画像に重ねて配置）
------------------------------------------------------ */
.pic-ontxt {margin-bottom: 40px; position: relative; display: flex; justify-content: center; align-items: center; flex-wrap: wrap;}
.pic-ontxt .img {position: relative; z-index: 100; order: 1; border-radius: 0; overflow: hidden;}
.pic-ontxt .img img{border-radius: 0;}
.pic-ontxt .txt {background: #FFF; border-radius: 20px; box-shadow: 0 3px 12px rgba(0,0,0,.16); padding: 50px; position: relative; z-index: 200; order: 2;}
.pic-ontxt .txt p {margin-bottom: 0;}

.pic-ontxt.ontxt-top {}
.pic-ontxt.ontxt-top .img {width: 100%; order: 10;}
.pic-ontxt.ontxt-top .txt {width: calc(100% - 100px); margin: 0 auto -150px;}

.pic-ontxt.ontxt-bottom {}
.pic-ontxt.ontxt-bottom .img ,.pic-ontxt.ontxt-bottom .img img{width: 100%;}
.pic-ontxt.ontxt-bottom .txt {width: calc(100% - 100px); margin: -150px auto 0;}

.pic-ontxt.ontxt-left {flex-wrap: nowrap;}
.pic-ontxt.ontxt-left .img {width: 70%; margin-left: auto; order: 10;}
.pic-ontxt.ontxt-left .txt {width: 50%; margin: 50px -20% 50px 0;}

.pic-ontxt.ontxt-right {flex-wrap: nowrap;}
.pic-ontxt.ontxt-right .img {width: 70%; margin-right: auto;}
.pic-ontxt.ontxt-right .txt {width: 50%; margin: 50px 0 50px -20%;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
    .pic-ontxt {margin-bottom: 20px;}
	.pic-ontxt.ontxt-left,
	.pic-ontxt.ontxt-right {flex-wrap: wrap;}
    .pic-ontxt.ontxt-top .img,
    .pic-ontxt.ontxt-bottom .img,
    .pic-ontxt.ontxt-left .img,
    .pic-ontxt.ontxt-right .img {width: 100%; order: 1;}
    .pic-ontxt.ontxt-top .txt,
    .pic-ontxt.ontxt-bottom .txt,
    .pic-ontxt.ontxt-left .txt,
    .pic-ontxt.ontxt-right .txt {width: calc(100% - 20px); margin: -50px auto 0; padding: 20px; order: 2;}
}

/* ---------------------------------------------------
	タイトル＋テキスト（左右配置）
------------------------------------------------------ */
.tit_and_txt_wrap{display: flex; align-items: flex-start; flex-wrap:wrap;margin-bottom: 30px;}
.tit_and_txt_wrap .tit-wrap{width:50%;}
.tit_and_txt_wrap .text-wrap{width:47%;}
/* 70% */
.tit_and_txt_wrap .tit-wrap.w70{width:70%;}
.tit_and_txt_wrap .tit-wrap.w70 + .text-wrap{width:27%;}
/* 60% */
.tit_and_txt_wrap .tit-wrap.w60{width:60%;}
.tit_and_txt_wrap .tit-wrap.w60 + .text-wrap{width:37%;}
/* 50% */
.tit_and_txt_wrap .tit-wrap.w50{width:50%;}
.tit_and_txt_wrap .tit-wrap.w50 + .text-wrap{width:47%;}
/* 40% */
.tit_and_txt_wrap .tit-wrap.w40{width:40%;}
.tit_and_txt_wrap .tit-wrap.w40 + .text-wrap{width:57%;}
/* 30% */
.tit_and_txt_wrap .tit-wrap.w30{width:30%;}
.tit_and_txt_wrap .tit-wrap.w30 + .text-wrap{width:67%;}

/* 上付き */
.tit_and_txt_wrap.pos_top{align-items: flex-start;}
/* 中段 */
.tit_and_txt_wrap.pos_middle{align-items: center;}
/* 下付き */
.tit_and_txt_wrap.pos_under{align-items: flex-end;}

@media screen and (max-width:767px){
    .tit_and_txt_wrap .tit-wrap{width:100% !important;}
    .tit_and_txt_wrap .text-wrap{width:100% !important;}
    .tit_and_txt_wrap .text-wrap .btn-link {margin: 0 10px;}
}

/* ---------------------------------------------------
	Q&A
------------------------------------------------------ */
.faq-group {max-width: 1200px; margin: 0 auto 40px;}
.faq-group h2 {width: 100%; text-align: center; background: rgba(42,24,0,0.05); padding: 5px 0; cursor: pointer;}
.faq-group h2::after {content: ""; display: inline-block; width: 29px; height: 17px; background: url("../images/common/ico-arrow-bb@2x.png") no-repeat center; background-size: cover; transition: all 0.4s ease-in-out; -webkit-transform: rotate(0deg); transform: rotate(0deg); margin: 0 0 3px 20px;}
.faq-group h2.open::after {-webkit-transform: rotate(180deg); transform: rotate(180deg);}
.faq-group-contents {display: none;}
.faq-group-contents .faq-content {border-bottom: 1px solid #2A1800; margin-bottom: 40px;}
.faq-content {margin: 0 auto; border-bottom: 1px solid #2A1800; margin-bottom: 40px;}
.faq-content .faq-q { position: relative; padding-left: 40px; text-align: left; font-size: 24px; margin-bottom: 16px; color: #222;}
.faq-content .faq-q::before { content: 'Q'; margin-right: 10px; position: absolute; left: 0; font-size: 34px; font-weight: 600; font-family: "Montserrat";  color: #066F9D; top: -1rem;}
.faq-content .faq-a { position: relative; padding-left: 40px;}
.faq-content .faq-a::before { content: 'A'; margin-right: 0; position: absolute; top: 0; left: 0; font-size: 34px; font-weight: 600; line-height: 1; font-family: "Montserrat"; color: #EDD400;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
	.faq-group {max-width: 100%; margin: 0 auto 40px; padding: 0 10px;}
	.faq-content .faq-q {font-size: 20px;}
    .faq-content .faq-q::before {font-size: 30px;}
	.faq-content .faq-a {font-size: 16px;}
    .faq-content .faq-a::before {font-size: 32px;}
}

/* ---------------------------------------------------
	罫線
------------------------------------------------------ */
.entry-column .hr-line {margin: auto; border-bottom: 1px solid #DDD;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
}


/* ---------------------------------------------------
	流れ・手順用
------------------------------------------------------ */
.custom-flow {counter-reset: flownum;}
.custom-flow *{box-sizing: border-box;}
.flow-box {position: relative; padding: 40px 10px;}
.flow-box h3 {border-left: none; counter-increment: flownum; position: relative; padding-left: 60px; font-weight: bold; line-height: 1.4; margin-bottom: 14px;}
.flow-box h3::before{content: ""; display: inline-block; width: 44px; height: 14px; border-radius: 100px; background:#EDD400; left: .1em; position: absolute; top: 26px;}
.flow-box h3::after {content:counter(flownum,decimal-leading-zero); position: absolute; top: 0; left: 3px; min-width: 40px; height: 40px; text-align: center; line-height: 40px; color: #066F9D; font-size: 36px; font-family: "Montserrat"; font-weight: bold;}
/*.entry-column h3.tit-flow::before {content: counter(flow, decimal-leading-zero); position: absolute; bottom: 0; left: 0; min-width: 44px; height: 44px; text-align: center; line-height: 44px; color: #00469C; font-size: 44px; font-family: Arial, Helvetica, "sans-serif"; font-weight: bold;} */

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
    .flow-box h3 {padding-left: 59px;}
    .flow-box h3::before {top: 20px; left: 5px;} 
}

.flow-content {display: flex; justify-content: space-between; width: 100%; max-width: 1200px; margin: 0 auto;}
.flow-content::before, .flow-content::after {content: ""; display: none;}
.flow-img {width: 28.334%; max-width: 340px;}
.flow-txt {width: 68.334%; max-width: 820px;}
.flow-content.no-img .flow-img {display: none;}
.flow-txt {width: 68.334%; max-width: 820px;}
.flow-content.no-img .flow-txt {width: 100%; max-width: 100%; padding-left: 60px;}
.entry-column p.flow-txt {margin: 0;}
.flow-txt strong {font-weight: bold;}

@media screen and (max-width: 767px), (max-width: 844px) and (orientation:landscape) {
.flow-box {position: relative; padding: 40px 0;}
.flow-content {display: block; width: 100%; max-width: 1200px;}
.flow-img {width: 100%; max-width: 100%; text-align: center; margin-bottom: 10px;}
.flow-txt {width: 100%; max-width: 100%;}
}

/* ---------------------------------------------------
	お問い合わせユニット
------------------------------------------------------ */
.contact-banner{background: #FFF; border: 4px solid #004282; border-radius: 20px;}
.contact-banner.type1{padding:50px; display: flex; justify-content: space-between; align-items: center;}
.contact-banner.type1 .text{margin-right: 30px; width: 37.9%;}
.contact-banner.type1 .text p{margin-bottom: 0;}
.contact-banner.type h4{margin-bottom: 20px; padding: 0; font-weight: 700; font-size: 24px; line-height: 1.4; color: #004282;}
.contact-banner h4::before{content:none;}
.contact-banner .contact{display: flex; align-items: center; width: 576px;}
.contact-banner .tel{margin-right: 30px;}
.contact-banner .tel p,.contact-banner.type1 .tel a{font-size: 34px; line-height: .663; font-weight: 700; margin-bottom: 5px; text-decoration: none; color: #222; font-family: "Arial"; white-space: nowrap; text-align: right;}
.contact-banner .tel p small{font-size: 14px; font-weight: 500; line-height: 1.575;}
.contact-banner .mail{background:#EDD400; min-width:260px; border-radius: 10px;}
.contact-banner .mail a{color:#222; display: flex; justify-content: center; align-items: center; text-align: left; font-size: 17px; font-weight: 700; letter-spacing: 0; line-height: 2; padding: 22px 16px;}
.contact-banner .mail a:hover{text-decoration: none;}
.contact-banner .mail a::before{content:""; display: inline-block; width: 30px; height: 20px; background:url(../images/common/mail_icon.svg) no-repeat center/contain; margin-right: 10px;}

.contact-banner.type2{text-align: center; padding:50px;}
.contact-banner.type2 .contact{margin: auto;}
.contact-banner.type2 .text p{margin-bottom: 20px;}

@media screen and (max-width:767px){
    .contact-banner.type1{flex-wrap:wrap; padding: 50px 0; max-width: calc(100% - 20px);}
    .contact-banner.type1 .text{width: 100%; margin-right: 0; margin-bottom: 20px;}
    .contact-banner .contact{flex-wrap:wrap; width: 100%;}
    .contact-banner.type2{padding: 50px 0; max-width: calc(100% - 20px);}
    .contact-banner .tel{width: 100%; text-align: center; margin-right: 0; margin-bottom: 20px;}
    .contact-banner .mail{width: 100%; margin: 0 10px;}
}

/* ---------------------------------------------------
	pcspユニット調整
------------------------------------------------------ */
.pcsp-img{margin-bottom: 30px;}
.pcsp-img.max-w{max-width: 100%;}
.pcsp-img.img-w img{width: 100%;}
.pcsp-img.img-c {text-align: center;}

/* ---------------------------------------------------
	テキストユニット調整
------------------------------------------------------ */
.txt-lll {font-size: 1.375em;}
.txt-ll {font-size: 1.25em;}
.txt-l {font-size: 1.125em;}
.txt-s {font-size: 0.875em;}
.txt-ss {font-size: 0.75em;}
.txt-sss {font-size: 0.625em;}

.tcol-red {color: red;}
.tcol-orange {color: orange;}
.tcol-yellow {color: yellow;}
.tcol-green {color: darkgreen;}
.tcol-blue {color: blue;}
.tcol-purple {color: purple;}

/* ---------------------------------------------------
	コンタクトバナー：ユニット用調整
------------------------------------------------------ */
.c-banner1.type-unit{border-radius: 20px;border: 4px solid #319ECE;}
.c-banner1.type-unit .banner-title{margin: 0;padding: 25px 0 23px;}
.c-banner1.type-unit .banner-title .main{word-break: auto-phrase;font-size: 28px;}
.c-banner1.type-unit .banner-title .sub{word-break: auto-phrase;}
.c-banner1.type-unit .block .contact{max-width: 100%;width: 380px;font-size: 13px;line-height: 1.3;word-break: auto-phrase;}
.c-banner1.type-unit .block .tel p{margin: 0;}
.c-banner1.type-unit .block .tel-box{margin:20px auto 20px;}
.c-banner1.type-unit .block .address{margin: 0;}

@media screen and (max-width: 767px), (max-width: 896px) and (orientation:landscape) {
  .c-banner1.type-unit .banner-title .main{word-break: auto-phrase;font-size: 22px;}
}