

body:has(#mhg-message-page) :is(.siteHeader,.site-header,#site-header,.page-header,.pageHeader,.entry-header,.breadcrumb,.breadSection,.vk_breadcrumb,.footerWidget,.footerWidgetArea,.siteFooter,.site-footer,#site-footer,.copySection,.widget_archive,.widget_categories,#secondary,.veu_socialSet,.lightning_swiper-container,#top__fullcarousel,.slideOuter) {
  display:none !important;
}
body:has(#mhg-message-page) .widget:has(.wp-block-archives),
body:has(#mhg-message-page) .widget:has(.wp-block-categories),
body:has(#mhg-message-page) .wp-block-group:has(> .wp-block-archives),
body:has(#mhg-message-page) .wp-block-group:has(> .wp-block-categories) {
  display:none !important;
}
body:has(#mhg-message-page) :is(.mainSection,.main-section,.entry-body,.entry-content) {
  width:100% !important; max-width:none !important; margin:0 !important;
  padding:0 !important; float:none !important; flex-basis:100% !important;
}
body:has(#mhg-message-page) .site-body > .container,
body:has(#mhg-message-page) .site-body-container {
  width:100% !important; max-width:none !important; padding-left:0 !important; padding-right:0 !important;
}


#mhg-message-page {
  --mm-ink:#252622; --mm-muted:#64635c; --mm-gold:var(--mhgb-accent);
  --mm-paper:var(--mhgb-paper); --mm-line:#e2dfd5; --mm-dark:var(--mhgb-dark);
  position:relative; left:50%; width:100vw; max-width:none;
  margin:0 0 0 -50vw; padding:0; overflow-x:clip;
  background:#fff; color:var(--mm-ink); text-align:left;
  font-family:-apple-system,BlinkMacSystemFont,"Noto Sans JP","Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif;
  font-size:16px; line-height:1.85; -webkit-text-size-adjust:100%;
}
#mhg-message-page *,#mhg-message-page *::before,#mhg-message-page *::after {
  box-sizing:border-box; text-shadow:none !important; -webkit-text-stroke:0;
}
#mhg-message-page :is(h1,h2,h3,p,dl,dt,dd,ul,li) {
  position:static; float:none; width:auto; height:auto;
  margin:0; padding:0; border:0; background:none; color:inherit;
  font-family:inherit; transform:none; line-height:inherit;
}
#mhg-message-page :is(h1,h2,h3)::before,
#mhg-message-page :is(h1,h2,h3)::after { content:none !important; }
#mhg-message-page a { color:inherit; text-decoration:none; }
#mhg-message-page a:focus-visible { outline:3px solid #a77c49; outline-offset:5px; }
#mhg-message-page a:focus:not(:focus-visible) { outline:none; }
#mhg-message-page .mm-wrap { width:calc(100% - 80px); max-width:1180px; margin:0 auto; }
#mhg-message-page section[id] { scroll-margin-top:116px; }
#mhg-message-page .mm-kicker {
  display:block; color:var(--mm-gold); font-size:12px; font-weight:700;
  letter-spacing:.17em; line-height:1.5;
}


#mhg-message-page .mm-header {
  position:sticky; top:0; z-index:50; background:#fff;
  border-bottom:1px solid var(--mm-line);
}
.admin-bar #mhg-message-page .mm-header { top:32px; }
#mhg-message-page .mm-header-inner {
  min-height:82px; display:flex; justify-content:space-between; align-items:center; gap:24px;
}
#mhg-message-page .mm-brand { flex-shrink:0; }
#mhg-message-page .mm-brand strong {
  display:block; font-size:19px; font-weight:750; line-height:1.4; letter-spacing:.035em;
}
#mhg-message-page .mm-brand small {
  display:block; margin-top:2px; color:#706c62; font-size:12px; line-height:1.5; letter-spacing:.12em;
}
#mhg-message-page .mm-main-nav { display:flex; align-items:center; justify-content:flex-end; gap:30px; }
#mhg-message-page .mm-main-nav a {
  display:inline-flex; align-items:center; min-height:44px; font-size:14px;
  font-weight:600; line-height:1.6; white-space:nowrap; border-bottom:2px solid transparent;
}
#mhg-message-page .mm-main-nav a[aria-current="page"] { color:var(--mhgb-accent); border-bottom-color:var(--mhgb-accent); }
#mhg-message-page .mm-main-nav a:hover { color:var(--mhgb-accent); }

