@charset "UTF-8";
/*
    Template: swell
    Theme Name: SWELL CHILD
    Theme URI: https://swell-theme.com/
    Description: SWELLの子テーマ
    Version: 1.0.0
    Author: LOOS WEB STUDIO
    Author URI: https://loos-web-studio.com/

    License: GNU General Public License
    License URI: http://www.gnu.org/licenses/gpl.html
*/


/* MIZUHO PHOTO UPDATE — 2026-11-03. Reversible photo-specific overrides. */
body .mzb-photo { display:block; max-width:100%; }
body .mzb-photo-note { margin:10px 0 0; color:#596568; font-size:11px; line-height:1.7; letter-spacing:.02em; }










body .mz-company .mz-company-hero__image img.mzb-photo { height:auto; aspect-ratio:3 / 2; object-position:center; }
body .mz-company .mz-company-hero__image { align-self:center; }
body .mz-company .mz-company-hero__vertical { right:8px; padding:6px 3px; background:rgba(255,255,255,.9); }
body .mz-company .mz-company-about__image img.mzb-photo { height:auto; aspect-ratio:3 / 2; object-position:70% center; }
body .mz-company .mz-company-about__image figcaption { position:static; margin:0; padding:18px 0 0; color:#263a3f; font-size:17px; }
body .mz-company .mz-company-message__photo { width:100%; max-width:460px; align-self:center; }
body .mz-company .mz-company-message__photo img.mzb-photo { height:auto; aspect-ratio:3 / 2; object-position:70% center; }
body .mz-company .mz-company-value figure img.mzb-photo { width:100%; height:auto; aspect-ratio:3 / 2; object-fit:cover; object-position:center; }
body .mz-company .mz-company-cta { background-image:url("https://mizuhobiso.jp/wp-content/uploads/2026/11/08_mizuho-staff-portrait-composite.webp"); background-position:70% 40%; }
body .mzb-service-page .mzb-service-hero__image { min-height:0; align-self:center; }
body .mzb-service-page .mzb-service-hero__image img.mzb-photo { height:auto; min-height:0; aspect-ratio:3 / 2; object-position:center; }
body .mzb-service-page .mzb-service-card__image { aspect-ratio:3 / 2; }
body .mzb-service-page .mzb-service-card__image img { width:100%; height:100%; object-fit:cover; object-position:center; }
body .mzb-service-page .mzb-service-detail__image:has(.mzb-photo) { align-self:center; }
body .mzb-service-page .mzb-service-detail__image img.mzb-photo { width:100%; height:auto; min-height:0; aspect-ratio:3 / 2; object-fit:cover; object-position:center; }
body .mzb-photo-detail-pair { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:12px; margin-top:12px; }
body .mzb-service-page .mzb-flow-photo { margin:24px 0 0; }
body .mzb-service-page .mzb-flow-photo img.mzb-photo { width:100%; height:auto; aspect-ratio:3 / 2; object-fit:contain; }
body .mzb-service-page .mzb-next-card__image img.mzb-photo { height:auto; min-height:0; aspect-ratio:3 / 2; object-fit:cover; }
body .mzb-vp .mzb-vp-hero__visual:has(.mzb-photo), body .mzb-vp .mzb-vp-split__media:has(.mzb-photo) { aspect-ratio:auto; }
body .mzb-vp .mzb-vp-hero__visual img.mzb-photo, body .mzb-vp .mzb-vp-split__media img.mzb-photo { width:100%; height:auto; aspect-ratio:3 / 2; object-fit:contain; }
body .mzb-vp .mzb-vp-hero__visual .mzb-photo-note { color:#596568; background:#fff; padding:8px 10px; margin:0; }
body .mzb-works-page .mzb-works-hero__media:has(.mzb-photo) { aspect-ratio:auto; }
body .mzb-works-page .mzb-works-hero__media img.mzb-photo { width:100%; height:auto; min-height:0; aspect-ratio:3 / 2; object-fit:contain; }
body .mzb-works-page .mzb-works-hero__media .mzb-photo-note { position:static; }
body .mzb-journal img.mzb-photo { height:auto; aspect-ratio:3 / 2; object-fit:contain; }
@media (max-width:1024px) and (min-width:768px) {




}
@media (max-width:767px) {












 body .mz-company .mz-company-about__grid, body .mz-company .mz-company-message__grid { grid-template-columns:minmax(0,1fr); }
 body .mz-company .mz-company-message__photo { justify-self:center; }
 body .mzb-service-page .mzb-service-detail__image img.mzb-photo, body .mzb-service-page .mzb-service-hero__image img.mzb-photo { min-height:0; height:auto; }
 body .mzb-photo-detail-pair { gap:8px; margin-top:8px; }
 body .mzb-service-page .mzb-flow-photo { max-width:520px; }
 body .mzb-photo-note { font-size:11px; }
}
/* END MIZUHO PHOTO UPDATE */

/* Journal consultation CTA — 2026-11-03 */
body .mzb-journal-contact__inner {
 display:flex; flex-direction:column; align-items:flex-start; justify-content:center;
 gap:24px; min-height:440px; padding:48px 0 !important;
}
body .mzb-journal-contact__copy { width:51%; max-width:570px; }
body .mzb-journal-contact__title { font-size:clamp(26px,2.35vw,34px); line-height:1.65; letter-spacing:.025em; }
body .mzb-journal-contact__title .mzb-cta-line { display:block; white-space:nowrap; }
body .mzb-journal-contact__actions { display:flex; flex-wrap:wrap; justify-content:flex-start; gap:12px; width:51%; margin-top:0; }
body .mzb-journal-contact__button, body .mzb-journal-contact__tel { flex:0 1 auto; min-width:0; min-height:60px; padding:12px 20px !important; font-size:13px; }
body .mzb-journal-contact__note { margin:12px 0 0 !important; color:#687874; font-size:10px; line-height:1.7; }
body .mzb-journal-contact__image {
 width:52%; opacity:1;
 background-image:linear-gradient(90deg,var(--mzb-contact) 0%,rgba(237,243,241,.82) 16%,rgba(237,243,241,.18) 40%,rgba(237,243,241,0) 65%),url("https://mizuhobiso.jp/wp-content/uploads/2026/11/mizuho-journal-consultation-composite-v2.webp");
 background-size:cover; background-repeat:no-repeat; background-position:62% center;
}
@media (min-width:768px) and (max-width:1100px) {
 body .mzb-journal-contact__copy, body .mzb-journal-contact__actions { width:55%; }
 body .mzb-journal-contact__title { font-size:clamp(24px,2.7vw,29px); }
 body .mzb-journal-contact__text { max-width:420px; }
 body .mzb-journal-contact__image { width:49%; }
}
@media (max-width:767px) {
 body .mzb-journal-contact__image { position:relative; width:100%; height:auto; aspect-ratio:16 / 9; background-image:url("https://mizuhobiso.jp/wp-content/uploads/2026/11/mizuho-journal-consultation-composite-v2.webp"); background-position:64% center; }
 body .mzb-journal-contact__inner { display:flex; min-height:0; padding:34px 0 42px !important; gap:24px; }
 body .mzb-journal-contact__copy, body .mzb-journal-contact__actions { width:100%; max-width:none; }
 body .mzb-journal-contact__title { font-size:clamp(20px,5.6vw,26px); line-height:1.65; letter-spacing:.02em; }
 body .mzb-journal-contact__actions { display:grid; grid-template-columns:minmax(0,1fr); margin-top:0; gap:12px; }
 body .mzb-journal-contact__button, body .mzb-journal-contact__tel { width:100%; min-width:0; }
}
/* End journal consultation CTA */

/* Match the existing journal heading override in Additional CSS. */
body #main_content .mzb-journal-contact__title { font-size:clamp(26px,2.35vw,34px); line-height:1.65; letter-spacing:.025em; }
@media (min-width:768px) and (max-width:1100px) { body #main_content .mzb-journal-contact__title { font-size:clamp(24px,2.7vw,29px); } }
@media (max-width:767px) { body #main_content .mzb-journal-contact__title { font-size:clamp(20px,5.6vw,26px); line-height:1.65; letter-spacing:.02em; } }

/* Existing contact page: email and telephone entry points. */
body #main_content .mzb-inquiry { max-width:1180px; margin:0 auto; padding:64px 20px 88px; color:#263a3f; }
body #main_content .mzb-inquiry-hero { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1.1fr); align-items:center; gap:56px; }
body #main_content .mzb-inquiry-eyebrow { margin:0 0 18px; font-size:10px; letter-spacing:.2em; color:#74817b; }
body #main_content .mzb-inquiry h1 { margin:0 0 28px; padding:0; border:0; background:none; font-family:'Yu Mincho','Hiragino Mincho ProN',serif; font-size:clamp(30px,3.5vw,46px); font-weight:400; line-height:1.5; }
body #main_content .mzb-inquiry-lead { margin:0; font-size:14px; line-height:2; }
body #main_content .mzb-inquiry-visual { min-width:0; margin:0; }
body #main_content .mzb-inquiry-visual img { display:block; width:100%; height:auto; aspect-ratio:1915 / 821; object-fit:contain; }
body #main_content .mzb-inquiry-note { margin:8px 0 0; color:#687874; font-size:10px; line-height:1.7; }
body #main_content .mzb-inquiry-methods { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,1fr); gap:28px; margin-top:56px; }
body #main_content .mzb-inquiry-card { min-width:0; padding:36px; background:#edf3f1; }
body #main_content .mzb-inquiry-card h2 { margin:0 0 16px; padding:0; border:0; background:none; box-shadow:none; font-family:'Yu Mincho','Hiragino Mincho ProN',serif; font-size:24px; font-weight:400; line-height:1.5; }
body #main_content .mzb-inquiry-card h2::before, body #main_content .mzb-inquiry-card h2::after { display:none; }
body #main_content .mzb-inquiry-address { display:inline-block; margin-bottom:14px; color:#304a46; font-size:clamp(19px,2.1vw,27px); line-height:1.5; overflow-wrap:anywhere; text-decoration:none; }
body #main_content .mzb-inquiry-description { margin:0 0 24px; font-size:13px; line-height:1.9; }
body #main_content .mzb-inquiry-button { display:inline-flex; justify-content:center; align-items:center; min-height:54px; max-width:100%; padding:14px 28px; border-radius:999px; background:#304a46; color:#fff; font-size:14px; line-height:1.6; text-decoration:none; }
body #main_content .mzb-inquiry-button:hover { opacity:.85; }
@media(max-width:767px) {
 body #main_content .mzb-inquiry { padding:42px 4px 58px; }
 body #main_content .mzb-inquiry-hero { grid-template-columns:minmax(0,1fr); gap:30px; }
 body #main_content .mzb-inquiry-methods { grid-template-columns:minmax(0,1fr); gap:18px; margin-top:32px; }
 body #main_content .mzb-inquiry-card { padding:26px 22px; }
 body #main_content .mzb-inquiry-card h2 { font-size:22px; }
 body #main_content .mzb-inquiry-button { width:100%; }
}

/* Use the custom contact heading without the duplicate theme banner. */
body:has(.mzb-inquiry) .l-topTitleArea { display:none !important; }

/* Contact form presentation */
body #main_content .mzb-inquiry--form { padding-bottom:0; }
body #main_content .mzb-inquiry-form-heading { max-width:860px; margin:50px auto 24px; }
body #main_content .mzb-inquiry-form-heading h2 { margin:0 0 16px; padding:0; border:0; background:none; box-shadow:none; font-size:26px; font-weight:400; line-height:1.6; }
body #main_content .mzb-inquiry-form-heading h2::before, body #main_content .mzb-inquiry-form-heading h2::after { display:none; }
body #main_content .mzb-inquiry-form-heading p { margin:0 0 10px; color:#596568; font-size:13px; line-height:1.9; }
body #main_content #wpforms-138 { width:100%; max-width:900px; margin:0 auto !important; padding:0 20px 28px; box-sizing:border-box; }
body #main_content #wpforms-138 .wpforms-field { padding:14px 0; }
body #main_content #wpforms-138 .wpforms-field-label { margin-bottom:10px; color:#263a3f; font-size:15px; font-weight:500; line-height:1.7; }
body #main_content #wpforms-138 input[type=text], body #main_content #wpforms-138 input[type=email], body #main_content #wpforms-138 input[type=tel], body #main_content #wpforms-138 textarea { width:100%; max-width:100%; border:1px solid #c9d4cf; border-radius:4px; background:#fff; color:#263a3f; font-size:16px; box-sizing:border-box; }
body #main_content #wpforms-138 input[type=text], body #main_content #wpforms-138 input[type=email], body #main_content #wpforms-138 input[type=tel] { min-height:50px; padding:12px 14px; }
body #main_content #wpforms-138 textarea { min-height:180px; padding:14px; line-height:1.8; }
body #main_content #wpforms-138 .wpforms-field-description { color:#687874; font-size:12px; line-height:1.8; }
body #main_content #wpforms-138 input:focus, body #main_content #wpforms-138 textarea:focus { border-color:#304a46; outline:2px solid rgba(48,74,70,.15); outline-offset:1px; }
body #main_content #wpforms-138 .wpforms-submit { min-height:54px; padding:14px 32px; border:1px solid #304a46; border-radius:999px; background:#304a46; color:#fff; font-size:15px; line-height:1.6; cursor:pointer; }
body #main_content #wpforms-138 .wpforms-submit:hover { background:#203b36; }
body #main_content .mzb-inquiry-alternative { max-width:860px; margin:0 auto 72px; padding:24px 20px 0; border-top:1px solid #dce4df; color:#596568; font-size:13px; line-height:2; }
body #main_content .mzb-inquiry-alternative a { color:#304a46; }
body #main_content .wpforms-confirmation-container-full { max-width:860px; margin:32px auto; padding:28px; border:1px solid #cadbd1; background:#edf3f1; color:#263a3f; }
@media(max-width:767px) {
 body #main_content .mzb-inquiry-form-heading { margin-top:32px; }
 body #main_content .mzb-inquiry-form-heading h2 { font-size:23px; }
 body #main_content #wpforms-138 { padding:0 4px 26px; }
 body #main_content #wpforms-138 .wpforms-submit { width:100%; }
 body #main_content .mzb-inquiry-alternative { padding:24px 4px 0; margin-bottom:48px; }
}

/* Contact telephone emphasis — 2026-11-03 */
body #main_content .mzb-inquiry-alternative a[href^="tel:"] {
 display:inline-block; margin:5px 0 10px; font-size:clamp(22px,2.1vw,28px); font-weight:500; line-height:1.5; letter-spacing:.04em; text-decoration:none;
}
