/* ito：ひと席の距離感を、余白と写真の誌面に。 */
.salon{
 --bg:#f8f6f2;--ink:#302c2b;--line:#d1c9c4;--tint:#eee9e4;--card:#fffdfa;
 --accent:#65504e;--accent-deep:#493b39;--on-accent:#fffdfa;--focus:#886159;
 --head-bg:#f8f6f2f5;--page-head-bg:#eee9e4;--foot-bg:#332e2c;--foot-ink:#eee9e3;--note-bg:#655b57;
 --r-s:0px;--r-m:0px;--field-line:#b7aaa3;font-size:15px;line-height:2.1;
}
.salon .head{border-bottom:1px solid var(--line);background:var(--head-bg)}
.salon .logo{font-size:30px;font-weight:400;letter-spacing:.03em}
.salon .logo small{font-size:9px}
.salon .gnav a{font-weight:400}
.salon .gnav .cta a{font-weight:400}
.salon .btn{letter-spacing:.05em}
.ito-home .ito-cover{max-width:1600px;margin:auto;display:grid;grid-template-columns:36% 61% 3%;padding:38px 0 40px 5%;position:relative}
.ito-home .ito-cover-copy{padding:25px 25px 20px 0;align-self:center}
.ito-home .ito-cover-copy .eyebrow{font-size:9px;letter-spacing:.16em;white-space:nowrap;margin-bottom:0}
.ito-home .ito-wordmark{font-family:var(--font-logo);font-size:155px;line-height:.85;font-weight:400;letter-spacing:-.02em;margin:28px 0 40px;display:flex;align-items:baseline;gap:18px}
.ito-home .ito-wordmark span{font:italic 15px/1 var(--font-logo);letter-spacing:.04em}
.ito-home h1{font-size:clamp(34px,3.4vw,50px);line-height:1.75;letter-spacing:.12em;font-weight:400;margin-bottom:22px}
.ito-home .ito-cover-copy>p:not(.eyebrow):not(.ito-wordmark){font-size:14px;line-height:2.2;margin-bottom:30px}
.ito-home .ito-cover-copy .plain-link{border:0;display:block;margin-top:12px;font-size:11px}
.ito-home .ito-cover-photo{margin:0;position:relative;min-width:0}
.ito-home .ito-cover-photo img{width:100%;height:660px;object-fit:cover;object-position:69% center}
.ito-home .ito-cover-photo figcaption{position:absolute;left:0;bottom:30px;padding:12px 26px;background:var(--bg);font-family:var(--font-head);font-size:14px;letter-spacing:.09em}
.ito-home .ito-margin-note{writing-mode:vertical-rl;display:flex;align-items:center;justify-content:space-between;font-size:9px;letter-spacing:.13em;padding-block:8px}
.ito-home .ito-facts{display:flex;justify-content:center;gap:6%;margin:0 5%;padding:22px 0;border-block:1px solid var(--line)}
.ito-home .ito-facts p{font-size:12px;margin:0}
.ito-home .ito-facts b{font-family:var(--font-head);font-size:17px;font-weight:400;margin-right:10px}
.ito-home .ito-section-top{display:flex;justify-content:space-between;gap:40px;align-items:flex-end;margin-bottom:42px}
.ito-home .ito-section-top h2{font-size:42px;font-weight:400}
.ito-home .ito-section-top>p{font-size:13px;line-height:2.2;max-width:28em;margin:0 7% 8px 0}
.ito-home .ito-style-grid{display:grid;grid-template-columns:1.2fr .84fr .94fr;gap:5%;align-items:start}
.ito-home .ito-style{display:block;text-decoration:none}
.ito-home .ito-style img{width:100%;aspect-ratio:3/4;object-fit:cover}
.ito-home .ito-style-bob{margin-top:20px}
.ito-home .ito-style-short{margin-top:100px}
.ito-home .ito-style-long{margin-top:190px}
.ito-home .ito-style-long img{aspect-ratio:3/4;object-position:50% 25%}
.ito-home .style-index{display:block;font:12px/1.4 var(--font-logo);letter-spacing:.12em;color:var(--accent);margin-top:16px}
.ito-home .ito-style h3{font-weight:400;font-size:19px;margin-top:12px;margin-bottom:8px;line-height:1.7}
.ito-home .ito-style>span:not(.style-index){display:block;font-size:11px}
.ito-home .ito-style small{display:block;font-size:10px;color:#6a605d;margin-top:2px}
.ito-home .ito-styles>.plain-link{display:table;margin-top:45px;margin-left:auto}
.ito-home .ito-person{display:grid;grid-template-columns:.85fr 1fr;column-gap:10%;border-top:1px solid var(--line);padding-top:70px}
.ito-home .ito-person-heading{grid-column:1/-1;margin-bottom:48px;padding-left:15%}
.ito-home .ito-person-heading h2{font-weight:400;line-height:1.9}
.ito-home .ito-person figure{margin:0;align-self:start}
.ito-home .ito-person img{width:100%;aspect-ratio:4/5;object-fit:cover}
.ito-home .ito-person figcaption{font-size:10px;margin-top:10px}
.ito-home .ito-person-copy{align-self:center;font-size:14px;line-height:2.4}
.ito-home .ito-person-copy>p{margin-bottom:24px}
.ito-home .stylist-sign{font-family:var(--font-head);font-size:25px;letter-spacing:.08em;line-height:2}
.ito-home .stylist-sign span{display:block;font-family:var(--font-body);font-size:10px;letter-spacing:.04em}
.ito-home .ito-menu{display:grid;grid-template-columns:1fr 1fr;gap:10%;border-top:1px solid var(--line)}
.ito-home .ito-menu h2{font-weight:400;margin-bottom:28px;font-size:33px}
.ito-home .ito-menu-intro>p:not(.eyebrow){font-size:13px;line-height:2.3}
.ito-home .price{border-top:1px solid var(--ink);margin-top:8px}
.ito-home .price th,.ito-home .price td{padding:22px 4px}
.ito-home .price th{font-family:var(--font-head);font-size:19px;font-weight:400}
.ito-home .price small{font-family:var(--font-body);font-size:11px;letter-spacing:0}
.ito-home .price td{font-family:var(--font-logo);font-size:25px}
.ito-home .ito-menu .small{font-size:11px;margin-top:16px}
.ito-home .ito-booking{display:grid;grid-template-columns:1fr .85fr;gap:10%;background:#e9e1db;width:100%;padding-inline:max(48px,calc((100vw - 1200px)/2))}
.ito-home .ito-booking h2{font-size:36px;font-weight:400;line-height:1.8;margin-bottom:24px}
.ito-home .ito-booking-copy>p:not(.eyebrow){font-size:14px;line-height:2.2}
.ito-home .ito-booking-copy .small{font-size:10px!important;margin-top:18px}
.ito-home .ito-visit{padding-top:18px}
.ito-home .ito-visit dl{margin:0 0 24px}
.ito-home .ito-visit dl>div{display:grid;grid-template-columns:6em 1fr;gap:18px;padding:12px 0;border-bottom:1px solid #c9beb5}
.ito-home .ito-visit dt{font-size:11px}
.ito-home .ito-visit dd{margin:0;font-size:13px}
.ito-home .ito-visit small{display:block;font-size:10px}
.salon .page-head{padding-block:64px;background:var(--bg);border-bottom:1px solid var(--line)}
.salon .page-head h1{font-weight:400}
.salon .frame{border:0;padding:0}
.salon .features>div{padding:24px 0}
.salon .foot-grid{grid-template-columns:1.5fr 1fr 1fr}
.salon .foot .logo{font-size:38px}
.salon .slot-wrap{border-top:1px solid var(--ink)}
.salon .slots{background:transparent}
.salon .slots th,.salon .slots td{border-inline:0}
@media(max-width:1120px){
 .ito-home .ito-cover{grid-template-columns:40% 57% 3%;padding-left:32px}
 .ito-home .ito-cover-photo img{height:600px}
 .ito-home .ito-wordmark{font-size:130px}
 .ito-home .ito-facts{gap:4%}
 .ito-home .ito-facts b{font-size:15px;margin-right:5px}
}
@media(max-width:900px){
 .salon .logo{font-size:28px}
 .ito-home .ito-cover{display:grid;grid-template-columns:1fr;padding:0 0 24px}
 .ito-home .ito-cover-copy{display:block;position:relative;padding:26px 24px 28px}
 .ito-home .ito-cover-copy .eyebrow{font-size:8px;white-space:normal;letter-spacing:.1em;max-width:210px;padding-right:35px}
 .ito-home .ito-wordmark{position:absolute;right:24px;top:28px;font-size:58px;margin:0;display:block}
 .ito-home .ito-wordmark span{display:none}
 .ito-home h1{font-size:32px;margin:35px 0 18px;line-height:1.65;letter-spacing:.1em}
 .ito-home .ito-cover-copy>p:not(.eyebrow):not(.ito-wordmark){grid-column:1/-1;font-size:12px;margin-bottom:20px}
 .ito-home .ito-cover-copy .btn{grid-column:1/-1;justify-self:start}
 .ito-home .ito-cover-copy .plain-link{grid-column:1/-1;justify-self:start;margin-top:6px}
 .ito-home .ito-cover-photo{margin:0 20px}
 .ito-home .ito-cover-photo img{height:70vw;max-height:490px;object-position:72% center}
 .ito-home .ito-cover-photo figcaption{left:0;bottom:20px;padding:8px 14px;font-size:10px}
 .ito-home .ito-margin-note{display:none}
 .ito-home .ito-facts{margin-inline:20px;display:grid;grid-template-columns:1fr 1fr;gap:8px;padding:16px 0}
 .ito-home .ito-facts p{font-size:10px}
 .ito-home .ito-facts p:last-child{grid-column:1/-1}
 .ito-home .ito-facts b{font-size:15px;margin-right:8px}
 .ito-home .ito-section-top{display:block;margin-bottom:30px}
 .ito-home .ito-section-top h2{font-size:31px}
 .ito-home .ito-section-top>p{font-size:12px;margin:20px 0 0}
 .ito-home .ito-style-grid{grid-template-columns:1fr 1fr;gap:24px 18px}
 .ito-home .ito-style-bob{margin-top:0}
 .ito-home .ito-style-short{margin-top:66px}
 .ito-home .ito-style-long{margin-top:0;grid-column:1/-1;width:72%}
 .ito-home .ito-style-long img{aspect-ratio:4/3;object-position:50% 25%}
 .ito-home .ito-style h3{font-size:16px;margin-top:9px}
 .ito-home .style-index{font-size:10px}
 .ito-home .ito-style>span:not(.style-index){font-size:10px}
 .ito-home .ito-style small{font-size:10px;line-height:1.8}
 .ito-home .ito-styles>.plain-link{margin-top:28px;margin-left:0}
 .ito-home .ito-person{grid-template-columns:1fr;gap:28px;padding-top:44px}
 .ito-home .ito-person-heading{padding:0;margin:0}
 .ito-home .ito-person-heading h2{font-size:24px;line-height:1.8}
 .ito-home .ito-person img{aspect-ratio:4/3}
 .ito-home .ito-person-copy{font-size:13px;line-height:2.3}
 .ito-home .ito-menu{grid-template-columns:1fr;gap:22px;padding-top:44px}
 .ito-home .ito-menu h2{font-size:28px}
 .ito-home .price th{font-size:17px}
 .ito-home .price td{font-size:22px;min-width:6em}
 .ito-home .ito-booking{grid-template-columns:1fr;gap:36px;padding-inline:24px}
 .ito-home .ito-booking h2{font-size:29px}
 .ito-home .ito-booking-copy>p:not(.eyebrow){font-size:13px}
 .ito-home .ito-booking-copy .small{max-width:30em}
 .salon .foot-grid{grid-template-columns:1fr}
 .salon .foot .logo{font-size:34px}
}
@media(max-width:360px){.ito-home .ito-wordmark{font-size:50px}.ito-home h1{font-size:29px}}