body:has(#mhg-message-page) .site-body { padding-top:0 !important; padding-bottom:0 !important; }

#mhg-message-page .mm-main-nav { flex-wrap:wrap; gap:12px 27px; }
#mhg-message-page .mm-hero {
  padding:34px 0 46px; background:linear-gradient(115deg,#202723 0%,#2a302b 66%,#3c3e33 100%);
  color:#fff; border-bottom:4px solid var(--mhgb-accent);
}
#mhg-message-page .mm-breadcrumb { display:flex; flex-wrap:wrap; align-items:center; gap:12px; margin-bottom:32px; color:#d5d8cf; font-size:12px; line-height:1.6; }
#mhg-message-page .mm-breadcrumb a:hover { text-decoration:underline; text-underline-offset:4px; }
#mhg-message-page .mm-breadcrumb span[aria-hidden] { color:#a9b0a3; }
#mhg-message-page .mm-hero-grid { display:grid; grid-template-columns:minmax(0,1.15fr) minmax(0,.85fr); gap:60px; align-items:center; }
#mhg-message-page .mm-hero .mm-kicker { color:#d0b389; }
#mhg-message-page .mm-hero h1 { margin-top:14px; font-size:clamp(38px,4.8vw,64px); font-weight:650; letter-spacing:.075em; line-height:1.35; }
#mhg-message-page .mm-hero-note { display:block; margin-top:19px; color:#c1c7bb; font-size:13px; letter-spacing:.08em; }
#mhg-message-page .mm-hero-phrase {
  padding:4px 0 4px 32px; border-left:1px solid #8d815f; color:#e9e6db;
  font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
  font-size:clamp(22px,2.5vw,30px); font-weight:500; line-height:1.85; letter-spacing:.055em;
}
#mhg-message-page .mm-editorial-bar { padding:18px 0; border-bottom:1px solid var(--mm-line); background:var(--mm-paper); }
#mhg-message-page .mm-editorial-inner { display:flex; flex-wrap:wrap; justify-content:space-between; gap:6px 24px; color:#716650; font-size:12px; letter-spacing:.12em; line-height:1.7; }


#mhg-message-page .mm-message { padding:64px 0 68px; }
#mhg-message-page .mm-message-grid { display:grid; grid-template-columns:minmax(0,.78fr) minmax(0,1.42fr); gap:70px; align-items:start; }
#mhg-message-page .mm-profile { position:sticky; top:116px; min-width:0; }
.admin-bar #mhg-message-page .mm-profile { top:148px; }
#mhg-message-page figure { margin:0; }
#mhg-message-page .mm-photo {
  position:relative; display:grid; width:100%; aspect-ratio:4 / 5; overflow:hidden;
  border:1px solid #c8c0b1; background:linear-gradient(145deg,#f0ede5,#dedbd0);
}
#mhg-message-page .mm-photo::after { content:""; position:absolute; inset:14px; z-index:1; border:1px solid rgba(145,120,81,.5); pointer-events:none; }
#mhg-message-page .mm-photo-placeholder { display:flex; flex-direction:column; align-items:center; justify-content:center; gap:13px; padding:34px; color:#706652; text-align:center; }
#mhg-message-page .mm-photo-placeholder strong { display:block; font-family:Georgia,"Times New Roman",serif; font-size:24px; font-weight:400; letter-spacing:.11em; line-height:1.4; }
#mhg-message-page .mm-photo-placeholder span { display:block; width:30px; height:1px; background:#a78a5e; }
#mhg-message-page .mm-photo-placeholder small { display:block; font-size:13px; line-height:1.7; letter-spacing:.07em; }
#mhg-message-page .mm-photo img { display:block; width:100%; height:100%; max-width:none; margin:0; padding:0; border:0; object-fit:cover; object-position:50% 30%; }
#mhg-message-page .mm-photo:has(img) .mm-photo-placeholder { display:none; }
#mhg-message-page .mm-photo:has(img)::after { border-color:rgba(255,255,255,.5); }
#mhg-message-page .mm-profile-caption { padding-top:23px; }
#mhg-message-page .mm-profile-caption .mm-kicker { font-size:12px; letter-spacing:.12em; }
#mhg-message-page .mm-profile-company { display:block; margin-top:10px; color:#686359; font-size:14px; line-height:1.9; }
#mhg-message-page .mm-profile-role { display:block; margin-top:13px; color:#6a6254; font-size:13px; }
#mhg-message-page .mm-profile-name {
  display:block; margin-top:3px; font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
  font-size:35px; font-weight:500; line-height:1.6; letter-spacing:.15em;
}
#mhg-message-page .mm-profile-motto { margin-top:22px; padding-top:19px; border-top:1px solid #d2c6b2; color:#7c6647; font-size:14px; line-height:1.95; }
#mhg-message-page .mm-letter { min-width:0; }
#mhg-message-page .mm-letter h2 {
  margin:12px 0 27px; color:#292d26; font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
  font-size:clamp(28px,3vw,38px); font-weight:600; line-height:1.85; letter-spacing:.035em;
}
#mhg-message-page .mm-letter h2 em { color:var(--mhgb-accent); font-style:normal; }
#mhg-message-page .mm-letter p { color:#585b52; font-size:16px; line-height:2.15; overflow-wrap:anywhere; line-break:strict; }
#mhg-message-page .mm-letter p + p { margin-top:19px; }
#mhg-message-page .mm-letter h3 { margin:31px 0 13px; padding-left:16px; border-left:2px solid var(--mhgb-accent); font-size:19px; font-weight:600; line-height:1.8; letter-spacing:.02em; }
#mhg-message-page .mm-letter .mm-opening { color:#383f34; }
#mhg-message-page .mm-letter .mm-keyline {
  margin:28px 0; padding:23px 0; border-top:1px solid #d9cfbd; border-bottom:1px solid #d9cfbd;
  color:#6e5634; font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif;
  font-size:22px; font-weight:500; line-height:1.9; letter-spacing:.035em;
}
#mhg-message-page .mm-signature { display:flex; flex-direction:column; align-items:flex-end; margin-top:31px; padding-top:24px; border-top:1px solid var(--mm-line); }
#mhg-message-page .mm-signature span { color:#666052; font-size:14px; line-height:1.9; }
#mhg-message-page .mm-signature strong { display:block; margin-top:9px; font-family:"Noto Serif JP","Yu Mincho","Hiragino Mincho ProN",serif; font-size:34px; font-weight:500; letter-spacing:.16em; line-height:1.7; }
#mhg-message-page .mm-signature small { display:block; margin-top:4px; color:#8a7454; font-size:12px; letter-spacing:.12em; line-height:1.6; }


