@charset "utf-8";
/* ===================================================
	Home CSS
====================================================== */

body.loading { overflow: hidden;}
body.act { overflow: auto;}
#loading {
  opacity: 0; pointer-events: none; transition: opacity .5s;
  position: absolute; top: 0; left: 0; width: 100%; height: 100vh; z-index: 11111;  display: flex; align-items: center; justify-content: center; background: #fff;
}
.loading #loading { position: fixed; opacity: 1; pointer-events: auto; transition: opacity 1s;}
.loading.act #loading { opacity: 0; pointer-events: none;}
#loading > p { width: 90%; text-align: center; position: relative; padding-bottom: 60px; margin-bottom: 60px;}
#loading > p::after {
  content: ''; display: block; width: 100%; height: 1px; position: absolute; bottom: 0; left: 0; background: #1e1f22;
  transform: scaleX(0);
}
#loading > p img { opacity: 0; transition: opacity .5s .5s;}
.loading #loading > p img { opacity: 1;}
.loading #loading > p::after { -webkit-animation: loading_anim 3s .8s both; animation: loading_anim 3s .8s both;}


@media screen and (max-width: 600px) {
  #loading > p { padding-bottom: 40px; margin-bottom: 30px;}
  #loading > p img { width: 15vw; min-width: 209px;}
}

@-webkit-keyframes loading_anim {
  0% { transform: scale(0); transform-origin: left;}
  100% { transform: scale(1); transform-origin: left;}
}
@keyframes loading_anim {
  0% { transform: scale(0); transform-origin: left;}
  100% { transform: scale(1); transform-origin: left;}
}
/* ---------------------------------------------------

------------------------------------------------------ */
#h_logo { display: none;}

#main_img { width: 100%; height: calc(100vh + 400px); max-height: calc(100vh + 400px);}

#main_logo { background: #e2e0d6; padding: 60px 0; text-align: center;}

#main_slider { padding: 0; position: relative; height: 100vh;}
#main_slider .slick-slide div { vertical-align: bottom;}
#main_slider .slick .slick-list,
#main_slider .slick .slick-track,
#main_slider .slick-slide div,
#main_slider .slick { height: 100%; font-size: 0;}
#main_slider img { width: 100%; height: 100%; transition: transform 8s linear;}
#main_slider .slick-animate img { transform: scale(1.1);}
#main_slider > p { position: absolute; bottom: 30px; right: 15px; z-index: 10; color: #fff; -webkit-writing-mode: vertical-rl; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; letter-spacing: 4px;}
#main_slider > p .bar { position: relative;}
#main_slider > p .bar::before { content: ''; display: block; width: 1px; height: 100%; background: #fff; position: absolute; top: 0; right: -4px;}


@media screen and (max-width: 600px) {
  #main_img { height: 100vh; max-height: 100vh;}
  #main_logo { padding: 50px 0;}
  #main_logo h1 img { width: 65vw;}
  #main_slider { height: calc(100vh - 35.2vw - 100px);}
  #main_slider > p { bottom: 10px; right: 10px;}

}

/* ---------------------------------------------------
lead_col
------------------------------------------------------ */
#lead_col { padding: calc(16vw + 100px) 0 100px; background: #e2e0d6; position: relative; overflow: hidden;}
#lead_col::before {
  content: ''; display: block; width: 130%; height: 16vw; opacity: 0; transition: opacity 1.5s, transform 1.5s; transform: translateX(80px);
  background: url(../../img/lead_bg.svg)no-repeat center; background-size: contain; left: 10%; position: absolute; top: 60px;
}
#lead_col.show::before { opacity: 1; transform: translate(0);}

