@charset "utf-8";
/* ============================================================
   A SCORE  ─  Theme stylesheet (rebuilt from scratch, v3.0)
   Pop / anime direction. Mobile-first.
   DB(カスタム投稿 catalogue / ACF / カテゴリ)は不変。表示のみ刷新。
   ============================================================ */

/* ---------- Tokens ---------- */
:root{
  --pink:#ff5e9a;  --pink-d:#ff2f7d;  --pink-l:#ffd7e6;  --pink-bg:#fff4f9;
  --yellow:#ffd23d; --blue:#54b8ff;
  --ink:#4a3540;   --muted:#8d7a82;   --line:#f0dde6;
  --cream:#fff7fb; --white:#fff;

  --grad:linear-gradient(135deg,#ff8fc0 0%,#ff5e9a 55%,#ff2f7d 100%);
  --grad-band:linear-gradient(135deg,#4f9cff 0%,#1a3a6b 100%);
  --grad-choiel:linear-gradient(120deg,#ffd23d 0%,#ff5e9a 48%,#54b8ff 100%);
  --grad-black:linear-gradient(135deg,#6d6d7a 0%,#1d1d24 100%);

  --r:16px; --rl:24px; --pill:999px;
  --sh:0 10px 26px rgba(255,94,154,.16);
  --sh-sm:0 6px 16px rgba(74,53,64,.10);
  --sh-hard:0 6px 0 rgba(255,47,125,.22);
  --ease:cubic-bezier(.34,1.56,.64,1);

  --round:"M PLUS Rounded 1c","M PLUS 1p",sans-serif;
  --en:"Barlow",sans-serif;
  --maxw:1040px;
}

/* ---------- Reset ---------- */
*,*::before,*::after{box-sizing:border-box;}
html{font-size:62.5%;-webkit-text-size-adjust:100%;scroll-behavior:smooth;}
body{
  margin:0;
  font-family:var(--round);
  font-size:1.6rem;
  line-height:1.8;
  color:var(--ink);
  background:var(--cream);
  background-image:radial-gradient(rgba(255,94,154,.06) 1.4px,transparent 1.4px);
  background-size:22px 22px;
  -webkit-font-smoothing:antialiased;
}
img{max-width:100%;height:auto;vertical-align:bottom;}
a{color:var(--pink-d);text-decoration:none;transition:color .2s,opacity .2s,transform .2s var(--ease);}
a:hover{opacity:.85;}
ul{list-style:none;margin:0;padding:0;}
h1,h2,h3,h4,p{margin:0;}
button{font-family:inherit;cursor:pointer;}

/* ---------- Layout helpers ---------- */
.content_blk{width:92%;max-width:var(--maxw);margin:0 auto;}
.pc{display:none;}
.sp{display:block;}
@media(min-width:768px){ .pc{display:block;} .sp{display:none;} }

/* ---------- Buttons ---------- */
.btn_all{margin-top:30px;text-align:center;}
.btn_all a,
.btn_all input{
  display:inline-flex;align-items:center;justify-content:center;
  min-width:260px;min-height:52px;padding:0 32px;
  font-family:var(--round);font-weight:800;font-size:1.8rem;letter-spacing:.04em;
  border:none;border-radius:var(--pill);cursor:pointer;
  transition:transform .2s var(--ease),box-shadow .2s;
}
.btn_all.blue a,
.btn_all.blue input{background:var(--grad);color:#fff;box-shadow:var(--sh-hard);}
.btn_all.blue a:hover,
.btn_all.blue input:hover{transform:translateY(-3px);box-shadow:0 10px 0 rgba(255,47,125,.20);}
.btn_all.white a{background:#fff;color:var(--pink-d);border:3px solid var(--pink-l);box-shadow:var(--sh-sm);}
.btn_all.white a:hover{transform:translateY(-3px);}
.btn_hide{display:none !important;}

/* ---------- Section titles ---------- */
.mainttl,.mainttl2{text-align:center;margin-bottom:8px;}
.mainttl .en,
.mainttl2{
  display:inline-block;font-family:var(--en);font-weight:700;
  font-size:3.6rem;letter-spacing:.06em;line-height:1.1;
  background:var(--grad);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;
}
.mainttl span:not(.en),
.mainttl2 span{display:block;font-family:var(--round);font-weight:800;font-size:1.4rem;color:var(--pink-d);margin-top:6px;letter-spacing:.08em;}
.mainttl2{display:block;}
.ttl_wrap{position:relative;padding-bottom:18px;margin-bottom:30px;}
.ttl_wrap::after{content:"";display:block;width:60px;height:6px;border-radius:var(--pill);background:var(--grad-pop);margin:14px auto 0;}
@media(min-width:768px){ .mainttl .en,.mainttl2{font-size:5.2rem;} .mainttl span:not(.en),.mainttl2 span{font-size:1.6rem;} }

/* ============================================================
   Header / Global nav  (自前のオフキャンバスナビ)
   ============================================================ */
.site-header{
  position:sticky;top:0;z-index:1000;background:#fff;
  box-shadow:0 2px 14px rgba(74,53,64,.08);
}
.hbar{display:flex;align-items:center;justify-content:space-between;height:64px;}
.hlogo{display:inline-flex;align-items:center;}
.hlogo-mark{display:block;width:140px;height:34px;background:var(--grad);
  -webkit-mask:url(../img/h_logo.png) no-repeat left center;mask:url(../img/h_logo.png) no-repeat left center;
  -webkit-mask-size:contain;mask-size:contain;}
.gnav{display:none;gap:6px;}
.gnav a{
  font-family:var(--round);font-weight:700;color:var(--ink);font-size:1.5rem;
  padding:8px 16px;border-radius:var(--pill);
}
.gnav a:hover{color:#fff;background:var(--grad);opacity:1;}
@media(min-width:768px){ .gnav{display:flex;} .hbar{height:76px;} .hlogo-mark{width:160px;height:40px;} }

/* hamburger */
.hbtn{
  display:flex;flex-direction:column;justify-content:center;gap:5px;
  width:44px;height:44px;border:none;background:transparent;
}
.hbtn span,.hbtn span::before,.hbtn span::after{
  content:"";display:block;width:26px;height:3px;border-radius:3px;background:var(--pink);transition:.25s var(--ease);
}
.hbtn span{position:relative;}
.hbtn span::before{position:absolute;top:-8px;}
.hbtn span::after{position:absolute;top:8px;}
body.nav-open .hbtn span{background:transparent;}
body.nav-open .hbtn span::before{top:0;transform:rotate(45deg);}
body.nav-open .hbtn span::after{top:0;transform:rotate(-45deg);}
@media(min-width:768px){ .hbtn{display:none;} }

/* drawer panel */
.nav-drawer{
  position:fixed;top:0;right:0;z-index:1100;
  width:78%;max-width:320px;height:100%;
  background:var(--cream);box-shadow:-8px 0 30px rgba(74,53,64,.18);
  transform:translateX(100%);transition:transform .3s var(--ease);
  padding:88px 28px 28px;
}
.nav-drawer a{
  display:block;font-family:var(--round);font-weight:800;font-size:1.8rem;color:var(--ink);
  padding:16px 8px;border-bottom:2px dotted var(--pink-l);
}
.nav-overlay{
  position:fixed;inset:0;z-index:1050;background:rgba(74,53,64,.45);
  opacity:0;visibility:hidden;transition:.3s;
}
body.nav-open{overflow:hidden;}
body.nav-open .nav-drawer{transform:translateX(0);}
body.nav-open .nav-overlay{opacity:1;visibility:visible;}
@media(min-width:768px){ .nav-drawer,.nav-overlay{display:none;} }

/* ============================================================
   Hero + brand band (top page)
   ============================================================ */
.mv{width:100%;line-height:0;}
.mv img{width:100%;height:auto;display:block;}

.brand_band{background:var(--grad);padding:30px 20px;text-align:center;}
.brand_band .bb_inner{max-width:var(--maxw);margin:0 auto;display:flex;flex-direction:column;align-items:center;gap:14px;}
.bb_badge{font-family:var(--round);font-weight:800;font-size:1.3rem;color:var(--pink-d);background:#fff;border-radius:var(--pill);padding:6px 18px;box-shadow:var(--sh-sm);}
.bb_copy{font-family:var(--round);font-weight:700;color:#fff;font-size:1.6rem;line-height:1.7;text-shadow:0 2px 8px rgba(0,0,0,.14);}
.bb_cta{display:inline-flex;align-items:center;gap:8px;font-family:var(--round);font-weight:800;font-size:1.7rem;color:var(--pink-d);background:var(--yellow);border-radius:var(--pill);padding:13px 34px;box-shadow:var(--sh-hard);}
.bb_cta::after{content:"\266A";}
.bb_cta:hover{transform:translateY(-3px) scale(1.03);opacity:1;}
.sp_br{display:inline;}
@media(min-width:768px){ .bb_copy{font-size:1.8rem;} .sp_br{display:none;} }

/* ============================================================
   Sections
   ============================================================ */
section.about,section.news,section.catalogue,section.movie,section.store,
section.page{padding:54px 0;}
@media(min-width:768px){ section.about,section.news,section.catalogue,section.movie,section.store,section.page{padding:72px 0;} }

/* feature slider (category feature) */
.featuar_list{display:grid;grid-template-columns:1fr;gap:18px;margin-top:6px;}
.featuar_list li{border-radius:var(--rl);overflow:hidden;box-shadow:var(--sh-sm);transition:transform .22s var(--ease),box-shadow .22s;}
.featuar_list li:hover{transform:translateY(-5px);box-shadow:var(--sh);}
.featuar_list li a,.featuar_list img{display:block;width:100%;}
.featuar_none{display:none;}
@media(min-width:768px){ .featuar_list{grid-template-columns:repeat(2,1fr);gap:22px;} }

/* ---------- NEWS ---------- */
.news{background:linear-gradient(180deg,var(--pink-bg) 0%,var(--cream) 100%);}
.news ul{max-width:820px;margin:30px auto 0;display:flex;flex-direction:column;gap:18px;}
.news ul li{
  background:#fff;border:3px solid #fff;border-radius:var(--r);box-shadow:var(--sh-sm);
  transition:transform .2s var(--ease),box-shadow .2s,border-color .2s;
}
.news ul li:hover{transform:translateY(-4px);box-shadow:var(--sh);border-color:var(--pink-l);}
.news ul li a{display:block;padding:18px 22px;color:var(--ink);}
.news li .date{display:inline-block;font-family:var(--round);font-weight:800;color:#fff;background:var(--grad);border-radius:var(--pill);padding:3px 14px;font-size:1.3rem;}
.news li .title{display:block;color:var(--ink);font-weight:700;font-size:1.6rem;line-height:1.6;margin-top:10px;}
.news li .title.excerpt{color:var(--muted);font-weight:500;font-size:1.4rem;margin-top:6px;}
.shortcut{display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;}
.news li .title.shortcut{-webkit-line-clamp:2;}

/* ============================================================
   Catalogue
   ============================================================ */
.catalogue .ct_wrap{margin-top:30px;}

/* search */
.ct_search{display:flex;gap:10px;width:100%;max-width:640px;margin:0 auto 22px;}
.ct_search input[type="search"],.ct_search input[type="text"]{
  flex:1;min-width:0;font-family:var(--round);font-size:16px;color:var(--ink);
  background:#fff;border:3px solid var(--pink-l);border-radius:var(--pill);padding:12px 20px;outline:none;transition:border-color .2s;
}
.ct_search input:focus{border-color:var(--pink);}
.ct_search button{font-family:var(--round);font-weight:800;color:#fff;background:var(--grad);border:none;border-radius:var(--pill);padding:0 24px;box-shadow:var(--sh-hard);}
.ct_search button:hover{transform:translateY(-2px);}
.ct_searchinfo{text-align:center;font-family:var(--round);color:var(--ink);margin:0 0 18px;font-size:1.4rem;}
.ct_searchinfo b{color:var(--pink-d);}
.ct_searchinfo .clear_kw{margin-left:10px;color:var(--blue);text-decoration:underline;font-weight:700;}

/* filter + sort */
.ct_filter_bar{display:flex;flex-direction:column;align-items:center;gap:16px;margin-bottom:30px;}
.ct_btn{display:flex;flex-wrap:wrap;justify-content:center;gap:10px;}
.ct_btn li{
  background:#fff;border:3px solid var(--pink-l);border-radius:var(--pill);
  transition:all .2s var(--ease);
}
.ct_btn li a{display:flex;align-items:center;justify-content:center;height:44px;padding:0 20px;font-family:var(--round);font-weight:800;font-size:1.4rem;color:var(--ink);}
.ct_btn li.active,.ct_btn li:hover{border-color:transparent;background:var(--grad);background-origin:border-box;background-clip:border-box;transform:translateY(-2px);}
.ct_btn li.active a,.ct_btn li:hover a{color:#fff;}
.ct_sort{font-family:var(--round);font-size:1.4rem;color:var(--muted);}
.ct_sort .sort_btn{color:var(--muted);}
.ct_sort .sort_btn.active{color:var(--pink-d);font-weight:800;}
.ct_sort .sort_sep{margin:0 8px;color:var(--pink-l);}
@media(min-width:768px){ .ct_filter_bar{flex-direction:row;justify-content:space-between;} }

/* grid */
.ct_blk{
  display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin:0 auto;
}
@media(min-width:600px){ .ct_blk{grid-template-columns:repeat(3,1fr);gap:20px;} }
@media(min-width:900px){ .ct_blk{grid-template-columns:repeat(4,1fr);gap:24px;} }

.ct_blk li{
  background:#fff;border:3px solid #fff;border-radius:var(--rl);overflow:hidden;
  box-shadow:var(--sh-sm);transition:transform .22s var(--ease),box-shadow .22s,border-color .22s;
}
.ct_blk li:hover{transform:translateY(-6px) rotate(-.5deg);box-shadow:var(--sh);border-color:var(--pink-l);}
.ct_blk li a{display:flex;flex-direction:column;height:100%;color:var(--ink);}
.ct_type{font-family:var(--round);font-weight:800;font-size:1.3rem;letter-spacing:.04em;color:#fff;text-align:center;padding:9px 0;background:var(--grad);}

/* カタログ区分（ct-rabel）*/
.ct_type[data-ct="BAND SCORE"]{background:var(--grad-band);}
.ct_type[data-ct="ChoieL"]{background:var(--grad-choiel);}

/* ストアページ等、固定クラスで色指定する手動マークアップ用（残置） */
.ct_type.ct_pink{background:var(--grad);}
.ct_type.ct_blue{background:var(--grad-band);}
.ct_type.ct_black{background:var(--grad-black);}
.ct_img{width:100%;aspect-ratio:3/4;display:flex;align-items:center;justify-content:center;background:#fff;padding:8px;overflow:hidden;}
.ct_img img{width:100%;height:100%;object-fit:contain;transition:transform .3s var(--ease);}
.ct_blk li:hover .ct_img img{transform:scale(1.05);}
.ct_ttl{padding:14px 16px 22px;font-weight:700;font-size:1.4rem;line-height:1.7;}
.ct_none{grid-column:1/-1;text-align:center;}
.ct_none_box{background:#fff;border-radius:var(--r);box-shadow:var(--sh-sm);padding:48px 24px;}
.ct_none_box p{font-family:var(--round);font-weight:700;color:var(--ink);}

/* pagination */
.ct_pagination{grid-column:1/-1;text-align:center;margin-top:40px;}
.ct_pagination .page-numbers{
  display:inline-block;margin:0 4px 8px;min-width:42px;padding:8px 14px;
  font-family:var(--round);font-weight:800;color:var(--pink-d);
  background:#fff;border:2px solid var(--pink-l);border-radius:var(--pill);
}
.ct_pagination .page-numbers:hover,
.ct_pagination .page-numbers.current{background:var(--grad);background-origin:border-box;background-clip:border-box;border-color:transparent;color:#fff;}

/* ---------- Catalogue single ---------- */
.page_catalogue_single .ct_blk{display:flex;flex-wrap:wrap;gap:28px;justify-content:center;align-items:flex-start;}
.page_catalogue_single .blk01{flex:0 0 100%;max-width:300px;}
.page_catalogue_single .blk01 .ct_type{border-radius:var(--pill);max-width:160px;margin:0 auto 14px;}
.page_catalogue_single .blk01 .ct_img{aspect-ratio:3/4;background:#fff;border-radius:var(--rl);box-shadow:var(--sh);padding:14px;}
.page_catalogue_single .blk02{flex:1;min-width:280px;}
.page_catalogue_single .date{display:inline-block;font-family:var(--round);font-weight:800;color:#fff;background:var(--grad);border-radius:var(--pill);padding:4px 16px;font-size:1.3rem;}
.page_catalogue_single .title{font-family:var(--round);font-weight:800;font-size:2.4rem;line-height:1.4;margin:12px 0 4px;color:var(--ink);}
.page_catalogue_single .credit{color:var(--muted);font-size:1.4rem;}
.page_catalogue_single .meta_wrap{display:flex;flex-wrap:wrap;gap:12px;margin:18px 0;}
.page_catalogue_single .meta_blk{background:var(--pink-bg);border-radius:var(--r);padding:12px 16px;min-width:96px;}
.page_catalogue_single .meta_blk h3{font-family:var(--round);font-weight:800;font-size:1.2rem;color:var(--pink-d);margin-bottom:4px;}
.page_catalogue_single .meta_blk>div{font-family:var(--round);font-weight:700;color:var(--ink);font-size:1.5rem;}
.page_catalogue_single .ct_desc{margin-top:14px;line-height:1.9;}
.page_catalogue_single .ct_desc iframe{max-width:100%;border:0;border-radius:12px;margin:8px 0;box-shadow:var(--sh-sm);}
@media(min-width:768px){ .page_catalogue_single .blk01{flex:0 0 300px;} }

/* sticky buy bar (mobile) */
.buy_sticky{display:none;}
@media(max-width:767px){
  .buy_sticky{
    position:fixed;left:0;right:0;bottom:0;z-index:900;
    padding:10px 14px calc(10px + env(safe-area-inset-bottom));
    background:rgba(255,255,255,.94);backdrop-filter:blur(8px);box-shadow:0 -4px 16px rgba(74,53,64,.14);
    display:block;
  }
  .buy_sticky a{display:flex;align-items:center;justify-content:center;gap:8px;height:52px;font-family:var(--round);font-weight:800;font-size:1.8rem;color:#fff;background:var(--grad);border-radius:var(--pill);box-shadow:var(--sh-hard);}
  .buy_sticky a::before{content:"\1F6D2";}
  .page_catalogue_single{padding-bottom:96px;}
}

/* ============================================================
   News archive / single  &  generic page content
   ============================================================ */
.page_news ul,.page_news_single .content_blk{max-width:820px;}
.txt_content{margin:24px 0;line-height:1.9;}
.txt_content img{border-radius:var(--r);}
.txt_content h2,.txt_content h3{font-family:var(--round);font-weight:800;color:var(--pink-d);margin:28px 0 10px;}
.txt_content a{text-decoration:underline;}
.page_news_single .date{display:inline-block;font-family:var(--round);font-weight:800;color:#fff;background:var(--grad);border-radius:var(--pill);padding:4px 16px;font-size:1.3rem;}
.page_news_single .title{font-family:var(--round);font-weight:800;font-size:2.2rem;line-height:1.5;margin:12px 0;color:var(--ink);}
.pagination{text-align:center;margin-top:30px;}
.pagination .page-numbers{display:inline-block;margin:0 4px;min-width:40px;padding:8px 12px;font-weight:800;color:var(--pink-d);border:2px solid var(--pink-l);border-radius:var(--pill);}
.pagination .page-numbers.current,.pagination .page-numbers:hover{background:var(--grad);background-origin:border-box;background-clip:border-box;border-color:transparent;color:#fff;}

/* ABOUT */
.page_about .flex{display:flex;flex-direction:column;align-items:center;gap:24px;margin-top:30px;}
.page_about .blk01{flex:0 0 auto;}
.page_about .blk02 h3{font-family:var(--round);font-weight:800;font-size:2rem;color:var(--pink-d);margin-bottom:10px;}
.page_about .blk02 p{line-height:1.9;}
@media(min-width:768px){ .page_about .flex{flex-direction:row;justify-content:center;align-items:center;gap:48px;} }

/* REQUEST form */
.page_request p{text-align:center;}
.form_wrap{max-width:680px;margin:30px auto 0;background:#fff;border-radius:var(--rl);box-shadow:var(--sh-sm);padding:28px;}
.form_wrap .formtitle{font-family:var(--round);font-weight:800;color:var(--ink);margin:22px 0 8px;}
.form_wrap .formtitle span{display:block;font-weight:500;font-size:1.3rem;color:var(--muted);margin-top:4px;}
.form_wrap input[type="text"]{width:100%;font-size:16px;border:2px solid var(--pink-l);border-radius:12px;padding:12px 14px;outline:none;}
.form_wrap input[type="text"]:focus{border-color:var(--pink);}

/* STORE grid (reuses card styling) */
.store .st_img{display:grid;grid-template-columns:repeat(2,1fr);gap:16px;margin-top:30px;}
@media(min-width:600px){ .store .st_img{grid-template-columns:repeat(3,1fr);} }
@media(min-width:900px){ .store .st_img{grid-template-columns:repeat(4,1fr);} }
.store .st_img li{background:#fff;border:3px solid #fff;border-radius:var(--rl);overflow:hidden;box-shadow:var(--sh-sm);transition:transform .22s var(--ease),box-shadow .22s;}
.store .st_img li:hover{transform:translateY(-5px);box-shadow:var(--sh);}
.store .st_img li a{display:flex;flex-direction:column;height:100%;}
.store .st_img .ct_img{aspect-ratio:auto;padding:18px;}
.store .st_img .ct_ttl{text-align:center;}

/* MOVIE */
.movie .content_blk{text-align:center;}
.movie iframe{width:100%;max-width:880px;aspect-ratio:16/9;height:auto;border:0;border-radius:var(--rl);box-shadow:var(--sh);margin-top:20px;}

/* 404 */
.not_found{text-align:center;}
.not_found h2{font-family:var(--en);font-size:3.6rem;color:var(--pink-d);margin-bottom:14px;}

/* ============================================================
   Footer
   ============================================================ */
footer{background:var(--cream);padding:50px 0 30px;text-align:center;border-top:3px solid var(--pink-l);}
footer .share .sns{display:flex;justify-content:center;gap:18px;margin-bottom:30px;}
footer .share .sns li a img,footer .share .sns li a svg{width:48px;height:48px;border-radius:50%;transition:transform .2s var(--ease);}
footer .share .sns li a .sns-ig-circle{display:flex;align-items:center;justify-content:center;width:48px;height:48px;border-radius:50%;background:linear-gradient(45deg,#feda77 0%,#f58529 25%,#dd2a7b 50%,#8134af 75%,#515bd4 100%);transition:transform .2s var(--ease);}
footer .share .sns li a .sns-ig-circle img{width:28px;height:28px;border-radius:0;transition:none;}
footer .share .sns li a:hover .sns-ig-circle{transform:translateY(-3px) scale(1.08);}
footer .share .sns li a:hover .sns-ig-circle img{transform:none;}
footer .share .sns li a:hover img,footer .share .sns li a:hover svg{transform:translateY(-3px) scale(1.08);opacity:1;}
footer .f_logo_01 img{width:130px;margin-bottom:20px;}
footer .f_nav{display:flex;flex-wrap:wrap;justify-content:center;gap:8px 22px;margin-bottom:24px;}
footer .f_nav a{font-family:var(--round);font-weight:700;color:var(--ink);font-size:1.4rem;}
footer .f_logo_02{display:flex;flex-wrap:wrap;justify-content:center;align-items:center;gap:22px;margin-bottom:20px;}
footer .f_logo_02 img{max-height:40px;width:auto;}
footer small{display:block;color:var(--muted);font-size:1.2rem;}

/* ---------- Scroll-in animation ---------- */
.inview{opacity:0;transform:translateY(20px);transition:opacity .6s,transform .6s var(--ease);}
.inview.fadein{opacity:1;transform:none;}
@media(prefers-reduced-motion:reduce){
  *{transition:none !important;animation:none !important;}
  .inview{opacity:1;transform:none;}
}

/* ドロワー開時はヘッダー(×ボタン)を最前面に */
body.nav-open .site-header{z-index:1200;}

/* ============================================================
   ABOUT (page-about2.php) 専用スタイル
   ============================================================ */
.about2{padding-top:0;padding-bottom:72px;}
.about2-hero{text-align:center;padding:36px 20px 24px;}
.about2-hero .a2-logo{width:150px;height:auto;}
.about2-hero .a2-tag{font-family:var(--round);font-weight:800;font-size:2.4rem;color:var(--pink-d);margin-top:16px;}
.about2-hero .a2-sub{display:inline-block;font-family:var(--en);font-weight:700;font-style:italic;color:#fff;background:var(--grad);border-radius:var(--pill);padding:8px 26px;margin-top:18px;letter-spacing:.04em;}

.about2 .sec_ttl{text-align:center;margin:0 0 8px;}
.about2 .sec_ttl .en,.about2 .sec_ttl{font-family:var(--en);}
.about2 .a2-band{padding:54px 0;}
.about2 .a2-band--soft{background:transparent;}

/* 3つの特徴 */
.a2-feat{display:grid;grid-template-columns:1fr;gap:20px;margin-top:28px;}
.a2-feat li{background:#fff;border:3px solid #fff;border-radius:var(--rl);box-shadow:var(--sh-sm);padding:30px 20px;text-align:center;transition:transform .22s var(--ease),box-shadow .22s;}
.a2-feat li:hover{transform:translateY(-5px);box-shadow:var(--sh);}
.a2-feat .icon img{width:96px;height:auto;}
.a2-feat h5{font-family:var(--en);font-weight:700;font-size:2.2rem;color:var(--pink-d);letter-spacing:.06em;margin:12px 0;}
.a2-feat p{font-family:var(--round);font-weight:500;color:var(--ink);line-height:1.9;}
@media(min-width:768px){ .a2-feat{grid-template-columns:repeat(3,1fr);gap:24px;} }

/* ガイドマンガ */
.a2-comic .lead{text-align:center;color:var(--ink);font-weight:500;margin-top:10px;}
.a2-comic ul{display:grid;grid-template-columns:1fr;gap:18px;margin-top:28px;}
.a2-comic li a{display:flex;align-items:center;gap:14px;background:#fff;border:3px solid #fff;border-radius:var(--rl);box-shadow:var(--sh-sm);overflow:hidden;color:var(--ink);transition:transform .22s var(--ease),box-shadow .22s;}
.a2-comic li a:hover{transform:translateY(-4px);box-shadow:var(--sh);opacity:1;}
.a2-comic .m-txt{flex:1;padding:0 0 0 18px;}
.a2-comic .m-txt h4{font-family:var(--round);font-weight:800;color:var(--pink-d);font-size:1.5rem;}
.a2-comic .m-txt p{font-family:var(--round);font-weight:700;font-size:1.5rem;}
.a2-comic .m-icon{flex:0 0 120px;}
.a2-comic .m-icon img{display:block;width:100%;height:auto;}
@media(min-width:600px){ .a2-comic ul{grid-template-columns:repeat(2,1fr);} }
@media(min-width:980px){ .a2-comic ul{grid-template-columns:repeat(4,1fr);} .a2-comic li a{flex-direction:column;gap:0;text-align:center;} .a2-comic .m-txt{padding:16px;} .a2-comic .m-icon{flex:none;width:100%;} }

/* PR担当 */
.a2-pr .pr-inner{display:flex;flex-direction:column;align-items:center;gap:24px;background:#fff;border-radius:var(--rl);box-shadow:var(--sh-sm);padding:28px;margin-top:24px;}
.a2-pr .pr-img{flex:0 0 auto;text-align:center;}
.a2-pr .pr-img img{width:220px;height:auto;display:none;}
.a2-pr .pr-img img.active{display:inline-block;}
.a2-pr .pr-toggle{display:flex;justify-content:center;gap:8px;margin-top:12px;}
.a2-pr .pr-toggle button{width:40px;height:40px;border-radius:50%;border:3px solid var(--pink-l);background:#fff;font-family:var(--round);font-weight:800;color:var(--pink-d);}
.a2-pr .pr-toggle button.active{background:var(--grad);background-origin:border-box;background-clip:border-box;border-color:transparent;color:#fff;}
.a2-pr .pr-txt h4{font-family:var(--en);font-weight:700;font-size:2rem;color:var(--pink-d);}
.a2-pr .pr-txt h4 span{display:block;font-family:var(--round);font-size:1.4rem;color:var(--ink);}
.a2-pr .pr-txt p{font-family:var(--round);line-height:1.9;margin-top:10px;}
@media(min-width:768px){ .a2-pr .pr-inner{flex-direction:row;align-items:flex-start;gap:36px;} }

/* マンガ用 簡易モーダル（remodal非依存） */
.a2modal{position:fixed;inset:0;z-index:2000;background:rgba(74,53,64,.7);display:none;overflow:auto;padding:24px;}
.a2modal.open{display:block;}
.a2modal .a2modal-inner{max-width:640px;margin:0 auto;background:#fff;border-radius:var(--rl);padding:16px;}
.a2modal img{width:100%;height:auto;border-radius:var(--r);margin-bottom:10px;}
.a2modal .a2modal-close{display:block;width:100%;height:48px;border:none;border-radius:var(--pill);background:var(--grad);color:#fff;font-family:var(--round);font-weight:800;}