#mhg-message-page .mm-values { padding:38px 0 40px; background:var(--mm-paper); border-top:1px solid var(--mm-line); border-bottom:1px solid var(--mm-line); }
#mhg-message-page .mm-values-heading { margin-bottom:23px; }
#mhg-message-page .mm-values-heading h2 { margin-top:8px; font-size:24px; font-weight:600; line-height:1.7; }
#mhg-message-page .mm-values-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:34px; }
#mhg-message-page .mm-value { padding-top:16px; border-top:1px solid #c5b79e; }
#mhg-message-page .mm-value span { display:block; color:#8d6f43; font-size:12px; letter-spacing:.15em; }
#mhg-message-page .mm-value h3 { margin-top:8px; font-size:19px; font-weight:600; line-height:1.7; }
#mhg-message-page .mm-value p { margin-top:8px; color:#676254; font-size:15px; line-height:1.95; }
#mhg-message-page .mm-page-links { display:flex; flex-wrap:wrap; justify-content:space-between; align-items:center; gap:16px; padding-top:26px; padding-bottom:26px; }
#mhg-message-page .mm-page-links a { display:inline-flex; align-items:center; justify-content:space-between; gap:36px; min-height:48px; padding:10px 0; border-bottom:1px solid #c4b69e; color:#745a37; font-size:14px; font-weight:600; }
#mhg-message-page .mm-page-links a:hover { color:#2c3328; border-bottom-color:#745a37; }
#mhg-message-page .mm-footer { padding:27px 0; color:#dddcd4; background:var(--mhgb-dark); }
#mhg-message-page .mm-footer-inner { display:flex; justify-content:space-between; align-items:center; gap:24px; flex-wrap:wrap; }
#mhg-message-page .mm-footer strong { font-size:15px; letter-spacing:.06em; }
#mhg-message-page .mm-footer small { color:#b9bfb3; font-size:12px; }

