@charset "UTF-8";
/* 下層共通 */
.imgShow { clip-path: inset(0 100% 0 0); transition: clip-path 2s cubic-bezier(0.19, 1, 0.22, 1); transition-delay: 0s; }

.imgShow.open { clip-path: inset(0 0 0 0); }

.blurShow { opacity: 0; -webkit-transform: translateY(10px); transform: translateY(10px); -webkit-filter: blur(5px); filter: blur(5px); -webkit-transition: 0.8s cubic-bezier(0.55, 0.06, 0.68, 0.19) 0.3s; transition: 0.8s cubic-bezier(0.55, 0.06, 0.68, 0.19) 0.3s; }

.blurShow.show { -webkit-transform: translateY(0); transform: translateY(0); opacity: 1; -webkit-filter: blur(0); filter: blur(0); }

#page_mainvisual { width: 100%; height: 430px; position: relative; background-position: center center; background-repeat: no-repeat; background-size: cover; }
@media screen and (max-width: 550px) { #page_mainvisual { height: 180px; } }
#page_mainvisual h2 { position: absolute; bottom: 40px; left: 0; right: 0; text-align: center; color: #fff; font-family: "Marcellus", serif; font-size: 55px; line-height: 1; font-weight: 400; letter-spacing: 1px; }
@media screen and (max-width: 550px) { #page_mainvisual h2 { font-size: 40px; bottom: 20px; } }
#page_mainvisual h2 small { font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "Noto Sans JP", "Helvetica Neue", "Hiragino Kaku Gothic ProN", sans-serif; display: block; font-size: 20px; }
@media screen and (max-width: 550px) { #page_mainvisual h2 small { font-size: 16px; } }
#page_mainvisual:before { content: ""; position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: rgba(0, 0, 0, 0.3); }

.main img { vertical-align: bottom; }

.main sup { font-size: 70%; vertical-align: top; }

.main picture { position: relative; display: block; }

.main .inner { max-width: 1440px; padding: 0 40px; }

@media screen and (max-width: 550px) { .main .inner { padding: 0 20px; } }
figure { position: relative; }

.anno { font-size: 11px; padding-top: 5px; text-align: right; }

figcaption, .capImg, .cap { background: rgba(120, 120, 120, 0.7); font-size: 11px; color: #fff; position: absolute; bottom: 0; right: 0; padding: 0 5px; z-index: 2; }

.flex { display: flex; flex-wrap: wrap; }

.bg_texture { background-image: url("../../img/bg_texture.jpg"); background-position: center top; background-size: cover; }

.js-modal { pointer-events: none; }

.swipeIcon { display: none; }

@media screen and (max-width: 850px) { .js-modal { pointer-events: auto; position: relative; }
  .js-modal:before { content: ""; width: 20px; height: 20px; display: block; background: url("../../img/icon_plus.png") no-repeat center center; background-size: cover; position: absolute; top: 0; right: 0; z-index: 2; }
  .mfp-bg, .mfp-wrap { z-index: 10000; }
  .mfp-close-btn-in .mfp-close { transform: translateY(-100%); color: #fff; }
  .mfp-custom .mfp-content .slideBox { padding: 10px; background: #fff; }
  .slideBox { position: relative; overflow-x: auto; padding-bottom: 15px; }
  .slideimg { max-width: 160vw !important; width: auto !important; }
  .swipeIcon { display: block; position: absolute; top: 50%; left: 150px; z-index: 10; width: 100px; animation: horizontal 1s ease-in-out infinite alternate; }
  .swipeIcon img { max-width: 150px; } }
@keyframes horizontal { 0% { transform: translate(-30%, -50%); }
  100% { transform: translate(-70%, -50%); } }
/* plan_list */
#plan_list .planList_inner { margin-left: -30px; margin-right: -30px; }
@media screen and (max-width: 1170px) { #plan_list .planList_inner { margin-left: -20px; margin-right: -20px; } }
@media screen and (max-width: 1000px) { #plan_list .planList_inner { margin-left: -10px; margin-right: -10px; } }
@media screen and (max-width: 550px) { #plan_list .planList_inner { margin-left: 0; margin-right: 0; } }
#plan_list .planList_inner .planList_box { width: calc(100% / 3); padding: 0 20px; margin-bottom: 40px; }
@media screen and (max-width: 1170px) { #plan_list .planList_inner .planList_box { padding: 0 20px; } }
@media screen and (max-width: 1000px) { #plan_list .planList_inner .planList_box { padding: 0 10px; } }
@media screen and (max-width: 850px) { #plan_list .planList_inner .planList_box { width: calc(100% / 2); } }
@media screen and (max-width: 550px) { #plan_list .planList_inner .planList_box { width: 100%; padding: 0; margin-bottom: 35px; } }
#plan_list .planList_box a { height: 100%; box-sizing: border-box; transition: 0.3s ease; display: block; border-radius: 8px; box-shadow: 0 3px 6px rgba(0, 0, 0, 0.35); color: #318086; padding: 40px 30px 10px 30px; position: relative; }
#plan_list .type_A a:before, #plan_list .type_J a:before, #plan_list .type_Ig a:before, #plan_list .type_H a:before { content: "NEW"; position: absolute; top: 10px; right: 10px; background: #ff2f2f; color: #fff; font-size: 12px; line-height: 1; padding: 5px; border-radius: 3px; }
#plan_list .planList_spec { display: flex; flex-wrap: wrap; align-items: center; margin-bottom: 15px; }
#plan_list .planList_spec_type { width: 50px; font-size: 16px; line-height: 1; text-align: center; padding-right: 20px; }
@media screen and (max-width: 850px) { #plan_list .planList_spec_type { padding-right: 10px; } }
#plan_list .planList_spec_type b { display: block; font-size: 47px; font-weight: 500; line-height: 1; }
#plan_list .planList_spec_type b span { font-size: 85%; }
@media screen and (max-width: 550px) { #plan_list .planList_spec_type b { font-size: 40px; } }
#plan_list .planList_spec_area { width: calc(100% - 50px); border-left: 1px solid #bdbdbd; padding-left: 20px; }
@media screen and (max-width: 850px) { #plan_list .planList_spec_area { padding-left: 10px; } }
#plan_list .planList_spec_area p:nth-child(1) { font-size: 20px; line-height: 1; }
#plan_list .planList_spec_area p:nth-child(1) b { font-size: 33px; font-weight: 400; line-height: 1; }
#plan_list .planList_spec_area p:nth-child(2) { font-size: 14px; line-height: 1; }
#plan_list .planList_spec_area p:nth-child(2) b { font-size: 37px; font-weight: 400; line-height: 1; }
#plan_list .planList_spec_area p:nth-child(2) small { font-size: 22px; }
#plan_list .planList_point { display: flex; flex-wrap: wrap; margin: 0 -5px 15px; }
#plan_list .planList_point li { width: calc(50% - 10px); margin: 0 5px 5px; font-size: 11px; border-radius: 5px; text-align: center; color: #fff; background: linear-gradient(135deg, #2ac4ce 0%, #1da4ad 20%, #30989f 30%, #208188 60%, #2a747b 70%, #14585d 90%, #114c50 100%); padding: 2px; }
#plan_list .view_more { text-align: center; font-size: 13px; font-weight: 500; }
#plan_list .view_more::after { content: "→"; }
#plan_list .planList_box a:hover { box-shadow: none; color: #fff; background: linear-gradient(135deg, #2ac4ce 0%, #1da4ad 20%, #30989f 30%, #208188 60%, #2a747b 70%, #14585d 90%, #114c50 100%); }
#plan_list .planList_box a:hover .planList_point li { background: #fff; color: #318086; }

/* page_mainvisual */
#page_mainvisual { height: 600px; }
#page_mainvisual h2 { bottom: 50%; transform: translateY(50%); font-size: 35px; letter-spacing: 5px; line-height: 2; }
#page_mainvisual h2 small { display: block; font-size: 50%; }

/* zeh_aboutArea */
#zeh_aboutArea { background-image: url(../../img/page/zeh/back_01.jpg); background-position: center top; background-repeat: repeat-y; background-size: 100%; }
#zeh_aboutArea .zeh_lead { text-align: center; padding: 120px 0; }
#zeh_aboutArea .zeh_lead h3 { font-size: 30px; font-weight: 500; letter-spacing: 4px; margin-bottom: 30px; }
#zeh_aboutArea .zeh_lead p { font-weight: 500; letter-spacing: 2px; }
#zeh_aboutArea .zeh_lead p small { font-size: 80%; }
#zeh_aboutArea .zeh_lead picture { margin: 80px 0 0; }
@media screen and (max-width: 550px) { #zeh_aboutArea .zeh_lead { padding: 60px 0; }
  #zeh_aboutArea .zeh_lead h3 { font-size: 20px; letter-spacing: 0; }
  #zeh_aboutArea .zeh_lead picture { margin: 40px 0 0; } }
#zeh_aboutArea .zeh_oriented { background: rgba(255, 255, 255, 0.5); }
#zeh_aboutArea .zeh_orientedWrap { align-items: center; }
#zeh_aboutArea .zeh_orientedText { width: 50%; padding-right: 40px; }
#zeh_aboutArea .zeh_orientedText h4 { font-size: 25px; letter-spacing: 2px; font-weight: 500; margin: 20px 0; }
#zeh_aboutArea .zeh_orientedText p { letter-spacing: 2px; margin-bottom: 40px; }
#zeh_aboutArea .zeh_orientedText p small { letter-spacing: 0; font-size: 80%; display: block; }
#zeh_aboutArea .zeh_orientedImg { width: 50%; }
#zeh_aboutArea .zeh_orientedImg picture { width: calc(100% + (50vw - 690px)); }
@media screen and (max-width: 1520px) { #zeh_aboutArea .zeh_orientedImg picture { width: calc(100% + 40px); } }
@media screen and (max-width: 1200px) { #zeh_aboutArea .zeh_orientedText .oriented_logo { width: 70%; }
  #zeh_aboutArea .zeh_orientedText h4 { font-size: 20px; letter-spacing: 0; margin: 20px 0; }
  #zeh_aboutArea .zeh_orientedText p { letter-spacing: 0; margin-bottom: 20px; } }
@media screen and (max-width: 850px) { #zeh_aboutArea .zeh_orientedText { padding: 20px 40px 20px 0; }
  #zeh_aboutArea .zeh_orientedImg picture { width: 100%; } }
@media screen and (max-width: 550px) { #zeh_aboutArea .zeh_orientedWrap { flex-direction: column-reverse; }
  #zeh_aboutArea .zeh_orientedText .oriented_logo { margin: 0 auto; }
  #zeh_aboutArea .zeh_orientedText { width: 100%; padding-right: 0; text-align: center; }
  #zeh_aboutArea .zeh_orientedText h4 { font-size: 16px; }
  #zeh_aboutArea .zeh_orientedImg { width: 100%; }
  #zeh_aboutArea .zeh_orientedImg picture { width: calc(100% + 40px); margin-left: -20px; margin-right: -20px; } }
#zeh_aboutArea .zeh_meritBtn { padding: 120px 0 170px; }
#zeh_aboutArea .zeh_meritBtn .inner { max-width: 1300px; }
#zeh_aboutArea .zeh_meritBtn_box { width: calc(100% / 3); padding: 0 30px; }
#zeh_aboutArea .zeh_meritBtn_box a { display: block; width: 100%; aspect-ratio: 1 / 1; text-align: center; background: url(../../img/page/zeh/back_02.png) no-repeat center center; background-size: contain; padding: 10px 10px 40px; box-sizing: border-box; position: relative; }
#zeh_aboutArea .zeh_meritBtn_box a::after { content: ""; display: block; width: 0; border-top: 10px solid #69a985; border-left: 10px solid transparent; border-right: 10px solid transparent; position: absolute; bottom: 25px; left: 0; right: 0; margin: auto; }
#zeh_aboutArea .zeh_meritBtn_box a:hover { transform: scale(0.97); }
#zeh_aboutArea .zeh_meritBtn_box a .number { color: #69a985; font-size: 24px; letter-spacing: 4px; margin: 20px 0 0; }
#zeh_aboutArea .zeh_meritBtn_box a .btn_text { font-size: 25px; font-weight: 500; line-height: 1.6; }
#zeh_aboutArea .zeh_meritBtn_box:nth-child(1) a .btn_text { font-size: 20px; }
#zeh_aboutArea .zeh_meritBtn_box a .btn_text small { font-size: 70%; }
#zeh_aboutArea .zeh_meritBtn_big { margin-top: 20px; }
#zeh_aboutArea .zeh_meritBtn_big p { font-size: 30px; line-height: 1.6; }
#zeh_aboutArea .zeh_meritBtn_big p span { color: #df610f; }
#zeh_aboutArea .zeh_meritBtn_big p span b { font-size: 160%; font-weight: 500; line-height: 1.2; }
#zeh_aboutArea .zeh_meritBtn_big .green_box { letter-spacing: 2px; background: #69a985; color: #fff; padding: 5px 30px; }
@media screen and (max-width: 1240px) { #zeh_aboutArea .zeh_meritBtn_box { padding: 0 15px; }
  #zeh_aboutArea .zeh_meritBtn_box a .number { margin: 10px 0 0; }
  #zeh_aboutArea .zeh_meritBtn_box a .btn_text { font-size: 22px; }
  #zeh_aboutArea .zeh_meritBtn_box:nth-child(1) a .btn_text { font-size: 16px; }
  #zeh_aboutArea .zeh_meritBtn_big p { font-size: 25px; } }
@media screen and (max-width: 980px) { #zeh_aboutArea .zeh_meritBtn_box { padding: 0 5px; }
  #zeh_aboutArea .zeh_meritBtn_box a .btn_text { font-size: 20px; }
  #zeh_aboutArea .zeh_meritBtn_box:nth-child(1) a .btn_text { font-size: 15px; }
  #zeh_aboutArea .zeh_meritBtn_big p { font-size: 22px; } }
@media screen and (max-width: 850px) { #zeh_aboutArea .zeh_meritBtn .inner { padding: 0 10px; } }
@media screen and (max-width: 550px) { #zeh_aboutArea .zeh_meritBtn { padding: 60px 0 60px; }
  #zeh_aboutArea .zeh_meritBtn .flex { flex-direction: column; }
  #zeh_aboutArea .zeh_meritBtn_box { width: 300px; margin: 0 auto 20px; } }

/* 共通 */
.green { color: #69a985; }

.orange { color: #df610f; }

.merit_number { width: 170px; aspect-ratio: 1 / 1; margin: 0 auto; position: relative; top: -85px; margin-bottom: -85px; color: #fff; display: flex; flex-direction: column; justify-content: center; align-items: center; background: url(../../img/page/zeh/back_03.png) no-repeat center center; background-size: contain; }
.merit_number span { font-size: 20px; letter-spacing: 3px; line-height: 1.2; }
.merit_number b { font-size: 90px; font-weight: 400; line-height: 1; display: block; }

.merit_lead { margin: 50px 0; }

.merit_lead p { text-align: center; font-size: 26px; font-weight: 500; letter-spacing: 2px; }

.merit_content .merit_title { font-size: 24px; font-weight: 500; letter-spacing: 4px; text-align: center; background: #69a985; color: #fff; padding: 5px; }
.merit_content .merit_title_text { font-size: 22px; font-weight: 500; letter-spacing: 2px; text-align: center; margin: 50px 0; }

@media screen and (max-width: 550px) { .merit_number { width: 90px; margin-bottom: -45px; top: -45px; flex-direction: row; }
  .merit_number span { font-size: 18px; letter-spacing: 0; }
  .merit_number b { font-size: 45px; }
  .merit_lead { margin: 30px 0; }
  .merit_lead p { font-size: 20px; letter-spacing: 0; }
  .merit_content .merit_title { font-size: 20px; letter-spacing: 2px; }
  .merit_content .merit_title_text { font-size: 14px; margin: 30px 0; }
  .merit_content .merit_title_text b { font-size: 18px; } }
/* merit01 */
#merit01 { padding: 0 0 170px; }
#merit01 .merit01_area { text-align: center; border: 1px solid #69a985; margin: 0 100px; padding: 60px 15px; }
#merit01 .merit01_area p { font-size: 24px; margin-bottom: 40px; }
@media screen and (max-width: 850px) { #merit01 .merit01_area { margin: 0 40px; }
  #merit01 .merit01_area p { font-size: 20px; } }
@media screen and (max-width: 550px) { #merit01 { padding: 0 0 90px; }
  #merit01 .merit01_area { margin: 0; padding: 40px 15px; }
  #merit01 .merit01_area p { font-size: 16px; } }

/* merit02 */
#merit02 { background: #fffef2; padding: 0 0 170px; }
@media screen and (max-width: 550px) { #merit02 { padding: 0 0 70px; } }
#merit02 h4 { text-align: center; margin: 0 150px; color: #69a985; border: 2px solid #69a985; font-size: 18px; font-weight: 500; padding: 5px; margin-bottom: 20px; }
#merit02 .green_title { color: #69a985; font-size: 18px; font-weight: 500; margin-bottom: 10px; }
#merit02 .merit02_inner { background: #fff; margin: 0 100px; padding: 60px; }
@media screen and (max-width: 1200px) { #merit02 .merit02_inner { margin: 0 40px; padding: 40px 20px; } }
@media screen and (max-width: 850px) { #merit02 h4 { margin: 0 0 20px; }
  #merit02 .merit02_inner { margin: 0; padding: 40px 20px; }
  #merit02 .green_title { font-size: 15px; }
  #merit02 .slideBox .swipeIcon { display: none; } }
@media screen and (max-width: 550px) { #merit02 .slideBox .swipeIcon { display: block; }
  #merit02 .slideBox figure { width: 160vw; } }
#merit02 .merit02_con01 { margin-bottom: 40px; }
#merit02 .merit02_con01 ul { max-width: 600px; margin: 0 auto 10px; }
#merit02 .merit02_con01 ul li { width: calc((100% / 2) - 30px); margin: 0 15px; padding: 10px; text-align: center; color: #fff; }
@media screen and (max-width: 550px) { #merit02 .merit02_con01 ul li { width: 100%; margin: 5px 0; } }
#merit02 .merit02_flex { justify-content: space-between; margin-bottom: 50px; }
#merit02 .merit02_flexBox { text-align: center; margin: 20px 0 0; }
#merit02 .merit02_flexBox img + .green_title { margin-top: 30px; }
@media screen and (max-width: 550px) { #merit02 .merit02_flexBox { width: 100%; margin-bottom: 20px; } }
#merit02 .merit02_expenses .anno { text-align: left; font-size: 12px; line-height: 1.2; }
#merit02 .expenses_flex { justify-content: space-between; margin-bottom: 10px; }
#merit02 .expenses_flexBox { text-align: center; display: flex; flex-direction: column; justify-content: center; align-items: center; padding: 15px 0; }
#merit02 .expenses_flexBox p { font-size: 14px; line-height: 1.5; }
#merit02 .expenses_flexBox p b { font-size: 210%; font-weight: 400; }
#merit02 .expenses_flexBox:nth-child(1) { width: 25%; background: #e5f4ed; }
#merit02 .expenses_flexBox:nth-child(2) { width: 25%; background: #6aa987; color: #fff; }
#merit02 .expenses_flexBox:nth-child(3) { width: 48%; border: 1px solid #6aa987; }
#merit02 .expenses_flexBox:nth-child(3) p { font-size: 25px; }
#merit02 .expenses_flexBox:nth-child(3) p b { font-size: 160%; }
@media screen and (max-width: 850px) { #merit02 .expenses_flexBox p b { font-size: 180%; }
  #merit02 .expenses_flexBox:nth-child(3) p { font-size: 22px; }
  #merit02 .expenses_flexBox:nth-child(3) p b { font-size: 140%; } }
@media screen and (max-width: 550px) { #merit02 .expenses_flexBox p b { font-size: 160%; }
  #merit02 .expenses_flexBox:nth-child(1) { width: 48%; }
  #merit02 .expenses_flexBox:nth-child(2) { width: 48%; }
  #merit02 .expenses_flexBox:nth-child(3) { width: 100%; margin-top: 10px; }
  #merit02 .expenses_flexBox:nth-child(3) p { font-size: 20px; }
  #merit02 .expenses_flexBox:nth-child(3) p b { font-size: 140%; } }

/* merit03 */
#merit03 { background: url(../../img/page/zeh/back_01.jpg) repeat-y center top; background-size: 100%; padding: 0 0 120px; }
@media screen and (max-width: 550px) { #merit03 { padding: 0 0 60px; } }
#merit03 .merit03_area { background: #fff; padding: 60px 100px; }
@media screen and (max-width: 850px) { #merit03 .merit03_area { padding: 40px 20px; }
  #merit03 .slideBox .swipeIcon { display: none; } }
@media screen and (max-width: 550px) { #merit03 .slideBox .swipeIcon { display: block; }
  #merit03 .slideBox figure { width: 160vw; } }
#merit03 .merit03_con01 { justify-content: space-between; margin-bottom: 40px; }
#merit03 .con01_flexBox { width: 45%; }
#merit03 .green_bk_title { background: #e5f4ed; text-align: center; padding: 20px 0; font-weight: 700; }
#merit03 .green_bk_title + p { margin: 20px 0; }
#merit03 .con01_imgBox:after { content: ""; border-top: 20px solid #7ca8c6; display: block; width: 0; border-left: 20px solid transparent; border-right: 20px solid transparent; margin: 20px auto 0; text-align: center; }
#merit03 .con01_imgBox + .con01_imgBox { margin-top: 20px; }
#merit03 .con01_imgBox + .con01_imgBox:after { display: none; }
#merit03 .con01_imgBox p { text-align: center; padding: 5px; }
@media screen and (max-width: 850px) { #merit03 .con01_flexBox { width: 48%; } }
@media screen and (max-width: 550px) { #merit03 .merit03_con01 { margin-bottom: 0; }
  #merit03 .con01_flexBox { width: 100%; margin-bottom: 30px; } }
#merit03 .merit03_con02 { text-align: center; border-bottom: 1px solid #69a985; padding: 0 0 50px; }
#merit03 .merit03_con02 figcaption { position: static; background: none; color: #000; text-align: right; }
@media screen and (max-width: 550px) { #merit03 .merit03_con02 { padding: 0 0 30px; } }
#merit03 .merit03_con03 { padding: 50px 0 0; }
#merit03 .merit03_con03 .anno { margin-top: 20px; }
#merit03 .merit03_con03_lead { text-align: center; margin-bottom: 30px; }
#merit03 .con03_flexBox { width: calc(100% / 3); padding: 0 20px; text-align: center; }
#merit03 .con03_flexBox h4 { color: #60bc8d; font-size: 18px; line-height: 1.5; margin: 10px 0; background: linear-gradient(transparent 50%, #fff78c 50%); }
@media screen and (max-width: 850px) { #merit03 .con03_flexBox { padding: 0 10px; }
  #merit03 .con03_flexBox p { font-size: 13px; } }
@media screen and (max-width: 550px) { #merit03 .merit03_con03 { padding: 30px 0 0; }
  #merit03 .con03_flexBox { width: 100%; margin-bottom: 30px; } }
