/* 0.4: 写真・操作・レイアウト選択。各セクションの色と背景はブロックで変更できます。 */
.site-header{position:sticky;top:0;z-index:80;background:rgba(255,255,255,.9);backdrop-filter:blur(16px);transition:box-shadow .35s}
.admin-bar .site-header{top:32px}.header-inner{transition:padding .4s ease;min-height:78px}.is-scrolled .header-inner{padding-top:12px;padding-bottom:12px}.site-header.is-scrolled{box-shadow:0 5px 24px #152b3b12}
.wp-block-button__link,.wpcf7-submit,button[type=submit],.header-inner .wp-block-navigation__container>.wp-block-navigation-item:last-child>a{border-radius:0!important;background-image:linear-gradient(110deg,transparent 25%,#ffffff24 45%,transparent 65%);background-size:300% 100%;background-position:100% 0;transition:background-position .65s,background-color .3s,box-shadow .3s,transform .3s}
.wp-block-button__link:hover,.wpcf7-submit:hover,button[type=submit]:hover{background-position:0 0;box-shadow:0 8px 25px #152b3b22;transform:translateY(-2px)}
.wp-block-button__link>span[aria-hidden]{display:inline-block;width:10px;height:10px;border-right:2px solid currentColor;border-top:2px solid currentColor;transform:rotate(45deg);font-size:0;flex-shrink:0;transition:translate .3s}
.wp-block-button__link:hover>span[aria-hidden]{translate:4px 0}
.hero{min-height:900px;display:flex;align-items:center}.hero-copy{width:100%;padding-top:100px;padding-bottom:100px}.hero::after{background:linear-gradient(90deg,#fffffff5 0%,#ffffffdb 32%,#ffffff7a 52%,#ffffff00 78%)}
.hero h1{color:#152b3b;text-shadow:0 1px 12px #ffffff80}.hero-copy>p{color:#203647}.hero-center::after{background:#0f2334b8}.hero-center h1,.hero-center .hero-copy>p{color:white;text-shadow:none}.hero-center .hero-copy{padding-top:100px}.hero-split .hero-copy{padding-top:100px;padding-bottom:100px}
.message-section{overflow:hidden}.message-section::before{content:"";position:absolute;inset:0;pointer-events:none;background-image:linear-gradient(#5272880b 1px,transparent 1px),linear-gradient(90deg,#5272880b 1px,transparent 1px),radial-gradient(ellipse at 92% 32%,transparent 0 24%,#52728812 24.1% 24.3%,transparent 24.4% 34%,#5272880d 34.1% 34.3%,transparent 34.4%);background-size:52px 52px,52px 52px,100% 100%;mask-image:linear-gradient(90deg,transparent,#000)}
.feature{padding:0 0 28px;border-radius:0;overflow:hidden}.feature-top{position:relative;display:block;margin-bottom:28px}.feature-top .number{position:absolute;bottom:0;left:0;z-index:2;padding:11px 20px;background:#172b3b;color:#fff}.feature-photo{width:100%;aspect-ratio:1.5;margin:0!important;overflow:hidden}.feature-photo img{display:block;width:100%;height:100%;object-fit:cover;transition:transform .7s}.feature:hover img{transform:scale(1.04)}.feature>h3,.feature>p{margin-left:28px;margin-right:28px}
.services-section{overflow:hidden}.services-section::before{content:"";position:absolute;inset:0;pointer-events:none;background:radial-gradient(ellipse at 100% 0,#61869b33,transparent 60%),repeating-linear-gradient(135deg,transparent 0 90px,#ffffff04 91px 92px)}
.services-section .section-inner>.eyebrow{color:#b3cddf}.services-section .section-intro{color:#d3e1eb}.services-section .wp-block-columns{display:flex;flex-direction:column;gap:65px;margin-top:65px}.service-card{display:grid;grid-template-columns:1.2fr 1fr;gap:7%;align-items:center;color:inherit}.service-visual{margin:0}.service-photo{border-radius:0;aspect-ratio:1.55}.service-number{left:16px;right:auto;bottom:10px;background:transparent;border:0;border-radius:0;font:72px/1 Georgia,serif;color:white;text-shadow:0 2px 15px #0008;width:auto;height:auto}.service-body .eyebrow{color:#b3cddf}.service-body h3{font-size:32px;color:inherit}.service-body .wp-block-button__link{color:inherit;border:1px solid #91a6b6;padding:17px 23px}.services-section .wp-block-column:nth-child(even) .service-visual{order:2}.service-body>p:not(.eyebrow){color:inherit;opacity:.88}
.journal-posts>.wp-block-buttons{margin-top:32px;justify-content:flex-end}.about-photo{border-radius:0;object-position:center}.about-photo img{object-position:50% center}
.faq-items .wp-block-details{border-radius:0;transition:border-color .3s,box-shadow .3s}.faq-items details[open]{border-color:#7f9aaf;box-shadow:0 7px 24px #23415a09}.faq-items details[open] summary{color:#315e7b;font-weight:700}.faq-items summary{transition:color .3s}
.contact-panel{border-radius:0}.contact .wpcf7-submit,.contact button[type=submit]{display:block;width:min(100%,380px);min-height:68px;margin:32px auto 0;text-align:center;font-weight:600}.contact .wpcf7-spinner{display:block;margin:10px auto}.contact .wpcf7 form>p:has(.wpcf7-submit){text-align:center}
/* 3種類のセクションレイアウト。内容はそのままで切り替わります。 */
.message-section.sbd-layout-2 .wp-block-columns,.about-section.sbd-layout-2 .wp-block-columns{flex-direction:row-reverse}
.message-section.sbd-layout-3 .wp-block-columns,.about-section.sbd-layout-3 .wp-block-columns{flex-direction:column}.message-section.sbd-layout-3 .message-collage{max-width:900px;margin:auto}.message-section.sbd-layout-3 .message-copy,.about-section.sbd-layout-3 .about-copy{max-width:850px;margin:auto}.message-section.sbd-layout-3 .message-copy>p{max-width:none}.about-section.sbd-layout-3 .about-visual{width:100%}.about-section.sbd-layout-3 .wp-block-column{width:100%}
.benefit-section.sbd-layout-2 .wp-block-columns{flex-direction:column}.benefit-section.sbd-layout-2 .feature{display:grid;grid-template-columns:36% 1fr;padding:0;column-gap:30px;align-items:center}.benefit-section.sbd-layout-2 .feature-top{grid-row:1/3;margin:0}.benefit-section.sbd-layout-2 .feature>h3{margin-top:25px;margin-bottom:0}.benefit-section.sbd-layout-2 .feature>p{margin-bottom:25px}
.benefit-section.sbd-layout-3 .feature{background:#172b3b;color:#fff;border:0}.benefit-section.sbd-layout-3 .feature-photo{aspect-ratio:1}.benefit-section.sbd-layout-3 .feature>h3{color:#fff}
.values-section.sbd-layout-2 .wp-block-columns{flex-direction:column}.values-section.sbd-layout-2 .values-list{display:grid;grid-template-columns:repeat(3,1fr);gap:30px}.values-section.sbd-layout-2 .values-title{text-align:center}.values-section.sbd-layout-3 .wp-block-columns{flex-direction:row-reverse}
.voices-section.sbd-layout-2 .voice-photo{aspect-ratio:1.5}.voices-section.sbd-layout-2 .voice-card{border:0;border-bottom:3px solid #6f8ca0;border-radius:0}.voices-section.sbd-layout-3 .voice-card{background:#172b3b;color:white;border-radius:0;border:0}.voices-section.sbd-layout-3 .voice-body h3{color:inherit}.voices-section.sbd-layout-3 .voice-body .eyebrow,.voices-section.sbd-layout-3 .voice-name{color:#bed1df}
.services-section.sbd-layout-2 .wp-block-columns,.services-section.sbd-layout-3 .wp-block-columns{flex-direction:row;gap:26px}.services-section.sbd-layout-2 .service-card,.services-section.sbd-layout-3 .service-card{display:block}.services-section.sbd-layout-2 .service-visual{margin-bottom:30px}.services-section.sbd-layout-3 .service-card{position:relative;isolation:isolate;min-height:560px;display:flex;align-items:flex-end;padding:30px;overflow:hidden}.services-section.sbd-layout-3 .service-visual{position:absolute;inset:0;z-index:-2}.services-section.sbd-layout-3 .service-photo{height:100%}.services-section.sbd-layout-3 .service-card::after{content:"";position:absolute;inset:0;background:linear-gradient(transparent,#102638ed 75%);z-index:-1}.services-section.sbd-layout-3 .service-number{top:15px;bottom:auto}.services-section.sbd-layout-3 .service-body h3{font-size:26px}
.journal.sbd-layout-2 .wp-block-columns,.journal.sbd-layout-3 .wp-block-columns{flex-direction:column;align-items:stretch}.journal.sbd-layout-2 .journal-photo,.journal.sbd-layout-3 .journal-photo{display:none}.journal.sbd-layout-3 .wp-block-post-template{display:grid;grid-template-columns:repeat(3,1fr);gap:24px}.journal.sbd-layout-3 .wp-block-post{display:block;background:white;padding:30px;border-top:2px solid #617f94}.journal.sbd-layout-3 .wp-block-post-title{margin-top:20px}
.faq-section.sbd-layout-2 .wp-block-columns,.faq-section.sbd-layout-3 .wp-block-columns{flex-direction:column}.faq-section.sbd-layout-2 .faq-intro{text-align:center}.faq-section.sbd-layout-3 .faq-items{display:grid;grid-template-columns:1fr 1fr;gap:16px;align-items:start}.faq-section.sbd-layout-3 .wp-block-details{margin:0!important}
.contact.sbd-layout-2 .section-inner{max-width:1250px}.contact.sbd-layout-2 .contact-panel{padding:55px}.contact.sbd-layout-3 .section-inner{max-width:1250px}.contact.sbd-layout-3 .contact-panel{max-width:850px;margin-left:auto;border-top:5px solid #8ba6b8}
.sbd-header-2 .header-inner{max-width:1400px}.sbd-header-2 .site-brand{border-left:4px solid #56778e;padding-left:20px}.sbd-header-3 .header-inner{flex-direction:column;gap:18px}.sbd-header-3 .is-scrolled .header-inner{gap:8px}
.sbd-hamburger{display:flex;flex-direction:column;gap:6px;width:28px}.sbd-hamburger i{display:block;height:2px;width:28px;background:currentColor}
.sbd-extra-section.sbd-layout-2 .wp-block-columns{flex-direction:column}.sbd-extra-section.sbd-layout-3 .wp-block-column{padding:32px;background:#eef2f5;border-top:2px solid #617f94}
.hero-no-photo .hero-image,.hero-no-photo::after{display:none}.hero-no-photo.hero-split .hero-copy{width:100%}.hero.has-text-color h1,.hero.has-text-color .hero-copy>p{color:inherit}.values-section.sbd-background-plain::before,.contact.sbd-background-plain::before{display:none}
@media(max-width:1024px){
 .header-inner .wp-block-navigation__responsive-container-open{display:block!important;padding:12px}.wp-block-navigation__responsive-container-open svg{display:none}.header-inner .wp-block-navigation__responsive-container:not(.is-menu-open){display:none!important}
 .header-inner .wp-block-navigation__responsive-container.is-menu-open{position:fixed;inset:0;background:#13283766;padding:0;overflow:hidden}.header-inner .wp-block-navigation__responsive-dialog{margin-left:auto;width:min(420px,90vw);height:100dvh;background:#fffffff5;padding:90px 35px 45px;overflow:auto;animation:sbd-drawer .42s cubic-bezier(.2,.7,.25,1)}.header-inner .wp-block-navigation__responsive-container-content{padding:0!important;align-items:stretch!important}.header-inner .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation__container{align-items:stretch;gap:0;width:100%}.header-inner .wp-block-navigation__responsive-container.is-menu-open a{padding:20px 0;font-size:16px}.header-inner .wp-block-navigation__responsive-container-close{top:27px;right:30px}.sbd-header-3 .header-inner{flex-direction:row}
}
@keyframes sbd-drawer{from{transform:translateX(100%)}to{transform:translateX(0)}}
@media(max-width:781px){
 .hero{min-height:720px}.hero-copy,.hero-center .hero-copy{padding-top:80px;padding-bottom:100px}.hero-split{display:block}.hero-split .hero-copy{width:100%;padding:70px 7%}.hero-split .hero-image{position:relative;left:auto;height:330px}.section-intro{margin-top:0}.service-card{display:block}.service-visual{margin-bottom:28px}.services-section .wp-block-columns{gap:45px}.service-body h3{font-size:27px}.services-section.sbd-layout-2 .wp-block-columns,.services-section.sbd-layout-3 .wp-block-columns,.message-section.sbd-layout-2 .wp-block-columns,.about-section.sbd-layout-2 .wp-block-columns,.values-section.sbd-layout-3 .wp-block-columns{flex-direction:column}.benefit-section.sbd-layout-2 .feature{display:block}.values-section.sbd-layout-2 .values-list,.faq-section.sbd-layout-3 .faq-items,.journal.sbd-layout-3 .wp-block-post-template{grid-template-columns:1fr}.contact.sbd-layout-2 .contact-panel{padding:35px 23px}.admin-bar .site-header{top:46px}.is-scrolled .header-inner{padding-top:10px;padding-bottom:10px}
}
@media(max-width:600px){.admin-bar .site-header{top:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation-duration:.01ms!important;transition-duration:.01ms!important}}
.editor-styles-wrapper .site-header{position:relative}.editor-styles-wrapper .hero{min-height:700px}.editor-styles-wrapper .service-card{color:inherit}
.editor-styles-wrapper .is-root-container>.hero,.editor-styles-wrapper .is-root-container>.section{max-width:none!important;width:100%}
.editor-styles-wrapper .hero .hero-image{position:absolute!important;inset:0;max-width:none;z-index:0}
.editor-styles-wrapper .hero::after{z-index:1;pointer-events:none}.editor-styles-wrapper .hero .hero-copy{width:100%;flex-shrink:0;z-index:2}.editor-styles-wrapper .hero-split .hero-copy{width:48%}.editor-styles-wrapper .hero-split .hero-image{left:48%}
.editor-styles-wrapper .hero-image img,.editor-styles-wrapper .message-main img,.editor-styles-wrapper .about-photo img,.editor-styles-wrapper .service-photo img,.editor-styles-wrapper .voice-photo img,.editor-styles-wrapper .feature-photo img{height:100%!important;object-fit:cover}
.editor-styles-wrapper .hero-scroll{display:none}.editor-styles-wrapper .message-detail,.editor-styles-wrapper .photo-caption,.editor-styles-wrapper .service-number,.editor-styles-wrapper .about-caption{position:absolute!important}
.editor-styles-wrapper .hero:has(.hero-copy.is-selected) .hero-image{pointer-events:none}
@media(max-width:1024px){
 .header-inner .wp-block-navigation__responsive-container.is-menu-open{min-height:100dvh;background-color:#13283766!important}
 .header-inner .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item{width:100%;border-bottom:1px solid #20384a1c}
 .header-inner .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item__content{padding:21px 0!important;width:100%;font-size:16px}
 .header-inner .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child{border:0;margin-top:24px}
 .header-inner .wp-block-navigation__responsive-container.is-menu-open .wp-block-navigation-item:last-child>a{padding:18px 24px!important}
 .header-inner .wp-block-navigation__responsive-close{max-width:none}
 .header-inner .wp-block-navigation__responsive-dialog{background:#fff}
}
@media(max-width:781px){.hero:not(.hero-center):not(.hero-split)::after{background:linear-gradient(90deg,#fffffff2,#ffffffc7 65%,#ffffff75)}}
