/*
* Prefixed by https://autoprefixer.github.io
* PostCSS: v8.4.14,
* Autoprefixer: v10.4.7
* Browsers: last 4 version
*/

/* ******************************************************************
 *	File name		: base.css
 *	Summary			: css base
 * ******************************************************************
 */

:root {
	--color-main:#002862;
	--color-recruit:#017878;
	--color-primary:#4BF4F4;
	--color-gray-d:#3A536B;
	--color-gray-m:#91AEC8;
	--color-gray-l:#D9E2ED;
	--color-bg:#EEF4F9;
	
	--shadow:4px 4px 10px 0px rgba(0, 0, 0, 0.40);
	
	--font-en:"Barlow Condensed", sans-serif;

	--top_MV_anime_speed:20s;
}

/*-----------------------------------
  reset
-----------------------------------*/

* {
	margin:0;
	padding:0;
	border:0;
	background:transparent;
	font-family:'Noto Sans JP', sans-serif;
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
}
*::before,
*::after{
	-webkit-box-sizing:border-box;
	        box-sizing:border-box;
}
:focus {
	outline: 0;
}

html{
	width:100%;
	height:100%;
	overflow-x:hidden;
	overflow-y:scroll;
}
img{
	max-width:100%;
	height:auto;
	border:0;
	border:none;
	vertical-align:bottom;
}
ul{
	list-style:none;
}


/*-----------------------------------
  base
-----------------------------------*/

body{
	position:relative;
	width:100%;
	height:100%;
	line-height:170%;
	color:#222;
}
@media screen and (max-width:767px){
	body{
		font-size:0.875rem;
	}
}

h2, h3, h4, h5{
	font-weight:bold;
	line-height:1.4;
}

.container{
	position:relative;
	width:100%;
	max-width:1000px;
	margin:0 auto;
}
@media screen and (max-width:1039px){
	.container{
		padding:0 20px;
	}
}
@media screen and (min-width:1200px){
	.hidden_wide{
		display:none !important;;
	}
}
@media screen and (min-width:768px){
	.hidden_pc{
		display:none !important;
	}
}
@media screen and (max-width:767px){
	.hidden_sp{
		display:none;
	}
}


/* -----------------------------------------------------------------
   header
----------------------------------------------------------------- */

header{
	position:relative;
	z-index:10;
	width:100%;
	height:126px;
	background:var(--color-bg);
	border-bottom:1px solid #D9E2ED;
	}
	#head_contents{
		position:relative;
		width:100%;
		height:100%;
		margin:0 auto;
		-webkit-transition-duration:0.5s;
		     -o-transition-duration:0.5s;
		        transition-duration:0.5s;
	}
	header h1{
		position:absolute;
		top:10px;
		left:40px;
		z-index:9999;
		width:290px;
		height:50px;
		background:url(../../image/base/logo.png) no-repeat 0 0;
		background-size:contain;
		text-indent:-9999px;
	}
	header h1 a{
		display:block;
		position:absolute;
		top:0px;
		left:0px;
		width:100%;
		height:100%;
}

#groval_nav{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	    -ms-flex-direction:column;
	        flex-direction:column;
	position:absolute;
	top:0;
	right:0px;
	width:100%;
	margin:0;
	text-align:right;
}
#groval_nav ul{
	list-style:none;
	}
	#groval_nav ul li{
		display:inline-block;
		-webkit-transition-duration:0.5s;
		     -o-transition-duration:0.5s;
		        transition-duration:0.5s;
	}
	#groval_nav ul li a{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-pack:center;
		    -ms-flex-pack:center;
		        justify-content:center;
		-webkit-box-align:center;
		    -ms-flex-align:center;
		        align-items:center;
		position:relative;
		height:100%;
		text-decoration:none;
		z-index:1;
		cursor:pointer;
		-webkit-transition-duration:0.5s;
		     -o-transition-duration:0.5s;
		        transition-duration:0.5s;
}
#groval_nav .groval_nav_main_container{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:justify;
	    -ms-flex-pack:justify;
	        justify-content:space-between;
	widows:100%;
}

