@charset "UTF-8";
/* ============================================================
   asa-common.css（common担当）— 全ページ共通
   モック shiki-ski-preview の <style id="asa-*"> のうち全ページ共通のものを集約。
   各ブロックの見出しコメントは元のブロックID。変更したところは「※」で注記。
   画像パスはこのファイル（asa/）からの相対 → ../images/common/...
   ============================================================ */

/* ---- asa-weight（A4：書体を游ゴシックに統一・太さ） ---- */
body,body :not(.tagline):not(.fa):not(.fas):not(.fab):not(.far):not([class*="fa-"]):not(.slick-arrow):not(.pswp *){font-family:"游ゴシック","Yu Gothic",YuGothic,"游ゴシック体","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3",Meiryo,メイリオ,sans-serif !important}
body{font-weight:500}
p,li,dd,td,label,figcaption,small,input,select,textarea{font-weight:500}
h1,h2,h3,h4,h5,h6,th,strong,b,button,.btn{font-weight:700}

/* ---- asa-gothic（A4） ---- */
main :is(h1,h2,h3,h4,h5,p,span,div,a,li,dt,dd,em,strong,b,td,th,label,button):not(.tagline):not(.fa):not(.fas):not(.fab):not(.far){font-family:"游ゴシック","Yu Gothic",YuGothic,"游ゴシック体","Hiragino Kaku Gothic ProN","ヒラギノ角ゴ ProN W3",Meiryo,メイリオ,sans-serif !important}
main h1.h1_ttl,main h2.in_text,main h3.ttl_box,main .faq_ttl,main .h2_ttl,main .ttl_sec .in_text,main .ttl_special_sec .in_text{font-weight:bold !important;letter-spacing:.04em}

