/*
Theme Name: Aqua Idol
Theme URI: https://example.com/
Author: Aqua Idol Theme
Description: 地下アイドル / インディーズアーティスト向けのワンページ型オフィシャルサイトテーマ。水色を基調とした配色で、NEWS・MUSIC・MOVIES・PROFILE・MEMBERS・SCHEDULE・LIVE INFO・GOODS・REGULATIONS・CONTACT を1ページに収めます。カスタマイザーから配色・SNS・埋め込み・各種テキストを変更できます。
Version: 1.1.0
Requires at least: 6.0
Tested up to: 6.8
Requires PHP: 7.4
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: aqua-idol
Tags: one-column, custom-colors, custom-menu, custom-logo, featured-images, translation-ready
*/

:root{
  --ink:#08161f;
  --ink-2:#12303f;
  --aqua:#4fc9ec;
  --aqua-deep:#0f8fbe;
  --aqua-pale:#dcf4fc;
  --paper:#f2fbfe;
  --white:#fff;
  --line:#08161f;
  --shadow:6px 6px 0 var(--ink);
  --shadow-sm:4px 4px 0 var(--ink);
  --maxw:1080px;
  --font-jp:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;
  --font-en:"Anton","Arial Narrow",sans-serif;
  --font-num:"Bebas Neue","Arial Narrow",sans-serif;
}
*,*::before,*::after{box-sizing:border-box}
html{scroll-behavior:smooth;scroll-padding-top:72px;-webkit-text-size-adjust:100%}
body{
  margin:0;
  font-family:var(--font-jp);
  background:var(--paper);
  color:var(--ink);
  line-height:1.85;
  font-size:15px;
  letter-spacing:.02em;
  overflow-x:hidden;
}
img{max-width:100%;height:auto;display:block}
a{color:inherit}
h1,h2,h3,h4{margin:0;line-height:1.2;font-weight:900}
p{margin:0 0 1em}
p:last-child{margin-bottom:0}
ul{margin:0;padding:0;list-style:none}
.screen-reader-text{
  position:absolute!important;width:1px;height:1px;overflow:hidden;clip:rect(1px,1px,1px,1px);
  clip-path:inset(50%);white-space:nowrap;
}
.skip-link:focus{
  position:fixed;top:8px;left:8px;z-index:999;background:var(--white);
  border:3px solid var(--line);padding:8px 14px;clip:auto;clip-path:none;width:auto;height:auto;
}

/* ---------- 共通レイアウト ---------- */
.wrap{width:min(100% - 40px, var(--maxw));margin-inline:auto}
.sec{padding:clamp(56px,9vw,104px) 0;position:relative}
.sec--tint{background:var(--white);border-block:3px solid var(--line)}
.sec--ink{background:var(--ink);color:var(--paper)}

/* ---------- ヘッダー ---------- */
.hd{position:sticky;top:0;z-index:50;background:var(--white);border-bottom:3px solid var(--line)}
.admin-bar .hd{top:32px}
@media(max-width:782px){.admin-bar .hd{top:46px}}
.hd__in{display:flex;align-items:center;gap:16px;min-height:60px;width:min(100% - 24px,1280px);margin-inline:auto}
.hd__logo{
  font-family:var(--font-en);font-size:19px;letter-spacing:.06em;
  display:flex;align-items:center;gap:8px;text-decoration:none;flex:none;
}
.hd__logo span{
  background:var(--aqua);border:2px solid var(--line);
  padding:1px 8px 0;transform:rotate(-2deg);display:inline-block;
}
.hd__logo img{max-height:40px;width:auto}
.hd__nav{margin-left:auto;overflow-x:auto;-ms-overflow-style:none;scrollbar-width:none}
.hd__nav::-webkit-scrollbar{display:none}
.hd__nav ul{display:flex;gap:2px}
.hd__nav li{list-style:none}
.hd__nav a{
  display:block;padding:5px 8px;text-decoration:none;
  font-family:var(--font-num);font-size:14px;letter-spacing:.06em;
  white-space:nowrap;border:2px solid transparent;
}
.hd__nav a:hover,.hd__nav .current-menu-item>a{border-color:var(--line);background:var(--aqua)}

