@charset "UTF-8";*,*:before,*:after{box-sizing:border-box;margin:0;padding:0}html{font-size:16px;scroll-behavior:smooth;-webkit-text-size-adjust:100%;text-size-adjust:100%}body{font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;font-size:1rem;font-weight:400;line-height:1.6;color:#1c2b3a;background-color:#fff;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}img,video,svg{display:block;max-width:100%}img{height:auto}button,input,textarea,select{font:inherit}button{cursor:pointer;border:none;background:none}a{color:inherit;text-decoration:none}ul,ol{list-style:none}h1,h2,h3,h4,h5,h6{font-weight:700;line-height:1.2;color:#1c2b3a}p{line-height:1.8}table{border-collapse:collapse;border-spacing:0}textarea{resize:vertical}:focus-visible{outline:3px solid #0097D4;outline-offset:2px}html{overflow-y:scroll}::selection{background-color:#0097d433;color:#1c2b3a}h1{font-size:3rem}@media (max-width: 768px){h1{font-size:2.25rem}}h2{font-size:2.25rem}@media (max-width: 768px){h2{font-size:1.875rem}}h3{font-size:1.875rem}@media (max-width: 768px){h3{font-size:1.5rem}}h4{font-size:1.5rem}@media (max-width: 768px){h4{font-size:1.25rem}}h5{font-size:1.25rem}h6{font-size:1.125rem}.entry-content>*+*{margin-top:1.5rem}.entry-content p{line-height:1.8;color:#1c2b3a}.entry-content h2,.entry-content h3,.entry-content h4{margin-top:3rem;margin-bottom:1rem;color:#1a3a5c}.entry-content ul,.entry-content ol{padding-left:1.5rem}.entry-content ul li,.entry-content ol li{line-height:1.8}.entry-content ul li+li,.entry-content ol li+li{margin-top:.5rem}.entry-content ul li{list-style-type:disc}.entry-content ol li{list-style-type:decimal}.entry-content a{color:#0097d4;text-decoration:underline;text-underline-offset:3px;transition:color .15s ease}.entry-content a:hover{color:#007bae}.entry-content blockquote{border-left:4px solid #0097D4;padding:1rem 1.5rem;background:#f8f9fa;border-radius:0 8px 8px 0;font-style:italic;color:#5a6a7a;margin:2rem 0}.entry-content pre,.entry-content code{font-family:Fira Code,Consolas,monospace;font-size:.875rem}.entry-content pre{background:#1c2b3a;color:#e2e8f0;padding:1.5rem;border-radius:8px;overflow-x:auto;line-height:1.8}.entry-content code{background:#f8f9fa;border:1px solid #DEE2E6;padding:.15em .4em;border-radius:4px;font-size:.9em}.entry-content pre code{background:none;border:none;padding:0}.entry-content img{border-radius:8px;margin:1.5rem auto}.entry-content table{width:100%;border-collapse:collapse;font-size:.875rem}.entry-content table th,.entry-content table td{padding:.75rem 1rem;border:1px solid #DEE2E6;text-align:left}.entry-content table th{background:#1a3a5c;color:#fff;font-weight:600}.entry-content table tr:nth-child(2n) td{background:#f8f9fa}.entry-content hr{border:none;border-top:1px solid #DEE2E6;margin:3rem 0}.text-primary{color:#1a3a5c}.text-accent{color:#0097d4}.text-secondary{color:#5a6a7a}.text-muted{color:#8a9bab}.text-inverse{color:#fff}.text-center{text-align:center}.text-right{text-align:right}.text-small{font-size:.875rem}.text-large{font-size:1.25rem}.font-bold{font-weight:700}.font-semibold{font-weight:600}.font-medium{font-weight:500}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0}.container{width:100%;max-width:1200px;margin-right:auto;margin-left:auto;padding-right:1.5rem;padding-left:1.5rem}.container--narrow{width:100%;max-width:1200px;margin-right:auto;margin-left:auto;padding-right:1.5rem;padding-left:1.5rem;max-width:800px}.container--wide{width:100%;max-width:1200px;margin-right:auto;margin-left:auto;padding-right:1.5rem;padding-left:1.5rem;max-width:1440px}.section{padding-top:5rem;padding-bottom:5rem}@media (max-width: 768px){.section{padding-top:3rem;padding-bottom:3rem}}.section--white{background-color:#fff}.section--gray{background-color:#f8f9fa}.section--dark{background-color:#1c2b3a;color:#fff}.section--primary{background-color:#1a3a5c;color:#fff}.section-header{text-align:center;margin-bottom:4rem}.section-header .section-label{display:inline-block;font-family:Inter,Helvetica Neue,Arial,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.12em;text-transform:uppercase;color:#0097d4;margin-bottom:.75rem}.section-header h2{font-size:2.25rem;font-weight:700;color:#1a3a5c;line-height:1.2;margin-bottom:1rem}@media (max-width: 768px){.section-header h2{font-size:1.875rem}}.section-header .section-desc{font-size:1.125rem;color:#5a6a7a;line-height:1.8;max-width:600px;margin:0 auto}.grid-2{display:grid;grid-template-columns:repeat(2,1fr);gap:2rem}@media (max-width: 768px){.grid-2{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.grid-2{grid-template-columns:1fr}}.grid-3{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}@media (max-width: 768px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.grid-3{grid-template-columns:1fr}}.grid-4{display:grid;grid-template-columns:repeat(4,1fr);gap:2rem}@media (max-width: 768px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 1024px){.grid-4{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.grid-4{grid-template-columns:1fr}}.page-wrapper{display:flex;flex-direction:column;min-height:100vh}.site-main{flex:1;padding-top:72px}@media (max-width: 768px){.site-main{padding-top:60px}}.mt-auto{margin-top:auto}.mb-auto{margin-bottom:auto}.mx-auto{margin-right:auto;margin-left:auto}.hidden{display:none!important}.visible{visibility:visible}.d-flex{display:flex}.d-grid{display:grid}.d-block{display:block}.d-inline{display:inline}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.gap-8{gap:2rem}.w-full{width:100%}.h-full{height:100%}.btn,.wpcf7 .wpcf7-submit{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 2rem;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;font-size:1rem;font-weight:600;line-height:1;border:2px solid transparent;border-radius:9999px;cursor:pointer;text-decoration:none;transition:all .25s ease;white-space:nowrap}.btn:focus-visible,.wpcf7 .wpcf7-submit:focus-visible{outline:3px solid #0097D4;outline-offset:2px}.btn--primary,.wpcf7 .wpcf7-submit{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 2rem;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;font-size:1rem;font-weight:600;line-height:1;border:2px solid transparent;border-radius:9999px;cursor:pointer;text-decoration:none;transition:all .25s ease;white-space:nowrap}.btn--primary:focus-visible,.wpcf7 .wpcf7-submit:focus-visible{outline:3px solid #0097D4;outline-offset:2px}.btn--primary,.wpcf7 .wpcf7-submit{background-color:#0097d4;color:#fff;border-color:#0097d4}.btn--primary:hover,.wpcf7 .wpcf7-submit:hover{background-color:#007bae;border-color:#007bae;color:#fff;transform:translateY(-1px)}.btn--primary:active,.wpcf7 .wpcf7-submit:active{transform:translateY(0)}.btn--secondary{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 2rem;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;font-size:1rem;font-weight:600;line-height:1;border:2px solid transparent;border-radius:9999px;cursor:pointer;text-decoration:none;transition:all .25s ease;white-space:nowrap}.btn--secondary:focus-visible{outline:3px solid #0097D4;outline-offset:2px}.btn--secondary{background-color:transparent;color:#1a3a5c;border-color:#1a3a5c}.btn--secondary:hover{background-color:#1a3a5c;color:#fff}.btn--outline-white{display:inline-flex;align-items:center;justify-content:center;gap:.5rem;padding:.75rem 2rem;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;font-size:1rem;font-weight:600;line-height:1;border:2px solid transparent;border-radius:9999px;cursor:pointer;text-decoration:none;transition:all .25s ease;white-space:nowrap}.btn--outline-white:focus-visible{outline:3px solid #0097D4;outline-offset:2px}.btn--outline-white{background-color:transparent;color:#fff;border-color:#ffffffb3}.btn--outline-white:hover{background-color:#fff;color:#1a3a5c;border-color:#fff}.btn--lg,.wpcf7 .wpcf7-submit{padding:1rem 2.5rem;font-size:1.125rem}.btn--sm{padding:.5rem 1.25rem;font-size:.875rem}.badge{display:inline-block;padding:.25rem .75rem;font-size:.75rem;font-weight:600;border-radius:9999px;background-color:#0097d41f;color:#0097d4;letter-spacing:.04em}.badge--primary{background-color:#1a3a5c1f;color:#1a3a5c}.badge--success{background-color:#28a7451f;color:#28a745}.badge--muted{background-color:#f0f2f4;color:#8a9bab}.page-hero{background-color:#1a3a5c;background:linear-gradient(135deg,#1a3a5c,#2b5080);padding:4rem 0 3rem;color:#fff;text-align:center}.page-hero h1{font-size:3rem;font-weight:700;color:#fff;margin-bottom:1rem}@media (max-width: 768px){.page-hero h1{font-size:2.25rem}}.page-hero .page-hero__subtitle{font-size:1.125rem;opacity:.8;max-width:600px;margin:0 auto}.breadcrumb{display:flex;align-items:center;gap:.5rem;flex-wrap:wrap;font-size:.875rem;color:#8a9bab;padding:1rem 0}.breadcrumb a{color:#0097d4;transition:color .15s ease}.breadcrumb a:hover{color:#007bae}.breadcrumb__separator{color:#dee2e6}.breadcrumb__current{color:#5a6a7a}.pagination{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:.5rem;margin-top:4rem;flex-wrap:wrap}.pagination .page-numbers{display:flex;align-items:center;justify-content:center;min-width:44px;height:44px;padding:0 .75rem;border-radius:8px;font-size:.875rem;font-weight:500;border:1px solid #DEE2E6;background:#fff;transition:all .15s ease}.pagination .page-numbers:hover,.pagination .page-numbers.current{background:#1a3a5c;color:#fff;border-color:#1a3a5c}.pagination .page-numbers.dots{border:none;background:none;cursor:default}.alert{padding:1rem 1.5rem;border-radius:8px;border-left:4px solid;font-size:.875rem}.alert--info{border-color:#0097d4;background:#0097d414}.alert--success{border-color:#28a745;background:#28a74514}.alert--warning{border-color:#ffc107;background:#ffc10714}.alert--error{border-color:#dc3545;background:#dc354514}.site-header{position:fixed;top:0;left:0;right:0;height:72px;z-index:200;background-color:transparent;transition:background-color .25s ease,box-shadow .25s ease}.site-header__inner{width:100%;max-width:1200px;margin-right:auto;margin-left:auto;padding-right:1.5rem;padding-left:1.5rem;display:flex;flex-direction:row;justify-content:space-between;align-items:center;height:100%}.site-header.is-scrolled{background-color:#fffffff7;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000f;backdrop-filter:blur(8px)}.site-header.is-scrolled .site-header__logo path,.site-header.is-scrolled .site-header__logo rect{fill:#1a3a5c}.site-header.is-scrolled .nav-link{color:#1c2b3a}.site-header.header--solid{background-color:#fff;box-shadow:0 1px 3px #00000014,0 1px 2px #0000000f}.site-header.header--solid .nav-link{color:#1c2b3a}@media (max-width: 768px){.site-header{height:60px}}.site-header__logo{display:flex;align-items:center;gap:.75rem;text-decoration:none;flex-shrink:0}.site-header__logo img,.site-header__logo .custom-logo{height:40px;width:auto}@media (max-width: 768px){.site-header__logo img,.site-header__logo .custom-logo{height:32px}}.site-header__logo-text{font-family:Inter,Helvetica Neue,Arial,sans-serif;font-size:1.25rem;font-weight:700;color:#1a3a5c;line-height:1}.site-header__logo-text span{display:block;font-size:.75rem;font-weight:400;letter-spacing:.08em;color:#5a6a7a;margin-top:2px}@media (max-width: 1024px){.primary-nav{display:none}.primary-nav.is-open{display:flex;flex-direction:column;position:fixed;inset:0;background:#fff;padding:5rem 1.5rem;z-index:300;overflow-y:auto}}.primary-nav__list{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.25rem}@media (max-width: 1024px){.primary-nav__list{flex-direction:column;align-items:flex-start;gap:0;width:100%}}.primary-nav__list>li{position:relative}@media (max-width: 1024px){.primary-nav__list>li{width:100%;border-bottom:1px solid #F0F2F4}}.nav-link{display:inline-flex;align-items:center;gap:.25rem;padding:.5rem 1rem;font-size:.875rem;font-weight:500;color:#1c2b3ad9;border-radius:4px;transition:color .15s ease,background-color .15s ease;white-space:nowrap}.nav-link:hover,.nav-link--active{color:#0097d4}@media (max-width: 1024px){.nav-link{width:100%;padding:1rem;font-size:1.125rem;color:#1c2b3a}}.nav-arrow{display:inline-block;width:16px;height:16px;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' stroke='currentColor' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:center;transition:transform .15s ease}.dropdown-menu{display:none;position:absolute;top:calc(100% + .5rem);left:0;min-width:220px;background:#fff;border-radius:8px;box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;border:1px solid #F0F2F4;padding:.5rem;z-index:100}.dropdown-menu a{display:block;padding:.5rem 1rem;font-size:.875rem;color:#1c2b3a;border-radius:4px;transition:background-color .15s ease}.dropdown-menu a:hover{background-color:#f8f9fa;color:#0097d4}@media (max-width: 1024px){.dropdown-menu{position:static;box-shadow:none;border:none;background:#f8f9fa;margin:0 1rem .5rem;border-radius:8px}}.has-dropdown:hover>.dropdown-menu,.has-dropdown:focus-within>.dropdown-menu{display:block}.has-dropdown:hover>.nav-link .nav-arrow{transform:rotate(180deg)}.header-cta{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.75rem;flex-shrink:0}@media (max-width: 1024px){.header-cta{display:none}.is-open .header-cta{display:flex;flex-direction:column;width:100%;padding-top:2rem}}.nav-toggle{display:none;flex-direction:column;justify-content:center;align-items:center;width:44px;height:44px;gap:6px;z-index:301}@media (max-width: 1024px){.nav-toggle{display:flex}}.nav-toggle span{display:block;width:24px;height:2px;background-color:#1a3a5c;border-radius:2px;transition:transform .25s ease,opacity .25s ease}.nav-toggle.is-active span:nth-child(1){transform:translateY(8px) rotate(45deg)}.nav-toggle.is-active span:nth-child(2){opacity:0}.nav-toggle.is-active span:nth-child(3){transform:translateY(-8px) rotate(-45deg)}.nav-close{display:none;position:absolute;top:1rem;right:1rem}@media (max-width: 1024px){.nav-close{display:block}}.site-footer{background-color:#1c2b3a;color:#ffffffbf}.site-footer a{color:#ffffffbf;transition:color .15s ease}.site-footer a:hover{color:#33b5e5}.footer-main{padding:4rem 0}.footer-main .container{display:grid;grid-template-columns:2fr 1fr 1fr 1fr;gap:3rem}@media (max-width: 1024px){.footer-main .container{grid-template-columns:1fr 1fr;gap:2rem}}@media (max-width: 640px){.footer-main .container{grid-template-columns:1fr}}.footer-brand__logo{display:flex;align-items:center;gap:.75rem;margin-bottom:1.25rem;text-decoration:none}.footer-brand__logo img{height:36px;width:auto;filter:brightness(0) invert(1)}.footer-brand__name{font-family:Inter,Helvetica Neue,Arial,sans-serif;font-size:1.25rem;font-weight:700;color:#fff;line-height:1}.footer-brand__tagline{font-size:.75rem;opacity:.6;letter-spacing:.06em;margin-top:2px}.footer-brand__desc{font-size:.875rem;line-height:1.8;margin-bottom:1.5rem;opacity:.8}.footer-brand__contact{font-size:.875rem}.footer-brand__contact dt{font-size:.75rem;opacity:.5;letter-spacing:.06em;text-transform:uppercase;margin-bottom:.25rem}.footer-brand__contact dd{margin-bottom:.75rem}.footer-brand__contact dd a{color:#fff;font-weight:500;font-size:1.125rem}.footer-nav h4{font-size:.75rem;font-weight:600;letter-spacing:.1em;text-transform:uppercase;color:#fff;margin-bottom:1.25rem;opacity:.5}.footer-nav ul{display:flex;flex-direction:column;gap:.75rem}.footer-nav li a{font-size:.875rem;display:inline-flex;align-items:center;gap:.5rem}.footer-nav li a:before{content:"";display:inline-block;width:4px;height:4px;border-radius:50%;background-color:#0097d4;opacity:.7;flex-shrink:0}.footer-bottom{border-top:1px solid rgba(255,255,255,.1);padding:1.5rem 0}.footer-bottom .container{display:flex;flex-direction:row;justify-content:space-between;align-items:center;flex-wrap:wrap;gap:1rem}@media (max-width: 640px){.footer-bottom .container{flex-direction:column;text-align:center}}.footer-bottom__copy{font-size:.75rem;opacity:.5}.footer-bottom__links{display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:1.5rem;font-size:.75rem}.hero{position:relative;min-height:100vh;display:flex;flex-direction:row;justify-content:center;align-items:center;overflow:hidden;background-color:#1a3a5c}.hero:before{content:"";position:absolute;inset:0;background:linear-gradient(135deg,#1a3a5c,#2b5080,#122843);z-index:0}.hero:after{content:"";position:absolute;top:-10%;right:-5%;width:60%;height:120%;background:radial-gradient(ellipse at center,rgba(0,151,212,.12) 0%,transparent 70%);z-index:0}.hero__bg-video{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.15}.hero__bg-image{position:absolute;inset:0;width:100%;height:100%;object-fit:cover;z-index:0;opacity:.2}.hero__content{position:relative;z-index:1;width:100%;max-width:1200px;margin-right:auto;margin-left:auto;padding-right:1.5rem;padding-left:1.5rem;text-align:center;padding-top:72px;padding-bottom:3rem;color:#fff}.hero__eyebrow{display:inline-block;font-family:Inter,Helvetica Neue,Arial,sans-serif;font-size:.75rem;font-weight:600;letter-spacing:.25em;text-transform:uppercase;color:#33b5e5;margin-bottom:.75rem;opacity:0;animation:fadeInUp .6s ease .2s forwards}.hero__title{font-size:clamp(2.2rem,5.5vw,3.75rem);font-weight:700;line-height:1.2;letter-spacing:-.02em;color:#fff;margin-bottom:1rem;opacity:0;animation:fadeInUp .6s ease .4s forwards}.hero__title span{display:block}.hero__title__accent{color:#33b5e5}.hero__subtitle{font-size:clamp(.875rem,2vw,1.125rem);line-height:1.8;max-width:600px;margin:0 auto 2rem;animation:fadeInUp .6s ease .6s forwards;opacity:0}.hero__actions{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:1rem;flex-wrap:wrap;opacity:0;animation:fadeInUp .6s ease .8s forwards}@media (max-width: 640px){.hero__actions{flex-direction:column;align-items:stretch}.hero__actions .btn,.hero__actions .wpcf7 .wpcf7-submit,.wpcf7 .hero__actions .wpcf7-submit{text-align:center}}.hero__scroll-indicator{position:absolute;bottom:2rem;left:50%;transform:translate(-50%);z-index:1;display:flex;flex-direction:column;justify-content:center;align-items:center;gap:.5rem;color:#ffffff80;font-size:.75rem;letter-spacing:.1em;animation:fadeInUp .6s ease 1s forwards;opacity:0}.hero__scroll-indicator__line{width:1px;height:40px;background:linear-gradient(to bottom,rgba(255,255,255,.5),transparent);animation:scrollLine 1.5s ease infinite}.hero__stats{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:2.5rem;flex-wrap:wrap;margin-top:2.5rem;padding-top:1.5rem;border-top:1px solid rgba(255,255,255,.15)}@media (max-width: 768px){.hero__stats{gap:1.5rem}}.hero__stat{text-align:center}.hero__stat-number{font-family:Inter,Helvetica Neue,Arial,sans-serif;font-size:3rem;font-weight:700;color:#fff;line-height:1;margin-bottom:.5rem}.hero__stat-number span{font-size:1.875rem;color:#33b5e5}.hero__stat-label{font-size:.875rem;opacity:.65;letter-spacing:.06em}@keyframes fadeInUp{0%{opacity:0;transform:translateY(24px)}to{opacity:1;transform:translateY(0)}}@keyframes scrollLine{0%{transform:scaleY(0);transform-origin:top}50%{transform:scaleY(1);transform-origin:top}51%{transform:scaleY(1);transform-origin:bottom}to{transform:scaleY(0);transform-origin:bottom}}.card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000f;overflow:hidden;transition:box-shadow .25s ease,transform .25s ease}.card:hover{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;transform:translateY(-4px)}.card{display:flex;flex-direction:column}.card__image{position:relative;overflow:hidden;aspect-ratio:16/10}.card__image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.card__image{flex-shrink:0}.card__image img{transition:transform .4s ease}.card:hover .card__image img{transform:scale(1.05)}.card__body{padding:1.5rem;flex:1;display:flex;flex-direction:column}.card__category{font-size:.75rem;font-weight:600;color:#0097d4;letter-spacing:.08em;text-transform:uppercase;margin-bottom:.5rem}.card__title{font-size:1.25rem;font-weight:700;color:#1a3a5c;line-height:1.4;margin-bottom:.75rem;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.card__excerpt{font-size:.875rem;color:#5a6a7a;line-height:1.8;flex:1;display:-webkit-box;-webkit-line-clamp:3;-webkit-box-orient:vertical;overflow:hidden}.card__footer{display:flex;align-items:center;justify-content:space-between;margin-top:1rem;padding-top:1rem;border-top:1px solid #F0F2F4;font-size:.75rem;color:#8a9bab}.card__date{display:flex;align-items:center;gap:.25rem}.card__link{font-size:.75rem;font-weight:600;color:#0097d4;display:flex;flex-direction:row;justify-content:flex-end;align-items:center;gap:.25rem}.card__link:after{content:"→";transition:transform .15s ease}.card:hover .card__link:after{transform:translate(3px)}.service-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000f;overflow:hidden;transition:box-shadow .25s ease,transform .25s ease}.service-card:hover{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;transform:translateY(-4px)}.service-card{padding:2rem;text-align:center;background:#fff}.service-card__icon{width:64px;height:64px;margin:0 auto 1.25rem;background:linear-gradient(135deg,#0097d41a,#1a3a5c1a);border-radius:12px;display:flex;align-items:center;justify-content:center;transition:background .25s ease}.service-card__icon svg,.service-card__icon img{width:32px;height:32px}.service-card:hover .service-card__icon{background:linear-gradient(135deg,#0097d4,#1a3a5c)}.service-card:hover .service-card__icon svg path{fill:#fff}.service-card__title{font-size:1.125rem;font-weight:700;color:#1a3a5c;margin-bottom:.75rem}.service-card__desc{font-size:.875rem;color:#5a6a7a;line-height:1.8;margin-bottom:1.25rem}.service-card__link{font-size:.875rem;font-weight:600;color:#0097d4;display:flex;flex-direction:row;justify-content:center;align-items:center;gap:.25rem}.service-card__link:after{content:"→";transition:transform .15s ease}.service-card:hover .service-card__link:after{transform:translate(4px)}.news-card{display:flex;gap:1.5rem;padding:1.5rem 0;border-bottom:1px solid #F0F2F4;text-decoration:none;transition:background .15s ease}.news-card:first-child{border-top:1px solid #F0F2F4}.news-card__image{flex-shrink:0;width:120px;height:80px;border-radius:8px;overflow:hidden}.news-card__image img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease}@media (max-width: 640px){.news-card__image{display:none}}.news-card:hover .news-card__image img{transform:scale(1.05)}.news-card__body{flex:1;min-width:0}.news-card__meta{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.75rem;margin-bottom:.5rem;flex-wrap:wrap}.news-card__date{font-size:.75rem;color:#8a9bab}.news-card__cat{font-size:.75rem;padding:2px .75rem;background:#0097d41a;color:#0097d4;border-radius:9999px;font-weight:600}.news-card__title{font-size:1rem;font-weight:600;color:#1c2b3a;line-height:1.4;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .15s ease}.news-card:hover .news-card__title{color:#0097d4}.portfolio-card{position:relative;display:block;border-radius:12px;overflow:hidden;background:#fff;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000f;transition:box-shadow .25s ease,transform .25s ease}.portfolio-card:hover{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;transform:translateY(-6px)}.portfolio-card__image{position:relative;overflow:hidden;aspect-ratio:4/3}.portfolio-card__image img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.portfolio-card__image img{transition:transform .5s ease}.portfolio-card:hover .portfolio-card__image img{transform:scale(1.08)}.portfolio-card__overlay{position:absolute;inset:0;background:linear-gradient(to top,rgba(26,58,92,.85) 0%,transparent 60%);opacity:0;transition:opacity .25s ease;display:flex;flex-direction:column;justify-content:flex-end;align-items:flex-start;padding:1.5rem}.portfolio-card:hover .portfolio-card__overlay{opacity:1}.portfolio-card__overlay-content{color:#fff;transform:translateY(10px);transition:transform .25s ease}.portfolio-card:hover .portfolio-card__overlay-content{transform:translateY(0)}.portfolio-card__overlay-title{font-size:1.125rem;font-weight:700;margin-bottom:.5rem}.portfolio-card__overlay-cats{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;flex-wrap:wrap}.portfolio-card__body{padding:1.25rem}.portfolio-card__cats{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;flex-wrap:wrap;margin-bottom:.5rem}.portfolio-card__title{font-size:1.125rem;font-weight:700;color:#1a3a5c;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .15s ease}.portfolio-card:hover .portfolio-card__title{color:#0097d4}.portfolio-card__client{font-size:.875rem;color:#5a6a7a;margin-top:.25rem}.job-card{background:#fff;border-radius:12px;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000f;overflow:hidden;transition:box-shadow .25s ease,transform .25s ease}.job-card:hover{box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d;transform:translateY(-4px)}.job-card{padding:1.5rem 2rem;display:flex;align-items:flex-start;gap:1.5rem;text-decoration:none}@media (max-width: 640px){.job-card{flex-direction:column;gap:1rem}}.job-card__badge{flex-shrink:0;padding:.5rem 1rem;border-radius:9999px;font-size:.75rem;font-weight:600;background:#0097d41a;color:#0097d4}.job-card__body{flex:1;min-width:0}.job-card__title{font-size:1.25rem;font-weight:700;color:#1a3a5c;margin-bottom:.5rem;transition:color .15s ease}.job-card:hover .job-card__title{color:#0097d4}.job-card__meta{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:1.5rem;flex-wrap:wrap;font-size:.875rem;color:#5a6a7a}.job-card__meta span{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.25rem}.job-card__status{flex-shrink:0;font-size:.75rem;padding:.25rem .75rem;border-radius:9999px}.job-card__status--open{background:#28a7451a;color:#28a745}.job-card__status--closed{background:#f0f2f4;color:#8a9bab}.form-group{margin-bottom:1.5rem}.form-group label{display:block;font-size:.875rem;font-weight:600;color:#1c2b3a;margin-bottom:.5rem}.form-group label .required{color:#dc3545;margin-left:.25rem}.form-control,.wpcf7 input[type=text],.wpcf7 input[type=email],.wpcf7 input[type=tel],.wpcf7 input[type=url],.wpcf7 textarea,.wpcf7 select{display:block;width:100%;padding:.75rem 1rem;font-family:Noto Sans JP,Hiragino Kaku Gothic ProN,Meiryo,sans-serif;font-size:1rem;line-height:1.6;color:#1c2b3a;background-color:#fff;border:1.5px solid #DEE2E6;border-radius:8px;transition:border-color .15s ease,box-shadow .15s ease}.form-control::placeholder,.wpcf7 input[type=text]::placeholder,.wpcf7 input[type=email]::placeholder,.wpcf7 input[type=tel]::placeholder,.wpcf7 input[type=url]::placeholder,.wpcf7 textarea::placeholder,.wpcf7 select::placeholder{color:#8a9bab}.form-control:hover,.wpcf7 input[type=text]:hover,.wpcf7 input[type=email]:hover,.wpcf7 input[type=tel]:hover,.wpcf7 input[type=url]:hover,.wpcf7 textarea:hover,.wpcf7 select:hover{border-color:#c1c9d0}.form-control:focus,.wpcf7 input[type=text]:focus,.wpcf7 input[type=email]:focus,.wpcf7 input[type=tel]:focus,.wpcf7 input[type=url]:focus,.wpcf7 textarea:focus,.wpcf7 select:focus{outline:none;border-color:#0097d4;box-shadow:0 0 0 3px #0097d426}.form-control.is-invalid,.wpcf7 input.is-invalid[type=text],.wpcf7 input.is-invalid[type=email],.wpcf7 input.is-invalid[type=tel],.wpcf7 input.is-invalid[type=url],.wpcf7 textarea.is-invalid,.wpcf7 select.is-invalid{border-color:#dc3545}.form-control.is-invalid:focus,.wpcf7 input.is-invalid[type=text]:focus,.wpcf7 input.is-invalid[type=email]:focus,.wpcf7 input.is-invalid[type=tel]:focus,.wpcf7 input.is-invalid[type=url]:focus,.wpcf7 textarea.is-invalid:focus,.wpcf7 select.is-invalid:focus{box-shadow:0 0 0 3px #dc354526}.form-control.is-valid,.wpcf7 input.is-valid[type=text],.wpcf7 input.is-valid[type=email],.wpcf7 input.is-valid[type=tel],.wpcf7 input.is-valid[type=url],.wpcf7 textarea.is-valid,.wpcf7 select.is-valid{border-color:#28a745}textarea.form-control,.wpcf7 textarea{min-height:140px;resize:vertical}select.form-control,.wpcf7 select{appearance:none;background-image:url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 16 16'%3E%3Cpath d='M4 6l4 4 4-4' stroke='%235A6A7A' stroke-width='1.5' fill='none' stroke-linecap='round' stroke-linejoin='round'/%3E%3C/svg%3E");background-repeat:no-repeat;background-position:right 1rem center;background-size:16px;padding-right:2.5rem}.form-hint{margin-top:.25rem;font-size:.75rem;color:#8a9bab}.form-error,.wpcf7 .wpcf7-not-valid-tip{margin-top:.25rem;font-size:.75rem;color:#dc3545}.form-check{display:flex;flex-direction:row;justify-content:flex-start;align-items:flex-start;gap:.75rem;cursor:pointer}.form-check input[type=checkbox],.form-check input[type=radio]{flex-shrink:0;width:20px;height:20px;border:2px solid #DEE2E6;border-radius:4px;appearance:none;background:#fff;cursor:pointer;transition:all .15s ease;position:relative;margin-top:2px}.form-check input[type=checkbox]:checked,.form-check input[type=radio]:checked{background-color:#0097d4;border-color:#0097d4}.form-check input[type=checkbox]:checked:after,.form-check input[type=radio]:checked:after{content:"";position:absolute;top:3px;left:6px;width:5px;height:9px;border:2px solid white;border-top:none;border-left:none;transform:rotate(45deg)}.form-check input[type=checkbox]:focus:focus-visible,.form-check input[type=radio]:focus:focus-visible{outline:3px solid #0097D4;outline-offset:3px}.form-check input[type=radio]{border-radius:50%}.form-check input[type=radio]:checked:after{top:4px;left:4px;width:8px;height:8px;border-radius:50%;background:#fff;border:none;transform:none}.form-check__label{font-size:.875rem;color:#1c2b3a;line-height:1.6}.wpcf7 .wpcf7-form-control-wrap{display:block}.wpcf7 .wpcf7-submit{cursor:pointer}.wpcf7 .wpcf7-response-output{margin-top:1.5rem;padding:1rem 1.5rem;border-radius:8px;font-size:.875rem;border-left:4px solid}.wpcf7 .wpcf7-response-output.wpcf7-mail-sent-ok{border-color:#28a745;background:#28a74514;color:#1e7e34}.wpcf7 .wpcf7-response-output.wpcf7-validation-errors,.wpcf7 .wpcf7-response-output.wpcf7-mail-sent-ng{border-color:#dc3545;background:#dc354514;color:#bd2130}.contact-form-section{padding:4rem 0}.contact-form-section .container{display:grid;grid-template-columns:1fr 1.5fr;gap:4rem;align-items:start}@media (max-width: 1024px){.contact-form-section .container{grid-template-columns:1fr;gap:2.5rem}}.contact-info__title{font-size:1.875rem;font-weight:700;color:#1a3a5c;margin-bottom:1rem}.contact-info__desc{color:#5a6a7a;line-height:1.8;margin-bottom:2rem}.contact-info__item{display:flex;flex-direction:row;justify-content:flex-start;align-items:flex-start;gap:1rem;margin-bottom:1.25rem}.contact-info__item-icon{flex-shrink:0;width:44px;height:44px;background:#0097d41a;border-radius:8px;display:flex;align-items:center;justify-content:center}.contact-info__item-icon svg{color:#0097d4}.contact-info__item-body dt{font-size:.75rem;color:#8a9bab;text-transform:uppercase;letter-spacing:.08em;margin-bottom:.25rem}.contact-info__item-body dd{font-size:1.125rem;font-weight:500;color:#1c2b3a}.contact-info__item-body dd a{color:#0097d4}.portfolio-filter{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:.75rem;flex-wrap:wrap;margin-bottom:2.5rem}.portfolio-filter__btn{padding:.5rem 1.25rem;font-size:.875rem;font-weight:500;color:#5a6a7a;background:#fff;border:1.5px solid #DEE2E6;border-radius:9999px;cursor:pointer;transition:all .15s ease}.portfolio-filter__btn:hover{color:#0097d4;border-color:#0097d4}.portfolio-filter__btn.is-active{background:#1a3a5c;color:#fff;border-color:#1a3a5c}.portfolio-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1.5rem}@media (max-width: 1024px){.portfolio-grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.portfolio-grid{grid-template-columns:1fr}}.portfolio-grid .portfolio-card.is-hidden{display:none}.portfolio-detail{padding:4rem 0}.portfolio-detail .container{display:grid;grid-template-columns:1fr 280px;gap:3rem;align-items:start}@media (max-width: 1024px){.portfolio-detail .container{grid-template-columns:1fr}}.portfolio-detail__gallery{margin-bottom:2.5rem}.portfolio-detail__gallery .gallery-main{position:relative;overflow:hidden;aspect-ratio:16/9}.portfolio-detail__gallery .gallery-main img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.portfolio-detail__gallery .gallery-main{border-radius:12px;overflow:hidden;margin-bottom:1rem;box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d}.portfolio-detail__gallery .gallery-main img{width:100%;height:100%;object-fit:cover;transition:transform .4s ease;cursor:zoom-in}.portfolio-detail__gallery .gallery-thumbs{display:grid;grid-template-columns:repeat(5,1fr);gap:.5rem}@media (max-width: 640px){.portfolio-detail__gallery .gallery-thumbs{grid-template-columns:repeat(4,1fr)}}.portfolio-detail__gallery .gallery-thumb{position:relative;overflow:hidden;aspect-ratio:1/1}.portfolio-detail__gallery .gallery-thumb img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.portfolio-detail__gallery .gallery-thumb{border-radius:4px;overflow:hidden;cursor:pointer;opacity:.6;transition:opacity .15s ease;border:2px solid transparent}.portfolio-detail__gallery .gallery-thumb.is-active,.portfolio-detail__gallery .gallery-thumb:hover{opacity:1;border-color:#0097d4}.portfolio-detail__gallery .gallery-thumb img{width:100%;height:100%;object-fit:cover}.portfolio-detail__content .entry-content{margin-top:2rem}.portfolio-detail__info-card{background:#f8f9fa;border-radius:12px;padding:1.5rem;position:sticky;top:calc(72px + 1.5rem);margin-bottom:1.5rem}.portfolio-detail__info-title{font-size:.875rem;font-weight:600;text-transform:uppercase;letter-spacing:.08em;color:#8a9bab;margin-bottom:1.25rem}.portfolio-detail__info-list dt{font-size:.75rem;color:#8a9bab;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.25rem}.portfolio-detail__info-list dd{font-size:.875rem;color:#1c2b3a;font-weight:500;margin-bottom:1rem;padding-bottom:1rem;border-bottom:1px solid #F0F2F4}.portfolio-detail__info-list dd:last-child{border-bottom:none;margin-bottom:0;padding-bottom:0}.portfolio-detail__tags{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;flex-wrap:wrap}.portfolio-lightbox{display:none;position:fixed;inset:0;background:#1c2b3af2;z-index:400;display:flex;align-items:center;justify-content:center}.portfolio-lightbox.is-open{display:flex}.portfolio-lightbox__img{max-width:90vw;max-height:85vh;object-fit:contain;border-radius:8px}.portfolio-lightbox__close{position:absolute;top:1.5rem;right:1.5rem;color:#fff;font-size:2.25rem;cursor:pointer;line-height:1;opacity:.7;transition:opacity .15s ease}.portfolio-lightbox__close:hover{opacity:1}.portfolio-lightbox__prev,.portfolio-lightbox__next{position:absolute;top:50%;transform:translateY(-50%);color:#fff;font-size:2.25rem;cursor:pointer;padding:1rem;opacity:.7;transition:opacity .15s ease}.portfolio-lightbox__prev:hover,.portfolio-lightbox__next:hover{opacity:1}.portfolio-lightbox__prev{left:1rem}.portfolio-lightbox__next{right:1rem}.recruit-hero{background:linear-gradient(135deg,#1a3a5c,#007bae);padding:6rem 0;color:#fff;text-align:center}.recruit-hero h1{color:#fff;font-size:3rem;margin-bottom:1.25rem}@media (max-width: 768px){.recruit-hero h1{font-size:2.25rem}}.recruit-hero p{font-size:1.25rem;opacity:.85;max-width:600px;margin:0 auto}.jobs-section{padding:4rem 0}.jobs-list{display:flex;flex-direction:column;gap:1rem}.job-detail{padding:4rem 0}.job-detail .container{display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start}@media (max-width: 1024px){.job-detail .container{grid-template-columns:1fr}}.job-detail__table{width:100%;border-collapse:collapse;margin-bottom:2.5rem;font-size:.875rem}.job-detail__table tr{border-bottom:1px solid #F0F2F4}.job-detail__table tr:last-child{border-bottom:none}.job-detail__table th{width:160px;padding:1rem;font-weight:600;color:#5a6a7a;background:#f8f9fa;text-align:left;vertical-align:top}@media (max-width: 640px){.job-detail__table th{display:block;width:100%;padding-bottom:.25rem;padding-top:1rem}}.job-detail__table td{padding:1rem;color:#1c2b3a;line-height:1.8}@media (max-width: 640px){.job-detail__table td{display:block;padding-top:0;padding-left:1rem}}.job-detail__sidebar{position:sticky;top:calc(72px + 1.5rem)}.job-detail__apply-card{background:#1a3a5c;color:#fff;border-radius:20px;padding:2rem;text-align:center}.job-detail__apply-card h3{color:#fff;font-size:1.5rem;margin-bottom:.75rem}.job-detail__apply-card p{font-size:.875rem;opacity:.8;margin-bottom:1.5rem;line-height:1.8}.job-detail__apply-card .btn--primary,.job-detail__apply-card .wpcf7 .wpcf7-submit,.wpcf7 .job-detail__apply-card .wpcf7-submit{width:100%;justify-content:center}.job-detail__share{margin-top:1.5rem;padding:1.25rem;background:#f8f9fa;border-radius:8px;text-align:center}.job-detail__share h4{font-size:.875rem;color:#5a6a7a;margin-bottom:1rem}.job-detail__share-links{display:flex;flex-direction:row;justify-content:center;align-items:center;gap:.75rem}.job-detail__share a{display:flex;align-items:center;justify-content:center;width:40px;height:40px;border-radius:50%;background:#f0f2f4;color:#5a6a7a;font-size:.875rem;transition:all .15s ease}.job-detail__share a:hover{background:#0097d4;color:#fff}.recruit-appeal{background:#f8f9fa;padding:5rem 0}.recruit-appeal .container{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}@media (max-width: 768px){.recruit-appeal .container{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.recruit-appeal .container{grid-template-columns:1fr}}.recruit-appeal__item{text-align:center;padding:2rem}.recruit-appeal__item-icon{width:80px;height:80px;margin:0 auto 1.25rem;background:#fff;border-radius:50%;display:flex;align-items:center;justify-content:center;box-shadow:0 4px 6px #00000012,0 2px 4px #0000000f}.recruit-appeal__item h3{font-size:1.25rem;color:#1a3a5c;margin-bottom:.75rem}.recruit-appeal__item p{font-size:.875rem;color:#5a6a7a;line-height:1.8}.apply-form-section{padding:4rem 0}.apply-form-section .container{max-width:800px}.apply-form-section__intro{margin-bottom:2.5rem}.apply-form-section__intro h2{font-size:1.875rem;color:#1a3a5c;margin-bottom:1rem}.apply-form-section__intro p{color:#5a6a7a;line-height:1.8}.news-archive{padding:4rem 0}.news-archive .container{display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start}@media (max-width: 1024px){.news-archive .container{grid-template-columns:1fr}}.news-archive__list{display:flex;flex-direction:column}.news-sidebar{position:sticky;top:calc(72px + 1.5rem);display:flex;flex-direction:column;gap:1.5rem}@media (max-width: 1024px){.news-sidebar{position:static}}.news-sidebar .widget{background:#f8f9fa;border-radius:12px;padding:1.5rem}.news-sidebar .widget-title{font-size:.875rem;font-weight:700;color:#1a3a5c;text-transform:uppercase;letter-spacing:.08em;margin-bottom:1.25rem;padding-bottom:.75rem;border-bottom:2px solid #0097D4;display:inline-block}.news-sidebar .wp-block-categories-list li,.news-sidebar .cat-list li{padding:.5rem 0;border-bottom:1px solid #F0F2F4;font-size:.875rem}.news-sidebar .wp-block-categories-list li:last-child,.news-sidebar .cat-list li:last-child{border-bottom:none}.news-sidebar .wp-block-categories-list li a,.news-sidebar .cat-list li a{display:flex;flex-direction:row;justify-content:space-between;align-items:center;color:#1c2b3a;transition:color .15s ease}.news-sidebar .wp-block-categories-list li a:hover,.news-sidebar .cat-list li a:hover{color:#0097d4}.news-sidebar .wp-block-categories-list li .count,.news-sidebar .cat-list li .count{font-size:.75rem;color:#8a9bab;background:#f0f2f4;padding:1px .5rem;border-radius:9999px}.news-sidebar .recent-posts li{padding:.75rem 0;border-bottom:1px solid #F0F2F4}.news-sidebar .recent-posts li:last-child{border-bottom:none}.news-sidebar .recent-posts li a{display:block;font-size:.875rem;color:#1c2b3a;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden;transition:color .15s ease;margin-bottom:.25rem}.news-sidebar .recent-posts li a:hover{color:#0097d4}.news-sidebar .recent-posts li time{font-size:.75rem;color:#8a9bab}.single-post{padding:3rem 0 5rem}.single-post__inner{display:grid;grid-template-columns:1fr 300px;gap:3rem;align-items:start}@media (max-width: 1024px){.single-post__inner{grid-template-columns:1fr}}.single-post__header{margin-bottom:2rem}.single-post__header .post-meta{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:1rem;flex-wrap:wrap;margin-bottom:1rem;font-size:.875rem;color:#8a9bab}.single-post__header .post-cats{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem}.single-post__header h1{font-size:2.25rem;font-weight:700;color:#1a3a5c;line-height:1.4;margin-bottom:1rem}@media (max-width: 768px){.single-post__header h1{font-size:1.875rem}}.single-post__thumbnail{position:relative;overflow:hidden;aspect-ratio:16/9}.single-post__thumbnail img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}.single-post__thumbnail{border-radius:12px;overflow:hidden;margin-bottom:2.5rem;box-shadow:0 10px 15px #0000001a,0 4px 6px #0000000d}.single-post__content .entry-content{font-size:1.125rem}.single-post__share{margin-top:3rem;padding-top:2rem;border-top:2px solid #F0F2F4}.single-post__share h4{font-size:.875rem;font-weight:600;color:#5a6a7a;margin-bottom:1rem;text-transform:uppercase;letter-spacing:.08em}.single-post__share-links{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.75rem;flex-wrap:wrap}.single-post__share a{display:flex;flex-direction:row;justify-content:flex-start;align-items:center;gap:.5rem;padding:.5rem 1.25rem;border-radius:9999px;font-size:.875rem;font-weight:500;color:#fff;transition:opacity .15s ease}.single-post__share a:hover{opacity:.85}.single-post__share .share-twitter{background:#1da1f2}.single-post__share .share-facebook{background:#1877f2}.single-post__share .share-line{background:#00b900}.single-post__nav{display:grid;grid-template-columns:1fr 1fr;gap:1rem;margin-top:3rem}@media (max-width: 640px){.single-post__nav{grid-template-columns:1fr}}.single-post__nav a{padding:1rem 1.25rem;background:#f8f9fa;border-radius:8px;font-size:.875rem;transition:background .15s ease}.single-post__nav a:hover{background:#f0f2f4}.single-post__nav a .nav-label{font-size:.75rem;color:#8a9bab;text-transform:uppercase;letter-spacing:.06em;margin-bottom:.25rem}.single-post__nav a .nav-title{color:#1c2b3a;font-weight:500;display:-webkit-box;-webkit-line-clamp:2;-webkit-box-orient:vertical;overflow:hidden}.single-post__nav .post-nav-prev{text-align:left}.single-post__nav .post-nav-next{text-align:right}.related-posts{background:#f8f9fa;padding:3rem 0}.related-posts__grid{display:grid;grid-template-columns:repeat(3,1fr);gap:2rem}@media (max-width: 768px){.related-posts__grid{grid-template-columns:repeat(2,1fr)}}@media (max-width: 640px){.related-posts__grid{grid-template-columns:1fr}}.animate{opacity:0;transform:translateY(32px);transition:opacity .65s ease,transform .65s ease}.animate.is-visible{opacity:1;transform:translateY(0)}.animate--delay-1{transition-delay:.1s}.animate--delay-2{transition-delay:.2s}.animate--delay-3{transition-delay:.3s}.animate--delay-4{transition-delay:.4s}.animate--delay-5{transition-delay:.5s}.animate--delay-6{transition-delay:.6s}.animate--delay-7{transition-delay:.7s}.animate--delay-8{transition-delay:.8s}.fade-up{opacity:0;transform:translateY(30px);transition:opacity .6s ease 0s,transform .6s ease 0s}.fade-up.is-visible{opacity:1;transform:translateY(0)}.fade-down{opacity:0;transform:translateY(-24px);transition:opacity .6s ease,transform .6s ease}.fade-down.is-visible{opacity:1;transform:translateY(0)}.fade-left{opacity:0;transform:translate(-32px);transition:opacity .6s ease,transform .6s ease}.fade-left.is-visible{opacity:1;transform:translate(0)}.fade-right{opacity:0;transform:translate(32px);transition:opacity .6s ease,transform .6s ease}.fade-right.is-visible{opacity:1;transform:translate(0)}.scale-in{opacity:0;transform:scale(.9);transition:opacity .5s ease,transform .5s ease}.scale-in.is-visible{opacity:1;transform:scale(1)}.counter{font-variant-numeric:tabular-nums}.pulse{animation:pulse 2.5s cubic-bezier(.4,0,.6,1) infinite}@keyframes pulse{0%,to{opacity:1}50%{opacity:.6}}.spin,.loading-spinner__circle{animation:spin 1s linear infinite}@keyframes spin{0%{transform:rotate(0)}to{transform:rotate(360deg)}}.gradient-shift{background-size:200% 200%;animation:gradientShift 4s ease infinite}@keyframes gradientShift{0%{background-position:0% 50%}50%{background-position:100% 50%}to{background-position:0% 50%}}.float{animation:float 3s ease-in-out infinite}@keyframes float{0%,to{transform:translateY(0)}50%{transform:translateY(-8px)}}.wave-underline{position:relative;display:inline-block}.wave-underline:after{content:"";position:absolute;left:0;bottom:-4px;width:100%;height:3px;background:#0097d4;border-radius:2px;transform:scaleX(0);transform-origin:left;transition:transform .3s ease}.wave-underline:hover:after,.wave-underline.is-active:after{transform:scaleX(1)}@keyframes slideDown{0%{transform:translateY(-100%)}to{transform:translateY(0)}}.site-header.is-scrolled{animation:slideDown .3s ease}.loading-spinner{display:flex;align-items:center;justify-content:center;padding:3rem}.loading-spinner__circle{width:40px;height:40px;border:3px solid #DEE2E6;border-top-color:#0097d4;border-radius:50%}@media (prefers-reduced-motion: reduce){.animate,.fade-up,.fade-down,.fade-left,.fade-right,.scale-in,.pulse,.spin,.loading-spinner__circle,.float,.gradient-shift{animation:none!important;transition:none!important;opacity:1!important;transform:none!important}}