/* ---- asa-readable（A5：本文を読みやすく） ---- */
main p{text-align:left}
main :is(p,li,dd,dt,td,th,.text,.attractive__txt,.staff__txt,.review__txt,.facility_ttl,.lead):not(#global *):not(.dp-card *):not(.ot-card *):not(.asa-card *):not(.sf-item *):not(.cal-grid *):not(.cal-tabs *):not(.breadcrumbs *):not(.breadcrumbs):not(.slick-dots *):not(.footer_lst *):not(.asa-fig *):not(.notes):not(.note):not(.caution):not(small){font-size:18px !important;line-height:1.9 !important;word-break:auto-phrase;line-break:strict}
main :is(.notes,.note,.caution,small){font-size:15px !important;line-height:1.8 !important}
main :is(h2,h3,h4,.tour_lst_ttl,.ttl_box){word-break:auto-phrase}
@media(max-width:768px){main :is(p,li,dd,dt,td,th,.text,.attractive__txt,.staff__txt,.review__txt,.lead):not(#global *):not(.dp-card *):not(.ot-card *):not(.asa-card *):not(.sf-item *):not(.cal-grid *):not(.cal-tabs *):not(.breadcrumbs *):not(.breadcrumbs):not(.slick-dots *):not(.footer_lst *):not(.asa-fig *):not(.notes):not(.note):not(.caution):not(small){font-size:17px !important;line-height:1.85 !important}}
main :is(#voices,#faq,#reason,.half_box,.review__cg) :is(p,.text,.lead){font-size:16px !important;line-height:1.8 !important;word-break:normal !important}
main #staff :is(p,.text,.lead){font-size:15px !important;line-height:1.7 !important;word-break:normal !important}
main :is(.dp-card,.ot-card,.asa-card,.sf-item,.tour_lst_ttl,.attractive__txt,.staff__txt,td,th,li){word-break:normal !important}

/* ---- asa-btn（A6：ボタンを紺の丸ボタンに統一） ---- */
.page_btn,.sf-more,.asa-btn,.dp-card__btn{display:flex !important;align-items:center;justify-content:center;box-sizing:border-box;color:#fff !important;font-size:18px;font-weight:bold;line-height:1.4;height:55px;background:#0a2463 !important;border:none !important;border-radius:40px !important;box-shadow:0 0 5px rgba(0,0,0,.2);position:relative;padding:0 84px 0 36px !important;text-decoration:none;max-width:530px;margin-left:auto;margin-right:auto}
.page_btn:hover,.sf-more:hover,.asa-btn:hover,.dp-card__btn:hover{opacity:.8;color:#fff !important;background:#0a2463 !important}
.page_btn::after,.sf-more::after,.asa-btn::after,.dp-card__btn::after{content:"";position:absolute;right:28px;top:50%;bottom:auto;margin:-3px 0 0;width:37px;height:7px;border:none !important;transform:none;background:url(../images/common/arrow_plan.png) no-repeat center/100%}
.page_btn::before,.asa-btn::before{display:none}
.dp-card__btn{height:42px;font-size:15px;padding:0 44px 0 20px !important;max-width:none;margin-top:8px}
.dp-card__btn::after{width:26px;height:5px;right:14px;margin-top:-2px}
.asa-btns .asa-btn{width:auto;min-width:240px;margin:0;padding:0 78px 0 30px !important}
.asa-btns .asa-btn::after{right:24px}
@media(max-width:768px){.page_btn,.sf-more,.asa-btn{max-width:100%;font-size:16px}.asa-btns .asa-btn{width:100%}}

/* ---- asa-cta-color（A6：予約につながるボタンだけ橙） ---- */
.page_btn.asa-cta,.asa-btn.asa-cta,.dp-card__btn.asa-cta{background:#e8710a !important}
.page_btn.asa-cta:hover,.asa-btn.asa-cta:hover,.dp-card__btn.asa-cta:hover,.dp-card:hover .dp-card__btn.asa-cta{background:#c95f06 !important;opacity:1}
.pd-cta{text-align:center;margin:18px auto 26px}

/* ---- asa-nav-cta（A1：PCグロナビ9項目・アイコン・橙CTA・本文開始位置168px） ---- */
@media(min-width:751px){main{margin-top:168px}}
#global .root{width:1180px !important;max-width:97% !important;flex-wrap:nowrap !important;justify-content:space-between !important;align-items:center}
#global .root .root_child{width:auto !important;flex:1 1 auto}
#global .root .root_child:last-child{border-right:1px solid rgba(255,255,255,0.5)}
#global .root .root_child .root_child_text{padding:10px 7px !important;font-size:14px;white-space:nowrap}
#global .root .root_child.cta_child{flex:0 0 auto}
#global .root .root_child.cta_child .root_child_text{background:#e8710a;border-radius:4px;padding:10px 16px !important}
#global .root .root_child.cta_child .root_child_text:hover{background:#c95f06}
#global .root .root_child .root_child_text{display:flex;flex-direction:column;align-items:center;gap:2px;line-height:1.2}
#global .root .root_child .asa-ico{display:block;width:36px;height:30px;background-size:contain;background-repeat:no-repeat;background-position:center}

/* ---- asa-nav-cur（A1：開いているセクションに白い下線） ---- */
@media(min-width:751px){#global .root .root_child.is-current .root_child_text{position:relative}#global .root .root_child.is-current .root_child_text::after{content:"";position:absolute;left:14px;right:14px;bottom:4px;height:2px;background:#fff;border-radius:1px}#global .root .root_child.cta_child.is-current .root_child_text::after{bottom:6px;left:16px;right:16px}}

/* ---- asa-nav-sp（A2：スマホメニュー） ---- */
.nav_s .grandmother .icon img{width:52px;height:38px;object-fit:contain}.nav_drawer .drawer_nav_wrapper{z-index:10001}.nav_drawer .drawer_button{z-index:10002}@media(max-width:750px){.nav_drawer .drawer_nav_wrapper{width:62vw;transform:translate(62vw)}.nav_drawer .drawer_nav_wrapper.open{transform:translate(0)}.nav_drawer .drawer_bg{background-color:rgba(10,36,99,.28)}.nav_drawer .drawer_nav_wrapper .nav_s a.grandmother{padding:11px 12px !important}.nav_drawer .drawer_nav_wrapper .nav_s .icon img{width:42px !important;height:32px !important}.nav_drawer .drawer_nav_wrapper .nav_s .in-text{font-size:13.5px !important}}

/* ---- asa-tel（A2：ドロワー上部の紺丸の電話ボタン） ---- */
.nav_drawer .user{display:flex;align-items:center;gap:8px}.nav_drawer .user a.asa-tel-s{display:inline-flex !important;align-items:center;justify-content:center;flex:0 0 40px;width:40px !important;height:40px !important;min-width:0;padding:0 !important;margin:0 4px 0 0 !important;border-radius:50%;background:#0a2463;color:#fff;text-decoration:none;box-sizing:border-box}.nav_drawer .user a.asa-tel-s i{font-size:16px;line-height:1}.header.normal .tel a{display:block}

/* ---- asa-info-tbl（A7：基本情報・インフォメーション表） ---- */
#page .information_tbl th{width:130px !important;min-width:130px;white-space:nowrap;padding:14px 12px !important;line-height:1.6 !important;vertical-align:top}#page .information_tbl td{padding:14px 16px !important}@media(max-width:768px){#page .information_tbl th{display:block;width:100% !important;min-width:0;box-sizing:border-box;white-space:normal;font-size:15px !important;padding:8px 12px !important}#page .information_tbl td{display:block;padding:10px 12px !important}}

/* ---- asa-anchor-css（A8：見出しの着地位置） ---- */
.h2_ttl_box[id]{scroll-margin-top:184px}@media(max-width:750px){.h2_ttl_box[id]{scroll-margin-top:76px}}

/* ---- asa-sec（A9：白地見出しのセクション .asa-sec / .ttl_special_sec） ---- */
.asa-sec{max-width:1000px;margin:0 auto}.asa-sec .ttl_special_sec{margin:0 0 30px}.asa-sec[id]{scroll-margin-top:184px}@media(max-width:750px){.asa-sec{width:88vw}.asa-sec[id]{scroll-margin-top:76px}}

/* ---- asa-h1br（A9：h1の改行。全型共通の1行だけ。商品のSP切替 .h1-br-sp / .h1-pref は product 担当） ---- */
.h1_ttl .h1-br{display:block}

/* ---- asa-rc（A9：カード .ot-card と .rc-* の土台。宿・スキー場・商品の3種類の共通部分）
   ※宿だけの .rc-h 2行クランプ・.rc-more .page_btn、商品だけの .rc-mycar・.rc-more{margin:22px 0 0} は各担当 ---- */
.rc-list{display:grid;grid-template-columns:repeat(4,1fr);gap:16px;max-width:1000px;margin:0 auto}
.ot-card{display:block;border:1px solid #d7dce6;border-radius:6px;background:#fff;color:#12213f;text-decoration:none;overflow:hidden}
.ot-card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}
.ot-card .ot-t{display:block;padding:10px 12px 14px;font-size:14px;line-height:1.5}
.ot-card:hover{border-color:#0a2463}
.rc-tag{display:inline-block;font-size:11px;line-height:1;padding:4px 7px;border-radius:3px;background:#eef2f8;color:#0a2463;margin-bottom:6px}
.rc-n{display:block;font-weight:bold;font-size:15px}
.rc-d{display:block;color:#e8710a;font-weight:bold;margin-top:2px}
.rc-h{display:block;font-size:12.5px;color:#555;margin-top:2px}
.rc-more{text-align:center;margin:22px 0 40px}
@media(max-width:900px){.rc-list{grid-template-columns:repeat(2,1fr)}}

/* ---- asa-reco（A9：おすすめカルーセル .asa-reco .rc-car＝商品・スキー場・固定ページ共通。チップ .rc-tag--bus/--mycar）
   ※スキー場だけの .asa-reco--in .rc-tags{min-height:43px} は resort 担当 ---- */
.asa-reco{max-width:1000px;margin:40px auto 30px;padding:0}.asa-reco .ttl_special_sec{margin-bottom:18px}
.asa-reco .rc-car .slick-track{display:flex !important}.asa-reco .rc-car .slick-slide{height:auto !important;display:flex}.asa-reco .rc-car .slick-slide>div{display:flex;width:100%}.asa-reco .rc-car .ot-card{display:flex;flex-direction:column;height:100%;margin:0 8px;border:1px solid #d7dce6;border-radius:6px;background:#fff;color:#12213f;text-decoration:none;overflow:hidden}
.asa-reco .rc-car .ot-card img{display:block;width:100%;aspect-ratio:16/10;object-fit:cover}.asa-reco .rc-car .ot-t{display:flex;flex-direction:column;flex:1;padding:10px 12px 14px;font-size:14px;line-height:1.5}.asa-reco .rc-tag{align-self:flex-start}.asa-reco .rc-next{margin-top:auto;padding-top:6px}
.asa-reco .rc-tag{display:inline-block;font-size:11px;line-height:1;padding:4px 7px;border-radius:3px;background:#eef2f8;color:#0a2463;margin-bottom:6px}.asa-reco .rc-tags{display:flex;flex-wrap:wrap;gap:5px;margin-bottom:6px}.asa-reco .rc-tags .rc-tag{margin:0}.asa-reco .rc-tag--bus{background:#e8710a;color:#fff;font-weight:bold}.asa-reco .rc-tag--mycar{background:#0a2463;color:#fff;font-weight:bold}
.asa-reco .rc-n{display:block;font-weight:bold;font-size:15px}.asa-reco .rc-d{display:block;color:#e8710a;font-weight:bold;margin-top:2px;word-break:keep-all}.asa-reco .rc-h{display:block;font-size:12.5px;color:#555;margin-top:2px}
.asa-reco .rc-next{display:block;font-size:12.5px;color:#0a2463;font-weight:bold}
.asa-reco .ot-btn{display:flex !important;align-items:center;justify-content:center;margin:10px 0 0;height:42px;padding:0 30px 0 12px !important;font-size:14px;max-width:none;width:100%;box-sizing:border-box;line-height:1.3}.asa-reco .ot-btn::after{right:12px;width:24px;background-size:24px auto}
.asa-reco .rc-car{padding:0 44px}.asa-reco .slick-prev,.asa-reco .slick-next{width:44px;height:44px;z-index:2;top:34%;margin:0;background:#0a2463;border:none;border-radius:50%}.asa-reco .slick-prev{left:-6px}.asa-reco .slick-next{right:-6px}.asa-reco .slick-prev:hover,.asa-reco .slick-next:hover{background:#0a2463;opacity:.85}.asa-reco .slick-prev:before,.asa-reco .slick-next:before{content:'';position:absolute;top:50%;left:50%;width:12px;height:12px;border-top:2px solid #fff;border-right:2px solid #fff;opacity:1;font-size:0;color:transparent;background:none}.asa-reco .slick-next:before{transform:translate(-65%,-50%) rotate(45deg)}.asa-reco .slick-prev:before{transform:translate(-35%,-50%) rotate(-135deg)}
.asa-reco .slick-dots{display:none !important}
.asa-reco .reco-cta{text-align:center;margin:26px 0 0}.asa-reco .reco-cta .page_btn{display:inline-flex !important;min-width:300px}
@media(max-width:750px){.asa-reco{margin:30px 3vw 20px}.asa-reco .rc-car{padding:0}.asa-reco .reco-cta .page_btn{min-width:0;width:100%}}
.asa-reco--in{margin:0 auto 6px;padding:0}

/* YouTube埋め込みを画面幅に収める（9/29 QC：/report/ のスマホで横スクロール） */
iframe[src*="youtube.com"],iframe[src*="youtube-nocookie.com"]{max-width:100%;height:auto;aspect-ratio:16/9}
