@charset "utf-8";

.wrapper{
	padding: 0 4vw;
}

.top_tel{
	padding: 2vw;
	background: #E5E5E5;
	font-weight: 700;
	text-align: center;
}
.top_tel .text{
	color: #555;
}
.top_tel .number_box{
	padding: 2vw 0;
	font-size: 0;
}
.top_tel .icon{
	width: 25%;
	padding: 1vw 2vw;
	background: #555;
	display: inline-block;
	vertical-align: middle;
	font-size: 3.5vw;
	color: #FFF;
}
.top_tel .number{
	width: 65%;
	margin-left: 2%;
	display: inline-block;
	vertical-align: middle;
}

nav{
}
nav .btn a{
	width: 30px;
	height: 23px;
	display: block;
	position: fixed;
	top: 4vw;
	right: 2vw;
	pointer-events: auto;
	z-index: 100;
	text-align: center;
}
nav .btn a span{
	width: 30px;
	height: 2px;
	margin: -2px 0 0 -17px;
	background: #E60012;
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	transition: 0.2s;
}
nav .btn a span:before, nav .btn a span:after{
	content: "";
	width: 30px;
	height: 2px;
	background: #E60012;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	transition: 0.3s;
}
nav .btn a span:before{
	margin-top: -10px;
}
nav .btn a span:after{
	margin-top: 8px;
}
nav .btn a.on span{
	background: transparent;
}
nav .btn a.on span:before, nav .btn a.on span:after{
	margin-top: 0;
}
nav .btn a.on span:before{
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
nav .btn a.on span:after{
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}
nav .inner{
	width: 70%;
	height: 100%;
	padding-top: 70px;
	background: rgba(0, 0, 0, 0.55);
	position: fixed;
	top: 0;
	right: -70%;
	z-index: 90;
	text-align: right;
	pointer-events: auto;
	overflow: scroll;
}
nav .inner div{
	padding: 0;
	border-bottom: 1px solid #FFF;
	text-align: right;
}
nav .inner div:first-child{
	border-top: 1px solid #FFF;
}
nav .inner div a{
	padding: 10px 10% 10px 0;
	display: block;
	font-size: 18px;
	line-height: 30px;
	color: #FFF;
	font-weight: normal;
	text-decoration: none;
}
nav .inner div a span{
	font-size: 3.7vw;
	line-height: 1;
}
nav .inner div a small{
}
.navi_back{
	width: 100%;
	height: 100%;
	min-height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, 0.5);
	z-index: 60;
	display: none;
}
.navi_back a{
	width: 100%;
	height: 100%;
	display: block;
}


/* header */

header{
	position: relative;
}
header::after{
	content: "";
	width: 100%;
	height: 80vw;
	background: #F39C11;
	position: absolute; bottom: 0; left: 0;
	z-index: -10;
}
header .head{
	padding: 2vw 4vw 6vw 4vw;
}
header h1{
	width: 45vw;
	margin: 0 auto;
}
header .copy{
	padding-top: 6vw;
	font-size: 5vw;
	font-weight: 700;
	text-align: center;
}
header .point{
	padding: 2vw 8vw 6vw 8vw;
}
header .point .item{
	padding-top: 4vw;
	font-size: 0;
}
header .point .acc{
	width: 20%;
	display: inline-block;
	vertical-align: middle;
}
header .point .acc img{
	width: 80%;
}
header .point .text{
	width: 80%;
	display: inline-block;
	vertical-align: middle;
	font-size: 4vw;
}
header .point .text span{
	font-weight: 700;
}
header .modal{
	background: #FFF;
	border-radius: 4px;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
}
header .modal .title{
	padding: 6vw 4vw 0 4vw;
	font-size: 4vw;
	line-height: 1.8;
	font-weight: 700;
	text-align: center;
}
header .modal .btn{
	width: 70%;
	margin: 4vw auto 0 auto;
}
header .modal .btn a{
	padding: 3vw 4vw;
	background: #E60012;
	border-radius: 4px;
	display: block;
	font-size: 4vw;
	line-height: 1.8;
	color: #FFF;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
}
header .modal .btn a span{
	font-size: 3.7vw;
}
header .modal .text{
	padding: 4vw;
	line-height: 1.8;
}
header .modal .bottom{
}
header .modal .bottom a{
	padding: 4vw;
	background: #626262;
	border-radius: 0 0 4px 4px;
	display: block;
	font-size: 4vw;
	color: #FFF;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
}
header .modal .bottom a::before{
	content: "";
	width: 5vw;
	height: 5vw;
	margin-right: 3vw;
	background: url(/img/official/index/modal_acc/1.png) no-repeat;
	background-size: 100% 100%;
	display: inline-block;
	vertical-align: middle;
}
header .modal .bottom a::after{
	content: "";
	width: 3.5vw;
	height: 3.5vw;
	margin-left: 4vw;
	background: url(/img/official/index/modal_acc/2.png) no-repeat;
	background-size: 100% 100%;
	display: inline-block;
	vertical-align: middle;
}


