@charset "UTF-8";
/************************************
 common
*************************************/
/*btn*/
.btn{
	background:#5571CD;
	border-radius:99em;
	color:#fff;
	display:inline-block;
	font-size:18px;
	font-weight:bold;
	line-height: 1.6;
	max-width: 576px;
	padding:1em 2em;
	text-align:center;
}
@media screen and (max-width:768px){
	.btn{
		font-size:16px;
		padding:1em 2em;
	}
}
.btn_red{
	background:#DC3C36;
}
.btn_back{
	background: #999;
}
/*form*/
input[type="text"],
input[type="tel"],
input[type="email"],
textarea{
	background:#E6E9ED;
	border:none;
	border-radius:5px;
	font-size:14px;
	padding:1em;
	width:100%;
}
input[type="text"]::placeholder,
input[type="tel"]::placeholder,
input[type="email"]::placeholder,
textarea::placeholder{
	color:#666;
}
.submit{
	background:#5571CD;
	border-radius:99em;
	color:#fff;
	display:block;
	font-size:18px;
	font-weight:bold;
	padding:1em 2em;
	text-align:center;
}
/*sec*/
.sec{
	padding:4em 0;
}
@media screen and (max-width:768px){
	.sec{
		padding:3em 0;
	}
}
.sec_pt0{
	padding-top:0;
}
.sec_gray{
	background:#F3F4F6;
}
.sec_titles{
	margin-bottom: 48px;
	text-align:center;
}
@media screen and (max-width:768px){
	.sec_titles{
		margin-bottom: 24px;
	}
}
.sec_title{
	color: #0F1B2F;
	font-size:calc(2.5vw);
	font-weight:bold;
}
@media screen and (max-width:768px){
	.sec_title{
		font-size:30px
	}
}
.sec_subtitle{
	color: #0F1B2F;
	font-family: 'Quicksand', sans-serif;
	font-size:24px;
	font-weight:bold;
}
@media screen and (max-width:768px){
	.sec_subtitle{
		font-size:24px;
	}
}
/************************************
 body
*************************************/
.body_shopping{
	background: url(../images/shopping/kv_bg.jpg) no-repeat top right;
}
@media screen and (max-width:768px){
	.body_shopping{
		background-size: 200%;
	}
}
/************************************
 header
*************************************/
.header{
	background: rgba(255,255,255,0.8);
	padding:1em 2em;
	position:fixed;
	top:0;
	width:100%;
	z-index:99;
}
@media screen and (max-width:768px){
	.header{
		padding:1em;
	}
}
.header_logo,
.header_btn{
	height:40px;
}
@media screen and (max-width:768px){
	.header_logo{
		height: 20px;
	}
	.header_btn{
		height:30px;
	}
}
/************************************
 footer
*************************************/
.footer{
	background:#0F1B2F;
	padding:10em 2em 2em;
}
@media screen and (max-width:768px){
	.footer{
		padding-top:5em;
	}
}
.pagetop{
	text-align:right;
}
@media screen and (max-width:768px){
	.pagetop{
		text-align:center;
	}
}
.pagetop img{
	height:60px;
}
@media screen and (max-width:768px){
	.pagetop img{
		height:30px;
	}
}
@media screen and (max-width:768px){
	.footer_logo{
		text-align:center;
	}
}
.footer_logo img{
	height:40px;
}
@media screen and (max-width:768px){
	.footer_logo img{
		height:20px;
	}
}
.footer_nav li{
	font-size:14px;
	margin-left:2em;
}
@media screen and (max-width:768px){
	.footer_nav li{
		margin:0;
		text-align:center;
	}
	.footer_nav li:nth-child(n+2){
		margin-top:1em;
	}
}
.footer_nav a{
	color:#fff;
}
/************************************
 kv
*************************************/
.kv{
	padding:2em 2em 0;
}
@media screen and (max-width:768px){
	.kv{
		padding:0;
	}
}
.kv .inner-l{
	padding:4em 0;
}
@media screen and (max-width:768px){
	.kv .inner-l{
		padding:2em 0;
	}
}
@media screen and (min-width:769px){
	.kv_cnt{
		width: 49%;
	}
	.kv_img{
		width:44%;
	}
}
.kv_cnt_text{
	font-size:18px;
	font-weight:bold;
	line-height:30px;
}
@media screen and (max-width:768px){
	.kv_cnt_text{
		font-size: 14px;
	}
}
.kv table{
	width:100%;
}
.kv table td{
	padding:.5em .5em 0;
}
.kv_form_text{
	font-size:13px;
}
.kv form .submit{
	width:100%;
}

