@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Montserrat:ital,wght@0,100..900;1,100..900&family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&family=Roboto:ital,wdth,wght@0,75..100,100..900;1,75..100,100..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: 1200px) {
  :root {
    --size-5: calc(5 / 1350 * 100vw);
    --size-10: calc(10 / 1350 * 100vw);
    --size-15: calc(15 / 1350 * 100vw);
    --size-20: calc(20 / 1350 * 100vw);
    --size-25: calc(25 / 1350 * 100vw);
    --size-30: calc(30 / 1350 * 100vw);
    --size-35: calc(35 / 1350 * 100vw);
    --size-40: calc(40 / 1350 * 100vw);
    --size-45: calc(45 / 1350 * 100vw);
    --size-50: calc(50 / 1350 * 100vw);
    --size-55: calc(55 / 1350 * 100vw);
    --size-60: calc(60 / 1350 * 100vw);
    --size-65: calc(65 / 1350 * 100vw);
    --size-70: calc(70 / 1350 * 100vw);
    --size-75: calc(75 / 1350 * 100vw);
    --size-80: calc(80 / 1350 * 100vw);
    --size-85: calc(85 / 1350 * 100vw);
    --size-90: calc(90 / 1350 * 100vw);
    --size-95: calc(95 / 1350 * 100vw);
    --size-100: calc(100 / 1350 * 100vw);
    --size-105: calc(105 / 1350 * 100vw);
    --size-110: calc(110 / 1350 * 100vw);
    --size-115: calc(115 / 1350 * 100vw);
    --size-120: calc(120 / 1350 * 100vw);
    --size-125: calc(125 / 1350 * 100vw);
    --size-130: calc(130 / 1350 * 100vw);
    --size-135: calc(135 / 1350 * 100vw);
    --size-140: calc(140 / 1350 * 100vw);
    --size-145: calc(145 / 1350 * 100vw);
    --size-150: calc(150 / 1350 * 100vw);
    --size-155: calc(155 / 1350 * 100vw);
    --size-160: calc(160 / 1350 * 100vw);
    --size-165: calc(165 / 1350 * 100vw);
    --size-170: calc(170 / 1350 * 100vw);
    --size-175: calc(175 / 1350 * 100vw);
    --size-180: calc(180 / 1350 * 100vw);
    --size-185: calc(185 / 1350 * 100vw);
    --size-190: calc(190 / 1350 * 100vw);
    --size-195: calc(195 / 1350 * 100vw);
    --size-200: calc(200 / 1350 * 100vw);
    --size-205: calc(205 / 1350 * 100vw);
    --size-210: calc(210 / 1350 * 100vw);
    --size-215: calc(215 / 1350 * 100vw);
    --size-220: calc(220 / 1350 * 100vw);
    --size-225: calc(225 / 1350 * 100vw);
    --size-230: calc(230 / 1350 * 100vw);
    --size-235: calc(235 / 1350 * 100vw);
    --size-240: calc(240 / 1350 * 100vw);
    --size-245: calc(245 / 1350 * 100vw);
    --size-250: calc(250 / 1350 * 100vw);
    --size-255: calc(255 / 1350 * 100vw);
    --size-260: calc(260 / 1350 * 100vw);
    --size-265: calc(265 / 1350 * 100vw);
    --size-270: calc(270 / 1350 * 100vw);
    --size-275: calc(275 / 1350 * 100vw);
    --size-280: calc(280 / 1350 * 100vw);
    --size-285: calc(285 / 1350 * 100vw);
    --size-290: calc(290 / 1350 * 100vw);
    --size-295: calc(295 / 1350 * 100vw);
    --size-300: calc(300 / 1350 * 100vw);
    --size-305: calc(305 / 1350 * 100vw);
    --size-310: calc(310 / 1350 * 100vw);
    --size-315: calc(315 / 1350 * 100vw);
    --size-320: calc(320 / 1350 * 100vw);
    --size-325: calc(325 / 1350 * 100vw);
    --size-330: calc(330 / 1350 * 100vw);
    --size-335: calc(335 / 1350 * 100vw);
    --size-340: calc(340 / 1350 * 100vw);
    --size-345: calc(345 / 1350 * 100vw);
    --size-350: calc(350 / 1350 * 100vw);
    --size-355: calc(355 / 1350 * 100vw);
    --size-360: calc(360 / 1350 * 100vw);
    --size-365: calc(365 / 1350 * 100vw);
    --size-370: calc(370 / 1350 * 100vw);
    --size-375: calc(375 / 1350 * 100vw);
    --size-380: calc(380 / 1350 * 100vw);
    --size-385: calc(385 / 1350 * 100vw);
    --size-390: calc(390 / 1350 * 100vw);
    --size-395: calc(395 / 1350 * 100vw);
    --size-400: calc(400 / 1350 * 100vw);
    --size-405: calc(405 / 1350 * 100vw);
    --size-410: calc(410 / 1350 * 100vw);
    --size-415: calc(415 / 1350 * 100vw);
    --size-420: calc(420 / 1350 * 100vw);
    --size-425: calc(425 / 1350 * 100vw);
    --size-430: calc(430 / 1350 * 100vw);
    --size-435: calc(435 / 1350 * 100vw);
    --size-440: calc(440 / 1350 * 100vw);
    --size-445: calc(445 / 1350 * 100vw);
    --size-450: calc(450 / 1350 * 100vw);
    --size-455: calc(455 / 1350 * 100vw);
    --size-460: calc(460 / 1350 * 100vw);
    --size-465: calc(465 / 1350 * 100vw);
    --size-470: calc(470 / 1350 * 100vw);
    --size-475: calc(475 / 1350 * 100vw);
    --size-480: calc(480 / 1350 * 100vw);
    --size-485: calc(485 / 1350 * 100vw);
    --size-490: calc(490 / 1350 * 100vw);
    --size-495: calc(495 / 1350 * 100vw);
    --size-500: calc(500 / 1350 * 100vw);
    --size-505: calc(505 / 1350 * 100vw);
    --size-510: calc(510 / 1350 * 100vw);
    --size-515: calc(515 / 1350 * 100vw);
    --size-520: calc(520 / 1350 * 100vw);
    --size-525: calc(525 / 1350 * 100vw);
    --size-530: calc(530 / 1350 * 100vw);
    --size-535: calc(535 / 1350 * 100vw);
    --size-540: calc(540 / 1350 * 100vw);
    --size-545: calc(545 / 1350 * 100vw);
    --size-550: calc(550 / 1350 * 100vw);
    --size-555: calc(555 / 1350 * 100vw);
    --size-560: calc(560 / 1350 * 100vw);
    --size-565: calc(565 / 1350 * 100vw);
    --size-570: calc(570 / 1350 * 100vw);
    --size-575: calc(575 / 1350 * 100vw);
    --size-580: calc(580 / 1350 * 100vw);
    --size-585: calc(585 / 1350 * 100vw);
    --size-590: calc(590 / 1350 * 100vw);
    --size-595: calc(595 / 1350 * 100vw);
    --size-600: calc(600 / 1350 * 100vw);
    --size-605: calc(605 / 1350 * 100vw);
    --size-610: calc(610 / 1350 * 100vw);
    --size-615: calc(615 / 1350 * 100vw);
    --size-620: calc(620 / 1350 * 100vw);
    --size-625: calc(625 / 1350 * 100vw);
    --size-630: calc(630 / 1350 * 100vw);
    --size-635: calc(635 / 1350 * 100vw);
    --size-640: calc(640 / 1350 * 100vw);
    --size-645: calc(645 / 1350 * 100vw);
    --size-650: calc(650 / 1350 * 100vw);
    --size-655: calc(655 / 1350 * 100vw);
    --size-660: calc(660 / 1350 * 100vw);
    --size-665: calc(665 / 1350 * 100vw);
    --size-670: calc(670 / 1350 * 100vw);
    --size-675: calc(675 / 1350 * 100vw);
    --size-680: calc(680 / 1350 * 100vw);
    --size-685: calc(685 / 1350 * 100vw);
    --size-690: calc(690 / 1350 * 100vw);
    --size-695: calc(695 / 1350 * 100vw);
    --size-700: calc(700 / 1350 * 100vw);
    --size-705: calc(705 / 1350 * 100vw);
    --size-710: calc(710 / 1350 * 100vw);
    --size-715: calc(715 / 1350 * 100vw);
    --size-720: calc(720 / 1350 * 100vw);
    --size-725: calc(725 / 1350 * 100vw);
    --size-730: calc(730 / 1350 * 100vw);
    --size-735: calc(735 / 1350 * 100vw);
    --size-740: calc(740 / 1350 * 100vw);
    --size-745: calc(745 / 1350 * 100vw);
    --size-750: calc(750 / 1350 * 100vw);
    --size-755: calc(755 / 1350 * 100vw);
    --size-760: calc(760 / 1350 * 100vw);
    --size-765: calc(765 / 1350 * 100vw);
    --size-770: calc(770 / 1350 * 100vw);
    --size-775: calc(775 / 1350 * 100vw);
    --size-780: calc(780 / 1350 * 100vw);
    --size-785: calc(785 / 1350 * 100vw);
    --size-790: calc(790 / 1350 * 100vw);
    --size-795: calc(795 / 1350 * 100vw);
    --size-800: calc(800 / 1350 * 100vw);
    --size-805: calc(805 / 1350 * 100vw);
    --size-810: calc(810 / 1350 * 100vw);
    --size-815: calc(815 / 1350 * 100vw);
    --size-820: calc(820 / 1350 * 100vw);
    --size-825: calc(825 / 1350 * 100vw);
    --size-830: calc(830 / 1350 * 100vw);
    --size-835: calc(835 / 1350 * 100vw);
    --size-840: calc(840 / 1350 * 100vw);
    --size-845: calc(845 / 1350 * 100vw);
    --size-850: calc(850 / 1350 * 100vw);
    --size-855: calc(855 / 1350 * 100vw);
    --size-860: calc(860 / 1350 * 100vw);
    --size-865: calc(865 / 1350 * 100vw);
    --size-870: calc(870 / 1350 * 100vw);
    --size-875: calc(875 / 1350 * 100vw);
    --size-880: calc(880 / 1350 * 100vw);
    --size-885: calc(885 / 1350 * 100vw);
    --size-890: calc(890 / 1350 * 100vw);
    --size-895: calc(895 / 1350 * 100vw);
    --size-900: calc(900 / 1350 * 100vw);
    --size-905: calc(905 / 1350 * 100vw);
    --size-910: calc(910 / 1350 * 100vw);
    --size-915: calc(915 / 1350 * 100vw);
    --size-920: calc(920 / 1350 * 100vw);
    --size-925: calc(925 / 1350 * 100vw);
    --size-930: calc(930 / 1350 * 100vw);
    --size-935: calc(935 / 1350 * 100vw);
    --size-940: calc(940 / 1350 * 100vw);
    --size-945: calc(945 / 1350 * 100vw);
    --size-950: calc(950 / 1350 * 100vw);
    --size-955: calc(955 / 1350 * 100vw);
    --size-960: calc(960 / 1350 * 100vw);
    --size-965: calc(965 / 1350 * 100vw);
    --size-970: calc(970 / 1350 * 100vw);
    --size-975: calc(975 / 1350 * 100vw);
    --size-980: calc(980 / 1350 * 100vw);
    --size-985: calc(985 / 1350 * 100vw);
    --size-990: calc(990 / 1350 * 100vw);
    --size-995: calc(995 / 1350 * 100vw);
    --size-1000: calc(1000 / 1350 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  :root {
    --size-5: calc(5 / 700 * 100vw);
    --size-10: calc(10 / 700 * 100vw);
    --size-15: calc(15 / 700 * 100vw);
    --size-20: calc(20 / 700 * 100vw);
    --size-25: calc(25 / 700 * 100vw);
    --size-30: calc(30 / 700 * 100vw);
    --size-35: calc(35 / 700 * 100vw);
    --size-40: calc(40 / 700 * 100vw);
    --size-45: calc(45 / 700 * 100vw);
    --size-50: calc(50 / 700 * 100vw);
    --size-55: calc(55 / 700 * 100vw);
    --size-60: calc(60 / 700 * 100vw);
    --size-65: calc(65 / 700 * 100vw);
    --size-70: calc(70 / 700 * 100vw);
    --size-75: calc(75 / 700 * 100vw);
    --size-80: calc(80 / 700 * 100vw);
    --size-85: calc(85 / 700 * 100vw);
    --size-90: calc(90 / 700 * 100vw);
    --size-95: calc(95 / 700 * 100vw);
    --size-100: calc(100 / 700 * 100vw);
    --size-105: calc(105 / 700 * 100vw);
    --size-110: calc(110 / 700 * 100vw);
    --size-115: calc(115 / 700 * 100vw);
    --size-120: calc(120 / 700 * 100vw);
    --size-125: calc(125 / 700 * 100vw);
    --size-130: calc(130 / 700 * 100vw);
    --size-135: calc(135 / 700 * 100vw);
    --size-140: calc(140 / 700 * 100vw);
    --size-145: calc(145 / 700 * 100vw);
    --size-150: calc(150 / 700 * 100vw);
    --size-155: calc(155 / 700 * 100vw);
    --size-160: calc(160 / 700 * 100vw);
    --size-165: calc(165 / 700 * 100vw);
    --size-170: calc(170 / 700 * 100vw);
    --size-175: calc(175 / 700 * 100vw);
    --size-180: calc(180 / 700 * 100vw);
    --size-185: calc(185 / 700 * 100vw);
    --size-190: calc(190 / 700 * 100vw);
    --size-195: calc(195 / 700 * 100vw);
    --size-200: calc(200 / 700 * 100vw);
    --size-205: calc(205 / 700 * 100vw);
    --size-210: calc(210 / 700 * 100vw);
    --size-215: calc(215 / 700 * 100vw);
    --size-220: calc(220 / 700 * 100vw);
    --size-225: calc(225 / 700 * 100vw);
    --size-230: calc(230 / 700 * 100vw);
    --size-235: calc(235 / 700 * 100vw);
    --size-240: calc(240 / 700 * 100vw);
    --size-245: calc(245 / 700 * 100vw);
    --size-250: calc(250 / 700 * 100vw);
    --size-255: calc(255 / 700 * 100vw);
    --size-260: calc(260 / 700 * 100vw);
    --size-265: calc(265 / 700 * 100vw);
    --size-270: calc(270 / 700 * 100vw);
    --size-275: calc(275 / 700 * 100vw);
    --size-280: calc(280 / 700 * 100vw);
    --size-285: calc(285 / 700 * 100vw);
    --size-290: calc(290 / 700 * 100vw);
    --size-295: calc(295 / 700 * 100vw);
    --size-300: calc(300 / 700 * 100vw);
    --size-305: calc(305 / 700 * 100vw);
    --size-310: calc(310 / 700 * 100vw);
    --size-315: calc(315 / 700 * 100vw);
    --size-320: calc(320 / 700 * 100vw);
    --size-325: calc(325 / 700 * 100vw);
    --size-330: calc(330 / 700 * 100vw);
    --size-335: calc(335 / 700 * 100vw);
    --size-340: calc(340 / 700 * 100vw);
    --size-345: calc(345 / 700 * 100vw);
    --size-350: calc(350 / 700 * 100vw);
    --size-355: calc(355 / 700 * 100vw);
    --size-360: calc(360 / 700 * 100vw);
    --size-365: calc(365 / 700 * 100vw);
    --size-370: calc(370 / 700 * 100vw);
    --size-375: calc(375 / 700 * 100vw);
    --size-380: calc(380 / 700 * 100vw);
    --size-385: calc(385 / 700 * 100vw);
    --size-390: calc(390 / 700 * 100vw);
    --size-395: calc(395 / 700 * 100vw);
    --size-400: calc(400 / 700 * 100vw);
    --size-405: calc(405 / 700 * 100vw);
    --size-410: calc(410 / 700 * 100vw);
    --size-415: calc(415 / 700 * 100vw);
    --size-420: calc(420 / 700 * 100vw);
    --size-425: calc(425 / 700 * 100vw);
    --size-430: calc(430 / 700 * 100vw);
    --size-435: calc(435 / 700 * 100vw);
    --size-440: calc(440 / 700 * 100vw);
    --size-445: calc(445 / 700 * 100vw);
    --size-450: calc(450 / 700 * 100vw);
    --size-455: calc(455 / 700 * 100vw);
    --size-460: calc(460 / 700 * 100vw);
    --size-465: calc(465 / 700 * 100vw);
    --size-470: calc(470 / 700 * 100vw);
    --size-475: calc(475 / 700 * 100vw);
    --size-480: calc(480 / 700 * 100vw);
    --size-485: calc(485 / 700 * 100vw);
    --size-490: calc(490 / 700 * 100vw);
    --size-495: calc(495 / 700 * 100vw);
    --size-500: calc(500 / 700 * 100vw);
    --size-505: calc(505 / 700 * 100vw);
    --size-510: calc(510 / 700 * 100vw);
    --size-515: calc(515 / 700 * 100vw);
    --size-520: calc(520 / 700 * 100vw);
    --size-525: calc(525 / 700 * 100vw);
    --size-530: calc(530 / 700 * 100vw);
    --size-535: calc(535 / 700 * 100vw);
    --size-540: calc(540 / 700 * 100vw);
    --size-545: calc(545 / 700 * 100vw);
    --size-550: calc(550 / 700 * 100vw);
    --size-555: calc(555 / 700 * 100vw);
    --size-560: calc(560 / 700 * 100vw);
    --size-565: calc(565 / 700 * 100vw);
    --size-570: calc(570 / 700 * 100vw);
    --size-575: calc(575 / 700 * 100vw);
    --size-580: calc(580 / 700 * 100vw);
    --size-585: calc(585 / 700 * 100vw);
    --size-590: calc(590 / 700 * 100vw);
    --size-595: calc(595 / 700 * 100vw);
    --size-600: calc(600 / 700 * 100vw);
    --size-605: calc(605 / 700 * 100vw);
    --size-610: calc(610 / 700 * 100vw);
    --size-615: calc(615 / 700 * 100vw);
    --size-620: calc(620 / 700 * 100vw);
    --size-625: calc(625 / 700 * 100vw);
    --size-630: calc(630 / 700 * 100vw);
    --size-635: calc(635 / 700 * 100vw);
    --size-640: calc(640 / 700 * 100vw);
    --size-645: calc(645 / 700 * 100vw);
    --size-650: calc(650 / 700 * 100vw);
    --size-655: calc(655 / 700 * 100vw);
    --size-660: calc(660 / 700 * 100vw);
    --size-665: calc(665 / 700 * 100vw);
    --size-670: calc(670 / 700 * 100vw);
    --size-675: calc(675 / 700 * 100vw);
    --size-680: calc(680 / 700 * 100vw);
    --size-685: calc(685 / 700 * 100vw);
    --size-690: calc(690 / 700 * 100vw);
    --size-695: calc(695 / 700 * 100vw);
    --size-700: calc(700 / 700 * 100vw);
    --size-705: calc(705 / 700 * 100vw);
    --size-710: calc(710 / 700 * 100vw);
    --size-715: calc(715 / 700 * 100vw);
    --size-720: calc(720 / 700 * 100vw);
    --size-725: calc(725 / 700 * 100vw);
    --size-730: calc(730 / 700 * 100vw);
    --size-735: calc(735 / 700 * 100vw);
    --size-740: calc(740 / 700 * 100vw);
    --size-745: calc(745 / 700 * 100vw);
    --size-750: calc(750 / 700 * 100vw);
    --size-755: calc(755 / 700 * 100vw);
    --size-760: calc(760 / 700 * 100vw);
    --size-765: calc(765 / 700 * 100vw);
    --size-770: calc(770 / 700 * 100vw);
    --size-775: calc(775 / 700 * 100vw);
    --size-780: calc(780 / 700 * 100vw);
    --size-785: calc(785 / 700 * 100vw);
    --size-790: calc(790 / 700 * 100vw);
    --size-795: calc(795 / 700 * 100vw);
    --size-800: calc(800 / 700 * 100vw);
    --size-805: calc(805 / 700 * 100vw);
    --size-810: calc(810 / 700 * 100vw);
    --size-815: calc(815 / 700 * 100vw);
    --size-820: calc(820 / 700 * 100vw);
    --size-825: calc(825 / 700 * 100vw);
    --size-830: calc(830 / 700 * 100vw);
    --size-835: calc(835 / 700 * 100vw);
    --size-840: calc(840 / 700 * 100vw);
    --size-845: calc(845 / 700 * 100vw);
    --size-850: calc(850 / 700 * 100vw);
    --size-855: calc(855 / 700 * 100vw);
    --size-860: calc(860 / 700 * 100vw);
    --size-865: calc(865 / 700 * 100vw);
    --size-870: calc(870 / 700 * 100vw);
    --size-875: calc(875 / 700 * 100vw);
    --size-880: calc(880 / 700 * 100vw);
    --size-885: calc(885 / 700 * 100vw);
    --size-890: calc(890 / 700 * 100vw);
    --size-895: calc(895 / 700 * 100vw);
    --size-900: calc(900 / 700 * 100vw);
    --size-905: calc(905 / 700 * 100vw);
    --size-910: calc(910 / 700 * 100vw);
    --size-915: calc(915 / 700 * 100vw);
    --size-920: calc(920 / 700 * 100vw);
    --size-925: calc(925 / 700 * 100vw);
    --size-930: calc(930 / 700 * 100vw);
    --size-935: calc(935 / 700 * 100vw);
    --size-940: calc(940 / 700 * 100vw);
    --size-945: calc(945 / 700 * 100vw);
    --size-950: calc(950 / 700 * 100vw);
    --size-955: calc(955 / 700 * 100vw);
    --size-960: calc(960 / 700 * 100vw);
    --size-965: calc(965 / 700 * 100vw);
    --size-970: calc(970 / 700 * 100vw);
    --size-975: calc(975 / 700 * 100vw);
    --size-980: calc(980 / 700 * 100vw);
    --size-985: calc(985 / 700 * 100vw);
    --size-990: calc(990 / 700 * 100vw);
    --size-995: calc(995 / 700 * 100vw);
    --size-1000: calc(1000 / 700 * 100vw);
  }
}
.mv .p_h1-heading h1 {
  color: #FFF;
  font-size: 1.4rem;
  padding-top: var(--size-15);
  text-shadow: 0 0 var(--size-10) rgb(23, 131, 201.1);
}
@media screen and (max-width: 768px) {
  .mv .p_h1-heading h1 {
    font-size: calc(22 / 700 * 100vw);
    line-height: 1.1666666667;
    padding-top: 0.7142857143vw;
  }
}
@media screen and (max-width: 768px) {
  .mv .p_h1-heading {
    position: absolute;
    top: 0;
    left: var(--size-30);
    width: 90vw;
  }
}
.mv .p_mv {
  position: relative;
}
.mv .p_mv__bg {
  position: relative;
  height: 727px;
}
@media screen and (min-width: 1920px) {
  .mv .p_mv__bg {
    height: 37.8645833333vw;
  }
}
@media screen and (max-width: 1200px) {
  .mv .p_mv__bg {
    height: 60.5833333333vw;
  }
}
@media screen and (max-width: 768px) {
  .mv .p_mv__bg {
    height: 100vw;
  }
}
.mv .p_mv__bg img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 727px;
}
@media screen and (min-width: 1920px) {
  .mv .p_mv__bg img {
    height: 37.8645833333vw;
  }
}
@media screen and (max-width: 1200px) {
  .mv .p_mv__bg img {
    height: 60.5833333333vw;
  }
}
@media screen and (max-width: 768px) {
  .mv .p_mv__bg img {
    height: 100vw;
  }
}
.mv .p_mv__inner {
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  width: 1113px;
  margin: 0 auto;
  height: 100%;
}
@media screen and (min-width: 1920px) {
  .mv .p_mv__inner {
    width: 57.96875vw;
  }
}
@media screen and (max-width: 1200px) {
  .mv .p_mv__inner {
    width: 92.75vw;
  }
}
@media screen and (max-width: 768px) {
  .mv .p_mv__inner {
    width: 100%;
    display: flex;
    align-items: flex-end;
    justify-content: center;
  }
}
.mv .p_mv__btn {
  width: 486px;
  position: absolute;
  bottom: 113px;
}
@media screen and (min-width: 1920px) {
  .mv .p_mv__btn {
    width: 25.3125vw;
    bottom: 5.8854166667vw;
  }
}
@media screen and (max-width: 1200px) {
  .mv .p_mv__btn {
    width: 40.5vw;
    bottom: 9.4166666667vw;
  }
}
@media screen and (max-width: 768px) {
  .mv .p_mv__btn {
    width: 87vw;
    position: initial;
    display: flex;
    align-items: flex-end;
    bottom: initial;
    padding-bottom: 6.4285714286vw;
  }
}

.intro {
  background-image: linear-gradient(#007638, #007537 30%, #005528);
}
.intro .l_intro_container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 1200px) {
  .intro .l_intro_container {
    grid-template-columns: repeat(2, 1fr);
    background: none;
  }
}
.intro .l_intro_container .p_top-navi_block + .p_top-navi_block {
  border-left: 2px solid #00391B;
}
@media screen and (max-width: 1200px) {
  .intro .l_intro_container .p_top-navi_block:nth-child(3) {
    border-left: none;
  }
}
.intro .l_intro_container .p_top-navi_block {
  border-right: 1px solid #9BBAAA;
  text-align: center;
  padding: 27px 0 45px;
  padding-left: var(--size-20);
  padding-right: var(--size-20);
}
@media screen and (max-width: 1200px) {
  .intro .l_intro_container .p_top-navi_block {
    background-image: linear-gradient(#007638, #007537 30%, #005528);
    border-bottom: 1px solid #FFF;
  }
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block {
    padding: calc(20 / 700 * 100vw) calc(10 / 700 * 100vw) calc(25 / 700 * 100vw) calc(10 / 700 * 100vw);
  }
  .intro .l_intro_container .p_top-navi_block:nth-child(even) {
    border: none;
    padding-right: var(--size-30);
    border-bottom: 1px solid #FFF;
  }
  .intro .l_intro_container .p_top-navi_block:nth-child(odd) {
    border: none;
    padding-left: var(--size-30);
    border-right: 1px solid #9BBAAA;
    border-bottom: 1px solid #FFF;
    position: relative;
  }
  .intro .l_intro_container .p_top-navi_block:nth-child(odd):after {
    content: "";
    display: block;
    width: 1px;
    height: 100%;
    background-color: #00391B;
    position: absolute;
    top: 0;
    right: -2px;
  }
}
.intro .l_intro_container .p_top-navi_block .c_heading {
  color: #FFF;
  font-size: 2.4rem;
  font-weight: 700;
  line-height: 1.3333333333;
  margin-bottom: 30px;
  display: flex;
  align-items: center;
  justify-content: center;
}
.intro .l_intro_container .p_top-navi_block .c_heading__txtInner .lg-fs {
  display: inline-block;
  line-height: 1.1666666667;
}
.intro .l_intro_container .p_top-navi_block .c_heading__txtInner .sm-fs {
  font-size: 1.4rem;
  font-weight: 400;
  display: block;
  line-height: 1.7142857143;
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .c_heading__txtInner .sm-fs {
    font-size: calc(18 / 700 * 100vw);
    line-height: 1.4444444444;
  }
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .c_heading {
    font-size: calc(30 / 700 * 100vw);
    line-height: 1.4666666667;
    margin-bottom: calc(35 / 700 * 100vw);
  }
}
.intro .l_intro_container .p_top-navi_block .c_image {
  margin: 0 auto 24px;
  max-width: 360px;
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .c_image img {
    width: calc(310 / 700 * 100vw);
    height: calc(210 / 700 * 100vw);
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.intro .l_intro_container .p_top-navi_block .p_navi-list_block {
  margin: 0 auto;
  display: flex;
  justify-content: center;
  width: 100%;
  max-width: 360px;
}
.intro .l_intro_container .p_top-navi_block .p_navi-list_block ul {
  width: 100%;
  border-top: 1px dashed #FFF;
}
.intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li {
  text-align: left;
  border-bottom: 1px dashed #FFF;
  padding: 22px 0;
}
.intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li a .c_link_text {
  color: #FFF;
  display: flex;
  align-items: center;
  font-size: 1.8rem;
  line-height: 1.4444444444;
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li a .c_link_text {
    font-size: calc(24 / 700 * 100vw);
  }
  .intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li a .c_link_text._interview:after {
    margin-left: calc(10 / 700 * 100vw);
  }
}
.intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li a .c_link_text span {
  flex: 1;
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li a .c_link_text span {
    flex: initial;
  }
}
.intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li a .c_link_text:after {
  content: "";
  display: block;
  width: 17px;
  height: 17px;
  background-color: #fff;
  -webkit-mask: url("../../img/cmn/icon_arrow.svg") no-repeat center/contain;
  mask: url("../../img/cmn/icon_arrow.svg") no-repeat center/contain;
  margin-left: 10px;
  position: relative;
  top: 0.1em;
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li a .c_link_text:after {
    width: calc(35 / 700 * 100vw);
    height: calc(35 / 700 * 100vw);
    margin-left: calc(25 / 700 * 100vw);
  }
}
.intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li a .c_link_text._blank:after {
  content: "";
  display: block;
  width: 15px;
  height: 15px;
  background-color: initial;
  -webkit-mask: none;
          mask: none;
  background-image: url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='12.424' height='12.405' viewBox='0 0 12.424 12.405'%3E%3Cpath d='M24519.16-410.6a1.162 1.162 0 0 1-1.158-1.164v-10.084a1.16 1.16 0 0 1 1.158-1.157h2.561a.5.5 0 0 1 .5.5.5.5 0 0 1-.5.5h-2.561a.157.157 0 0 0-.16.154v10.084a.158.158 0 0 0 .16.16h10.107a.159.159 0 0 0 .16-.16v-2.469a.5.5 0 0 1 .5-.5.5.5 0 0 1 .5.5v2.469a1.162 1.162 0 0 1-1.158 1.164Zm2.426-3.041a.5.5 0 0 1-.025-.7l4.709-5.024 2.469-2.635h-3.3a.5.5 0 0 1-.506-.5.5.5 0 0 1 .506-.5h3.742a1.251 1.251 0 0 1 1.25 1.25V-418a.5.5 0 0 1-.5.5.5.5 0 0 1-.5-.5v-3.267l-7.135 7.613a.5.5 0 0 1-.363.154.5.5 0 0 1-.363-.154Z' transform='translate(-24518.002 423.001)' fill='%23fff'/%3E%3C/svg%3E");
  background-repeat: no-repeat;
  background-size: contain;
  margin-left: 10px;
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li a .c_link_text._blank:after {
    width: calc(22 / 700 * 100vw);
    height: calc(22 / 700 * 100vw);
    margin-left: calc(15 / 700 * 100vw);
  }
}
.intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li .c_sub_text {
  color: #FFF;
  font-size: 1.4rem;
  line-height: 1.4285714286;
  margin-top: 6px;
}
@media screen and (max-width: 1200px) {
  .intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li .c_sub_text {
    font-size: calc(14 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li .c_sub_text {
    font-size: calc(23 / 700 * 100vw);
  }
}
.intro .l_intro_container .p_top-navi_block .p_navi-list_block ul li .c_sub_text a {
  color: #FFF;
  text-decoration: underline;
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application {
  color: #FFF;
  /* チェック時 */
  /* チェックマーク */
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application a {
  color: #FFF;
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application_text {
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: 3px;
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_abs-link-application_text {
    font-size: calc(24 / 700 * 100vw);
    margin-bottom: calc(10 / 700 * 100vw);
  }
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application_note {
  font-size: 1.4rem;
  line-height: 1.4285714286;
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_abs-link-application_note {
    font-size: calc(22 / 700 * 100vw);
  }
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application_note span {
  text-decoration: underline;
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application_checkbox {
  font-size: 1.4rem;
  margin: var(--size-5) 0 1px;
  display: flex;
  align-items: center;
  gap: var(--size-5);
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_abs-link-application_checkbox {
    font-size: calc(22 / 700 * 100vw);
  }
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application label {
  flex: 1;
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_abs-link-application label {
    line-height: 1.3333333333;
  }
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application_link {
  font-size: 1.4rem;
  line-height: 2.1428571429;
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_abs-link-application_link {
    font-size: calc(22 / 700 * 100vw);
  }
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application_link a {
  text-decoration: underline;
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application_link.--download a {
  color: #FFE9A0;
  text-decoration: underline;
  display: flex;
  align-items: center;
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application_link.--download a:before {
  content: "";
  display: block;
  width: 15px;
  height: 13px;
  background: url("../../img/cmn/icon_download.svg");
  background-repeat: no-repeat;
  background-size: contain;
  margin-right: 3px;
  position: relative;
  top: 0.1em;
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_abs-link-application_link.--download a:before {
    width: calc(25 / 700 * 100vw);
    height: calc(20 / 700 * 100vw);
  }
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application .l_abs-link-application_linkWrap {
  display: flex;
  gap: var(--size-15);
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_abs-link-application .l_abs-link-application_linkWrap {
    display: block;
  }
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application #abs-link-application {
  -moz-appearance: none;
       appearance: none;
  -webkit-appearance: none;
  width: var(--size-15);
  height: var(--size-15);
  border: 1px solid #FFF;
  border-radius: 1px;
  cursor: pointer;
  position: relative;
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_abs-link-application #abs-link-application {
    width: var(--size-20);
    height: var(--size-20);
  }
}
.intro .l_intro_container .p_top-navi_block .p_abs-link-application #abs-link-application:checked::after {
  content: "";
  position: absolute;
  top: 0px;
  left: var(--size-5);
  width: var(--size-5);
  height: var(--size-10);
  border: solid #fff;
  border-width: 0 2px 2px 0;
  transform: rotate(45deg);
}
@media screen and (max-width: 768px) {
  .intro .l_intro_container .p_top-navi_block .p_abs-link-application #abs-link-application:checked::after {
    left: calc(6 / 700 * 100vw);
    width: calc(8 / 700 * 100vw);
    height: calc(12 / 700 * 100vw);
  }
}

.concept {
  padding: var(--size-130) 0 var(--size-35);
  background: url("../../img/top/concept_bg.png");
  background-repeat: no-repeat;
  background-size: 1460px;
  background-position: center 30px;
}
@media screen and (max-width: 768px) {
  .concept {
    padding: calc(90 / 700 * 100vw) 0 calc(120 / 700 * 100vw);
    background: url("../../img/top/concept_bg_sp.png");
    background-position: center calc(222 / 700 * 100vw);
    background-repeat: no-repeat;
    background-size: contain;
  }
}
.concept .l_inner {
  position: relative;
}
@media screen and (max-width: 768px) {
  .concept .l_inner {
    padding-left: calc(28 / 700 * 100vw);
    padding-right: calc(28 / 700 * 100vw);
  }
}
.concept .l_inner:before {
  content: "";
  display: block;
  width: 319px;
  height: 445px;
  background: url("../../img/top/concept_deco01.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: 104px;
  left: -242px;
}
@media screen and (max-width: 768px) {
  .concept .l_inner:before {
    width: calc(394 / 700 * 100vw);
    height: calc(549 / 700 * 100vw);
    top: calc(800 / 700 * 100vw);
    left: calc(-1 * 120 / 700 * 100vw);
  }
}
.concept .l_inner:after {
  content: "";
  display: block;
  width: 525px;
  height: 412px;
  background: url("../../img/top/concept_deco02.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  top: -87px;
  right: -240px;
}
@media screen and (max-width: 768px) {
  .concept .l_inner:after {
    width: calc(309 / 700 * 100vw);
    height: calc(375 / 700 * 100vw);
    top: calc(750 / 700 * 100vw);
    right: 0;
    background: url("../../img/top/concept_deco02_sp.png");
    background-size: contain;
  }
}
.concept .l_concept_container {
  margin-left: var(--size-180);
  position: relative;
}
@media screen and (max-width: 768px) {
  .concept .l_concept_container {
    margin-left: 0;
  }
}
.concept .l_concept_container:after {
  content: "";
  display: block;
  width: 400px;
  height: 266px;
  background: url("../../img/top/concept_deco03.png");
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  right: -70px;
  bottom: -140px;
}
@media screen and (max-width: 768px) {
  .concept .l_concept_container:after {
    width: calc(275 / 700 * 100vw);
    height: calc(339 / 700 * 100vw);
    background: url("../../img/top/concept_deco03_sp.png");
    background-size: contain;
    right: calc(90 / 700 * 100vw);
    bottom: calc(180 / 700 * 100vw);
    z-index: 1;
  }
}
.concept .l_concept_text_block {
  margin-top: var(--size-60);
}
@media screen and (max-width: 768px) {
  .concept .l_concept_text_block {
    margin-top: calc(88 / 700 * 100vw);
  }
}
.concept .l_concept_text_block .c_title {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  line-height: 1.3043478261;
  font-size: 4.6rem;
}
@media screen and (max-width: 768px) {
  .concept .l_concept_text_block .c_title {
    font-size: calc(46 / 700 * 100vw);
    line-height: 1.5217391304;
  }
}
.concept .l_concept_text_block .c_text {
  font-size: 1.8rem;
  line-height: 2;
  margin-top: var(--size-30);
}
@media screen and (max-width: 768px) {
  .concept .l_concept_text_block .c_text {
    font-size: calc(30 / 700 * 100vw);
    line-height: 1.8666666667;
    margin-top: calc(35 / 700 * 100vw);
  }
}
.concept .l_primary-btn_block {
  margin-top: 60px;
}
@media screen and (max-width: 768px) {
  .concept .l_primary-btn_block {
    margin-top: calc(795 / 700 * 100vw);
  }
}
.concept .l_video_container {
  margin: 0 auto;
  position: relative;
  margin-top: 368px;
  max-width: 824px;
}
@media screen and (max-width: 768px) {
  .concept .l_video_container {
    margin-top: calc(240 / 700 * 100vw);
  }
}
.concept .l_video_container .c_top-video_heading {
  max-width: 536px;
  position: absolute;
  top: -109px;
  left: 153px;
  display: none;
}
.concept .l_video_block {
  display: flex;
  justify-content: center;
}
.concept .l_video_block .p_video {
  width: 100%;
  max-width: 824px;
  aspect-ratio: 16/9;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.4);
  position: relative;
}
.concept .l_video_block .p_video a {
  cursor: pointer;
}
.concept .l_video_block .p_video iframe {
  width: 100%;
  height: 100%;
  border: 0;
  display: block;
}
.concept .l_video_block .p_video video {
  position: absolute;
  inset: 0;
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.concept .l_video-link-btn_block {
  text-align: right;
  margin-top: 17px;
}
@media screen and (max-width: 768px) {
  .concept .l_video-link-btn_block {
    margin-top: calc(20 / 700 * 100vw);
  }
}
.concept .l_video-link-btn_block .p_video-link {
  display: inline-block;
}
.concept .l_video-link-btn_block .p_video-link a {
  cursor: pointer;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 220px;
  height: 54px;
  font-size: 1.7rem;
  line-height: 1.4705882353;
  border: 1px solid #000;
  border-radius: 32px;
}
@media screen and (max-width: 768px) {
  .concept .l_video-link-btn_block .p_video-link a {
    font-size: calc(24 / 700 * 100vw);
    line-height: 1.4583333333;
    width: calc(316 / 700 * 100vw);
    height: calc(56 / 700 * 100vw);
    border-radius: calc(39 / 700 * 100vw);
  }
}

.service {
  text-align: center;
  padding-bottom: var(--size-220);
}
@media screen and (max-width: 768px) {
  .service {
    padding-bottom: calc(140 / 700 * 100vw);
  }
}
.service .l_service_lead {
  margin-top: var(--size-45);
}
@media screen and (max-width: 768px) {
  .service .l_service_lead {
    margin-top: calc(30 / 700 * 100vw);
  }
}
.service .l_service_lead .p_lead {
  text-align: center;
  margin-bottom: var(--size-65);
  font-size: 1.8rem;
  line-height: 1.4444444444;
}
@media screen and (max-width: 768px) {
  .service .l_service_lead .p_lead {
    font-size: calc(26 / 700 * 100vw);
    line-height: 1.4230769231;
    margin-bottom: calc(33 / 700 * 100vw);
  }
}
.service .l_service_container {
  display: grid;
  grid-template-columns: repeat(4, 1fr);
}
@media screen and (max-width: 1200px) {
  .service .l_service_container {
    grid-template-columns: repeat(2, 1fr);
  }
}
.service .p_service_block {
  height: 663px;
  position: relative;
  color: #FFF;
}
@media screen and (max-width: 1200px) {
  .service .p_service_block {
    height: calc(828 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .service .p_service_block {
    height: calc(483 / 700 * 100vw);
  }
  .service .p_service_block .c_heading, .service .p_service_block .c_text, .service .p_service_block a {
    text-shadow: 0 0 var(--size-10) rgb(0, 0, 0);
  }
}
.service .p_service_block:before {
  content: "";
  position: absolute;
  inset: 0;
  background: rgba(75, 75, 75, 0.85);
  mix-blend-mode: multiply;
  pointer-events: none;
  position: absolute;
  top: 0;
  left: 0;
}
@media screen and (max-width: 768px) {
  .service .p_service_block:before {
    display: none;
  }
}
.service .p_service_block:hover .l_service_btn_block .p_service_btn a {
  background: #0c6d3a;
  border-color: #0c6d3a;
  color: #fff;
  opacity: 1;
  border: 1px solid #0c6d3a;
}
.service .p_service_block:hover .l_service_btn_block .c_heading, .service .p_service_block:hover .l_service_btn_block .c_text {
  text-shadow: 0 0 6px rgb(0, 0, 0);
}
.service .p_service_block:hover::before {
  opacity: 0;
}
.service .p_service_block._bpo {
  background: url("../../img/top/service01.png");
  background-repeat: no-repeat;
  background-size: cover;
}
.service .p_service_block._maintenance {
  background: url("../../img/top/service02.png");
  background-repeat: no-repeat;
  background-size: cover;
}
.service .p_service_block._insurance {
  background: url("../../img/top/service03.png");
  background-repeat: no-repeat;
  background-size: cover;
}
.service .p_service_block._local-services {
  background: url("../../img/top/service04.png");
  background-repeat: no-repeat;
  background-size: cover;
}
@media screen and (max-width: 768px) {
  .service .p_service_block._local-services {
    background: url("../../img/top/service04_sp.png");
    background-repeat: no-repeat;
    background-size: cover;
  }
}
.service .p_service_block .c_heading,
.service .p_service_block .c_text,
.service .p_service_block .l_service_btn_block {
  position: relative;
  z-index: 1;
}
.service .p_service_block .c_heading {
  font-size: 4.6rem;
  line-height: 1.2173913043;
  font-weight: 700;
  margin-top: 235px;
  display: flex;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 1300px) {
  .service .p_service_block .c_heading {
    font-size: 3.3846153846vw;
  }
}
@media screen and (max-width: 1200px) {
  .service .p_service_block .c_heading {
    margin-top: calc(290 / 1200 * 100vw);
    font-size: calc(57 / 1200 * 100vw);
    line-height: 1.2105263158;
  }
}
@media screen and (max-width: 768px) {
  .service .p_service_block .c_heading {
    font-size: calc(32 / 700 * 100vw);
    line-height: 1.21875;
    margin-top: calc(68 / 700 * 100vw);
  }
}
.service .p_service_block .c_text {
  max-width: 300px;
  margin: var(--size-20) auto var(--size-40);
  text-align: left;
  line-height: 1.4444444444;
  font-size: 1.8rem;
}
@media screen and (max-width: 1200px) {
  .service .p_service_block .c_text {
    font-size: calc(18 / 1200 * 100vw);
    max-width: calc(360 / 1200 * 100vw);
    margin: calc(26 / 1200 * 100vw) auto calc(67 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .service .p_service_block .c_text {
    font-size: calc(26 / 700 * 100vw);
    line-height: 1.4230769231;
    max-width: calc(290 / 700 * 100vw);
    margin: calc(33 / 700 * 100vw) auto calc(24 / 700 * 100vw);
  }
}
.service .p_service_block .l_service_btn_block .p_service_btn {
  text-align: center;
  display: inline-block;
}
.service .p_service_block .l_service_btn_block .p_service_btn a {
  color: #FFF;
  font-size: 1.8rem;
  font-weight: 700;
  display: flex;
  justify-content: center;
  align-items: center;
  width: 300px;
  height: 62px;
  border: 1px solid #FFF;
  border-radius: 63px;
  transition: background 0.3s ease, border-color 0.3s ease;
  position: relative;
}
@media screen and (max-width: 1200px) {
  .service .p_service_block .l_service_btn_block .p_service_btn a {
    font-size: calc(22 / 1200 * 100vw);
    width: calc(375 / 1200 * 100vw);
    height: calc(78 / 1200 * 100vw);
    border-radius: calc(63 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .service .p_service_block .l_service_btn_block .p_service_btn a {
    font-size: calc(19 / 700 * 100vw);
    width: calc(300 / 700 * 100vw);
    height: calc(62 / 700 * 100vw);
  }
}
.service .p_service_block .l_service_btn_block .p_service_btn a:after {
  content: "";
  display: block;
  width: 22px;
  height: 16px;
  background-image: url("data:image/svg+xml;utf8,            <svg xmlns='http://www.w3.org/2000/svg' width='21.637' height='16.065' viewBox='0 0 21.637 16.065'>            <path d='M24513.709,12.28a1.009,1.009,0,0,1,.3-1.385l8-5.226h-16.279a1,1,0,1,1,0-2h16.178l-7.9-5.164a1.007,1.007,0,0,1-.3-1.385,1.006,1.006,0,0,1,1.387-.289L24525.6,3.7a1.013,1.013,0,0,1,.758.966c0,.011,0,.023,0,.034s0,.023,0,.034a1.042,1.042,0,0,1-.16.548,1,1,0,0,1-.605.425l-10.5,6.863a.984.984,0,0,1-.543.163A1.014,1.014,0,0,1,24513.709,12.28Z'             transform='translate(-24504.723 3.333)' fill='%23fff'/>            </svg>");
  background-repeat: no-repeat;
  background-size: contain;
  background-position: center;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  right: 15px;
}
@media screen and (max-width: 1200px) {
  .service .p_service_block .l_service_btn_block .p_service_btn a:after {
    width: calc(24 / 1200 * 100vw);
    height: calc(18 / 1200 * 100vw);
    right: calc(15 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .service .p_service_block .l_service_btn_block .p_service_btn a:after {
    width: calc(16 / 700 * 100vw);
    height: calc(13 / 700 * 100vw);
  }
}
.service .p_service_block:hover .c_heading,
.service .p_service_block:hover .c_text {
  text-shadow: 0 0 6px rgb(0, 0, 0);
}
.service .l_primary-btn_block {
  display: inline-block;
  text-align: center;
  margin-top: var(--size-50);
}

.about-us {
  text-align: center;
  padding-top: var(--size-50);
  padding-bottom: var(--size-115);
  position: relative;
}
@media screen and (max-width: 1200px) {
  .about-us {
    padding-top: calc(73 / 1200 * 100vw);
    padding-bottom: calc(38 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .about-us {
    padding-top: calc(112 / 700 * 100vw);
    padding-bottom: calc(115 / 700 * 100vw);
  }
}
@media screen and (max-width: 1200px) {
  .about-us .l_inner {
    padding-left: 0;
    padding-right: 0;
  }
}
.about-us .l_primary-heading .p_primary-heading--ja {
  font-size: 2rem;
}
@media screen and (max-width: 1200px) {
  .about-us .l_primary-heading .p_primary-heading--ja {
    font-size: calc(20 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .about-us .l_primary-heading .p_primary-heading--ja {
    font-size: calc(26 / 700 * 100vw);
  }
}
.about-us:before {
  content: "";
  display: block;
  width: 94.7916666667vw;
  height: 850px;
  background-image: url("../../img/top/about-us_bg.png");
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  background-position: center;
  top: 0;
  right: 0;
  z-index: -1;
}
@media screen and (max-width: 1500px) {
  .about-us:before {
    height: 52.6666666667vw;
    background-image: url("../../img/top/about-us_bg-sp.png");
  }
}
@media screen and (max-width: 1200px) {
  .about-us:before {
    width: 88.3333333333vw;
    height: calc(785 / 1200 * 100vw);
    background-image: url("../../img/top/about-us_bg-sp.png");
  }
}
@media screen and (max-width: 768px) {
  .about-us:before {
    width: 100vw;
    background-image: url("../../img/top/about-us_bg-sp.png");
    height: calc(1081 / 700 * 100vw);
    background-repeat: no-repeat;
  }
}
.about-us .l_about-us_lead {
  margin: var(--size-30) auto;
}
@media screen and (max-width: 1200px) {
  .about-us .l_about-us_lead {
    margin: calc(30 / 1200 * 100vw) auto calc(56 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .about-us .l_about-us_lead {
    margin: calc(38 / 700 * 100vw) auto calc(73 / 700 * 100vw);
  }
}
.about-us .l_about-us_lead .p_lead {
  color: #FFF;
  font-size: 1.8rem;
  line-height: 1.4444444444;
}
.about-us .l_about-us_lead .p_lead .is-tb-only {
  display: none;
}
@media screen and (max-width: 1680px) {
  .about-us .l_about-us_lead .p_lead .is-tb-only {
    display: block;
  }
}
@media screen and (max-width: 768px) {
  .about-us .l_about-us_lead .p_lead {
    font-size: calc(26 / 700 * 100vw);
    line-height: 1.4230769231;
  }
}
.about-us .l_about-us-link_container {
  margin-right: -200px;
  position: relative;
}
@media screen and (max-width: 1720px) {
  .about-us .l_about-us-link_container {
    margin-right: -11.7647058824vw;
    width: 85.2941176471vw;
  }
}
@media screen and (max-width: 1500px) {
  .about-us .l_about-us-link_container {
    width: 100%;
    margin-right: 0;
  }
}
@media screen and (max-width: 1200px) {
  .about-us .l_about-us-link_container {
    padding-left: calc(100 / 1200 * 100vw);
    padding-right: calc(100 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .about-us .l_about-us-link_container {
    padding-left: calc(28 / 700 * 100vw);
    padding-right: 0;
  }
}
.about-us .l_about-us-link_container ul {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 768px) {
  .about-us .l_about-us-link_container ul {
    display: flex;
  }
}
.about-us .l_about-us-link_container ul li {
  position: relative;
  display: inline-flex;
}
@media screen and (max-width: 768px) {
  .about-us .l_about-us-link_container ul li {
    width: calc(550 / 700 * 100vw);
    width: calc(550 / 700 * 100vw);
    max-width: calc(550 / 700 * 100vw);
    flex: 0 0 auto;
    display: block;
  }
}
.about-us .l_about-us-link_container ul li:before {
  content: "";
  display: block;
  width: 100%;
  height: 100%;
  background: rgb(144, 144, 144);
  position: absolute;
  top: 0;
  left: 0;
  mix-blend-mode: multiply;
  pointer-events: none;
  transition: 0.3s;
}
.about-us .l_about-us-link_container ul li:hover:before {
  opacity: 0;
}
.about-us .l_about-us-link_container ul li:hover .c_link-text {
  text-shadow: 0 0 10px rgb(0, 0, 0);
}
.about-us .l_about-us-link_container ul li img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  border: 1px solid #FFF;
}
@media screen and (max-width: 768px) {
  .about-us .l_about-us-link_container ul li img {
    width: 100%;
    height: calc(366 / 700 * 100vw);
    display: inline-block;
    -o-object-fit: cover;
       object-fit: cover;
  }
}
.about-us .l_about-us-link_container ul li .c_link-text {
  font-size: 2.2rem;
  font-weight: 700;
  line-height: 1.4545454545;
  position: absolute;
  transform: translate(-50%, -50%);
  top: 50%;
  left: 50%;
  color: #FFF;
  cursor: pointer;
  transition: 0.3s;
}
@media screen and (max-width: 1200px) {
  .about-us .l_about-us-link_container ul li .c_link-text {
    font-size: calc(20 / 1200 * 100vw);
    width: 100%;
  }
}
@media screen and (max-width: 768px) {
  .about-us .l_about-us-link_container ul li .c_link-text {
    font-size: calc(28 / 700 * 100vw);
    line-height: 1.4285714286;
  }
}
.about-us .l_about-us-link_container ul li a:after {
  content: "";
  display: block;
  width: var(--size-50);
  height: var(--size-50);
  background-image: url("../../img/cmn/icon_arrow_circle_green.svg");
  background-repeat: no-repeat;
  background-position: center;
  background-size: contain;
  z-index: 1;
  position: absolute;
  bottom: 30px;
  right: 25px;
}
@media screen and (max-width: 1200px) {
  .about-us .l_about-us-link_container ul li a:after {
    width: calc(54 / 1200 * 100vw);
    height: calc(54 / 1200 * 100vw);
    bottom: calc(18 / 1200 * 100vw);
    right: calc(17 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .about-us .l_about-us-link_container ul li a:after {
    width: calc(88 / 700 * 100vw);
    height: calc(88 / 700 * 100vw);
    bottom: calc(30 / 700 * 100vw);
    right: calc(37 / 700 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .about-us .l_about-us-link_container ul li a {
    display: block;
    width: 100%;
  }
}
.about-us .l_about-us-link_container ul li a:hover {
  opacity: 1;
}
.about-us .l_about-us-link_container .l_primary-btn_block {
  position: absolute;
  top: -100px;
  right: 50px;
}
@media screen and (max-width: 1500px) {
  .about-us .l_about-us-link_container .l_primary-btn_block {
    right: 0;
  }
  .about-us .l_about-us-link_container .l_primary-btn_block .p_primary-btn a {
    width: 22.4vw;
  }
}
@media screen and (max-width: 1200px) {
  .about-us .l_about-us-link_container .l_primary-btn_block {
    display: none;
  }
}
@media screen and (max-width: 768px) {
  .about-us .l_about-us-link_container .l_primary-btn_block {
    display: block;
    position: initial;
    top: initial;
    right: initial;
    margin-top: calc(73 / 700 * 100vw);
  }
  .about-us .l_about-us-link_container .l_primary-btn_block .p_primary-btn a {
    width: 70.4285714286vw;
  }
}

.top-news {
  background: #0C6D3A;
}
.top-news .l_news_inner {
  padding: 1.9791666667vw 6.5104166667vw 1.9791666667vw 6.7708333333vw;
  display: flex;
}
@media screen and (max-width: 1200px) {
  .top-news .l_news_inner {
    display: block;
    padding: calc(86 / 1200 * 100vw) calc(110 / 1200 * 100vw) calc(54 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .top-news .l_news_inner {
    padding: calc(45 / 700 * 100vw) calc(30 / 700 * 100vw) calc(65 / 700 * 100vw);
  }
}
.top-news .l_news-heading_container {
  margin-right: var(--size-145);
}
@media screen and (max-width: 1200px) {
  .top-news .l_news-heading_container {
    display: flex;
    justify-content: space-between;
    margin-right: 0;
    margin-bottom: calc(53 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .top-news .l_news-heading_container {
    margin-bottom: var(--size-30);
  }
}
.top-news .l_news-heading_container .l_primary-heading {
  padding-left: var(--size-25);
}
@media screen and (max-width: 768px) {
  .top-news .l_news-heading_container .l_primary-heading .p_primary-heading {
    font-size: calc(60 / 700 * 100vw);
  }
}
.top-news .l_primary-btn_block {
  margin-top: var(--size-45);
}
@media screen and (max-width: 768px) {
  .top-news .l_primary-btn_block {
    margin-top: 0.5em;
  }
}

.contact {
  background: url("../../img/top/contact_bg.png");
  background-size: cover;
  background-repeat: no-repeat;
  text-align: center;
  padding: var(--size-70) 0 var(--size-90);
}
@media screen and (max-width: 1200px) {
  .contact {
    background: url("../../img/top/contact_bg_tb.png");
    background-size: cover;
    background-repeat: no-repeat;
    text-align: center;
    padding: calc(40 / 1200 * 100vw) 0 calc(70 / 1200 * 100vw);
  }
}
.contact .l_contact_container {
  margin-top: var(--size-70);
  display: flex;
  justify-content: center;
}
@media screen and (max-width: 768px) {
  .contact .l_contact_container {
    margin-top: calc(50 / 700 * 100vw);
    justify-content: flex-start;
    padding-left: calc(77 / 700 * 100vw);
  }
}
.contact .l_contact_container .p_contact_text {
  font-size: 1.6rem;
  color: #FFF;
  text-align: left;
  margin-bottom: var(--size-5);
  margin-left: var(--size-60);
}
@media screen and (max-width: 1200px) {
  .contact .l_contact_container .p_contact_text {
    font-size: calc(26 / 1200 * 100vw);
    line-height: 1.6923076923;
  }
}
@media screen and (max-width: 768px) {
  .contact .l_contact_container .p_contact_text {
    margin-left: 0;
    font-size: calc(26 / 700 * 100vw);
  }
}
.contact .l_contact_container .p_tel_num_wrap {
  display: flex;
}
@media screen and (max-width: 768px) {
  .contact .l_contact_container .p_tel_num_wrap {
    display: block;
  }
}
.contact .l_contact_container .p_tel_num_wrap a {
  color: #FFF;
  font-size: 5.8rem;
  font-family: "Roboto", sans-serif;
  font-optical-sizing: auto;
  font-style: normal;
  font-weight: 700;
  pointer-events: none;
  position: relative;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 1200px) {
  .contact .l_contact_container .p_tel_num_wrap a {
    font-size: calc(58 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .contact .l_contact_container .p_tel_num_wrap a {
    font-size: calc(63 / 700 * 100vw);
  }
}
.contact .l_contact_container .p_tel_num_wrap a:before {
  content: "";
  display: block;
  width: 48px;
  height: 48px;
  background: url("../../img/cmn/icon_tel_green.svg");
  margin-right: var(--size-10);
  background-repeat: no-repeat;
  background-size: contain;
}
@media screen and (max-width: 1200px) {
  .contact .l_contact_container .p_tel_num_wrap a:before {
    width: calc(48 / 1200 * 100vw);
    height: calc(48 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .contact .l_contact_container .p_tel_num_wrap a:before {
    width: calc(55 / 700 * 100vw);
    height: calc(55 / 700 * 100vw);
  }
}
.contact .l_contact_container .p_tel_num_wrap .c_note {
  text-align: left;
  font-size: 1.8rem;
  line-height: 1.4444444444;
  color: #FFF;
  margin-left: var(--size-15);
}
@media screen and (max-width: 1200px) {
  .contact .l_contact_container .p_tel_num_wrap .c_note {
    font-size: calc(18 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .contact .l_contact_container .p_tel_num_wrap .c_note {
    font-size: calc(24 / 700 * 100vw);
    margin-left: 0;
  }
}
.contact .l_primary-btn_block {
  text-align: center;
  margin-top: var(--size-10);
}
@media screen and (max-width: 1200px) {
  .contact .l_primary-btn_block {
    margin-top: calc(17 / 1200 * 100vw);
  }
}
@media screen and (max-width: 768px) {
  .contact .l_primary-btn_block {
    margin-top: calc(30 / 700 * 100vw);
  }
}
.contact .l_primary-btn_block .p_primary-btn {
  display: inline-block;
}
/*# sourceMappingURL=top.css.map */