/* main */

.kv{
	text-align: center;
}

.info{
	padding-top: 2vw;
}
.info .item{
	margin-top: 4vw;
}
.info .title{
	color: #1F1F1F;
	font-weight: 700;
}
.info .title strong{
	color: #E50012;
}
.info .title a{
	margin-left: 2vw;
	font-size: 3.5vw;
	color: #0059B2;
	font-weight: 500;
}
.info .inner{
	max-height: 120px;
	overflow-y: auto;
	margin-top: 2vw;
	padding: 2vw 2vw 4vw 2vw;
	border: 1px solid #DDD;
}
.info .inner div{
	padding: 2vw 0 0 0;
	font-size: 3.5vw;
}
.info .inner div strong{
	font-weight: 700;
}

.catch{
	padding: 6vw 0;
}
.catch h2{
	padding: 0 2vw;
	font-size: 5.4vw;
	font-weight: 700;
}
.catch .title{
	padding-top: 4vw;
	font-size: 4vw;
	line-height: 2;
	font-weight: 700;
	text-align: center;
}
.catch .title span{
	font-size: 5vw;
}
.catch .text{
	padding-top: 4vw;
	line-height: 2;
}

.intro{
}
.intro h2{
	padding: 2vw 4vw;
	background: url(/img/official/index/intro/bg.jpg) no-repeat center top;
	background-size: cover;
	font-size: 5.8vw;
	line-height: 1.7;
	color: #FFF;
	font-weight: 700;
}
.intro .inner{
	padding: 2vw 0 6vw 0;
}
.intro .item{
	margin-top: 4vw;
	padding: 4vw;
	background: #FFF;
	border-radius: 4px;
	box-shadow: 0 0 10px rgba(0,0,0,0.1);
	font-size: 0;
}
.intro .thum{
	width: 30%;
	display: inline-block;
	vertical-align: middle;
}
.intro .text{
	width: 70%;
	padding-left: 4vw;
	display: inline-block;
	vertical-align: middle;
	font-size: 3.7vw;
}

.solution{
}
.solution .h2_box{
	padding-bottom: 3vw;
	position: relative;
	text-align: center;
}
.solution .h2_box::after{
	content: "";
	width: 20vw;
	height: 2px;
	background: #DBDBDB;
	position: absolute; bottom: 0; left: calc(50% - 10vw);
}
.solution h2{
	font-size: 5.8vw;
	font-weight: 700;
}
.solution .h2_small{
	padding-top: 2vw;
	font-size: 3.5vw;
	line-height: 1.7;
}
.solution .box{
	padding-bottom: 6vw;
}
.solution .thum{
	width: 40vw;
	margin: 6vw auto 0 auto;
}
.solution .inner{
}
.solution .item{
	margin-top: 4vw;
	padding: 4vw;
	background: #F0F0F0;
	line-height: 1.7;
}

.cv_top{
	padding: 6vw 0;
	background: #F39C11;
}
.cv_top .text{
	line-height: 1.7;
	color: #FFF;
	font-weight: 700;
}
.cv_top .btn_box{
}
.cv_top .btn{
	width: 70vw;
	margin: 4vw auto 0 auto;
}
.cv_top .btn a{
	padding: 3vw 4vw;
	background: #E60012;
	border:2px solid #E60012;
	border-radius: 4px;
	display: block;
	font-size: 4vw;
	line-height: 1.8;
	color: #FFF;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
}
.cv_top .btn_box .btn:last-child a{
	background: #FFF;
	color: #E60012;
}
.cv_top .btn a span{
	font-size: 3.7vw;
}
.cv_bottom{
	background: #F0F0F0;
}
.cv_bottom .wrapper{
	padding: 6vw 4vw;
	background: url(/img/official/index/cv/bg.png) no-repeat top 18vw left 0;
	background-size: 50vw auto;
}
.cv_bottom .title{
	font-size: 5.5vw;
	line-height: 1.7;
	font-weight: 700;
}
.cv_bottom .text{
	padding-top: 4vw;
	line-height: 1.7;
	font-weight: 700;
}
.cv_bottom .btn_box{
}
.cv_bottom .btn{
	margin-top: 4vw;
}
.cv_bottom .btn a{
	padding: 4vw;
	background: #00ADD8;
	border-radius: 4px;
	display: block;
	box-shadow: 0 3px 0 #CDCDCD;
	font-size: 4vw;
	line-height: 1.8;
	color: #FFF;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
}
.cv_bottom .btn_box .btn:last-child a{
	background: #626262;
}
.cv_bottom .btn a::before{
	content: "";
	width: 7vw;
	height: 7vw;
	margin-right: 3vw;
	background: url(/img/official/index/cv/1.png) no-repeat;
	background-size: 100% 100%;
	display: inline-block;
	vertical-align: middle;
}
.cv_bottom .btn_box .btn:last-child a::before{
	background-image: url(/img/official/index/cv/2.png);
}
.cv_bottom .btn a::after{
	content: "";
	margin-left: 4vw;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid #FFF100;
	display: inline-block;
	vertical-align: middle;
}

