@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@100;300;400;500;700;800;900&display=swap");
:root {
  --size-5: 5px;
  --size-10: 10px;
  --size-15: 15px;
  --size-20: 20px;
  --size-25: 25px;
  --size-30: 30px;
  --size-35: 35px;
  --size-40: 40px;
  --size-45: 45px;
  --size-50: 50px;
  --size-55: 55px;
  --size-60: 60px;
  --size-65: 65px;
  --size-70: 70px;
  --size-75: 75px;
  --size-80: 80px;
  --size-85: 85px;
  --size-90: 90px;
  --size-95: 95px;
  --size-100: 100px;
  --size-105: 105px;
  --size-110: 110px;
  --size-115: 115px;
  --size-120: 120px;
  --size-125: 125px;
  --size-130: 130px;
  --size-135: 135px;
  --size-140: 140px;
  --size-145: 145px;
  --size-150: 150px;
  --size-155: 155px;
  --size-160: 160px;
  --size-165: 165px;
  --size-170: 170px;
  --size-175: 175px;
  --size-180: 180px;
  --size-185: 185px;
  --size-190: 190px;
  --size-195: 195px;
  --size-200: 200px;
  --size-205: 205px;
  --size-210: 210px;
  --size-215: 215px;
  --size-220: 220px;
  --size-225: 225px;
  --size-230: 230px;
  --size-235: 235px;
  --size-240: 240px;
  --size-245: 245px;
  --size-250: 250px;
  --size-255: 255px;
  --size-260: 260px;
  --size-265: 265px;
  --size-270: 270px;
  --size-275: 275px;
  --size-280: 280px;
  --size-285: 285px;
  --size-290: 290px;
  --size-295: 295px;
  --size-300: 300px;
  --size-305: 305px;
  --size-310: 310px;
  --size-315: 315px;
  --size-320: 320px;
  --size-325: 325px;
  --size-330: 330px;
  --size-335: 335px;
  --size-340: 340px;
  --size-345: 345px;
  --size-350: 350px;
  --size-355: 355px;
  --size-360: 360px;
  --size-365: 365px;
  --size-370: 370px;
  --size-375: 375px;
  --size-380: 380px;
  --size-385: 385px;
  --size-390: 390px;
  --size-395: 395px;
  --size-400: 400px;
  --size-405: 405px;
  --size-410: 410px;
  --size-415: 415px;
  --size-420: 420px;
  --size-425: 425px;
  --size-430: 430px;
  --size-435: 435px;
  --size-440: 440px;
  --size-445: 445px;
  --size-450: 450px;
  --size-455: 455px;
  --size-460: 460px;
  --size-465: 465px;
  --size-470: 470px;
  --size-475: 475px;
  --size-480: 480px;
  --size-485: 485px;
  --size-490: 490px;
  --size-495: 495px;
  --size-500: 500px;
  --size-505: 505px;
  --size-510: 510px;
  --size-515: 515px;
  --size-520: 520px;
  --size-525: 525px;
  --size-530: 530px;
  --size-535: 535px;
  --size-540: 540px;
  --size-545: 545px;
  --size-550: 550px;
  --size-555: 555px;
  --size-560: 560px;
  --size-565: 565px;
  --size-570: 570px;
  --size-575: 575px;
  --size-580: 580px;
  --size-585: 585px;
  --size-590: 590px;
  --size-595: 595px;
  --size-600: 600px;
  --size-605: 605px;
  --size-610: 610px;
  --size-615: 615px;
  --size-620: 620px;
  --size-625: 625px;
  --size-630: 630px;
  --size-635: 635px;
  --size-640: 640px;
  --size-645: 645px;
  --size-650: 650px;
  --size-655: 655px;
  --size-660: 660px;
  --size-665: 665px;
  --size-670: 670px;
  --size-675: 675px;
  --size-680: 680px;
  --size-685: 685px;
  --size-690: 690px;
  --size-695: 695px;
  --size-700: 700px;
  --size-705: 705px;
  --size-710: 710px;
  --size-715: 715px;
  --size-720: 720px;
  --size-725: 725px;
  --size-730: 730px;
  --size-735: 735px;
  --size-740: 740px;
  --size-745: 745px;
  --size-750: 750px;
  --size-755: 755px;
  --size-760: 760px;
  --size-765: 765px;
  --size-770: 770px;
  --size-775: 775px;
  --size-780: 780px;
  --size-785: 785px;
  --size-790: 790px;
  --size-795: 795px;
  --size-800: 800px;
  --size-805: 805px;
  --size-810: 810px;
  --size-815: 815px;
  --size-820: 820px;
  --size-825: 825px;
  --size-830: 830px;
  --size-835: 835px;
  --size-840: 840px;
  --size-845: 845px;
  --size-850: 850px;
  --size-855: 855px;
  --size-860: 860px;
  --size-865: 865px;
  --size-870: 870px;
  --size-875: 875px;
  --size-880: 880px;
  --size-885: 885px;
  --size-890: 890px;
  --size-895: 895px;
  --size-900: 900px;
  --size-905: 905px;
  --size-910: 910px;
  --size-915: 915px;
  --size-920: 920px;
  --size-925: 925px;
  --size-930: 930px;
  --size-935: 935px;
  --size-940: 940px;
  --size-945: 945px;
  --size-950: 950px;
  --size-955: 955px;
  --size-960: 960px;
  --size-965: 965px;
  --size-970: 970px;
  --size-975: 975px;
  --size-980: 980px;
  --size-985: 985px;
  --size-990: 990px;
  --size-995: 995px;
  --size-1000: 1000px;
}

