@charset "utf-8";

/*common*/
.pc-only { display: block!important; }
.sp-only { display: none!important; }

section, main { position: relative; display: block; }
body { width: 100%; overflow-x: hidden; }

img { max-width: 100%; }

@media screen and (max-width: 767px) {
	.pc-only { display: none!important; }
	.sp-only { display: block!important; }
    
    html, body { width: 100%; overflow-x: hidden; }
}

/*no-js*/
.no-js .js-scroll-fade,
.no-js .top_main_txt.is-animation .catch,
.no-js .top_main_txt.is-animation .read { opacity: 1!important; }
.no-js body #loading { display: none; }

/*loading*/
body #loading {
    background: #fff;
    display: block;
    height: 100%;
    left: 0;
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 100010;
    pointer-events: none;
    -webkit-transition: opacity 1.5s cubic-bezier(.16,1,.3,1) 0.5s; transition: opacity 1.5s cubic-bezier(.16,1,.3,1) 0.5s;
}

body #loading.is-animation {
    opacity: 0;
}

/*fade*/
.js-scroll-fade { opacity: 0; }
.isActive  {
    -webkit-animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
    -webkit-animation-duration: 1.8s;
    animation-duration: 1.8s;
    -webkit-animation-name: fadeUp;
    animation-name: fadeUp;
    -webkit-animation-fill-mode: forwards;
    animation-fill-mode: forwards;
}
@-webkit-keyframes fadeUp{
	0%{opacity:0;-webkit-transform:translateY(50px);transform:translateY(50px)}
    10%{opacity:0; }
	to{opacity:1;-webkit-transform:none;tansform:none}
}
@keyframes fadeUp{
	0%{opacity:0;-webkit-transform:translateY(50px);transform:translateY(50px)}
    10%{opacity:0; }
	to{opacity:1;-webkit-transform:none;transform:none}
}