.case{
	padding-top: 6vw;
}
.case .thum{
	text-align: center;
}
.case h2{
	padding-top: 4vw;
	font-size: 5.8vw;
	line-height: 1.7;
	font-weight: 700;
}
.case .text{
	padding-top: 2vw;
	font-size: 5vw;
	line-height: 1.7;
	font-weight: 700;
}
.case .caution{
	padding-top: 2vw;
	font-size: 2.8vw;
}

.example{
	padding: 2vw 0 6vw 0;
}
.example .item{
	padding-top: 4vw;
}
.example .thum{
	text-align: center;
}
.example .category{
	margin-top: 4vw;
	padding: 2vw;
	background: #EEE;
	display: inline-block;
	font-size: 3.5vw;
}
.example .text{
	padding-top: 4vw;
	line-height: 1.7;
}

.step{
}
.step .h2_box{
	padding-bottom: 3vw;
	position: relative;
	text-align: center;
}
.step .h2_box::after{
	content: "";
	width: 20vw;
	height: 2px;
	background: #DBDBDB;
	position: absolute; bottom: 0; left: calc(50% - 10vw);
}
.step h2{
	font-size: 5.8vw;
	font-weight: 700;
}
.step .h2_small{
	padding-top: 2vw;
	font-size: 3.5vw;
	line-height: 1.7;
}
.step .top{
	padding-top: 6vw;
	overflow-x: scroll;
}
.step .top .bar{
	width: 1160px;
	padding-top: 48px;
	background: url(/img/official/index/step/bar.png) no-repeat center top;
	background-size: 1000px auto;
	font-size: 0;
}
.step .top .item{
	width: 232px;
	padding-top: 3vw;
	display: inline-block;
	vertical-align: middle;
	font-size: 3.2vw;
	line-height: 1.7;
	font-weight: 700;
	text-align: center;
}
.step .annotation{
	padding-top: 3vw;
	font-size: 4vw;
	text-align: center;
}
.step .inner{
	padding-top: 2vw;
}
.step .inner .item{
	margin-top: 4vw;
	border: 2px solid #F39C11;
	border-radius: 10px;
	overflow: hidden;
	line-height: 1.7;
}
.step .inner .text{
	padding: 4vw;
}
.step .inner .thum{
	width: 50%;
	margin: 0 auto;
	padding-bottom: 4vw;
}
.step .inner .title_box{
	border-top: 2px solid #F39C11;
	font-size: 0;
}
.step .inner .number{
	width: 16%;
	padding: 2vw 0;
	background: #F39C11;
	display: inline-block;
	vertical-align: middle;
	font-size: 3.5vw;
	color: #FFF;
	font-weight: 700;
	text-align: center;
}
.step .inner .title{
	width: 84%;
	padding: 2vw 0;
	display: inline-block;
	vertical-align: middle;
	font-size: 3vw;
	font-weight: 700;
	text-align: center;
}
.step .bottom{
	padding: 6vw 0;
}
.step .bottom .title{
	font-size: 5vw;
	line-height: 1.7;
	font-weight: 700;
}
.step .bottom .text{
	padding-top: 4vw;
	line-height: 1.7;
}

.faq{
	padding: 6vw 0;
	background: #D9F3F9;
}
.faq .h2_box{
	padding-bottom: 3vw;
	position: relative;
	text-align: center;
}
.faq .h2_box::after{
	content: "";
	width: 20vw;
	height: 2px;
	background: #DBDBDB;
	position: absolute; bottom: 0; left: calc(50% - 10vw);
}
.faq h2{
	font-size: 5.8vw;
	font-weight: 700;
}
.faq .h2_small{
	padding-top: 2vw;
	font-size: 3.5vw;
	line-height: 1.7;
}
.faq .inner{
	padding-top: 2vw;
}
.faq .item{
	padding-top: 4vw;
}
.faq .title{
	padding-left: 10vw;
	position: relative;
	font-weight: 700;
}
.faq .title::before{
	content: "";
	width: 7vw;
	height: 7vw;
	background: url(/img/official/index/q.png) no-repeat;
	background-size: 100% 100%;
	position: absolute; top: calc(50% - 3.5vw); left: 0;
}
.faq .text{
	margin-top: 2vw;
	padding: 4vw;
	background: #FFF;
	border-radius: 4px;
}