@media screen and (max-width: 767px) {
  :root {
    --size-5: calc(5 / 780 * 100vw);
    --size-10: calc(10 / 780 * 100vw);
    --size-15: calc(15 / 780 * 100vw);
    --size-20: calc(20 / 780 * 100vw);
    --size-25: calc(25 / 780 * 100vw);
    --size-30: calc(30 / 780 * 100vw);
    --size-35: calc(35 / 780 * 100vw);
    --size-40: calc(40 / 780 * 100vw);
    --size-45: calc(45 / 780 * 100vw);
    --size-50: calc(50 / 780 * 100vw);
    --size-55: calc(55 / 780 * 100vw);
    --size-60: calc(60 / 780 * 100vw);
    --size-65: calc(65 / 780 * 100vw);
    --size-70: calc(70 / 780 * 100vw);
    --size-75: calc(75 / 780 * 100vw);
    --size-80: calc(80 / 780 * 100vw);
    --size-85: calc(85 / 780 * 100vw);
    --size-90: calc(90 / 780 * 100vw);
    --size-95: calc(95 / 780 * 100vw);
    --size-100: calc(100 / 780 * 100vw);
    --size-105: calc(105 / 780 * 100vw);
    --size-110: calc(110 / 780 * 100vw);
    --size-115: calc(115 / 780 * 100vw);
    --size-120: calc(120 / 780 * 100vw);
    --size-125: calc(125 / 780 * 100vw);
    --size-130: calc(130 / 780 * 100vw);
    --size-135: calc(135 / 780 * 100vw);
    --size-140: calc(140 / 780 * 100vw);
    --size-145: calc(145 / 780 * 100vw);
    --size-150: calc(150 / 780 * 100vw);
    --size-155: calc(155 / 780 * 100vw);
    --size-160: calc(160 / 780 * 100vw);
    --size-165: calc(165 / 780 * 100vw);
    --size-170: calc(170 / 780 * 100vw);
    --size-175: calc(175 / 780 * 100vw);
    --size-180: calc(180 / 780 * 100vw);
    --size-185: calc(185 / 780 * 100vw);
    --size-190: calc(190 / 780 * 100vw);
    --size-195: calc(195 / 780 * 100vw);
    --size-200: calc(200 / 780 * 100vw);
    --size-205: calc(205 / 780 * 100vw);
    --size-210: calc(210 / 780 * 100vw);
    --size-215: calc(215 / 780 * 100vw);
    --size-220: calc(220 / 780 * 100vw);
    --size-225: calc(225 / 780 * 100vw);
    --size-230: calc(230 / 780 * 100vw);
    --size-235: calc(235 / 780 * 100vw);
    --size-240: calc(240 / 780 * 100vw);
    --size-245: calc(245 / 780 * 100vw);
    --size-250: calc(250 / 780 * 100vw);
    --size-255: calc(255 / 780 * 100vw);
    --size-260: calc(260 / 780 * 100vw);
    --size-265: calc(265 / 780 * 100vw);
    --size-270: calc(270 / 780 * 100vw);
    --size-275: calc(275 / 780 * 100vw);
    --size-280: calc(280 / 780 * 100vw);
    --size-285: calc(285 / 780 * 100vw);
    --size-290: calc(290 / 780 * 100vw);
    --size-295: calc(295 / 780 * 100vw);
    --size-300: calc(300 / 780 * 100vw);
    --size-305: calc(305 / 780 * 100vw);
    --size-310: calc(310 / 780 * 100vw);
    --size-315: calc(315 / 780 * 100vw);
    --size-320: calc(320 / 780 * 100vw);
    --size-325: calc(325 / 780 * 100vw);
    --size-330: calc(330 / 780 * 100vw);
    --size-335: calc(335 / 780 * 100vw);
    --size-340: calc(340 / 780 * 100vw);
    --size-345: calc(345 / 780 * 100vw);
    --size-350: calc(350 / 780 * 100vw);
    --size-355: calc(355 / 780 * 100vw);
    --size-360: calc(360 / 780 * 100vw);
    --size-365: calc(365 / 780 * 100vw);
    --size-370: calc(370 / 780 * 100vw);
    --size-375: calc(375 / 780 * 100vw);
    --size-380: calc(380 / 780 * 100vw);
    --size-385: calc(385 / 780 * 100vw);
    --size-390: calc(390 / 780 * 100vw);
    --size-395: calc(395 / 780 * 100vw);
    --size-400: calc(400 / 780 * 100vw);
    --size-405: calc(405 / 780 * 100vw);
    --size-410: calc(410 / 780 * 100vw);
    --size-415: calc(415 / 780 * 100vw);
    --size-420: calc(420 / 780 * 100vw);
    --size-425: calc(425 / 780 * 100vw);
    --size-430: calc(430 / 780 * 100vw);
    --size-435: calc(435 / 780 * 100vw);
    --size-440: calc(440 / 780 * 100vw);
    --size-445: calc(445 / 780 * 100vw);
    --size-450: calc(450 / 780 * 100vw);
    --size-455: calc(455 / 780 * 100vw);
    --size-460: calc(460 / 780 * 100vw);
    --size-465: calc(465 / 780 * 100vw);
    --size-470: calc(470 / 780 * 100vw);
    --size-475: calc(475 / 780 * 100vw);
    --size-480: calc(480 / 780 * 100vw);
    --size-485: calc(485 / 780 * 100vw);
    --size-490: calc(490 / 780 * 100vw);
    --size-495: calc(495 / 780 * 100vw);
    --size-500: calc(500 / 780 * 100vw);
    --size-505: calc(505 / 780 * 100vw);
    --size-510: calc(510 / 780 * 100vw);
    --size-515: calc(515 / 780 * 100vw);
    --size-520: calc(520 / 780 * 100vw);
    --size-525: calc(525 / 780 * 100vw);
    --size-530: calc(530 / 780 * 100vw);
    --size-535: calc(535 / 780 * 100vw);
    --size-540: calc(540 / 780 * 100vw);
    --size-545: calc(545 / 780 * 100vw);
    --size-550: calc(550 / 780 * 100vw);
    --size-555: calc(555 / 780 * 100vw);
    --size-560: calc(560 / 780 * 100vw);
    --size-565: calc(565 / 780 * 100vw);
    --size-570: calc(570 / 780 * 100vw);
    --size-575: calc(575 / 780 * 100vw);
    --size-580: calc(580 / 780 * 100vw);
    --size-585: calc(585 / 780 * 100vw);
    --size-590: calc(590 / 780 * 100vw);
    --size-595: calc(595 / 780 * 100vw);
    --size-600: calc(600 / 780 * 100vw);
    --size-605: calc(605 / 780 * 100vw);
    --size-610: calc(610 / 780 * 100vw);
    --size-615: calc(615 / 780 * 100vw);
    --size-620: calc(620 / 780 * 100vw);
    --size-625: calc(625 / 780 * 100vw);
    --size-630: calc(630 / 780 * 100vw);
    --size-635: calc(635 / 780 * 100vw);
    --size-640: calc(640 / 780 * 100vw);
    --size-645: calc(645 / 780 * 100vw);
    --size-650: calc(650 / 780 * 100vw);
    --size-655: calc(655 / 780 * 100vw);
    --size-660: calc(660 / 780 * 100vw);
    --size-665: calc(665 / 780 * 100vw);
    --size-670: calc(670 / 780 * 100vw);
    --size-675: calc(675 / 780 * 100vw);
    --size-680: calc(680 / 780 * 100vw);
    --size-685: calc(685 / 780 * 100vw);
    --size-690: calc(690 / 780 * 100vw);
    --size-695: calc(695 / 780 * 100vw);
    --size-700: calc(700 / 780 * 100vw);
    --size-705: calc(705 / 780 * 100vw);
    --size-710: calc(710 / 780 * 100vw);
    --size-715: calc(715 / 780 * 100vw);
    --size-720: calc(720 / 780 * 100vw);
    --size-725: calc(725 / 780 * 100vw);
    --size-730: calc(730 / 780 * 100vw);
    --size-735: calc(735 / 780 * 100vw);
    --size-740: calc(740 / 780 * 100vw);
    --size-745: calc(745 / 780 * 100vw);
    --size-750: calc(750 / 780 * 100vw);
    --size-755: calc(755 / 780 * 100vw);
    --size-760: calc(760 / 780 * 100vw);
    --size-765: calc(765 / 780 * 100vw);
    --size-770: calc(770 / 780 * 100vw);
    --size-775: calc(775 / 780 * 100vw);
    --size-780: calc(780 / 780 * 100vw);
    --size-785: calc(785 / 780 * 100vw);
    --size-790: calc(790 / 780 * 100vw);
    --size-795: calc(795 / 780 * 100vw);
    --size-800: calc(800 / 780 * 100vw);
    --size-805: calc(805 / 780 * 100vw);
    --size-810: calc(810 / 780 * 100vw);
    --size-815: calc(815 / 780 * 100vw);
    --size-820: calc(820 / 780 * 100vw);
    --size-825: calc(825 / 780 * 100vw);
    --size-830: calc(830 / 780 * 100vw);
    --size-835: calc(835 / 780 * 100vw);
    --size-840: calc(840 / 780 * 100vw);
    --size-845: calc(845 / 780 * 100vw);
    --size-850: calc(850 / 780 * 100vw);
    --size-855: calc(855 / 780 * 100vw);
    --size-860: calc(860 / 780 * 100vw);
    --size-865: calc(865 / 780 * 100vw);
    --size-870: calc(870 / 780 * 100vw);
    --size-875: calc(875 / 780 * 100vw);
    --size-880: calc(880 / 780 * 100vw);
    --size-885: calc(885 / 780 * 100vw);
    --size-890: calc(890 / 780 * 100vw);
    --size-895: calc(895 / 780 * 100vw);
    --size-900: calc(900 / 780 * 100vw);
    --size-905: calc(905 / 780 * 100vw);
    --size-910: calc(910 / 780 * 100vw);
    --size-915: calc(915 / 780 * 100vw);
    --size-920: calc(920 / 780 * 100vw);
    --size-925: calc(925 / 780 * 100vw);
    --size-930: calc(930 / 780 * 100vw);
    --size-935: calc(935 / 780 * 100vw);
    --size-940: calc(940 / 780 * 100vw);
    --size-945: calc(945 / 780 * 100vw);
    --size-950: calc(950 / 780 * 100vw);
    --size-955: calc(955 / 780 * 100vw);
    --size-960: calc(960 / 780 * 100vw);
    --size-965: calc(965 / 780 * 100vw);
    --size-970: calc(970 / 780 * 100vw);
    --size-975: calc(975 / 780 * 100vw);
    --size-980: calc(980 / 780 * 100vw);
    --size-985: calc(985 / 780 * 100vw);
    --size-990: calc(990 / 780 * 100vw);
    --size-995: calc(995 / 780 * 100vw);
    --size-1000: calc(1000 / 780 * 100vw);
  }
}
.header {
  line-height: 1;
  font-family: "M PLUS Rounded 1c", sans-serif;
  font-size: 0;
  width: 100%;
  text-align: center;
  background: #FFF;
}

