/* Approved global navigation; legacy resets stay inside the header. */
header.approved-header{display:block;margin:0;padding:0;min-width:0;max-width:none;text-align:left;letter-spacing:normal;line-height:1.6;isolation:isolate}
.approved-header :where(a,summary,button,details){margin:0;font-family:inherit;letter-spacing:inherit;text-transform:none}
.approved-header :where(a,details){padding:0;border:0}
.approved-header .approved-logo{height:auto;min-height:0;padding:0;border:0;background:transparent}
.approved-header .approved-logo img{max-width:100%;margin:0;padding:0;border:0;vertical-align:middle}
.approved-header{position:fixed;inset:0 0 auto;z-index:2000;height:80px;background:#fff;border-bottom:1px solid #dce9ed;color:#333333;font-family:"Zen Kaku Gothic New","メイリオ",sans-serif;box-sizing:border-box}
.approved-header *{box-sizing:border-box}
.approved-header .approved-header-inner{max-width:1360px;height:80px;margin:auto;padding:0 28px;display:flex;align-items:center;gap:28px}
.approved-header .approved-logo{display:flex;flex:none;align-items:center;margin-right:auto}
.approved-header .approved-logo img{width:180px;height:auto;display:block}
.approved-header .approved-navigation{position:static;inset:auto;display:flex;align-items:center;justify-content:normal;gap:22px;height:100%;width:auto;min-width:0;max-width:none;margin:0;padding:0;background:transparent;transform:none;opacity:1}
.approved-header a,.approved-header summary{color:#333333;text-decoration:none;font-size:14px;font-weight:bold;white-space:nowrap;line-height:1.6}
.approved-header .approved-navigation>a{display:flex;align-items:center;min-height:44px;margin:0}
.approved-header .approved-guide{position:relative;height:100%;display:flex;align-items:center}
.approved-header .approved-guide summary{list-style:none;cursor:pointer;display:flex;align-items:center;gap:10px;min-height:44px;padding:10px 12px;border-radius:5px}
.approved-header summary::-webkit-details-marker{display:none}
.approved-header .approved-guide summary:after{content:"";width:8px;height:8px;border-right:2px solid currentColor;border-bottom:2px solid currentColor;transform:rotate(45deg);margin-top:-5px}
.approved-header .approved-guide[open] summary{color:#007fbc;background:#eaf7fe}
.approved-header .approved-submenu{position:absolute;top:calc(100% - 4px);left:0;width:245px;padding:8px 0;background:#fff;border:1px solid #cbdde3;border-radius:6px;box-shadow:0 8px 22px #3333331a}
.approved-header .approved-submenu a{display:block;padding:16px 22px;line-height:1.6}
.approved-header .approved-submenu a+a{border-top:1px solid #e4eef1}
.approved-header .approved-submenu a:hover,.approved-header .approved-submenu a:focus-visible{background:#edf8fb;color:#007fbc}
.approved-header .approved-contact{background:#007fbc;color:#fff;padding:12px 22px;border-radius:40px;justify-content:center}
.approved-header .approved-navigation>a:hover{color:#007fbc}
.approved-header .approved-navigation>.approved-contact:hover{background:#006ca3;color:#fff}
.approved-header .approved-menu-toggle{display:none;border:1px solid #bfd8df;background:#fff;border-radius:4px;color:#333333;font:inherit;font-size:13px;font-weight:bold;padding:8px 12px;min-height:44px;cursor:pointer}
.approved-header :is(a,summary,button):focus-visible{outline:3px solid #007fbc;outline-offset:3px}
@media(min-width:1051px) and (max-width:1250px){.approved-header .approved-header-inner{gap:18px;padding:0 20px}.approved-header .approved-logo img{width:160px}.approved-header .approved-navigation{gap:14px}.approved-header a,.approved-header summary{font-size:13px}.approved-header .approved-contact{padding:12px 16px}.approved-header .approved-guide summary{padding:10px 8px}}
@media(max-width:1050px){
 .approved-header .approved-header-inner{padding:0 20px;gap:12px}
 .approved-header .approved-logo img{width:160px}
 .approved-header .approved-menu-toggle{display:block}
 .approved-header .approved-navigation{display:none;position:absolute;top:80px;left:0;right:0;height:auto;max-height:calc(100dvh - 140px);overflow-y:auto;background:#fff;border-bottom:1px solid #cbdde3;box-shadow:0 10px 20px #3333331a;padding:12px 20px 24px}
 .approved-header .approved-navigation.is-open{display:block}
 .approved-header .approved-navigation>a{padding:16px 12px;border-bottom:1px solid #e4eef1;font-size:16px}
 .approved-header .approved-guide{display:block;height:auto;border-bottom:1px solid #e4eef1}
 .approved-header .approved-guide summary{padding:16px 12px;font-size:16px;justify-content:space-between}
 .approved-header .approved-submenu{position:static;width:100%;padding:0 0 8px 12px;border:0;border-radius:0;box-shadow:none;background:#f2f9fb}
 .approved-header .approved-submenu a{font-size:15px;padding:15px 20px;white-space:normal}
 .approved-header .approved-navigation>.approved-contact{margin-top:16px;border:0}
}
@media(max-width:380px){.approved-header .approved-header-inner{padding:0 14px}.approved-header .approved-logo img{width:145px}}

/* Replace the former sticky works header's 80px space, with WP admin-bar clearance. */
body.aw-site:has(>.approved-header){padding-top:80px}
body.admin-bar .approved-header{top:32px}
@media(max-width:782px){body.admin-bar .approved-header{top:46px}}

/* Legacy columns need a real mobile viewport for the shared navigation.
   The following layout safeguards apply only to the 11 identified column pages. */
@media(max-width:1050px){
 body.approved-legacy-column,body.approved-legacy-column main{min-width:0;max-width:100%;width:100%;overflow-x:hidden}
 body.approved-legacy-column .clm_group,body.approved-legacy-column .clm_waku{width:calc(100% - 32px);max-width:960px;box-sizing:border-box}
 body.approved-legacy-column main img,body.approved-legacy-column footer img{max-width:100%;height:auto;box-sizing:border-box}
 body.approved-legacy-column section.column,body.approved-legacy-column section.clm_info{padding:120px 0 45px}
 body.approved-legacy-column .clm_group{gap:24px;padding-top:35px;padding-bottom:60px}
 body.approved-legacy-column .clm_box{width:calc((100% - 24px)/2);margin:0}
 body.approved-legacy-column .clm_header{padding:32px 24px}
 body.approved-legacy-column .clm_header>h1{font-size:30px;overflow-wrap:anywhere}
 body.approved-legacy-column .clm_info_title>h1{font-size:48px}
 body.approved-legacy-column .clm_info_title>img{max-width:calc(100% - 48px)}
 body.approved-legacy-column .clm_body{padding:0 24px 48px;overflow-wrap:anywhere}
 body.approved-legacy-column .clm_btn{width:65%;box-sizing:border-box}
 body.approved-legacy-column .clm_back{padding-bottom:50px}
 body.approved-legacy-column .toiawase-box{width:calc(100% - 32px);max-width:850px;padding:24px 12px;box-sizing:border-box}
 body.approved-legacy-column .toiawase-box img{margin:20px 0;max-width:100%}
 body.approved-legacy-column .toiawase-title{box-sizing:border-box}
 body.approved-legacy-column footer{max-width:100%;overflow:hidden}
 body.approved-legacy-column .foot-data{padding:0 16px 60px;box-sizing:border-box;overflow-wrap:anywhere}
 body.approved-legacy-column img.foot-award{width:90%;max-width:340px;margin:32px auto}
 body.approved-legacy-column img.hw-logo{width:85%;max-width:340px;margin:24px auto 36px}
 body.approved-legacy-column .foot-wave>svg{max-width:125%}
}
@media(max-width:600px){
 body.approved-legacy-column .clm_group{gap:22px}
 body.approved-legacy-column .clm_box{width:100%}
 body.approved-legacy-column .clm_header{padding:24px 18px 30px}
 body.approved-legacy-column .clm_header>h1{font-size:25px}
 body.approved-legacy-column .clm_info_title>h1{font-size:36px}
 body.approved-legacy-column .clm_body{padding:0 18px 36px}
 body.approved-legacy-column .clm_title{margin-top:55px}
 body.approved-legacy-column .clm_title>h2{font-size:24px}
 body.approved-legacy-column .h3_title>h3{font-size:21px}
 body.approved-legacy-column .h4_title>h4,body.approved-legacy-column .h4_title>p{font-size:18px}
 body.approved-legacy-column .flex-box,body.approved-legacy-column .kami-flex,body.approved-legacy-column .table-box{flex-wrap:wrap;gap:16px}
 body.approved-legacy-column .flex-box>*,body.approved-legacy-column .kami-flex>*{min-width:0;max-width:100%}
 body.approved-legacy-column .table-box table{width:100%}
 body.approved-legacy-column .link-box a{display:block;padding:16px}
 body.approved-legacy-column .link-box a div:first-child,body.approved-legacy-column .link-box a div:nth-child(2){width:100%;margin:0}
 body.approved-legacy-column .link-box a div:first-child{margin-bottom:12px}
 body.approved-legacy-column .mame,body.approved-legacy-column .onepoint{padding:20px 16px}
}