/*navi*/
header { position: absolute; top: 0; width: 100%; border-bottom: 1px solid #707070; z-index: 9999; }
body.home header,
body.yorokobi header,
body.andbarn header,
body.post-type-archive-case,
body.tax-case_cat,
body.about:not(.is-in) header { border-bottom: 1px solid #fff; }
body.partnership header { background: #F6F4ED; }
body.open header { border-bottom: 1px solid #707070!important; }
header > .inner { display: flex; align-items: center; width: 94%; height: 70px; margin: 0 auto; padding: 0; box-sizing: border-box; }

.header_logo { display: block; width: 180px; min-width: 140px; padding: 14px 0; line-height: 1; z-index: 4; position: relative; }
.header_logo img { line-height: 0; }
.header_logo > span { position: absolute; width: 100%; left: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
.header_logo ._on { opacity: 0; }
body.open .header_logo ._on,
body.is-in .header_logo ._on { opacity: 1; }
body.open .header_logo ._off,
body.is-in .header_logo ._off { opacity: 0; }

.global_nav { display: flex; justify-content: center; align-items: center; margin-right: 180px; flex-grow: 2; }
.main_nav { display: flex; }
body.open .main_nav { display: none; }
.main_nav li { font-size: 1.6rem; color: #000; line-height: 1.0; margin-left: calc(40 / 1400 * 100vw); }
.main_nav li a { display: inline-block; padding-left: 12px; overflow: hidden; position: relative; line-height: 1.2; }
.main_nav li a:before { content: ""; display: block; width: 4px; height: 4px; background: #fff; border-radius: 50%; position: absolute; left: 0; top: calc(50% - 2px); opacity: 0; }
.main_nav li a:after { padding-left: 12px; }
body.home .main_nav li#main_nav01 a:before,
body.yorokobi .main_nav li#main_nav05 a:before,
body.andbarn .main_nav li#main_nav03 a:before,
body.about .main_nav li#main_nav02 a:before { opacity: 1; }
body.is-in .main_nav li a:before { background: #000; }

body.home .main_nav li,
body.yorokobi .main_nav li,
body.andbarn .main_nav li,
body.about:not(.is-in) .main_nav li,
body.home .main_nav li a:after,
body.yorokobi .main_nav li a:after,
body.andbarn .main_nav li a:after,
body.about:not(.is-in) .main_nav li a:after { color: #fff; }
body.open .main_nav li { color: #000; }
.main_nav li .arrow { width: 8px; height: 4px; margin-left: 5px; display: inline-block; line-height: 8px; }
.main_nav li .hd { position: relative; cursor: pointer; z-index: 4; }
.main_nav li .btn_dd { display: block; width: 100%; height: 55px; position: absolute; top: 0; left: 0; }
.main_nav li:not(.menu_item) { position: relative; z-index: 4; }
.global_nav .serviceNav li:not(.menu_item) { position: 0; }

.btn_humberger_box { display: flex; width: 80px; height: 70px; z-index: 10001; position: absolute; top: 0; right: 2.85%; box-sizing: border-box; cursor: pointer; -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
.btn_humberger_box.fixed { opacity: 1; pointer-events: visible; }
.btn_humberger { width: 80px; display: flex; justify-content: space-between; align-items: center; }
.btn_humberger .line { display: block; position: relative; width: 25px; height: 9px; }
.btn_humberger .line span {content: ""; width: 25px; height: 1px; display: block; -webkit-transition: all 0.3s cubic-bezier(0.36, 0.14, 0, 1); transition: all 0.3s cubic-bezier(0.36, 0.14, 0, 1); background: #000; position: absolute; }
body.home .btn_humberger .line span,
body.yorokobi .btn_humberger .line span,
body.andbarn .btn_humberger .line span,
body.about:not(.is-in) .btn_humberger .line span { background: #fff; }
body.open .btn_humberger .line span { background: #000!important; }
.btn_humberger .line span:nth-child(2){ width: 17px; left: 0; bottom: 0; }
.btn_humberger .line span:nth-child(1){ left: 0; top: 0; }
body.open .btn_humberger .line span:nth-child(2){ width: 25px; left: 0; bottom: auto; top: 50%; -webkit-transform: rotate(-30deg); transform: rotate(-30deg); transform-origin: center; }
body.open .btn_humberger .line span:nth-child(1){ left: 0; top: 50%; -webkit-transform: rotate(30deg); transform: rotate(30deg); transform-origin: center; }
.btn_humberger .txt { color: #000; font-size: 1.7rem; font-weight: 600; line-height: 1.2; overflow: hidden; display: inline-block; position: relative; }
body.home .btn_humberger .txt,
body.yorokobi .btn_humberger .txt,
body.andbarn .btn_humberger .txt,
body.about:not(.is-in) .btn_humberger .txt,
body.home .btn_humberger .txt:after,
body.yorokobi .btn_humberger .txt:after,
body.andbarn .btn_humberger .txt:after,
body.about:not(.is-in) .btn_humberger .txt:after { color: #fff; }
body.open .btn_humberger .txt,
body.open .btn_humberger .txt:after  { color: #000!important; }

.op_global_nav { position: fixed; top: 0; z-index: 9998; width: 100%; height: 100vh; background: #EAE4D4; opacity: 0; pointer-events: none; -webkit-transition: opacity 0.6s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.6s cubic-bezier(0.36, 0.14, 0, 1); }
body.open .op_global_nav { opacity: 1; pointer-events: visible; }
.op_global_nav > .inner { display: flex; justify-content: space-between; width: 86.29%; position: absolute; left: 50%; top: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }
.op_global_nav .nav_list { width: 30.00%; }
.op_global_nav .nav_main li { font-size: 2.4rem; line-height: 1.33; margin-bottom: 20px; position: relative; overflow: hidden; }
.op_global_nav .nav_main li._contact { font-size: 1.4rem; margin-top: 30px; }
.op_global_nav .nav_sub { margin-top: 50px; }
.op_global_nav .nav_sub li { margin-top: 20px; font-size: 1.2rem; line-height: 1.5; }
.op_global_nav .nav_sub .arrow { display: inline-block; margin-left: 12px; line-height: 1.2; }

.nav_lineup { width: 69.76%;}
.nav_lineup_ttl { font-size: 2.4rem; line-height: 1.5; }
.nav_lineup_list { display: flex; margin-top: 40px; }
.nav_lineup_list > a { width: 32.02%; padding-bottom: 20px; border-bottom: 1px solid #707070; }
.nav_lineup_list > a + a { margin-left: 1.97%; }
.nav_lineup_list .ph { overflow: hidden; }
.nav_lineup_list .name { font-size: 2.4rem; margin-top: 20px;}
.nav_lineup_list .link_more { margin-top: 20px; } 

.function_nav { position: fixed; right: 0; top: 50%; -webkit-transform: translateY(-50%); transform: translateY(-50%); z-index: 9999; }
.function_nav { display: flex; flex-direction: column; }
.function_nav a {display: flex; align-items: center; width: 50px; font-size: 1.6rem; color: #fff; -ms-writing-mode: tb-rl; writing-mode: vertical-rl; margin: 0 auto; border-radius: 1px 0 0 1px; }
.function_nav a span { display: block; margin: 0 auto; padding: 10px 0; }
.function_nav a._store { background: #9A866E; }
.function_nav a._download { background: #A9854F; margin-top: 1px; }

@media screen and (max-width: 767px) {
    header { position: fixed; }
    header > .inner { display: flex; align-items: center; width: auto; height: 59px; margin: 0 auto; padding: 0 3.58%; box-sizing: border-box; }
    body.open header > .inner { background: #EAE4D4; }
    
    .btn_humberger_box { display: flex; width: 80px; height: 59px; z-index: 10001; position: absolute; top: 0; right: 2.85%; box-sizing: border-box; cursor: pointer; -webkit-transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); transition: opacity 0.5s cubic-bezier(0.36, 0.14, 0, 1); }
    
    .function_nav { width: 100%; height: 60px; position: fixed; left: 0; right: auto; top: auto; bottom: 0; -webkit-transform: translateY(0%); transform: translateY(0%); z-index: 9999; }
    .function_nav { display: flex; flex-direction: row; }
    .function_nav a {display: flex; align-items: center; width: 50%; font-size: 1.6rem; color: #fff; -ms-writing-mode: lr; writing-mode: horizontal-tb; margin: 0 auto; border-radius: 1px 0 0 1px; }
.function_nav a span { display: block; margin: 0 auto; padding: 10px 0; }
.function_nav a._store { background: #9A866E; }
    .function_nav a._download { background: #A9854F; margin-top: 0; }
    
    .global_nav { display: none;  }
    
    .op_global_nav { position: fixed; top: 0; width: 100%; height: 100vh; box-sizing: border-box; overflow-y: scroll; background: #EAE4D4; }
    .op_global_nav > .inner { display: block; justify-content: space-between; width: 87.68%; margin: 0 auto; padding-bottom: 90px; position: relative; left: auto; top: 96px; -webkit-transform: translate(0%,0%); transform: translate(0%,0%); }
    .op_global_nav .nav_list { width: auto; display: flex; flex-wrap: wrap; }
    .op_global_nav .nav_main { width: 50%; }
    .op_global_nav .nav_main li { font-size: 2.4rem; line-height: 1.33; margin-bottom: 35px; }
    .op_global_nav .nav_main li._contact { font-size: 2.4rem; margin-top: 30px; }
    .op_global_nav .nav_sub { display: flex; flex-wrap: wrap; width: 100%; margin-top: 0; }
.op_global_nav .nav_sub li { margin-top: 20px; font-size: 1.2rem; line-height: 1.5; }
    .op_global_nav .nav_sub li + li { margin-left: 40px; }
.op_global_nav .nav_sub .arrow { display: inline-block; margin-left: 12px; line-height: 1.2; }

    .nav_lineup { width: auto; margin-top: 35px;}
.nav_lineup_ttl { font-size: 2.4rem; line-height: 1.5; }
    .nav_lineup_list { display: block; margin-top: 0; }
    .nav_lineup_list > a { display: flex; justify-content: space-between; width: auto; margin-top: 20px; padding-bottom: 0; border-bottom: none; }
    .nav_lineup_list > a + a { margin-left: 0; }
    .nav_lineup_list .name { font-size: 2.4rem; margin-top: 0;}
.nav_lineup_list .link_more { margin-top: 20px; } 
    .nav_lineup_list .ph { width: 48.53%; }
    .nav_lineup_list .txt { width: 48.53%; padding-bottom: 8px; display: flex; flex-direction: column; justify-content: space-between; border-bottom: 1px solid #707070; }
}

/*top*/
.top_main { position: relative; }
.top_main_slide { height: 100vh; overflow: hidden;}
.top_main_slide .swiper-slide img { width: 100%; height: 100vh; object-fit: cover; object-position: center; }
.top_main_common { position: absolute; z-index: 2; }
.top_main_common img { width: 100%; height: 100vh; object-fit: cover; object-position: center; }

.top_main_movie { width: 100vw; height: 100vh; position: relative; overflow: hidden;}
.top_main_movie > video {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    min-width: 100%;
    min-height: 100%;
}

.top_main_slide:after { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 2; background: rgba(0,0,0,0.15); }

.top_main_txt { position: absolute; top: 50%; left: 5.07%; -webkit-transform: translateY(-50%); transform: translateY(-50%); z-index: 3; }
.top_main_txt .catch { font-size: 5.6rem; line-height: 1.28; color: #fff; opacity: 0; -webkit-transition: opacity 1.5s cubic-bezier(.16,1,.3,1) 0.2s; transition: opacity 1.5s cubic-bezier(.16,1,.3,1) 0.2s; }
.top_main_txt .read { font-size: 2.2rem; line-height: 1.45; font-weight: 400; color: #fff; margin-top: 20px; opacity: 0; -webkit-transition: opacity 1.5s cubic-bezier(.16,1,.3,1) 0.3s; transition: opacity 1.5s cubic-bezier(.16,1,.3,1) 0.3s; }
.top_main_txt.is-animation .catch,
.top_main_txt.is-animation .read { opacity: 1; }
.top_main_scroll { font-size: 1.6rem; color: #fff; position: absolute; right: 48px; bottom: 68px; z-index: 3; }
.top_main_scroll:before { content: ""; display: block; width: 16px; height: 16px; border-radius: 50%; background: rgba(255,255,255,0.9); position: absolute; left: -21px; top: 4px; }

.top_concept { padding: 130px 0 90px; background: rgba(0,0,0,0.6);}
.top_concept * { color: #fff; }
.top_concept_head { margin: 0 9.85% 0; }
.top_concept_head .hd { font-size: 1.6rem; }
.top_concept_head .catch { font-size: 6.0rem; line-height: 1.2; margin-top: 20px; }
.top_concept_head .read { font-size: 2.8rem; line-height: 1.5; }
.top_concept_body { position: relative; }
.top_concept_body > .inner { margin: 60px 35.71% 0 25.71%; }
.top_concept_body p { line-height: 1.9; }
.top_concept_body p + p { margin-top: 2em; }
.top_concept_ph02 { width: 20.07%; position: absolute; left: 0; top: 177px; }
.top_concept_ph02 > div { padding-bottom: 143%; position: relative; overflow: hidden; }
.top_concept_ph01 { width: 29.92%; position: absolute; right: 0; top: -183px; }
.top_concept_ph03 { width: 74.08%; margin: 60px 0 0 54.41%; }

.top_concept_ph02 > div video {height: 100%; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);-webkit-transform: translate(-50%, -50%); }

.link_more { margin-top: 40px;}
.link_more > a,
.link_more > span { display: flex; align-items: center; }
.link_more .more_ico { width: 24px; height: 24px; position: relative; border-radius: 50%; background: rgba(255,255,255,0.7); }
.link_more .more_ico svg { display: block; width: 10px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.link_more .more_txt { font-size: 1.8rem; line-height: 1.2; margin-left: 12px; position: relative; overflow: hidden; }
.link_more .more_txt:after { color: #fff; }
.top_news .link_more .more_txt:after,
.nav_lineup_list .more_txt:after,
.about_service_item .more_txt:after { color: #000; }

.top_factory_head { display: flex; align-items: center; width: 80.28%; max-width: 1120px; margin: 0 auto; padding: 45px 0 30px; }
.top_factory_head .hd { font-size: 1.6rem; }
.top_factory_head .ttl { font-size: 2.4rem; margin-left: 37px; }

.top_lineup_item { display: block; min-height: 524px; position: relative; }
.top_lineup_item .ph img { width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; }
.top_lineup_item .ph:after { content: ""; display: block; width: 1174px; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; background: linear-gradient(90deg, rgba(0,0,0,.59), rgba(0,0,0,.0) 70.71%); }
.top_lineup_item .txt { width: 460px; position: relative; z-index: 2; padding: 60px 0 0 9.85%; box-sizing: content-box; }
.top_lineup_item .txt * { color: #fff; }
.top_lineup_item .read { font-size: 2.0rem; margin: 45px 0 25px; }
.top_lineup_item .link_more { margin-top: 30px; }

.top_function > .inner { width: 94%; margin: 88px auto 0; display: flex; }
.top_function_item { position: relative; width: 33.33%; }
.top_function_item + .top_function_item { margin-left: 3px; }
.top_function_item .ph { padding-bottom: 75%; }
.top_function_item .ph img { width: 100%; height: 100%; position: absolute; top: 0; object-fit: cover; }
.top_function_item * { color: #fff; }
.top_function_item:after { content: ""; display: block; width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; background: linear-gradient(90deg, rgba(0,0,0,.80), rgba(0,0,0,.0) 100%); }
.top_function_item .txt { position: absolute; top: 35px; padding: 0 8.23%; z-index: 2; }
.top_function_item .link_more  { position: absolute; bottom: 35px; padding: 0 8.23%; z-index: 2; }
.top_function_item .ttl { font-size: 2.0rem; line-height: 1.5; margin-bottom: 30px; }
aside.top_function { margin-top: 110px; }

.top_news > .inner { width: 80.28%; max-width: 1120px; margin: 88px auto 0; }
.top_news_head .hd { font-size: 1.6rem; }
.top_news_head .ttl { font-size: 2.4rem; }
.top_news_body { display: flex; justify-content: space-between; margin-top: 60px; }
.top_news_cat { width: 20.36%; font-size: 1.4rem; line-height: 1.5; }
.top_news_cat li a { display: inline-block; margin-bottom: 15px; padding-left: 11px; line-height: 1; position: relative; opacity: 0.5; overflow: hidden; }
.top_news_cat li.active a { opacity: 1; }
.top_news_cat li.active a:before { content: ""; display: block; width: 6px; height: 6px; border-radius: 50%; background: #46413C; position: absolute; left: -11px; top: 5px; }
.top_news_list { width: 74.64%; border-top: 1px solid #C6C2B7; }
.top_news_item { display: flex; padding: 32px 0; border-bottom: 1px solid #C6C2B7; }
.top_news_item .date { width: 136px; font-size: 1.4rem; line-height: 1.5; }
.top_news_item .ph { width: 174px; }
.top_news_item .ph > div { padding-bottom: 71.83%; position: relative; overflow: hidden; }
.top_news_item .ph img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.top_news_item .txt { width: calc(100% - 350px); margin-left: 40px; }
.top_news_item .ttl { font-size: 1.6rem; line-height: 1.5; }
.top_news_item .data { display: flex; align-items: center; justify-content: space-between; margin-top: 30px; font-size: 1.4rem; }
.top_news_item .read { display: inline-block; line-height: 1.5; overflow: hidden; position: relative; }
.top_news_item .read span { border-bottom: 1px solid #000; }
.top_news .link_more { margin-top: 15px;}
.top_news .link_more a { justify-content: flex-end; }

footer { background: #000; margin-top: 120px; }
aside + footer { margin-top: 80px; }
body.partnership footer { margin-top: 0; }
footer * { color: #fff; }
.footer_link { padding: 80px 0; display: flex; }
.footer_link_item { width: 50%; text-align: center; }
.footer_link_item .hd { font-size: 3.6rem; }
.footer_link_item p { margin-top: 15px; line-height: 1.7; }
.footer_link_item .link_more { margin-top: 65px; }
.footer_link_item .link_more span { justify-content: center; }
.footer_link_item:last-child { border-left: 1px solid #4C4C4C; }

.footer_common { border-top: 1px solid #4C4C4C; }
.footer_top { width: 80.28%; max-width: 1120px; margin: 0 auto; padding: 70px 0; display: flex; justify-content: space-between; }
.footer_logo { width: 263px; }
.footer_nav { width: 50%; display: flex; }
.footer_nav.sp { display: none; }
.footer_nav li + li { margin-top: 20px; }
.footer_nav a { font-size: 1.6rem; }
.footer_nav_item + .footer_nav_item { margin-left: 10%; }
.footer_nav_item a { display: inline-block; line-height: 1; overflow: hidden; position: relative; }
.footer_nav_item a:after { color: #fff; }
.footer_function { width: 80.28%; max-width: 1120px; margin: 0 auto; display: flex; justify-content: space-between; align-items: center; }
.footer_function .copyrights { font-size: 1.4rem; }
.footer_function .link { flex-grow: 2; font-size: 1.4rem; margin-left: 10px; }
.footer_function .link a { display: inline-block; margin-right: 48px; line-height: 1; overflow: hidden; position: relative;  }
.footer_function .link a:after { color: #fff; }
.footer_end img { width: 100%; }

.company_info { font-size: 1.2rem; line-height: 1.7; margin-top: 2.0rem; }

.pagetop > a { display: flex; align-items: center; }
.pagetop .pagetop_ico { min-width: 24px; width: 24px; min-height: 24px; height: 24px; position: relative; border-radius: 50%; background: rgba(255,255,255,0.7); }
.pagetop .pagetop_ico svg { display: block; width: 10px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
.pagetop .more_txt { font-size: 1.4rem; margin-right: 8px; }
.pagetop .more_txt { display: inline-block; line-height: 1; overflow: hidden; position: relative; }
.pagetop .more_txt:after { color: #fff; }
.footer_end { margin-top: 60px; }

.top_mv_video { width: 100%; height: 100vh; position: relative; overflow: hidden; }
.top_mv_video video {min-height: 100%;
    min-height: 100vh;
    min-width: 100%;
    min-width: 100vw; position: absolute; top: 50%; left: 50%; transform: translate(-50%, -50%);-webkit-transform: translate(-50%, -50%); }


@media screen and (max-width: 1024px) {
    .top_function_item .ph { padding-bottom: 100%; }
}

@media screen and (max-width: 767px) {
.top_main { position: relative; }
    .top_main_slide { height: 100vh; height: 100svh; overflow: hidden;}
    .top_main_slide .swiper-slide img { width: 100%; height: 100vh; object-fit: cover; object-position: center bottom; }
    .top_main_common img { width: 100%; height: 100vh; object-fit: cover; object-position: 75% 0; }

.top_main_slide .swiper-pagination { display: none; }
.top_main_slide:after { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; z-index: 2; background: rgba(0,0,0,0.15); }

    .top_main_txt { position: absolute; top: auto; bottom: 90px; left: 5.07%; -webkit-transform: translateY(0%); transform: translateY(0%); z-index: 3; }
    .top_main_txt .catch { font-size: 4.6rem; line-height: 1.28; color: #fff; }
    .top_main_txt .read { font-size: 1.8rem; line-height: 1.45; font-weight: 400; color: #fff; margin-top: 20px; }
    .top_main_scroll { display: none;  }

    .top_concept { padding: 125px 0 90px; background: rgba(0,0,0,0.6);}
.top_concept * { color: #fff; }
    .top_concept_head { margin: 40px 6.15% 0; }
.top_concept_head .hd { font-size: 1.6rem; }
    .top_concept_head .catch { font-size: 5.2rem; line-height: 1.2; margin-top: 20px; }
    .top_concept_head .read { font-size: 2.4rem; line-height: 1.5; }
.top_concept_body { position: relative; }
    .top_concept_body > .inner { margin: 30px 6.15% 0; }
.top_concept_body p + p { margin-top: 2em; }
    .top_concept_ph02 { width: 71.28%; margin-top: 60px; position: relative; left: 0; top: auto; }
    .top_concept_ph02 > div { padding-bottom: 69.78%; position: relative; overflow: hidden; }
    .top_concept_ph01 { width: 71.28%; position: relative; right: auto; left: 28.72%; top: auto; }
    .top_concept_ph03 { width: 71.28%; margin: 24px 0 0 28.72%; }

    .link_more { margin-top: 20px;}
.link_more > a,
.link_more > span { display: flex; align-items: center; }
.link_more .more_ico { width: 24px; height: 24px; position: relative; border-radius: 50%; background: rgba(255,255,255,0.7); }
.link_more .more_ico svg { display: block; width: 10px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
    .link_more .more_txt { font-size: 1.4rem; margin-left: 12px; }

    .top_factory_head { display: block; align-items: center; width: 87.68%; margin: 0 auto; padding: 20px 0; }
.top_factory_head .hd { font-size: 1.6rem; }
    .top_factory_head .ttl { font-size: 2.4rem; line-height: 1.5; margin-left: 0; }

    .top_lineup_item { display: block; min-height: 524px; margin-bottom: 3px; position: relative; }
    .top_lineup_item .ph img { width: 100%; height: 100%; object-fit: cover; object-position: bottom; position: absolute; top: 0; left: 0; }
    .top_lineup_item .ph:after { content: ""; display: block; width: 1174px; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; background: linear-gradient(180deg, rgba(0,0,0,.59), rgba(0,0,0,.0) 70.71%); }
    .top_lineup_item .txt { width: 87.68%; position: relative; z-index: 2; margin: 0 auto; padding: 27px 0 0; box-sizing: content-box; }
.top_lineup_item .txt * { color: #fff; }
    .top_lineup_item .read { font-size: 1.8rem; margin: 15px 0; line-height: 1.7; }
    .top_lineup_item .txt p { font-size: 1.4rem; line-height: 1.5; }
    .top_lineup_item .link_more { margin-top: 15px; }
    .top_lineup_item .logo._andbarn { width: 173px; }
    .top_lineup_item .logo._looper { width: 182px; }
    .top_lineup_item .logo._yorokobi { width: 213px; }

    .top_function > .inner { width: 87.68%; margin: 40px auto 0; display: block; }
    .top_function_item { width: 100%; display: block; position: relative; }
    .top_function_item + .top_function_item { margin-top: 12px; }
    .top_function_item .ph { padding-bottom: 47.36%; }
    .top_function_item .ph img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.top_function_item * { color: #fff; }
.top_function_item:after { content: ""; display: block; width: 100%; height: 100%; object-fit: cover; position: absolute; top: 0; left: 0; background: linear-gradient(90deg, rgba(0,0,0,.80), rgba(0,0,0,.0) 100%); }
    .top_function_item .txt { position: absolute; top: 20px; padding: 0 8.23%; z-index: 2; }
    .top_function_item .link_more  { position: absolute; bottom: 20px; padding: 0 8.23%; z-index: 2; }
    .top_function_item .ttl { font-size: 1.8rem; line-height: 1.5; margin-bottom: 10px; }
    .top_function_item p { font-size: 1.2rem; }
    aside.top_function { margin-top: 60px; }

    .top_news > .inner { width: 87.68%; margin: 88px auto 0; }
.top_news_head .hd { font-size: 1.6rem; }
    .top_news_head .ttl { font-size: 2.4rem; line-height: 1.5; }
    .top_news_body { display: block; justify-content: space-between; margin-top: 30px; }
    .top_news_cat { width: auto; font-size: 1.4rem; line-height: 1.5; }
    .top_news_cat ul { display: flex; }
.top_news_cat li a { display: inline-block; margin-bottom: 15px; padding-left: 11px; position: relative; opacity: 0.5; }
    .top_news_cat li + li { margin-left: 40px; }
.top_news_cat li.active a { opacity: 1; }
.top_news_cat li.active a:before { content: ""; display: block; width: 6px; height: 6px; border-radius: 50%; background: #46413C; position: absolute; left: 0; top: 8px; }
    .top_news_list { width: auto; margin-top: 30px; border-top: 1px solid #C6C2B7; }
    .top_news_item { display: flex; justify-content: space-between; padding: 20px 0; border-bottom: 1px solid #C6C2B7; }
    .top_news_item .date { width: auto; margin-bottom: 15px; font-size: 1.2rem; line-height: 1.5; }
    .top_news_item .ph { width: 39.76%; }
    .top_news_item .ph > div { padding-bottom: 90.44%; position: relative; }
    .top_news_item .ph > div img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
    .top_news_item .txt { width: 55.55%; margin-left: auto; }
.top_news_item .ttl { font-size: 1.6rem; line-height: 1.5; }
    .top_news_item .data { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 15px; font-size: 1.2rem; }
    .top_news_item .data .cat { width: 100%; }
    .top_news_item .read { width: 100%; text-align: right; margin-top: 15px; }
.top_news_item .read span { border-bottom: 1px solid #000; }
.top_news .link_more { margin-top: 15px;}
.top_news .link_more a { justify-content: flex-end; }

    footer { background: #000; margin-top: 60px; }
    aside + footer { margin-top: 45px; }
footer * { color: #fff; }
    .footer_link { width: 87.68%; margin: 0 auto; padding: 0; display: flex; flex-direction: column; }
    .footer_link_item { width: auto; padding: 40px 0; text-align: center; }
.footer_link_item .hd { font-size: 3.6rem; }
    .footer_link_item .link_more { margin-top: 30px; }
    .footer_link_item .link_more span { font-size: 1.8rem; }
.footer_link_item .link_more span { justify-content: center; }
    .footer_link_item:last-child { border-left: none; border-top: 1px solid #4C4C4C; }

    .footer_common { border-top: 1px solid #4C4C4C; padding-bottom: 100px; }
    .footer_top { width: 87.68%; margin: 0 auto; padding: 70px 0 20px; display: block; justify-content: space-between; }
    .footer_logo { width: 276px; margin: 0 auto; }
    .footer_logo img { width: 100%; }
    .footer_nav.pc { display: none; }
    .footer_nav.sp { display: block; width: 87.68%; }
    .footer_nav ul { display: flex; flex-wrap: wrap; margin-top: 40px; }
    .footer_nav li { width: 50%; margin: 0 0 25px!important; }
.footer_nav a { font-size: 1.6rem; }
.footer_nav_item + .footer_nav_item { margin-left: 10%; }
    
    .footer_function { width: 87.68%; margin: 0 auto; padding-top: 30px; display: flex; flex-wrap: wrap; justify-content: space-between; align-items: center; border-top: 1px solid #4C4C4C; }
    .footer_function .copyrights { font-size: 1.2rem; }
    .footer_function .link { width: 100%; flex-grow: 2; order: -1; font-size: 1.2rem; margin-left: 0; }
    .footer_function .link a { display: inline-block; margin-bottom: 20px; }
    .footer_function .link a + a { margin-left: 25px; }
.footer_end img { width: 100%; }
    
    .company_info { font-size: 1.2rem; line-height: 1.7; margin-top: 2.0rem; text-align: center; }

.pagetop > a { display: flex; align-items: center; }
.pagetop .pagetop_ico { width: 24px; height: 24px; position: relative; border-radius: 50%; background: rgba(255,255,255,0.7); }
.pagetop .pagetop_ico svg { display: block; width: 10px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%, -50%); transform: translate(-50%, -50%); }
    .pagetop .more_txt { font-size: 1.2rem; margin-right: 5px; }
    .footer_end { display: none; margin-top: 60px; }
}

/*common*/
.breadcrumbs { display: flex; align-items: center; flex-wrap: wrap;  position: absolute; top: 80px; left: 3%; z-index: 10; color: #000; font-size: 1.6rem; }
body.yorokobi .breadcrumbs,
body.andbarn .breadcrumbs,
body.about .breadcrumbs,
body.partnership .breadcrumbs { color: #fff; }
.breadcrumbs a { opacity: 0.6; }
.breadcrumbs .ico_arrow { width: 20px; height: 1px; margin-right: 8px; background: rgba(0,0,0,0.6); }
body.yorokobi .breadcrumbs .ico_arrow,
body.andbarn .breadcrumbs .ico_arrow,
body.about .breadcrumbs .ico_arrow,
body.partnership .breadcrumbs .ico_arrow { background: rgba(255,255,255,0.6); }

.page_hd { font-size: 6.4rem; line-height: 1.5; color: #9A866E; padding: 147px 0 0 30.21%; margin-bottom: 45px; }
.page_hd._privacy { width: 80.28%; max-width: 1120px; margin: 0 auto; padding-left: 0; }

.common_wrapper { display: flex; justify-content: space-between;  width: 80.28%; max-width: 1120px; margin: 0 auto; }
.common_sidebar { width: 16.28%; }
.common_sidebar > .inner { position: sticky; top: 100px; }
.common_main { width: 74.64%; }
.common_main._privacy  { width: 100%; }

@media screen and (max-width: 1024px) {
    .page_hd { font-size: 6.4rem; line-height: 1.5; color: #9A866E;  width: 87.69%; margin: 0 auto 45px; padding: 124px 0 0; }
    .page_hd._privacy { width: 87.69%; margin: 0 auto 45px; padding-left: 0; }
    
    .common_wrapper { display: block; justify-content: space-between;  width: 87.69%; margin: 0 auto; }
    .common_sidebar { width: auto; }
    .common_main { width: auto; margin-top: 45px; }
}

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

/*plan*/
.plan_top { height: 100vh; position: relative; }
.plan_top_txt { width: 94%; position: absolute; bottom: 40px; left: 3%; z-index: 3; border-bottom: 1px solid #fff; }
.plan_top_logo { position: absolute; left: 0; bottom: 15px; }
.plan_top_catch { position: absolute; right: 0; bottom: 15px; font-size: 2.8rem; line-height: 1.5; color: #fff; }
.plan_top_ph img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.plan_top_ph:after { content: ""; display: block; position: absolute; width: 100%; height: 100%; background: rgba(0,0,0,0.2); }

/* .plan_concept { background: #000; padding: 145px 0 300px; } */
.plan_concept { background: #000; padding: 145px 0 0px; }
.plan_concept * { color: #fff; }
.plan_concept > .inner { display: flex; justify-content: space-between; align-items: flex-start; width: 80.28%; max-width: 1120px; margin: 0 auto; }
.plan_concept_hd { display: flex; align-items: flex-end; width: 31.49%; font-size: 1.6rem; font-weight: 600; line-height: 1.5; }
.plan_concept_hd .line { margin-left: 5%; flex-shrink: 2; position: relative; width: 100%; }
.plan_concept_hd .line:after { content: ""; display: block; width: 100%; height: 1px; background: #707070; position: absolute; bottom: 5px; }
.plan_concept_txt { width: 66.19%; }
.plan_concept_txt .catch { font-size: 3.2rem; line-height: 1.5; }
.plan_concept_txt .read p { font-size: 1.7rem; line-height: 2.1; margin-top: 2em; }
.plan_concept_txt .point { display: flex; margin-top: 70px; }
.plan_concept_txt .point_item { width: 33%; font-size: 1.6rem; line-height: 1.6; text-align: center; }
.plan_concept_txt .point_item + .point_item { border-left: 1px solid #707070; }
.plan_concept_txt .point_item_name { margin-top: 30px; }

.plan_slide > .inner { width: 71.42%; margin: -172px auto 0; }
.plan_slide_main { overflow: hidden; }
.plan_slide_main .ttl { font-size: 1.6rem; font-weight: 700; margin: 30px 0 10px; }
.plan_slide_nav { margin-top: 35px;}
.plan_slide_nav .swiper-wrapper { justify-content: center; }
.plan_slide_nav .swiper-slide { width: 8%; opacity: 0.5; }
.plan_slide_nav .swiper-slide-thumb-active { opacity: 1; }
.plan_slide_nav .swiper-slide div { padding-bottom: 100%; position: relative; }
.plan_slide_nav .swiper-slide img { width: 100%; height: 100%; object-fit: cover; position: absolute; }
.plan_slide_mainbox { position: relative; }

.plan_slide_mainbox .swiper-button-prev02 { width: 14px; height: 45.42vw; background: url("../img/arrow_slide_bk.svg") no-repeat center / contain; position: absolute; left: -60px; top: 0;transform: scale(-1, 1); }
.plan_slide_mainbox .swiper-button-next02 { width: 14px; height: 45.42vw; background: url("../img/arrow_slide_bk.svg") no-repeat center / contain; position: absolute; right: -60px; top: 0; }
.plan_slide_mainbox .swiper-button-prev02:after, .plan_slide_mainbox .swiper-button-next02:after { content: ''; }

/* .plan_detail { background: #000; margin-top: 164px; padding-bottom: 185px; } */
.plan_detail { background: #000; padding-top: 200px; padding-bottom: 185px; }
.plan_concept + .plan_detail { margin-top: 0; }
.plan_detail > .inner { width: 80.28%; max-width: 1120px; margin: 0 auto; }
.plan_detail * { color: #fff; }
.plan_common_hd { font-size: 12.3rem; color: #9A866E; line-height: 1; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.plan_tab_nav { display: flex; }
.plan_tab_nav .item { font-size: 2.0rem; line-height: 1.5; color: #fff; width: 33%; padding: 12px 0; text-align: center; opacity: 0.5; cursor: pointer; }
.plan_tab_nav .item.active { border: 1px solid #707070; border-bottom: none; opacity: 1; }

.tab_body_item { display: none; }
.tab_body_item.active { display: block; }
.plan_tab_body .item { margin-top: 106px; }
.plan_common_ttl { padding-top: 5px; font-size: 1.6rem; font-weight: 600; border-top: 1px solid #707070; }
.plan_tab_box { display: flex; justify-content: space-between; margin-top: 50px; }
.plan_tab_txt { width: 32.38%; }
.plan_tab_txt .name { margin-bottom: 30px; font-size: 3.2rem; line-height: 1.2; }
.plan_tab_txt .name span { font-size: 2.1rem; }
.plan_tab_txt .normal_tb { margin-top: 35px; }
.plan_tab_txt .normal_tb th,
.plan_tab_txt .normal_tb td { padding: 15px 0; border-bottom: 1px solid #707070; }
.plan_tab_txt .normal_tb th { width: 50%; }
.plan_tab_txt .normal_tb td { width: 25%; text-align: center; }

.plan_tab_slide .slide_main .swiper-slide { padding-bottom: 62.91%; position: relative; }
.plan_tab_slide .slide_main .swiper-slide img { width: 100%; height: 100%; object-fit: cover; position: absolute; }
.plan_tab_slide { width: 57.74%; overflow: hidden; }
.plan_tab_slide .slide_nav { margin: 0 12.94%; overflow: hidden; }
.plan_tab_slide .slide_nav .swiper-slide { width: 23.26%; opacity: 0.5; }
.plan_tab_slide .slide_nav .swiper-slide-thumb-active { opacity: 1; }
.plan_tab_slide .slide_nav .swiper-slide > div { padding-bottom: 62.91%; position: relative; }
.plan_tab_slide .slide_nav .swiper-slide > div img { width: 100%; height: 100%; object-fit: cover; position: absolute; }
.slide_nav_box { position: relative; margin-top: 16px; }
.slide_nav_box .swiper-button-prev { width: 2.16%; height: 100%; background: url("../img/arrow_slide.svg") no-repeat center / contain; position: absolute; left: 0; top: 20%; transform: scale(-1, 1); }
.slide_nav_box .swiper-button-next { width: 2.16%; height: 100%; background: url("../img/arrow_slide.svg") no-repeat center / contain; position: absolute; right: 0; top: 20%; }
.slide_nav_box .swiper-button-prev:after, .slide_nav_box .swiper-button-next:after { content: ''; }

.plan_tab_floor { margin: 50px 0; display: flex; justify-content: center; align-items: flex-start; }
.plan_tab_floor a { width: 49.28%; position: relative; }
.plan_tab_floor a > div { padding-bottom: 63.35%; position: relative; background: #fff; }
.plan_tab_floor a > div img { width: 80%; height: 80%; object-fit: contain; position: absolute; left: 10%; top: 10%; }
.plan_tab_floor .zoom { position: absolute; right: 10px; bottom: 10px; z-index: 2; }
.plan_tab_floor a + a { margin-left: 1.44%; }

.plan_tab_tour { max-width: 812px; margin: 50px auto; }
.plan_tab_tour a > img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.plan_tab_tour a { padding-bottom: 56.40%; display: block; position: relative; }
.plan_tab_tour a .ico { position: absolute; left: 50%; top: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }

.plan_feature > .inner { width: 80.28%; max-width: 1120px; margin: 0 auto; }
.plan_spec { display: flex; justify-content: space-between; margin-top: 50px; }
/* .plan_spec_item { width: 23.93%; text-align: center; } */
.plan_spec_item { width: 22.19%; text-align: center; }
.plan_spec_item .ttl { font-size: 2.0rem; margin: 20px 0 15px; }
.plan_spec_item p { text-align: left; }
.plan_spec_item .ph { margin: 15px 0 35px; }
.plan_spec_item .ph img { max-width: 140px; }
.plan_spec_item .name { font-size: 2.8rem; color: #9A866E; line-height: 1.5; }
.plan_spec_item .spec { display: flex; justify-content: center; align-items: center; }
.plan_spec_item .spec .type { font-size: 1.8rem; color: #9A866E; line-height: 1.25; }
.plan_spec_item .spec .num { font-size: 5.5rem; color: #9A866E; line-height: 1.25; margin-left: 7px; }

.plan_faq > .inner { width: 80.28%; max-width: 1120px; margin: 200px auto 0; }

.plan_lineup { background: #000; padding-top: 120px; }
.plan_lineup > .inner { width: 80.28%; max-width: 1120px; margin: 0 auto; }
.plan_lineup * { color: #fff; }
.plan_lineup_list { margin-top: 50px; display: flex; justify-content: space-between; }
.plan_lineup_list > a { width: 30.87%; padding-bottom: 20px; border-bottom: 1px solid #707070; }
.plan_lineup_list > a.col2 { width: 47.5%; padding-bottom: 20px; border-bottom: 1px solid #707070; }
.plan_lineup_list .name { font-size: 2.4rem; margin-top: 20px; }
.plan_lineup_list .link_more { margin-top: 15px; }

@media screen and (max-width: 1024px) {
    .plan_tab_box { display: block; margin-top: 50px; }
    .plan_tab_txt { width: auto; }
    .plan_tab_slide { width: auto; overflow: hidden; margin-top: 35px; }
    
    .plan_spec { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 50px; }
    .plan_spec_item { width: 48.53%; text-align: center; margin-bottom: 35px; }
}
@media screen and (max-width: 767px) {
    .plan_top { height: calc(100vh - 60px); position: relative; }
    .plan_top_txt { width: 87.68%; position: absolute; bottom: 15px; left: 6.16%; z-index: 3; border-bottom: none; }
    .plan_top_logo { max-width: 313px; margin: 0 auto; position: relative; left: auto; bottom: auto; text-align: center; }
    .plan_top_catch { padding-top: 10px; margin-top: 12px; position: relative; right: auto; bottom: auto; font-size: 2.4rem; line-height: 1.5; color: #fff; border-top: 1px solid #fff; text-align: center; }
.plan_top_ph img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.plan_top_ph:after { content: ""; display: block; position: absolute; width: 100%; height: 100%; background: rgba(0,0,0,0.2); }

    .plan_concept { background: #000; padding: 76px 0 0px; }
.plan_concept * { color: #fff; }
    .plan_concept > .inner { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; width: 87.68%; margin: 0 auto; }
    .plan_concept_hd { display: flex; align-items: flex-end; width: 100%; font-size: 1.6rem; font-weight: 600; line-height: 1.25; }
.plan_concept_hd .line { margin-left: 5%; flex-shrink: 2; position: relative; width: 100%; }
.plan_concept_hd .line:after { content: ""; display: block; width: 100%; height: 1px; background: #707070; position: absolute; bottom: 5px; }
    .plan_concept_txt { width: 100%; }
    .plan_concept_txt .catch { font-size: 2.7rem; line-height: 1.5; margin-top: 30px; }
    .plan_concept_txt .read p { font-size: 1.6rem; line-height: 1.75; margin-top: 2em; }
    .plan_concept_txt .point { display: block; margin-top: 40px; }
    .plan_concept_txt .point_item { display: flex; align-items: center; width: 100%; padding: 20px 0; font-size: 1.6rem; line-height: 1.6; text-align: left; }
    .plan_concept_txt .point_item_ico { width: 80px; min-width: 80px; margin-left: 14.61%; }
    .plan_concept_txt .point_item + .point_item { border-left: none; border-top: 1px solid #707070; }
    .plan_concept_txt .point_item_name { margin: 0 0 0 14.61%; }

    .plan_slide > .inner { width: auto; margin: 0 auto; }
.plan_slide_main { overflow: hidden; }
    .plan_slide_main .ttl { font-size: 1.6rem; font-weight: 700; margin: 20px 0 10px; }
    .plan_slide_main .txt { width: 87.68%; margin: 0 auto;  }
    .plan_slide_nav { margin-top: 17px; }
.plan_slide_nav .swiper-wrapper { justify-content: center; }
    .plan_slide_nav .swiper-slide { width: 11.28%; opacity: 0.5; }
.plan_slide_nav .swiper-slide-thumb-active { opacity: 1; }
.plan_slide_nav .swiper-slide div { padding-bottom: 100%; position: relative; }
.plan_slide_nav .swiper-slide img { width: 100%; height: 100%; object-fit: cover; position: absolute; }
.plan_slide_mainbox { position: relative; }

    .plan_slide_mainbox .swiper-button-prev02 { width: 14px; height: 62vw; background: url("../img/arrow_slide_bk.svg") no-repeat center / contain; position: absolute; left: 2%; top: 0;transform: scale(-1, 1); z-index: 10; }
    .plan_slide_mainbox .swiper-button-next02 { width: 14px; height: 62vw; background: url("../img/arrow_slide_bk.svg") no-repeat center / contain; position: absolute; right: 2%; top: 0; z-index: 10; }
.plan_slide_mainbox .swiper-button-prev02:after, .plan_slide_mainbox .swiper-button-next02:after { content: ''; }

    .plan_detail { background: #000; margin-top: 0px; padding-top: 120px; padding-bottom: 100px; }
    .plan_concept + .plan_detail { margin-top: 0; padding-top: 50px; }
    .plan_detail > .inner { width: 87.68%; margin: 0 auto; }
.plan_detail * { color: #fff; }
    .plan_common_hd { font-size: 8.0rem; color: #9A866E; line-height: 1; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.plan_tab_nav { display: flex; }
    .plan_tab_nav .item { font-size: 1.2rem; line-height: 1.5; color: #fff; width: 33%; padding: 12px; text-align: center; opacity: 0.5; }
.plan_tab_nav .item.active { border: 1px solid #707070; border-bottom: none; opacity: 1; }

    .plan_tab_body .item { margin-top: 56px; }
.plan_common_ttl { padding-top: 5px; font-size: 1.6rem; font-weight: 600; border-top: 1px solid #707070; }
    .plan_tab_box { display: block; margin-top: 50px; }
    .plan_tab_txt { width: auto; }
    .plan_tab_txt .name { margin-bottom: 16px; font-size: 3.2rem; line-height: 1.2; }
.plan_tab_txt .name span { font-size: 2.1rem; }
    .plan_tab_txt .normal_tb { margin-top: 15px; }
.plan_tab_txt .normal_tb th,
.plan_tab_txt .normal_tb td { font-size: 1.6rem; padding: 15px 0; border-bottom: 1px solid #707070; }
.plan_tab_txt .normal_tb th { width: 50%; }
.plan_tab_txt .normal_tb td { width: 25%; text-align: center; }

    .plan_tab_slide { width: auto; overflow: hidden; margin-top: 35px; }
.plan_tab_slide .slide_nav { margin: 0 12.94%; overflow: hidden; }
.plan_tab_slide .slide_nav .swiper-slide { width: 23.26%; opacity: 0.5; }
.plan_tab_slide .slide_nav .swiper-slide-thumb-active { opacity: 1; }
.plan_tab_slide .slide_nav .swiper-slide > div { padding-bottom: 62.91%; position: relative; }
.plan_tab_slide .slide_nav .swiper-slide > div img { width: 100%; height: 100%; object-fit: cover; position: absolute; }
.slide_nav_box { position: relative; margin-top: 16px; }
    .slide_nav_box .swiper-button-prev { width: 4.16%; height: 100%; background: url("../img/arrow_slide.svg") no-repeat center / contain; position: absolute; left: 0; top: 30%; transform: scale(-1, 1); }
    .slide_nav_box .swiper-button-next { width: 4.16%; height: 100%; background: url("../img/arrow_slide.svg") no-repeat center / contain; position: absolute; right: 0; top: 30%; }
.slide_nav_box .swiper-button-prev:after, .slide_nav_box .swiper-button-next:after { content: ''; }

.plan_tab_floor { margin: 50px 0; display: block; justify-content: center; }
    .plan_tab_floor a { display: block; width: 100%; }
    .plan_tab_floor a + a { margin: 10px 0 0; }
.plan_tab_tour { max-width: 812px; margin: 50px auto; }
.plan_tab_tour a { display: block; position: relative; }
    .plan_tab_tour a .ico { width: 66px; position: absolute; left: 50%; top: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); }

    .plan_feature > .inner { width: 87.68%; margin: 0 auto; }
    .plan_spec { display: flex; flex-wrap: wrap; justify-content: space-between; margin-top: 50px; }
    .plan_spec_item { width: 48.53%; text-align: center; margin-bottom: 35px; }
    .plan_spec_item .ttl { font-size: 1.8rem; margin: 20px 0 15px; }
    .plan_spec_item p { text-align: left; line-height: 1.6; }
.plan_spec_item .ph { margin-top: 15px; }
.plan_spec_item .ph img { max-width: 140px; }
    .plan_spec_item .name { font-size: 2.0rem; color: #9A866E; }
.plan_spec_item .spec { display: flex; justify-content: center; align-items: center; }
.plan_spec_item .spec .type { font-size: 1.8rem; color: #9A866E; line-height: 1.25; }
.plan_spec_item .spec .num { font-size: 5.5rem; color: #9A866E; line-height: 1.25; margin-left: 7px; }
    
    .plan_faq > .inner { width: 87.68%; margin: 100px auto; }

    .plan_lineup { background: #000; padding-top: 50px; }
    .plan_lineup > .inner { width: 87.68%; margin: 0 auto; }
.plan_lineup * { color: #fff; }
    .plan_lineup .ph { padding-bottom: 56.25%; position: relative; }
    .plan_lineup .ph img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
    .plan_lineup_list { margin-top: 50px; display: block; justify-content: space-between; }
    .plan_lineup_list > a { display: block; width: auto; padding-bottom: 10px; border-bottom: 1px solid #707070; }
    .plan_lineup_list > a + a { margin-top: 40px; }
    .plan_lineup_list img { width: 100%; }
    .plan_lineup_list .name { font-size: 2.4rem; margin-top: 10px; }
    .plan_lineup_list .link_more { margin-top: 10px; }
}

/*about*/
.about_nav { width: 20.35%; height: 100%; padding-top: 200px; box-sizing: border-box; position: absolute; top: 0; left: 9.85%; z-index: 10; }
.about_nav > ul { position: sticky; top: 100px; }
.about_nav > ul li { font-size: 1.2rem; margin-bottom: 30px; }
.about_nav > ul li a { color: #fff;-webkit-transition: color 0.3s cubic-bezier(0.36, 0.14, 0, 1); transition: color 0.3s cubic-bezier(0.36, 0.14, 0, 1); display: inline-block; position: relative; overflow: hidden; }
body.is-in .about_nav > ul li a { color: #000; }

.about_top { background: url("../img/about_mainph.jpg") no-repeat center / cover; padding: 200px 0; position: relative; }
.about_top:after { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: rgba(0,0,0,0.5); }
.about_top > .inner { width: 59.92%; margin-left: 30.21%; border-top: 1px solid #707070; position: relative; z-index: 2;}
.about_common_hd { font-size: 1.6rem; margin-top: 8px; }
.about_top .about_common_hd { color: #fff; }
.about_top_catch { font-size: 4.0rem; color: #fff; line-height: 1.8; margin-top: 80px; }
.about_top_read { margin-top: 80px; }
.about_top_read p { color: #fff; line-height: 3.5; }
.about_top_read p + p { margin-top: 2em; }

.about_common > .inner { width: 59.92%; margin: 200px 0 0 30.21%; padding-top: 0; border-top: 1px solid #707070; position: relative; z-index: 2;}
.about_common_catch { font-size: 3.0rem; line-height: 1.4; margin: 110px 0 25px; }
.about_common .read p { line-height: 2.25; }
.about_common .mainph { margin-top: 70px; }

.about_service_item { display: flex; justify-content: space-between; margin-top: 126px; }
.about_service_item .ph { width: 54.76%; position: relative; }
.about_service_item .ph img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.about_service_item .txt { width: 38.69%; padding-bottom: 35px; border-bottom: 1px solid #707070; }
.about_service_item .num { display: flex; align-items: center; font-size: 1.6rem; font-weight: 600; }
.about_service_item .num.sp { display: none; }
.about_service_item .num:after { content: ""; display: block; height: 1px; margin-left: 13px; background: #707070; flex-grow: 2; }
.about_service_item .ttl { font-size: 2.4rem; line-height: 1.5; margin: 60px 0 30px; }

.about_list { margin-top: 80px; }
.about_list li { display: flex; border-bottom: 1px solid #C6C2B7; padding: 28px 0; line-height: 1.5; }
.about_list li .txt { font-size: 2.4rem; }
.about_list li .num { min-width: 42px; width: 42px; min-height: 42px; height: 42px; margin-right: 37px; background: #D3CDC1; border-radius: 50%; position: relative; }
.about_list li .num span { display: block; width: 100%; position: absolute; top: 50%; left: 0; font-size: 2.0rem; line-height: 1; text-align: center; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

.normal_tb { width: 100%; margin-top: 80px; }
.normal_tb th, .normal_tb td { font-size: 1.8rem; padding: 28px 0; border-bottom: 1px solid #C6C2B7; }
.normal_tb th { width: 10em; }
.normal_tb ._noline { font-size: 1.8rem; padding: 28px 0 0; border-bottom: none; }

@media screen and (max-width: 1024px) {
    .about_nav { display: none; }
    .about_top > .inner { width: 80.28%; max-width: 1120px; margin: 0 auto; border-top: 1px solid #707070; position: relative; z-index: 2;}
    .about_common > .inner { width: 80.28%; max-width: 1120px; margin: 64px auto 0; border-top: 1px solid #707070; position: relative; z-index: 2;}
}

@media screen and (max-width: 767px) {
.about_nav { width: 20.35%; height: 100%; padding-top: 200px; box-sizing: border-box; position: absolute; top: 0; left: 9.85%; z-index: 10; }
.about_nav > ul { position: sticky; top: 100px; }
.about_nav > ul li { font-size: 1.2rem; margin-bottom: 30px; }
.about_nav > ul li a { color: #fff; mix-blend-mode: exclusion; }

    .about_top { background: url("../img/about_mainph.jpg") no-repeat center / cover; padding: 139px 0 75px; position: relative; }
.about_top:after { content: ""; display: block; width: 100%; height: 100%; position: absolute; top: 0; left: 0; background: rgba(0,0,0,0.5); }
    .about_top > .inner { width: 87.69%; margin: 0 auto; border-top: 1px solid #707070; position: relative; z-index: 2;}
    .about_common > .inner { width: 87.69%; margin: 64px auto 0; border-top: 1px solid #707070; position: relative; z-index: 2;}
.about_common_hd { font-size: 1.6rem; margin-top: 8px; }
.about_top .about_common_hd { color: #fff; }
    .about_top_catch { font-size: 2.8rem; color: #fff; line-height: 1.8; margin-top: 30px; }
    .about_top_read { margin-top: 30px; }
    .about_top_read p { color: #fff; line-height: 2.5; }
.about_top_read p + p { margin-top: 2em; }

    .about_common > .Winner { width: 87.69%; margin: 50px auto 0; padding-top: 0; border-top: 1px solid #707070; position: relative; z-index: 2;}
    .about_common_catch { font-size: 2.8rem; line-height: 1.4; margin: 30px 0 25px; }
.about_common .read p { line-height: 2.25; }
    .about_common .mainph { width: 114.04%; margin: 40px 0 0 -7.02%; }

    .about_service_item { display: block; justify-content: space-between; margin-top: 60px; }
    .about_service_item .ph { width: auto; margin-top: 24px; padding-bottom: 52.63%; position: relative; }
.about_service_item .ph img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
    .about_service_item .txt { width: auto; padding-bottom: 20px; border-bottom: 1px solid #707070; }
.about_service_item .num.sp { display: flex; align-items: center; font-size: 1.6rem; font-weight: 600; }
    .about_service_item .num.pc { display: none; }
.about_service_item .num:after { content: ""; display: block; height: 1px; margin-left: 13px; background: #707070; flex-grow: 2; }
    .about_service_item .ttl { font-size: 2.4rem; line-height: 1.5; margin: 20px 0 10px; }

    .about_list { margin-top: 30px; }
    .about_list li { display: flex; align-items: center; border-bottom: 1px solid #C6C2B7; padding: 15px 0; line-height: 1.5; }
    .about_list li .txt { font-size: 1.8rem; }
    .about_list li .num { min-width: 42px; width: 42px; min-height: 42px; height: 42px; margin-right: 16px; background: #D3CDC1; border-radius: 50%; position: relative; }
.about_list li .num span { display: block; width: 100%; position: absolute; top: 50%; left: 0; font-size: 2.0rem; line-height: 1; text-align: center; -webkit-transform: translateY(-50%); transform: translateY(-50%); }

    .normal_tb { width: 100%; margin-top: 35px; }
    .normal_tb:not(._same) tbody,
    .normal_tb:not(._same) tr,
    .normal_tb:not(._same) th,
    .normal_tb:not(._same) td { display: block; }
.normal_tb th, .normal_tb td { font-size: 1.8rem; line-height: 1.7; padding: 16px 0; border-bottom: 1px solid #C6C2B7; }
    .normal_tb th { width: 100%; padding-bottom: 0; border-bottom: none; }
    .normal_tb td { padding-top: 8px; }
.normal_tb ._noline { font-size: 1.8rem; padding: 28px 0 0; border-bottom: none; }
}

/* Google Mapを囲う要素 */
.googlemap {
  position: relative;
  width: 100%;
  height: 0;
  margin-top: 16px;
  padding-top: 52.08%; /* 比率を4:3に固定 */
    border-radius: 5px;
    overflow: hidden; 
}
 
/* Google Mapのiframe */
.googlemap iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/*news*/
.archive_news_list { border-top: 1px solid #C6C2B7; }
.news_hd { font-size: 1.4rem; line-height: 1.7; }
.news_hd .ico { display: none; }
.news_cat { font-size: 1.4rem; margin: 30px 0; }
.news_cat li { line-height: 1.5; }
.news_cat li + li { margin-top: 10px; }
.news_cat li a { display: inline-block;opacity: 0.5; position: relative; padding-left: 11px; overflow: hidden; }
.news_cat li a span { display: inline-block; }
.news_cat li.active a { opacity: 1; }
.news_cat li.active a:before { content: ""; display: block; width: 6px; height: 6px; border-radius: 50%; background: #46413C; position: absolute; left: 0px; top: 8px; }
.news_cat li a:after { left: 11px; }
.news_reset { font-size: 1.4rem; }

.page_nav { font-size: 1.6rem; display: flex; align-items: center; justify-content: space-between; margin-top: 100px; }
.page_nav .prev { width: 150px; }
.page_nav .prev a { width: 150px; display: flex; align-items: center; justify-content: flex-start; }
.page_nav .prev a .ico { margin-right: 10px; transform: scale(-1, 1);  }
.page_nav .index { text-align: center; flex-grow: 2;}
.page_nav .next { width: 150px; text-align: right; }
.page_nav .next a { width: 150px; display: flex; align-items: center; justify-content: flex-end; }
.page_nav .next a .ico { margin-left: 10px; }

.page_nav { display: flex; justify-content: center; align-items: center; padding: 0 300px; position: relative; }
.page_nav .prev,
.page_nav .next { display: block; width: 23.75%; max-width: 266px; position: absolute;  font-size: 1.4rem; text-align: center; display: block; background: #888888; border: 1px solid #888; color: #fff; padding: 12px 0; box-sizing: border-box; }
.page_nav .prev { left: 0; }
.page_nav .next { right: 0; }
.page_nav .page-numbers:not(.prev):not(.next) { font-size: 1.6rem; margin: 0 15px; }
.page_nav .prev .ico,
.page_nav .next .ico { line-height: 0; }
.page_nav .prev .ico svg,
.page_nav .next .ico svg { width: 6px; }
.page_nav .prev .ico svg line,
.page_nav .next .ico svg line { stroke: #fff; }
.page_nav .prev .ico,
.page_nav .next .ico { position: absolute; top: 50%; }
.page_nav .prev .ico { left: 23px; -webkit-transform: scale(-1, 1) translateY(-50%); transform: scale(-1, 1) translateY(-50%); }
.page_nav .next .ico { right: 23px; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.page_nav span { border-bottom: 1px solid #000; }

@media screen and (max-width: 1024px) {
    .news_hd { cursor: pointer; }
    .news_hd .ico { display: inline-block; line-height: 1; margin-left: 8px; -webkit-transition: transform 0.5s cubic-bezier(.16,1,.3,1); transition: transform 0.5s cubic-bezier(.16,1,.3,1); }
    .news_hd.active .ico { transform: scale(1, -1); }
    .common_sidebar .news_cat { display: none; }
}

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

/*news single*/
.single_news_index { width: 80.28%; max-width: 1120px; margin: 160px auto 0; font-size: 1.6rem; }
.single_news_index a { display: flex; align-items: center; }
.single_news_index .ico { line-height: 0; margin-right: 10px; }
.single_news_index .txt { position: relative; display: inline-block; overflow: hidden; line-height: 1.2; }
.single_news_head { width: 80.28%; max-width: 1120px; margin: 60px auto 0; }
.single_news_ph img { width: 100%; margin-top: 45px; height: 400px; object-fit: cover; }
.single_news_body { width: 80.28%; max-width: 1120px; margin: 60px auto 0; }
.single_news_head .date { font-size: 1.6rem; margin-right: 65px; font-weight: 700; }
.single_news_head .cat { font-size: 1.6rem; }
.single_news_head .cat a { display: inline-block; margin-right: 32px; overflow: hidden; position: relative; line-height: 1.2; }
.single_news_head .ttl { font-size: 3.2rem; line-height: 1.5; margin-top: 50px;  }

.single_news_body h1,
.single_news_body h2,
.single_news_body h3,
.single_news_body h4,
.single_news_body h5,
.single_news_body h6 { font-size: 2.0rem; margin-top: 56px; }
.single_news_body h1 + *,
.single_news_body h2 + *,
.single_news_body h3 + *,
.single_news_body h4 + *,
.single_news_body h5 + *,
.single_news_body h6 + * { margin-top: 25px; }
.single_news_body > * + * { margin-top: 2em; }

.single_news_body ul li { font-size: 1.6rem; list-style-type: disc; }
.single_news_body ol li { font-size: 1.6rem; list-style-type: decimal; }
.single_news_body ul,
.single_news_body ol { padding-left: 2em; }



@media screen and (max-width: 767px) {
    .single_news_index { width: 87.69%; margin: 160px auto 0; font-size: 1.6rem; }
.single_news_index a { display: flex; align-items: center; }
.single_news_index .ico { line-height: 0; margin-right: 10px; }
    .single_news_head { width: 87.69%; margin: 45px auto 0; }
    .single_news_ph img { width: 100%; margin-top: 30px; height: 200px; object-fit: cover; }
    .single_news_body { width: 87.69%; margin: 30px auto 0; }
    .single_news_head .date { display: block; font-size: 1.6rem; margin-right: 65px; font-weight: 700; }
    .single_news_head .cat { display: block; font-size: 1.6rem; margin-right: 16px; }
    .single_news_head .cat a { display: inline-block; margin-right: 16px; }
    .single_news_head .ttl { font-size: 2.4rem; line-height: 1.5; margin-top: 30px;  }

}

/*faq*/
.faq_list .ttl { font-size: 1.8rem; }
.faq_list_item { margin-top: 18px; border-bottom: 1px solid #C6C2B7; position: relative; }
.faq_list_item .q { display: flex; padding: 15px 0; line-height: 1.5; cursor: pointer;}
.faq_list_item .q .txt { font-size: 1.8rem; padding-right: 50px; }
.faq_list_item .q .num { min-width: 32px; width: 32px; min-height: 32px; height: 32px; margin-right: 20px; background: #D3CDC1; border-radius: 50%; position: relative; }
.faq_list_item .q .num span { display: block; width: 100%; position: absolute; top: 50%; left: 0; font-size: 1.8rem; font-weight: 600; line-height: 1; text-align: center; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.faq_list_item .q .arrow { position: absolute; right: 0; top: 20px; -webkit-transition: transform 0.5s cubic-bezier(.16,1,.3,1); transition: transform 0.5s cubic-bezier(.16,1,.3,1); }
.faq_list_item .q.active .arrow { transform: scale(1, -1); }
.faq_list_item .a { display: none; font-size: 1.6rem; margin-bottom: 18px; padding-left: 52px; }
.faq_list + .faq_list { margin-top: 70px; }

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

}

@media screen and (max-width: 767px) {
.faq_list .ttl { font-size: 1.8rem; }
    .faq_list_item { margin-top: 0; border-bottom: 1px solid #C6C2B7; position: relative; }
.faq_list_item .q { display: flex; padding: 16px 0; line-height: 1.5; cursor: pointer;}
    .faq_list_item .q .txt { font-size: 1.6rem; padding-right: 50px; }
    .faq_list_item .q .num { min-width: 32px; width: 32px; min-height: 32px; height: 32px; margin-right: 11px; background: #D3CDC1; border-radius: 50%; position: relative; }
.faq_list_item .q .num span { display: block; width: 100%; position: absolute; top: 50%; left: 0; font-size: 1.8rem; line-height: 1; text-align: center; -webkit-transform: translateY(-50%); transform: translateY(-50%); }
.faq_list_item .q .arrow { position: absolute; right: 0; top: 20px; }
    .faq_list_item .a { display: none; font-size: 1.4rem; margin-bottom: 18px; padding-left: 43px; }
    .faq_list + .faq_list { margin-top: 50px; }
}

/*privacy*/
.privacy_item { margin-top: 30px; }
.privacy_item:first-child { margin-top: 45px; }
.privacy_item._inquery { margin-top: 60px; }
.privacy_item .hd { font-size: 2.0rem; font-weight: 600; }
.privacy_item .sub { font-size: 1.6rem; font-weight: 600; }
.privacy_item > * + * { margin-top: 8px; }
.privacy_item li { font-size: 1.6rem; line-height: 1.5; }
.privacy_item ol li { list-style: decimal; margin-left: 1.5em; }
.privacy_item ul li { padding-left: 1em; }
.privacy_item ul li:before { content: "・"; display: inline-block; position: absolute; left: 0; }



/*partner*/
.select_cat { width: 100%; padding: 12px 40px 12px 20px; box-sizing: border-box; background: #F3EFE6; border: none; border-radius: 30px; font-size: 1.4rem; }
.partner_list { display: flex; border-top: 1px solid #C6C2B7; position: relative; }
.partner_list + .partner_list { margin-top: 50px;}
.partner_list_box { flex-grow: 2; }
.partner_list .ttl { min-width: 136px; width: 136px; padding-top: 25px; font-size: 1.8rem; line-height: 1.5; }
.partner_list .ttl .num { font-size: 1.2rem; }
.partner_list_item { display: flex; align-items: flex-start; padding: 25px 0; position: relative; }
.partner_list_item + .partner_list_item { border-top: 1px solid #C6C2B7; }
.partner_list_item .ph { min-width: 174px; width: 174px; position: relative; }
.partner_list_item .ph > div { padding-bottom: 100%; position: relative; }
.partner_list_item .ph > div img { width: 100%; height: 100%; position: absolute; object-fit: cover; }
.partner_list_item .cat { font-size: 1.4rem; line-height: 1; position: absolute; left: 6px; bottom: 4px; padding: 2px 8px; background: #fff; border-radius: 20px; }
.partner_list_item .txt { margin-left: 16px; flex-grow: 2; }
.partner_list_item .txt .name { font-size: 1.8rem; }
.partner_list_item .txt .address,
.partner_list_item .txt .tel { font-size: 1.4rem; line-height: 1.7; margin-top: 8px; padding-left: 18px; position: relative; }
.partner_list_item .txt .address { margin-top: 20px;}
.partner_list_item .txt .address .ico,
.partner_list_item .txt .tel .ico { position: absolute; left: 0; line-height: 1.2; }
.partner_list_item .link { min-width: 85px; width: 85px; font-size: 1.6rem; line-height: 1.5; text-align: right; align-self: center; }
.partner_list_item .link .ico { display: inline-block; line-height: 1; vertical-align: top; margin-left: 6px; }

@media screen and (max-width: 1024px) {
    .select_box { display: flex; justify-content: space-between; margin-top: 15px; }
    .select_cat_wrap { width: 48.53%;}
    .select_cat { width: 100%; margin-top: 0; padding: 12px 20px; box-sizing: border-box; background: #F3EFE6; border: none; border-radius: 30px; font-size: 1.4rem; }
}

@media screen and (max-width: 767px) {
    .partner_list { display: flex; flex-wrap: wrap; border-top: 1px solid #C6C2B7; position: relative; }
    .partner_list + .partner_list { margin-top: 80px;}
    .partner_list .ttl { min-width: auto; width: 100%; padding-top: 25px; font-size: 1.8rem; line-height: 1.5; }
.partner_list .ttl .num { font-size: 1.2rem; }
    .partner_list_item { display: flex; align-items: stretch; padding: 20px 0; position: relative; }
.partner_list_item + .partner_list_item { border-top: 1px solid #C6C2B7; }
    .partner_list_item .ph { min-width: auto; width: 36.84%; }
    .partner_list_item .cat { display: inline-block; font-size: 1.4rem; line-height: 1; position: absolute; left: auto; bottom: auto; margin-top: calc(100% + 12px); padding: 2px 8px; background: #fff; border-radius: 20px; }
    .partner_list_item .txt { width: 58.49%; margin-left: 4.67%; flex-shrink: 2; }
    .partner_list_item .txt .name { font-size: 1.8rem; line-height: 1.5; }
.partner_list_item .txt .address,
.partner_list_item .txt .tel { font-size: 1.4rem; line-height: 1.7; margin-top: 8px; padding-left: 18px; position: relative; }
    .partner_list_item .txt .address { margin-top: 8px;}
.partner_list_item .txt .address .ico,
.partner_list_item .txt .tel .ico { position: absolute; left: 0; line-height: 1.2; }
    .partner_list_item .link { min-width: auto; width: 100%; margin-top: 8px; font-size: 1.6rem; line-height: 1.5; text-align: right; align-self: center; }
.partner_list_item .link .ico { display: inline-block; line-height: 1; vertical-align: top; margin-left: 6px; }  
}

/*partnership*/
.partnership_top { position: relative; }
.partnership_top_ph { width: 100%; height: 100vh; }
.partnership_top_ph:before { content: ""; display: block; width: 100%; height: 100%; position: absolute; background: rgba(0,0,0,0.2); z-index: 2; }
.partnership_top_ph img { width: 100%; height: 100%; position: absolute; object-fit: cover; z-index: 1; }
.partnership_top_txt { width: 620px; position: absolute; left: 5.85%; bottom: 56px; z-index: 3; }
.partnership_top_txt * { color: #fff; }
.partnership_top_txt .catch { font-size: 6.4rem; line-height: 1.2; }
.partnership_top_txt .read { font-size: 1.8rem; line-height: 1.75; margin-top: 25px; }
.partnership_top_txt .btn a { display: inline-block; width: 396px; margin-top: 30px; padding: 15px 0; background: #A9854F; border-radius: 4px; font-size: 2.0rem; font-weight: 600; color: #fff; text-align: center; box-shadow: 0 0 10px 0 rgba(255, 255, 255, .5); }

.partnership_reason { margin-top: 100px; }
.partnership_reason .ttl { font-size: 2.8rem; text-align: center; }
.partnership_reason .read { font-size: 2.0rem; color: #9A866E; text-align: center; }
.partnership_reason_list { display: flex; justify-content: space-between; width: 80.28%; max-width: 1120px; margin: 50px auto 0; }
.partnership_reason_item { width: 30.96%; }
.partnership_reason_item .hd { font-size: 2.0rem; margin: 10px 0 5px; }

.partnership_common_hd .font_en { font-size: 12.3rem; line-height: 1; color: #461517; }
.partnership_common_hd .ja { font-size: 2.0rem; color: #461517; }

.partnership_service { background: rgba(255,255,255,0.6); margin-top: 170px; padding-bottom: 287px; }
.partnership_service._odd { margin-top: 0; }
.partnership_service > .inner { width: 80.28%; max-width: 1120px; margin: 0 auto; }
.partnership_service .partnership_common_hd { position: relative; top: -70px; }
.partnership_service_nav { display: flex; justify-content: space-between; margin: 50px 0 150px; }
.partnership_service_nav a { width: 19.21%; text-align: center; padding-bottom: 20px!important; background: url("../img/partnership_arrow_service.svg") no-repeat center bottom; }
.partnership_service_nav a:first-child { margin-right: 3.86%;}
.partnership_service_nav a:nth-child(2),
.partnership_service_nav a:nth-child(3) { border-left: 1px solid #9A866E; padding: 0 3.86%; }
.partnership_service_nav a:nth-child(3) { margin-right: 3.86%; border-right: 1px solid #9A866E;}
.partnership_service_nav .hd { margin-top: 20px; font-size: 2.0rem; font-weight: 600; color: #9A866E; line-height: 1.5; }
.partnership_service_nav .hd span { font-size: 1.4rem; }
.partnership_service_nav .num { font-size: 2.2rem; line-height: 34px; width: 34px; height: 34px; background: #9A866E; color: #fff; }

.partnership_service_item { width: 112.27%; display: flex; justify-content: space-between; margin-top: 125px; }
.partnership_service_item:nth-child(2n+1) { margin-left: -12.27%; }
.partnership_service_item:nth-child(2n) { margin-right: -12.27%; flex-direction: row-reverse; }
.partnership_service_item .ph { width: 48.57%; }
.partnership_service_item .txt { width: 43.89%; align-self: center; }
.partnership_service_item .hd { display: flex; align-items: center; margin-bottom: 20px; }
.partnership_service_item .hd .ico { width: 79px; }
.partnership_service_item .ttl { font-size: 2.8rem; line-height: 1.5; margin-left: 36px; }
.partnership_service_item .ttl span { font-size: 2.4rem; }
.partnership_service_item p + p { margin-top: 2em; }
.partnership_service_item .tool { display: flex; flex-wrap: wrap;}
.partnership_service_item .tool dt { font-size: 1.6rem; color: #9A866E; width: 120px; line-height: 1.5; padding: 20px 0; border-bottom: 1px solid #9A866E; }
.partnership_service_item .tool dd { font-size: 1.4rem; width: calc(100% - 120px); padding: 20px 0; border-bottom: 1px solid #9A866E; }
.partnership_service_item .tool .nobd { border: none; }

.partnership_project { margin-top: 17.0rem; }
.partnership_project._even { padding-bottom: 190px; }
.partnership_project > .inner { width: 80.28%; max-width: 1120px; margin: 0 auto; }
.partnership_project .partnership_common_hd { position: relative; top: -70px; }
.partnership_project_slide { overflow-x: hidden; }
.partnership_project_slidebox { width: 83.18%; margin: 0 auto; position: relative; }
.partnership_project_slidebox .name { margin-top: 23px; font-size: 2.0rem; text-align: center; }
.partnership_project_slidebox .link_more { margin-top: 15px; }
.partnership_project_slidebox .link_more a { justify-content: center; color: #461517; }
.partnership_project_slidebox .link_more .more_ico { background: rgba(154,134,110,0.7); }
.partnership_project_slidebox .link_more .more_txt:after { color: #461517; }

.partnership_voice > .inner { width: 80.28%; max-width: 1120px; margin: 190px auto 0; }
.partnership_voice_list { display: flex; justify-content: space-between; margin-top: 65px; }
.partnership_voice_item { width: 49.28%; position: relative; }
.partnership_voice_item .ico { display: block; width: 100px; height: 100px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); z-index: 2; }

.partnership_process {/* background: rgba(255,255,255,0.6);*/ margin-top: 270px; padding-bottom: 170px; }
.partnership_process._even { margin-top: 0; }
.partnership_process > .inner { width: 80.28%; max-width: 1120px; margin: 190px auto 0; }
.partnership_process._even > .inner { margin-top: 0; }
.partnership_process .partnership_common_hd { position: relative; top: -70px; }
.partnership_process_item { display: flex; margin-top: 48px; }
.partnership_process_item .hd { min-width: 30px; width: 30px; display: flex; flex-direction: column; align-items: center; }
.partnership_process_item .hd .txt { font-size: 1.2rem; color: #461517; }
.partnership_process_item .hd .num { font-size: 2.4rem; color: #461517; font-weight: 700; line-height: 1.2; }
.partnership_process_item .hd:after { content: ""; display: block; width: 1px; min-height: 112px; margin-top: 12px; flex-grow: 2; background: #9A866E; }
.partnership_process_item > .ico { min-width: 124px; width: 124px; margin: 0 65px; text-align: center; }
.partnership_process_item .ttl { font-size: 1.8rem; margin-bottom: 15px; }
.partnership_process_item p + p { margin-top: 1em; }
.partnership_process_item .name { color: #461517;}
.partnership_process_btn { text-align: center; margin-top: 150px; }
.partnership_reason .partnership_process_btn { margin-top: 65px; }
.partnership_process_btn a { display: inline-block; width: 396px; padding: 15px 0; background: #9A866E; border-radius: 4px; font-size: 2.0rem; font-weight: 600; color: #fff; }
.partnership_process_banner { max-width: 600px; width: 90%; margin: 80px auto 0; }

.partnership_project .swiper-pagination-bullet { display: none; width: auto; height: auto; }
.partnership_project .swiper-pagination-bullet:has(+ .swiper-pagination-bullet-active),
.partnership_project .swiper-pagination-bullet-active + .swiper-pagination-bullet { display: flex; width: 50px; justify-content: space-between; align-items: center; background: none; font-size: 2.0rem; color: #461517; opacity: 1; position: absolute; }
.partnership_project .swiper-pagination-bullet:has(+ .swiper-pagination-bullet-active) { left: 0; }
.partnership_project .swiper-pagination-bullet-active + .swiper-pagination-bullet { right: 0; }
.partnership_project .swiper-pagination-bullet:has(+ .swiper-pagination-bullet-active):before { content: ""; display: block; background: url("../img/partnership_arrow_slide.svg") no-repeat left center; width: 13px; height: 24px;transform: scale(-1, 1); }
.partnership_project .swiper-pagination-bullet-active + .swiper-pagination-bullet:after { content: ""; display: block; background: url("../img/partnership_arrow_slide.svg") no-repeat left center; width: 13px; height: 24px; }
.partnership_project .swiper-pagination-bullet-active { display: block; }
.partnership_project .swiper-pagination-bullet-active span { display: none; }
.partnership_project .swiper-pagination-bullet-active:before { content: ""; display: block; width: 33px; height: 1px; background: #461517; position: absolute; left: 50%; top: 50%; -webkit-transform: translateX(-50%); transform: translateX(-50%); }

.partnership_project_slidebox .swiper-pagination { width: 205px!important; height: 25px; display: flex; position: absolute; top: -50px!important; right: 0; left: auto!important; }
.nav-btn { display: flex; width: 65px; justify-content: space-between; align-items: center; background: none; font-size: 2.0rem; color: #461517; opacity: 1; position: absolute; border: none; cursor: pointer; }
.prev-btn { left: 0; }
.next-btn { right: 0; }
.prev-btn .arrow { content: ""; display: block; background: url("../img/partnership_arrow_slide.svg") no-repeat left center; width: 13px; height: 24px;transform: scale(-1, 1); }
.next-btn .arrow { content: ""; display: block; background: url("../img/partnership_arrow_slide.svg") no-repeat left center; width: 13px; height: 24px; }
.separator { display: block; width: 3.0rem; height: 1px; background: #461517; position: absolute; left: 50%; top: 50%; transform: translateX(-50%); }

.partnership_contact > .inner { width: 80.28%; max-width: 1120px; margin: 0 auto; }
.partnership_contact_form { width: 75%; margin: 0 auto; }
.partnership_contact .partnership_common_hd { position: relative; top: -70px; }

._odd { background: #EAE4D4!important; }
._even { background: rgba(255,255,255,0.6)!important; }

body.partnership-andbarn .global_nav,
body.partnership-andbarn .btn_humberger_box,
body.partnership-andbarn .function_nav,
body.partnership-andbarn .footer_nav,
body.partnership-andbarn .footer_link,
body.partnership-andbarn .footer_function .link a:nth-child(n+2) { display: none; }

@media screen and (max-width: 767px) {
.partnership_top { position: relative; }
    .partnership_top_ph { width: 100%; height: 100vh; height: 100svh; }
.partnership_top_ph:before { content: ""; display: block; width: 100%; height: 100%; position: absolute; background: rgba(0,0,0,0.2); z-index: 2; }
.partnership_top_ph img { width: 100%; height: 100%; position: absolute; object-fit: cover; z-index: 1; }
    .partnership_top_txt { width: 87.69%; position: absolute; left: 50%; bottom: 79px; -webkit-transform: translateX(-50%); transform: translateX(-50%); z-index: 3; }
.partnership_top_txt * { color: #fff; }
    .partnership_top_txt .catch { font-size: 4.2rem; line-height: 1.2; text-align: center; }
.partnership_top_txt .read { font-size: 1.8rem; line-height: 1.75; margin-top: 25px; }
    .partnership_top_txt .btn a { display: inline-block; width: 100%; margin-top: 30px; padding: 10px 0; background: #A9854F; border-radius: 4px; font-size: 1.8rem; font-weight: 600; color: #fff; text-align: center; box-shadow: 0 0 10px 0 rgba(255, 255, 255, .5); }

    .partnership_reason { margin-top: 40px; }
    .partnership_reason .ttl { font-size: 2.4rem; text-align: center; }
    .partnership_reason .read { font-size: 2.0rem; color: #9A866E; text-align: center; }
    .partnership_reason_list { display: block; justify-content: space-between; width: 87.69%; max-width: 1120px; margin: 30px auto 0; }
    .partnership_reason_item { width: auto; }
    .partnership_reason_item + .partnership_reason_item { margin-top: 30px;}
    .partnership_reason_item .ph img { width: 100%; }
.partnership_reason_item .hd { font-size: 2.0rem; margin: 10px 0 5px; }

    .partnership_common_hd .font_en { font-size: 8.0rem; line-height: 1; }
.partnership_common_hd .ja { font-size: 2.0rem; color: #461517; }

    .partnership_service { background: rgba(255,255,255,0.6); margin-top: 108px; padding-bottom: 150px; }
    .partnership_service > .inner { width: 87.69%; max-width: 1120px; margin: 0 auto; }
.partnership_service .partnership_common_hd { position: relative; top: -40px; }
    .partnership_service_nav { display: flex; justify-content: space-between; flex-wrap: wrap; margin: 50px 0; }
    
    .partnership_service_nav a { width: 48.53%; text-align: center; margin-bottom: 35px; padding-bottom: 20px!important; background: url("../img/partnership_arrow_service.svg") no-repeat center bottom;border: none!important; margin-left: 0!important; }
    .partnership_service_nav a:first-child { margin-right: 0;}
    .partnership_service_nav a:nth-child(2),
    .partnership_service_nav a:nth-child(3) { padding: 0; }
    .partnership_service_nav a:nth-child(3) { margin-right: 0; }
    .partnership_service_nav a:nth-child(2n) { margin-left: 2.94%!important; }
    
    .partnership_service_nav .hd { margin-top: 20px; font-size: 1.8rem; font-weight: 600; color: #9A866E; line-height: 1.5; }
.partnership_service_nav .hd span { font-size: 1.4rem; }
.partnership_service_nav .num { font-size: 2.2rem; line-height: 34px; width: 34px; height: 34px; background: #9A866E; color: #fff; }

    .partnership_service_item { width: 114.04%; display: block; justify-content: space-between; margin: 60px 0 0 -7.02%!important; }
    .partnership_service_item .ph { width: auto; }
    .partnership_service_item .txt { width: 87.69%; margin: 20px auto 0; }
.partnership_service_item .hd { display: flex; align-items: center; margin-bottom: 20px; }
    .partnership_service_item .hd .ico { width: 66px; }
    .partnership_service_item .ttl { font-size: 2.4rem; line-height: 1.5; margin-left: 21px; }
.partnership_service_item .ttl span { font-size: 2.4rem; }
.partnership_service_item p + p { margin-top: 2em; }
.partnership_service_item .tool { display: flex; flex-wrap: wrap;}
    .partnership_service_item .tool dt { font-size: 1.6rem; color: #9A866E; width: 100%; line-height: 1.5; padding: 15px 0 0; border-bottom: none; }
    .partnership_service_item .tool dd { font-size: 1.4rem; width: 100%; padding: 5px 0 15px; border-bottom: 1px solid #9A866E; }
.partnership_service_item .tool .nobd { border: none; }

    .partnership_project > .inner { width: 87.69%; max-width: 1120px; margin: 0 auto; }
    .partnership_project .partnership_common_hd { position: relative; top: -40px; }
    .partnership_project_slide { width: 114.04%; margin: 0 0 0 -7.02%; overflow: hidden; }
    .partnership_project_slidebox { width: 100%; margin: 0 auto; position: relative; }

    .partnership_voice > .inner { width: 87.69%; max-width: 1120px; margin: 150px auto 0; }
    .partnership_voice_list { display: block; justify-content: space-between; margin-top: 28px; }
    .partnership_voice_item { display: block; width: auto; position: relative; }
    .partnership_voice_item + .partnership_voice_item { margin-top: 15px; }
.partnership_voice_item .ico { display: block; width: 100px; height: 100px; position: absolute; top: 50%; left: 50%; -webkit-transform: translate(-50%,-50%); transform: translate(-50%,-50%); z-index: 2; }

    .partnership_process { margin-top: 150px; padding-bottom: 130px; }
    .partnership_process > .inner { width: 87.69%; max-width: 1120px; margin: 0 auto; }
    .partnership_process .partnership_common_hd { position: relative; top: -40px; }
.partnership_process_item { display: flex; margin-top: 48px; }
.partnership_process_item .hd { min-width: 30px; width: 30px; display: flex; flex-direction: column; align-items: center; }
.partnership_process_item .hd .txt { font-size: 1.2rem; color: #461517; }
.partnership_process_item .hd .num { font-size: 2.4rem; color: #461517; font-weight: 700; line-height: 1.2; }
.partnership_process_item .hd:after { content: ""; display: block; width: 1px; min-height: 112px; margin-top: 12px; flex-grow: 2; background: #9A866E; }
    .partnership_process_item .ico { text-align: center; margin-right: 16px; }
    .partnership_process_item .ico img { height: 61px; }
    .partnership_process_item .body { margin-left: 24px; }
    .partnership_process_item .ttl { font-size: 1.8rem; margin-bottom: 15px; display: flex; align-items: center; }
.partnership_process_item p + p { margin-top: 1em; }
    .partnership_process_btn { text-align: center; margin-top: 100px; }
    .partnership_process_btn a { display: inline-block; max-width: 300px; width: 90%; padding: 15px 0; background: #9A866E; border-radius: 4px; font-size: 2.0rem; font-weight: 600; color: #fff; }
    
    .partnership_project .swiper-pagination { width: 205px!important; height: 30px; display: flex; position: absolute; top: auto!important; bottom: -50px!important; right: auto; left: 50%!important; -webkit-transform: translateX(-50%); transform: translateX(-50%); }

    .partnership_contact > .inner { width: 87.69%; max-width: 1120px; margin: 0 auto; }
    .partnership_contact_form { width: auto; margin: 0 auto; }
    .partnership_contact .partnership_common_hd { position: relative; top: -40px; }
    .partnership_contact .normal_tb._contact { margin-top: 0; }
}


/*contact*/
.contact_ttl { font-size: 1.4rem; margin-bottom: 30px; }
.contact_read { font-size: 1.4rem; }
.contact_read + .contact_read { margin-top: 2em; }
.contact_link { margin-top: 10px;}
.contact_link a { display: block; max-width: 154px; font-size: 1.4rem; border-bottom: 1px solid #707070; }

.normal_tb._contact { margin-top: 0; border-top: 1px solid #C6C2B7; }
.normal_tb._contact th { width: 28%;}
.required:before { content: ""; display: inline-block; width: 10px; height: 10px; margin-left: 4px; background: #D05C62; border-radius: 50%; }

.input_txt { width: 100%; padding: 12px 0; background: none; box-sizing: border-box; border: none; font-size: 1.6rem; }
textarea.message { width: 100%; height: 300px; padding: 0; background: none; box-sizing: border-box; border: none; font-size: 1.6rem; }
.select { width: 100%; padding: 12px 30px; box-sizing: border-box; background: #F3EFE6; border: none; border-radius: 30px; font-size: 1.6rem; }
.select_wrap { width: 77.38%; position: relative; }
.select_cat_wrap { margin-top: 35px; position: relative; }
.select_wrap::after,
.select_cat_wrap::after {
    content: "";
    display: block;
    position: absolute;
    top: 17px;
    right: 17px;
    width: 8px;
    height: 8px;
    border-right: 2px solid #333;
    border-bottom: 2px solid #333;
    transform: rotate(45deg);
}
select {
    -webkit-appearance: none;
    appearance: none;
}
.input_txt::placeholder, textarea.message::placeholder { color: #999; }
.label_type .inq-type { display: flex; flex-wrap: wrap; }
.label_type .wpcf7-list-item { width: 100%; margin: 0 0 5px; }
.normal_tb._contact .wpcf7-list-item { margin-right: 20px;}
.normal_tb._contact input[type="checkbox"] { margin-top: 0; }
.contact_footer { display: flex; justify-content: space-between; }
.privacy_notes { font-size: 1.6rem; margin: 40px 0 25px; }
.privacy_box { font-size: 1.4rem; }
.check_privacy { vertical-align: baseline; }

.btn_submit { background: #A29069; color: #fff; font-size: 1.4rem; font-weight: 700; text-align: center; width: 190px; padding: 12px 0; border-radius: 4px!important; }
.btn_submit:disabled { background: #9F9C96; }

.wpcf7-radio input { vertical-align: baseline; }
.wpcf7-spinner { display: none!important; }

.grecaptcha-badge { visibility: hidden; }

@media screen and (max-width: 767px) {
    .contact_ttl { font-size: 1.4rem; margin-bottom: 15px; }
.contact_read { font-size: 1.4rem; }
.contact_link { margin-top: 10px;}
.contact_link a { display: block; max-width: 154px; font-size: 1.4rem; border-bottom: 1px solid #707070; }

.normal_tb._contact { margin-top: 0; border-top: 1px solid #C6C2B7; }
    .normal_tb._contact tbody,
    .normal_tb._contact tr,
    .normal_tb._contact th,
    .normal_tb._contact td { display: block; font-size: 1.4rem; }
    .normal_tb._contact th { width: 100%; border-bottom: none; padding: 30px 0 0; }
    .normal_tb._contact td { padding: 0 0 30px; }
.required:before { content: ""; display: inline-block; width: 10px; height: 10px; margin-left: 4px; background: #D05C62; border-radius: 50%; }
    .normal_tb._contact { margin-top: 65px;}

    .input_txt { width: 100%; padding: 12px 0; background: none; box-sizing: border-box; border: none; font-size: 1.4rem; }
    textarea.message { width: 100%; height: 300px; padding: 0; background: none; box-sizing: border-box; border: none; font-size: 1.4rem; }
    .select { width: 100%; padding: 12px 30px; box-sizing: border-box; background: #F3EFE6; border: none; border-radius: 30px; font-size: 1.4rem; }
    .select_wrap p,
    .select_wrap { width: 100%; }
.input_txt::placeholder, textarea.message::placeholder { color: #999; }
.label_type .inq-type { display: flex; flex-wrap: wrap; }
.label_type .wpcf7-list-item { width: 100%; margin: 0 0 5px; }
    .contact_footer { display: block; text-align: center; }
    .privacy_notes { font-size: 1.4rem; margin: 40px 0 50px; }
    .privacy_box { font-size: 1.4rem; margin-bottom: 30px; }
.check_privacy { vertical-align: baseline; }
}

/*thanks*/
.thanks_body { width: 63.01%; margin: 0 auto 150px; }
.thanks_body .ttl { font-size: 3.0rem; margin-bottom: 50px;  }

@media screen and (max-width: 1024px) {
    .thanks_body .ttl { font-size: 1.8rem; margin-bottom: 20px;  }
}

@media screen and (max-width: 767px) {
    .thanks_body { width: 86.66%; margin: 0 auto 90px; }
}

/*form*/
.wpcf7-not-valid-tip { display: none!important; }
.formError .formErrorContent { font-size: 1.4rem!important; color: #B51C1F!important; margin-top: 5px; background: none!important; border: none!important;
box-shadow: none!important; 
-moz-box-shadow: none!important;
-webkit-box-shadow: none!important; 
-o-box-shadow: none!important; }
.wpcf7-radio.product .formError,
.wpcf7-checkbox.know .formError { top: auto!important; bottom: -10px!important; }
.privacy_box .formError .formErrorContent { padding: 0 0 0 10px; }
.formError .formErrorArrowBottom { display: none!important; }
.wpcf7 form.sent .wpcf7-response-output,
.wpcf7 form.failed .wpcf7-response-output,
.wpcf7 form.aborted .wpcf7-response-output,
.wpcf7 form.spam .wpcf7-response-output,
.wpcf7 form.invalid .wpcf7-response-output,
.wpcf7 form.unaccepted .wpcf7-response-output,
.wpcf7 form.init .wpcf7-response-output,
.wpcf7 form.resetting .wpcf7-response-output,
.wpcf7 form.submitting .wpcf7-response-output { display: none!important; }

.wpcf7-list-item { margin-left: 0!important; }

.wpcf7-radio.product,
.wpcf7-checkbox.know { display: block; padding-bottom: 20px; }

.grecaptcha-badge { visibility: hidden; }
.notes_privacy { font-size: 1.2rem; color: #666; margin-top: 20px; }
.notes_privacy a { color: inherit; }

@media screen and (max-width: 900px) {
    .notes_privacy { font-size: 1.2rem; }
}

/*link*/
*.link_txt { text-decoration: underline!important; }
.partner_list_item .link a { border-bottom: 1px solid #000; }

@media screen and (min-width: 900px) {   
    *.link_txt:hover { text-decoration: none!important; }
    .partner_list_item .link a:hover { border-bottom: none; }
    
    .top_news_cat li a:hover { opacity: 1; }
    
    .top_news_item img,
    .nav_lineup_list a img { -webkit-transition: transform 1.0s cubic-bezier(.16,1,.3,1); transition: transform 1.0s cubic-bezier(.16,1,.3,1); -webkit-transform-origin: center; transform-origin: center; }
    .top_news_item:hover .ph img,
    .nav_lineup_list a:hover img  { -webkit-transform: scale(1.07); transform: scale(1.07); }
    
    .link_more .ico_arrow_img,
    .top_function_item .ico_arrow_img,
    .footer_link_item .ico_arrow_img { -webkit-transition: fill 0.3s cubic-bezier(0.36, 0.14, 0, 1); transition: fill 0.3s cubic-bezier(0.36, 0.14, 0, 1); }
    .link_more:hover .ico_arrow_img,
    .top_function_item:hover .ico_arrow_img,
    .footer_link_item:hover .ico_arrow_img { fill: #fff; }
    .link_more .more_ico,
    .top_function_item .more_ico,
    .footer_link_item .more_ico { -webkit-transition: background 0.3s cubic-bezier(0.36, 0.14, 0, 1); transition: background 0.3s cubic-bezier(0.36, 0.14, 0, 1); }
    .link_more:hover .more_ico,
    .top_function_item:hover .more_ico,
    .footer_link_item:hover .more_ico { background: rgba(69,65,61,1); }
    
    .link_more .more_txt span,
    ._linkAction > span { display: block; transition: opacity 650ms,transform 650ms cubic-bezier(0.165, 0.84, 0.44, 1); }
    .link_more:hover .more_txt span,
    ._linkAction:hover > span { opacity: 0; transform: translate3d(0, -130%, 0); }
    .link_more .more_txt:after,
    ._linkAction:after { content: attr(data-text); position: absolute; top: 130%; left: 0; opacity: 0; transition: opacity 650ms,transform 650ms cubic-bezier(0.165, 0.84, 0.44, 1); }
    .link_more:hover .more_txt:after,
    ._linkAction:hover:after { opacity: 1; transform: translate3d(0, -130%, 0); }
    
}

/* 2026-06-25　koba */
.plan_concept_txt .point_item_ico.store img { height: 75px; }
.plan_tour, .plan_case { background: #000; padding-top: 80px; }
.plan_tour *, .plan_case *  { color: #fff; }
.plan_tour > .inner, .plan_case > .inner { width: 87.68%; max-width: 1120px; margin: 0 auto; }
.plan_tour_wrap {
    margin: 24px auto 0;
    width: 100%;
    max-width: 812px;
}
.plan_common_subttl {
    font-size: 16px;
}
.plan_tour_movie {
    position: relative;
    display: block;
}
.plan_tour_movie:after {
    content: "";
    display: block;
    width: 40px;
    aspect-ratio: 1/1;
    background: url(../img/ico_play.svg) no-repeat center / contain;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.plan_tour_movie img {
    display: block;
}
.top_function .inner_2 {
    margin-top: 12px;
}
@media screen and (min-width: 768px) {
    .top_function .inner_2 {
        margin-top: 54px;
        justify-content: center;
    }
    .top_function .inner_2 .top_function_item .ph{
        padding-bottom: 48.97%;
    }
    .top_function .inner_2 .top_function_item .txt {
        top: 30px;
    }
    .top_function .inner_2 .top_function_item .ttl {
        margin-bottom: 22px;
    }
    .top_function .inner_2 .top_function_item .link_more {
        bottom: 22px;
    }
    .plan_tour, .plan_case { background: #000; padding-top: 120px; }
    .plan_tour > .inner, .plan_case > .inner { width: 80.28%; max-width: 1120px; margin: 0 auto; }
    .plan_tour_wrap {
        margin: 50px auto 0;
        width: 72.24%;
        max-width: 812px;
    }
    .plan_tour_movie:after {
        content: "";
        display: block;
        width: 100px;
        aspect-ratio: 1/1;
        background: url(../img/ico_play.svg) no-repeat center / contain;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%);
    }
}

.nav_lineup.is-andbarn .nav_lineup_list .ph { display: none; }
.nav_lineup.is-andbarn .nav_lineup_list > a {
    border: 1px solid #707070;
    padding: 0 2.8% 20px;
}
.nav_lineup.is-andbarn .nav_lineup_list .link_more {
    margin-left: auto;
    display: block;
    width: fit-content;
}
@media screen and (max-width: 768px) {
    .nav_lineup.is-andbarn .nav_lineup_list > a {
        border: 1px solid #707070;
        padding: 10px 12px 24px;
    }
    .nav_lineup.is-andbarn .nav_lineup_list .txt {
        border-bottom: none;
        width: 100%;
        padding-bottom: 0;
    }
    .nav_lineup.is-andbarn .nav_lineup_list .link_more {
        margin-top: -18px;
    }
    .nav_lineup.is-andbarn .nav_lineup_list .link_more span {
        font-size: 1.8rem;
    }
}