@media screen and (max-width: 767px) {
  .header {
    position: fixed;
    z-index: 9999;
  }
  .header .l_inner {
    background: #FFF;
  }
}
.header h1, .header h2, .header h3, .header h4, .header h5, .header h6, .header div, .header dl, .header dt, .header dd, .header p, .header a, .header table, .header tr, .header td, .header address, .header img, .header header ul, .header footer ul {
  line-height: 1;
}

.header img {
  width: 100%;
}

.l_header_container {
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding-left: 43px;
  padding-right: 14px;
}

@media screen and (max-width: 767px) {
  .l_header_container {
    padding-left: 0;
    padding-right: 0;
    justify-content: flex-end;
  }
}
.l_header_container .c_logo {
  width: var(--size-240);
  padding-top: var(--size-10);
  padding-bottom: var(--size-10);
}

@media screen and (max-width: 767px) {
  .l_header_container .c_logo {
    width: var(--size-240);
    margin-right: auto;
  }
}
.nav-wrapper {
  display: none;
}

@media screen and (max-width: 767px) {
  .nav-wrapper {
    display: block;
  }
}
.global_navi {
  background: #FAFAFA;
}

@media screen and (max-width: 767px) {
  .global_navi {
    position: fixed;
    right: -100%; /*ハンバーガーがクリックされる前はWindow右側に隠す*/
    top: 0;
    width: 90%; /* 出てくるスライドメニューの幅 */
    height: 100vh;
    background-color: #fff;
    transition: all 0.5s;
    overflow-y: auto; /* メニューが多くなったらスクロールできるように */
    padding-top: var(--size-100);
    z-index: -1;
  }
  .global_navi.open {
    right: 0;
  }
}
.global_navi .global_navi_list {
  display: flex;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .global_navi .global_navi_list {
    display: block;
    padding-top: var(--size-40);
  }
}
.global_navi .global_navi_list li {
  width: 20%;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .global_navi .global_navi_list li {
    width: 100%;
  }
}
.global_navi .global_navi_list a {
  display: block;
  font-size: 18px;
  font-weight: 500;
  color: #47B9C9;
  padding-top: var(--size-20);
  padding-bottom: var(--size-20);
  border-left: 2px solid #EDEDED;
  border-right: 2px solid #EDEDED;
  position: relative;
  line-height: 1.5;
  text-align: center;
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .global_navi .global_navi_list a {
    font-size: 4.1025641026vw;
    border-left: none;
    border-right: none;
    text-align: left;
    padding-left: var(--size-20);
    border-bottom: 2px solid #EDEDED;
    padding-top: var(--size-30);
    padding-bottom: var(--size-30);
  }
}
.global_navi .global_navi_list a:before {
  transition: 0.3s;
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  background: #FAFAFA;
  position: absolute;
  bottom: 0;
  opacity: 0;
  transition: 0.3s;
}