/* ---------- ヒーロー ---------- */
.hero{position:relative;background:var(--ink);color:var(--paper);border-bottom:3px solid var(--line);overflow:hidden}
.hero::before{
  content:"";position:absolute;inset:0;
  background-image:radial-gradient(circle at 1px 1px, rgba(79,201,236,.34) 1px, transparent 0);
  background-size:9px 9px;opacity:.5;
}
.hero__in{position:relative;padding:clamp(40px,7vw,76px) 0 0}
.hero__grid{display:grid;grid-template-columns:1fr;gap:28px;align-items:center}
@media(min-width:900px){.hero__grid{grid-template-columns:1fr 1.05fr;gap:40px}}
.hero__title{font-family:var(--font-en);font-size:clamp(52px,12vw,110px);line-height:.86;letter-spacing:.01em}
.hero__title em{font-style:normal;display:block;color:transparent;-webkit-text-stroke:2px var(--aqua)}
.hero__jp{font-size:clamp(19px,3.4vw,26px);font-weight:900;margin-top:18px;letter-spacing:.24em}
.hero__catch{margin-top:14px;font-size:14px;letter-spacing:.16em;color:var(--aqua);border-left:3px solid var(--aqua);padding-left:12px}
.hero__movie{border:3px solid var(--aqua);box-shadow:8px 8px 0 rgba(79,201,236,.28);background:#000;aspect-ratio:16/9;position:relative;overflow:hidden}
.hero__movie iframe{width:100%;height:100%;border:0;display:block}
.hero__movie img{width:100%;height:100%;object-fit:cover}
.ph-movie{position:absolute;inset:0;display:grid;place-content:center;gap:8px;justify-items:center;background:linear-gradient(135deg,#0b2331,#08161f 60%);color:var(--aqua);text-align:center;padding:16px}
.ph-movie b{font-family:var(--font-num);font-size:20px;letter-spacing:.18em}
.ph-movie small{font-size:11px;letter-spacing:.1em;color:#7fd8f2}
.hero__sns{display:flex;flex-wrap:wrap;gap:8px;margin-top:22px}
.sns-btn{font-family:var(--font-num);font-size:14px;letter-spacing:.1em;border:2px solid var(--aqua);color:var(--aqua);text-decoration:none;padding:5px 13px 3px;transition:.15s}
.sns-btn:hover{background:var(--aqua);color:var(--ink)}

/* ---------- マーキー ---------- */
.mq{background:var(--aqua);border-top:3px solid var(--line);border-bottom:3px solid var(--line);overflow:hidden;margin-top:clamp(36px,6vw,60px)}
.mq__track{display:flex;width:max-content;animation:mq 26s linear infinite}
.mq__track span{font-family:var(--font-en);font-size:20px;letter-spacing:.05em;padding:7px 22px 4px;white-space:nowrap;color:var(--ink)}
@keyframes mq{to{transform:translateX(-50%)}}
@media(prefers-reduced-motion:reduce){.mq__track{animation:none}}

/* ---------- セクション見出し ---------- */
.sh{display:flex;align-items:flex-end;gap:14px;margin-bottom:clamp(26px,4vw,42px);border-bottom:3px solid var(--line);padding-bottom:10px;flex-wrap:wrap}
.sec--ink .sh{border-color:var(--aqua)}
.sh__no{font-family:var(--font-num);font-size:15px;background:var(--ink);color:var(--aqua);padding:2px 8px 0;flex:none}
.sec--ink .sh__no{background:var(--aqua);color:var(--ink)}
.sh__en{font-family:var(--font-en);font-size:clamp(30px,6vw,46px);line-height:.9;letter-spacing:.01em}
.sh__jp{font-size:12px;letter-spacing:.2em;font-weight:700;padding-bottom:4px;color:var(--aqua-deep)}
.sec--ink .sh__jp{color:var(--aqua)}

/* ---------- NEWS ---------- */
.news{border-top:2px solid var(--line)}
.news li{border-bottom:2px solid var(--line);list-style:none}
.news a{display:grid;gap:2px 18px;grid-template-columns:1fr;padding:15px 4px;text-decoration:none;transition:.15s}
@media(min-width:640px){.news a{grid-template-columns:104px 96px 1fr;align-items:baseline}}
.news a:hover{background:var(--aqua-pale)}
.news time{font-family:var(--font-num);font-size:16px;letter-spacing:.08em;color:var(--aqua-deep)}
.tag{display:inline-block;font-size:10px;font-weight:700;letter-spacing:.12em;border:2px solid var(--line);padding:1px 7px;background:var(--aqua);text-decoration:none}
.news h3{font-size:15px;font-weight:700;line-height:1.6}
.more{
  display:inline-block;margin-top:26px;font-family:var(--font-num);font-size:16px;letter-spacing:.12em;
  border:3px solid var(--line);background:var(--white);padding:6px 22px 3px;text-decoration:none;box-shadow:var(--shadow-sm);transition:.12s;
}
.more:hover{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink);background:var(--aqua)}

/* ---------- MUSIC ---------- */
.music{display:grid;gap:24px}
@media(min-width:820px){.music{grid-template-columns:1.15fr .85fr}}
.embed-box{border:3px solid var(--line);background:var(--white);box-shadow:var(--shadow);padding:14px}
.embed-box iframe{width:100%;border:0;display:block}
.ph-embed{height:352px;background:repeating-linear-gradient(45deg,#e6f6fc 0 12px,#f6fcff 12px 24px);display:grid;place-content:center;gap:6px;justify-items:center;border:2px dashed var(--aqua-deep);text-align:center;padding:16px}
.ph-embed b{font-family:var(--font-num);font-size:18px;letter-spacing:.16em;color:var(--aqua-deep)}
.ph-embed small{font-size:11px;color:#5a7f8d}
.rel{border:3px solid var(--line);background:var(--aqua-pale);padding:20px;align-self:start}
.rel h3{font-family:var(--font-en);font-size:22px;margin-bottom:12px}
.rel dl{display:grid;grid-template-columns:auto 1fr;gap:6px 14px;font-size:13px;margin:0}
.rel dt{font-family:var(--font-num);font-size:14px;letter-spacing:.08em;color:var(--aqua-deep)}
.rel dd{margin:0;font-weight:700}
.streamlinks{display:flex;flex-wrap:wrap;gap:8px;margin-top:18px}
.streamlinks a{font-size:12px;font-weight:700;letter-spacing:.08em;text-decoration:none;border:2px solid var(--line);background:var(--white);padding:4px 12px;box-shadow:3px 3px 0 var(--ink)}
.streamlinks a:hover{background:var(--aqua)}

/* ---------- MOVIES ---------- */
.movies{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(240px,1fr))}
.mv{border:3px solid var(--line);background:var(--white);box-shadow:var(--shadow-sm);text-decoration:none;display:block;transition:.12s}
.mv:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--ink)}
.mv__thumb{aspect-ratio:16/9;background:linear-gradient(140deg,#0f8fbe,#08161f);position:relative;border-bottom:3px solid var(--line);overflow:hidden}
.mv__thumb img{width:100%;height:100%;object-fit:cover}
.mv__thumb::after{
  content:"";position:absolute;left:50%;top:50%;transform:translate(-40%,-50%);
  border-style:solid;border-width:13px 0 13px 22px;border-color:transparent transparent transparent var(--paper);
  filter:drop-shadow(0 0 6px rgba(0,0,0,.5));
}
.mv__body{padding:12px 14px}
.mv__body span{font-family:var(--font-num);font-size:13px;letter-spacing:.1em;color:var(--aqua-deep)}
.mv__body h3{font-size:14px;font-weight:700;line-height:1.5;margin-top:2px}

/* ---------- PROFILE ---------- */
.prof{display:grid;gap:30px}
@media(min-width:860px){.prof{grid-template-columns:1fr 320px}}
.prof__lead{font-size:clamp(17px,2.6vw,21px);font-weight:900;line-height:1.9;margin-bottom:18px}
.prof__lead b,.prof__lead strong{background:linear-gradient(transparent 62%, var(--aqua) 62%);font-weight:900}
.prof__body{font-size:14px;line-height:2}
.data{border:3px solid var(--aqua);padding:18px 20px;align-self:start;background:rgba(79,201,236,.07)}
.data dl{margin:0;font-size:13px}
.data dt{font-family:var(--font-num);font-size:13px;letter-spacing:.12em;color:var(--aqua);border-bottom:1px solid rgba(79,201,236,.4);padding-bottom:2px}
.data dd{margin:4px 0 14px;font-weight:700}
.data dd:last-child{margin-bottom:0}

/* ---------- MEMBERS ---------- */
.members{display:grid;gap:20px;grid-template-columns:repeat(auto-fit,minmax(215px,1fr))}
.mb{border:3px solid var(--line);background:var(--white);box-shadow:var(--shadow-sm);position:relative;transition:.12s}
.mb:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--ink)}
.mb__ph{aspect-ratio:3/4;border-bottom:3px solid var(--line);position:relative;overflow:hidden;display:grid;place-content:center;background:linear-gradient(160deg,#5fd2f0,#0f8fbe)}
.mb__ph img{width:100%;height:100%;object-fit:cover}
.mb__ph i{font-family:var(--font-en);font-size:64px;font-style:normal;color:rgba(255,255,255,.85)}
.mb:nth-child(2) .mb__ph{background:linear-gradient(160deg,#8fd9ea,#127a9e)}
.mb:nth-child(3) .mb__ph{background:linear-gradient(160deg,#4fc9ec,#0b5f80)}
.mb:nth-child(4) .mb__ph{background:linear-gradient(160deg,#a9e6f5,#1b9fd0)}
.mb:nth-child(5) .mb__ph{background:linear-gradient(160deg,#6fd0ea,#0d7ba3)}
.mb__color{position:absolute;top:10px;left:10px;z-index:2;font-size:10px;font-weight:700;letter-spacing:.1em;background:var(--white);border:2px solid var(--line);padding:1px 8px}
.mb__body{padding:14px 15px 16px}
.mb__en{font-family:var(--font-num);font-size:14px;letter-spacing:.14em;color:var(--aqua-deep)}
.mb__name{font-size:19px;font-weight:900;letter-spacing:.06em;margin:1px 0 8px}
.mb__txt{font-size:12px;line-height:1.8;color:#365260}
.mb__x{display:inline-block;margin-top:10px;font-family:var(--font-num);font-size:13px;letter-spacing:.1em;text-decoration:none;border:2px solid var(--line);padding:2px 10px 0;background:var(--aqua-pale)}
.mb__x:hover{background:var(--aqua)}

/* ---------- SCHEDULE ---------- */
.lives{display:grid;gap:14px}
.lv{display:grid;gap:4px 20px;grid-template-columns:1fr;border:3px solid var(--line);background:var(--white);padding:16px 18px;position:relative}
@media(min-width:760px){.lv{grid-template-columns:118px 1fr auto;align-items:center}}
.lv__date{padding-right:0}
@media(min-width:760px){.lv__date{border-right:3px dotted var(--line);padding-right:16px}}
.lv__d{font-family:var(--font-num);font-size:30px;line-height:1;letter-spacing:.04em}
.lv__w{font-family:var(--font-num);font-size:13px;letter-spacing:.14em;color:var(--aqua-deep)}
.lv__ttl{font-size:15px;font-weight:900;line-height:1.5}
.lv__meta{font-size:12px;color:#4a6875;margin-top:3px}
.lv__ticket{font-family:var(--font-num);font-size:14px;letter-spacing:.1em;text-decoration:none;border:3px solid var(--line);background:var(--aqua);padding:5px 16px 2px;box-shadow:3px 3px 0 var(--ink);white-space:nowrap;display:inline-block}
a.lv__ticket:hover{transform:translate(2px,2px);box-shadow:1px 1px 0 var(--ink)}
.lv--past{opacity:.45}
.lv--past .lv__ticket{background:#dfe9ee}
.cal{border:3px solid var(--line);background:var(--white);box-shadow:var(--shadow);padding:14px;margin-top:26px}
.cal iframe{width:100%;border:0;display:block}
.ph-cal{height:420px;background:repeating-linear-gradient(45deg,#e6f6fc 0 12px,#f6fcff 12px 24px);display:grid;place-content:center;gap:6px;justify-items:center;border:2px dashed var(--aqua-deep);text-align:center;padding:16px}
.ph-cal b{font-family:var(--font-num);font-size:18px;letter-spacing:.16em;color:var(--aqua-deep)}
.ph-cal small{font-size:11px;color:#5a7f8d}

/* ---------- LIVE INFO ---------- */
.qa{display:grid;gap:12px}
.qa details{border:3px solid var(--aqua);background:rgba(79,201,236,.06)}
.qa summary{cursor:pointer;list-style:none;padding:13px 16px;font-weight:900;font-size:14px;display:flex;gap:12px;align-items:flex-start}
.qa summary::-webkit-details-marker{display:none}
.qa summary::before{content:"Q";font-family:var(--font-num);font-size:17px;color:var(--aqua);line-height:1.3}
.qa summary::after{content:"+";margin-left:auto;font-family:var(--font-num);font-size:20px;color:var(--aqua)}
.qa details[open] summary::after{content:"\2013"}
.qa .a{padding:0 16px 16px 44px;font-size:13px;line-height:1.95;color:#cfe9f3}
.qa .a a{color:var(--aqua)}
.qa .a strong,.qa .a em{font-style:normal;color:var(--aqua);font-weight:700}
.terms{display:grid;gap:16px 12px;grid-template-columns:repeat(auto-fit,minmax(230px,1fr));margin-top:36px}
.term{border-left:4px solid var(--aqua);padding:2px 0 2px 14px}
.term b{font-size:14px;letter-spacing:.06em}
.term span{display:block;font-size:12px;line-height:1.8;color:#cfe9f3;margin-top:2px}

/* ---------- REGULATIONS ---------- */
.reg{counter-reset:r;display:grid;gap:10px;margin:0;padding:0;list-style:none}
.reg li{counter-increment:r;position:relative;padding-left:42px;font-size:13px;line-height:1.9;list-style:none}
.reg li::before{content:counter(r,decimal-leading-zero);position:absolute;left:0;top:2px;font-family:var(--font-num);font-size:15px;background:var(--aqua);color:var(--ink);padding:0 7px}

/* ---------- GOODS ---------- */
.goods{display:grid;gap:18px;grid-template-columns:repeat(auto-fit,minmax(200px,1fr))}
.gd{border:3px solid var(--line);background:var(--white);box-shadow:var(--shadow-sm);text-decoration:none;display:block;transition:.12s}
.gd:hover{transform:translate(-2px,-2px);box-shadow:8px 8px 0 var(--ink)}
.gd__ph{aspect-ratio:1;border-bottom:3px solid var(--line);display:grid;place-content:center;background:var(--aqua-pale);overflow:hidden}
.gd__ph img{width:100%;height:100%;object-fit:cover}
.gd__ph i{font-family:var(--font-en);font-size:30px;font-style:normal;color:var(--aqua-deep);letter-spacing:.06em;text-align:center;padding:0 10px}
.gd__body{padding:12px 14px}
.gd__body h3{font-size:13px;font-weight:700;line-height:1.6}
.gd__price{font-family:var(--font-num);font-size:19px;letter-spacing:.06em;color:var(--aqua-deep);margin-top:4px}
.shopbar{margin-top:26px;border:3px solid var(--line);background:var(--aqua);display:flex;flex-wrap:wrap;gap:10px;align-items:center;justify-content:space-between;padding:16px 20px;box-shadow:var(--shadow)}
.shopbar p{font-size:13px;font-weight:700;margin:0}
.shopbar a{font-family:var(--font-num);font-size:17px;letter-spacing:.1em;text-decoration:none;border:3px solid var(--line);background:var(--white);padding:6px 22px 3px}
.shopbar a:hover{background:var(--ink);color:var(--aqua)}

/* ---------- CONTACT ---------- */
.contact{display:grid;gap:28px}
@media(min-width:860px){.contact{grid-template-columns:.9fr 1.1fr}}
.contact__note{font-size:13px;line-height:2}
.contact__note h3{font-family:var(--font-en);font-size:24px;margin-bottom:10px}
.form,.wpcf7 form{display:grid;gap:14px}
.form label,.wpcf7 label{display:grid;gap:5px;font-size:12px;font-weight:700;letter-spacing:.1em}
.form input,.form textarea,.form select,
.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 textarea,.wpcf7 select{
  font:inherit;font-size:14px;border:3px solid var(--line);background:var(--white);padding:9px 12px;width:100%;border-radius:0;
}
.form input:focus,.form textarea:focus,.form select:focus,.wpcf7 input:focus,.wpcf7 textarea:focus{outline:3px solid var(--aqua);outline-offset:1px}
.form textarea,.wpcf7 textarea{min-height:130px;resize:vertical}
.form button,.wpcf7 input[type=submit]{
  font-family:var(--font-num);font-size:19px;letter-spacing:.14em;border:3px solid var(--line);background:var(--aqua);
  padding:9px 24px 6px;cursor:pointer;box-shadow:var(--shadow-sm);width:100%;
}
.form button:hover,.wpcf7 input[type=submit]:hover{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink)}
.mailbtn{display:inline-block;font-family:var(--font-num);font-size:18px;letter-spacing:.12em;text-decoration:none;border:3px solid var(--line);background:var(--aqua);padding:8px 26px 5px;box-shadow:var(--shadow-sm)}
.mailbtn:hover{transform:translate(3px,3px);box-shadow:1px 1px 0 var(--ink)}

/* ---------- 記事ページ ---------- */
.page-head{background:var(--ink);color:var(--paper);border-bottom:3px solid var(--line);padding:clamp(38px,7vw,66px) 0}
.page-head__en{font-family:var(--font-en);font-size:clamp(30px,7vw,54px);line-height:.95;color:transparent;-webkit-text-stroke:2px var(--aqua)}
.page-head h1{font-size:clamp(19px,3vw,26px);margin-top:10px;line-height:1.6}
.page-head time{font-family:var(--font-num);font-size:16px;letter-spacing:.1em;color:var(--aqua);display:inline-block;margin-right:12px}
.entry{width:min(100% - 40px,760px);margin:clamp(44px,7vw,74px) auto;font-size:15px;line-height:2}
.entry h2{font-size:20px;border-left:6px solid var(--aqua);padding-left:12px;margin:44px 0 16px}
.entry h3{font-size:17px;margin:32px 0 12px;border-bottom:2px solid var(--aqua);padding-bottom:6px}
.entry ul,.entry ol{margin:0 0 1.4em;padding-left:1.5em}
.entry ul li{list-style:disc}
.entry ol li{list-style:decimal}
.entry img{margin:1.4em auto;border:3px solid var(--line)}
.entry blockquote{border-left:5px solid var(--aqua);background:var(--white);margin:1.6em 0;padding:14px 18px}
.entry a{color:var(--aqua-deep);text-underline-offset:3px}
.entry table{width:100%;border-collapse:collapse;margin:1.4em 0}
.entry th,.entry td{border:2px solid var(--line);padding:8px 12px;font-size:14px}
.entry th{background:var(--aqua-pale)}
.pager{display:flex;flex-wrap:wrap;gap:10px;justify-content:center;margin:0 auto clamp(50px,8vw,80px);width:min(100% - 40px,760px)}
.pager a,.pager span{
  font-family:var(--font-num);font-size:15px;letter-spacing:.08em;text-decoration:none;
  border:3px solid var(--line);background:var(--white);padding:5px 14px 2px;
}
.pager .current,.pager a:hover{background:var(--aqua)}
.nothing{width:min(100% - 40px,760px);margin:clamp(50px,8vw,90px) auto;text-align:center;font-size:14px}

/* ---------- フッター ---------- */
.ft{background:var(--ink);color:var(--paper);border-top:3px solid var(--line);padding:48px 0 28px}
.ft__logo{font-family:var(--font-en);font-size:clamp(40px,10vw,86px);line-height:.9;color:transparent;-webkit-text-stroke:2px var(--aqua);word-break:break-word}
.ft__sns{display:flex;flex-wrap:wrap;gap:8px;margin:20px 0 24px}
.ft__nav{display:flex;flex-wrap:wrap;gap:6px 18px;font-family:var(--font-num);font-size:14px;letter-spacing:.1em}
.ft__nav li{list-style:none}
.ft__nav a{text-decoration:none;color:#9fdcf0}
.ft__nav a:hover{color:var(--aqua)}
.ft__cr{margin-top:26px;font-size:11px;letter-spacing:.1em;color:#6f9cad}

.totop{
  position:fixed;right:16px;bottom:16px;z-index:40;
  font-family:var(--font-num);font-size:14px;letter-spacing:.1em;text-decoration:none;
  border:3px solid var(--line);background:var(--aqua);padding:6px 12px 3px;box-shadow:var(--shadow-sm);
  opacity:0;pointer-events:none;transition:opacity .2s;
}
.totop.is-on{opacity:1;pointer-events:auto}
.totop:hover{transform:translate(2px,2px);box-shadow:2px 2px 0 var(--ink)}

/* ---------- 空データ時の案内 ---------- */
.empty{border:3px dashed var(--aqua-deep);padding:28px 20px;text-align:center;font-size:13px;line-height:1.9;color:var(--aqua-deep);background:rgba(79,201,236,.06)}
.sec--ink .empty{color:var(--aqua);border-color:var(--aqua)}