.bottom_content{
}
.bottom_contact{
	padding: 6vw 4vw;
	background: #EFEFEF;
}
.bottom_contact .box{
}
.bottom_contact .h2_box{
	padding-bottom: 3vw;
	position: relative;
	text-align: center;
}
.bottom_contact .h2_box::after{
	content: "";
	width: 20vw;
	height: 2px;
	background: #DBDBDB;
	position: absolute; bottom: 0; left: calc(50% - 10vw);
}
.bottom_contact h2{
	font-size: 5.8vw;
	font-weight: 700;
}
.bottom_contact .h2_small{
	padding-top: 2vw;
	font-size: 3.5vw;
	line-height: 1.7;
}
.bottom_contact .inner{
	padding-top: 4vw;
}
.bottom_contact .inner table{
	width: 100%;
	border-collapse: collapse;
}
.bottom_contact .inner table th,
.bottom_contact .inner table td{
	width: 100%;
	padding: 2vw 0;
	display: block;
	vertical-align: middle;
	text-align: left;
}
.bottom_contact .inner table th{
	color: #666;
	font-weight: 700;
}
.bottom_contact .inner table td{
	padding-top: 0;
}
.bottom_contact .inner table td label:last-child{
	margin-left: 6vw;
}
.bottom_contact .inner table td input[type="radio"],
.bottom_contact .inner table td input[type="checkbox"]{
	margin-right: 2vw;
}
.bottom_contact .btn_box{
}
.bottom_contact .check{
	text-align: center;
}
.bottom_contact .check input[type="checkbox"]{
	margin-right: 2vw;
}
.bottom_contact .check a{
	color: #F39C11;
	text-decoration: underline;
}
.bottom_contact .btn{
	padding-top: 6vw;
	text-align: center;
}
.bottom_contact .btn button{
	width: 50vw;
	display: inline-block;
	vertical-align: top;
	background: #E60012;
	border: none;
	border-radius: 4px;
	outline: none;
	font-size: 4vw;
	font-weight: 700;
	line-height: 14vw;
	color: #FEFEFE;
}

.foot{
	padding-bottom: 6vw;
}
.foot .box{
}
.foot .link_box{
}
.foot .link_box .inner{
}
.foot .link_box .item{
	padding-top: 6vw;
}
.foot .link_box .title{
	padding: 0 4vw 4vw 4vw;
	border-bottom: 1px solid #666;
	font-size: 4vw;
	color: #666;
	font-weight: 700;
}
.foot .link_box .link{
	border-bottom: 1px solid #666;
}
.foot .link_box .link a{
	padding: 4vw;
	display: block;
	color: #666;
}
.foot .bottom_text{
	margin: 6vw 4vw;
	padding: 4vw;
	border: 1px solid #F39C11;
	text-align: center;
}
.foot .bottom_text .tel_title{
	font-size: 3.6vw;
	color: #555;
	font-weight: 700;
}
.foot .bottom_text .tel_icon{
	margin-top: 4vw;
	padding: 1vw 2vw;
	background: #555;
	display: inline-block;
	vertical-align: middle;
	font-size: 3.5vw;
	color: #FFF;
	font-weight: 700;
}
.foot .bottom_text .tel_number{
	padding-top: 2vw;
}
.foot .bottom_text p{
	padding-top: 4vw;
	font-size: 3.2vw;
	line-height: 1.7;
	color: #666;
}
.foot .p_mark{
	padding: 0 4vw;
	font-size: 0;
	text-align: center;
}
.foot .p_mark .acc{
	width: 12vw;
	display: inline-block;
	vertical-align: middle;
}
.foot .p_mark .text{
	width: auto;
	padding-left: 4vw;
	display: inline-block;
	vertical-align: middle;
	font-size: 3vw;
	line-height: 1.7;
	color: #666;
	text-align: left;
}
.foot .lang_link{
}
.foot .lang_link .inner{
	padding: 4vw 0 4vw 0;
}
.foot .lang_link .inner div{
	border-bottom: 1px solid #666;
}
.foot .lang_link .inner div a{
	padding: 4vw;
	display: block;
	color: #666;
}


/* footer */

