@charset "utf-8";

/*キャリア 数字用*/
@import url('https://fonts.googleapis.com/css2?family=Roboto:ital,wght@0,100..900;1,100..900&display=swap');



/* ---------------------------------------------------------
■ ヘッダー～MV
--------------------------------------------------------- */

.header_mv{
	background-image: url("../images/mv_bk.svg");
	background-repeat: no-repeat;
	background-size: 100%;
	position: relative;
}

header{
	position: absolute;
	width:100%;
	top:0;
	left:0;
	z-index:10;
}

.header_box{
	display:flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	padding:2rem 1.5rem;
	margin: auto;
}

.header_logo{
	width:25rem;
}

.mv_area{
	aspect-ratio:16 / 11.5;
	width:100%;
	height:auto;
	overflow:hidden;
	position:relative;
}

.mv_img01{
	position: absolute;
	width:85vw;
	max-width:1400px;
	top:0;
	right:50%;
}

.mv_img_title{
	position: absolute;
	width:55vw;
	top:18%;
	right:6rem;
	filter: drop-shadow(2px 2px 5px rgba(0,0,0,.5));
}

.mv_img_comment{
	position: absolute;
	width:59vw;
	bottom:12.5%;
	right:12rem;
}

@media screen and (min-width:1550px) {
	.mv_img01{width:70vw;max-width:none;right:59%;}
	.mv_img_title{top:12%;width:63vw;}
	.mv_img_comment{bottom:22.5%;width:60vw;filter: drop-shadow(2px 2px 5px rgba(0,0,0,.5));}
}

@media screen and (max-width:767px) {
	.header_mv{background-size:150%;background-position:50% 10%}
	.header_box{padding:1rem;}
	.mv_img01{width:110vw;right:42%;}
	.header_logo{width:13rem;}
	.mv_area {aspect-ratio:16 / 13;}
	.mv_img_title{top:15.5%;width:68vw;right:1.5rem;}
	.mv_img_comment {bottom:6%;right:-1rem;width:81vw;filter: drop-shadow(2px 2px 5px rgba(0,0,0,.5));}
}

@media screen and (max-width:520px) {
	.mv_area{aspect-ratio:1 / 1.1;}
	.mv_img01 {width:121vw;top:1rem;right:39%;}
	.mv_img_title {top:19.5%;width:76vw;right:.8rem;}
	.mv_img_comment{width:101vw;bottom:8%;}
	
}

/* ---------------------------------------------------------
■ POINT
--------------------------------------------------------- */

.point_area{
	position:relative;
	z-index:5;
}

.point_box{
	display:flex;
	flex-wrap: wrap;
	justify-content:center;
	gap:3vw;
	margin-top:-8rem;
	margin-bottom:-7rem;
}

.point_box img{
	width:24vw;
	filter: drop-shadow(2px 2px 5px rgba(0,0,0,.5));
}

@media screen and (min-width:1550px) {
	.point_box{margin-top:-22rem;}
}

@media screen and (max-width:767px) {
	.point_box{margin-top:-1rem;margin-bottom:-8rem;}
	.point_box img{width:36vw;}
	.point_box img[src*="3"]{width:66vw;}
}

@media screen and (max-width:580px) {
	.point_box {margin-bottom:-11rem;}
	.point_box img{width:45vw;}
	.point_box img[src*="3"]{width: 90vw;}
}
@media screen and (max-width:520px) {
	.point_box {margin-top:-1.25rem;}
}


/* ---------------------------------------------------------
■ さなる とは
--------------------------------------------------------- */

