@charset "utf-8";
/* CSS Document */
body {font-size: clamp(8px,1.042vw,20px);
    font-family: "Noto Sans JP", sans-serif;font-weight: 400;margin: 0 auto;padding: 0;line-height: 1.8;-webkit-text-size-adjust: 100%;position: relative;color: #222;letter-spacing: 0.03em;inline-size: 100%;box-sizing: border-box;}
html {scroll-behavior: smooth;}
:target { scroll-margin-top: var(--h-size);}
main {inline-size: 100%;overflow: hidden;}
main.popup {margin-block-start: 0;font-size: 2.065vw;}
section {inline-size: 100%;position: relative;z-index: 1;}
img {border: none;vertical-align: middle;height: auto;}
a {text-decoration: none;cursor: pointer;display: block;}
ol,ul {padding-inline-start: 0;}
ol li,ul li{list-style-type: none;}
dd {margin-inline-start: 0;}
dl {margin-block: 0;}
em {font-style: normal;}
address {font-style: normal;}
*, *:before, *:after {box-sizing: border-box;}
/* チェック用 未入力時ハイライト*/
/*img[alt=""] { outline: 3px solid #c143c5; }*/
/*a[href=""] { outline: 3px solid #b3fff8; } */
/********************************* float **********************************************/
.c-both {clear: both;}
.left,.in_left {float: left;}
.right,.in_right {float: right;}
.center {display: block;margin-inline: auto;text-align: center;}
.table,.in_table {display: table;}
.table > dt,.table > dd,.in_table > dt,.in_table > dd {display: table-cell;}
/************* display *************/
.flex,.in_flex {display: flex;justify-content: space-between;flex-wrap: wrap;}
.flex3 {display: flex;justify-content: space-evenly;flex-wrap: wrap;}
.f_ar {justify-content: space-around;}
.re_flex {flex-direction: row-reverse;}
.db {display: block;}
.dib {display: inline-block;}
.df {display: flow-root;}
/************************************** inline-size ****************************************/
.inner {inline-size: min(1780px,92.7083333%);margin-inline: auto;}
.middle_inner {inline-size: min(1580px,82.2916667%);margin-inline: auto;}
.lower_inner {inline-size: min(1280px,66.66667%);margin-inline: auto;}
.small_inner {inline-size: min(1100px,57.29166667%);margin-inline: auto;}
.heading {inline-size: 100%;}
.half {inline-size: 50%;}
.sp {display: none;}
.pc {display: block;}
.ofh {overflow: hidden;}
.left_side,.right_side{inline-size:48%;}
/**************************************position**************************************/
.pr {position: relative;}
.pa {position: absolute;}
.pf {position: fixed;}
.vat {vertical-align: top;}
.vab {vertical-align: bottom;}
.vam {vertical-align: middle;}
.tal {text-align: left;}
.tar {text-align: right;}
.tac {text-align: center;}
.text44 {font-size: 2.2em;}
.text30 {font-size: 1.5em;}
.text26 {font-size: 1.3em;}
.text24 {font-size: 1.2em;}
.text22 {font-size: 1.1em;}
/************************************ color *******************************************/
:root {
--base-black1: #222;
--base-blue1: #51C0D0;
--base-blue2: #1FAEC3;
--base-blue3: #005AB7;
--base-blue4: #2DB4C8;
--base-blue5: #008092;
--base-blue6: #0B9EB3;
--base-blue7: #006d7d;
--base-navy1: #003973;
--base-l_blue1: #D2EDF0;
--base-l_blue2: #DBF1F4;
--base-gray1: #838383;
--h-size: 6em;
--list-size1: 37.5%;
--list-size2: 31%;
}
.size1 {inline-size: var(--list-size1);}
.size2 {inline-size: var(--list-size2);}
.size3 {inline-size:calc(100% - calc(var(--list-size1) + var(--list-size2)));}
/*黒*/
.bk1 {color: var(--base-black1);}
/*白*/
.wh {color: #FFF;}
.wh_bg {background-color: #FFF;}
/*青*/
.bl1 {color: var(--base-blue1);}
.bl2 {color: var(--base-blue2);}
.bl3 {color: var(--base-blue3);}
.bl4 {color: var(--base-blue4);}
.bl5 {color: var(--base-blue5);}
.bl6 {color: var(--base-blue6);}
.bl7 {color: var(--base-blue7);}
.bl1_bg {background-color: var(--base-blue1);}
.bl2_bg {background-color: var(--base-blue2);}
.bl3_bg {background-color: var(--base-blue3);}
.bl5_bg {background-color: var(--base-blue5);}
.bl6_bg {background-color: var(--base-blue6);}
.lbl1_bg {background-color: var(--base-l_blue1);}
.lbl2_bg {background-color: var(--base-l_blue2);}
.gr_bl1 {background: linear-gradient(to right, #51C0D0 0%, #0B9EB3 100%);-webkit-background-clip: text;background-clip: text;color: transparent;-webkit-text-fill-color: transparent;}
.gr_bl2 {background: linear-gradient(to right, #005AB7 0%, #003973 100%);-webkit-background-clip: text;background-clip: text;color: transparent;-webkit-text-fill-color: transparent;}
.more1_bg {background: linear-gradient(to bottom, #51C0D0, #00ADC5);}
.cover_bg {position: relative;overflow: hidden;z-index: 1;inline-size: max-content;color: #fff;}
.cover_bg:before {content: "";position: absolute;background: linear-gradient(to bottom, #51C0D0, #0B9EB3);inset: 0 auto 0 -100%;margin: auto;inline-size: 100%;block-size: 100%;z-index: -1;}
.cover_bg.active::before {inset: 0 auto 0 -100%;inset: 0 auto 0 0;transition: all 0.5s;}
.gr1_bg {background: linear-gradient(to right, #005AB7 0%, #0B9EB3 100%);}
.gr2_bg {background: linear-gradient(to bottom, #51C0D0, #005AB7);}
/* 紺 */
.nv1 {color: var(--base-navy1);}
/*灰*/
.gr1 {color: var(--base-gray1);}
/* 
.after_action1.gradient {background: linear-gradient(to right, #51C0D0 0%, #0B9EB3 100%);-webkit-background-clip: text;background-clip: text;color: transparent;-webkit-text-fill-color: transparent;}
.after_action2.gradient {background: linear-gradient(to right, #005AB7 0%, #003973 100%);-webkit-background-clip: text;background-clip: text;color: transparent;-webkit-text-fill-color: transparent;} */

.scale_img {transition: all 0.3s;}
.scale_link:hover .scale_img {transform: scale(1.1);}
a {opacity: 1;transition: all 0.25s}
span.error { display: block; color: #F03; font-size: 0.8em; }
/*************************************** font ****************************************/
.fb {font-weight: bold;}
.f5 {font-weight: 500;}
.fn {font-weight: normal;}
.itl {font-style: italic;}
.noto {font-family: "Noto Sans JP", sans-serif;}
.rbt {font-family: "Roboto Condensed", sans-serif;}
.tr_text {writing-mode: tb-rl;}
/************************************* js ****************************************/
.fade {opacity: 0;transition: all 1s;}
.fade.active {opacity: 1;}
.fade_in {opacity: 0;transition: all 1s;transform: translateY(2rem);}
.fade_in.active {opacity: 1;transform: translateY(0);}
.fade_in_right {opacity: 0;transition: all 0.5s;transform: translateX(-80%);}
.fade_in_right.active {opacity: 1;transform: translateX(0);}
.fade_in_left {opacity: 0;transition: all 0.5s;transform: translateX(80%);}
.fade_in_left.active {opacity: 1;transform: translateX(0);}
.action {transition: all 1s;}
.d025s {transition-delay: 0.25s !important;}
.d05s {transition-delay: 0.5s !important;}
.d075s {transition-delay: 0.75s !important;}
.d1s {transition-delay: 1s !important;}
.d125s {transition-delay: 1.25s !important;}
.d15s {transition-delay: 1.5s !important;}
.d175s {transition-delay: 1.75s !important;}
.d2s {transition-delay: 2s !important;}
.bound {opacity: 0;}
.bound.active {animation: bound 0.5s cubic-bezier(0.12, 0, 0.39, 0) 1 forwards;opacity: 1;}
@keyframes bound {0% {transform: scale(0.5);}50% {transform: scale(1.25);}100% {transform: scale(1);}}
.scale_in {transform: scale(0.5);transition: all 0.5s;opacity: 0}
.scale_in.active {transform: scale(1);opacity: 1;}
.bound_up {transition: 0.2s cubic-bezier(0.64, -0.42, 0, 2.96);transform-origin: bottom;}
.bound_up:hover {transform: scale(1.1);}
.bound_slide_left {opacity: 0;}
.bound_slide_left.active {-webkit-animation-name: boundleft;animation-name: boundleft;-webkit-animation-duration: 1s;animation-duration: 1s;-webkit-animation-delay: .8s;animation-delay: .8s;-webkit-animation-fill-mode: both;animation-fill-mode: both;opacity: 0;display: block;-webkit-backface-visibility:hidden;backface-visibility:hidden;}
        @-webkit-keyframes boundleft {
        0% {-webkit-transform: translateX(50%);transform: translateX(50%);opacity: 0;}
        30% {-webkit-transform: translateX(0px);transform: translateX(0px);opacity: 1;}
        37% {-webkit-transform: translateX(25px);transform: translateX(25px);opacity: 1;}
        43% {-webkit-transform: translateX(0px);transform: translateX(0px);opacity: 1;}
        53% {-webkit-transform: translateX(15px);transform: translateX(15px);opacity: 1;}
        68% {-webkit-transform: translateX(0px);transform: translateX(0px);opacity: 1;}
        100% {-webkit-transform: translateX(0px);transform: translateX(0px);opacity: 1;}
	}
.bound_slide_right {opacity: 0;}
.bound_slide_right.active {-webkit-animation-name: boundright;animation-name: boundright;-webkit-animation-duration: 1s;animation-duration: 1s;-webkit-animation-delay: .8s;animation-delay: .8s;-webkit-animation-fill-mode: both;animation-fill-mode: both;display: block;transition-delay: 5s ;-webkit-backface-visibility:hidden;backface-visibility:hidden;}
        @-webkit-keyframes boundright {
        0% {-webkit-transform: translateX(-50%);transform: translateX(-50%);opacity: 0;}
        30% {-webkit-transform: translateX(0px);transform: translateX(0px);opacity: 1;}
        37% {-webkit-transform: translateX(-25px);transform: translateX(-25px);opacity: 1;}
        43% {-webkit-transform: translateX(0px);transform: translateX(0px);opacity: 1;}
        53% {-webkit-transform: translateX(-15px);transform: translateX(-15px);opacity: 1;}
        68% {-webkit-transform: translateX(0px);transform: translateX(0px);opacity: 1;}
        100% {-webkit-transform: translateX(0px);transform: translateX(0px);opacity: 1;}
    }
.bound_slide_up {opacity: 0;}
.bound_slide_up.active {-webkit-animation-name: boundup;animation-name: boundup;-webkit-animation-duration: 1s;animation-duration: 1s;-webkit-animation-delay: .8s;animation-delay: .8s;-webkit-animation-fill-mode: both;animation-fill-mode: both;display: block;transition-delay: 5s ;-webkit-backface-visibility:hidden;backface-visibility:hidden;}
        @-webkit-keyframes boundup {
        0% {-webkit-transform: translateY(50%);transform: translateY(50%);opacity: 0;}
        30% {-webkit-transform: translateY(0px);transform: translateY(0px);opacity: 1;}
        37% {-webkit-transform: translateY(25px);transform: translateY(25px);opacity: 1;}
        43% {-webkit-transform: translateY(0px);transform: translateY(0px);opacity: 1;}
        53% {-webkit-transform: translateY(15px);transform: translateY(15px);opacity: 1;}
        68% {-webkit-transform: translateY(0px);transform: translateY(0px);opacity: 1;}
        100% {-webkit-transform: translateY(0px);transform: translateY(0px);opacity: 1;}
    }
.bound_slide_down {opacity: 0;}
.bound_slide_down.active {-webkit-animation-name: bounddown;animation-name: bounddown;-webkit-animation-duration: 1s;animation-duration: 1s;-webkit-animation-delay: .8s;animation-delay: .8s;-webkit-animation-fill-mode: both;animation-fill-mode: both;display: block;transition-delay: 5s ;-webkit-backface-visibility:hidden;backface-visibility:hidden;}
        @-webkit-keyframes bounddown {
        0% {-webkit-transform: translateY(-50%);transform: translateY(-50%);opacity: 0;}
        30% {-webkit-transform: translateY(0px);transform: translateY(0px);opacity: 1;}
        37% {-webkit-transform: translateY(-25px);transform: translateY(-25px);opacity: 1;}
        43% {-webkit-transform: translateY(0px);transform: translateY(0px);opacity: 1;}
        53% {-webkit-transform: translateY(-15px);transform: translateY(-15px);opacity: 1;}
        68% {-webkit-transform: translateY(0px);transform: translateY(0px);opacity: 1;}
        100% {-webkit-transform: translateY(0px);transform: translateY(0px);opacity: 1;}
        }
.text_action span { display: inline-block; opacity: 0;transform: translate(0) scale(5);display: table-cell;}
.text_action span.blank {padding-inline: 0.125em;}
.text_action.active span { animation: leftRight .25s forwards;display: table-cell;}
@keyframes leftRight {
	50% {
		transform: translate(0) scale(2.5);
		opacity: 1;
	}
	100% {
		transform: translate(0) scale(1);
		opacity: 1;
	}
}
.text_action span:nth-of-type(2) {animation-delay: .05s;}
.text_action span:nth-of-type(3) {animation-delay: .1s;}
.text_action span:nth-of-type(4) {animation-delay: .15s;}
.text_action span:nth-of-type(5) {animation-delay: .2s;}
.text_action span:nth-of-type(6) {animation-delay: .25s;}
.text_action span:nth-of-type(7) {animation-delay: .3s;}
.text_action span:nth-of-type(8) {animation-delay: .35s;}
.text_action span:nth-of-type(9) {animation-delay: .4s;}
.text_action span:nth-of-type(10) {animation-delay: .45s;}
.text_action span:nth-of-type(11) {animation-delay: .5s;}
.text_action span:nth-of-type(12) {animation-delay: .55s;}
.text_action span:nth-of-type(13) {animation-delay: .6s;}
.text_action span:nth-of-type(14) {animation-delay: .65s;}
.text_action span:nth-of-type(15) {animation-delay: .7s;}
.text_action span:nth-of-type(16) {animation-delay: .75s;}
.text_action span:nth-of-type(17) {animation-delay: .8s;}
.text_action span:nth-of-type(18) {animation-delay: .85s;}
.text_action span:nth-of-type(19) {animation-delay: .9s;}
.text_action span:nth-of-type(20) {animation-delay: .95s;}
.text_action span:nth-of-type(21) {animation-delay: 1.0s;}
.text_action span:nth-of-type(22) {animation-delay: 1.05s;}
.text_action span:nth-of-type(23) {animation-delay: 1.1s;}
.text_action span:nth-of-type(24) {animation-delay: 1.15s;}
.text_action span:nth-of-type(25) {animation-delay: 1.2s;}

.text_mask {
	color: transparent; /* 文字色は透明にして背景で塗る */
	-webkit-background-clip: text;
	background-clip: text;
	
	background-image: linear-gradient(90deg, var(--base-black1) 0%, var(--base-black1) 50%, transparent 50%, transparent 100%);
	background-size: 200% 100%;
	background-position: 100% 0;
	background-repeat: no-repeat;
}

.text_mask.active { animation: bg_reveal 1s linear forwards; }

@keyframes bg_reveal {
	from { background-position: 100% 0; }
	to   { background-position: 0% 0; }
}
.colorbox {position: relative;display: block;inline-size: fit-content;margin-block-end: 0.5em;}
.colorbox div.color {position: absolute;top: 0;left: 0;width: 100%;height: 100%;z-index: 2;background-color: var(--base-green1);box-sizing: border-box;}
.colorbox3 div.color2 {position: absolute;top: 0;left: 0;right: 0; width: 100%;height: 100%;z-index: 2;background-color: var(--base-green1);box-sizing: border-box;}
.colorbox span.text {display: inline-block;opacity: 0;line-height: 1em;padding: 0.3em 0.35em 0.4em 0.4em;font-weight: 500;letter-spacing: 0.05em;}
.colorbox3 span.text {display: inline-block;opacity: 0;line-height: 1em;font-weight: 500;}
/*********************************** common **************************************/
.ttl1 {font-size: 4.5em;font-style: italic;letter-spacing: 0.08em;font-weight: 900;line-height: 1em;margin-block: 0;position: relative;}
.ttl1 .small {font-size: 0.311em;font-style: normal;letter-spacing: 0.08em;font-weight: 600;}
.ttl1:after {content: "";position: absolute;clip-path: polygon(100% 0, 0 0, 0 100%);inline-size: 3.35em;block-size: 0.22em;background-color: var(--base-l_blue1);inset: 100% auto auto 0.025em;}
.ttl1.center:after {inset-inline: 0;margin-inline: auto;}
.ttl1 em.bl1,
.ttl1 em.bl3 {padding-inline-start: 0.05em;font-style: italic;}

.more1 {font-size: 1.6em;font-weight: 600;inline-size: fit-content;padding: 0.75em 5em 0.6em 4.25em;clip-path: polygon(8.5% 0%, 100% 0%, 91.5% 100%, 0% 100%);letter-spacing: 0.08em; position: relative;font-family: "Roboto Condensed", sans-serif;border-block: 1px solid transparent;transition: all 0.3s;}
.more1:hover {border-block-start: 1px solid var(--base-blue1);border-block-end: 1px solid #00adc5;background: linear-gradient(to bottom, #fff, #fff);transition: all 0.3s;color: var(--base-blue1);}
.more1:hover:before {content: "";position: absolute;inline-size: 1px;block-size: 107%;background-color: var(--base-blue1);inset: 0 1px 0 auto;transform: rotate(21.25deg);transform-origin: top;}
.more1:hover:after {content: "";position: absolute;inline-size: 1px;block-size: 118%;background-color: var(--base-blue1);inset: auto auto 0 1px;transform: rotate(21.25deg);transform-origin: bottom;}
.more1 .circle_i {font-size: 0.781em;inline-size: 1.6em;block-size: auto;aspect-ratio: 1;padding-block-start: 0.35em;box-sizing: border-box;border-radius: 50%;inset: 50% 2.75em auto auto;transform: translateY(-50%);padding-inline-start: 0.15em;transition: all 0.3s;}
.more1:hover i {background-color: var(--base-blue1);color: #fff;inset: 50% 2.25em auto auto;}
.more2 {font-size: 1.6em;font-weight: 600;inline-size: fit-content;position: relative;font-family: "Roboto Condensed", sans-serif;}
.more2 .circle_i {font-size: 0.875em;inline-size: 2.15em;block-size: auto;aspect-ratio: 1;padding-block-start: 0.6em;box-sizing: border-box;border-radius: 50%;padding-inline-start: 0.05em;}
/*********************************** BLOCK **************************************/
#header {z-index: 1;inset: 0 0 auto 0;padding-block-end: 0.35em;z-index: 3;block-size: var(--h-size);box-sizing: border-box;inline-size: min(1880px,98%);margin-inline: auto;}
#header:before {content: "";position: absolute;inline-size: 100%;block-size: 100%;background-color: #fff;z-index: 1;inset: 0;margin: auto;box-shadow: 0 0 0.25em #d6d6d6;}
#header .header_menu {display: none;position: fixed;inline-size: 100%;inset: 0;margin-inline: auto;z-index: 0;box-sizing: border-box;padding: 8.75em 4.5em 0em 8.5em;overflow-y: scroll;block-size: 100%;
background-image: url(../img/block/menu_bg.webp);background-repeat: no-repeat;background-position: right bottom;background-size: 18.75%;}
#header .header_menu ul.ul {margin-block: 0;}
#header .header_menu ul.ul li.list {margin-block-end: 4.25em;}
#header .header_menu ul.ul.size3 li.list {margin-block-end: 2.5em;}

#header .header_menu ul.ul li.list.tel {margin-block-end: 1.5em;}
#header .header_menu ul.ul li.list.tel .link2 {padding: 1.65em;clip-path: polygon(0 0, 100% 0%, 94.35% 100%, 0% 100%);border-block: 1px solid var(--base-blue3);border-inline-start: 1px solid var(--base-blue3);overflow: hidden;transition: all 0.3s;}
#header .header_menu ul.ul li.list.tel .link2:hover {background-color: var(--base-blue3);color: #fff;}
#header .header_menu ul.ul li.list.tel .link2:after {content: "";position: absolute;inline-size: 1px;block-size: 104%;background-color: var(--base-blue3);inset: 0 0px auto auto;transform: rotate(15deg);transform-origin: top;}
#header .header_menu ul.ul li.list.tel .text {font-size: 2.150em;line-height: 1;letter-spacing: 0.03em;font-weight: 900;padding-inline-start: 1.35em;}
#header .header_menu ul.ul li.list.mail .link2 {padding: 1.65em;clip-path: polygon(0 0, 100% 0%, 94.35% 100%, 0% 100%);border-block: 1px solid var(--base-blue1);border-inline-start: 1px solid var(--base-blue1);overflow: hidden;transition: all 0.3s;}
#header .header_menu ul.ul li.list.mail .link2:hover {background-color: var(--base-blue1);color: #fff;}
#header .header_menu ul.ul li.list.mail .link2:after {content: "";position: absolute;inline-size: 1px;block-size: 104%;background-color: var(--base-blue1);inset: 0 0px auto auto;transform: rotate(15deg);transform-origin: top;}
#header .header_menu ul.ul li.list.mail .text {font-size: 1.6em;line-height: 1.31111;letter-spacing: 0.03em;font-weight: 900;padding-inline-start: 2em;}
#header .header_menu ul.ul li.list.tel i ,
#header .header_menu ul.ul li.list.mail i {font-size: 1.8em;inline-size: 2.25em;block-size: auto;aspect-ratio: 1;padding-block-start: 0.65em;inset: 50% auto auto 0.35em;transform: translateY(-50%);transition: all 0.3s;}
#header .header_menu ul.ul li.list.tel:hover i {color: var(--base-blue3);background-color: #fff;}
#header .header_menu ul.ul li.list.mail:hover i {color: var(--base-blue1);background-color: #fff;}

#header .header_menu ul.ul li.list .a_link2 {letter-spacing: 0.07em;padding-block: 0.55em;inline-size: 92%;margin-inline-start: 0;box-sizing: border-box;}
#header .header_menu ul.ul li.list .a_link2 i {margin-inline-end: 0.35em;}
#header .site_logo {font-size: 1em;margin-inline-start: 2.5em;margin-block: 1em 0;inline-size: fit-content;z-index: 3;position: relative;}
#header .site_logo .logo {inline-size: min(367px,18.35em);}
#header .site_logo .site_name {margin-block: 0;font-size: 1.8em;letter-spacing: 0.03em;line-height: 1.1em;font-weight: normal;}
#header .site_logo .site_name .small1 {font-size: 0.611em;letter-spacing: 0.03em;font-weight: normal;line-height: 1.6em;}
#header .site_logo .site_name .small2 {font-size: 0.611em;letter-spacing: 0.045em;inline-size: fit-content;font-weight: normal;line-height: 1;margin-block-start: 0.5em;padding: 0.125em 0.45em 0.125em 0.45em;margin-inline-start: 0.125em;}
#header .site_logo .text_side {margin-inline-start: 0.875em;}
#header .site_logo .text_side .top {font-size: 1.126em;letter-spacing: 0.09em;font-style: italic;line-height: 1em;margin-block-end: 1%;}
#header .site_logo .text_side .middle {font-size: 2.065em;letter-spacing: 0.05em;line-height: 1em;}
#header .site_logo .text_side .bottom {font-size: 1.189em;margin-block-start: 1%;letter-spacing: 0.1em;line-height: 1em;}
#header .header_nav {inline-size: fit-content;}
#header #trans {inset: 2em 117% auto auto;z-index: 1;}
#header .pc_btn {inline-size: 25em;padding: 0.75em 1em 0 0;box-sizing: border-box;z-index: 4;position: relative;}
#header .pc_btn .contact_btn {box-sizing: border-box;text-align: center;inline-size: min(230px , 11.5em);}
#header .pc_btn .contact_btn a.db {padding-block: 0.95em;padding-inline-end: 0.35em;border: 1px solid var(--base-blue1);transition: all 0.3s;}
#header .pc_btn .contact_btn a.db:hover {background-color: #fff;color: var(--base-blue1);}
#header .pc_btn .contact_btn a.db .fa-envelope {font-size: 1.400em;margin-inline-end: 0.65em;}
#header .pc_btn .contact_btn a.db span.text {font-size: 1.4em;font-weight: 500;letter-spacing: 0.05em;}
#header .pc_btn .menu_btn {box-sizing: border-box;text-align: center;inline-size: min(230px , 11.5em);padding-block: 0.95em;padding-inline-start: 1.5em;border: 1px solid var(--base-blue3);cursor: pointer;transition: all 0.3s;}
#header .pc_btn .menu_btn:hover {background-color: #fff;color: var(--base-blue3);transition: all 0.3s;}
#header .pc_btn .menu_btn i {font-size: 1.4em;inset: 50% auto auto 0.95em;transform: translateY(-50%);}
#header .pc_btn .menu_btn:hover i {color: var(--base-blue3);}
#header .pc_btn .menu_btn.active .fa-bars {display: none;}
#header .pc_btn .menu_btn .fa-xmark {display: none;}
#header .pc_btn .menu_btn.active .fa-xmark {display: block;}
#header .pc_btn .menu_btn span.text {font-size: 1.4em;font-weight: 500;letter-spacing: 0.05em;}
.header_menu .ul {display: inline-block;vertical-align: text-top;}
.header_menu .ul .list .a_link {letter-spacing: 0.05em;display: block;inline-size: fit-content;line-height: 1.5em;font-size: 2.7em;transition: all 0.5s;font-style: italic;line-height: 1.5;transition: all 0.3s;}
.header_menu .ul .list .a_link:hover {opacity: 0.7;}
.header_menu .ul .list .a_link .rbt {font-weight: 900;letter-spacing: 0.08em;}
.header_menu .ul .list .a_link:after {content: "";position: absolute;clip-path: polygon(100% 0, 0 0, 0 100%);inline-size: 100%;block-size: 0.45em;background-color: var(--base-l_blue1);inset: 100% auto auto 0.025em;}
.header_menu .ul .list .a_link span.small {font-size: 0.37em;margin-inline-start: 2.45em;font-style: normal;vertical-align: middle;letter-spacing: 0.05em;transition: all0.3s;}
.header_menu .ul .list .a_link:hover span.small {color: var(--base-blue3);}
.header_menu .ul .in_ul {margin-block: 2.25em 2em;transform: translateX(-2px);}
.header_menu .ul .in_ul .in_list {margin-block-end: 0.35em;line-height: 1.75em;}
.header_menu .ul .in_ul .in_list .in_a_link {font-size: 1.1em;inline-size: fit-content;padding-inline: 0.175em 2.25em;padding-block-end: 0.4em;display: block;transition: all 0.5s;letter-spacing: 0.08em;transition: all 0.3s;;}
.header_menu .ul .in_ul .in_list .in_a_link:hover {color: var(--base-blue3);}
.header_menu .ul .in_ul .in_list .in_a_link .fa-angle-right {font-size: 0.818em;inline-size: 1.675em;block-size: auto;aspect-ratio: 1;padding-block-start: 0.35em;border-radius: 50%;padding-inline-start: 0.15em;margin-inline-end: 0.875em;}
.goog-te-gadget-simple .VIpgJd-ZVi9od-xl07Ob-lTBxed {display: inline-block;}
/*footer*/
#footer {padding-block: 1.75em 0;background-image: url(../img/block/footer_bg.png);background-repeat: no-repeat;background-size: 100%;background-position: center bottom;}
#footer .footer_ttl {margin-block: 0 3em;margin-block: 0;font-size: 1em;}

#footer .footer_ttl {font-size: 1em;margin-block: 1em;inline-size: fit-content;}
#footer .footer_ttl .logo {inline-size: min(367px,18.5em);margin-block-start: 0.35em;margin-inline-end: 0.75em;aspect-ratio: 367 / 80;}
#footer .footer_ttl .site_name {margin-block: 0;font-size: 1.8em;letter-spacing: 0.03em;line-height: 1.1em;font-weight: normal;}
#footer .footer_ttl .site_name .small1 {font-size: 0.611em;letter-spacing: 0.03em;font-weight: normal;line-height: 1.6em;}
#footer .footer_ttl .site_name .small2 {font-size: 0.611em;letter-spacing: 0.045em;inline-size: fit-content;font-weight: normal;line-height: 1;margin-block-start: 0.5em;padding: 0.125em 0.45em 0.125em 0.45em;margin-inline-start: 0.125em;}
#footer .ttl_side {inline-size: fit-content;margin-inline: auto;}
#footer .ttl_side img {inline-size: min(103px,5.15em);margin-inline-end: 0.75em;margin-block-start: 0.25em;}
#footer .ttl_side .address {margin-block-start: 1.25em;font-weight: 500;font-size: 0.950em;line-height: 2.1em;letter-spacing: 0.05em;}
#footer .ttl_side .mappin {font-size: 1.211em;margin-block-start: 0.1em;letter-spacing: 0.03em;}
#footer .ttl_side .mappin .fa-location-dot {margin-inline: -0.25em 0.25em;}
#footer .menu_side {inline-size: 44.875%;padding-inline-end: 2.75em;}
#footer .footer_nav {inline-size: 100%;margin-inline: auto;}
#footer .footer_nav [class^="ul"] .list {margin-block-end: 1.5em;}
#footer .footer_nav [class^="ul"] .list .link {font-weight: bold;letter-spacing: 0.08em;transition: all 0.3s;}
#footer .footer_nav [class^="ul"] .list .link:hover {color: #005AB7;}
#footer .footer_nav [class^="ul"] .list .link:before {content: "";position: absolute;inline-size: 0.5em;block-size: auto;aspect-ratio: 1;border-radius: 50%;background-color: var(--base-blue1);inset: 50% auto auto -1em;transform: translateY(-50%);}
#footer .footer_nav [class^="ul"] .list .in_ul {margin-block: 0.5em 2em;}
#footer .footer_nav [class^="ul"] .list .in_ul .in_list {margin-block-end: 0.5em;}
#footer .footer_nav [class^="ul"] .list .in_ul .in_list .in_link {font-size: 0.8em;transition: all 0.3s;}
#footer .footer_nav [class^="ul"] .list .in_ul .in_list .in_link:hover {color: #005AB7;}
#footer .copy {font-size: 0.950em;margin-block: 1.75em 0;padding-block: 1.75em 1.75em;font-weight: 600;letter-spacing: 0.05em;}

#scroll_top {inset: auto 2.875vw 9.1vw auto;z-index: 2;inline-size: fit-content;transform: skewX(-12deg);border: 0.1em solid var(--base-blue1);background-color: #fff;}
#scroll_top i {font-size: 2.125em;inline-size: 1.9em;box-sizing: border-box;padding-block-start: 0.4em;transform: skewX(12deg);block-size: 1.85em;}
/*top*/
#top_about {background-image: url(../img/top/top_about_bg1.webp), url(../img/top/top_about_bg2.webp);background-position: top right, center bottom 8em;background-size: 83.333333%, 100%;background-repeat: no-repeat;padding-block: 5em 4.5em;}
#top_about .column1 .ttl_side {margin-inline-start: 8.5%;}
#top_about .column1 .ttl_side .ttl1 {margin-block-end: 0.65em;}
#top_about .column1 .ttl_side .ttl1 .small {margin-inline-start: 2.05em;transform: translateY(-0.1em);display: inline-block;}
#top_about .column1 .ttl_side .text44 {margin-block: 0;font-weight: bold;line-height: 2.05em;letter-spacing: 0.08em;padding-inline-start: 0.1em;}
#top_about .column2 {margin-block-start: 3.25em;}
#top_about .column2 .img_side {inline-size: min(960px,50%);margin-block-start: 1em;}
#top_about .column2 .img_side .img {inline-size: min(960px,100%);aspect-ratio: 960 / 680;}
#top_about .column2 .img_side .tri1 {inline-size: min(820px,85.5%);aspect-ratio: 82 / 46;inset: 2em auto auto 0;clip-path: polygon(100% 0, 0 0, 0 100%);z-index: -1;}
#top_about .column2 .text_side {inline-size: 45.25%;}
#top_about .column2 .text_side .text26 {margin-block: 0;font-weight: 500;letter-spacing: 0.05em;line-height: 2.7em;}
#top_about .column2 .text_side .more1 {margin-block-start: 1.5em;}
#top_about .column3 {justify-content: center;gap: 4em 3.5%;margin-block-start: 4em;}
#top_about .column3 .flex_item {inline-size: min(486px,31%);background-image: url(../img/top/flex_item_bg1.webp);background-repeat: no-repeat;background-position: center top;background-size: cover;aspect-ratio: 486 / 367;padding: 0.65em 1em 1em 0.85em;box-sizing: border-box;}
#top_about .column3 .flex_item:nth-of-type(even) {background-image: url(../img/top/flex_item_bg2.webp);}
#top_about .column3 .flex_item .outer {clip-path: polygon(0 0, 100% 0%, 92.875% 100%, 0% 100%);}
#top_about .column3 .flex_item .outer .img {aspect-ratio: 45 / 24;inline-size: 100%;transition: all 0.3s;}
#top_about .column3 .flex_item:hover .outer .img {transform: scale(1.1);}
#top_about .column3 .flex_item .link_text {padding-inline-start: 1em;margin-block-start: 0.1em;display: block;font-weight: 600;letter-spacing: 0.08em;}
#top_about .column3 .flex_item .link_text:before {content: "";position: absolute;clip-path: polygon(100% 0, 0 0, 0 100%);inline-size: 1em;block-size: 1em;background-color: var(--base-blue1);inset: 0.125em auto auto 0;}
#top_about .column3 .flex_item:nth-of-type(even) .link_text:before {background-color: var(--base-blue3);}
#top_about .column3 .flex_item .link_text .small {font-size: 0.7em;font-weight: 600;line-height: 1;padding-inline-start: 1.25em;margin-block-start: 0.35em;letter-spacing: 0.05em;}
#top_about .column3 .flex_item .link_text .small:before {content: "";position: absolute;}
#top_about .column3 .flex_item .link_text .circle_i {font-size: 0.833em;inline-size: 1.6em;block-size: auto;aspect-ratio: 1;padding-block-start: 0.35em;box-sizing: border-box;border-radius: 50%;inset: 0.35em 2.5em auto auto;padding-inline-start: 0.15em;transition: all 0.3s;}
#top_about .column3 .flex_item:hover .link_text .circle_i {inset: 0.35em 2em auto auto;}
#top_about .item {aspect-ratio: 418 / 412;inset: 2.65em 4em auto auto;inline-size: min(418px,22%);}
#top_about .tri2 {inline-size: min(400px,21%);aspect-ratio: 1;block-size: auto;inset: auto 0 37.125% auto;clip-path: polygon(100% 0, 100% 100%, 0 100%);z-index: -1;}

#top_staff { background-image: url(../img/top/top_staff_bg.webp);background-repeat: no-repeat;background-position: center;background-size: cover;padding-block: 2em 4.75em;}
#top_staff .column .ttl1 {margin: 0.825em auto auto 1.875em;}
#top_staff .column .ttl1 .small {line-height: 2.35em;background-image: linear-gradient(90deg, #fff 0%, #fff 50%, transparent 50%, transparent 100%);}
#top_staff .column .ttl1:after {inset-block-start: calc(100% + 0.35em);background-color: #fff;}
#top_staff .column .cover {inline-size: 70.875%;margin-inline: auto 0;}
#top_staff .column .slide_side {padding-block-start: 3.35em;}
#top_staff .column .slide_side .list {inline-size: min(calc(412em / 20), 412px);inline-size: min(calc(480em / 20), 480px);padding-inline: 1.5em;}
#top_staff .column .slide_side .list .bg {inline-size: min(412px , 100%);}
#top_staff .column .slide_side .list [class^="staff_img"] {inset: auto 0 0.5em 0;margin-inline: auto;z-index: 1;block-size: min(336px,123%);inline-size: auto;}
#top_staff .column .slide_side .list .staff_img1 {transform: translateX(-0.5em);aspect-ratio: 380 / 336;}
#top_staff .column .slide_side .list .staff_img2 {transform: translateX(-1em);aspect-ratio: 260 / 336;}
#top_staff .column .slide_side .list .staff_img3 {transform: translateX(-1em);aspect-ratio: 300 / 336;}
#top_staff .column .slide_side .list .staff_img4 {transform: translateX(-1em);aspect-ratio: 290 / 336;}
#top_staff .column .slide_side .list .staff_img5 {transform: translateX(-1em);aspect-ratio: 300 / 336;}
#top_staff .more1 {margin-block-start: 1.65em;}

#top_news {background-image: url(../img/top/top_news_bg1.webp), url(../img/top/top_news_bg2.webp);background-position: top right, bottom left;background-size: 46.875%, 83.333333%;background-repeat: no-repeat;padding-block: 4em 4em;}
#top_news .inner {padding: 2em 16.125% 1.75em 16.125%;}
#top_news .column .ttl1 {transform: translateX(-0.05em);}
#top_news .column .ttl1 .small {margin-inline-start: 1.875em;}
#top_news .column .ttl1:after {content: "";position: absolute;}
#top_news .column .more2 {margin-block-start: 1em;}
#top_news .column .more2 .border {border-block-end: 1px solid var(--base-blue1);letter-spacing: 0.08em;transition: all 0.3s;}
#top_news .column .more2:hover .border {color: var(--base-blue3);}
#top_news .column .more2 .circle_i {margin-inline-start: 0.875em;transition: all 0.3s;}
#top_news .column .more2:hover .circle_i {transform: translateX(0.25em);}
#top_news .ul {margin-block-start: 2em;}
#top_news .ul .list .dl {border-block-end: 1px solid var(--base-l_blue1);padding-block: 1.45em;}
#top_news .ul .list .dl .dt {font-size: 1.1em;letter-spacing: 0.08em;inline-size: 7.5em;}
#top_news .ul .list .dl .dd {font-size: 1.1em;letter-spacing: 0.03em;font-weight: 500;}
#top_news .ul .list .dl .dd a {padding-inline-end: 1.5em;transition: all 0.3s;}
#top_news .ul .list .dl .dd a:hover {color: var(--base-blue3);}
#top_news .ul .list .dl .dd .fa-angle-right {inset: 50% 0 auto auto;transform: translateY(-50%);font-size: 1.273em;}
#top_news .staff_item1 {inset: auto auto 0 2.9em;aspect-ratio: 214 / 337;inline-size: min(214px,12%);}

#top_recruit {background-image: url(../img/top/top_recruit_bg.webp);background-repeat: no-repeat;background-position: center;background-size: cover;padding-block: 4.765em 5em;}
#top_recruit .column {padding-inline: 8.5%;}
#top_recruit .column .ttl1 {margin-block-start: 0.15em;}
#top_recruit .column .ttl1 .small {margin-inline-start: 1.95em;}
#top_recruit .column .ttl1:after {inset-block-start: calc(100% + 0.15em);}
#top_recruit .column .text44 {margin-block: 0 0;font-weight: 700;letter-spacing: 0.08em;line-height: 2.05em;padding-inline-end: 0.125em;}
#top_recruit .text_side {margin-inline-start: 8.75%;margin-block-start: 0.5em;inline-size: 41%;}
#top_recruit .text_side .text26 {line-height: 2.7em;letter-spacing: 0.05em;font-weight: 600;margin-block-end: 1.875em;inline-size: 102%;}
#top_recruit .text_side .link1 {font-size: 1.250em;inline-size: 18.8em;margin: 0 auto 0.75em 0;border: 2px solid var(--base-blue1);padding: 0.95em 0.75em 1.125em 0;font-weight: bold;letter-spacing: 0.08em;transition: all 0.3s;}
#top_recruit .text_side .link1:hover {background-color: var(--base-blue1);color: #fff;}
#top_recruit .text_side .link1:before {content: "";position: absolute;clip-path: polygon(100% 0, 0 0, 0 100%);inline-size: 2.05em;block-size: 2.05em;background-color: var(--base-blue1);inset: 0.3em auto auto 0.3em;transition: all 0.3s;}
#top_recruit .text_side .link1:hover:before {background-color: #fff;}
#top_recruit .text_side .link1 .circle_i {inline-size: 1.6em;block-size: auto;aspect-ratio: 1;padding-block-start: 0.35em;box-sizing: border-box;border-radius: 50%;inset: 50% 1.5em auto auto;padding-inline-start: 0.15em;transform: translateY(-50%);transition: all 0.3s;}
#top_recruit .text_side .link1:hover .circle_i {inset: 50% 1.25em auto auto;color: var(--base-blue1);background-color: #fff;}
#top_recruit .img_side {padding-block-start: 3em;inline-size: 50.125%;}
#top_recruit .img_side .img {aspect-ratio: 962 / 720;inline-size: min(962px,100%);}
#top_recruit .more1 {margin-block-start: 2.25em;}

#top_gallery {background-image: url(../img/top/top_gallery_bg1.webp), url(../img/top/top_gallery_bg2.webp);background-position: top right, bottom left;background-size: 13.0208333%, 21.6666667%;background-repeat: no-repeat;padding-block: 4.35em 5em;}
#top_gallery .ttl1 {margin-block-end: 1.575em;}
#top_gallery .ttl1 .small {margin-block-start: 0.1em;}
#top_gallery .ttl1:after {inset: calc(100% + 0.05em) 0 auto 0;margin-inline: auto;}
#top_gallery [class^="side_"] {inline-size: min(750px,48%);}
#top_gallery [class^="side_"] .text {margin-block: 0;font-size: 1.6em;inset: -1.55em auto auto -0.3em;padding: 0.35em 1.75em 0.35em 1em;clip-path: polygon(0 0, 100% 0%, 93.5% 100%, 0% 100%);z-index: 1;}
#top_gallery [class^="side_"] .text .em {font-weight: 800;letter-spacing: 0.08em;}
#top_gallery [class^="side_"] .text .fa-camera-movie {font-size: 1.125em;margin-inline-end: 0.65em;}
#top_gallery [class^="side_"] .text .fa-photo-film {font-size: 1.125em;margin-inline-end: 0.65em;}
#top_gallery [class^="side_"] .outer img {inline-size: min(730px,100%);aspect-ratio: 730 / 420;transition: all 0.3s;}
#top_gallery [class^="side_"]:hover .outer img {transform: scale(1.1);}
#top_gallery [class^="side_"] .circle_i {inline-size: 2em;block-size: auto;aspect-ratio: 1;padding-block-start: 0.5em;box-sizing: border-box;border-radius: 50%;inset: auto -0.8em -0.8em auto;font-size: 2em;transition: all 0.3s;}
#top_gallery [class^="side_"]:hover .circle_i {inset: auto -1.15em -0.8em auto;}
#top_gallery .side_movie {border: 0.5em solid var(--base-blue3);}
#top_gallery .side_photo {border: 0.5em solid var(--base-blue1);}
#top_gallery .item2 {inset: -9.5em auto auto 0;aspect-ratio: 448 / 452;inline-size: min(448px,24%);}
#top_gallery .staff_item2 {inset: -4em 11.1em auto auto;aspect-ratio: 296 / 324;inline-size: min(296px,16%);}

.page_contact {background-image: url(../img/block/bg1.webp);background-repeat: no-repeat;background-position: center;background-size: cover;padding-block: 4.35em 3.35em;}
.page_contact .middle_inner {padding-inline: 4%;}
.page_contact .ttl_side .ttl1 {margin-block-end: 0.9em;}
.page_contact .ttl_side .ttl1 .small {margin-inline-start: 1.9em;background-image: linear-gradient(90deg, #fff 0%, #fff 50%, transparent 50%, transparent 100%);vertical-align: bottom;}
.page_contact .ttl_side .ttl1:after {background-color: var(--base-blue1);inset-block-start: calc(100% + 0.15em);}
.page_contact .ttl_side .text26 {font-weight: bold;letter-spacing: 0.09em;line-height: 2.4em;font-size: 1.25em;}
.page_contact .link_side {inline-size: 42%;margin-block-start: 1.875em;}
.page_contact .link_side .link2 {padding: 1.75em;clip-path: polygon(0 0, 100% 0%, 94.5% 100%, 0% 100%);margin-block-end: 1.875em;transition: all 0.3s;}
.page_contact .link_side .link2.tel {padding-inline-start: 3.75em;}
.page_contact .link_side .link2.tel .text {font-size: 2.5em;line-height: 1;letter-spacing: 0.03em;font-weight: 900;}
.page_contact .link_side .link2.mail {padding-inline-start: 6em;}
.page_contact .link_side .link2.mail .text {font-size: 1.9em;line-height: 1.31111;letter-spacing: 0.03em;font-weight: 900;}
.page_contact .link_side .link2 i {font-size: 2em;inline-size: 2.25em;block-size: auto;aspect-ratio: 1;padding-block-start: 0.65em;inset: 50% auto auto 0.35em;transform: translateY(-50%);transition: all 0.3s;}
.page_contact .link_side .link2.tel:hover {background-color: var(--base-blue3);color: #fff;}
.page_contact .link_side .link2.mail:hover {background-color: var(--base-blue1);color: #fff;}
.page_contact .link_side .link2.tel:hover i {color: var(--base-blue3);background-color: #fff;}
.page_contact .link_side .link2.mail:hover i {color: var(--base-blue1);background-color: #fff;}

/*contact*/
#contact {padding-block: 2.875em 5.25em;}
#contact .top_column {padding-block-end: 3.5em;}
#contact .top_column .staff_item1 {inset: auto auto 0 5.5%;aspect-ratio: 364 / 438;inline-size: min(364px,19%);}
#contact .top_column .item1 {inset: auto 0.55% 3.85em auto;aspect-ratio: 414 / 376;inline-size: min(414px,21.5625%);}
#contact .top_column .p_1 {margin-block-end: 4em;font-size: 1.150em;line-height: 2.2em;letter-spacing: 0.05em;}
#contact .top_column .p_1:after {content: "";position: absolute;clip-path: polygon(100% 0, 0 0, 0 100%);inline-size: 12em;block-size: 0.9em;background-color: var(--base-l_blue1);inset: calc(100% + 2em) 0 auto 0;margin-inline: auto;}
#contact .box {margin-block-end: 1.5em;inline-size: 31.25%;}
#contact .box .text1 {font-size: 1.6em;font-weight: bold;letter-spacing: 0.08em;margin-block-end: 0.75em;}
#contact .box .link {padding: 1.65em 2.65em 1.65em 1.65em;clip-path: polygon(0 0, 100% 0%, 94.35% 100%, 0% 100%);border-block: 1px solid var(--base-blue3);border-inline-start: 1px solid var(--base-blue3);overflow: hidden;transition: all 0.3s;}
#contact .box .link:hover {background-color: var(--base-blue3);color: #fff;}
#contact .box .link:after {content: "";position: absolute;inline-size: 1px;block-size: 104%;background-color: var(--base-blue3);inset: 0 0px auto auto;transform: rotate(16deg);transform-origin: top;}
#contact .box .link .text {font-size: 2.5em;line-height: 1;letter-spacing: 0.03em;font-weight: 900;padding-inline-start: 1.35em;}
#contact .box .link i {font-size: 2em;inline-size: 2.25em;block-size: auto;aspect-ratio: 1;padding-block-start: 0.65em;inset: 50% auto auto 0.35em;transform: translateY(-50%);transition: all 0.3s;}
#contact .box .link:hover i {color: var(--base-blue3);background-color: #fff;}
#contact .middle_inner {inline-size: min(1580px,83%);}
#contact.conf {background-image: url(../img/contact/confirm_bg.png);padding-block: 2em 6em;}
#contact form {background-image: url(../img/contact/bg1.webp), url(../img/contact/bg2.webp);background-repeat: no-repeat;background-position: center top,center bottom;
background-size: 100%;margin-inline: auto;padding-block: 11.875em 11.25em;}
#contact.conf form {background-image: url(../img/contact/bg2.webp);background-position: center bottom;padding-block: 2.25em 11.25em;}
#contact form .text23 {font-size: 1.15em;margin-block: 3.15em 1.75em;letter-spacing: 0;}
#contact form .ttl1 {margin-block-end: 0.5em;}
#contact form .ttl1 .fit {font-size: 0.389em;letter-spacing: 0.05em;font-style: normal;padding-block-end: 0.5em;}
#contact form .ttl1 em.bl1 {padding-inline-start: 0;letter-spacing: 0.065em;}
#contact form .ttl1 .small {margin-inline-start: 2.35em;}
#contact form .ttl1:after {inset-block-start: calc(100% + 0.125em);inline-size: 3em;}
#contact .form_dl {margin-block: 0;padding: 1.75em 0;border-block-end: 1px solid var(--base-l_blue1);}
#contact .form_dl.conf {border-block-end: 2px solid #eee;}
#contact .form_dl:last-of-type {border-block-end: none;}
#contact .form_dl.conf:last-of-type {margin-block-end: 1.5em;border-block-end: none;}
#contact .form_dl.conf .form_dt {font-size: 0.947em;inline-size: 17.5em;font-weight: bold;}
#contact .form_dl.conf .form_dd {font-weight: bold;}
#contact .form_dl.conf .form_dt .h,
#contact .form_dl.conf .form_dt .n {font-size: 0.889em;padding: 6px 9px 7px 9px;}
#contact .form_dt {inline-size: 16.75em;padding-inline: 0.125em 1em;box-sizing: border-box;letter-spacing: 0.05em;padding-block-start: 1em;}
#contact .form_dt.pbs {padding-block-start: 1.25em;}
#contact .form_dt .h,
#contact .form_dt .n {font-size: 0.818em;margin-inline-end: 3.75em;float: right;padding: 5px 9px 7px 9px;line-height: 1em;letter-spacing: 0.05em;border: 1px solid var(--base-blue3);transform: translateY(0.35em);}
#contact.conf .form_dl {padding: 2.125em 0;}
#contact.conf .form_dt {padding-block-start: 0;}
#contact.conf .form_dd {padding-inline-start: 1.5em;vertical-align: middle;}
#contact .form_dd .memo {margin-block: 1em 0.5em;padding-inline-start: 0.125em;letter-spacing: 0.03em;font-size: 1em;}
#contact .form_dd input[type ="text"] {font-size: 1em; border: none;inline-size: 100%;padding: 0.95em 1.5em 1.2em 1.65em;box-sizing: border-box;letter-spacing: 0.03em;font-family: inherit;border-radius: 0;background-color: #eef9fb;}
#contact .form_dd input[type ="tel"] {font-size: 1em; border: none;inline-size: 100%;padding: 0.95em 1.5em 1.2em 1.65em;box-sizing: border-box;letter-spacing: 0.03em;font-family: inherit;border-radius: 0;background-color: #eef9fb;border-radius: 0.5em;}
#contact .form_dd textarea {font-size: 1em;border: none;inline-size: 100%;padding: 0.95em 1.5em 1.2em 1.65em;box-sizing: border-box;letter-spacing: 0.03em;background-color: #eef9fb;border: none;block-size: auto;aspect-ratio: 1210 / 260;resize: none;font-family: inherit;border-radius: 0;border-radius: 0.5em;}
#contact .send_btn input {padding: 1.125em 5.85em 1.25em 4.85em;appearance: none;letter-spacing: 0.05em;font-size: 1.3em;font-family: inherit;transition: all 0.3s;font-weight: 500;border: none;clip-path: polygon(8% 0%, 100% 0%, 92% 100%, 0% 100%);}
#contact .send_btn:hover input {opacity: 0.7;}
#contact .send_btn {inline-size: fit-content;margin-inline: auto;margin-block-start: 2em;}
#contact .send_btn .fa-angle-right {inset: 50% 2.65em auto auto;transform: translateY(-50%);font-size: 1.25em;transition: all 0.5s;inline-size: 1.6em;block-size: auto;aspect-ratio: 1;border-radius: 50%;text-align: center;box-sizing: border-box;padding-block-start: 0.3em;}
#contact .send_btn:hover .fa-angle-right {inset: 50% 2.15em auto auto;}
#contact .add_btn {inline-size: min(1000px,70%);margin-block: 2.5em 0;transform: translateX(-5px);}
#contact .add_btn .back {inline-size: 47.5%;box-sizing: border-box;padding: 0.8em 0 0.9em 1.5em;appearance: none;letter-spacing: 0.05em;font-size: 1.3em;font-weight: 600;transition: all 0.3s;clip-path: polygon(8% 0%, 100% 0%, 92% 100%, 0% 100%);border-block: 2px solid var(--base-blue1);font-family: "Noto Sans JP", sans-serif;}
#contact .add_btn .back:after {content: "";position: absolute;inline-size: 2px;block-size: 118%;background-color: var(--base-blue1);inset: auto auto 0 1px;transform: rotate(21.5deg);transform-origin: bottom;}
#contact .add_btn .back:before {content: "";position: absolute;inline-size: 2px;block-size: 118%;background-color: var(--base-blue1);inset: -2px 0px 0 auto;transform: rotate(21.5deg);transform-origin: top;}
#contact .add_btn .post {inline-size: 46.5%;box-sizing: border-box;padding: 0.75em 0.25em 0.95em 0;appearance: none;letter-spacing: 0.05em;font-size: 1.3em;font-weight: 600;transition: all 0.3s;clip-path: polygon(8% 0%, 100% 0%, 92% 100%, 0% 100%);border: none;font-family: "Noto Sans JP", sans-serif;}
#contact .add_btn .back:hover,
#contact .add_btn .post:hover {opacity: 0.7;}
#contact .add_btn .back .fa-angle-left {inset: 50% auto auto 3em;transform: translateY(-50%);font-size: 0.962em;transition: all 0.3s;inline-size: 1.6em;block-size: auto;aspect-ratio: 1;padding-block-start: 0.35em;border-radius: 50%;}
#contact .add_btn .post .fa-angle-right {inset: 50% 3em auto auto;transform: translateY(-50%);font-size: 0.962em;transition: all 0.3s;inline-size: 1.6em;block-size: auto;aspect-ratio: 1;padding-block-start: 0.35em;border-radius: 50%;}
#contact .add_btn .back:hover .fa-angle-left {inset: 50% auto auto 2.5em;}
#contact .add_btn .post:hover .fa-angle-right {inset: 50% 2.5em auto auto;}
/* page */
#page_fv {background-image: url(../img/block/page_fv.webp);background-repeat: no-repeat;background-position: center top;background-size: cover;margin-block-start: var(--h-size);padding-block: 2em 1.2em;}
#page_fv .page_ttl {font-size: 5em;font-style: italic;letter-spacing: 0.08em;font-weight: 900;line-height: 1.32;margin: 1.25em auto auto 1.7em;}
#page_fv .page_ttl span {font-style: italic;}
#page_fv .page_ttl .small {font-size: 0.32em;letter-spacing: 0.08em;font-weight: 600;font-style: normal;}
#page_fv .page_img {aspect-ratio: 1080 / 516;inline-size: min(1080px,56.5%);transform-origin: right;}
/* recruit */
#message {padding-block: 3.55em 5em;background-image: url(../img/recruit/message_bg_item1.webp);background-repeat: no-repeat;background-position: right top;background-size: 18.8020833%;z-index: 1;}
#message::before {content: "";position: absolute;aspect-ratio: 920 / 100;background-color: #90D1DA;inset: auto auto 0 0;clip-path: polygon(0 0, 0% 100%, 100% 100%);inline-size: 47.9166667%;block-size: auto;z-index: -1;}
#message::after {content: "";position: absolute;aspect-ratio: 1200 / 240;background-color: #D2EDF0;inset: auto 0 0 auto;clip-path: polygon(100% 0, 0% 100%, 100% 100%);inline-size: 62.5%;block-size: auto;z-index: -1;}
#message .ttl1 {margin-block-end: 0.88em;}
#message .ttl1 .small {padding-inline-start: 1em;margin-block-start: 0.075em;}
#message .ttl1:after {inset-block-start: 103%;inline-size: 3em;transform: translateX(0.125em);}
#message [class^="column"] .img_side {inline-size: min(900px,46.875%);padding-block-start: 0.95em;}
#message [class^="column"] .img_side .img {aspect-ratio: 9 / 5;inline-size: 100%;}
#message [class^="column"] .text_side .text24 {margin-block: 0 2.1em;line-height: 2.5em;font-weight: 500;letter-spacing: 0.05em;}
#message .column1 .img_side .img {clip-path: polygon(0 0, 100% 0%, 82.35% 100%, 0% 100%);}
#message .column1 .img_side .pa_text {margin-block: 0;inset: 76% auto auto 3.5em;}
#message .column1 .img_side .pa_text .text {margin-block-end: 0.25em;padding: 0.25em 0.5em 0.3em 0.65em;font-weight: 600;letter-spacing: 0.08em;line-height: 1.5;}
#message .column1 .text_side {inline-size: 47.35%;}
#message .column2 {margin-block-start: 2.6em;}
#message .column2 .img_side .img {clip-path: polygon(17.75% 0, 100% 0%, 100% 100%, 0% 100%);}
#message .column2 .text_side {inline-size: 39%;margin-inline-start: 6.25%;}
#message .column2 .text_side .text24 {margin-block-end: 1.7em;}
#message .column2 .text_side .name {font-size: 2em;letter-spacing: 0.05em;font-weight: bold;margin-block-start: 1.25em;}
#message .column2 .text_side .name .small {font-size: 0.825em;margin-inline-end: 1.25em;}
#message .item1 {aspect-ratio: 437 / 285;inset: 1.6em auto auto 0;inline-size: min(437px,23%);}

#voice {padding-block: 5em 0;background-image: url(../img/recruit/voice_bg.webp);background-repeat: no-repeat;background-position: center top;background-size: cover;z-index: 1;}
#voice:before {content: "";position: absolute;aspect-ratio: 1920 / 160;background-color: #FFF;inset: auto 0 0 0;clip-path: polygon(100% 0, 0% 100%, 100% 100%);inline-size: 100%;block-size: auto;z-index: -1;}
#voice .middle_inner {padding: 3.65em 10.9% 0.25em;clip-path: polygon(12.5% 0, 100% 0, 100% 100%, 0 100%, 0 13%);}
#voice .ttl1 {margin-block-end: 0.75em;}
#voice .ttl1 .small {margin-inline-start: 1.9em;}
#voice .ttl1:after {inline-size: 3em;inset-block-start: 98%;}
#voice .name {font-size: 1.7em;font-weight: 700;letter-spacing: 0.08em;padding-inline-start: 0.1em;margin-block-end: 1.5em;}
#voice .name .small {font-size: 0.735em;margin-inline-start: 0.35em;}
#voice .name .school {font-size: 0.647em;margin-inline-start: 2.25em;font-weight: 500;letter-spacing: 0.08em;}
#voice .dl {margin-block-end: 2.5em;}
#voice .dl .dt {font-weight: 600;letter-spacing: 0.08em;padding: 0.5em 1.35em 0.6em;clip-path: polygon(0 0, 100% 0%, 98.25% 100%, 0% 100%);margin-block-end: 0.7em;z-index: 1;}
#voice .dl .dt:before {content: "";position: absolute;inset:0 auto 0 -100%; background: linear-gradient(to right, #005AB7 0%, #0B9EB3 100%);transition: all 0.3s;block-size: 100%;inline-size: 100%;z-index: -1;}
#voice .dl .dt.active:before {inset:0 auto 0 0;}
#voice .dl .dd {line-height: 2.727em;letter-spacing: 0.045em;font-weight: 500;}
#voice .item2 {aspect-ratio: 796 / 360;inset: 2.9em 1% auto auto;inline-size: min(796px, 41.458%);}
.slide_bg {background-image: url(../img/recruit/slide_bg.webp);background-repeat: no-repeat;background-position: center bottom;background-size: 100%;padding-block: 0.5em 2.5em;}
.recruit_slide_side .list {inline-size: 22.9175%;}
.recruit_slide_side .list .img {aspect-ratio: 440 / 280;clip-path: polygon(15% 0, 100% 0%, 85% 100%, 0% 100%);inline-size: 100%;}

#requirements {padding-block: 4.55em 5em;background-image: url(../img/recruit/requirements_bg_item1.webp);background-size: 31.25%;background-repeat: no-repeat;background-position: top right;}
#requirements .ttl_side .ttl1 {margin-block-end: 0.88em;}
#requirements .ttl_side .ttl1:after {inline-size: 7.125em;inset-block-start: 108%;}
#requirements .ttl_side .set_text {color: #CE1E1E;font-size: 1.4em;font-weight: bold;letter-spacing: 0.08em;}
#requirements [class^="side_"] {inline-size: 48.11%;}
#requirements [class^="side_"] .dl .dt {inline-size: 6.363636em;border-block-end: 1px solid var(--base-blue3);padding-block: 1.45em 1.45em;letter-spacing: 0.05em;font-weight: 500;}
#requirements [class^="side_"] .dl .dd {border-block-end: 1px solid var(--base-l_blue1);padding-block: 1.45em 1.45em;padding-inline-start: 1.25em;letter-spacing: 0.05em;font-weight: 500;}
#requirements .staff_item1 {aspect-ratio: 353 / 354;inset: 2em auto auto 6%;inline-size: min(353px,18.5%);}

/* about */
#greeting {padding-block: 3.55em 0.1em;background-image: url(../img/about/greeting_bg2.webp), url(../img/about/greeting_bg1.webp);background-position: bottom right, right top;background-size: 68.4895833%, 20.15625%;background-repeat: no-repeat;}
#greeting .ttl1 {margin-block-end: 1.1em;}
#greeting .ttl1 .small {margin-block-start: 0.075em;padding-inline-start: 1em;}
#greeting .ttl1:after {inset-block-start: calc(100% + 0.06em);inline-size: 3em;transform: translateX(0.15em);}
#greeting .item1 {aspect-ratio: 426 / 328;inset: 0 auto auto 0;inline-size: min(426px,22.1875%);}
#greeting .item2 {aspect-ratio: 346 / 525;inset: auto auto -5.75em 0;inline-size: min(346px,18.021%);z-index: -1;}
#greeting [class^="column"] {margin-block-end: 4.875em;}
#greeting [class^="column"] .img_side {inline-size: min(900px,46.875%);}
#greeting [class^="column"] .img_side .img {inline-size: 100%;aspect-ratio: 900 / 500;}
#greeting [class^="column"] .text_side {inline-size: 41.875%;}
#greeting .column1 .img_side .img {clip-path: polygon(18% 0, 100% 0%, 100% 100%, 0% 100%);}
#greeting .column1 .text_side {margin-inline-start: 8.875%;}
#greeting .column2 {margin-block-end: 4em;}
#greeting .column2 .img_side .img {clip-path: polygon(0 0, 82% 0, 100% 100%, 0% 100%);}
#greeting .column2 .text_side {inline-size: 39.75%;margin-inline-end: 7.25%;}
#greeting .column3 .img_side .img {clip-path: polygon(18% 0, 100% 0%, 100% 100%, 0% 100%);}
#greeting .column3 .text_side {margin-inline-start: 8.875%;inline-size: 39.55%;}
#greeting .catch {margin-block: 0 0.825em;line-height: 1.6;font-weight: bold;letter-spacing: 0.05em;}
#greeting .catch .db {display: block;inline-size: fit-content;margin-block-end: 0.25em;padding: 0.45em 0.65em 0.55em 0.6em;letter-spacing: 0.08em;font-weight: 900;line-height: 1em;}
#greeting .catch .db:before {content: "";position: absolute;z-index: -1;inline-size: 100%;block-size: 100%;background: linear-gradient(to bottom, #51C0D0, #005AB7);inset: 0 auto 0 -100%;transition: all 0.3s;}
#greeting .catch .db.active:before {inset: 0 auto 0 0;}
#greeting .catch .db .space {padding-inline: 0.3em;}
#greeting .text24 {margin-block: 0;line-height: 2.9em;letter-spacing: 0.05em;font-weight: 500;}
#greeting .sub_ttl {margin-block: 0 0.65em;font-size: 1.5em;}
#greeting .sub_ttl span {display: block;padding: 0.35em 1em 0.5em 0.875em;letter-spacing: 0.08em;clip-path: polygon(0 0, 100% 0%, 98.25% 100%, 0% 100%);}
#greeting .sub_ttl span:before {content: "";position: absolute;z-index: -1;inline-size: 100%;block-size: 100%;background: linear-gradient(to right, #005AB7 0%, #0B9EB3 100%);inset: 0 auto 0 -100%;transition: all 0.3s;}
#greeting .sub_ttl span.active:before {inset: 0 auto 0 0;}

#policy {padding-block: 4em 4.5em;background-color: var(--base-navy1);background-image: url(../img/about/policy_bg.webp);background-position: top center;background-size: 100%;background-repeat: no-repeat;}
#policy .column {padding-inline: 8.75%;margin-block-end: 1.65em;}
#policy .ttl1 {margin-inline: 0;margin-block: 0.025em 0;line-height: 1.17em;line-height: 0.65em;}
#policy .ttl1 .small {line-height: 2.25em;margin-block-start: 0.55em;background-image: linear-gradient(90deg, #fff 0%, #fff 50%, transparent 50%, transparent 100%);}
#policy .ttl1:after {background-color: #fff;inset-block-start: calc(100% + 0.4em);}
#policy .policy_head {inline-size: 50.05%;margin-inline: 0;margin-block-end: 0;}
#policy .policy_head .list {font-size: 1.75em;font-weight: 900;letter-spacing: 0.08em;padding: 0.925em 1.35em 1em 1.2em;margin-block-end: 0.875em;clip-path: polygon(0 0, 100% 0%, 95% 100%, 0% 100%);}
#policy .policy_table {display: flex;flex-wrap: wrap;justify-content: space-between;padding: 1.5em 2.75em 1em 2.75em;box-sizing: border-box;border: 0.3em solid var(--base-blue1);}
#policy .policy_table .dl {inline-size: 48%;padding-block: 0.75em 1.35em;border-block-end: 1px solid var(--base-blue6);padding-inline-start: 4.45em;margin-block-end: 0.75em;}
#policy .policy_table .dl:nth-last-of-type(1),
#policy .policy_table .dl:nth-last-of-type(2) {border-block-end: none;}
#policy .policy_table .dt {font-weight: bold;letter-spacing: 0.08em;margin-block-end: 0.3em;}
#policy .policy_table .dt .num {inline-size: 1.675em;block-size: auto;font-size: 1.2em; line-height: 1em;text-align: center;font-weight: bold;inset: 0 auto auto -2.5em;aspect-ratio: 1;padding-block-start: 0.325em;}
#policy .policy_table .dd {letter-spacing: 0.05em;font-weight: bold;padding-inline-start: 0.05em;}

#attempt {padding-block: 4.2em 1em;background-image: url(../img/about/attempt_bg2.webp), url(../img/about/attempt_bg1.webp);background-position: right top,left top;background-size: 13.59375%, 34.375%;background-repeat: no-repeat, no-repeat;}
#attempt .ttl1 {margin-block-end: 1.15em;}
#attempt .ttl1:after {inset-block-start: calc(100% + 0.065em);}
#attempt .staff_item1 {aspect-ratio: 336 / 393;inset: -3.75em 7.35% auto auto;inline-size: min(336px,17.5%);}
#attempt .item3 {aspect-ratio: 309 / 380;inset: auto 0 8.35% auto;inline-size: min(309px,16.09375%);z-index: -1;}
#attempt .attempt_list {gap: 3em 3.5%;margin-block: 2.5em 3em;}
#attempt .attempt_item {inline-size: min(760px,48.1012658%);margin-block-end: 1.5em;}
#attempt .attempt_item .num_ttl {margin-block: 0;font-size: 2em;clip-path: polygon(0 0, 100% 0%, 91% 100%, 0% 100%);padding: 0.1em 0 0.1em 2em;inset: -0.75em auto auto 0;background: linear-gradient(to bottom, #51C0D0, #0B9EB3);z-index: 1;}
#attempt .attempt_item:nth-of-type(3) .num_ttl {clip-path: polygon(0 0, 100% 0%, 94% 100%, 0% 100%);}
#attempt .attempt_item:nth-of-type(4) .num_ttl {clip-path: polygon(0 0, 100% 0%, 95% 100%, 0% 100%);}
#attempt .attempt_item .num_ttl .num {font-size: 1.4em;font-weight: 700;position: absolute;inline-size: 2.1em;line-height: 1;block-size: 100%;clip-path: polygon(0 0, 100% 0%, 76% 100%, 0% 100%);inset: 0 auto 0 0;font-style: italic;padding: 0.25em 0 0 0.35em;letter-spacing: 0.05em;background: linear-gradient(to bottom, #FFF, #EAEAEA);}
#attempt .attempt_item .num_ttl .ttl {font-weight: bold;padding: 0.4em 1.25em;letter-spacing: 0.08em;}
#attempt .attempt_item .img {inline-size: 100%;aspect-ratio: 760 / 460;margin-block-end: 0.9em;clip-path: polygon(0 0, 100% 0%, 90.35% 100%, 0% 100%);}
#attempt .attempt_item .p_1 {margin-block: 0;line-height: 2.252em;letter-spacing: 0.05em;font-size: 1.150em;font-weight: 500;}
#attempt .attempt_note {padding: 2.65em 1.75em 0 1.75em;box-sizing: border-box;border: 3px solid var(--base-blue1);}
#attempt .attempt_note .ttl {font-weight: bold;letter-spacing: 0.08em;margin-block: 0;inset: -1.35em 0 auto 0;margin-inline: auto;inline-size: fit-content;background-color: #fff;padding-inline: 1.125em;}
#attempt .attempt_note .ttl .border {background: linear-gradient( to bottom, transparent 0%, transparent 70%, #D2EDF0 70%, #D2EDF0 90%, transparent 100% );font-size: 1.650em;font-weight: 900;letter-spacing: 0.08em;}
#attempt .attempt_note .ttl i {font-size: 2.700em;vertical-align: bottom;margin-inline-end: 0.3em;}
#attempt .attempt_note .p_2 {margin-block: 0 0.75em;line-height: 2.2em;font-size: 1.15em;font-weight: 600;letter-spacing: 0.05em;inline-size: 101%;}
#attempt .attempt_note .dl {padding-block: 1em;border-block-start: 1px solid var(--base-blue1);padding-inline-start: 5.875em;}
#attempt .attempt_note .dt {font-weight: bold;letter-spacing: 0.03em;margin-block-end: 0.125em;font-size: 1.25em;}
#attempt .attempt_note .dt .cicle_img {inset: 0.125em auto auto -4.65em;inline-size: min(90px,3.6em);aspect-ratio: 1;}
#attempt .attempt_note .dd {letter-spacing: 0.03em;font-size: 1.050em;font-weight: 500;letter-spacing: 0.05em;line-height: 1.7em;}

#map {padding-block: 4.75em 4em;background-color: #f2fdff;}
#map .ttl2 {margin-block: 0 4.75em;line-height: 3.75em;inline-size: fit-content;}
#map .ttl2 .span {background: linear-gradient(to left, #003973 0%, #51C0D0 100%);background-clip: border-box;-webkit-background-clip: text;background-clip: text;color: transparent;-webkit-text-fill-color: transparent;font-size: 4.478em;font-style: italic;font-weight: bolder;letter-spacing: 0.08em;}
#map .ttl2 .small {font-size: 3.284em;line-height: 1;letter-spacing: 0.08em;margin-block-start: 0.05em;}
#map .ttl2:after {content: "";position: absolute;background: linear-gradient(to left, #0B9EB3 0%, #51C0D0 100%);inline-size: 44.55em;block-size: 0.75em;clip-path: polygon(2% 0%, 100% 0%, 98% 100%, 0% 100%);inset: auto calc(100% + 5.5em) 1em auto;}
#map .ttl2:before {content: "";position: absolute;background: linear-gradient(to right, #0B9EB3 0%, #51C0D0 100%);inline-size: 44.55em;block-size: 0.75em;clip-path: polygon(0 0, 98% 0, 100% 100%, 2% 100%);inset: auto auto 1em calc(100% + 5.5em);}
#map .map_img {margin-block-end: 1.5em;}
#map .map_img .img {inline-size: 100%;aspect-ratio: 158 / 67;}
#map .map_list {gap: 1.5em calc(4% / 3);justify-content: flex-start;margin-block-start: 0;}
#map .map_list .list {inline-size: 24%;font-weight: 600;letter-spacing: 0.05em;display: flex;align-items: center;gap: 0.85em;font-size: 1.250em;}
#map .map_list .num {display: inline-flex;align-items: center;justify-content: center;inline-size: 1.75em;block-size: 1.75em;font-weight: bold;flex: none;font-size: 1.360em;}

#company {padding-block: 7.65em 5em;background-image: url(../img/about/company_bg2.webp), url(../img/about/company_bg1.webp);background-position: bottom center, top center;background-size: 100%, 100%;background-repeat: no-repeat;}
#company .ttl1 {margin-block-end: 0.5em;}
#company .ttl1 em.bl3 {padding-inline-start: 0;}
#company .ttl1 .small {margin-inline-start: 1.875em;font-weight: 700;}
#company .ttl1:after {inset: 97% auto auto 0;}
#company .company_table {margin-block-end: 2.5em;}
#company .company_table .side_left {inline-size: 48%;}
#company .company_table .side_right {inline-size: 48%;}
#company .company_table [class^="side_"] .dl {line-height: 1.75em;}
#company .company_table .side_right .dl {line-height: 1.5em;}
#company .company_table [class^="side_"] .dt {font-weight: 500;letter-spacing: 0.05em;border-block-end: 1px solid var(--base-blue1);inline-size: 6.3636em;padding-block: 1.6em;}
#company .company_table [class^="side_"] .dd {font-weight: 500;letter-spacing: 0.05em;border-block-end: 1px solid var(--base-l_blue1);padding: 1.6em 1.25em;}
#company .company_img {margin-block: 3.5em;}
#company .company_img [class^="img"] {inline-size: min(950px,49.48%);aspect-ratio: 950 / 470;}
#company .company_img .img1 {clip-path: polygon(0 0, 100% 0, 91.5% 100%, 0 100%);}
#company .company_img .img2 {clip-path: polygon(8.5% 0, 100% 0, 100% 100%, 0 100%);}
#company .google_map .ttl {padding-block: 0.25em 0.3em;font-weight: bold;letter-spacing: 0.08em;margin-block: 0 0.5em;font-size: 1.7em;clip-path: polygon(0 0, 100% 0, 98.25% 100%, 0 100%);}
#company .google_map iframe {display: block;aspect-ratio: 158 / 44;block-size: auto;inline-size: 100%;}
#company .item4 {aspect-ratio: 600 / 388;inset: -5.25em 4.15% auto auto;inline-size: min(600px,31.25%);}

#history {padding-block: 4.35em 4.5em;background-color: #f4faf9;background-image: url(../img/about/history_bg.webp);background-position: top center;background-size: 100%;background-repeat: no-repeat;}
#history .item5 {aspect-ratio: 415 / 385;inset: -2.75em auto auto 0;inline-size: min(415px,21.6145833%);}
#history .staff_item2 {aspect-ratio: 363 / 379;inset: 2.75em 5% auto auto;inline-size: min(363px, 18.90625%);}
#history .ttl1 {margin-block-end: 0.875em;}
#history .ttl1 .small {margin-block-start: 0.05em;}
#history .ttl1:after {inset-block-start: calc(100% + 0.065em);}
#history .history_list {inline-size: min(1200px,62.5%);margin-inline: auto;}
#history .history_list .list {padding-inline-start: 1em;}
#history .history_list .list .dl {font-weight: bold;letter-spacing: 0.05em;}
#history .history_list .list .dl .dt {font-size: 1.5em;inline-size: 5.333em;padding-block-end: 1.65em;}
#history .history_list .list .dl .dt::after {content: "";position: absolute;inline-size: 0.1em;block-size: 100%;background-color: var(--base-blue1);inset: auto 0 0 0;margin-inline: auto;z-index: -1;}
#history .history_list .list .dl .dt .year {font-weight: bold;letter-spacing: 0.05em;padding-block: 0.35em 0.5em;line-height: 1.125;margin-block: 0;}
#history .history_list .list .dl .dt .year .small {font-size: 0.7333em}
#history .history_list .list .dl .dd {line-height: 2.25em;font-weight: 500;letter-spacing: 0.05em;font-size: 1.15em;padding-inline: 2.05em 1em;padding-block-end: 1.65em;}
#history .history_list .list .dl .dd .img {margin-block: 0.15em 2em;aspect-ratio: 950 / 440;}
#history .history_list .list:last-of-type .dl .dt,
#history .history_list .list:last-of-type .dl .dd {padding-block-end: 0;}
#history .history_list .list:last-of-type .dl .dd .img:last-of-type {margin-block-end: 0;}
/* gallery */
#movie {padding-block: 3.875em 12em;background-image: url(../img/gallery/movie_bg1.webp), url(../img/gallery/movie_bg2.webp);background-position: top right, bottom center;background-size: 25.0520833%, 100%;background-repeat: no-repeat;}
#movie .ttl1 {margin-block-end: 2em;margin-block-end: 1.1875em;}
#movie .ttl1:after {inset-block-start: calc(100% + 0.075em);inline-size: 3.05em;}
#movie .movie_list {margin-inline: auto;gap: 2em 2%;}
#movie .movie_item {inline-size: min(480px,30.5%);}
#movie .movie_item .video {inline-size: 100%;aspect-ratio: 480 / 360;display: block;block-size: auto}
#movie .staff_item1 {aspect-ratio: 273 / 343;inset: -1.2em auto auto 5.125em;inline-size: min(273px,14.219%);}

#photo {padding-block: 4.35em 4.5em;background-image: url(../img/gallery/photo_bg1.webp);background-position: bottom 5em center;background-size: 100%;background-repeat: no-repeat;}
#photo .ttl1 {margin-block-end: 1.175em;}
#photo .ttl1:after {inset-block-start: calc(100% + 0.075em);inline-size: 3.05em;}
#photo .photo_list {margin-inline: auto;gap: 2.5em calc(11% / 3);}
#photo .photo_list .list {inline-size: min(350px,22.25%);}
#photo .photo_list .list .img {inline-size: 100%;aspect-ratio: 350 / 260;}
#photo .item1 {aspect-ratio: 456 / 421;inset: 1.875em auto auto 0;inline-size: min(456px,23.75%);z-index: -1;}
#photo .staff_item2 {aspect-ratio: 374 / 382;inset: -3.35em 6.35em auto auto;inline-size: min(374px,19.4791667%);}

/* lightbox */
body.lightbox_open {overflow: hidden;}
#lightbox {inset: 0;z-index: 100;display: none;}
#lightbox.active {display: block;}
#lightbox .lightbox_bg {position: absolute;inset: 0;background-color: rgba(0,0,0,0.85);}
#lightbox .lightbox_inner {inset: 50% 0 auto 0;margin: auto;inline-size: min(1200px,84%);block-size: fit-content;max-block-size: 86vh;transform: translateY(-50%);}
#lightbox .lightbox_img {inline-size: 100%;block-size: auto;max-block-size: 86vh;object-fit: contain;display: block;margin-inline: auto;}
#lightbox button {appearance: none;border: none;background: none;color: #fff;cursor: pointer;padding: 0;}
#lightbox .lightbox_close {position: absolute;inset: 0 0 auto auto;font-size: 2em;}
#lightbox .lightbox_close:hover {color: var(--base-blue1);}
#lightbox .lightbox_prev,
#lightbox .lightbox_next {position: absolute;inset-block-start: 50%;transform: translateY(-50%);font-size: 2.5em;padding: 0.25em;}
#lightbox .lightbox_prev:hover,
#lightbox .lightbox_next:hover {color: var(--base-blue1);}
#lightbox .lightbox_prev {inset-inline-start: -1.75em;}
#lightbox .lightbox_next {inset-inline-end: -1.75em;}

/* staff */
#staff_list {padding-block: 4em 4em;background-image: url(../img/staff/staff_bg.webp);background-position: right top;background-size: auto 100%;background-repeat: no-repeat;}
#staff_list .ttl_deco {font-size: 2.3em;font-weight: bold;letter-spacing: 0.08em;margin-block: 0 3.5em;}
#staff_list .ttl_deco:after {content: "";position: absolute;clip-path: polygon(100% 0, 0 0, 0 100%);inline-size: 5.875em;block-size: 0.425em;background-color: var(--base-l_blue1);inset: calc(100% + 0.6em) 0 auto 0;margin-inline: auto;}
#staff_list .ttl_deco .box {inline-size: fit-content;margin-inline: auto;padding-inline: 1.25em 1.05em;padding-block-start: 0.125em;}
#staff_list .ttl_deco .box:before {content: "";position: absolute;inline-size: 0.875em;block-size: auto;aspect-ratio: 1;background-color: var(--base-blue1);inset: 0 auto auto -0.025em;clip-path: polygon(0 0, 0% 100%, 100% 0);}
#staff_list .ttl_deco .box:after {content: "";position: absolute;inline-size: 0.875em;block-size: auto;aspect-ratio: 1;background-color: var(--base-blue1);inset: 0 0 auto auto;clip-path: polygon(0 0, 100% 100%, 100% 0);}
#staff_list .staff_photo_list {inline-size: min(1380px,71.875%);margin-inline: auto;gap: 6.75em calc(8.695% / 2);justify-content: flex-start;}
#staff_list .staff_photo_list .list {inline-size: min(420px,30.435%);background-image: url(../img/staff/staff_list_bg1.webp);aspect-ratio: 420 / 280;block-size: auto;background-size: cover;background-repeat: no-repeat;background-position: center;}
#staff_list .staff_photo_list .list:nth-of-type(even) {background-image: url(../img/staff/staff_list_bg2.webp);}
#staff_list .staff_photo_list .list [class*="_img"] {margin: auto;inset: auto 0 0.5em 0;transition: all 0.3s;}
#staff_list .staff_photo_list .list [class^="on_img"] {opacity: 0;}
#staff_list .staff_photo_list .list:hover [class^="off_img"] {opacity: 0;}
#staff_list .staff_photo_list .list:hover [class^="on_img"] {opacity: 1}
#staff_list .staff_photo_list .list .on_img1 {transform: translateX(-0.65em);aspect-ratio: 290 / 336;inline-size: min(290px,69.0476190%);}
#staff_list .staff_photo_list .list .on_img2 {transform: translateX(-0.65em);aspect-ratio: 300 / 336;inline-size: min(300px,71.4285714%);}
#staff_list .staff_photo_list .list .on_img3 {transform: translateX(-1em);aspect-ratio: 360 / 336;inline-size: min(360px,85.7142857%);}
#staff_list .staff_photo_list .list .on_img4 {transform: translateX(-0.25em);aspect-ratio: 300 / 336;inline-size: min(300px,71.4285714%);}
#staff_list .staff_photo_list .list .on_img5 {transform: translateX(-1.45em);aspect-ratio: 360 / 336;inline-size: min(360px,85.7142857%);}
#staff_list .staff_photo_list .list .off_img1 {transform: translateX(-0.25em);aspect-ratio: 380 / 336;inline-size: min(380px,90.4761905%);}
#staff_list .staff_photo_list .list .off_img2 {transform: translateX(-0.75em);aspect-ratio: 260 / 336;inline-size: min(260px,61.9047619%);}
#staff_list .staff_photo_list .list .off_img3 {transform: translateX(-0.875em);aspect-ratio: 300 / 336;inline-size: min(300px,71.4285714%);}
#staff_list .staff_photo_list .list .off_img4 {transform: translateX(-0.65em);aspect-ratio: 290 / 336;inline-size: min(290px,69.0476190%);}
#staff_list .staff_photo_list .list .off_img5 {transform: translateX(-1.1em);aspect-ratio: 300 / 336;inline-size: min(300px,71.4285714%);}
#staff_list .item1 {aspect-ratio: 390 / 326;inset: 1.25em auto auto 0;inline-size: min(390px,21%);}

/* news */
#news_list {padding-block: 3.5em 2.5em;background-image: url(../img/news/news_bg1.webp), url(../img/news/news_bg2.webp);background-position: top right, bottom left;background-size: 17.1875%;background-repeat: no-repeat;background-color: #F4FEFF;}
#news_list .news_list {margin-inline: auto;inline-size: min(1380px,71.875%);}
#news_list .news_list .list:after {content: "";position: absolute;inline-size: 4em;block-size: auto;aspect-ratio: 1;background-color: var(--base-blue1);inset: auto 0.5em 0.5em auto;clip-path: polygon(0 100%, 100% 100%, 100% 0);}
#news_list .news_list .list {margin-block-end: 3em;box-shadow: 0.25em 0.25em 0 var(--base-l_blue2);}
#news_list .news_list .list .box {padding: 2em 5.5em 2.5em 5.5em;clip-path: polygon(8% 0, 100% 0, 100% 100%, 0 100%, 0 7%);}
#news_list .news_list .time {display: block;font-size: 1.3em;margin-block-end: 0.25em;letter-spacing: 0.05em;}
#news_list .news_list .ttl {font-weight: bold;letter-spacing: 0.05em;line-height: 1.7;margin-block: 0 1.5em;border-block-end: 1px solid var(--base-l_blue1);padding-block-end: 0.875em;font-size: 1.4em;inline-size: 101%;}
#news_list .news_list .img {inline-size: min(900px,80%);aspect-ratio: 900 / 506;margin-block-end: 1.5em;}
#news_list .news_list .text22 {margin-block: 0;letter-spacing: 0.05em;line-height: 1.8;font-weight: 500;}













