@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;}
}

/*.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: 400; 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: 400; font-style: normal; font-size: 30px; line-height: 1.4; color: #2A83A2; margin: 0 auto 30px; padding: 0 0 20px; background: none; letter-spacing: 0.1em; border-bottom: 1px 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;}
.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: 20px; border: none; color: #000; font-weight: normal; text-align: center; text-decoration: none; background-color: #EEE; line-height: 1.2; box-sizing: border-box;}
.btn_row .row_col a:after { content: ""; position: absolute; left: 50%; bottom: 10px; display: block; width: 12px; height: 6px; margin-left: 0; background: url(../images/common/ico-arrow-bb@2x.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: 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;}
  .btn_row .row_col a:after {width: 5px; height: 16px; bottom: -8px;}
  .btn_row .row_col a:hover {border-color: #444; color: #444;}
  .btn_row .row_col a:hover:after {transform: translateY(0);}
}

/* ---------------------------------------------------
	コラム：注意文
------------------------------------------------------ */
.column_caution {width: 100%; border: 4px solid #B10404; padding: 40px; box-sizing: border-box; margin: 0 auto 40px;}
.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;}
.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;}
.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; 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;}
.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 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 {}
.box_row2 .row_col .col_txt p {margin: 0;}

@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 {}
.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;}

@media screen and (max-width: 767px) {
    .box_row3 {margin-bottom: 50px;}
    .box_row3 h4 {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;}
.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 {}

@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;
  }