/* .groval_nav_main */
#groval_nav .groval_nav_main{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:end;
	    -ms-flex-pack:end;
	        justify-content:flex-end;
	right:0;
	width:100%;
	height:72px;
	z-index:999;
	border-bottom:1px solid #D9E2ED;
}
#groval_nav .groval_nav_main .groval_nav_tel{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	    -ms-flex-direction:column;
	        flex-direction:column;
	-webkit-box-align:center;
	    -ms-flex-align:center;
	        align-items:center;
	margin-right:10px;
	padding-top:10px;
	color:var(--color-gray-d);
	font-size:0.625rem;
	line-height:1.4;
	text-align:center;
	}
	#groval_nav .groval_nav_main .groval_nav_tel span{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-align:baseline;
		    -ms-flex-align:baseline;
		        align-items:baseline;
		margin-left:-10px;
		font-weight:bold;
		font-size:40px;
		font-family:var(--font-en);
		line-height:1;
	}
	#groval_nav .groval_nav_main .groval_nav_tel span::before{
		content:"";
		display:block;
		width:24px;
		height:24px;
		margin-right:2px;
		background-image:url("../../image/base/icon_tel.png");
		background-size:24px 24px;
}
#groval_nav .groval_nav_main ul li{
	width:176px;
	height:100%;
	margin-left:-4px;
	text-align:left;
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_product{
		background:var(--color-main);
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_product a{
		color:#FFF;
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_product a::before{
		background-image:url("../../image/base/groval_nav_btn_product.png");
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_recruit{
		background:var(--color-recruit);
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_recruit a{
		color:#FFF;
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_recruit a::before{
		background-image:url("../../image/base/groval_nav_btn_recruit.png");
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_contact{
			background:var(--color-primary);
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_contact a{
		color:var(--color-main);
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_contact a::before{
		background-image:url("../../image/base/groval_nav_btn_contact.png");
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_product:hover,
	#groval_nav .groval_nav_main ul .groval_nav_btn_contact:hover{
		opacity:0.5;
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_product a,
	#groval_nav .groval_nav_main ul .groval_nav_btn_recruit a,
	#groval_nav .groval_nav_main ul .groval_nav_btn_contact a{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-pack:start;
		    -ms-flex-pack:start;
		        justify-content:flex-start;
		width:100%;
		height:100%;
		padding:10px;
		font-weight:normal;
		font-size:1.0625rem;
		line-height:1.2;
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_product a::before,
	#groval_nav .groval_nav_main ul .groval_nav_btn_recruit a::before,
	#groval_nav .groval_nav_main ul .groval_nav_btn_contact a::before{
		content:"";
		width:40px;
		height:40px;
		margin-right:8px;
		background-size:contain;
		background-position:center;
		background-repeat:no-repeat;
}

/* groval_nav_sub */
#groval_nav .groval_nav_sub{
	position:absolute;
	top:72px;
	right:40px;
	z-index:998;
}
#groval_nav .groval_nav_sub ul{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	height:52px;
}
#groval_nav .groval_nav_sub ul li a{
	height:100%;
	margin:0 12px;
	color:var(--color-main);
	font-weight:bold;
	font-size:1.125rem;
	}
	#groval_nav .groval_nav_sub ul li a:hover{
		opacity:0.5;
}
.nav_lang a{
	color:var(--color-main);
	font-weight:bold;
	font-size:1.125rem;
}
.nav_lang a::before{
	content:"";
	display:block;
	width:20px;
	height:20px;
	margin-right:3px;
	background-image:url("../../image/base/icon_en.png");
	background-size:20px 20px;
}
.YouTube{
	height:28px;
}

/* .groval_nav_main ul li ul */
#groval_nav .groval_nav_main ul li ul{
	position:absolute;
	top:72px;
	width:100%;
	height:0px;
	overflow:hidden;
	}
	#groval_nav .groval_nav_main ul li:hover ul{
		height:134px;
	}
	#groval_nav .groval_nav_main ul li ul li{
		display:block;
		height:0px;
		overflow:hidden;
		border-bottom:1px solid rgba(255,255,255,0);
	}
	#groval_nav .groval_nav_main ul li:hover ul li{
		height:44px;
		padding:0;
	}
	#groval_nav .groval_nav_main ul li ul li a{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-pack:center;
		    -ms-flex-pack:center;
		        justify-content:center;
		-webkit-box-align:center;
		    -ms-flex-align:center;
		        align-items:center;
		height:100%;
		padding:0px 8px !important;
		font-size: 0.875rem !important;
		text-align:center;
		color:#FFF;
		background:var(--color-recruit);
		overflow:hidden;
	}
	#groval_nav .groval_nav_main ul li ul li a:hover{
		background:var(--color-gray-d);
	}
	#groval_nav .groval_nav_main ul li ul li a::before{
		content:none !important;
}
/* .groval_nav_sub ul li ul */
#groval_nav .groval_nav_sub ul li ul{
	display:block;
	position:absolute;
	top:54px;
	width:98px;
	height:0px;
	overflow:hidden;
	}
	#groval_nav .groval_nav_sub ul li:hover ul{
		height:128px;
	}
	#groval_nav .groval_nav_sub ul li ul li{
		display:block;
		width:100%;
		height:0px;
		overflow:hidden;
		border-bottom:1px solid rgba(255,255,255,0);
	}
	#groval_nav .groval_nav_sub ul li:hover ul li{
		height:32px;
		padding:0;
	}
	#groval_nav .groval_nav_sub ul li ul li a{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-pack:center;
		    -ms-flex-pack:center;
		        justify-content:center;
		-webkit-box-align:center;
		    -ms-flex-align:center;
		        align-items:center;
		width:100%;
		height:100%;
		margin:0;
		padding:0;
		font-weight:normal;
		font-size: 0.875rem !important;
		text-align:center;
		color:#FFF;
		background:var(--color-gray-d);
		overflow:hidden;
}