@media screen and (max-width: 767px) {
  .global_navi .global_navi_list a:before {
    left: 0;
    bottom: -2px;
  }
}
.global_navi .global_navi_list a:hover:before {
  content: "";
  display: block;
  width: 100%;
  height: 3px;
  background: #47B9C9;
  position: absolute;
  bottom: 0;
  opacity: 1;
}

@media screen and (max-width: 767px) {
  .global_navi .global_navi_list a:hover:before {
    left: 0;
    bottom: -2px;
  }
}
.global_navi .global_navi_list li + li a {
  border-left: none;
}

.c_header_btn a {
  font-size: 22px;
  font-weight: 500;
  display: flex;
  align-items: center;
  background: #47B9C9;
  border-radius: var(--size-10);
  color: #FFF;
  padding: 12px 36px 12px 23px;
  transition: 0.3s;
  text-decoration: none;
}

@media screen and (max-width: 767px) {
  .c_header_btn a {
    font-size: 2.8205128205vw;
    padding: var(--size-10);
    margin-right: var(--size-40);
  }
}
.c_header_btn a:hover {
  opacity: 0.6;
}

.c_header_btn a:before {
  content: "";
  display: block;
  width: 47px;
  height: 38px;
  background: url("../../images/icon_h_contact.svg");
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 19px;
}

