/* TIGER CARE - 共通スタイル */
/* Generated for tigercare.jp */



*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth;scroll-snap-type:y mandatory}
body{font-family:'Yusei Magic',sans-serif;overflow-x:hidden}
body.flash-store::after{content:'';position:fixed;inset:0;background:#F5C000;z-index:9999;animation:flashAnim .45s ease forwards;pointer-events:none}
body.flash-hotel::after{content:'';position:fixed;inset:0;background:#1a1a1a;z-index:9999;animation:flashAnim .45s ease forwards;pointer-events:none}
@keyframes flashAnim{0%{opacity:0}25%{opacity:.85}100%{opacity:0}}

.page{scroll-snap-align:start;scroll-snap-stop:always;height:100vh;width:100vw;overflow:hidden;display:flex;flex-direction:column;justify-content:center;position:relative}
.page.s-page,.page.h-page{overflow:hidden}
[data-reveal]{opacity:0;transform:translateY(24px);transition:opacity .6s ease,transform .6s ease}
[data-reveal].visible{opacity:1;transform:translateY(0)}

@keyframes slideFromLeft{from{opacity:0;transform:translateX(-200px) skewX(10deg)}to{opacity:1;transform:translateX(0) skewX(0)}}
@keyframes slideFromRight{from{opacity:0;transform:translateX(200px) skewX(-10deg)}to{opacity:1;transform:translateX(0) skewX(0)}}
@keyframes slideFromTop{from{opacity:0;transform:translateY(-150px) scaleX(0.8)}to{opacity:1;transform:translateY(0) scaleX(1)}}
@keyframes slideFromBottom{from{opacity:0;transform:translateY(150px) scaleX(0.8)}to{opacity:1;transform:translateY(0) scaleX(1)}}
@keyframes zoomInFade{from{opacity:0;transform:scale(0.3) rotate(-5deg)}to{opacity:1;transform:scale(1) rotate(0)}}
@keyframes flipIn{from{opacity:0;transform:perspective(600px) rotateX(-90deg) translateY(80px)}to{opacity:1;transform:perspective(600px) rotateX(0) translateY(0)}}
@keyframes swingIn{from{opacity:0;transform:rotate(-15deg) translateX(-80px) scale(0.7)}to{opacity:1;transform:rotate(0) translateX(0) scale(1)}}
@keyframes bounceIn{0%{opacity:0;transform:scale(0.3)}50%{opacity:1;transform:scale(1.15)}70%{transform:scale(0.95)}100%{opacity:1;transform:scale(1)}}
@keyframes rollIn{from{opacity:0;transform:translateX(-200px) rotate(-30deg)}to{opacity:1;transform:translateX(0) rotate(0)}}
[data-anim="left"]{animation:slideFromLeft .8s cubic-bezier(.22,1,.36,1) both}
[data-anim="right"]{animation:slideFromRight .8s cubic-bezier(.22,1,.36,1) both}
[data-anim="top"]{animation:slideFromTop .8s cubic-bezier(.22,1,.36,1) both}
[data-anim="bottom"]{animation:slideFromBottom .8s cubic-bezier(.22,1,.36,1) both}
[data-anim="zoom"]{animation:zoomInFade .8s cubic-bezier(.22,1,.36,1) both}
[data-anim="flip"]{animation:flipIn .9s cubic-bezier(.22,1,.36,1) both}
[data-anim="swing"]{animation:swingIn .8s cubic-bezier(.22,1,.36,1) both}
[data-anim="bounce"]{animation:bounceIn .9s cubic-bezier(.22,1,.36,1) both}
[data-anim="roll"]{animation:rollIn .8s cubic-bezier(.22,1,.36,1) both}

/* HERO */
.s-left::after{content:'';position:absolute;right:-13px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-left:13px solid #1a1a1a}
.s-left::before{content:'';position:absolute;right:-10px;top:50%;transform:translateY(-50%);width:0;height:0;z-index:1;border-top:5px solid transparent;border-bottom:5px solid transparent;border-left:11px solid #fff}
.s-right::after{content:'';position:absolute;left:-13px;top:50%;transform:translateY(-50%);width:0;height:0;border-top:6px solid transparent;border-bottom:6px solid transparent;border-right:13px solid #1a1a1a}
.s-right::before{content:'';position:absolute;left:-10px;top:50%;transform:translateY(-50%);width:0;height:0;z-index:1;border-top:5px solid transparent;border-bottom:5px solid transparent;border-right:11px solid #fff}
.ch-dot{color:#1a1a1a;font-size:.8em}
.scroll-arrow::after{content:'';display:block;width:clamp(8px,1vw,12px);height:clamp(8px,1vw,12px);border-right:2.5px solid #1a1a1a;border-bottom:2.5px solid #1a1a1a;transform:rotate(45deg) translate(-1px,-1px)}

/* ABOUT */
.switch-section{background:#F5C000;padding:clamp(8px,1vw,14px) clamp(16px,4vw,60px);text-align:center;position:sticky;top:0;z-index:100;border-bottom:3px solid #1a1a1a;transition:background .4s ease,border-color .4s ease}
.switch-lead{font-size:clamp(10px,1vw,13px);color:#1a1a1a;margin-bottom:clamp(6px,.8vw,10px);line-height:1.6;transition:color .4s ease}
.switch-lead span{font-weight:700}
.switch-wrap{display:inline-flex;background:#1a1a1a;border-radius:999px;padding:5px;position:relative;transition:background .4s ease}
.switch-slider{position:absolute;top:5px;bottom:5px;border-radius:999px;background:#F5C000;transition:left .35s cubic-bezier(.22,1,.36,1),width .35s cubic-bezier(.22,1,.36,1),background .4s ease;z-index:1}
.switch-btn{position:relative;z-index:2;padding:clamp(10px,1.5vw,18px) clamp(20px,3vw,48px);border-radius:999px;font-size:clamp(12px,1.5vw,20px);font-family:'Yusei Magic',sans-serif;cursor:pointer;border:none;background:transparent;color:#888;transition:color .3s ease;display:flex;align-items:center;gap:8px;white-space:nowrap}
.switch-btn.active{color:#1a1a1a;font-weight:700}

/* ホテルモード時の色反転 */
body[data-mode="hotel"] .switch-section{background:#1a1a1a;border-bottom-color:#F5C000}
body[data-mode="hotel"] .switch-lead{color:#F5C000}
body[data-mode="hotel"] .switch-wrap{background:#F5C000}
body[data-mode="hotel"] .switch-slider{background:#1a1a1a}
body[data-mode="hotel"] .switch-btn{color:rgba(245,192,0,.4)}
body[data-mode="hotel"] .switch-btn.active{color:#F5C000}
/* SWITCH PC縦タブ */
@media(min-width:769px){
  .switch-section{position:fixed;right:0;left:auto;top:50%;transform:translateY(-50%) translateX(100%);width:auto;padding:0;background:transparent!important;backdrop-filter:none;border-bottom:none;border-radius:12px 0 0 12px;z-index:100;opacity:0;pointer-events:none;transition:transform .5s cubic-bezier(.22,1,.36,1),opacity .5s ease}
  .switch-section.pc-visible{opacity:1;pointer-events:auto;transform:translateY(-50%) translateX(0)}
  .switch-lead{display:none}
  .switch-wrap{display:flex;flex-direction:column;background:rgba(26,26,26,0.9);backdrop-filter:blur(12px);border-radius:12px 0 0 12px;padding:8px 6px;gap:4px;box-shadow:-4px 0 24px rgba(0,0,0,.3);transition:background .4s ease;overflow:hidden}
  .switch-slider{position:absolute;left:6px;right:6px;border-radius:6px;background:#F5C000;transition:top .35s cubic-bezier(.22,1,.36,1),height .35s cubic-bezier(.22,1,.36,1),background .4s ease}
  .switch-btn{padding:clamp(14px,1.8vw,22px) clamp(14px,1.5vw,20px);border-radius:8px;font-size:clamp(11px,1.1vw,15px);writing-mode:vertical-rl;text-orientation:mixed;gap:6px;white-space:nowrap;justify-content:center}
  .switch-btn.active{color:#1a1a1a}
  .btn-icon{writing-mode:horizontal-tb}
  body[data-mode="hotel"] .switch-wrap{background:rgba(245,192,0,0.9)}
  body[data-mode="hotel"] .switch-slider{background:#1a1a1a}
  body[data-mode="hotel"] .switch-btn{color:rgba(0,0,0,.3)}
  body[data-mode="hotel"] .switch-btn.active{color:#F5C000}
}
.panel{display:none}
.panel-active{display:block}
.panel-active{position:static;left:auto;visibility:visible;pointer-events:auto}

/* PROBLEM カード */
.problem-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(8px,1vw,16px);margin-top:clamp(16px,2vw,32px)}
.problem-card{padding:clamp(16px,2vw,28px);position:relative;overflow:hidden;opacity:0;transform:translateY(30px);transition:opacity .5s ease,transform .5s ease}
.problem-card.visible{opacity:1;transform:translateY(0)}
.problem-card:nth-child(2){transition-delay:.08s}
.problem-card:nth-child(3){transition-delay:.16s}
.problem-card:nth-child(4){transition-delay:.24s}
.problem-card h3{font-size:clamp(13px,1.5vw,20px);margin-bottom:8px}
.problem-card p{font-size:clamp(11px,1.2vw,16px);line-height:1.7}
.feat-list{display:flex;flex-direction:column;gap:clamp(16px,2.5vw,36px);margin-top:clamp(16px,2vw,32px)}
.feat-row-s,.feat-row-h{display:flex;align-items:flex-start;gap:clamp(16px,2vw,32px);padding-left:clamp(16px,2vw,32px);border-left:4px solid #F5C000;opacity:0;transform:translateX(-30px);transition:opacity .6s ease,transform .6s ease,translate .3s ease}
.feat-row-s.visible,.feat-row-h.visible{opacity:1;transform:translateX(0)}
.feat-row-s:nth-child(2),.feat-row-h:nth-child(2){transition-delay:.1s}
.feat-row-s:nth-child(3),.feat-row-h:nth-child(3){transition-delay:.2s}
.feat-row-s:hover,.feat-row-h:hover{translate:0 -6px}
.feat-num-s,.feat-num-h{font-size:clamp(40px,6vw,80px);font-family:'Oswald',sans-serif;font-weight:700;line-height:1;flex-shrink:0;opacity:.3}
.feat-text h3{font-size:clamp(16px,2vw,28px);margin-bottom:8px}
.feat-text p{font-size:clamp(12px,1.3vw,18px);line-height:1.7}

/* 比較テーブル縦型 */
.compare-v{border-radius:12px;overflow:hidden;border:1px solid #333}
.cv-header{display:grid;grid-template-columns:clamp(80px,12vw,140px) 1fr 1fr;background:#333}
.cv-header .cv-label{padding:clamp(8px,1vw,14px) clamp(10px,1.2vw,18px);color:#aaa;font-size:clamp(10px,1.1vw,14px)}
.cv-header .cv-old{padding:clamp(8px,1vw,14px) clamp(10px,1.2vw,18px);background:#F5C000;color:#1a1a1a;font-weight:700;font-size:clamp(11px,1.2vw,16px);text-align:center}
.cv-header .cv-new{padding:clamp(8px,1vw,14px) clamp(10px,1.2vw,18px);background:#555;color:#fff;font-weight:700;font-size:clamp(11px,1.2vw,16px);text-align:center}
.cv-row{display:grid;grid-template-columns:clamp(80px,12vw,140px) 1fr 1fr;border-top:1px solid #333;transition:filter .2s ease}
.cv-row:hover{filter:brightness(1.12)}
.cv-label{padding:clamp(8px,1vw,14px) clamp(10px,1.2vw,18px);font-weight:700;font-size:clamp(10px,1.1vw,14px);display:flex;align-items:center}
.cv-old{padding:clamp(8px,1vw,14px) clamp(10px,1.2vw,18px);font-size:clamp(10px,1.1vw,14px);display:flex;align-items:center;color:#ccc;background:#1a1a1a}
.cv-new{padding:clamp(8px,1vw,14px) clamp(10px,1.2vw,18px);font-size:clamp(10px,1.1vw,14px);display:flex;align-items:center;color:#fff;font-weight:700;background:#222;border-left:3px solid #F5C000}
.cv-label{background:#222;color:#F5C000}
.service-inner{display:grid;grid-template-columns:1fr 1fr;gap:clamp(24px,4vw,72px);align-items:center;margin-top:clamp(16px,2vw,32px)}
@media(max-width:700px){.service-inner{grid-template-columns:1fr}}
.service-info{opacity:0;transform:translateX(-30px);transition:opacity .7s ease,transform .7s ease}
.service-info.visible{opacity:1;transform:translateX(0)}
.service-visual{opacity:0;transform:translateX(30px);transition:opacity .7s ease .1s,transform .7s ease .1s}
.service-visual.visible{opacity:1;transform:translateX(0)}
.service-visual>div{transition:translate .3s ease,box-shadow .3s ease}
.service-visual:hover>div{translate:0 -6px;box-shadow:0 16px 40px rgba(0,0,0,.25)}
.s-list{list-style:none;display:flex;flex-direction:column;gap:10px;margin-bottom:24px}
.s-list li{display:flex;align-items:flex-start;gap:10px;font-size:clamp(12px,1.3vw,16px);line-height:1.5}
.s-list li::before{content:'';font-weight:700;flex-shrink:0}

/* STRENGTH */
.strength-grid{display:grid;grid-template-columns:1fr 1fr;gap:clamp(8px,1vw,16px);margin-top:clamp(16px,2vw,32px)}
.strength-card{border-radius:16px;padding:clamp(16px,2vw,28px);opacity:0;transform:translateY(30px);transition:opacity .5s ease,transform .5s ease,translate .3s ease,box-shadow .3s ease}
.strength-card.visible{opacity:1;transform:translateY(0)}
.strength-card:hover{translate:0 -6px;box-shadow:0 12px 32px rgba(0,0,0,.3)}
.strength-card:nth-child(2){transition-delay:.08s}
.strength-card:nth-child(3){transition-delay:.16s}
.strength-card:nth-child(4){transition-delay:.24s}
.strength-num{font-size:clamp(28px,4vw,56px);font-family:'Oswald',sans-serif;font-weight:700;line-height:1;margin-bottom:10px}
.strength-card h3{font-size:clamp(13px,1.5vw,20px);margin-bottom:8px}
.strength-card p{font-size:clamp(11px,1.2vw,16px);line-height:1.7}

.sec-title{font-size:clamp(22px,3.5vw,56px);font-family:'Yusei Magic',sans-serif;line-height:1.2;margin-bottom:clamp(16px,2.5vw,40px);opacity:0;transform:translateY(30px);transition:opacity .7s ease .1s,transform .7s ease .1s}
.sec-title.visible{opacity:1;transform:translateY(0)}

.footer{background:#111;padding:clamp(20px,2.5vw,36px) clamp(24px,8vw,120px);display:flex;align-items:center;justify-content:space-between;flex-wrap:wrap;gap:16px;scroll-snap-align:start}
.footer-brand{font-size:clamp(14px,1.8vw,22px);color:#F5C000;font-family:'Oswald',sans-serif;font-weight:700}
.footer-copy{font-size:clamp(9px,.9vw,13px);color:#555}
.tiger-fixed{display:none}

@keyframes fadeIn{from{opacity:0}to{opacity:1}}
@keyframes marqueeL{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}
@keyframes marqueeR{0%{transform:translateX(-50%)}100%{transform:translateX(0)}}