.about_area{
	background:linear-gradient(to bottom,#0065c1 27%,#579ad6);
	position:relative;
}
.about_area::before,.about_area::after{
	content:"";
	display:block;
	position:absolute;
	top:0;
	left:0;
	width: 100%;
	height:15rem;
	background-color:#0065c1;
	
}
.about_area::before{transform: skewY(-3deg);}
.about_area::after{transform: skewY(3deg);}

.about_box{
	position:relative;
	display: flex;
	flex-wrap: wrap;
	padding:25rem 0 0;
	overflow: hidden;
}
.about_box::after{
	content:"";
	display:block;
	position:absolute;
	bottom:-8rem;
	left:0;
	width: 100%;
	height:16rem;
	background-color:#fff;
	transform:skewY(-4deg);
	z-index: 6;
}

.about_text{
	margin: auto;
	width:50%;
	padding:0 5rem 20rem 18rem;
}
.about_text h2{
	text-align:left;
	color:#fff;
	font-size:min(10rem,75px);
	font-weight:600;
	transform: skewX(-8deg);
	line-height:1.2em;
	padding-bottom:min(2rem,20px);
}
.about_text h2 span{
	font-size:80%;
}
.about_text p{
	line-height:1.7em;
	color:#fff;
	font-size:min(2.6rem,20px);
	padding-bottom:min(5rem,40px);
}

.about_img{
	position: relative;
	width:50%;
	z-index: 4;
}
.about_img img{
	position: absolute;
	right:-3rem;
	bottom:5rem;
	max-width:980px;
	width:110%;
}

@media screen and (min-width:1550px) {
	.about_img img{bottom:1rem;}
	.about_text{padding:0 5rem 20rem 14rem;}
	.about_text h2{font-size:8rem;}
	.about_text p{font-size:2rem;}
}

@media screen and (max-width:1200px) and (min-width:768px) {
	.about_text {padding: 0 0 20rem 10rem;}
	.about_img img{right: -10rem;}
}

@media screen and (max-width:767px) {
	.about_area::before, .about_area::after{height:6rem;}
	.about_box{padding:14rem 0 0;}
	.about_box::after{bottom:-5.5rem;height:8rem;}
	.about_text{width:100%;padding: 0 2rem 0;}
	.about_text h2{font-size:min(5rem,75px);}
	.about_text p{font-size:min(1.6rem,17px);line-height: 1.85em;padding-bottom:min(3rem,36px);}
	.about_text p:last-child{padding-bottom:0;}
	
	.about_img{width:90%;margin-left:auto;margin-top:-6rem;}
	.about_img img{position:relative;bottom:-6rem;right:0;}
}

@media screen and (max-width:580px) {
	.about_img img{bottom:-4.5rem;}
}

@media screen and (max-width:520px) {
	.about_box {padding:14.5rem 0 0;}
	.about_text h2{font-size:6rem;padding-bottom:1.25rem;}
	.about_img{width:98%;margin-top:-5rem;}
}





/* ---------------------------------------------------------
■ キャリア
--------------------------------------------------------- */

.career_title{
	margin: auto;
	width:80vw;
	max-width:1100px;
	padding:8rem 0 6rem;
}

.career_inner{
	display: flex;
	flex-wrap: wrap;
	background-color:#0061b8;
}
.career_inner.last{
	padding-bottom: 10rem;
}

.career_inner_text{
	width:54%;
	display: flex;
	flex-wrap: wrap;
	padding:0 6rem;
	margin: auto 0;
	justify-content: flex-end;
}

.career_inner_texthead{
	display: flex;
	flex-wrap: wrap;
	padding-bottom:2rem;
}
.career_inner_num{
	font-size:14rem;
	font-family: "Roboto", sans-serif;
	font-optical-sizing: auto;
	font-weight:400;
	font-style: normal;
	font-variation-settings:"wdth" 100;
	color:#fff;
	letter-spacing:-0.04em;
	padding-right:1.8rem;
	line-height:.85;
}
.career_inner_texthead h3{
	color:#fff;
	font-size:3.8rem;
	font-weight:600;
	letter-spacing:0.04em;
	margin:auto 0 0;
	text-align:left;
	line-height:1.2em;
}

.career_inner_textmain{
	text-align:left;
	color:#fff;
	line-height: 1.7em;
    font-size: min(2.4rem, 17px);
}

.career_inner_img{
	width:46%;
	position:relative;
	overflow: hidden;
}

.career_inner_img::after{
	position: absolute;
	content:"";
	height:100%;
	width:12rem;
	top:0;
	left:-6rem;
	transform:skewX(-10deg);
	background-color:#0061b8;
	z-index: 5;
}


.career_inner.rtl{
	background-color:#1e2b72;
	flex-direction:row-reverse;
}
.rtl .career_inner_img::after{
	left:auto;
	right:-6rem;
	transform:skewX(10deg);
	background-color:#1e2b72;
}

.rtl .career_inner_text{
	justify-content:flex-start;
}

.career_inner_single{
	width:90%;
	margin: auto;
}

.career_inner_link{
	padding:8rem 0 2rem;
}

.career_inner_link a{
	display:inline-block;
	position: relative;
	background-color:#fff;
	font-size:4rem;
	border-radius:10rem;
	color:#1e2b72;
	font-weight:600;
	letter-spacing:0.05em;
	padding:0.45rem 14rem;
	cursor:pointer;
	filter: drop-shadow(2px 2px 7px rgba(0, 0, 0, .3));
}
.career_inner_link a::before{
	position: absolute;
	content:"";
	top:50%;
	transform:translateY(-50%);
	right:2rem;
	background: #fff;
	height:3.4rem;
    width:2.6rem;
	clip-path: polygon(0 0, 100% 50%, 0 100%);
	z-index:2;
}
.career_inner_link a::after{
	position: absolute;
	content:"";
	top:50%;
	transform:translateY(-50%);
	right:1rem;
	color:#fff;
	aspect-ratio:1 / 1;
	height:80%;
	width:auto;
	line-height:1.5em;
	background-color:#1e2b72;
	border-radius:50%;
}

.career_inner_article{
	padding:7.5rem 0 10rem;
}

.career_inner_chart{
	max-width:1150px;
	margin: auto;
}

.career_inner_offh4{
	width:55%;
	margin: auto;
	padding-bottom:2rem;
}

.career_inner_off{
	display:flex;
	flex-wrap: wrap;
	margin: auto;
	justify-content: center;
	padding:2rem 0;
}
.career_inner_off > div{
	width:8rem;
	background-color:#fff;
	color:#0061b8;
	font-size:2rem;
	font-weight:600;
	display:flex;
	flex-wrap: wrap;
}
.career_inner_off > div span{
	margin:auto;
}
.career_inner_off > ul{
	display:flex;
	flex-wrap: wrap;
	padding-left: 1.5rem;
}
.career_inner_off > ul li{
	font-size:min(2.8rem,21px);
	letter-spacing:0.05em;
	color:#fff;
	font-weight:600;
}
.career_inner_off > ul li::after{
	content:"/";
	padding:0 1rem;
}
.career_inner_off > ul li:last-child::after{
	content:none;
}

.career_inner_holiday ul{
	display:flex;
	flex-wrap: wrap;
	padding-left: 1.5rem;
	max-width:1400px;
	margin:auto;
}

.career_inner_holiday > ul li{
	font-size:min(2.8rem,21px);
	color:#fff;
}
.career_inner_holiday > ul li::after{
	content:"/";
	padding:0 1rem;
}
.career_inner_holiday > ul li:last-child::after{
	content:" など";
}

.career_inner_note{
	color:#fff;
	text-align: right;
	font-size:2rem;
}

@media screen and (min-width:1550px) {
	.career_inner_chart{max-width: 1400px;}
}

@media screen and (min-width:1550px) {
	.career_inner_textmain{font-size:1.8rem;}
}

@media screen and (max-width:1200px) and (min-width:768px) {
	.career_inner_off > div{font-size:3rem;}
	.career_inner_offh4 {width: 70%;}
	.career_inner_off > ul li {font-size:3.3rem;}
	.career_inner_holiday ul{padding-bottom:2rem;}
	.career_inner_holiday > ul li{font-size:3rem;}
}

@media screen and (max-width:767px) {
	.career_title{width:93vw;padding:2rem 0;}
	
	.career_inner{position:relative;}
	.career_inner_text{width:100%;padding:1.4rem 0 18rem;}
	.career_inner_textwrap{padding:0 2rem;z-index:3;}
	.career_inner_num{font-size:8rem;padding-right:0;padding-bottom:.5rem;}
	.career_inner_texthead{padding-bottom:1rem;}
	.career_inner_texthead h3{font-size:2.4rem;}
	.career_inner_textmain{position:relative;font-size:min(1.6rem,17px);width:75%;background-color:#0061b8;padding:0 .8rem 0 0;}
	.career_inner_textmain::before{content:"";display:block;position:absolute;bottom:-1.99rem;left:0;height:2rem;width:calc(100% - 2rem);background-color:#0061b8;}
	.career_inner_textmain::after{
		content:"";display:block;position:absolute;bottom:-2.01rem;right:0.02rem;height:0;width:0;
		border-top:1.01rem #0061b8 solid;
		border-left:1.01rem #0061b8 solid;
		border-right:1.01rem rgba(255,255,255,0) solid;
		border-bottom:1.01rem rgba(255,255,255,0) solid;
	}
	.career_inner_img{position:absolute;bottom:0;right:0;width:81%;margin-left:auto;}
	.career_inner_img::after{content:none;}
	

	.rtl .career_inner_textwrap{display:flex;flex-wrap:wrap;justify-content:flex-end;}
	.rtl .career_inner_texthead{justify-content:flex-end;}
	.rtl .career_inner_texthead h3{text-align:right;}
	.rtl .career_inner_textmain{background-color:#1e2b72;padding: 0 0 .5rem .8rem;}
	.rtl .career_inner_textmain::before {left:auto;right:0;background-color:#1e2b72;}
	.rtl .career_inner_textmain::after{
		right:auto;left:0.02rem;
		border-top: 1.01rem #1e2b72 solid;
        border-left: 1.01rem rgba(255, 255, 255, 0) solid;
        border-right: 1.01rem #1e2b72 solid;
	}
	.rtl .career_inner_img{right:auto;left:0;}

	
	.career_inner_article {padding: 4.5rem 0 6rem;}
	.career_inner_link {padding: 3rem 0 0;}
	.career_inner_link a {font-size:2rem;padding:0.35rem 5rem;letter-spacing:0;}
	.career_inner_link a::before{width:1.3rem;height:1.8rem;right:1.1rem;}
	.career_inner_link a::after{right:.7rem;height: 70%;}
	
	.career_inner_offh4{width:100%;max-width:550px;}
	
	.career_inner_off > div{width:10%;font-size:1.2rem;}
	.career_inner_off > ul{width:90%;}
	.career_inner_off > ul li{font-size:1rem;}
	.career_inner_off > ul li::after{padding: 0 .4rem;}
	
	.career_inner_holiday ul{padding-left:0;}
	.career_inner_holiday ul li{font-size:1.1rem;}
	.career_inner_holiday > ul li::after {padding: 0 .4rem;}
	.career_inner_note{font-size:.9rem;}
	
	.career_inner.last{padding-bottom:3rem;}
}

@media screen and (max-width:520px) {
	.career_title{width:87vw;padding:6rem 0 3rem;}
	.career_inner_text{padding:3.4rem 0 18rem;}
	.career_inner_textwrap{padding:0 3rem;}
	.career_inner_texthead h3{font-size:4rem;}
	.career_inner_textmain{width:95%;}
	.career_inner_textmain::after{border-width:1.5rem;right:-1rem;bottom:-2.01rem;}
	.rtl .career_inner_textmain::after{border-width:1.5rem;left:-1rem;}
	
	.career_inner_link a{font-size:2.5rem;padding:0.35rem 5.5rem;}
	.career_inner_link a::before{width:1.7rem;height:2.2rem;}
	
	.career_inner_offh4{width:88%;}
	.career_inner_off > div{width:50%;font-size:1.6rem;}
	.career_inner_off > ul{padding:.65rem 0 0;width:100%;}
	.career_inner_off > ul li{font-size:1.45rem;}
	.career_inner_holiday ul li{font-size:1.3rem;}
	.career_inner_note{font-size:1.1rem;padding-top:.5rem;}
}



/* ---------------------------------------------------------
■ キャリアpath
--------------------------------------------------------- */

.path_box{
	position: relative;
	padding-top:14rem;
}

.path_box::before{
	content:"";
	position: absolute;
	top:0;
	left:0;
	width:0;
	height:0;
	border-top:26rem #1e2b72 solid;
	border-bottom:26rem rgba(255,255,255,0) solid;
	border-left:13rem #1e2b72 solid;
	border-right:13rem rgba(255,255,255,0) solid;
}


.path_h2area{
	line-height:0;
	background:linear-gradient(to right,rgba(255,255,255,0) 50%,#1e2b72 50%);
	text-align: center;
}
.path_h2area img{
	width:68%;
}

.path_start_index{
	width:58%;
	margin: auto;
	padding:7rem 0 13rem;
}
.path_start_index p{
	font-size:2.3rem;
	padding-bottom:3rem;
	font-weight:600;
	color:#333;
}
.path_start_index p:last-child{
	padding-bottom:0;
}

.path_start_h3{
	margin:auto;
	width:50%;
	padding:0 0 6rem;
}

.path_start_h3 p{
	font-size:4rem;
	line-height:1.2em;
	color:#333;
	font-weight:600;
	text-align:center;
	padding-bottom:1rem;
}

.path_start_img{
	display:flex;
	flex-wrap:wrap;
	justify-content:center;
	width:80%;
	margin: auto;
}

.path_start_img img{margin-bottom:auto;}

.path_start_img img[src*="01"]{width:32.5%;}
.path_start_img img[src*="02"]{width:30%;margin-left:1%;}
.path_start_img img[src*="03"]{width:36.5%;margin-left:-1.5%;}

.path_start_change{
	position:relative;
	width:45%;
	margin:5rem auto;
	padding:.5rem 2rem;
	font-size:4.2rem;
	line-height:1.2em;
	color:#333;
	font-weight:600;
	text-align:center;
}
.path_start_change::before{
	content:"";
	position: absolute;
	display: block;
	top:0;
	left:0;
	width:100%;
	height:100%;
	background-color:#e7ff00;
	transform: skewX(-18deg);
	z-index:-1;
}


.path_box02{
	padding:15rem 0 10rem;
}

.path_ex{
	padding-bottom:15rem;
}

.path_ex_h3area {
    line-height: 0;
    background: linear-gradient(to right, #1e2b72 50%,rgba(255, 255, 255, 0) 50%);
    text-align: center;
	margin-bottom:8rem;
}
.path_ex_h3area img{
	width:55%;
	margin-right:5%;
}

.path_ex_inner{
	margin: auto;
	width:80%;
	padding:3rem 0 10rem;
	max-width:1100px;
}

.path_ex_img{
}

.path_ex_title{
	padding-bottom:2rem;
}

.path_ex_title h4{
	text-align:left;
	display: flex;
	flex-wrap: wrap;
}
.path_ex_title h4 span:nth-child(1){
	position: relative;
	font-size: 7rem;
	font-size:min(7rem,50px);
	line-height:1em;
	letter-spacing:-0.07em;
    font-family: "Roboto", sans-serif;
	color:#fff;
	padding:0 2.2rem;
	margin: auto 0 auto 2.5rem;
}
.path_ex_title h4 span:nth-child(1)::before{
	position:absolute;
	content:"";
	top:0;
	left:-2.5rem;
	display: block;
	width:1.6rem;
	height:100%;
	background-color:#1e2b72;
	transform: skewX(-15deg);
}
.path_ex_title h4 span:nth-child(1)::after{
	position:absolute;
	content:"";
	top:0;
	left:0;
	display: block;
	width:100%;
	height:100%;
	background-color:#1e2b72;
	z-index: -1;
	transform: skewX(-15deg);
}
.path_ex_title h4 span:nth-child(2){
	color:#1e2b72;
	font-size:min(10rem,70px);
	line-height:1em;
	font-weight:600;
	margin-left:2rem;
}

.path_ex_job{
	color:#333;
	font-weight:600;
	font-size:min(3.5rem,26px);
	letter-spacing:0.1em;
	text-align:left;
	margin-left:-1rem;
}
.path_ex_jobnote{
	color:#333;
	font-weight:600;
	font-size:2rem;
	letter-spacing:0.07em;
	text-align:left;
}

@media screen and (min-width:1550px) {
	.path_h2area img{max-width:1000px;}
}

@media screen and (max-width:1200px) and (min-width:768px) {
	.path_start_index{width:70%;}
	.path_start_index p{font-size:2.8rem;}
	.path_start_h3 {width:65%;}
	.path_start_img {width:93%;}
	.path_start_change {width:55%;font-size:4.7rem;}
	.path_ex_h3area img {width:65%;margin-right:20%;}
	.path_ex_inner{width:90%;}
}

@media screen and (max-width:767px) {
	
	.path_box::before{
		border-top-width:6.3rem;
		border-bottom-width:6.3rem;
		border-left-width:2.8rem;
		border-right-width:2.8rem;
	}
	.path_box {padding-top:3rem;}
	.path_h2area img {width:78%;}
	
	.path_start_index{width:100%;padding:3rem 2.5rem 8rem;}
	.path_start_index p{font-size: min(1.6rem, 17px);font-weight:400;padding-bottom:2rem;}
	
	.path_start_h3{width:100%;padding:0 2rem;}
	.path_start_h3 p {font-size:2rem;line-height:1.3em;padding-bottom:.8rem;}
	.path_start_img{width:100%;max-width:520px;padding:3rem 2rem 0;}
	.path_start_img img[src*="01"]{width:86%;margin-bottom:2rem;}
	.path_start_img img[src*="02"]{width:79%;margin-left:0;margin-bottom:2rem;}
	.path_start_img img[src*="03"]{width:100%;margin-left:0;}
	.path_start_change{width:80%;font-size:2rem;margin:3rem auto;}
	
	
	.path_box02 {padding:5rem 0 0;}
	.path_ex_h3area{margin-bottom:3rem;}
	
	.path_ex_h3area img {width:95%;}
	.path_ex_title h4 span:nth-child(1){font-size:3rem;}
	.path_ex_title h4 span:nth-child(2){font-size:5rem;width:100%;margin-left:0;padding-top:1.2rem;}
	
	.path_ex_inner{width:100%;padding:3rem 2rem 7rem;}
	
	.path_ex_job{font-size:1.8rem;letter-spacing:-0.05em;}
	.path_ex_jobnote{font-size:1.4rem;}
	
	.path_ex {padding-bottom:8rem;}
	
}

@media screen and (max-width:520px) {
	.path_box{padding-top:5rem;}
	.path_h2area img{width:90%;}
	.path_start_index{padding: 3.5rem 2.5rem 5rem;}
	.path_start_h3{width:90%;}
	.path_start_change{width:86%;font-size:2.2rem;padding:0.8rem 2rem;line-height:1.1em;}
	
	.path_ex_h3area {margin-bottom: 0rem;}
	.path_ex_title h4 span:nth-child(1){font-size:2.4rem;padding:.4rem 1.2rem;letter-spacing:0em;}
	.path_ex_title h4 span:nth-child(1)::before{width:1.35rem;left:-2rem;}
	.path_ex_title h4 span:nth-child(2){font-size:4.4rem;}
	.path_ex_job{margin-left:0;font-size:1.6rem;letter-spacing:0.05em;}
	.path_ex_jobnote{font-size:1.2rem;}
}



/* ---------------------------------------------------------
■ キャリアストーリー
--------------------------------------------------------- */

/*下部の意匠*/
.story_area{
	position: relative;
}
.story_area::before,.story_area::after{
	content: "";
	display: block;
	position: absolute;
	bottom:-13rem;
	left: 0;
	width: 100%;
	height:22rem;
}
.story_area::before {
    transform: skewY(-5deg);
	background-color: #0065c1;
	z-index: -1;
}
.story_area::after{
	transform: skewY(5deg);
	background-color:#1e2b72;
	z-index: -2;
}

/*上部の意匠*/
.story_box{
	background-color:#0065c1;
	position: relative;
}
.story_box::before,.story_box::after{
	content: "";
	display: block;
	position: absolute;
	top:-13rem;
	left: 0;
	width: 100%;
	height:24rem;
}
.story_box::before {
    transform: skewY(-5deg);
	background-color: #0065c1;
	z-index: -1;
}
.story_box::after{
	transform: skewY(5deg);
	background-color:#1e2b72;
	z-index: -2;
}

.story_title{
	margin:auto;
	width:80%;
	max-width:1200px;
}
.story_title_interview{
	position: relative;
	width:35%;
	margin:2rem auto 4rem;
	padding:.8rem 0 .5rem;
	font-size: 3.8rem;
	line-height: 1.2em;
	letter-spacing:0.08em;
	color: #fff;
	font-weight: 600;
	text-align: center;
}
.story_title_interview span{
	position: relative;
	display: block;
	z-index:5;
	transform: skewX(-18deg);
}

.story_title_interview::before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color:#1e2b72;
    transform: skewX(-23deg);
	z-index:1;
}

.story_inner{
	padding:14rem 0;
}

.story_mv{
	display:flex;
	flex-wrap: wrap;
	position:relative;
}

.story_mv_img{
	width:64%;
}
.story_mv_text{
	width:30%;
	padding-left:2.5rem;
	margin-top:auto;
}
.story_mv_job{
	color:#fff;
	text-align:left;
	font-size:2.5rem;
	line-height:1.2em;
}
.story_mv_name{
	color:#fff;
	text-align:left;
	font-size:7rem;
	line-height:1.2em;
}
.story_mv_prev{
	color:#fff;
	text-align:left;
	padding-bottom:.5rem;
}
.story_mv_prev span:nth-child(1){
	font-size:2rem;
	background-color:#fff;
	color:#0065c1;
	font-weight:600;
	padding:0.5rem 1rem;
}
.story_mv_prev span:nth-child(2){
	font-size:2rem;
	padding:0 .5rem;
}

.story_mv_title{
	position:absolute;
	top:-6rem;
	right:10rem;
	width:42%;
	background-color:#0065c1;
	padding:0 3rem 4rem;
}

.story_text{
	width:80%;
	margin: auto;
	padding:4rem 0;
	color:#fff;
	font-size:2rem;
}
.story_text p{
	letter-spacing:0.08em;
	padding-bottom:2.5rem;
}

/*---------------------------------------
★ 左右入れ替え+調整
---------------------------------------*/

.story_mv.rtl{
	flex-direction: row-reverse;
}

.rtl .story_mv_title{
	right:auto;
	left:10rem;
}
.rtl .story_mv_text{
	padding-left:0rem;
	padding-right: 2.5rem;
}
.rtl .story_mv_job,
.rtl .story_mv_name,
.rtl .story_mv_prev{text-align:right;}

.story_mv_title.up{
	top:-9rem;
}

@media screen and (min-width:1550px) {
	.story_mv{max-width:1700px;}
	.story_mv.rtl{margin-left: auto;}
}

@media screen and (max-width:1200px) and (min-width:768px) {
	.story_box::before, .story_box::after {top: -12rem;}
	.story_title_interview{width:50%;font-size:4.8rem;}
	.story_text{font-size:2.65rem;}
	.story_mv_job {font-size: 3rem;}
	.story_mv_name {font-size: 7.6rem;}
	
	.story_mv_prev span:nth-child(1) {font-size:2.3rem;}
	.story_mv_prev span:nth-child(2) {font-size: 2.4rem;}
}

@media screen and (max-width:767px) {
	.story_box::before, .story_box::after{height:10rem;top:-6rem;}
	.story_title{width:100%;padding:0 .5rem;}
	.story_title_interview{width:60%;padding:.55rem 0 .3rem;font-size:1.4rem;margin:.5rem auto 0;}
	
	.story_inner{padding:4rem 0 0;}
	.story_mv_img{width:100%;}
	
	.story_mv_text{width:100%;padding:.9rem 2rem 0;display:flex;flex-wrap:wrap;}
	.story_mv_job{width:100%;text-align:right;font-size:1.5rem;margin:auto 0;}
	.story_mv_name{width:100%;text-align:right;font-size: 4rem;}
	.story_mv_prev{width:100%;text-align:right;}
	.story_mv_prev span:nth-child(1){font-size:.95rem;padding: 0.25rem 0.6rem;}
	.story_mv_prev span:nth-child(2){font-size:.95rem;padding: 0;}
	
	.story_mv_title{position:relative;width:100%;margin-top:-4rem;top:auto;right:auto;padding:0 2rem;background-color:rgba(255,255,255,0);}
	
	.story_text{width:100%;padding:1rem 2rem 0;font-size:min(1.6rem, 17px);}
	
	.rtl .story_mv_text{padding-right:0;padding:.9rem 2rem 0;}
	.rtl .story_mv_job{text-align:left;}
	.rtl .story_mv_name{text-align:left;}
	.rtl .story_mv_prev{text-align:left;}
	
	.rtl .story_mv_title{left:auto;}
	.story_mv_title.up{top:auto;margin-top:-2rem;}
	
	.story_area::before, .story_area::after{bottom:-6rem;}
}

@media screen and (max-width:520px) {
	.story_title{width:96%;}
	.story_title_interview{width:65%;margin-top:1.4rem; font-size:2rem;padding:.65rem 0 .5rem;}
	.story_mv_prev span:nth-child(1){font-size:1.25rem;}
	.story_mv_prev span:nth-child(2){font-size:1.25rem;}
	.story_mv_name{font-size:4.5rem;}
	.story_mv_title{padding-bottom:1rem;}
	.story_mv_title.up{margin-top:0;}
	.story_text{font-size:14px;}
}


/* ---------------------------------------------------------
■ 募集職種
--------------------------------------------------------- */


.occ_box{
	padding:25rem 0 10rem;
}
.occ_h2{
	font-size:8rem;
	line-height: 1.2em;
	letter-spacing: 0.1em;
	color:#1e2b72;
	font-weight: 600;
	text-align: center;
	padding-bottom: 5rem;
}

.occ_list_box{
	display:flex;
	flex-wrap: wrap;
	width:85%;
	gap:2%;
	margin: auto;
}
.occ_list{
	width:32%;
	padding-bottom:7rem;
}

.occ_list_name{
	text-align:left;
	color:#fff;
	background-color:#1e2b72;
	font-weight:600;
	font-size:2.5rem;
	padding:0.5rem 2rem;
}
.occ_list_name span{
	font-size:80%;
}

.occ_list_text{
	text-align:left;
	font-size:1.8rem;
	padding-top:.5rem;
}

@media screen and (max-width:1200px) and (min-width:768px) {
	.occ_list_text{
		padding-top:.5rem;
		font-size:2.2rem;
	}
	.occ_list_name{font-size:3.5rem;}
}
@media screen and (max-width:1100px){
	.occ_list{width:49%;}
}

@media screen and (max-width:767px) {
	.occ_box{padding:14rem 0 0;}
	.occ_h2{font-size:5rem;padding-bottom: 3rem;}
	.occ_list{width:100%;}
	.occ_list_name{line-height:1em;font-size:1.8rem;padding:0.8rem 2rem 0.3rem;}
	.occ_list_name span{font-size:70%;}
	
	.occ_list_text{padding:.5rem .5rem 0;font-size:min(1.6rem, 17px);}	
}

@media screen and (max-width:520px) {
	.occ_list_name{font-size:2.2rem;}
	.occ_list{padding-bottom:6rem;}
}



/* ---------------------------------------------------------
■ CEO挨拶
--------------------------------------------------------- */

.message_box{
	position:relative;
	padding:7rem 0 10rem;
}

.message_box h2{
	position:absolute;
	top:37%;
	left:-40rem;
	transform: rotate(90deg);
	color:rgba(0, 101, 193,.14);
	font-weight:600;
	font-size:11.5rem;
}

.message_main{
	display:flex;
	flex-wrap: wrap;
	width:75%;
	max-width:1100px;
	margin: auto;
}
.message_text{
	width:57%;
	margin: auto 0;
}
.message_contents{
	padding:4rem 0;
	font-size:min(2rem,17px);
}

.message_contents p{
	padding-bottom:2.5rem;
	color:#333;
	letter-spacing:0.04em;
	font-weight:600;
}
.message_contents p:last-child{
	line-height:1.25em;
}
.message_contents p:last-child span{
	display: block;
}
.message_contents p:last-child span:first-child{font-size:90%;}
.message_contents p:last-child span:last-child{font-size:115%;}

.message_img{
	width:43%;
}

@media screen and (min-width:1550px) {
	.message_main{max-width:1300px;}
	.message_contents{font-size:1.85rem;}
}

@media screen and (max-width:1200px) and (min-width:768px) {
	.message_box h2 {top:42%;}
	.message_main{width:86%;margin:0 5% 0 11%;}
	.message_text {width:60%;}
	.message_img{width:40%;}
	.message_contents{font-size:2.5rem;}
}

@media screen and (max-width:767px) {
	.message_box{padding: 8rem 0 10rem;}
	.message_box h2{
		position:relative;transform:none;top:auto;left:auto;
		font-size:4.5rem;line-height:1em;text-align:left;color:#1e2b72;padding:0 2rem;
	}
	.message_main{width:100%;padding:0 2rem;}
	.message_text{display:contents;}
	.message_title{order:2;padding-top:1rem;}
	.message_contents{order:3;}
	.message_img{
		width:70%;max-width:390px;
		margin:auto;
		overflow: hidden;
		aspect-ratio:2/3;
		height:auto;
		order:1;
	}
	.message_contents p{font-weight:400;}
}

@media screen and (max-width:520px) {
	.message_box{padding-top:3rem;}
	.message_box h2{opacity:.9;font-size:5.5rem;padding-bottom:1.5rem;}
	.message_contents{font-size:1.6rem;}
}


/* ---------------------------------------------------------
■ よくある質問
--------------------------------------------------------- */
.faq_area{
	position:relative;
}

.faq_area::after {
    content: "";
    display: block;
    position: absolute;
    top: -10rem;
    left: 0;
    width: 100%;
    height: 22rem;
    transform: skewY(-5deg);
    background-color: #0065c1;
    z-index: 2;
}

.faq_box{
	position: relative;
	background-color:#0065c1;
	z-index:3;
	padding:5rem 0 10rem;
}

.faq_box h2{
	font-size: 6rem;
    line-height: 1.2em;
	letter-spacing:0.1em;
    color:#fff;
    font-weight: 600;
    text-align: center;
    padding-bottom: 5rem;
}

.faq_wrap{
	margin: auto;
	width:90%;
	max-width:1200px;
}

.faq_inner{
	margin-bottom:min(3rem,22px);
}

.faq_inner h3.toggle_title{
	position: relative;
	background-color:#fff;
	color:#3A3A3A;
	font-weight:600;
	font-size:min(2.8rem,22px);
	padding:.8% 4%;
	text-align:left;
}

.faq_inner h3.toggle_title::before{
	font-family: "Roboto", sans-serif;
	content: "Q";
	color:#0065c1;
	font-size:115%;
	padding-right:min(2rem,17px);
}
.faq_inner h3.toggle_title::after{
	content:"";
	position:absolute;
	top:41%;
	right:min(4rem,32px);
	width:min(1.5rem,17px);
	height:min(1.5rem,17px);
    border-bottom: #0065c1 2px solid;
    border-right: #0065c1 2px solid;
    transform: rotate(45deg) translateY(-50%);
	transition:.2s;
}
.faq_inner h3.toggle_title.toggleopen::after{
	right:min(2.4rem,20px);
	top:35%;
	transform: rotate(-135deg) translateY(-50%);
}

.faq_inner .toggle_box{
	background-color:rgba(255,255,255,.1);
	padding:3% 4%;
	font-size:min(2.5rem,17px);
	color:#fff;
	letter-spacing:0.05em;
}

.faq_inner_topics{
	padding:2rem 0 0;
	padding-left:min(4rem,32px);
	text-align:left;
}
.faq_inner_topics h4{
	font-size:min(2.5rem,20px);
	border-left:#fff 1.5rem solid;
	padding-left:1rem;
	margin-bottom:.8rem;
	line-height: 1.2em;
}

.faq_inner ul{
	text-align: left;
	padding:2rem 0;
	padding-left:min(7rem,51px);
}
.faq_inner ul li{
	list-style: disc;
}

@media screen and (min-width:1550px) {
	.faq_inner .toggle_box{font-size:1.7rem;}
}

@media screen and (max-width:767px) {
	.faq_area::after{top:-7rem;}
	.faq_box{padding:0 0 10rem;}
	.faq_box h2{font-size: 4rem;}
	.faq_inner h3.toggle_title{font-size:min(1.5rem, 18px);padding:1.2% 12% .8% 8%;}
	.faq_inner h3.toggle_title::after{right:4.5%;width:10px;height:10px;}
	.faq_inner h3.toggle_title::before{position:absolute;top:.8%;left:3%;}
	.faq_inner .toggle_box{font-size: min(1.8rem, 16px);padding: 3% 7%;}
	.faq_inner_topics{padding:1rem 0 0;padding-left:5%;}
	.faq_inner_topics h4 {border-left:#fff .7rem solid;padding-left:1.8%;}
	.faq_inner ul{padding:1.5rem 0;padding-left:7%;}
	
}

@media screen and (max-width:520px) {
	.faq_box h2{padding-bottom:4rem;}
	.faq_inner h3.toggle_title.toggleopen::after{right:min(1.6rem,8px);top: 30%;}
	.faq_inner .toggle_box{font-size:1.45rem;}
	.faq_inner_topics h4{font-size:1.8rem;}
}




/* ---------------------------------------------------------
■ 募集要項
--------------------------------------------------------- */

.guidelines_box{
	padding:15rem 0;
}

.guidelines_box h2{
	font-size: 6rem;
    line-height: 1.2em;
	letter-spacing:0.1em;
    color:#0065c1;
    font-weight: 600;
    text-align: center;
    padding-bottom: 5rem;
}

.guidelines_wrap{
	display:flex;
	flex-wrap:wrap;
	max-width:1200px;
	margin:auto;
	width:80%;
}

.guidelines_wrap dt{
	display:flex;
	flex-wrap:wrap;
	width:18%;
	background-color:#0065c1;
	color:#fff;
	border-bottom: #fff solid 4px;
}
.guidelines_wrap dt h3{
	margin:auto 0;
	padding:2rem 3rem;
	font-size:min(2.2rem,17px);
	text-align:left;
	line-height:1.25em;
}

.guidelines_wrap dd{
	width:82%;
	display:flex;
	flex-wrap:wrap;
	font-size:min(2rem,17px);
	letter-spacing:0.05em;
}
.guidelines_wrap dd > div{
	margin:auto 0;
	padding:2rem 3rem;
	text-align:left;
}

.guidelines_h4box{
	display: flex;
	flex-wrap: wrap;
	padding-bottom:1.8rem;
}
.guidelines_h4box h4{
	display:inline-block;
	font-weight: 600;
    border: 1px solid #333;
	color:#333;
    padding: .2rem 1.5rem 0;
	margin-bottom:.4rem;
}
.guidelines_h4sub{
	font-size:1.6rem;
	font-weight:600;
	margin: auto 0;
	padding-left:1.2rem;
	
}
.guidelines_h4box p{
	width:100%;
	padding-left:1.5rem;
}
.guidelines_h4box h5{
	width:100%;
}
.guidelines_h4box h5::before{
	content: "■";
	padding-right:.4rem;
}

.guidelines_wrap ul.disc{
	padding-left:4rem;
}
.guidelines_wrap ul.disc li{
	list-style: disc;
}
.guidelines_wrap ul.slash{
	padding-left:0;
	display:flex;
	flex-wrap:wrap;
}
.guidelines_wrap ul.slash li::after{
	content:"/";
	padding:0 1rem;
}
.guidelines_wrap ul.slash li:last-child::after{
	content:none;
}

@media screen and (max-width:1200px) and (min-width:768px) {
	.guidelines_wrap{margin:auto;width:94%;}
	.guidelines_wrap dt{width:20%;}
	.guidelines_wrap dt h3{font-size:3rem;}
	.guidelines_wrap dd{width:80%;font-size:2.5rem;}
	.guidelines_h4sub {font-size: 2rem;}

}

@media screen and (max-width:767px) {
	.guidelines_box {padding: 8rem 0;}
	.guidelines_box h2{font-size:4rem;padding-bottom: 3rem;}
	.guidelines_wrap{width:100%;padding:0 2rem;}
	.guidelines_wrap dt{width:20%;}
	.guidelines_wrap dd{width:80%;}
	.guidelines_wrap dt h3{margin:auto;padding:0;font-size:15px;}
	.guidelines_wrap dd{font-size:min(1.6rem,16px);}
	.guidelines_wrap dd > div{padding: 1rem 0 1rem 1.35rem;}
	
	.guidelines_h4sub{font-size:min(1.5rem,14px);width:100%;}
	
}

@media screen and (max-width:520px) {
	.guidelines_wrap dt{width:100%;margin-top:.7rem;}
	.guidelines_wrap dt h3{padding:.5rem 0;}
	.guidelines_wrap dd{width:100%;font-size:1.5rem;}
	.guidelines_wrap dd > div{padding:0 1rem 1rem;line-height:1.5em;}
	.guidelines_h4box h4{margin-top:.5rem;}
	.guidelines_wrap ul.disc {padding-left:2.5rem;}
}



/* ---------------------------------------------------------
■ 募集要項
--------------------------------------------------------- */


.flow_box h2{
	max-width:600px;
	width:80%;
	margin:auto;
}

.flow_index{
	padding:2rem 0;
	font-size: min(2rem, 17px);
}

.flow_wrap{
	padding:4rem 0;
}

.flow_list{
	display:flex;
	flex-wrap:wrap;
	max-width:1000px;
	width:80%;
	margin:auto;
	margin-bottom:7rem;
}

.flow_list div:nth-child(1){
	position:relative;
	display:flex;
	flex-wrap:wrap;
	width:20%;
	color:#fff;
	font-size: min(2.5rem, 20px);
	font-weight:600;
}

.flow_list div:nth-child(1)::after{
	position:absolute;
	content:"";
	bottom:-5rem;
	left:0;
	width:100%;
	height:5rem;
	background-position: top;
	background-size:100%;
	background-repeat: no-repeat;
}


.flow_list:nth-child(1) div:nth-child(1){background-color:#009feb;}
.flow_list:nth-child(1) div:nth-child(1)::after{background-image:url("../images/flow01.svg");}
.flow_list:nth-child(2) div:nth-child(1){background-color:#0065c1;}
.flow_list:nth-child(2) div:nth-child(1)::after{background-image:url("../images/flow02.svg");}
.flow_list:nth-child(3) div:nth-child(1){background-color:#1e2b72;}

.flow_list div:nth-child(1) span{
	display: block;
	margin: auto;
}
.flow_list div:nth-child(2){
	width:80%;
	text-align:left;
	font-size: min(1.8rem, 16px);
	padding:3rem;
}

.flow_list div:nth-child(2) ul{
	padding-left:4rem;
}
.flow_list div:nth-child(2) ul li{
	list-style:disc;
}

@media screen and (max-width:1200px) and (min-width:768px) {
	.flow_index{font-size:2.5rem;}
	.flow_list div:nth-child(1){font-size:3.5rem;}
	.flow_list div:nth-child(2){font-size:2.5rem;}
}

@media screen and (max-width:767px) {
	.flow_wrap{padding:2rem 0;}
	.flow_list{margin-bottom:3rem;}
	.flow_list:nth-child(1) div{font-size:18px;}
	.flow_list div:nth-child(2){padding:1rem 1.5rem;}
	.flow_list div:nth-child(2) ul{padding-left:2rem;}
}

@media screen and (max-width:520px) {
	.flow_index{font-size:1.7rem;}
	.flow_list{width:90%;}
	.flow_list div:nth-child(1){font-size:1.4rem;}
	.flow_list div:nth-child(2){font-size:1.4rem;padding:1rem 0 1rem 1.2rem;}
}


/* ---------------------------------------------------------
■ エントリー
--------------------------------------------------------- */

.entry_box{
	background-color: #0065c1;
	padding:14rem 0;
}

.entry_box h2{
	max-width:700px;
	width:80%;
	margin:auto;
}

.entry_index{
	color:#fff;
	font-size: min(2.5rem, 22px);
	padding:2rem 0 14rem;
}

.entry_btn{
	display: flex;
	flex-wrap: wrap;
	gap:3rem;
	justify-content: center;
}

.entry_btn a{
	position:relative;
	display:block;
	width:calc(50% - 11rem);
	padding:.5rem 0 .5rem 5rem;
	font-size:3.5rem;
	font-weight:600;
	letter-spacing:-0.04em;
	color:#222;
	background-color:#e7ff00;
	border-radius:10rem;
	text-align: left;
	filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, .5));
}
.entry_btn a::before {
    position: absolute;
    content: "";
    top: 50%;
    transform: translateY(-50%);
    right: 2.5rem;
    color: #fff;
    background: #ffffff;
    height: 3.5rem;
    width: 3rem;
    clip-path: polygon(0 0, 100% 50%, 0 100%);
    z-index: 2;
}
.entry_btn a::after {
    position: absolute;
	content: "";
    top: 50%;
    transform: translateY(-50%);
    right: 1rem;
    color: #fff;
    aspect-ratio: 1 / 1;
    height: 80%;
    width: auto;
    line-height: 1.5em;
    background-color: #1e2b72;
	border-radius: 50%;
}

.entry_btn a span{
	font-size:140%;
}

@media screen and (min-width:1550px) {
	.entry_btn{margin:auto;width:75%;}
	.entry_btn a{font-size: 2.4rem;}
	.entry_btn a::before{width:2rem;height:3rem;right:2rem;}
}

@media screen and (max-width:1100px){
	.entry_box h2 {max-width: 500px;}
}

@media screen and (max-width:767px) {
	.entry_box{padding:10rem 0;}
	.entry_index{font-size: min(2rem,17px);padding:2rem 0 6rem;}
	.entry_btn a{width:90%;font-size: 1.5rem;}
	.entry_btn a::before{right:1.4rem;height:2.2rem;width:1.8rem;}
}

@media screen and (max-width:520px) {
	.entry_box{padding:7rem 0;}
	.entry_index{font-size:1.7rem;padding:1.5rem 0 5rem;}
	.entry_btn a{font-size: 1.7rem;padding:.5rem 0 .5rem 2.5rem;}
	.entry_btn a::before{right: 1.7rem;}
}


/* ---------------------------------------------------------
■ SNS
--------------------------------------------------------- */

.sns_box{padding:0 6rem;}

.channel_sns_links {
	display: flex;
	flex-wrap: wrap;
	margin: auto;
	max-width: 860px;
	gap: 60px;
	padding: 60px 0;
}

.channel_sns_links a {
	display: flex;
	flex-wrap: wrap;
	gap: 20px;
	justify-content: center;
	width: calc((100% - 60px) / 2);
	border: 1px solid #ddd;
	padding: 15px 0;
	color:#333;
}
.channel_sns_links a img {
	width: 60px;
	margin: auto 0;
}
.channel_sns_links a span {
	margin: auto 0;
	display: block;
	text-align: left;
	font-family: sans-serif;
	font-size: 16px;
	font-weight: 600;
}

@media screen and (max-width:767px) {
	.sns_box{padding:0;}
	.channel_sns_links{padding:4rem 2rem;}
	.channel_sns_links {gap:20px;}
	.channel_sns_links a {width: calc((100% - 20px) / 2);gap:10px;}
	.channel_sns_links a span {font-size:14px;width:100%;text-align:center;}
}

@media screen and (max-width:520px) {
	.channel_sns_links{padding:5rem 2rem;gap:13px;}
	.channel_sns_links a {width:100%;}
	.channel_sns_links a img{width: 36px;}
	.channel_sns_links a span{width: auto;text-align: left;font-size: 12px;}
}



/* ---------------------------------------------------------
■ footer
--------------------------------------------------------- */
.footer_group{
	margin: auto;
	background-color: #fff;
	max-width:1400px;
	padding:60px 40px;
}

.footer_group_box{
	margin: auto;
	max-width:1100px;
	display:flex;
	flex-wrap:wrap;
	gap:35px;
}

.footer_group_box h4{
	width:100%;
}
.footer_group_box h4 span{
	display: block;
	margin: auto;
	max-width: 240px;
}

.footer_group_box a{
	display: block;
	width:calc((100% - (35px * 3))/ 4);
	height:auto;
	aspect-ratio:117 / 13;
	transition: .2s;
}
.footer_group_box a img{
	width:auto;
	height:100%;
	transition: .2s;
}

.footer_group_box a[href*="keimeikan"] img{height:124%;margin-top:-2.8%;}

.footer_logo_box{
	padding:30px 0 0;
}

.footer_logo_box{
	margin: auto;
	max-width:170px;
}

@media screen and ( max-width:1100px) {
	.footer_group_box{gap:15px;}
	.footer_group_box a{width:calc((100% - (15px * 3)) / 4);}
}

@media screen and ( max-width:767px) {
	
	.footer_list > li{
		width:58%;
		padding-bottom:30px;
	}
	.footer_list > li:nth-child(even){
		width:42%;
	}
	
	.footer_group_box{
		gap: 15px 20px;
    }
	.footer_group_box a{
		width:calc((100% - 20px) / 2);
	}
	.footer_group_box a:nth-child(odd){text-align:left;}
	.footer_group_box a:nth-child(even){text-align:right;}
	
	.footer_logo_box{
		padding:20px 0 0;
	}
}
	
@media screen and ( max-width:520px) {
	.footer_box{
		padding: 0 0 30px;
	}
	.footer_menu{
		padding: 10vw 30px;
	}
	.footer_list > li > ul h4{
		font-size:16px;
	}
	    .footer_list > li > ul > li {
			padding: 10px 0;
	}
	.footer_group_box{
		justify-content: center;
		gap: 14px 0;
	}
	.footer_group_box a{
		display: block;
		width:100%;
		max-width:200px;
	}
	.footer_group_box a:nth-child(even),
	.footer_group_box a:nth-child(odd){
		text-align: center;
	}
	.footer_group_box a[href*="keimeikan"] img{height:128%;margin-top:0;}
	
	.footer_logo_box{
		padding: 15px 0 0;
		max-width:140px;
	}
}


/* ---------------------------------------------------------
■ 固定ボタン
--------------------------------------------------------- */

.fixed_area{
	position: fixed;
	z-index:50;
	bottom: 0;
	left: 0;
	width: 100%;
	background-color:rgba(0,101,193,0.9);
}
.fixed_box{
	padding:2rem 0;
}

@media screen and (min-width:1100px) {
	.fixed_box .entry_btn{margin:auto;width:75%;}
	.fixed_box .entry_btn a{font-size: 2.4rem;}
	.fixed_box .entry_btn a::before{width:2rem;height:3rem;right:2rem;}
}

@media screen and (max-width:767px) {
	.fixed_box{padding:1.2rem 0;}
	.fixed_box .entry_btn{gap:1.5rem;}
	.fixed_box .entry_btn a{width:calc(50% - 1.5rem);font-size:.9rem;padding:.5rem 0 .5rem 1rem;}
	.fixed_box .entry_btn a::before{right:.9rem;height:1.2rem;width:1rem;}
	.fixed_box .entry_btn a::after{right:.5rem;height:70%;}
}

@media screen and (max-width:520px) {
	.fixed_box .entry_btn a{width:90%;font-size: 1.7rem;padding:.5rem 0 .5rem 2.5rem;}
	.fixed_box .entry_btn a::before{right:1.1rem;height:2.2rem;width:1.9rem;}
	.fixed_box .entry_btn a::after{right:.5rem;height:80%;}
	

}
	
	
/* ---------------------------------------------------------
■ POPUP（benefit）
--------------------------------------------------------- */

.benefit_box{
	width:100%;
}
.benefit_box h3{
	position: relative;
	width: 45%;
	margin:0 auto 3rem;
	padding: .9rem 0 .5rem;
	font-size:4.5rem;
	line-height: 1.2em;
	letter-spacing: 0.08em;
	color: #fff;
	font-weight: 600;
	text-align: center;
}
.benefit_box h3::before {
    content: "";
    position: absolute;
    display: block;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #1e2b72;
    transform: skewX(-23deg);
    z-index: 1;
}
.benefit_box h3 span {
	position: relative;
	display: block;
	z-index: 5;
	transform: skewX(-18deg);
	line-height:1.2em;
}

.benefits_wrap {
	display: flex;
	flex-wrap: wrap;
}
.benefits_wrap > div{width:50%;}
.benefits_wrap li {
    display:flex;
    flex-wrap:wrap;
    font-size:2.5rem;
    gap:0 1rem;
    padding:.8rem 0;
}

.benefits_wrap li > div:nth-child(1) {
    margin: auto;
    display: flex;
    flex-wrap: wrap;
    width: 4rem;
    height: auto;
    aspect-ratio: 1 / 1;
    color: #fff;
    background-color:#1e2b72;
    border-radius: 50%;
}
.benefits_wrap li div:nth-child(1) span {
    margin: auto;
	font-family: "Roboto", sans-serif;
	font-weight:600;
    font-size:2rem;
}
.benefits_wrap li div:nth-child(2) {
    position: relative;
    margin: auto;
    width: calc(100% - 5rem);
    font-weight:600;
	color:#333;
}
.benefits_wrap li div:nth-child(3) {
	width:100%;
	font-size:1.8rem;
	line-height:1.2em;
	padding:0 2rem 0 5rem;
}

@media screen and (max-width:1100px){
	.benefits_wrap > div{width:100%;}
	.benefits_wrap li > div:nth-child(1){width:5.3rem;}
	.benefits_wrap li div:nth-child(1) span{font-size:3.5rem;}
	.benefits_wrap li div:nth-child(2){font-size:4rem;width: calc(100% - 6.3rem);}
	.benefits_wrap li div:nth-child(3) {font-size: 2.8rem;padding: 0 0 0 6.3rem;}
}

@media screen and (max-width:767px) {
	.benefit_box h3{width:90%;font-size:2.6rem;}
	.benefits_wrap li{gap:0 1rem;}
	.benefits_wrap li > div:nth-child(1){width:2.3rem;}
	.benefits_wrap li div:nth-child(1) span{font-size: 1.5rem;}
	
	.benefits_wrap li div:nth-child(2){font-size:2rem;width:calc(100% - 3.3rem);}
	.benefits_wrap li div:nth-child(3){font-size:1.5rem;padding:0 0 0 3.3rem;}
	
}



/* ---------------------------------------------------------
■ footer
--------------------------------------------------------- */

address {
    background-color: rgba(0, 0, 0, .75);
    font-size: 12px;
    padding: 4px 0 10.5rem;
    color: #fff;
}
@media screen and (max-width:1100px){
	address {padding: 4px 0 13rem;}
}
@media screen and (max-width:767px){
	address {padding: 4px 0 5.5rem;}
}
@media screen and (max-width:520px){
	/*address {padding: 4px 0 13.5rem;}*/
	address {padding: 4px 0 7.5rem;}
}