/* --- responsive --- */
@media screen and (max-width:1200px){
	header h1{
		top:16px;
		left:24px;
		width:240px;
	}
	#groval_nav .groval_nav_main .groval_nav_tel{
		padding-top:5px;
		}
		#groval_nav .groval_nav_main .groval_nav_tel span{
			font-size:2rem;
	}
	#groval_nav .groval_nav_main ul .groval_nav_btn_product,
	#groval_nav .groval_nav_main ul .groval_nav_btn_recruit,
	#groval_nav .groval_nav_main ul .groval_nav_btn_contact{
		width:98px;
		}
		#groval_nav .groval_nav_main ul .groval_nav_btn_product a,
		#groval_nav .groval_nav_main ul .groval_nav_btn_recruit a,
		#groval_nav .groval_nav_main ul .groval_nav_btn_contact a{
			-webkit-box-orient:vertical;
			-webkit-box-direction:normal;
			    -ms-flex-direction:column;
			        flex-direction:column;
			padding:8px 4px 2px 4px;
			font-size:0.75rem;
		}
		#groval_nav .groval_nav_main ul .groval_nav_btn_product a::before,
		#groval_nav .groval_nav_main ul .groval_nav_btn_recruit a::before,
		#groval_nav .groval_nav_main ul .groval_nav_btn_contact a::before{
			width:28px;
			height:28px;
			margin-bottom:4px;
			margin-right:0;
	}
	#groval_nav .groval_nav_sub{
		right:10px;
	}
	#groval_nav .groval_nav_sub ul li a{
		font-size:1rem;
	}
	/* .groval_nav_main ul li ul */
	#groval_nav .groval_nav_main ul li ul{
		width:98px;
		}
		#groval_nav .groval_nav_main ul li ul li a{
			-webkit-box-pack:center !important;
			    -ms-flex-pack:center !important;
			        justify-content:center !important;
			width:98px !important;
	}
}
@media screen and (max-width:767px){
	header{
		display:none;
	}
}


/* ----------------------------------------------------------------- */
/*	main                                                             */
/* ----------------------------------------------------------------- */

main{
	position:relative;
	width:100%;
	z-index:5;
	}
	main:after{
	    content:" ";
	    display:block;
	    clear:both;
}

section{
	position:relative;
	word-wrap: break-word;
	}
	section:after{
		content:" ";
		display:block;
		clear:both;
}

