/*
Theme Name: Mays Original
Theme URI: https://may-s.com/
Author: 合同会社Mays
Author URI: https://may-s.com/
Description: 宿泊施設運営・Web支援・業務効率化支援を行う合同会社Maysの完全オリジナルテーマ。
Version: 2.6.4
Requires at least: 6.2
Tested up to: 6.6
Requires PHP: 7.4
Text Domain: mays-original
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/gpl-2.0.html
*/

:root{--mays-ink:#31413f;--mays-text:#52615f;--mays-green:#809b89;--mays-green-dark:#637e6d;--mays-sage:#edf3ee;--mays-beige:#f5f0e8;--mays-blue:#e8f0f2;--mays-white:#fff;--mays-border:#dfe7e2;--mays-radius:20px;--mays-shadow:0 16px 42px rgba(56,76,70,.09);--mays-max:1160px}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--mays-text);background:#fff;font-family:"Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;line-height:1.8;-webkit-font-smoothing:antialiased}body.admin-bar .site-header{top:32px}img{max-width:100%;height:auto;vertical-align:middle}a{color:var(--mays-green-dark);text-decoration:none}a:hover{opacity:.82}button,input,textarea,select{font:inherit}.container{width:min(calc(100% - 40px),var(--mays-max));margin-inline:auto}.screen-reader-text{position:absolute!important;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}
.site-header{position:sticky;z-index:100;top:0;background:rgba(255,255,255,.94);border-bottom:1px solid rgba(223,231,226,.8);backdrop-filter:blur(14px)}.header-inner{min-height:76px;display:flex;align-items:center;justify-content:space-between;gap:24px}.site-branding{display:flex;align-items:center;min-width:0}.custom-logo{display:block;width:auto;max-height:48px}.site-title{margin:0;color:var(--mays-ink);font-family:Georgia,"Yu Mincho",serif;font-size:1.45rem;letter-spacing:.08em;font-weight:600}.site-title small{display:block;color:var(--mays-green);font-family:inherit;font-size:.6rem;letter-spacing:.14em}.primary-menu{display:flex;align-items:center;gap:30px;margin:0;padding:0;list-style:none}.primary-menu a{color:var(--mays-ink);font-size:.9rem;font-weight:600}.menu-toggle{display:none;width:44px;height:44px;border:0;border-radius:50%;background:var(--mays-sage);color:var(--mays-ink)}.menu-toggle span,.menu-toggle::before,.menu-toggle::after{display:block;width:20px;height:2px;margin:4px auto;background:currentColor;content:"";transition:.2s}.menu-toggle[aria-expanded=true] span{opacity:0}.menu-toggle[aria-expanded=true]::before{transform:translateY(6px) rotate(45deg)}.menu-toggle[aria-expanded=true]::after{transform:translateY(-6px) rotate(-45deg)}
.hero{position:relative;min-height:clamp(580px,75vh,760px);display:flex;align-items:center;overflow:hidden;background:#f4f2ec}.hero-bg{position:absolute;inset:0;background-size:cover;background-position:center}.hero-bg::after{position:absolute;inset:0;background:linear-gradient(90deg,rgba(255,255,255,.97) 0%,rgba(255,255,255,.86) 34%,rgba(255,255,255,.15) 65%,rgba(255,255,255,.02));content:""}.hero-content{position:relative;z-index:2;width:min(570px,58%);padding:90px 0}.eyebrow{display:flex;align-items:center;gap:10px;margin:0 0 16px;color:var(--mays-green-dark);font-size:.78rem;font-weight:700;letter-spacing:.18em;text-transform:uppercase}.eyebrow::before{width:30px;height:1px;background:currentColor;content:""}.hero h1{max-width:min(100%,10.5em);margin:0;color:var(--mays-ink);font-family:"Yu Mincho",YuMincho,serif;font-size:clamp(2.1rem,5vw,4.5rem);font-weight:500;line-height:1.38;letter-spacing:.035em;word-break:keep-all;overflow-wrap:normal;text-wrap:balance}.hero-title-line{display:block;width:max-content;max-width:100%;white-space:nowrap}.hero-lead{max-width:500px;margin:24px 0 0;font-size:clamp(1rem,2vw,1.13rem);line-height:2;line-break:strict;word-break:auto-phrase;overflow-wrap:break-word}.button-row{display:flex;flex-wrap:wrap;gap:12px;margin-top:34px}.button,.wp-block-button__link{display:inline-flex;min-height:50px;align-items:center;justify-content:center;padding:10px 25px;border:1px solid var(--mays-green-dark);border-radius:999px;background:var(--mays-green-dark);color:#fff;font-weight:700;transition:.2s}.button:hover{opacity:1;transform:translateY(-2px);box-shadow:0 8px 20px rgba(80,110,90,.18)}.button-outline{background:rgba(255,255,255,.7);color:var(--mays-green-dark)}
.home-section{padding:clamp(76px,10vw,130px) 0}.section-head{max-width:680px;margin-bottom:44px}.section-head.center{margin-inline:auto;text-align:center}.section-head.center .eyebrow{justify-content:center}.section-title{margin:0;color:var(--mays-ink);font-family:"Yu Mincho",YuMincho,serif;font-size:clamp(1.9rem,4vw,3rem);font-weight:500;line-height:1.45}.section-lead{margin:16px 0 0;line-height:2}.about-layout{display:grid;grid-template-columns:1.05fr .95fr;align-items:center;gap:clamp(40px,8vw,100px)}.about-visual{position:relative;min-height:410px;border-radius:80px 18px 80px 18px;background:var(--mays-beige);overflow:hidden}.about-visual img{width:100%;height:100%;min-height:410px;object-fit:cover}.about-visual.no-image::after{position:absolute;inset:15%;border:1px solid rgba(128,155,137,.45);border-radius:50%;content:""}.about-copy{font-size:1rem}.about-copy p{margin:0 0 1em}
.services-section{background:var(--section-bg,var(--mays-beige))}.card-grid{display:grid;grid-template-columns:repeat(var(--columns,3),minmax(0,1fr));gap:22px}.service-card{padding:clamp(28px,4vw,42px);border:1px solid rgba(255,255,255,.7);border-radius:var(--mays-radius);background:rgba(255,255,255,.86);box-shadow:0 1px 0 rgba(255,255,255,.8)}.service-number{color:var(--mays-green);font-family:Georgia,serif;font-size:.85rem;letter-spacing:.1em}.service-icon{display:grid;width:58px;height:58px;margin:22px 0;border-radius:18px;background:var(--mays-sage);place-items:center;color:var(--mays-green-dark);font-size:1.4rem}.service-card h3,.facility-card h3,.feature-item h3{margin:0 0 13px;color:var(--mays-ink);font-size:1.18rem}.service-card p{margin:0;font-size:.93rem}
.facilities-section{background:var(--section-bg,#fff)}.facility-card{position:relative;overflow:hidden;border-radius:var(--mays-radius);background:#fff;box-shadow:var(--mays-shadow)}.facility-image{display:block;aspect-ratio:4/3;background:var(--mays-sage);overflow:hidden}.facility-image img{width:100%;height:100%;object-fit:cover;transition:transform .5s}.facility-card:hover .facility-image img{transform:scale(1.035)}.facility-info{padding:24px}.facility-area{margin:0 0 8px;color:var(--mays-green-dark);font-size:.78rem;font-weight:700;letter-spacing:.08em}.facility-info p{margin:0;font-size:.9rem}.facility-meta{display:flex;gap:16px;margin-top:15px;padding-top:15px;border-top:1px solid var(--mays-border);font-size:.82rem}.empty-message{grid-column:1/-1;padding:35px;border:1px dashed var(--mays-border);border-radius:var(--mays-radius);text-align:center}
.features-section{background:var(--section-bg,var(--mays-sage))}.feature-list{display:grid;grid-template-columns:repeat(var(--columns,3),1fr);gap:38px}.feature-item{position:relative;padding:30px 0 0;border-top:1px solid rgba(99,126,109,.3)}.feature-index{position:absolute;top:-17px;left:0;padding-right:12px;background:var(--section-bg,var(--mays-sage));color:var(--mays-green);font-family:Georgia,serif;font-size:1.15rem}.feature-item p{margin:0;font-size:.93rem}
.news-list{border-top:1px solid var(--mays-border)}.news-item{display:grid;grid-template-columns:130px 110px 1fr;align-items:center;gap:20px;padding:22px 8px;border-bottom:1px solid var(--mays-border);color:var(--mays-text)}.news-item time{font-family:Georgia,serif;color:#7d8986}.news-category{padding:3px 10px;border-radius:999px;background:var(--mays-blue);text-align:center;font-size:.75rem}.news-title{color:var(--mays-ink);font-weight:600}.section-more{margin-top:28px;text-align:right}
.contact-section{padding:clamp(70px,10vw,115px) 0;background:var(--section-bg,var(--mays-blue))}.contact-box{display:grid;grid-template-columns:1fr auto;align-items:center;gap:40px;padding:clamp(34px,6vw,68px);border-radius:32px;background:#fff}.contact-box .section-head{margin:0}.contact-box .button{min-width:190px}
.site-footer{padding:70px 0 25px;background:#3e514d;color:rgba(255,255,255,.78)}.footer-grid{display:grid;grid-template-columns:minmax(260px,.8fr) minmax(0,1.2fr);align-items:start;gap:clamp(35px,5vw,70px)}.footer-brand .site-title{color:#fff}.footer-text{max-width:440px;margin-top:18px;font-size:.87rem}.footer-menu{display:flex;flex-wrap:nowrap;align-items:center;justify-content:flex-end;gap:clamp(12px,1.7vw,26px);margin:0;padding:5px 0;list-style:none}.footer-menu li{flex:0 0 auto;white-space:nowrap}.footer-menu a,.site-footer .primary-menu a{display:block;color:#fff;font-size:clamp(.72rem,1.02vw,.86rem);font-weight:600;line-height:1.5;white-space:nowrap}.site-footer a:visited{color:#fff}.copyright{margin:55px 0 0;padding-top:22px;border-top:1px solid rgba(255,255,255,.15);font-size:.72rem;text-align:center}
.page-header{padding:70px 0;background:var(--mays-sage)}.page-header h1{margin:0;color:var(--mays-ink);font-family:"Yu Mincho",serif;font-size:clamp(2rem,4vw,3.3rem);font-weight:500}.page-content{padding:70px 0 110px}.entry-content{max-width:820px;margin-inline:auto}.entry-content>p,.entry-content>ul,.entry-content>ol{line-height:2}.entry-content h2{margin-top:2.2em;color:var(--mays-ink)}.entry-content img{border-radius:12px}.post-list{display:grid;gap:22px}.post-card{padding:28px;border:1px solid var(--mays-border);border-radius:16px}.post-card h2{margin:.3em 0}.post-card time{font-size:.82rem}.pagination{margin-top:40px}.nav-links{display:flex;gap:8px}.page-numbers{padding:8px 13px;border:1px solid var(--mays-border);border-radius:8px}.page-numbers.current{background:var(--mays-green-dark);color:#fff}
.facility-single-grid{display:grid;grid-template-columns:1.2fr .8fr;gap:55px}.facility-main-image img{width:100%;border-radius:22px}.facility-details{padding:28px;border-radius:18px;background:var(--mays-sage)}.facility-details dl{margin:0}.facility-details div{display:grid;grid-template-columns:90px 1fr;gap:15px;padding:13px 0;border-bottom:1px solid rgba(99,126,109,.18)}.facility-details div:last-child{border:0}.facility-details dt{font-weight:700;color:var(--mays-ink)}.facility-details dd{margin:0}.facility-gallery{display:grid;grid-template-columns:repeat(3,1fr);gap:10px;margin-top:35px}.facility-gallery img{width:100%;aspect-ratio:1;object-fit:cover;border-radius:10px}
input[type=text],input[type=email],input[type=tel],input[type=url],input[type=number],textarea,select{width:100%;padding:13px 15px;border:1px solid var(--mays-border);border-radius:9px;background:#fff}input:focus,textarea:focus,select:focus{outline:2px solid rgba(128,155,137,.35);border-color:var(--mays-green)}
@media(max-width:900px){body.admin-bar .site-header{top:46px}.menu-toggle{display:block}.site-navigation{position:absolute;top:100%;right:0;left:0;visibility:hidden;padding:10px 20px 22px;background:#fff;opacity:0;transform:translateY(-10px);transition:.2s}.site-navigation.is-open{visibility:visible;opacity:1;transform:none}.primary-menu{display:block}.primary-menu li{border-bottom:1px solid var(--mays-border)}.primary-menu a{display:block;padding:15px 4px}.hero{min-height:660px;align-items:flex-end}.hero-bg{background-position:65% center}.hero-bg::after{background:linear-gradient(180deg,rgba(255,255,255,.08) 0%,rgba(255,255,255,.45) 38%,rgba(255,255,255,.97) 68%)}.hero-content{width:100%;padding:310px 0 60px}.about-layout,.facility-single-grid{grid-template-columns:1fr}.about-visual{order:2;min-height:330px}.card-grid{grid-template-columns:repeat(min(var(--columns,3),2),1fr)}.feature-list{grid-template-columns:1fr}.contact-box{grid-template-columns:1fr}.footer-grid{grid-template-columns:1fr;gap:35px}.footer-menu{flex-wrap:wrap;justify-content:flex-start}.footer-menu a,.site-footer .primary-menu a{font-size:.84rem}}
@media(max-width:600px){.container{width:min(calc(100% - 32px),var(--mays-max))}.header-inner{min-height:66px}.site-title{font-size:1.2rem}.hero{min-height:610px}.hero-content{padding:275px 0 48px}.hero h1{max-width:100%;font-size:clamp(1.75rem,8.5vw,2.15rem);line-height:1.42;letter-spacing:.015em}.hero-lead{max-width:34em;font-size:clamp(.9rem,3.8vw,.96rem);line-height:1.9}.button-row{gap:9px}.button{min-height:46px;padding:9px 19px;font-size:.87rem}.home-section{padding:70px 0}.section-head{margin-bottom:32px}.card-grid{grid-template-columns:1fr}.about-visual,.about-visual img{min-height:270px}.service-card{padding:28px}.news-item{grid-template-columns:90px 1fr;gap:8px 12px}.news-category{grid-column:2}.news-title{grid-column:1/-1}.contact-box{padding:30px 22px}.footer-grid{gap:30px}.footer-menu{display:grid;grid-template-columns:1fr 1fr}.facility-gallery{grid-template-columns:repeat(2,1fr)}}
@media(max-width:360px){.hero h1{font-size:clamp(1.58rem,8.2vw,1.82rem);letter-spacing:0}.hero-content{padding-bottom:42px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{transition:none!important}}

/* Mays FAQ block pattern. */
.mays-faq{margin:3rem 0}.mays-faq__title{margin:0 0 1.5rem;color:#1f2937;font-size:clamp(1.5rem,3vw,2rem);font-weight:700;line-height:1.4}.mays-faq__item{margin:0 0 1rem;overflow:hidden;border:1px solid #e5e7eb;border-radius:14px;background:#fff;transition:border-color .2s ease,box-shadow .2s ease}.mays-faq__item[open]{border-color:rgba(16,185,129,.45);box-shadow:0 8px 24px rgba(31,41,55,.06)}.mays-faq__item>summary{position:relative;display:flex;min-height:64px;align-items:center;gap:.75rem;padding:1rem 3.5rem 1rem 1.25rem;color:#1f2937;font-size:1rem;font-weight:700;line-height:1.6;cursor:pointer;list-style:none}.mays-faq__item>summary::-webkit-details-marker{display:none}.mays-faq__item>summary::marker{content:""}.mays-faq__item>summary:hover{background:#f8fafc}.mays-faq__item>summary:focus-visible{outline:3px solid rgba(249,115,22,.28);outline-offset:-3px}.mays-faq__item>summary::before{flex:0 0 auto;color:#f97316;content:"Q.";font-weight:800}.mays-faq__item>summary::after{position:absolute;top:50%;right:1.25rem;width:20px;height:20px;border-radius:2px;background:linear-gradient(#10b981,#10b981) center/16px 2px no-repeat,linear-gradient(#10b981,#10b981) center/2px 16px no-repeat;content:"";transform:translateY(-50%);transition:transform .2s ease}.mays-faq__item[open]>summary::after{transform:translateY(-50%) rotate(45deg)}.mays-faq__answer-text{display:flex;gap:.75rem;margin:0;padding:0 1.25rem 1.25rem;color:#374151;font-size:.975rem;line-height:1.9}.mays-faq__answer-text::before{flex:0 0 auto;color:#10b981;content:"A.";font-weight:800}.mays-faq__answer-text a{color:#047857;text-decoration:underline;text-underline-offset:2px}
@media(max-width:640px){.mays-faq{margin:2.5rem 0}.mays-faq__item>summary{min-height:58px;padding:.9rem 3rem .9rem 1rem;font-size:.95rem}.mays-faq__item>summary::after{right:1rem}.mays-faq__answer-text{padding:0 1rem 1rem;font-size:.925rem}}