@media screen and (max-width: 767px) {
  .c_header_btn a:before {
    width: 6.0256410256vw;
    height: 4.8717948718vw;
    margin-right: 0.641025641vw;
  }
}
.black-bg {
  display: none;
}

@media screen and (max-width: 767px) {
  .black-bg {
    display: block;
    position: fixed;
    left: 0;
    top: 0;
    width: 100vw;
    height: 100vh;
    z-index: 5;
    background-color: #000;
    opacity: 0;
    visibility: hidden;
    transition: all 0.5s;
    cursor: pointer;
    z-index: -1;
  }
  .black-bg.open {
    opacity: 0.3;
    visibility: visible;
  }
}
/*
hamburger(ハンバーガーアイコン)
=================================== */
.hamburger {
  width: var(--size-50);
  height: var(--size-50);
  cursor: pointer;
  z-index: 300;
  position: relative;
}

.hamburger__line {
  position: absolute;
  width: var(--size-50);
  height: 2px;
  right: 0;
  background-color: #47B9C9;
  transition: all 0.5s;
}

.hamburger__line--1 {
  top: 1px;
}

.hamburger__line--2 {
  top: 2.3076923077vw;
}

.hamburger__line--3 {
  top: 4.6153846154vw;
}

/*ハンバーガーがクリックされたら*/
.open .hamburger__line--1 {
  transform: rotate(-45deg);
  top: 11px;
}