#lead_col h2 { line-height: 1.5; text-align: center; font-size: 13px;}
#lead_col h2 span:first-of-type { font-size: 160px; display: inline-block; line-height: 1.1;}
#lead_col h2 .bar { position: relative;}
#lead_col h2 .bar::before { content: ''; display: block; width: 90%; height: 1px; background: #534f48; position: absolute; top: 0; left: 5%;}
#lead_col .concept { text-align: center; margin-top: 85px;}
#lead_col .concept p:first-of-type { font-size: 32px; margin-bottom: 30px;}
#lead_col .concept p:nth-of-type(2) { line-height: 2.4;}
#lead_col .type_list { margin-top: 130px;}
#lead_col .type_list li { width: calc(25% - 15px);}
#lead_col .type_list p:nth-of-type(2)::before { content: none;}
#lead_col .type_list + p { margin-top: 30px; text-align: right;}


@media screen and (max-width: 1200px) {
  #lead_col { padding: 300px 0 200px;}
  #lead_col::before { height: 192px;}
}


@media screen and (hover: hover) {
}

@media screen and (max-width: 600px) {
  #lead_col { padding: calc(31vw + 30px) 0 12vw;}
  #lead_col::before { width: 250vw; height: 31vw; top: 15px; left: 0;}
  #lead_col h2 span:first-of-type { font-size: 15vw;}
  #lead_col .concept { margin-top: 8vw;}
  #lead_col .concept p:first-of-type { font-size: 30px; margin-bottom: 20px; letter-spacing: 6px;}
  #lead_col .concept p:nth-of-type(2) { line-height: 2.1;}
  #lead_col .type_list { margin-top: 12vw;}
  #lead_col .type_list li { width: calc(50% - 5px);}
  #lead_col .type_list + p { margin-top: 10px; text-align: left; line-height: 1.2;}


}

/* ---------------------------------------------------
topics_col
------------------------------------------------------ */
#topics_col { padding: 100px 0 120px; background: #eeece4;}
#topics_col .notxt { flex-grow: 1; padding: 30px 50px; box-sizing: border-box;}

#topics_col .topics_wrap { margin-top: 50px; margin-left: calc(50% - 550px); position: relative; box-sizing: border-box;}
#topics_col .topics_wrap h4 { position: absolute; top: 0; left: 0;}
#topics_col .news_slick .slick-list { padding: 0 calc(50% - 550px) 0 0;}
#topics_col .news_slick .slick-slide { margin-right: 25px;}
#topics_col .slick-prev,
#topics_col .slick-next { width: 41px; height: 41px; top: -30px; background-size: contain; background-repeat: no-repeat;}
#topics_col .slick-prev::before,
#topics_col .slick-next::before { content: none;}
#topics_col .slick-prev { left: auto; right: calc(50% - 475px); background-image: url(../../img/arrow_prev.svg);}
#topics_col .slick-next { right: calc(50% - 525px); background-image: url(../../img/arrow_next.svg);}
#topics_col .topics_wrap .topics a { background: #fff; padding: 20px; box-sizing: border-box; display: flex!important; transition: background-color .5s; position: relative;}
#topics_col .topics_wrap .topics a::before {
  content: ''; display: block; width: 100%; height: 100%; background: #f6f5f0; position: absolute; top: 0; left: 0;
  transform: scaleX(0); transform-origin: right; transition: transform .7s cubic-bezier(.19, 1, .22, 1);
}
#topics_col .topics_wrap .topics .photo { width: 65%; position: relative;}
#topics_col .topics_wrap .topics .photo img { width: 100%;}
#topics_col .topics_wrap .topics .txt { width: 35%; padding: 15px; box-sizing: border-box; display: flex; flex-direction: column; justify-content: center; position: relative;}
#topics_col .topics_wrap .topics dt .cat { display: inline-block; padding: 0 8px; background: #e2e0d6; line-height: 1.6; margin-top: 15px;}
#topics_col .topics_wrap .topics dd { margin-top: 15px;}
#topics_col .topics_wrap .slick-counter { margin-top: 10px; margin-right: calc(50% - 525px); text-align: right;}

@media screen and (hover: hover) {
  #topics_col .topics_wrap .topics a:hover { text-decoration: none;}
  #topics_col .topics_wrap .topics a:hover::before { transform: scaleX(1); transform-origin: left;}
  #topics_col .topics_wrap .topics a img { opacity: 1;}

}