/************************************
 about
*************************************/
.about_outer{
	padding:2em 2em 0;
}
@media screen and (max-width:768px){
	.about_outer{
		padding:1em 1em 0;
	}
}
.about_inner_top{
	border-radius:30px 30px 0 0;
	padding: 4em 2em;
}
@media screen and (min-width:769px){
	.about_inner_top{
		background:url(../images/shopping/about_inner_top_bg.png) no-repeat center bottom /cover;
		background-color:#F3F4F6;
	}
}
@media screen and (max-width:768px){
	.about_inner_top{
		background:url(../images/shopping/about_inner_top_bg.png) no-repeat center bottom /contain;
		background-color:#F3F4F6;
		padding: 2em 2em 4em;;
	}
}
.about_outer_bottom{
	padding:0 2em 2em;
}
@media screen and (max-width:768px){
	.about_outer_bottom{
		padding:0 1em 1em;
	}
}
.about_inner_bottom{
	border-radius:0 0 30px 30px;
	padding: 4em 2em;
}
@media screen and (min-width:769px){
	.about_inner_bottom{
		background:url(../images/shopping/about_inner_bottom_bg.png) no-repeat center top /contain;
		background-color:#F3F4F6;
	}
}
@media screen and (max-width:768px){
	.about_inner_bottom{
		background:url(../images/shopping/about_inner_bottom_bg.png) no-repeat center top /contain;
		background-color:#F3F4F6;
		padding: 2em;
	}
	.about_inner_bottom .inner-l{
		width: 100%;
	}
}
.about_title{
	color: #0F1B2F;
	font-size:36px;
	line-height:1.6;
}
@media screen and (max-width:768px){
	.about_title{
		font-size:18px;
		
	}
}
.about_logo{
	height:80px;
}
@media screen and (max-width:768px){
	.about_logo{
		height:40px;
	}
}
.about_img{
	position:relative;
}
.about_img_label{
	background:#fff;
	border-radius:99em;
	box-shadow: 0px 0px 15px rgba(0, 0, 0, 0.1);
	font-weight:bold;
	left:50%;
	line-height: 1;
	padding:1em 2em 1.5em;
	position:absolute;
	top:0;
	transform:translate(-50%,-50%);
}
@media screen and (max-width:768px){
	.about_img_label{
		text-align:center;
		width:85%;
	}
}
.about_img_label strong{
	color:#DC3C36;
	display: inline-block;
	font-size:200%;
	margin: 0 .4em;
	transform: translateY(5px);
}
.about_img_label span{
	color:#DC3C36;
}
.about_col2{
	text-align:left;
}
.about_col2_title{
	color: #0F1B2F;
	font-size:42px;
	line-height:1.6;
}
@media screen and (max-width:768px){
	.about_col2_title{
		font-size:18px;
		text-align:center;
	}
}
/************************************
 client
*************************************/
@media screen and (max-width:768px){
	.client_text{
		padding: 0 1.5em;
	}
}
/************************************
 point
*************************************/
.point_item{
	position:relative;
}
@media screen and (max-width:768px){
	.point_item:nth-child(n+2){
		margin-top: 6em;
	}
}
.point_item .inner-l{
	position:relative;
	z-index:2;
}
@media screen and (min-width:769px){
	.point_item_img{
		padding:4em;
		width:55%;
	}
}
@media screen and (max-width:768px){
	.point_item_img{
		padding: 0 5em;
	}
}
@media screen and (min-width:769px){
	.point_item_cnt{
		width:40%;
	}
}
.point_item_cnt_title{
	color: #0F1B2F;
	font-size:calc(2.4vw);
}
@media screen and (min-width:769px){
	.point_item_cnt_title{
		line-height:3.2rem;
	}
}
@media screen and (max-width:768px){
	.point_item_cnt_title{
		font-size:24px;
		line-height:2rem;
		text-align:center;
	}
}
@media screen and (min-width:769px){
	.point_item_cnt_text {
		font-weight:bold;
		line-height:34px;
	}
}
.point_item_cnt strong{
	color:#DC3C36;
}
.point_logo{
	height:50px;
}
@media screen and (max-width:768px){
	.point_logo{
		height:30px;
	}
}
.point_item_bg01,
.point_item_bg02{
	height:550px;
	position:absolute;
	top:50%;
	transform:translatey(-50%);
}
@media screen and (max-width:768px){
	.point_item_bg01,
	.point_item_bg02{
		height:450px;
	}
}
.point_item_bg01{
	right:0;
}
.point_item_bg02{
	left:0;
}
/************************************
 plan
*************************************/
.plan_img{
	height:120px;
}
@media screen and (max-width:768px){
	.plan_img{
		height:80px;
	}
}
.plan_item{
	background:#E6E9ED;
	border:2px solid #E6E9ED;
	border-radius:10px;
	overflow:hidden;
}
.plan_item_col{
	padding:1em;
	width:50%;
}
@media screen and (max-width:768px){
	.plan_item_col{
		width:100%;
	}
}
.plan_item_col_right{
	background:#fff;
}
/************************************
 flow
*************************************/
.flow_item{
	position:relative;
	width:20%;
}
@media screen and (max-width:768px){
	.flow_item{
		display: flex;
		justify-content: space-between;
		width:100%;
	}
	.flow_item_img{
		width: 40%;
	}
	.flow_item_cnt{
		width: 56%;
	}
}
@media screen and (min-width:769px){
	.flow_arrow{
		padding-top:105px;
	}
	.flow_arrow img{
		height:40px;
	}
}
@media screen and (max-width:768px){
	.flow_arrow{
		margin-top: 2em;
		text-align: center;
	}
	.flow_arrow img{
		height:30px;
		transform: rotate(90deg);
	}
}
.flow_item_cnt{
	text-align:center;
}
@media screen and (max-width:768px){
	.flow_item_cnt{
		text-align: left;
	}
}
.flow_item_title{
	color: #0F1B2F;
	font-size:24px;
	line-height: 1.6;
}
@media screen and (max-width:768px){
	.flow_item_title{
		font-size:18px;
	}
}
.flow_item_text{
	font-size:14px;
}
/************************************
 voice
*************************************/
#voice{
	padding-top: 4em;
}
@media screen and (max-width:768px){
	#voice{
		padding-top: 2em;
	}
}
.voice_item{
	border: 2px solid #e6e9ed;
	border-radius:50px;
	padding:2em;
}
.voice_item_img{
	font-weight:bold;
	text-align:center;
}
@media screen and (min-width:769px){
	.voice_item_img{
		width:20%;
	}
}
@media screen and (min-width:769px){
	.voice_item_cnt{
		width:76%;
	}
}
.voice_item_cnt_label{
	background:#E6E9ED;
	border-radius:99em;
	color: #0F1B2F;
	font-size:18px;
	font-weight:bold;
	padding:.2em .2em .8em;
	text-align:center;
}
@media screen and (max-width:768px){
	.voice_item_cnt_label{
		padding:.5em;
	}
}
.voice_item_cnt_label strong{
	color:#DC3C36;
	display: inline-block;
	font-size:200%;
	margin:0 10px;
	transform: translateY(5px);
}
.voice_item_cnt_title{
	border-bottom:2px solid #e6e9ed;
	color: #0F1B2F;
	font-size:18px;
	padding-bottom:1em;
	text-align:center;
}
.voice_item_cnt_text{
	font-size:14px;
}
/************************************
 faq
*************************************/
.faq_items{
	background:#fff;
	border: 2px solid #E6E9ED;
	border-radius:30px;
	padding:2em;
}
.faq_items:nth-child(n+2){
	margin-top: 20px;
}
.faq_item_icon{
	width:10%;
}
@media screen and (max-width:768px){
	.faq_item_icon{
		width:20%;
	}
}
.faq_item_icon{
	color: #0F1B2F;
	font-size: 36px;
	font-weight: bold;
}
@media screen and (max-width:768px){
	.faq_item_icon{
		height:30px;
	}
}
.faq_item_icon_a{
	color: #DC3C36;
}
.faq_item_text{
	line-height:1.5;
	width:90%;
}
@media screen and (max-width:768px){
	.faq_item_text{
		width:80%;
	}
}
.js_faq_item_q{
	cursor:pointer;
	padding-right:1.5em;
	position:relative;
}
.js_faq_item_q:after{
	content:'\f078';
	font-family:'Font Awesome 5 Free';
	font-size:180%;
	font-weight:900;
	position:absolute;
	right:0;
	top:50%;
	transform: translateY(-50%);
}
@media screen and (max-width:768px){
	.js_faq_item_q:after{
		font-size:100%;
	}
}
.js_faq_item_q.on:after{
	content:'\f077';
}
.faq_item_text_q{
	font-size:18px;
	padding-top: 10px;
}
@media screen and (max-width:768px){
	.faq_item_text_q{
		font-size: 16px;
		padding-top: 0;
	}
}
.faq_item_a_wrap{
	display:none;
}
.faq_item_a{
	border-top: 2px solid #E6E9ED;
	padding-top:2em;
}
/************************************
 contact
*************************************/
/*form*/
.contact_form input[type="text"],
.contact_form input[type="tel"],
.contact_form input[type="email"],
.contact_form textarea{
	background:#F3F3F3;
	border-radius:20px;
	padding:1.2em;
}
.contact_form .submit{
	display:inline-block;
	width:60%;
}
.contact_form table{
	width: 100%;
}
.contact_form tr{
	border-top:1px solid #DFDFDF;
}
@media screen and (max-width:768px){
	.contact_form tr{
		display:block;
	}
}
.contact_form tr:last-child{
	border-bottom:1px solid #DFDFDF;
}
.contact_form th,
.contact_form td{
	padding:1.2em;
}

.contact_form th{
	color: #0F1B2F;
	font-size:18px;
	font-weight:bold;
	text-align:left;
	xvertical-align:top;
	width:30%;
}
.contact_form tr:nth-child(4) th{
	vertical-align:top;
}
@media screen and (max-width:768px){
	.contact_form th{
		display:block;
		font-size:12px;
		padding-bottom:0;
		width:100%;
	}
	.contact_form td{
		display:block;
	}
	.contact_form td.pb0{
		padding-bottom:0;
	}
}
.contact_form .hissu,
.contact_form .nini{
	background:#DC3C36;
	border-radius:99em;
	color:#fff;
	display:inline-block;
	font-size:70%;
	margin-left:1em;
	padding: .2em 1em;
}
.contact_form .nini{
	background:#838383;
}