footer{
	background: #626262;
}
footer .wrapper{
	padding: 6vw 0 0 0;
}
footer .footer_nav{
	border-top: 1px solid #FFF;
}
footer .footer_nav div{
	border-bottom: 1px solid #FFF;
}
footer .footer_nav div a{
	padding: 4vw;
	display: block;
	color: #FFF;
}
footer .copy{
	padding: 4vw;
	font-size: 3vw;
	color: #FFF;
	text-align: center;
}

.sticker{
	width: 100%;
	padding: 2vw;
	background: #FFF;
	position: fixed; bottom: 0;
	box-shadow: 0 0 4px rgba(0,0,0,0.2);
	font-size: 0;
	display: none;
}
.sticker .title{
	width: 48%;
	padding-right: 2vw;
	display: inline-block;
	vertical-align: middle;
	font-size: 3.7vw;
	line-height: 1.7;
	font-weight: 700;
	text-align: center;
}
.sticker .btn{
	width: 52%;
	display: inline-block;
	vertical-align: middle;
}
.sticker .btn a{
	padding: 2vw 1vw;
	background: #E60012;
	border-radius: 4px;
	display: block;
	font-size: 3.5vw;
	line-height: 1.7;
	color: #FFF;
	font-weight: 700;
	text-align: center;
	text-decoration: none;
}
.sticker .btn a span{
	font-size: 3.2vw;
}

.quick_c_modal,
.quick_f_modal{
	width: 100%;
	height: 100%;
	display: none;
	position: fixed; top: 0; left: 0;
	z-index: 110;
}
.modal_bg{
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.7);
}
.quick_modal_box{
	width: 90%;
	background: #FFF;
	border-radius: 10px;
	overflow: hidden;
	position: absolute; top: 50%; left: 50%;
	transform:translate(-50%,-50%);
}
.quick_modal_box .title_box{
	padding: 2vw;
	color: #FFF;
	text-align: center;
}
.quick_c_modal .quick_modal_box .title_box{
	background: #e60012;
}
.quick_f_modal .quick_modal_box .title_box{
	background: #00add8;
}
.quick_modal_box .title_box .title{
	font-weight: 4.2vw;
	font-weight: 700;
}
.quick_modal_box .title_box .title span{
	font-size: 3.7vw;
	font-weight: 500;
}
.quick_modal_box .title_box .caution{
	padding-top: 1vw;
}
.quick_modal_box .inner{
	max-height: 60vh;
	overflow-y: auto;
	padding: 2vw 4vw 6vw 4vw;
}
.quick_modal_box .inner .item{
	padding-top: 4vw;
}
.quick_modal_box .inner .item .title{
}
.quick_modal_box .inner .item .title span{
	color: #e60012;
}
.quick_modal_box .inner .item .input{
	padding-top: 2vw;
}
.quick_modal_box .inner .item .input input,
.quick_modal_box .inner .item .input select,
.quick_modal_box .inner .item .input textarea{
	border-radius: 0;
}
.quick_modal_box .inner .item .input_caution{
	margin-top: 2vw;
	padding: 2vw;
	background: #ffe57f;
	border-radius: 4px;
	color: #367fa9;
	font-weight: 700;
}
.quick_modal_box .inner .item .input_caution span{
	color: #e60012;
}
.quick_modal_box .btn{
	padding-bottom: 6vw;
	text-align: center;
}
.quick_modal_box .btn button{
	width: 80%;
	padding: 2vw;
	display: inline-block;
	vertical-align: top;
	background: #E60012;
	border: none;
	border-radius: 4px;
	outline: none;
	font-size: 4.2vw;
	font-weight: 700;
	line-height: 1.5;
	color: #FEFEFE;
}
.quick_modal_box .btn button span{
	margin-top: 1vw;
	font-size: 3.2vw;
}
.quick_modal_box .link{
}
.quick_modal_box .link a{
	padding: 2vw;
	background: #f39c12;
	display: block;
	color: #FFF;
	text-align: center;
}
.quick_modal_box .link a span{
	display: inline-block;
	vertical-align: middle;
}
.quick_modal_box .link a strong{
	font-size: 4.2vw;
	font-weight: 700;
	text-decoration: underline;
}
.quick_modal_box .link a::before{
	content: "";
	width: 5vw;
	height: 5vw;
	margin-right: 4vw;
	background: url(../../images/modal_acc.png) no-repeat;
	background-size: 100% 100%;
	display: inline-block;
	vertical-align: middle;
}

.err{
	color: red;
	font-weight: bold;
	font-size: 20px;
}

.comp{
	color: green;
	font-weight: bold;
	font-size: 26px;
}