@media screen and (max-width: 600px) {
  #topics_col { padding: 10vw 0 12vw;}
  #topics_col .topics_wrap { margin-top: 20px; margin-left: 4vw;}
  #topics_col .news_slick .slick-list { padding: 0 10% 0 0;}
  #topics_col .news_slick .slick-slide { margin-right: 15px;}
  #topics_col .slick-prev,
  #topics_col .slick-next { width: 35px; height: 35px; top: -30px;}
  #topics_col .slick-prev { right: calc(4vw + 40px);}
  #topics_col .slick-next { right: 4vw;}
  #topics_col .topics_wrap .slick-counter { margin-right: calc(10% + 15px);}
  #topics_col .topics_wrap .topics a { display: block!important; padding: 10px;}
  #topics_col .topics_wrap .topics .photo { width: 100%;}
  #topics_col .topics_wrap .topics .txt { width: 100%;}
  #topics_col .topics_wrap .topics dt .cat { margin-top: 5px;}
}


/* ---------------------------------------------------
main_type
------------------------------------------------------ */
#main_type { background: #e2e0d6;}
#main_type section { position: relative; margin-bottom: 1px;}
#main_type section:last-of-type { margin-bottom: 0;}
#main_type section .type_name { display: flex; flex-direction: column; justify-content: center; align-items: center; text-align: center; position: absolute; top: 0; left: 0; width: 100%; height: 100%; color: #fff; z-index: 1;}
#main_type section .type_slick { font-size: 0;}
#main_type section .type_slick img { width: 100%; max-height: 850px;}
#main_type section .type_slick .slick-prev,
#main_type section .type_slick .slick-next { width: 44px; height: 126px; background-size: contain; background-repeat: no-repeat; z-index: 10;}
#main_type section .type_slick .slick-prev::before,
#main_type section .type_slick .slick-next::before { content: none;}
#main_type section .type_slick .slick-prev { left: 2%; background-image: url(../../img/arrow_prev2.svg);}
#main_type section .type_slick .slick-next { right: 2%; background-image: url(../../img/arrow_next2.svg);}

#main_type section .type_name h3 { margin-bottom: 40px;}
#main_type section .type_name .cmn_linkbtn { margin-top: 35px; width: 250px; padding: 13px 0;}

#type_ubusuna h3 { font-size: 120px; line-height: 1;}

@media screen and (hover: hover) {
}

@media screen and (max-width: 600px) {
  #main_type section .type_name { display: block; position: static; color: #534f48; padding-bottom: 10vw; margin-top: 5vw; }
  #main_type section h3 { position: absolute; top: 150px; left: 50%; transform: translate(-50%,-50%); text-align: center; color: #fff;}
  #main_type section .type_slick .slick-prev,
  #main_type section .type_slick .slick-next { width: 25px; height: 72px;}
  #main_type section .type_slick img { height: 300px;}
  #main_type section .type_name .cmn_linkbtn { margin: 20px auto 0; padding: 12px 0;}


  #type_zero .type_name img { width: 25vw;}
  #type_ubusuna h3 { font-size: 50px;}
  #type_itoshima .type_name img { width: 40vw;}
  #type_thalasso .type_name img { width: 42vw;}
}

/* ---------------------------------------------------
policy_col
------------------------------------------------------ */
#policy_col { padding: 70px 0 90px; background: #534f48; color: #fff;}
#policy_col h3 { font-size: 32px; text-align: center;}
#policy_col h3 + p { margin-top: 30px; text-align: center;}

