@charset "UTF-8";
.font-en { font-family: "Roboto", sans-serif; }

.font-maru { font-family: "Zen Maru Gothic", serif; }

* { -webkit-box-sizing: border-box; -moz-box-sizing: border-box; box-sizing: border-box; word-wrap: break-word; }

html { font-size: 62.5%; }
@media screen and (max-width: 750px) { html { font-size: 2.375vw; } }

body { color: #333; font-family: "Noto Sans JP", YuGothicM, YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif; font-size: 1.6rem; -webkit-text-size-adjust: 100%; }

li { list-style: none; }

img { max-width: 100%; vertical-align: bottom; }

video { max-width: 100%; }

a { color: #333; }
a:hover { text-decoration: none; }

button { padding: 0; border: none; background: none; font-family: inherit; font-size: 1.6rem; cursor: pointer; }

input[type="text"], input[type="password"], input[type="tel"], input[type="email"], input[type="submit"], input[type="button"], textarea, select { font-family: inherit; font-size: 1.6rem; }

.only-pc { display: block; }
@media screen and (max-width: 750px) { .only-pc { display: none; } }

.only-sp { display: none; }
@media screen and (max-width: 750px) { .only-sp { display: block; } }

img.only-pc, span.only-pc { display: inline; }
@media screen and (max-width: 750px) { img.only-pc, span.only-pc { display: none; } }
img.only-sp, span.only-sp { display: none; }
@media screen and (max-width: 750px) { img.only-sp, span.only-sp { display: inline; } }

table.only-pc { display: table; }
@media screen and (max-width: 750px) { table.only-pc { display: none; } }
table.only-sp { display: none; }
@media screen and (max-width: 750px) { table.only-sp { display: table; } }

.js-tel { color: #000 !important; text-decoration: none; cursor: default; }

.pagetop { position: fixed; bottom: 0; right: 0; z-index: 9999; opacity: 0; transition: all .5s; transform: translateY(100px); width: 59px; }
.pagetop.is-show { opacity: 1; transform: translateY(0); }

.inner { width: 100%; max-width: 1240px; margin: 0 auto; padding: 0 20px; line-height: 1.6; }
@media screen and (max-width: 750px) { .inner { padding: 0 4%; } }

/* ------------------------------ ヘッダー
------------------------------ */
.header { position: sticky; top: 0; left: 0; z-index: 99999; width: 100%; }
.header .header-in { display: flex; justify-content: space-between; width: 100%; height: 90px; padding-left: 1em; background-color: #fff; }
@media screen and (max-width: 1200px) { .header .header-in { height: 110px; border-bottom: 2px solid #FF3232; } }
@media screen and (max-width: 750px) { .header .header-in { height: 80px; padding-left: 4%; } }
.header .header-in .header-logo { position: relative; display: flex; align-items: center; width: 100%; max-width: 209px; margin-right: 20px; }
.header .header-in .header-logo img { width: 100%; }
.header .header-in .header-con { position: relative; display: flex; justify-content: space-between; flex: 1; }
@media screen and (max-width: 1200px) { .header .header-in .header-con { display: none; } }
.header .header-in .header-box { flex: 1; display: flex; justify-content: center; flex-direction: column; padding: .5em 0;}
.header .header-in .header-item { display: flex; justify-content: flex-end; margin-bottom: .8em; }
.header .header-in .header-link { display: flex; align-items: center; justify-content: flex-end; padding: 0 20px; border-right: 1px solid #E04757; }
.header .header-in .header-link li { width: 30px; margin-right: 10px; }
.header .header-in .header-link li:last-child { margin-right: 0; }
.header .header-in .header-sns { display: flex; align-items: center; justify-content: flex-end; padding: 0 20px; border-right: 1px solid #E04757; }
.header .header-in .header-sns li { margin-right: 15px; }
.header .header-in .header-sns li._youtube { width: 31px; }
.header .header-in .header-sns li._insta { width: 24px; }
.header .header-in .header-sns li._fb { width: 24px; }
.header .header-in .header-sns li._x { width: 20px; }
.header .header-in .header-sns li:last-child { margin-right: 0; }
.header .header-in .header-language { position: relative; margin-right: 10px; }
.header .header-in .header-language .header-language-btn { display: flex; align-items: center; height: 100%; padding: 0 20px; font-size: 1.2rem; cursor: pointer; }
.header .header-in .header-language .header-language-btn .ico { margin-right: 8px; }
.header .header-in .header-language .header-language-btn span { padding-right: 15px; background: url("../img/common/ico_select.svg") no-repeat right center; background-size: 7px auto; }
.header .header-in .header-language .header-language-menu { display: none; position: absolute; left: 0; z-index: 9999; width: 140px; padding-top: 5px; }
.header .header-in .header-language .header-language-menu ul { padding: 10px 5px; background-color: #E0EBF5; border-radius: 0.5em; box-shadow: 1px 2px 2px 0px rgba(0, 0, 0, 0.4); }
.header .header-in .header-language .header-language-menu ul a { display: block; text-decoration: none; padding: 5px 5px 5px 25px; font-size: 1.2rem; }
.header .header-in .header-language .header-language-menu ul a:hover { background: #2a87ea url("../img/common/ico_arrow_w02.svg") no-repeat right 10px center; background-size: 5px auto; color: #fff; }
.header .header-in .header-language .header-language-menu ul a.active { position: relative; }
.header .header-in .header-language .header-language-menu ul a.active::after { content: ''; display: block; position: absolute; top: 0; left: 0; margin-top: 0.5em; margin-left: 0.5em; width: 9px; height: 6px; border-left: 2px solid #e04757; border-bottom: 2px solid #e04757; transform: rotate(-45deg); }
.header .header-in .gnav > ul { display: flex; justify-content: flex-end; flex-wrap: wrap; gap: .5em 1em; }
.header .header-in .gnav > ul > li { font-size: 1.6rem; font-weight: 700; }
@media screen and (max-width: 1300px) { .header .header-in .gnav > ul > li { font-size: 1.4rem; } }
.header .header-in .gnav > ul > li:last-child { margin-right: 30px; }
.header .header-in .gnav > ul > li a { position: relative; text-decoration: none; }
.header .header-in .gnav > ul > li a:hover::after { content: ''; position: absolute; bottom: 0; left: 0; width: 100%; height: 2px; margin-bottom: -8px; background-color: #D10012; }
.header .header-in .gnav > ul > li .popup { z-index: 9999; display: none; position: fixed; top: 85px; left: 0; width: 100%; height: 100%; background-color: rgba(4, 0, 0, 0.4); }
.header .header-in .gnav > ul > li .popup.is-show { display: block; }
.header .header-in .gnav > ul > li .popup .popup-wrap { background-color: #fff; }
.header .header-in .gnav > ul > li .popup .popup-in { position: relative; width: 100%; max-width: 1270px; margin: 0 auto; padding: 0 20px; line-height: 1.6; }
@media screen and (max-width: 750px) { .header .header-in .gnav > ul > li .popup .popup-in { padding: 0 4%; } }
.header .header-in .gnav > ul > li .popup .popup-in .popup-main { position: relative; padding: 50px 0; }
.header .header-in .gnav > ul > li .popup .popup-in .popup-close { position: absolute; top: 0; right: 0; width: 38px; margin-top: 20px; cursor: pointer; }
.header .header-in .gnav > ul > li .popup .popup-in .popup-con { display: flex; justify-content: space-between; padding: 10px 0; }
.header .header-in .gnav > ul > li .popup .popup-in .popup-ttl { flex: 1; padding: 0 20px 0 70px; }
.header .header-in .gnav > ul > li .popup .popup-in .popup-ttl .popup-ttl-h { padding-left: 35px; border-left: 2px solid #FF3232; font-size: 4.0rem; font-weight: 700; }
.header .header-in .gnav > ul > li .popup .popup-in .popup-nav { width: 100%; max-width: 815px; }
.header .header-in .gnav > ul > li .popup .popup-in .popup-nav ul { display: flex; flex-wrap: wrap; gap: 40px 27px; }
.header .header-in .gnav > ul > li .popup .popup-in .popup-nav ul._s { gap: 40px 22px; }
.header .header-in .gnav > ul > li .popup .popup-in .popup-nav ul._s li { width: 130px; }
.header .header-in .gnav > ul > li .popup .popup-in .popup-nav ul._s li p { font-size: 1.3rem; }
.header .header-in .gnav > ul > li .popup .popup-in .popup-nav ul li { width: 170px; }
.header .header-in .gnav > ul > li .popup .popup-in .popup-nav ul li a { display: block; text-decoration: none; }
.header .header-in .gnav > ul > li .popup .popup-in .popup-nav ul li p { margin-top: 10px; font-size: 1.6rem; font-weight: 400; text-align: center; }
.header .header-in .gnav > ul > li .popup .popup-in ._travel { display: flex; flex-wrap: wrap; width: 100%; max-width: 1008px; margin: 0 auto; gap: 27px 35px; }
.header .header-in .gnav > ul > li .popup .popup-in ._travel li { width: 138px; }
.header .header-in .gnav > ul > li .popup .popup-in ._travel li p { margin-top: 10px; font-size: 1.5rem; font-weight: 400; text-align: center; }
.header .header-in .header-search { display: flex; align-items: center; justify-content: center; width: 85px; background-color: #E0EBF5; cursor: pointer; }
.header .header-in .header-search img { width: 28px; margin: 0 auto; }
.header .header-menu { display: none; }
@media screen and (max-width: 1200px) { .header .header-menu { display: flex; align-items: center; justify-content: center; width: 110px; height: 100%; background-color: #E0EBF5; cursor: pointer; } }
@media screen and (max-width: 750px) { .header .header-menu { width: 80px; } }
.header .header-menu p { position: relative; width: 57px; height: 12px; margin: 0 auto 10px; }
@media screen and (max-width: 750px) { .header .header-menu p { width: 37px; } }
.header .header-menu span { position: absolute; left: 0; display: block; width: 100%; height: 2px; background-color: #000; transition: all .4s; }
.header .header-menu span:nth-of-type(1) { top: 0; }
.header .header-menu span:nth-of-type(2) { bottom: 0; width: 60%; }
.header .header-menu .header-menu-txt { line-height: 1; }
.header .header-menu .header-menu-txt:before { content: 'Menu'; font-size: 2.4rem; color: #45405a; }
@media screen and (max-width: 750px) { .header .header-menu .header-menu-txt:before { font-size: 1.3714285714rem; } }

.nav-menu { z-index: 99999; display: none; position: fixed; top: 110px; left: 0; width: 100%; height: calc(100% - 110px); background: rgba(0, 0, 0, 0.8); }
@media screen and (max-width: 750px) { .nav-menu { top: 80px; height: calc(100% - 80px); } }
.nav-menu .nav-menu-content { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background-color: #fff; overflow-y: auto; line-height: 1.6; }
.nav-menu a, .nav-menu div { text-decoration: none; }
.nav-menu .nav-nemu-language dt { display: flex; align-items: center; justify-content: center; padding: 30px 0; background-color: #F0F5FA; font-size: 2.8rem; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-language dt { padding: 4% 0; font-size: 2.1714285714rem; } }
.nav-menu .nav-nemu-language dt .ico { width: 1.5em; margin-right: 20px; }
.nav-menu .nav-nemu-language dt span { padding-right: 40px; background: url("../img/common/ico_select.svg") no-repeat right center; background-size: 23px auto; }
.nav-menu .nav-nemu-language dd { display: none; }
.nav-menu .nav-nemu-language dd ul li { border-bottom: 2px solid #fff; }
.nav-menu .nav-nemu-language dd ul li:last-child { border-bottom: none; }
.nav-menu .nav-nemu-language dd ul li a { display: block; text-decoration: none; padding: 20px 40px 20px 120px; background: #F0F5FA url("../img/common/ico_arrow_sp.svg") no-repeat left 70px center; background-size: 18px auto; font-size: 2.8rem; font-weight: 300; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-language dd ul li a { padding: 2.6666666667% 5.3333333333% 2.6666666667% 16%; background-position: left 9.3333333333% center; background-size: 2.4% auto; font-size: 1.6rem; } }
.nav-menu .nav-nemu-search { padding: 35px 0; border-bottom: 2px solid #FF3232; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-search { padding: 4.6666666667% 0; } }
.nav-menu .nav-nemu-search .nav-nemu-search-in { display: flex; justify-content: space-between; width: 666px; margin: 0 auto; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-search .nav-nemu-search-in { width: 88.8%; } }
.nav-menu .nav-nemu-search .nav-nemu-search-in input { flex: 1; width: 100%; border: none; padding: 20px; background-color: #E0EBF5; border-radius: 10px; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-search .nav-nemu-search-in input { padding: 10px 20px; } }
.nav-menu .nav-nemu-search .nav-nemu-search-in button { display: flex; align-items: center; justify-content: center; width: 110px; margin-left: 25px; background-color: #FF3232; border-radius: 10px; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-search .nav-nemu-search-in button { width: 16.5165165165%; margin-left: 3.7537537538%; } }
.nav-menu .nav-nemu-search .nav-nemu-search-in button img { width: 50px; margin: 0 auto; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-search .nav-nemu-search-in button img { width: 45.4545454545%; } }
.nav-menu .nav-nemu-list ._about, .nav-menu .nav-nemu-list ._courses { border-bottom: 2px solid #E0EBF5; }
.nav-menu .nav-nemu-list ._about a, .nav-menu .nav-nemu-list ._courses a { display: block; text-decoration: none; padding: 35px 75px; background: url("../img/common/ico_arrow_r.svg") no-repeat right 45px center; background-size: 47px auto; font-size: 3.7rem; line-height: 1; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-list ._about a, .nav-menu .nav-nemu-list ._courses a { padding: 4.6666666667% 10%; background-position: right 6% center; background-size: 6.2666666667% auto; font-size: min(30px,2.6857142857rem); } }
.nav-menu .nav-nemu-list dl { border-bottom: 2px solid #E0EBF5; }
.nav-menu .nav-nemu-list dl._travel dd { padding-bottom: 50px; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-list dl._travel dd { padding-bottom: 6.6666666667%; } }
.nav-menu .nav-nemu-list dl._travel dd ul { display: flex; flex-wrap: wrap; gap: 40px 56px; width: 640px; margin: 0 auto; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-list dl._travel dd ul { width: 85.3333333333%; gap: 40px 7.4666666667%; } }
.nav-menu .nav-nemu-list dl._travel dd ul li { width: 176px; border-bottom: none; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-list dl._travel dd ul li { width: 27.5%; } }
.nav-menu .nav-nemu-list dl._travel dd ul li a { padding: 0; background: none; font-size: 2.0rem; font-weight: 400; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-list dl._travel dd ul li a { font-size: 1.1428571429rem; } }
.nav-menu .nav-nemu-list dl._travel dd ul li p { margin-top: 10px; text-align: center; }
.nav-menu .nav-nemu-list dl dt { padding: 35px 75px; background: url("../img/common/ico_toggle_o_r.svg") no-repeat right 45px center; background-size: 28px auto; font-size: 3.7rem; line-height: 1; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-list dl dt { padding: 4.6666666667% 10%; background-position: right 6% center; background-size: 3.7333333333% auto; font-size: min(30px,2.6857142857rem); } }
.nav-menu .nav-nemu-list dl dt.active { background-image: url("../img/common/ico_toggle_c_r.svg"); }
.nav-menu .nav-nemu-list dl dd { display: none; }
.nav-menu .nav-nemu-list dl dd ul li { border-bottom: 2px solid #fff; }
.nav-menu .nav-nemu-list dl dd ul li:last-child { border-bottom: none; }
.nav-menu .nav-nemu-list dl dd ul li a { display: block; text-decoration: none; padding: 40px 40px 40px 120px; background: #F0F5FA url("../img/common/ico_arrow_sp.svg") no-repeat left 70px center; background-size: 18px auto; font-size: 3.0rem; font-weight: 300; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-list dl dd ul li a { padding: 5.3333333333% 5.3333333333% 5.3333333333% 16%; background-position: left 9.3333333333% center; background-size: 2.4% auto; font-size: min(24px,2.2857142857rem); } }
.nav-menu .nav-nemu-nav { padding: 50px 0; border-bottom: 2px solid #E0EBF5; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-nav { padding: 6.6666666667% 0; } }
.nav-menu .nav-nemu-nav li { width: 540px; margin: 0 auto 25px; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-nav li { width: 72%; margin-bottom: 4.6296296296%; } }
.nav-menu .nav-nemu-nav li:last-child { margin: 0 auto; }
.nav-menu .nav-nemu-nav li a { display: flex; align-items: center; text-decoration: none; height: 6em; padding: 15px 25px; border-width: 2px; border-style: solid; border-radius: 0.5em; line-height: 1; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-nav li a { height: 4.0em; padding: 2.7777777778% 3.7037037037%; } }
.nav-menu .nav-nemu-nav li a .ico { width: 3.5em; margin-right: 15px; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-nav li a .ico { width: 2.2em; margin-right: 2.7777777778%; } }
.nav-menu .nav-nemu-nav li a p { font-size: 3.3rem; font-weight: 700; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-nav li a p { font-size: 1.7142857143rem; } }
.nav-menu .nav-nemu-nav li a p span { font-size: 2.4rem; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-nav li a p span { font-size: 1.3714285714rem; } }
.nav-menu .nav-nemu-nav li._call a { border-color: #E60012; color: #E60012; }
.nav-menu .nav-nemu-nav li._safety a { border-color: #0B1DCC; color: #0B1DCC; }
.nav-menu .nav-nemu-nav li._medical a { border-color: #005393; color: #005393; }
.nav-menu .nav-nemu-nav li._info a { border-color: #1B7106; color: #1B7106; }
.nav-menu .nav-nemu-link { display: flex; align-items: center; justify-content: center; padding: 50px 0; border-bottom: 2px solid #E0EBF5; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-link { padding: 6.6666666667% 0; } }
.nav-menu .nav-nemu-link li { width: 177px; margin-right: 60px; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-link li { width: 23.6%; margin-right: 8%; } }
.nav-menu .nav-nemu-link li:last-child { margin-right: 0; }
.nav-menu .nav-nemu-link li p { margin-top: 15px; font-size: 2.0rem; text-align: center; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-link li p { font-size: 1.1428571429rem; } }
.nav-menu .nav-nemu-sns { display: flex; align-items: center; justify-content: center; padding: 60px 0 110px; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-sns { padding: 8% 0 14.6666666667%; } }
.nav-menu .nav-nemu-sns li { margin-right: 50px; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-sns li { margin-right: 6.6666666667%; } }
.nav-menu .nav-nemu-sns li._youtube { width: 111px; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-sns li._youtube { width: 14.8%; } }
.nav-menu .nav-nemu-sns li._insta { width: 85px; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-sns li._insta { width: 11.3333333333%; } }
.nav-menu .nav-nemu-sns li._fb { width: 85px; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-sns li._fb { width: 11.3333333333%; } }
.nav-menu .nav-nemu-sns li._x { width: 70px; }
@media screen and (max-width: 750px) { .nav-menu .nav-nemu-sns li._x { width: 9.3333333333%; } }
.nav-menu .nav-nemu-sns li:last-child { margin-right: 0; }
html:has(.js-menuopen) {
  overflow: hidden;
}
.js-menuopen .header .header-menu p { margin: 0 auto; }
.js-menuopen .header .header-menu span:nth-of-type(1) { transform: translateY(5px) rotate(-45deg); }
.js-menuopen .header .header-menu span:nth-of-type(2) { width: 100%; transform: translateY(-5px) rotate(45deg); }
.js-menuopen .header .header-menu .header-menu-txt { display: none; }
@media screen and (max-width: 1200px) { .js-menuopen .nav-menu { display: block; } }

/* ------------------------------ フッター
------------------------------ */
.footer .footer-nav { padding: 45px 0; background-color: #E6EFFF; }
@media screen and (max-width: 750px) { .footer .footer-nav { display: none !important; } }
.footer .footer-nav .footer-con { display: flex; justify-content: center; line-height: 1.4; }
.footer .footer-nav .nav01 { width: 16.6666666667%; }
.footer .footer-nav .nav01 p { margin-bottom: 30px; }
.footer .footer-nav .nav02 { width: 17.5%; }
.footer .footer-nav .nav03 { width: 24.1666666667%; }
.footer .footer-nav .nav03 dl { margin-bottom: 30px; }
.footer .footer-nav .nav04 { width: 28.3333333333%; }
.footer .footer-nav .nav04 dl dd { display: flex; }
.footer .footer-nav a { text-decoration: none; padding-right: 20px; }
.footer .footer-nav a:hover { text-decoration: underline; }
.footer .footer-nav p { font-size: 2.0rem; font-weight: 700; }
.footer .footer-nav dl dt { margin-bottom: 20px; font-size: 2.0rem; font-weight: 700; }
.footer .footer-nav dl dd ul li { margin-bottom: 10px; font-size: 1.3rem; font-weight: 300; }
.footer .footer-nav dl dd ul li:last-child { margin-bottom: 0; }
.footer .footer-main { background-color: #002862; color: #fff; }
.footer .footer-main a { text-decoration: none; color: #fff; }
.footer .footer-main .footer-in { width: 100%; max-width: 1240px; margin: 0 auto; padding: 0 20px; }
@media screen and (max-width: 750px) { .footer .footer-main .footer-in { padding: 0 12.6666666667%; } }
.footer .footer-main .footer-t { padding: 30px 0; }
@media screen and (max-width: 750px) { .footer .footer-main .footer-t { padding: 17.2413793103% 0 13.3928571429%; } }
.footer .footer-main .footer-t .footer-con { display: flex; align-items: center; justify-content: space-between; }
@media screen and (max-width: 750px) { .footer .footer-main .footer-t .footer-con { display: block; } }
.footer .footer-main .footer-t .footer-con .footer-logo { width: 100%; max-width: 290px; }
@media screen and (max-width: 750px) { .footer .footer-main .footer-t .footer-con .footer-logo { max-width: 100%; margin: 0 auto 15.1785714286%; } }
.footer .footer-main .footer-t .footer-con .footer-sns { display: flex; align-items: center; justify-content: flex-end; }
@media screen and (max-width: 750px) { .footer .footer-main .footer-t .footer-con .footer-sns { width: 90.7142857143%; margin: 0 auto; } }
.footer .footer-main .footer-t .footer-con .footer-sns li { margin-left: 20px; }
@media screen and (max-width: 750px) { .footer .footer-main .footer-t .footer-con .footer-sns li { margin-left: 10.4330708661%; }
  .footer .footer-main .footer-t .footer-con .footer-sns li:first-child { margin-left: 0; } }
.footer .footer-main .footer-t .footer-con .footer-sns li._youtube { width: 45px; }
@media screen and (max-width: 750px) { .footer .footer-main .footer-t .footer-con .footer-sns li._youtube { width: 21.6535433071%; } }
.footer .footer-main .footer-t .footer-con .footer-sns li._insta { width: 35px; }
@media screen and (max-width: 750px) { .footer .footer-main .footer-t .footer-con .footer-sns li._insta { width: 16.7322834646%; } }
.footer .footer-main .footer-t .footer-con .footer-sns li._fb { width: 35px; }
@media screen and (max-width: 750px) { .footer .footer-main .footer-t .footer-con .footer-sns li._fb { width: 16.7322834646%; } }
.footer .footer-main .footer-t .footer-con .footer-sns li._x { width: 28px; }
@media screen and (max-width: 750px) { .footer .footer-main .footer-t .footer-con .footer-sns li._x { width: 13.5826771654%; } }
.footer .footer-main .footer-b { padding: 30px 0 20px; }
@media screen and (max-width: 750px) { .footer .footer-main .footer-b { padding: 13.3928571429% 0 5.3571428571%; } }
.footer .footer-main .footer-b .footer-con { display: flex; justify-content: space-between; flex-direction: row-reverse; }
@media screen and (max-width: 960px) { .footer .footer-main .footer-b .footer-con { display: block; } }
.footer .footer-main .footer-b .footer-con .copy { font-size: 1.5rem; }
@media screen and (max-width: 750px) { .footer .footer-main .footer-b .footer-con .copy { font-size: 1.5428571429rem; text-align: center; } }
.footer .footer-main .footer-b .footer-con .footer-link { display: flex; align-items: center; justify-content: flex-end; font-size: 1.5rem; }
@media screen and (max-width: 960px) { .footer .footer-main .footer-b .footer-con .footer-link { display: block; justify-content: flex-start; margin-bottom: 60px; } }
@media screen and (max-width: 750px) { .footer .footer-main .footer-b .footer-con .footer-link { margin-bottom: 10.7142857143%; } }
.footer .footer-main .footer-b .footer-con .footer-link li { margin-left: 30px; }
@media screen and (max-width: 960px) { .footer .footer-main .footer-b .footer-con .footer-link li { margin-left: 0; margin-bottom: 20px; }
  .footer .footer-main .footer-b .footer-con .footer-link li:last-child { margin-bottom: 0; } }
@media screen and (max-width: 750px) { .footer .footer-main .footer-b .footer-con .footer-link li { margin-bottom: 3.5714285714%; font-size: 1.5428571429rem; } }
.footer .footer-main .footer-b .footer-con .footer-link li a:hover { text-decoration: underline; }

/* ------------------------------ 検索窓
------------------------------ */
.js-modalsearchopen { overflow: hidden; }

.modalsearch-sec { display: none; position: fixed; top: 0; left: 0; z-index: 100000; width: 100%; height: 100%; background-color: rgba(4, 0, 0, 0.4); }
.modalsearch-sec .modal-in { position: absolute; top: 0; left: 0; width: 100%; height: 100%; overflow-y: auto; }
.modalsearch-sec .modal-con { position: relative; width: 100%; background-color: #fff; }
.modalsearch-sec .modal-logo { position: absolute; top: 0; left: 0; display: flex; align-items: center; width: 100%; max-width: 209px; margin-top: 13px; margin-left: 30px; }
.modalsearch-sec .modal-logo img { width: 100%; }
.modalsearch-sec .modal-main { width: 100%; max-width: 1270px; margin: 0 auto; padding: 0 20px; line-height: 1.6; }
.modalsearch-sec .modal-box { position: relative; }
.modalsearch-sec .modal-close { position: absolute; top: 0; right: 0; width: 38px; margin-top: 30px; cursor: pointer; }
.modalsearch-sec .modalsearch-main { width: 100%; max-width: 640px; margin: 0 auto; padding: 50px 0; }
.modalsearch-sec .modalsearch-main .modalsearch-ttl { margin-bottom: 10px; font-size: 3.7rem; font-weight: 700; }
.modalsearch-sec .modalsearch-main .modalsearch-search-in { display: flex; justify-content: space-between; }
.modalsearch-sec .modalsearch-main .modalsearch-search-in input { flex: 1; width: 100%; border: none; padding: 10px 20px; background-color: #E0EBF5; border-radius: 10px; }
.modalsearch-sec .modalsearch-main .modalsearch-search-in button { display: flex; align-items: center; justify-content: center; width: 65px; margin-left: 10px; background-color: #FF3232; border-radius: 10px; }
.modalsearch-sec .modalsearch-main .modalsearch-search-in button img { width: 29px; margin: 0 auto; }

.opacity { transition: all .6s; }
.opacity:hover { opacity: 0.7; }

.ico { display: inline-flex; justify-content: center; align-items: center; width: 1em; line-height: 0; }
.ico::before { width: 100% !important; }

.ico-language::before { content: url("../img/common/ico_language.svg"); }

.ico-call::before { content: url("../img/common/ico_call.svg"); }

.ico-medical::before { content: url("../img/common/ico_medical.svg"); }

.ico-info::before { content: url("../img/common/ico_info.svg"); }

.ico-safety::before { content: url("../img/common/ico_safety.svg"); }

.ico-pin-bl::before { content: url("../img/common/ico_pin_bl.svg"); }

.ico-pin-w::before { content: url("../img/common/ico_pin_w.svg"); }

.clearfix { zoom: 1; }
.clearfix::before { content: ""; display: table; }
.clearfix::after { content: ""; display: table; clear: both; }

.w100 { width: 100% !important; }

.mab0 { margin-bottom: 0 !important; }

.js-anime-fadein { opacity: 0; animation-duration: .5s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-fadein.js-anime-on { animation-name: fadeIn; }

@keyframes fadeIn { 0% { opacity: 0; }
  100% { opacity: 1; } }
.js-anime-slide { opacity: 0; animation-duration: .5s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-slide.js-anime-on { animation-name: slide; }

@keyframes slide { 0% { opacity: 0; transform: translateY(100px); }
  100% { opacity: 1; transform: translateY(0); } }
.js-anime-slideleft { opacity: 0; animation-duration: .5s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-slideleft.js-anime-on { animation-name: slideLeft; }

@keyframes slideLeft { 0% { opacity: 0; transform: translateX(-100px); }
  100% { opacity: 1; transform: translateX(0); } }
.js-anime-slideright { opacity: 0; animation-duration: .5s; animation-timing-function: ease-in-out; animation-fill-mode: forwards; }
.js-anime-slideright.js-anime-on { animation-name: slideRight; }

@keyframes slideRight { 0% { opacity: 0; transform: translateX(100px); }
  100% { opacity: 1; transform: translateX(0); } }
@media print { .js-anime-fadein, .js-anime-slide, .js-anime-slideleft, .js-anime-slideright { opacity: initial; } }

/*# sourceMappingURL=style.css.map */