@media(max-width:1000px) {
  #mhg-message-page .mm-wrap { width:calc(100% - 48px); }
  #mhg-message-page .mm-main-nav { gap:10px 22px; }
  #mhg-message-page .mm-message-grid { grid-template-columns:minmax(0,.8fr) minmax(0,1.2fr); gap:38px; }
  #mhg-message-page .mm-letter h2 { font-size:29px; }
  #mhg-message-page .mm-hero-grid { gap:35px; }
}
@media(min-width:601px) and (max-width:782px) {
  .admin-bar #mhg-message-page .mm-header { top:46px; }
  .admin-bar #mhg-message-page .mm-profile { top:162px; }
}
@media(max-width:700px) {
  #mhg-message-page .mm-wrap { width:calc(100% - 36px); }
  #mhg-message-page .mm-header { position:relative; top:auto !important; }
  #mhg-message-page .mm-header-inner { min-height:0; padding:16px 0 8px; flex-direction:column; align-items:flex-start; gap:8px; }
  #mhg-message-page .mm-brand strong { font-size:17px; }
  #mhg-message-page .mm-brand small { font-size:12px; letter-spacing:.055em; }
  #mhg-message-page .mm-main-nav { width:100%; justify-content:flex-end; gap:4px 18px; }
  #mhg-message-page .mm-main-nav a { font-size:14px; }
  #mhg-message-page .mm-hero { padding:26px 0 29px; }
  #mhg-message-page .mm-breadcrumb { margin-bottom:25px; }
  #mhg-message-page .mm-hero-grid { grid-template-columns:minmax(0,1fr); gap:25px; }
  #mhg-message-page .mm-hero h1 { font-size:42px; }
  #mhg-message-page .mm-hero-phrase { padding-left:20px; font-size:22px; }
  #mhg-message-page .mm-hero-note { margin-top:13px; font-size:12px; }
  #mhg-message-page .mm-editorial-bar { padding:14px 0; }
  #mhg-message-page .mm-editorial-inner { letter-spacing:.06em; }
  #mhg-message-page .mm-message { padding:35px 0 42px; }
  #mhg-message-page .mm-message-grid { grid-template-columns:minmax(0,1fr); gap:33px; }
  #mhg-message-page .mm-profile { position:static; top:auto; }
  #mhg-message-page .mm-profile figure { display:grid; grid-template-columns:minmax(0,1fr) minmax(0,.9fr); gap:19px; align-items:center; }
  #mhg-message-page .mm-photo::after { inset:8px; }
  #mhg-message-page .mm-photo-placeholder { gap:9px; padding:16px; }
  #mhg-message-page .mm-photo-placeholder strong { font-size:17px; letter-spacing:.04em; }
  #mhg-message-page .mm-photo-placeholder small { font-size:12px; }
  #mhg-message-page .mm-profile-caption { padding-top:0; }
  #mhg-message-page .mm-profile-caption .mm-kicker { letter-spacing:.04em; }
  #mhg-message-page .mm-profile-company { font-size:13px; margin-top:8px; }
  #mhg-message-page .mm-profile-role { margin-top:10px; }
  #mhg-message-page .mm-profile-name { font-size:27px; letter-spacing:.06em; }
  #mhg-message-page .mm-profile-motto { margin-top:22px; padding-top:17px; }
  #mhg-message-page .mm-letter h2 { font-size:28px; line-height:1.85; margin-bottom:22px; }
  #mhg-message-page .mm-letter p { font-size:16px; line-height:2.05; }
  #mhg-message-page .mm-letter h3 { font-size:18px; margin-top:27px; }
  #mhg-message-page .mm-letter .mm-keyline { font-size:20px; margin:24px 0; padding:20px 0; }
  #mhg-message-page .mm-signature strong { font-size:30px; }
  #mhg-message-page .mm-values { padding:29px 0 31px; }
  #mhg-message-page .mm-values-grid { grid-template-columns:minmax(0,1fr); gap:23px; }
  #mhg-message-page .mm-values-heading h2 { font-size:23px; }
  #mhg-message-page .mm-value p { margin-top:5px; }
  #mhg-message-page .mm-page-links { align-items:stretch; flex-direction:column; gap:8px; padding-top:20px; padding-bottom:20px; }
  #mhg-message-page .mm-footer-inner { flex-direction:column; align-items:flex-start; gap:10px; }
}
@media(max-width:360px) {
  #mhg-message-page .mm-profile figure { grid-template-columns:minmax(0,1fr); }
  #mhg-message-page .mm-photo { max-width:240px; }
  #mhg-message-page .mm-main-nav { gap:3px 13px; }
  #mhg-message-page .mm-letter h2 { font-size:26px; }
}