/* データ型リスト　キャンセル料一覧（簡易版） */
.cmn_list_data_01 dl {
	display: grid; grid-template-rows: auto auto;
	grid-template-columns: repeat(5, 1fr); /* 5の箇所は列数によって変える */
	grid-auto-flow: column; text-align: center;
}
.cmn_list_data_01 dt,
.cmn_list_data_01 dd { padding: 15px; box-sizing: border-box; border-left: 1px solid #a3a09e;}
.cmn_list_data_01 dt:last-of-type,
.cmn_list_data_01 dd:last-of-type { border-right: 1px solid #a3a09e;}
.cmn_list_data_01 dt { background: #6e6760; border-top: 1px solid #a3a09e; color: #fff;}
.cmn_list_data_01 dd { border-bottom: 1px solid #a3a09e; background: #534f48;}

#policy_col .cmn_list_data_01 { margin-top: 30px;}
#policy_col .cmn_list_note_01 { margin-top: 10px;}
#policy_col .cmn_linkbtn { margin: 40px auto 0;}
#policy_col .cmn_linkbtn::before { background: #6e6760;}
@media screen and (hover: hover) {
}


@media screen and (max-width: 600px) {
	.cmn_list_data_01 dl { display: flex; flex-wrap: wrap;}
	.cmn_list_data_01 dt,
	.cmn_list_data_01 dd { width: 50%; padding: 10px 5px; border-left: none; border-top: 1px solid #ccc;}
	.cmn_list_data_01 dt:last-of-type,
	.cmn_list_data_01 dd:last-of-type { border-bottom: 1px solid #ccc; border-right: none;}
	.cmn_list_data_01 dd { border-bottom: none; border-right: none;}

  #policy_col  { padding: 8vw 0 15vw;}
  #policy_col h3 { font-size: 26px;}
  #policy_col h3 + p { margin-top: 10px; text-align: left;}
  #policy_col .cmn_list_data_01 { margin-top: 20px;}
  #policy_col .cmn_linkbtn { margin: 20px auto 0;}
}

/* ---------------------------------------------------
cuisine_col
------------------------------------------------------ */
#cuisine_col { background: #eeece4; padding: 120px 0 150px;}
#cuisine_col h3 + p { text-align: center; margin-top: 50px;}
#cuisine_col .cuisine_slick { margin-top: 60px;}
#cuisine_col .cmn_linkbtn { margin: 50px auto 0;}

.cuisine_slick .slick-prev,
.cuisine_slick .slick-next { width: 43px; height: 126px; transform: translate(-100%, -50%); background-image: url(../../cuisine/img/icon_arrow.svg); background-size: contain; background-repeat: no-repeat; z-index: 10;}
.cuisine_slick .slick-prev::before,
.cuisine_slick .slick-next::before { content: none;}
.cuisine_slick .slick-prev { left: -50px;}
.cuisine_slick .slick-next { right: -50px; transform: translate(100%, -50%) scale(-1, 1);}
.cuisine_slick .slick-prev:hover, .cuisine_slick .slick-prev:focus, .cuisine_slick .slick-next:hover, .cuisine_slick .slick-next:focus { background-image: url(../../img/icon_arrow.svg); opacity: .6;}

@media screen and (max-width: 1295px) {
  .cuisine_slick .slick-prev { left: -4vw; transform: translate(0, -50%);}
  .cuisine_slick .slick-next { right: -4vw; transform: translate(0, -50%) scale(-1, 1);}
}

@media screen and (max-width: 1295px) {
  .cuisine_slick .slick-prev { left: -45px;}
  .cuisine_slick .slick-next { right: -45px;}

}
@media screen and (max-width: 600px) {
  #cuisine_col { padding: 10vw 0 15vw;}
  #cuisine_col h3 + p { margin-top: 20px; text-align: left;}
  #cuisine_col .cuisine_slick { margin-top: 20px;}
  #cuisine_col .cmn_linkbtn { margin: 30px auto 0;}

  .cuisine_slick .slick-prev,
  .cuisine_slick .slick-next { width: 25px; height: 72px; z-index: 1;}
  .cuisine_slick .slick-prev { left: -4vw;}
  .cuisine_slick .slick-next { right: -4vw; z-index: 1;}
  /* .cuisine_slick .slick-prev:hover, .cuisine_slick .slick-prev:focus, .cuisine_slick .slick-next:hover, .cuisine_slick .slick-next:focus { background-image: url(../../img/icon_arrow02.svg);} */

}

/* ---------------------------------------------------
access
------------------------------------------------------ */
#access_col { background: #e2e0d6; padding: 100px 0 130px;}
#access_col h3 + p { text-align: center; margin-top: 50px;}
#access_col .box_wrpa { margin-top: 80px; display: flex; flex-wrap: wrap; justify-content: space-between;}
#access_col .box_wrpa > div { width: 50%;}
#access_col .box_wrpa > div iframe { width: 100%; height: 100%; filter:grayscale(50%);-webkit-filter:grayscale(50%)}
#access_col .box_wrpa > div img { width: 100%;}
#access_col .address { display: flex; justify-content: space-between; padding: 70px 0 0;}
@media screen and (hover: hover) {
}

@media screen and (max-width: 600px) {
  #access_col { padding: 8vw 0 15vw;}
  #access_col h3 + p { margin-top: 20px; text-align: left;}
  #access_col .box_wrpa { margin-top: 30px;}
  #access_col .box_wrpa > div { width: 100%;}
  #access_col .box_wrpa > div:first-of-type { height: 80vw;}
  #access_col .address { display: block; padding: 8vw 0 0; text-align: center;}
  #access_col .address .cmn_linkbtn { margin: 20px auto 0;}
}


/* ---------------------------------------------------
sightseeing_col
------------------------------------------------------ */
#sightseeing_col { background: #eeece4; padding: 120px 0 150px;}
#sightseeing_col h3 + p { text-align: center; margin-top: 50px;}
#sightseeing_col .list_wrap { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 75px;}
#sightseeing_col .list_wrap > div { width: calc(25% - 18px);}
#sightseeing_col .list_wrap .photo img { width: 100%;}

[class*="layout_"] .txt { margin-top: 15px;}
.spot > div:first-of-type { margin-bottom: 10px;}
.layout_md_05 .tit { font-size: 18px; text-align: center; padding: 0 0 10px; border-bottom: 1px solid #534f48;}
.layout_md_05 .time { margin-top: 15px; margin-bottom: 15px;}
.layout_md_05 .photo { margin-bottom: 20px;}
.layout_md_05 .txt small { font-size: 13px;}
/* 全体共通
========================================================== */
[class*="layout_"] + [class*="layout_"] { margin-top: 100px;}
[class*="layout_"] .ofi { width: 100%; height: 100%;}
[class*="layout_"] .time span { display: inline-flex; align-items: center; color: #777; font-size: 14px; vertical-align: bottom;}
[class*="layout_"] .time span::before { content: ''; width: 26px; height: 26px; margin: 0 5px 0 0; background: no-repeat center center;}
.btn_col { display: flex; margin: 25px 0 0; font-size: 14px;}
.btn_col a { display: flex; align-items: center; justify-content: center; min-height: 100%; box-sizing: border-box; transition: opacity 0.5s;}
.btn_col a:hover { opacity: 0.7; text-decoration: none;}

/* 車 */
[class*="layout_"] .time.icon_car span::before { background-image: url(../../img/ico_car_01.svg);}
/* 徒歩 */
[class*="layout_"] .time.icon_foot span::before { background-image: url(../../img/ico_foot_01.svg);}

/* 中項目
========================================================== */
[class*="layout_md"] { display: flex; justify-content: space-between;}

/* ▼ 中項目type5 ここから --------------------------------- */
.layout_md_05 { flex-wrap: wrap;}
.layout_md_05 .spot { margin: 0 0 70px;}
.layout_md_05 .time { text-align: center;}
/* ▲ 中項目type5 ここまで --------------------------------- */

/* ▼ アイコンあり ここから ---------------------------------- */
.btn_col a::before { content: ''; width: 19px; height: 19px; margin: 0 5px 0 0; background: no-repeat center center;}

/* ▼ 右寄せ：基本レイアウト ここから ------------------------- */
.btn_col { justify-content: flex-end;}
.btn_col a { font-size: 14px;}
/* ▲ 右寄せ：基本レイアウト ここまで ------------------------- */
/* ▼ 右寄せ：type3 左側に横線 ここから */
.btn_col li + li { margin: 0 0 0 20px;}
.btn_col a::before { content: ''; width: 10px; height: 1px; margin: 0 10px 0 0; background: #c8c8c8;}
/* ▲ 右寄せ：type3 左側に横線 ここまで */
/* ▼ 装飾type1 ここから ----------------------------------- */
.decorate_01 [class*="layout_md"] .time { margin: 0 0 15px;}
/* ▲ 装飾type1 ここまで ----------------------------------- */

#sightseeing_col .other_list { margin-top: 90px; border: 5px solid #e3e0d4; padding: 30px 40px 50px; box-sizing: border-box; }
#sightseeing_col .other_list > div { display: flex; flex-wrap: wrap; justify-content: space-between;}
#sightseeing_col .other_list h4 { font-size: 34px; text-align: center; margin-bottom: 30px;}
#sightseeing_col .other_list > div > dl { width: 32%; background: #f7f6f0; padding: 20px 30px 40px; box-sizing: border-box;}
#sightseeing_col .other_list dt { font-size: 20px; text-align: center; border-bottom: 1px solid #969187; padding-bottom: 10px;}
#sightseeing_col .other_list dd div { margin-top: 15px;}
#sightseeing_col .other_list dd div p { font-weight: bold; text-indent: -1em; padding-left: 1em; line-height: 1.5; margin-bottom: 5px;}
#sightseeing_col .other_list dd div p::before { content: '●';}
#sightseeing_col .other_list dd .btn_col { justify-content: flex-start; margin-top: 0; margin-left: 18px;}
#sightseeing_col .other_list .cmn_linkbtn { margin: 35px auto 0;}

@media screen and (hover: hover) {
}

@media screen and (max-width: 600px) {
  .spot > div:first-of-type { display: flex; align-items: center; position: relative;}
  .spot > div:first-of-type::before {
    content: ''; display: block; position: absolute; right: 15px; background-repeat: no-repeat; background-size: contain;
    background-image: url(../../img/arrow_5.svg); width: 8px; height: 14px; top: calc(50% - 7px); transform: rotate(90deg); transition: transform .5s;
  }
  .spot > div:first-of-type.active::before { transform: rotate(270deg);}
  .layout_md_05 .tit { border-bottom: none; text-align: left; padding: 0; font-size: 16px;}
  .layout_md_05 .photo { width: 35%; margin-bottom: 0;}
  .layout_md_05 .tit_wrap { width: 65%; box-sizing: border-box; padding: 10px 30px 10px 10px;}
  .layout_md_05 .time { text-align: left; margin-top: 0; margin-bottom: 0;}
  [class*="layout_"] .txt { margin-top: 0;}
  [class*="layout_"] + [class*="layout_"] { margin-top: 50px;}
  [class*="layout_"] .btn_col { margin-top: 10px;}
  .layout_md_05 { margin-bottom: 0;}
  .layout_md_05 .spot { margin-bottom: 0; padding: 15px 0; border-bottom: 1px solid #534f48;}
  .decorate_01 [class*="layout_md"] .time { margin-bottom: 10px;}

  #sightseeing_col { padding: 10vw 0 15vw;}
  #sightseeing_col h3 + p { margin-top: 20px; text-align: left;}
  #sightseeing_col .list_wrap { display: block; margin-top: 30px;}
  #sightseeing_col .list_wrap > div { width: 100%;}

  #sightseeing_col .other_list { padding: 20px 15px; margin-top: 8vw;}
  #sightseeing_col .other_list h4 { font-size: 24px; margin-bottom: 15px;}
  #sightseeing_col .other_list > div > dl { width: 100%; padding: 0 15px;}
  #sightseeing_col .other_list > div > dl:not(:first-of-type) { margin-top: 15px;}
  #sightseeing_col .other_list dt { border-bottom: none; font-size: 16px; padding: 10px 20px 10px 0; position: relative;}
  #sightseeing_col .other_list dt::before {
    content: ''; display: block; position: absolute; right: 0; background-repeat: no-repeat; background-size: contain;
    background-image: url(../../img/arrow_5.svg); width: 8px; height: 14px; top: calc(50% - 7px); transform: rotate(90deg); transition: transform .5s;
  }
  #sightseeing_col .other_list dt.active::before { transform: rotate(270deg);}
  #sightseeing_col .other_list dd { padding-bottom: 20px;}
  #sightseeing_col .other_list dd div:first-of-type { margin-top: 0;}
  #sightseeing_col .other_list .cmn_linkbtn { margin: 20px auto 0;}


}

/* ---------------------------------------------------
faq_col
------------------------------------------------------ */
#faq_col { padding: 120px 0 130px; background: #e2e0d6;}
#faq_col .faq_list { margin-top: 45px;}

.faq_list { margin: 80px 0 0;}
.faq_list [class*="layout"] { margin: 0 0 25px; line-height: 1.6;}
.faq_list [class*="layout"] > dt {  padding: 30px 50px 30px 80px; position: relative;}
.faq_list [class*="layout"] > dd { position: relative;}
.faq_list [class*="layout"] > dd a { text-decoration: underline;}
.faq_list [class*="layout"] > dt:before,
.faq_list [class*="layout"] > dd:before { display: flex; align-items: center; justify-content: center; width: 32px; height: 32px; color: #fff; font-size: 18px; position: absolute; top: 20px; left: 30px;}
.faq_list [class*="layout"] > dt::before { content: 'Q'; background: #525252;}
.faq_list [class*="layout"] > dd::before { content: 'A'; background: #aaa;}
.faq_list [class*="faqicon"] > dt.acc_tit::after { content: ''; display: block; position: absolute; right: 30px; background-repeat: no-repeat; background-size: contain;}
.lead_txt { text-align: center; line-height: 2; margin: 30px 0 60px;}
.lead_txt > a { display: block; width: 320px; margin: 20px auto 0; padding: 12px 0; color: #fff; background: #525252; transition: opacity .5s;}
.lead_txt > a:hover { text-decoration: none; opacity: 0.8;}
/* ▼ faq基本レイアウトtype1 ここから --------------*/
.faq_list [class*="layout1"] { margin-bottom: 30px; background: #fff;}
.faq_list [class*="layout1"] > dd { padding: 0 40px 30px 80px;}
.faq_list [class*="layout1"] > dd span { color: #a30a0a;}
.faq_list [class*="layout1"] > dd:before { top: 15px;}
/* ▼ Q&Aのスタイルtype3 ここから --------------*/
.faq_list [class*="_dot"] > dt:before,
.faq_list [class*="_dot"] > dd:before { color: #525252; left: 36px; font-size: 24px;}
.faq_list [class*="_dot"] > dt::before { content: 'Q.'; background: none; top: 23px;}
.faq_list [class*="_dot"] > dd::before { content: 'A.'; background: none; top: -5px;}
/* ▲ Q&Aのスタイルtype3 ここまで --------------*/
/* ▼ 開閉アイコンtype1 ここから --------------*/
.faq_list .faqicon_1 > dt.acc_tit::after { background-image: url(../../img/arrow_5.svg); width: 10px; height: 16px; transform: rotate(90deg); top: calc(50% - 9px); transition: transform .5s;}
.faq_list .faqicon_1 > dt.acc_tit.active::after { transform: rotate(270deg);}
/* ▲ 開閉アイコンtype1 ここまで --------------*/

@media screen and (hover: hover) {
  .faq_list [class*="layout"] > dd a:hover { text-decoration: none;}
}

@media screen and (max-width: 600px) {
  .faq_list { margin: 8vw 0 0;}
  .faq_list [class*="layout"] { margin: 0 0 15px;}
  .faq_list [class*="layout"] > dt:before,
  .faq_list [class*="layout"] > dd:before { width: 24px; height: 24px; font-size: 16px; position: absolute; top: 11px; left: 5px;}
  .faq_list [class*="layout"] > dt { padding: 10px 25px 10px 40px; font-size: 16px;}
  .faq_list [class*="faqicon"] > dt.acc_tit::after { right: 10px;}
  .lead_txt { margin: 30px 0 8vw; text-align: left;}
  .lead_txt > a { width: 250px; padding: 8px 0; text-align: center;}
  .faq_list [class*="layout1"] > dd { padding: 10px 10px 10px 40px;}
  .faq_list [class*="_dot"] > dt:before,
  .faq_list [class*="_dot"] > dd:before { top: 10px; left: 8px; font-size: 18px;}
  .faq_list .faqicon_1 > dt.acc_tit::after { width: 8px; height: 14px; top: calc(50% - 7px);}

  #faq_col { padding: 10vw 0;}
  #faq_col .faq_list { margin-top: 20px;}

}

/* ---------------------------------------------------
news_col
------------------------------------------------------ */
#news_col { padding: 120px 0 200px; background: #eeece4;}
#news_col .notxt { flex-grow: 1; padding: 30px 50px; box-sizing: border-box;}

#news_col .news_slick .slick-list { padding: 0 calc(50% - 550px) 0 0;}
#news_col .news_slick .slick-slide { margin-right: 25px;}
#news_col .slick-prev,
#news_col .slick-next { width: 41px; height: 41px; top: -30px; background-size: contain; background-repeat: no-repeat;}
#news_col .slick-prev::before,
#news_col .slick-next::before { content: none;}
#news_col .slick-prev { left: auto; right: calc(50% - 475px); background-image: url(../../img/arrow_prev.svg);}
#news_col .slick-next { right: calc(50% - 525px); background-image: url(../../img/arrow_next.svg);}
#news_col .topics_wrap .topics a { background: #fff; padding: 20px; box-sizing: border-box; display: flex!important; transition: background-color .5s; position: relative;}
#news_col .topics_wrap .topics a::before {
  content: ''; display: block; width: 100%; height: 100%; background: #f6f5f0; position: absolute; top: 0; left: 0;
  transform: scaleX(0); transform-origin: right; transition: transform .7s cubic-bezier(.19, 1, .22, 1);
}
#news_col .news_wrap { margin-top: 30px;}
#news_col .news_wrap h4 { margin-top: 15px;}
#news_col .news_wrap > div > a { display: block; padding: 30px 25px; border-bottom: 1px solid #bfbba9; position: relative;}
#news_col .news_wrap > div > a::before {
  content: ''; display: block; width: 100%; height: 100%; background: #f6f5f0; position: absolute; top: 0; left: 0;
  transform: scaleX(0); transform-origin: right; transition: transform 1s cubic-bezier(.19, 1, .22, 1);
}
/* #news_col .news_wrap > div > a:first-of-type { padding: 10px 25px 30px;} */
#news_col .news_wrap > div > a .date { margin-right: 55px;}
#news_col .news_wrap > div > a > span { position: relative;}
#news_col .news_wrap > p { width: 100%; text-align: right; margin-top: 35px;}
#news_col .news_wrap > p a { display: inline-block; position: relative;}
#news_col .news_wrap > p a::before { content: ''; display: block; width: 100%; height: 1px; background: #bfbba9; transform: scaleX(0); position: absolute; bottom: 0; left: 0; transition: transform .5s; transform-origin: right;}

#news_col .bnr_wrap { margin-top: 80px; text-align: center;}

@media screen and (hover: hover) {
  #news_col .news_wrap > div > a:hover { text-decoration: none;}
  #news_col .news_wrap > div > a:hover::before { transform: scaleX(1); transform-origin: left;}
  #news_col .news_wrap > p a:hover { text-decoration: none;}
  #news_col .news_wrap > p a:hover::before { transform: scaleX(1); transform-origin: left;}
}

@media screen and (max-width: 600px) {
  #news_col { padding: 10vw 0 15vw;}

  #news_col .news_wrap { margin-top: 20px; display: block;}
  #news_col .news_wrap > div { width: 100%;}
  #news_col .news_wrap > div > a { padding: 12px 15px;}
  #news_col .news_wrap > div > a .date { margin-right: 15px;}
  #news_col .news_wrap > div > a > span { display: block;}
  #news_col .news_wrap > p { margin-top: 15px;}
  #news_col .bnr_wrap { margin-top: 30px;}
}




/* ---------------------------------------------------

------------------------------------------------------ */

@media screen and (hover: hover) {
}

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