
:root{--red:#d7141a;--pink:#d7141a;--purple:#1c1c1e;--teal:#1c1c1e;--gray:#ededed;--ink:#000;--txt:#333;--mute:#666;
  --jp:"Hiragino Kaku Gothic Pro","Hiragino Sans","Noto Sans JP",sans-serif;--en:Roboto,var(--jp)}

/* ヘッダー */
.hd{position:fixed;inset:0 0 auto;z-index:50;height:94px;display:flex;align-items:center;padding:0 28px;transition:background .25s}
.hd.is-on{background:rgba(255,255,255,.95)}
.logo{line-height:1;font-style:italic;font-weight:900;font-family:var(--jp)}
.logo small{display:block;font-size:12px;color:var(--red);letter-spacing:.06em;margin-bottom:5px}
.logo b{font-size:32px;font-weight:900;letter-spacing:.02em}
.hd:not(.is-on) .logo,.hd:not(.is-on) .logo small,.hd:not(.is-on) .hd__tel{color:#fff}
.logo,.logo small{transition:color .25s}
.nav{margin-left:auto;display:flex;align-items:center;gap:26px}
.nav a{text-align:center;font:900 16.5px/1.5 var(--en)}
.nav a span{display:block;font-size:10.7px;font-weight:900}
.nav .nav__btn{border:1px solid #000;border-radius:3px;padding:6px 26px;background:rgba(255,255,255,.75);font-size:18.9px;line-height:1.3}
.nav .nav__btn span{font-size:12.3px}
.menu,.hd__tel{display:none}
.round{position:fixed;z-index:51;top:102px;right:28px;width:80px;height:80px;border-radius:50%;background:#000;color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font:900 19px/1.1 var(--en)}
.round small{font-size:11px;margin-top:5px;font-family:var(--jp)}
.trial{position:fixed;z-index:51;right:20px;bottom:20px;width:138px;height:138px;border-radius:50%;background:var(--red);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;font-weight:700;font-size:22px;line-height:1.3;box-shadow:0 4px 14px rgba(0,0,0,.28);opacity:0;pointer-events:none;transition:opacity .3s}
.trial.is-on{opacity:1;pointer-events:auto}
.trial em{font:700 21px/1.2 var(--en)}.trial small{font-size:14px}

.strip{background:var(--gray);padding:18px 0;font-size:12px;line-height:1.6}
.ft{background:#000;color:#fff;padding:56px 0 32px}
.ft .logo small{color:#fff}
.ft li{padding:3px 0}.ft li::before{content:"";display:inline-block;margin-right:8px;border:4px solid transparent;border-left-color:#fff;border-right-width:0}
.ft p{line-height:2;letter-spacing:.03em}.ft__c{margin-top:40px;font-size:10px}
.trial.is-on{animation:sway 5s ease-in-out infinite}
.bar{position:fixed;top:0;left:0;right:0;height:4px;z-index:60;pointer-events:none}
.bar i{display:block;height:100%;background:var(--red);transform:scaleX(0);transform-origin:0 50%}
@keyframes sway{0%,88%,100%{rotate:0deg}91%{rotate:-7deg}94%{rotate:6deg}97%{rotate:-3deg}}
@media (max-width:767px){
  .hd{height:64px;padding:0 12px}
  .logo b{font-size:25px}.logo small{font-size:10px;margin-bottom:3px}
  .menu{display:grid;place-content:center;gap:6px;flex:none;width:46px;height:46px;border-radius:50%;border:0;background:#000}
  .menu i{display:block;width:22px;height:2px;background:#fff}
  .nav{display:none;position:absolute;left:0;right:0;top:64px;margin:0;padding:12px 20px 20px;background:#fff;flex-direction:column;gap:12px;align-items:stretch}
  .nav.is-open{display:flex}.nav a:not(.nav__btn){display:block}
  .round{top:72px;right:12px;width:46px;height:46px;font-size:12px}.round small{display:none}
  .trial{right:10px;bottom:10px;width:104px;height:104px;font-size:16px}.trial em{font-size:15px}.trial small{font-size:12px}
}
.hd a,.ft a,.round,.trial{text-decoration:none;color:inherit}.round,.trial{color:#fff}.ft ul{list-style:none;margin:0;padding:0}
.hd__tel{color:#000}.hd .logo{color:#000}
main{padding-top:94px}
@media (max-width:767px){main{padding-top:64px}}
.ft__g{display:grid;grid-template-columns:auto auto 1fr;gap:64px;margin-top:32px;font-size:12px}
@media (max-width:767px){
  .hd__tel{display:block;margin-left:auto;margin-right:12px;text-align:center;font:400 10px/1 var(--en);letter-spacing:.1em}
  .hd__tel b{display:block;font:700 15px/1.3 var(--en);letter-spacing:0;margin-bottom:2px}
  .ft__g{grid-template-columns:minmax(0,1fr);gap:24px}
}

/* 日本語の改行（文節で折り返す） */
body{word-break:auto-phrase;line-break:strict}
.article__body{overflow-wrap:anywhere}