/* interview */
.interview_group{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap:wrap;
	    flex-wrap:wrap;
	-webkit-box-pack:justify;
	    -ms-flex-pack:justify;
	        justify-content:space-between;
}
.interview_group div{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	    -ms-flex-direction:column;
	        flex-direction:column;
	width:calc(50% - 20px);
	margin-right:40px;
	margin-bottom:40px;
}
.interview_group div:nth-of-type(2n){
	margin-right:0;
}
.interview_group div .interview{
	width:100%;
	height:auto;
	aspect-ratio: 16 / 9;
	margin-bottom:8px;
}
.interview_group .btn_sub{
	border:2px solid var(--color-recruit);
	color:var(--color-recruit);
	}
	.interview_group .btn_sub:hover{
		background:var(--color-recruit);
		color:#FFF;
}
/* --- responsive --- */
@media only screen and (max-width:767px){
	.interview_group{
		-webkit-box-orient:vertical;
		-webkit-box-direction:normal;
		    -ms-flex-direction:column;
		        flex-direction:column;
		max-width:360px;
		margin:0 auto;
	}
	.interview_group div{
		width:100%;
		margin-right:0;
		margin-bottom:10px;
	}
	.interview_group div .interview{
		margin-bottom:4px;
	}
}

/* ------------------------------------------------
   contact
------------------------------------------------- */

#contact{
	padding:60px 0 40px;
	background:var(--color-bg);
	color:var(--color-main);
	text-align:center;
}
#contact .contact_text{
	margin-bottom:20px;
	font-weight:bold;
}
#contact .contact_box_group{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:justify;
	    -ms-flex-pack:justify;
	        justify-content:space-between;
}
#contact .contact_box{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-orient:vertical;
	-webkit-box-direction:normal;
	    -ms-flex-direction:column;
	        flex-direction:column;
	-ms-flex-pack:distribute;
	    justify-content:space-around;
	-webkit-box-align:center;
	    -ms-flex-align:center;
	        align-items:center;
	width:calc(50% - 10px);
	padding:24px;
	background:var(--color-gray-l);
}
#contact .contact_box p{
	margin-bottom:10px;
	font-size:1.5rem;
	font-weight:bold;
}
#contact .contact_box .contact_tel,
#contact .contact_box .contact_fax{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	padding:5px 0 10px;
	color:var(--color-gray-d);
	font-family:var(--font-en);
	font-size:2.5rem;
	font-weight:bold;
	line-height:1;
}
#contact .contact_box .contact_tel{
	border-bottom:1px solid var(--color-gray-d);
}
#contact .contact_box .contact_tel::before,
#contact .contact_box .contact_fax::before{
	content:"";
	display:block;
	width:24px;
	height:24px;
	margin-top:12px;
	margin-right:6px;
	background:url("../../image/base/icon_tel.png");
	background-size:contain;
	background-repeat:no-repeat;
}
#contact .contact_box .contact_fax::before{
	background:url("../../image/base/icon_fax.png");
	background-size:contain;
	background-repeat:no-repeat;
}
#contact .contact_box .btn_contact{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-align:center;
	    -ms-flex-align:center;
	        align-items:center;
	padding:20px;
	border-radius:40px;
	background:var(--color-main);
	color:#FFF;
	font-size:1.125rem;
	font-weight:bold;
	text-decoration:none;
	-webkit-box-shadow:var(--shadow);
	        box-shadow:var(--shadow);
	-webkit-transition:0.5s;
	-o-transition:0.5s;
	transition:0.5s;
}
#contact .contact_box .btn_contact::before{
	content:"";
	display:block;
	width:28px;
	height:28px;
	margin-top:2px;
	margin-right:8px;
	background:url("../../image/base/icon_mail.png");
	background-size:contain;
	background-repeat:no-repeat;
}
#contact .contact_box .btn_contact::after{
	content:"";
	display:block;
	width:24px;
	height:24px;
	margin-top:4px;
	margin-left:16px;
	background:url("../../image/base/arrow_l.png");
	background-size:contain;
	background-repeat:no-repeat;
}
#contact .contact_box .btn_contact:hover{
	background:var(--color-primary);
	color:var(--color-main);
}
#contact .contact_box .btn_contact:hover::after{
	background:url("../../image/base/arrow_d.png");
	background-size:contain;
	background-repeat:no-repeat;
}