.open .hamburger__line--2 {
  opacity: 0;
}

.open .hamburger__line--3 {
  transform: rotate(45deg);
  top: 11px;
}

.footer {
  line-height: 1;
  font-family: "M PLUS Rounded 1c", sans-serif;
  background: #47B9C9;
  padding-top: 27px;
  padding-bottom: var(--size-30);
  font-size: 0;
  width: 100%;
}

.footer:has(+ .fixed-footer) {
  margin-bottom: var(--size-130);
}

@media screen and (max-width: 767px) {
  .footer {
    padding: 0;
    padding-top: var(--size-30);
    padding-bottom: var(--size-40);
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
.footer h1, .footer h2, .footer h3, .footer h4, .footer h5, .footer h6, .footer div, .footer dl, .footer dt, .footer dd, .footer p, .footer a, .footer table, .footer tr, .footer td, .footer address, .footer img, .footer header ul, .footer footer ul {
  line-height: 1;
}

.footer img {
  width: 100%;
}

.l_footer_container {
  display: flex;
  justify-content: space-between;
  padding-left: var(--size-60);
  padding-right: var(--size-30);
}

@media screen and (max-width: 767px) {
  .l_footer_container {
    padding: 0;
    display: block;
  }
}
.l_footer_logo {
  width: 256px;
  padding-top: var(--size-15);
}

@media screen and (max-width: 767px) {
  .l_footer_logo {
    width: var(--size-240);
    margin: 0 auto var(--size-20);
  }
}
.l_footer_contants {
  color: #FFF;
}

.l_footer_contants a {
  color: #FFF;
  text-decoration: none;
}

.l_footer_contants .c_location {
  font-size: 16px;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .l_footer_contants .c_location {
    font-size: 4.1025641026vw;
  }
}
.l_footer_contants .c_tel {
  font-size: 36px;
  font-weight: 800;
  margin-top: var(--size-10);
  margin-bottom: var(--size-10);
}

@media screen and (max-width: 767px) {
  .l_footer_contants .c_tel {
    font-size: 8.2051282051vw;
    margin-top: var(--size-20);
    margin-bottom: var(--size-20);
  }
}
.l_footer_contants .c_tel span {
  font-size: 25px;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .l_footer_contants .c_tel span {
    font-size: 3.9743589744vw;
  }
}
.l_footer_contants .l_sub_box {
  display: flex;
  align-items: center;
}

.l_footer_contants .l_sub_box .c_item {
  writing-mode: vertical-rl;
  background: #fff;
  color: #47B9C9;
  padding: var(--size-10) var(--size-10);
  border-radius: var(--size-10);
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .l_footer_contants .l_sub_box .c_item {
    font-size: 3.0769230769vw;
  }
}
.l_footer_contants .l_sub_box .c_text {
  font-size: 16px;
  line-height: 1.625;
  margin-left: var(--size-10);
}

@media screen and (max-width: 767px) {
  .l_footer_contants .l_sub_box .c_text {
    font-size: 3.3333333333vw;
    margin-left: var(--size-20);
  }
}
.l_footer_contants .l_footer_navi_container {
  margin-top: var(--size-30);
}

.l_footer_contants .l_footer_navi_container a {
  font-size: 16px;
  display: flex;
  align-items: center;
}

@media screen and (max-width: 767px) {
  .l_footer_contants .l_footer_navi_container a {
    font-size: 3.3333333333vw;
  }
}
.l_footer_contants .l_footer_navi_container a:before {
  content: "";
  display: block;
  background-image: url("../../images/arrow_white.svg");
  width: 12px;
  height: 15px;
  background-size: contain;
  background-repeat: no-repeat;
  margin-right: var(--size-5);
}

@media screen and (max-width: 767px) {
  .l_footer_contants .l_footer_navi_container a:before {
    width: 1.5384615385vw;
    height: 1.9230769231vw;
  }
}
.fixed-footer {
  position: fixed;
  width: 100%;
  bottom: 0;
  background: rgba(255, 255, 255, 0.8);
  z-index: 1;
}

.fixed-footer .l_fixed-footer_inner {
  padding: var(--size-20) 0;
  text-align: center;
}

.fixed-footer .c_btn a {
  display: inline-block;
  background: #E50312;
  color: #FFF;
  font-size: 2.4rem;
  padding: var(--size-25) var(--size-50);
  display: inline-flex;
  justify-content: center;
  align-items: center;
  transition: 0.4s;
  background: #E50312;
  border-radius: var(--size-10);
  border-top: 8px solid #f2aeae;
  border-right: 8px solid #800000;
  border-bottom: 8px solid #5d0202;
  border-left: 8px solid #e17979;
  box-shadow: 0 4px 0 #5d0202, 2px 2px 0px #800000;
  transition: all 0.2s ease;
}

@media screen and (max-width: 767px) {
  .fixed-footer .c_btn a {
    font-size: 4.6153846154vw;
    line-height: 1.3;
    padding: var(--size-15) var(--size-30);
    border-top: var(--size-10) solid #f2aeae;
    border-right: var(--size-10) solid #800000;
    border-bottom: var(--size-10) solid #5d0202;
    border-left: var(--size-10) solid #e17979;
    box-shadow: 0 4px 0 #5d0202, 2px 2px 0px #800000;
  }
}
.fixed-footer .c_btn a:hover {
  opacity: 0.6;
}

.fixed-footer .c_btn a:after {
  content: "";
  display: block;
  width: var(--size-15);
  height: var(--size-20);
  background: url(../../images/arrow_white.svg);
  background-repeat: no-repeat;
  background-size: contain;
  margin-left: var(--size-10);
}

@media screen and (max-width: 767px) {
  .fixed-footer .c_btn a:after {
    width: var(--size-30);
    height: var(--size-40);
    margin-left: var(--size-20);
  }
}
body {
  padding: 0;
  margin: 0;
}

@media screen and (max-width: 767px) {
  main {
    padding-top: var(--size-100);
  }
}
section {
  text-align: center;
  overflow: hidden;
}

.l_inner {
  width: 1000px;
  margin: 0 auto;
  padding-left: var(--size-20);
  padding-right: var(--size-20);
}

@media screen and (max-width: 767px) {
  .l_inner {
    width: auto;
    padding-left: var(--size-40);
    padding-right: var(--size-40);
  }
}
.l_inner._lg {
  width: 1100px;
}

@media screen and (max-width: 767px) {
  .l_inner._lg {
    width: auto;
  }
}
.l_heading_bar h2, .l_heading_bar h3 {
  font-size: 3.2rem;
  color: #FFF;
  background: #47B9C9;
  line-height: 1.71875;
  border-radius: 46px;
  font-weight: 800;
  padding: 0;
  margin: 0;
  text-align: center;
  padding-top: 2px;
  padding-bottom: 3px;
}

@media screen and (max-width: 767px) {
  .l_heading_bar h2, .l_heading_bar h3 {
    font-size: 4.8717948718vw !important;
  }
}
.l_heading_access h2 {
  font-size: 4.2rem;
  color: #47B9C9;
  line-height: 1.3095238095;
  font-weight: 800;
}

@media screen and (max-width: 767px) {
  .l_heading_access h2 {
    font-size: 6.1538461538vw !important;
  }
}
.l_heading_job h2 {
  font-size: 4.2rem;
  color: #47B9C9;
  line-height: 1.3095238095;
  font-weight: 800;
}

@media screen and (max-width: 767px) {
  .l_heading_job h2 {
    font-size: 6.1538461538vw !important;
  }
}
.l_heading_job_wrap .l_heading_lead {
  font-size: 2rem;
  font-weight: 500;
  margin-top: var(--size-5);
}

@media screen and (max-width: 767px) {
  .l_heading_job_wrap .l_heading_lead {
    font-size: 3.3333333333vw;
  }
}
.l_heading_flow h2 {
  font-size: 4.2rem;
  color: #47B9C9;
  line-height: 1.3095238095;
  font-weight: 800;
}

@media screen and (max-width: 767px) {
  .l_heading_flow h2 {
    font-size: 6.1538461538vw !important;
  }
}
.l_heading_flow_wrap .l_sub_text {
  font-size: 2.6rem;
  line-height: 2.1153846154;
  color: #000;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .l_heading_flow_wrap .l_sub_text {
    font-size: 4.1025641026vw;
    line-height: 1.1875;
    margin-top: var(--size-20);
  }
}
.l_sub_lead_text {
  color: #000000;
  font-size: 2.6rem;
  margin-top: 13px;
  font-weight: 500;
}

@media screen and (max-width: 767px) {
  .l_sub_lead_text {
    font-size: 5.3846153846vw;
  }
}
.c_link_text {
  color: #1051A2;
  text-decoration: underline;
  flex: 1;
  text-align: left;
}

.c_contact_btn a {
  background: #E50312;
  color: #FFF;
  font-size: 1.9rem;
  font-weight: 800;
  font-size: 1.9rem;
  padding: var(--size-20) var(--size-115);
  border-radius: 88px;
  position: relative;
  transition: 0.3s;
}

@media screen and (max-width: 767px) {
  .c_contact_btn a {
    font-size: 4.6153846154vw;
  }
}
.c_contact_btn a:hover {
  opacity: 0.6;
}

.c_contact_btn a:after {
  content: "";
  display: block;
  width: 12px;
  height: 13px;
  background: url("../../images/arrow_white.svg");
  background-repeat: no-repeat;
  background-size: contain;
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  right: 10px;
}

.l_fixed_bnr {
  position: fixed;
  bottom: 200px;
  right: 0;
  z-index: 9;
}

@media screen and (max-width: 767px) {
  .l_fixed_bnr {
    bottom: var(--size-320);
  }
}
.l_fixed_bnr .c_fixed_bnr a {
  writing-mode: vertical-rl;
  color: #FFF;
  background: #0E69BC;
  display: flex;
  align-items: center;
  border-radius: 19px 0 0 19px;
  font-weight: 800;
  line-height: 1.125;
  padding: var(--size-20) 19px var(--size-20);
  font-size: 1.6rem;
  transition: 0.3s;
}

@media screen and (max-width: 767px) {
  .l_fixed_bnr .c_fixed_bnr a {
    font-size: 3.5897435897vw;
    padding: var(--size-20) var(--size-20) var(--size-20);
    border-radius: var(--size-20) 0 0 var(--size-20);
  }
}
.l_fixed_bnr .c_fixed_bnr a:hover {
  opacity: 0.6;
}

.l_fixed_bnr .c_fixed_bnr a:before {
  content: "";
  display: block;
  width: 24px;
  height: 29px;
  background: url("../../images/icon_building.svg");
  background-repeat: no-repeat;
  background-size: contain;
  margin-bottom: var(--size-10);
}

@media screen and (max-width: 767px) {
  .l_fixed_bnr .c_fixed_bnr a:before {
    width: 3.8461538462vw;
    height: 4.4871794872vw;
    margin-bottom: var(--size-20);
  }
}
.l_page-top {
  position: fixed;
  bottom: 30px;
  right: 70px;
  z-index: 9;
}

@media screen and (max-width: 767px) {
  .l_page-top {
    bottom: 16.6666666667vw;
    right: 1.2820512821vw;
  }
}
.l_page-top a {
  font-size: 2.2rem;
  line-height: 1.2272727273;
  color: #FFF;
  background: #2192A2;
  border: 3px solid #FFF;
  border-radius: var(--size-120);
  box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16);
  width: var(--size-130);
  padding-top: 26px;
  padding-bottom: 36px;
  font-weight: 800;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-flow: column;
  transition: 0.3s;
  box-sizing: border-box;
}

@media screen and (max-width: 767px) {
  .l_page-top a {
    width: var(--size-140);
    font-size: 2.9487179487vw;
    padding-top: 4.0769230769vw;
    padding-bottom: 5.1282051282vw;
  }
}
.l_page-top a:hover {
  opacity: 0.6;
}

.l_page-top a:before {
  content: "";
  display: block;
  width: 47px;
  height: 28px;
  background: url("../../images/icon_page_top.svg");
  background-repeat: no-repeat;
  background-size: contain;
  margin-bottom: 7px;
}

@media screen and (max-width: 767px) {
  .l_page-top a:before {
    width: 2.9487179487vw;
    height: 1.7948717949vw;
  }
}
/*# sourceMappingURL=index.css.map */
