/* Critical CSS for Above-the-Fold Content */
/* Minimal styles to prevent layout shift and render header */

*,*::before,*::after{box-sizing:border-box}
html{-webkit-text-size-adjust:100%;-webkit-tap-highlight-color:transparent}
body{margin:0;font-family:"Noto Sans JP",sans-serif;font-size:18px;font-weight:400;line-height:1.75;color:#07516e;-webkit-font-smoothing:antialiased}
@media screen and (max-width:1024px){body{font-size:14px;line-height:1.65}}

.wrapper{position:relative;overflow-x:hidden;margin:0 auto;padding-top:100px;min-height:100%;min-width:1020px}
@media screen and (max-width:1024px){.wrapper{min-width:auto;padding-top:60px}}
.wrapper__lp{padding-top:105px}
@media screen and (max-width:1024px){.wrapper__lp{padding-top:63px}}

.header{position:fixed;top:0;width:100%;z-index:1002}
.header__top{display:flex;align-items:center;justify-content:space-between;height:100px;color:#fff;background:#01b6ad}
@media screen and (max-width:1024px){.header__top{height:60px;box-shadow:0 0 10px 0 rgba(216,226,230,.4)}}

.header__logo{display:flex;align-items:center;height:100%;padding-left:20px;padding-right:20px;background:#01b6ad}
@media screen and (max-width:414px){.header__logo{padding-left:10px;padding-right:10px}}
.header__logo a{display:block}
.header__logo a img{display:block;height:60px;width:180px}
@media screen and (max-width:1024px){.header__logo{width:calc(100% - 240px)}.header__logo a img{width:auto;min-width:100px;height:40px}}

.header__menu{display:flex;align-items:center;height:100%}
.menu-icon{display:flex;align-items:center;height:100%;margin:0;padding:0;list-style:none}
.menu-icon__btn{position:relative;display:flex;align-items:center;justify-content:center;width:120px;height:100%;transition:.3s}
@media screen and (max-width:1024px){.menu-icon__btn{width:80px}}
.menu-icon__btn a{display:flex;align-items:center;justify-content:center;width:100%;height:100%}

.menu-icon__btn-menu{width:120px;cursor:pointer}
@media screen and (max-width:1024px){.menu-icon__btn-menu{width:80px}}
.menu-icon__btn-menu__inner{display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;height:100%;gap:4px}
.menu-icon__btn-menu__inner span:nth-child(1),.menu-icon__btn-menu__inner span:nth-child(2){display:block;width:60px;height:4px;background:#fff;transition:.3s}
@media screen and (max-width:1024px){.menu-icon__btn-menu__inner span:nth-child(1),.menu-icon__btn-menu__inner span:nth-child(2){width:35px;height:3px}}
.menu-icon__btn-menu__inner span:nth-child(3){font-size:24px;color:#fff;font-weight:700}
@media screen and (max-width:1024px){.menu-icon__btn-menu__inner span:nth-child(3){font-size:13px}}

.lp-progress{position:fixed;top:100px;left:0;width:100%;height:5px;z-index:1001;background:#f0f0f0}
@media screen and (max-width:1024px){.lp-progress{top:60px}}
.lp-progress progress{width:100%;height:100%;-webkit-appearance:none;appearance:none}
.lp-progress progress::-webkit-progress-bar{background:#f0f0f0}
.lp-progress progress::-webkit-progress-value{background:#01b6ad;transition:width .3s}

.container{position:relative;width:100%;min-height:calc(100vh - 100px)}
@media screen and (max-width:1024px){.container{min-height:calc(100vh - 60px)}}

a{text-decoration:none;color:inherit}
img{max-width:100%;height:auto;vertical-align:middle}

/* Additional styles for PageSpeed optimization */
a,button{outline:none}
a,.link{color:#219be0;text-decoration:underline}
a:hover,.link:hover{cursor:pointer}
@media screen and (min-width:1025px){a,.link{transition:all .2s ease-out}a:hover,.link:hover{color:#01b6ad;text-decoration:none}}
body{font-feature-settings:"palt";letter-spacing:.5px}
.menu-icon__btn-1{background:#f1404b}
.menu-icon__btn-2{background:#219be0}
.menu-icon__btn-line{background:#06c755}
.menu-icon__btn-menu{background:#219be0}
.lp-progress progress{color:#1e74a5;background-color:#d4f0ee}
.lp-progress progress::-webkit-progress-bar{background-color:#d4f0ee}
.lp-progress progress::-webkit-progress-value{background:#1e74a5}

/* FV Section Backgrounds */
.entry .lp-fv4-1{padding-top:10px;background:#fff;background-image:url("../img/lp_2301/fv4-1-background.webp");background-repeat:no-repeat;background-size:contain}
.entry .lp-fv4-1 .wp-block-cover__background{opacity:1!important;background-position:50% 0;background-repeat:no-repeat;background-color:transparent!important;background-size:1200px auto!important}
.entry .lp-fv4-1b{margin:0;padding:0 10% 20px;background:url("../img/lp_2301/fv4-1_bg.png") 50% 100% no-repeat;background-size:100% auto}
.entry .lp-fv4-1c{margin:0 auto;padding:20px 6% 30px;background:url("../img/lp_2301/fv4-1_bg_230420.png") 50% 100% repeat-y;background-size:100% auto;border-radius:0 0 10px 10px}
.entry .lp-fv4-1 .lp-fv4-1c__voice{position:relative;margin:0;padding:5% 0 7%;background:url("../img/lp_2301/fv4-3_c.webp") no-repeat 50% 100%;background-size:100% auto}

/* Responsive */
@media screen and (max-width:1024px){.entry .lp-fv4-1{padding-top:5px}.entry .lp-fv4-1 .wp-block-cover__background{background-size:140% auto!important}.entry .lp-fv4-1b{margin-left:-10px;margin-right:-10px}.entry .lp-fv4-1c{margin-left:-10px;margin-right:-10px;margin-top:-1px;padding:15px 6% 30px}.entry .lp-fv4-1 .lp-fv4-1c__voice{margin-left:-10px!important;margin-right:-10px!important}}
@media screen and (max-width:414px){.entry .lp-fv4-1b{margin-left:-5px;margin-right:-5px;padding-bottom:15px}.entry .lp-fv4-1c{margin-left:-5px;margin-right:-5px;padding:10px 6% 20px}.entry .lp-fv4-1 .lp-fv4-1c__voice{margin-left:-5px!important;margin-right:-5px!important}}