/* responsive */
@media screen and (max-width:767px){
	#contact{
	padding:32px 0 20px;
	}
	#contact .contact_text{
		margin-bottom:10px;
	}
	#contact .contact_box_group{
		-webkit-box-orient:vertical;
		-webkit-box-direction:normal;
		    -ms-flex-direction:column;
		        flex-direction:column;
	}
	#contact .contact_box{
		width:100%;
		margin-bottom:10px;
		padding:16px;
	}
	#contact .contact_box:last-child{
		margin-bottom:0;
	}
	#contact .contact_box p{
		margin-bottom:8px;
		font-size:1.1125rem;
	}
	#contact .contact_box .contact_tel,
	#contact .contact_box .contact_fax{
		padding:4px 0 4px;
		font-size:2rem;
	}
	#contact .contact_box .contact_tel::before,
	#contact .contact_box .contact_fax::before{
		width:20px;
		height:20px;
		margin-top:8px;
		margin-right:4px;
	}
	#contact .contact_box .btn_contact{
		padding:16px;
		font-size:1rem;
	}
	#contact .contact_box .btn_contact::before{
		content:"";
		display:block;
		width:22px;
		height:22px;
		margin-top:2px;
		margin-right:6px;
	}
	#contact .contact_box .btn_contact::after{
		width:20px;
		height:20px;
		margin-top:2px;
		margin-left:8px;
	}
}


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

footer{
	position:relative;
	bottom:0px;
	width:100%;
	background:var(--color-main);
	color:#FFF;
}
footer .footer_main{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:justify;
	    -ms-flex-pack:justify;
	        justify-content:space-between;
	padding-top:24px;
	padding-bottom:24px;
	}
	.footer_main .footer_info{
		margin-right:24px;
	}
	.footer_main .footer_logo{
		max-width:280px;
		margin-bottom:20px;
	}
	.footer_main .footer_info p{
		margin-bottom:10px;
		font-size:0.875rem;
		line-height:1.4;
		text-align:left;
	}
	.footer_main .footer_iso{
		width:100px;
		background:#FFF;
	}
	.footer_main .footer_nav li{
		list-style:none;
	}
	.footer_main .footer_nav li a{
		color:#FFF;
		text-decoration:none;
		-webkit-transition:0.5s;
		-o-transition:0.5s;
		transition:0.5s;
	}
	.footer_main .footer_nav li a:hover{
		opacity:0.5;
	}
	.footer_main .footer_nav_sub{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-align:center;
		    -ms-flex-align:center;
		        align-items:center;
		flex-wrap:wrap;
		width:100%;
		margin-bottom:20px;
		}
	.footer_main .footer_nav_sub a{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-align:center;
		    -ms-flex-align:center;
		        align-items:center;
	}
	.footer_main .footer_nav_sub li{
		margin-right:20px;
	}
	.footer_main .footer_nav_sub .nav_lang a{
		font-size:1rem;
	}
	footer .nav_lang a::before{
		margin-right:4px;
		background-image:url("../../image/base/icon_en_white.png");
	}
.footer_main .footer_nav_sub .btn_data{
	width:100%;
	margin:0;
	margin:10px;
	color:var(--color-main);
}

	.footer_main .footer_nav_main{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
	}
	.footer_main .footer_nav_main ul{
		margin-right:24px;
	}
	.footer_main .footer_nav_main_l a{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-align:center;
		    -ms-flex-align:center;
		        align-items:center;
		margin-bottom:8px;
		font-size:1rem;
	}
	.footer_main .footer_nav_main_l a::before{
		content:"";
		width:20px;
		height:20px;
		margin-right:8px;
		background-image:url("../../image/base/footer_arrow_l.png");
		background-size:contain;
		background-repeat:no-repeat;
	}
	.footer_main .footer_nav_main_s a{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-align:center;
		    -ms-flex-align:center;
		        align-items:center;
		padding-left: 10px;
		font-size:0.75rem;
	}
	.footer_main .footer_nav_main_s a::before{
		content:"";
		width:12px;
		height:12px;
		margin-right:8px;
		background-image:url("../../image/base/footer_arrow_s.png");
		background-size:contain;
		background-repeat:no-repeat;
}
footer p#copyright{
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-webkit-box-pack:center;
	    -ms-flex-pack:center;
	        justify-content:center;
	-webkit-box-align:center;
	    -ms-flex-align:center;
	        align-items:center;
	width:100%;
	height:40px;
	background:#193045;
	font-size:0.75rem;
	text-align:center;
}

/* responsive */
@media screen and (max-width:767px){
	.footer_main{
		-webkit-box-orient:vertical;
		-webkit-box-direction:reverse;
		    -ms-flex-direction:column-reverse;
		        flex-direction:column-reverse;
		-webkit-box-align:center;
		    -ms-flex-align:center;
		        align-items:center;
	}
	.footer_main .footer_info{
		width:100%;
		margin-right:0;
		padding-top:20px;
		border-top:1px solid #FFF;
		text-align:center;
	}
	.footer_main .footer_logo{
		width:200px;
		margin-bottom:10px;
	}
	.footer_main .footer_info p{
		font-size:0.75rem;
		text-align:center;
	}
	.footer_main .footer_iso{
		width:60px;
	}
	.footer_main .footer_nav{
		width:100%;
		margin-bottom:20px;
	}
	.footer_main .footer_nav_sub{
		-webkit-box-pack:center;
		    -ms-flex-pack:center;
		        justify-content:center;
		margin-bottom:10px;
	}
	.footer_main .footer_nav_main{
		-webkit-box-orient:vertical;
		-webkit-box-direction:normal;
		    -ms-flex-direction:column;
		        flex-direction:column;
	}
	.footer_main .footer_nav_main ul{
		margin-right:0;
	}
	.footer_main .footer_nav_main_l a{
		margin:0;
		padding:5px 10px;
		border-bottom:1px dotted var(--color-gray-m);
		font-size:0.85rem;
	}
	.footer_main .footer_nav_main_l a::before{
		width:16px;
		height:16px;
	}
	.footer_main .footer_nav_main_s a{
		padding:2px 10px 2px 16px;
	}
}


/* -----------------------------------------------------------------
   product_benefit
----------------------------------------------------------------- */
.product_benefit{
	margin-bottom:60px;
	}
	.product_benefit h3{
		max-width:600px;
		margin:0 auto 10px;
		padding:4px;
		border-radius:20px;
		background:var(--color-primary);
		color:var(--color-main);
		font-weight:bold;
		text-align:center;
	}
	.product_benefit .product_benefit_group{
		display:-webkit-box;
		display:-ms-flexbox;
		display:flex;
		-webkit-box-pack:justify;
		    -ms-flex-pack:justify;
		        justify-content:space-between;
	}
	.product_benefit .product_benefit_box{
		width:calc(100%/3 - 20px);
	}
	.product_benefit .product_benefit_box img{
		width:100%;
		-o-object-fit:cover;
		   object-fit:cover;
	}
	.product_benefit .product_benefit_box p{
		padding:0 10px;
	}
	.product_benefit .product_benefit_box_title{
		position:relative;
		z-index:0;
		margin-top:10px;
		margin-bottom:16px;
		font-weight:bold;
		font-size:1.5rem;
		text-align:center;
	}
	.product_benefit .product_benefit_box_title::after{
		content:"";
		position:absolute;
		top:16px;
		left:10px;
		z-index:-1;
		width:calc(100% - 20px);
		height:20px;
		background:rgba(255,255,255,0.3);
}

/* --- responsive --- */
@media only screen and (max-width:767px){
	.product_benefit{
		margin-bottom:40px;
		}
		.product_benefit h3{
			width:calc(100% - 40px);
			max-width:400px;
		}
		.product_benefit .product_benefit_group{
			-webkit-box-orient:vertical;
			-webkit-box-direction:normal;
			    -ms-flex-direction:column;
			        flex-direction:column;
			-webkit-box-align:center;
			    -ms-flex-align:center;
			        align-items:center;
			max-width:400px;
			margin:0 auto;
		}
		.product_benefit .product_benefit_box{
			width:calc(100% - 40px);
			margin-bottom:16px;
		}
		.product_benefit .product_benefit_box:last-child{
			margin-bottom:0;
		}
		.product_benefit .product_benefit_box p{
			padding:0 20px;
		}
		.product_benefit .product_benefit_box_title{
			margin-bottom:16px;
			padding:0 20px;
			font-size:1.5rem;
		}
		.product_benefit .product_benefit_box_title::after{
			left:20px;
			width:calc(100% - 40px);
			height:16px;
	}
}