/* CSS Document */
@charset "utf-8";

@media screen and (min-width:768px) and ( max-width:1023px){

.wrapper{
	padding: 0 2vw;
}


/* header */

header{
	width: 100%;
	height: 12vw;
	background: #FFF;
	position: fixed; top: 0; left: 0;
	z-index: 50;
	box-shadow: 0 0 10px rgba(5, 2, 2, 0.2);
}
header .wrapper{
	padding: 0;
	display: flex;
	justify-content: flex-start;
	align-items: center;
	flex-wrap: wrap;
}
header h1{
	margin-top: 2vw;
	padding-left: 4vw;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	text-align: center;
}
header h1 img{
	width: 45vw;
	margin-top: 1vw;
}
header h1 span{
	display: block;
	font-size: 2vw;
	font-weight: normal;
}

header .menu{
}
header .menu .icon{
}
header .menu .icon p{
	width: 100%;
	position: absolute; bottom: -1vw; left: 0;
	font-size: 2vw;
	color: #990000;
	font-weight: bold;
	text-align: center;
}
header .menu .icon a{
	width: 10vw;
	height: 10vw;
	background: none;
	border-radius: 0;
	display: block;
	position: absolute; top: 0; right: 2vw;
	z-index: 100;
}
header .menu .icon span {
	width: 7vw;
	height: 2px;
	margin: -1px 0 0 -3.5vw;
	background: #990000;
	border-radius: 1px;
	display: block;
	position: absolute; top: 50%; left: 50%;
	transition: 0.2s;
}
header .menu .icon span:before,
header .menu .icon span:after {
	content: "";
	width: 7vw;
	height: 2px;
	background: #990000;
	border-radius: 1px;
	display: block;
	position: absolute; top: 0; left: 0;
	transition: 0.3s;
}
header .menu .icon span:before {
	margin-top: -8px;
}
header .menu .icon span:after {
	margin-top: 8px;
}
header .menu .icon a.on span {
	background: transparent;
}
header .menu .icon a.on span:before,
header .menu .icon a.on span:after {
	margin-top: 0;
	background: #990000;
}
header .menu .icon a.on span:before {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
header .menu .icon a.on span:after {
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}
header .menu .box{
	width: 100%;
	height: 100%;
	padding-top: 12vw;
	background: #FFF;
	position: fixed; top: 0; left: 0;
	display: none;
	z-index: 90;
	pointer-events: auto;
	overflow: auto;
}
header .menu nav {
	border-top: 1px solid #000;
	text-align: left;
}
header .menu nav > div {
	margin-top: 0;
	border-bottom: 1px solid #000;
}
header .menu nav > div a {
	padding: 2vw 2vw 2vw 4vw;
	background: #FFF;
	display: block;
	position: relative;
	font-size: 3vw;
	color: #000;
	font-weight: bold;
	text-decoration: none;
}
header .menu nav div a::before{
	content: "";
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid #dd9e37;
	position: absolute; top: 50%; left: 2vw;
	transform: translateY(-50%);
}
header .menu .login_box{
	padding: 2vw;
	background: #e5e5e5;
	display: block;
}
header.loggedin .login_box{
	display: none;
}
header .menu .login_box form{
	display: flex;
	justify-content: flex-end;
	align-items: center;
	flex-wrap: wrap;
}
header .menu .login_box .item{
	width: 38%;
	margin-top: 0;
	padding-left: 2vw;
	display: flex;
	align-items: center;
}
header .menu .login_box .item:first-child{
	width: 100%;
	padding-left: 0;
}
header .menu .login_box .name{
	margin-right: 1vw;
	font-size: 2.5vw;
}
header .menu .login_box .input{
	width: 100%;
}
header .menu .login_box .input select{
	border: 2px solid #990000;
	border-radius: 4px;
}
header .menu .login_box .btn{
	width: 100%;
	margin-top: 0;
	text-align: right;
}
header .menu .login_box .btn a{
	margin-right: 2vw;
	font-size: 2vw;
}
header .menu .login_box .btn button{
	padding: 0.5vw 2vw;
	display: inline-block;
	background: #990000;
	border: none;
	border-radius: 2.5vw;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 2.8vw;
	line-height: 4vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
header .menu .login_box .btn button i{
	margin-left: 2vw;
}
header .menu .media_btn{
	padding: 3vw;
}
header .menu .media_btn a{
	padding: 0.5vw 2vw;
	display: block;
	background: #7e6b5a;
	border: none;
	border-radius: 4vw;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 3vw;
	line-height: 7vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
header .menu .media_btn a span{
	font-size: 3.5vw;
}
header .menu .media_btn a i{
	margin-right: 2vw;
}

header .loggedin_box{
	padding: 2vw 4vw 4vw 4vw;
	background: #e5e5e5;
	display: none;
}
header.loggedin .loggedin_box{
	display: block;
}
header .loggedin_box .name{
	font-size: 3.2vw;
}
header .loggedin_box .name span{
	margin-right: 2vw;
	font-size: 4vw;
	font-weight: bold;
}
header .loggedin_box .btn_box{
	padding-top: 2vw;
	display: flex;
	justify-content: flex-end;
}
header .loggedin_box .btn{
	width: 28vw;
	margin-left: 2vw;
}
header .loggedin_box .btn a,
header .loggedin_box .btn button{
	width: 100%;
	padding: 2vw 1vw 1.5vw 1vw;
	display: inline-block;
	background: #990000;
	border: none;
	border-radius: 4vw;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 3vw;
	line-height: 4.5vw;
	font-weight: normal;
	color: #FFF;
	text-align: center;
}
header .loggedin_box .btn button{
	background: #AAA;
}
header .loggedin_box .btn a i{
	margin-right: 2vw;
}
header .loggedin_box .btn button i{
	margin-left: 2vw;
}


/* main */

main{
	margin-top: 12vw;
	overflow: hidden;
}

.kv{
	padding: 6vw 0 4vw 0;
	background: url(../images/kv/webp/bg.webp) no-repeat center;
	background-size: cover;
}
.kv .wrapper{
}
.kv .top_text{
}
.kv .top_text span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
	font-size: 4vw;
	font-weight: bold;
}
.kv h2{
	margin-top: 2vw;
	font-size: 8vw;
	font-weight: bold;
	color: #990000;
}
.kv p{
	font-size: 4vw;
	font-weight: bold;
}
.kv .device{
	margin-top: 3vw;
	text-align: center;
}
.kv .medal{
}
.kv .arrow{
	width: 6vw;
	margin: 3vw auto 0 auto;
	text-align: center;
}
.kv .btn_box{
	margin-top: 4vw;
	display: flex;
	justify-content: space-between;
}
.kv .btn_box div{
	width: 49%;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
}
.kv .btn_box div a{
	padding: 4vw 2vw 3vw 2vw;
	background: #990000;
	border: 1px solid #FFF;
	border-radius: 4px;
	display: block;
	font-size: 4vw;
	font-weight: normal;
	color: #FFF;
	text-align: center;
}
.kv .btn_box div a::after{
	content: "";
	margin-left: 4vw;
	display: inline-block;
	vertical-align: middle;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 10px solid #FFF;
}
.kv .btn_box div:last-child a{
	background: #555;
}
.kv .btn_box div a i{
	margin-right: 4vw;
}
.kv .caution{
	margin-top: 3vw;
	font-size: 2.8vw;
	line-height: 1.3;
}

.h2_box{
	text-align: center;
}
.h2_box h2{
	font-size: 5vw;
	line-height: 1.3;
	font-weight: normal;
	color: #59493f;
}
.h2_box h2 span{
	color: #990000;
}
.h2_box .h2_small{
	font-size: 2.8vw;
	font-weight: normal;
	color: #a6937c;
}

.structure{
	padding: 8vw 0;
	background: url(../images/structure/webp/bg.webp) no-repeat top left;
	background-size: cover;
}
.structure .top_text{
	margin-top: 4vw;
	font-size: 4vw;
	font-weight: bold;
	text-align: center;
}
.structure .top_text span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
}
.structure .top_text strong{
	color: #990000;
}
.structure  .inner{
	padding: 4vw 0 2vw 0;
	overflow: auto;
}
.structure .image{
	width: 1200px;
	position: relative;
}
.structure .btn{
	width: 340px;
	position: absolute; top: 410px; right: 165px;
}
.structure .arrow{
	width: 205px;
	margin: -50px auto 0 auto;
	text-align: center;
}
.structure .sub_title{
	font-size: 3vw;
	font-weight: bold;
	text-align: center;
}
.structure .caution{
	font-size: 2vw;
	font-weight: bold;
	text-align: center;
}
.structure p{
	font-size: 4vw;
	font-weight: bold;
	color: #990000;
	text-align: center;
}

.solution{
	padding: 12vw 0 8vw 0;
	background: #990000;
	position: relative;
}
.solution::before{
	content: "";
	position: absolute; top: 0; left: 50%;
	transform: translateX(-50%);
	border-top: 8vw solid #FFF;
	border-right: 8vw solid transparent;
	border-left: 8vw solid transparent;
}
.solution .h2_box h2{
	color: #FFF;
}
.solution .h2_box h2 span{
	color: #FFF;
}
.solution .h2_box .h2_small{
	color: #FFF;
}
.solution .box{
	padding-top: 2vw;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.solution .item{
	width: 49%;
	margin-top: 4vw;
	padding: 3vw;
	background: #FFF;
	border-radius: 6px;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
	text-align: center;
}
.solution .icon{
	width: 15vw;
	margin: 0 auto;
}
.solution .inner{
}
.solution h3{
	margin-top: 3vw;
	font-size: 4.2vw;
	font-weight: bold;
	color: #990000;
}
.solution .arrow{
	margin-top: 3vw;
}
.solution .arrow img{
	width: 12vw;
}
.solution .arrow span{
	margin-top: 1vw;
	display: block;
	font-weight: bold;
}
.solution .btn_box{
	padding-top: 2vw;
}
.solution .btn_box div{
	margin-top: 2vw;
}
.solution .btn_box div a{
	padding: 2vw 2vw 1vw 2vw;
	background: #f5e6e6;
	border: 1px solid #990000;
	border-radius: 10px;
	display: block;
	font-size: 4.2vw;
	font-weight: bold;
	color: #990000;
}
.solution .one_btn{
}
.solution .one_btn a img{
	width: 12vw;
}
.solution .one_btn a span{
	display: block;
	font-weight: bold;
}

.trouble{
	padding: 8vw 0 12vw 0;
	background: url(../images/trouble/webp/bg.webp) no-repeat center bottom;
	background-size: 100% auto;
}
.trouble .box{
	padding-top: 1vw;
}
.trouble .item{
	margin-top: 3vw;
	padding: 2vw;
	background: #FFF;
	border: 1px solid #555;
	border-radius: 4px;
}
.trouble h3{
	position: relative;
	font-size: 4vw;
	font-weight: bold;
	color: #990000;
}
.trouble h3::before{
	content: "";
	width: 70vw;
	height: 1px;
	background: #990000;
	position: absolute; bottom: 0; left: -2vw;
}
.trouble h3::after{
	content: "";
	width: 2vw;
	height: 2vw;
	background: #990000;
	border-radius: 1vw;
	position: absolute; bottom: calc(0.5px - 1vw); left: 68vw;
}
.trouble p{
	margin-top: 2vw;
	font-size: 3.2vw;
	font-weight: bold;
}
.trouble .logo{
	width: 90%;
	margin: 6vw auto 0 auto;
	text-align: center;
}
.trouble h4{
	margin-top: 1vw;
	font-size: 5.5vw;
	font-weight: bold;
	text-align: center;
}
.trouble h4 span{
	color: #990000;
}
.trouble .top{
	margin-top: 3vw;
	font-size: 3.5vw;
	font-weight: bold;
	text-align: center;
}
.trouble h5{
	margin-top: 1vw;
	text-align: center;
}
.trouble h5 span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
	font-size: 7vw;
	font-weight: bold;
	color: #990000;
}
.trouble .bottom{
	margin-top: 2vw;
	font-size: 3.5vw;
	font-weight: bold;
	text-align: center;
}

.point{
	margin-top: -8vw;
	padding: 0 0 6vw 0;
	background: url(../images/point/webp/bg.webp) no-repeat center bottom;
	background-size: 100% auto;
}
.point .box{
}
.point .item{
	margin-top: 4vw;
	padding: 2vw;
	background: #FFF;
	border: 2px solid #555;
	border-radius: 4px;
	position: relative;
}
.point .item::after{
	content: "";
	width: 18vw;
	height: 18vw;
	background: url(../images/common/webp/medal.webp) no-repeat;
	background-size: 100% 100%;
	position: absolute; top: -2vw; right: -2vw;
}
.point .icon{
	width: 35vw;
	margin: 0 auto;
}
.point h3{
	margin-top: 1vw;
	font-size: 5vw;
	font-weight: bold;
	text-align: center;
}
.point .balloon{
	margin-top: 1vw;
	font-size: 3vw;
	font-weight: bold;
	text-align: center;
}
.point .btn_box{
	width: 70%;
	margin: 0 auto;
}
.point .btn_box div{
	margin-top: 2vw;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));	
}
.point .btn_box div a{
	padding: 3vw 0 2vw 0;
	background: #990000;
	display: block;
	border: 1px solid #FFF;
	border-radius: 6px;
	position: relative;
	font-size: 3.5vw;
	line-height: 1.5;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.point .btn_box div:last-child a{
	background: #555;
}
.point .btn_box div a i{
	position: absolute; top: 50%; left: 3vw;
	transform: translateY(-50%);
}
.point .top{
	margin-top: 6vw;
	font-size: 4.5vw;
	font-weight: bold;
	text-align: center;
}
.point h4{
	text-align: center;
}
.point h4 span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
	font-size: 5vw;
	font-weight: bold;
	color: #990000;
}
.point .bottom{
	font-size: 4.5vw;
	font-weight: bold;
	text-align: center;
}

.cta{
	padding: 3vw 0 6vw 0;
	background: url(../images/cta/webp/bg_sp.webp) no-repeat center;
	background-size: cover;
}
.cta .btn_box{
	width: 50%;
	margin: 0 auto;
}
.cta .btn_box div{
	margin-top: 3vw;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));	
}

.use{
	padding: 8vw 0;
}
.use .wrapper{
	padding: 0;
}
.use .box{
	margin-top: 4vw;
}
.use .title_box{
	padding: 4vw 2vw;
	background: #555;
	position: relative;
}
.use h3{
	font-size: 4.5vw;
	font-weight: bold;
	color: #FFF;
}
.use .h3_small{
	margin-top: 2vw;
	font-size: 3vw;
	font-weight: bold;
	color: #FFF;
}
.use .btn{
	width: 48%;
	position: absolute; top: 6vw; left: 50%;
}
.use .inner{
	border: 1px solid #555;
	border-top: none;
}
.use p{
	padding: 4vw 2vw 0 2vw;
	font-size: 3.6vw;
	font-weight: bold;
}
.use p span{
	color: #990000;
}
.use .image{
	margin-top: 3vw;
}
.use .image img{
	width: 100%;
}
.use .sub_title{
	margin-top: 4vw;
	padding: 0 2vw;
	position: relative;
}
.use .sub_title::before{
	content: "";
	width: 93%;
	height: 1px;
	background: #555;
	position: absolute; top: 50%; left: 2vw;
	transform: translateY(-50%);
}
.use .sub_title span{
	padding: 0 2vw 0 0;
	background: #FFF;
	display: inline-block;
	position: relative;
	z-index: 1;
	font-size: 3.8vw;
	font-weight: bold;
}
.use .image_2{
	margin-top: 2vw;
	position: relative;
}
.use .image_2 img{
	width: 100%;
}
.use .link{
	width: 48%;
	position: absolute; top: 46.5vw; left: 50%;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
}
.use .bottom{
	margin-top: 4vw;
	padding: 0 2vw;
	text-align: center;
}
.use .bottom:last-child{
	padding-bottom: 4vw;
}
.use .bottom span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
	font-size: 4.2vw;
	font-weight: bold;	
}
.use .bottom strong{
	color: #990000;
}
.use .image_3{
	margin-top: 2vw;
}
.use .image_3 img{
	width: 100%;
}

.about{
	padding: 8vw 0;
	background: linear-gradient(#faf2f2, #ebcccc);
}
.about .box{
	padding: 6vw 4vw;
	background: #FFF;
	border-radius: 4px;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
}
.about .logo{
	width: 65%;
	margin: 0 auto;
	text-align: center;
}
.about .title{
	margin-top: 2vw;
	font-size: 4vw;
	font-weight: bold;
	text-align: center;
}
.about .title span{
	color: #990000;
}
.about p{
	margin-top: 3vw;
	font-size: 2.8vw;
	font-weight: bold;
}
.about p strong{
	color: #990000;
}
.about p span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
}
.about .bottom{
	margin-top: 3vw;
	font-size: 3.2vw;
	font-weight: bold;
	color: #990000;
	text-align: center;
}

.zoom{
	padding: 8vw 0;
}
.zoom h2{
	color: #000;
}
.zoom p{
	margin-top: 3vw;
	font-size: 2.5vw;
	text-align: center;
}
.zoom .btn{
	width: 70%;
	margin: 4vw auto 0 auto;
	text-align: center;
}
.zoom .btn a{
	margin: 3vw auto 0 auto;
	outline: none;
	padding: 2.5vw;
	background: #990000;
	border: 5px solid #7e0000;
	box-shadow: 0 5px 0 #cfcdce;
	border-radius: 10px;
	display: block;
	font-size: 3vw;
	font-weight: normal;
	color: #FFF;
	text-align: center;
}
.zoom .btn a i{
	margin-right: 2vw;
}

.contact{
	padding: 8vw 0;
	background: #f3efe8;
}
.contact h2{
	color: #000;
}
.contact p{
	margin-top: 3vw;
	font-size: 2.5vw;
	text-align: center;
}
.contact .box{
	margin-top: 2vw;
	padding: 0 2vw 4vw 2vw;
	background: #FFF;
}
.contact .inner{
}
.contact .item{
	padding-top: 2vw;
}
.contact .name{
	font-size: 3.2vw;
}
.contact .name span{
	margin-left: 2vw;
	padding: 0.1vw 1vw;
	background: #990000;
	vertical-align: middle;
	font-size: 2.2vw;
	color: #FFF;
}
.contact .input{
	margin-top: 1vw;
}
.contact .privacy_check{
	margin-top: 2vw;
	text-align: center;
}
.contact .btn{
	margin-top: 0;
}
.contact .btn button{
	min-width: 60vw;
	margin: 3vw auto 0 auto;
	outline: none;
	padding: 2.5vw;
	background: #990000;
	border: 5px solid #7e0000;
	box-shadow: 0 5px 0 #cfcdce;
	border-radius: 10px;
	display: block;
	font-size: 3vw;
	font-weight: normal;
	color: #FFF;
	text-align: center;
}
.contact .btn button i{
	margin-right: 2vw;
}


/* under_column */

.h2_area{
	background: url(../images/h2/webp/bg_sp.webp) no-repeat center;
	background-size: cover;
}

.basic_h2{
	padding: 4vw;
}
.basic_h2 .icon{
	height: 25vw;
	position: absolute; top: 4vw; left: 50%;
	transform: translateX(-50%);
}
.basic_h2 .icon img{
	height: 100%;
}
.basic_h2 h2{
	position: relative;
	z-index: 1;
	font-size: 5vw;
	line-height: 25vw;
	font-weight: normal;
	text-align: center;
}
.basic_h2 h2 small{
	font-size: 3.5vw;
	font-weight: normal;
}
.basic_h2 .acc{
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
}

.kigyo_h2{
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: center;
}
.kigyo_h2 h2{
	padding-top: 6vw;
	line-height: 1.3;
	font-weight: normal;
	text-align: left;
}

.basic_h2 .h2_about{
	min-width: 75vw;
	margin: 4vw 0;
	position: relative;
	z-index: 1;
}
.basic_h2 .h2_about a{
	padding: 1vw 0 0.5vw 0;
	background: #a6937c;
	border-radius: 3.5vw;
	display: block;
	font-size: 3.5vw;
	line-height: 5.5vw;
	color: #FFF;
	text-align: center;
}
.basic_h2 .h2_about a i{
	margin-right: 2vw;
}
.basic_h2 .h2_about a span{
}

.partner_about_modal{
	width: 100%;
	height: 100%;
	display: none;
	position: fixed; top: 0; left: 0;
	z-index: 10;
}
.partner_about_modal_bg{
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.5);
}
.partner_about_modal_box{
	width: 94%;
	background: #FFF;
	border-radius: 6px;
	position: absolute; top: 50%; left: 50%;
	transform:translate(-50%,-50%);
	overflow: hidden;
}
.partner_about_modal_title_box{
	padding: 2vw 3vw;
	background: #a6937c;
	position: relative;
	font-size: 4.2vw;
	line-height: 1.2;
	color: #FFF;
	font-weight: normal;
	text-align: left;
}
.partner_about_modal_title_box span{
	margin-left: 1vw;
}
.partner_about_modal_title_box a{
	position: absolute; top: 50%; right: 2vw;
	transform: translateY(-50%);
	color: #FFF;
}
.partner_about_modal_inner{
	height: 500px;
	overflow-y: auto;
	color: #444;
}
.partner_about_modal_inner p{
	padding: 3vw 2vw 0 2vw;
	font-size: 2.6vw;
	text-align: center;
}
.partner_about_modal_list{
	margin: 3vw 3vw 0 3vw;
	padding: 2vw 2vw 3vw 2vw;
	background: #f4f4f4;
	border-radius: 4px;
}
.partner_about_modal_list .item{
	margin-top: 1vw;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.partner_about_modal_list .num{
	width: 5vw;
	height: 5vw;
	background: #a6937c;
	border-radius: 2.5vw;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 3vw;
	line-height: 5vw;
	color: #FFF;
	font-weight: bold;
}
.partner_about_modal_list .text{
	width: calc(100% - 7vw);
	font-size: 3.2vw;
}
.partner_about_modal_caution{
	padding: 3vw;
}
.partner_about_modal_caution .item{
	margin-top: 1vw;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.partner_about_modal_caution .num{
	width: 10vw;
	font-size: 2.6vw;
}
.partner_about_modal_caution .text{
	width: calc(100% - 11vw);
	font-size: 2.6vw;
}

.jobsearch_big{
	padding: 0;
}
.jobsearch_big .box{
	padding: 4vw 2vw;
	background: #FFF;
	border-radius: 10px;
	box-shadow: 0 0 10px rgba(5, 2, 2, 0.2);
}
.jobsearch_big form{
}
.jobsearch_big .item{
	margin-bottom: 2vw;
}
.jobsearch_big .name{
	font-size: 3.2vw;
}
.jobsearch_big .input{
}
.jobsearch_big .input span.select_form{
	width: 100%;
}
.jobsearch_big .btn{
	text-align: right;
}
.jobsearch_big .btn button{
	padding: 1vw 6vw 0.5vw 6vw;
	display: inline-block;
	background: #f39c11;
	border: none;
	border-radius: 3.5vw;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 3.2vw;
	line-height: 5.5vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.jobsearch_big .btn button i{
	margin-right: 2vw;
}

.trans_area{
	padding: 2vw 0;
	background: #f39c11;
}
.trans_area .wrapper{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.trans_area p{
	margin-right: 2vw;
	font-size: 3vw;
}
.trans_area form{
	width: 100%;
}
.trans_area span.select_form{
	display: block;
}

.contents_box{
	padding: 6vw 0 8vw 0;
}
.right_contents{
}
.left_contents{
}

.form_step_box{
}
.form_step_box p{
	font-size: 3.2vw;
	text-align: center;
}
.form_step_box p small{
	display: block;
	font-size: 2.6vw;
}
.form_step{
	margin-top: 2vw;
	overflow-x: auto;
}
.form_step .inner{
	width: 150vw;
	padding: 4vw 0;
	display: flex;
	align-items: flex-start;
}
body.wide_body .form_step .inner{
	width: 250vw;
}
.form_step .item{
	width: 50vw;
	padding: 0 1vw;
}
.form_step .num{
	width: 15vw;
	margin: 0 auto;
	background: #AAA;
	border-radius: 4px;
	position: relative;
	font-size: 3.2vw;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.form_step .num::after{
	content: "";
	border-right: 5px solid transparent;
	border-top: 10px solid #AAA;
	border-left: 5px solid transparent;
	position: absolute; bottom: 0; left: 50%;
	transform: translate(-50%,100%);
}
.form_step .item.active .num{
	background: #F39C11;
}
.form_step .item.active .num::after{
	border-top-color: #F39C11;
}
.form_step .text{
	margin-top: 6vw;
	padding-top: 5vw;
	position: relative;
	font-size: 3.2vw;
	line-height: 1.5;
	color: #AAA;
	text-align: center;
}
.form_step .text small{
	display: block;
	font-size: 2.2vw;
	color: #666;
}
.form_step .text::before{
	content: "";
	width: 50vw;
	height: 1px;
	background: #F39C11;
	position: absolute; top: 0; left: 50%;
}
.form_step .item:last-child .text::before{
	display: none;
}
.form_step .text::after{
	content: "";
	width: 2vw;
	height: 2vw;
	background: #AAA;
	border-radius: 1vw;
	position: absolute; top: -1vw; left: 50%;
	transform: translateX(-50%);
}
.form_step .item.active .text{
	color: #000;
}
.form_step .item.active .text::after{
	background: #F39C11;
}
.form_step_box .login_box{
	margin-top: 4vw;
	padding: 2vw;
	background: #EEE;
}
.form_step_box .login_box .text{
	font-size: 3.2vw;
}
.form_step_box .login_box .text small{
	display: block;
	font-size: 2.2vw;
}
.form_step_box .login_box .btn{
	margin-top: 3vw;
	text-align: right;
}
.form_step_box .login_box .btn button{
	padding: 1vw 3vw 0.5vw 3vw;
	display: inline-block;
	background: #990000;
	border: none;
	border-radius: 3.5vw;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 3.2vw;
	line-height: 5.5vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.form_step_box .login_box .btn button i{
	margin-left: 2vw;
}
body.with_vietnamese .form_step_box .login_box .btn button{
	background: #990000;
	border-radius: 4.5vw;
	line-height: 4.2vw;
}
body.with_vietnamese .form_step_box .login_box .btn button small{
	display: block;
	font-size: 2.5vw;
	line-height: 3.3vw;
}

.form_step_box .login_box .link{
	margin-top: 3vw;
	text-align: right;
}
.form_step_box .login_box .link a{
	padding: 1vw 3vw 0.5vw 3vw;
	display: inline-block;
	background: #f39c11;
	border: none;
	border-radius: 3.5vw;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 3.5vw;
	line-height: 5.5vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}

.form_title_box{
	margin-top: 4vw;
	padding-bottom: 2vw;
	border-bottom: 2px solid #f39c12;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.form_title_box .num{
	margin-right: 2vw;
	padding: 0.5vw 2vw 0 2vw;
	background: #f39c11;
	border-radius: 2.5vw;
	font-size: 2.8vw;
	line-height: 4.5vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.form_title_box .title{
	margin-right: 2vw;
	font-size: 3.5vw;
	font-weight: bold;
}
.form_title_box .title small{
	font-size: 2.8vw;
	color: #0071bc;
}
.form_title_box .req{
	font-size: 2.8vw;
	font-weight: bold;
}
.form_title_box .req span{
	color: #e60012;
}
.form_title_box .req small{
	font-size: 2.8vw;
	color: #0071bc;
}
.form_title_box .btn_box{
	width: 100%;
	margin-top: 2vw;
}
.form_title_box .btn_box form{
	display: flex;
	justify-content: flex-end;
}
.form_title_box .btn_box div{
	margin-left: 2vw;
}
.form_title_box .btn_box div button{
	padding: 1vw 2vw 0.5vw 2vw;
	display: flex;
	align-items: center;
	background: #FFF;
	border: 2px solid #555;
	border-radius: 6px;
	outline: none;
	font-size: 3.2vw;
	line-height: 1.2;
	font-weight: normal;
	color: #555;
	text-align: center;
}
.form_title_box .btn_box div:last-child button{
	border-color: #f39c11;
	color: #f39c11;
}
.form_title_box .btn_box div button i{
	margin-right: 2vw;
	font-size: 6vw;
}
.form_title_box .btn_box div button small{
	display: block;
	font-size: 2.4vw;
	color: #666;
}

.form_box{
}
.form_box .item{
	margin-top: 4vw;
}
.form_box .name{
	font-size: 3.2vw;
}
.form_box .name span{
	color: #e60012;
}
.form_box .name span.trans{
	display: block;
	font-size: 2.2vw;
	color: #0071bc;
}
.form_box .name span.trans{
	display: block;
	font-size: 2.5vw;
	color: #0071bc;
}
.form_box .name small{
	display: block;
	font-size: 2.5vw;
}
.form_box .input{
	margin-top: 1vw;
}
.form_box .input.country{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
body.with_vietnamese .form_box .input.country{
	display: block;
}
.form_box .input.country select{
	width: 100%;
}
.form_box .input.country span{
	width: 35%;
	margin-top: 2vw;
	font-size: 3.2vw;
	display: block;
}
.form_box .input.country span small{
	margin-left: 2vw;
	color: #0071bc;
}
body.with_vietnamese .form_box .input.country span{
	width: 100%;
}
.form_box .input.country span.select_form{
	width: 100%;
	margin-top: 0;
}
.form_box .input.country span + input{
	width: 65%;
	margin-top: 2vw;
}
body.with_vietnamese .form_box .input.country span + input{
	width: 100%;
	margin-top: 0;
}
.form_box .input.birth{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.form_box .input.birth select{
	min-width: 10vw;
	width: auto;
	margin-right: 0;
}
.form_box .input.birth span{
	margin-right: 3vw;
	line-height: 1.2;
}
.form_box .input.birth span.select_form{
	margin-right: 1vw;
}
.form_box .input.birth span small{
	display: block;
	color: #0071bc;
}
.form_box .input .caution{
	margin-top: 1vw;
	font-size: 2.2vw;
	color: #f39c12;
}
.form_box .input .caution small{
	display: block;
}
.form_box .input span.inline_caution{
	margin-left: 2vw;
	font-size: 2.2vw;
	color: #f39c12;
}
.form_box .input.visa_type{
}
.form_box .input .visa_box{
	margin-top: 2vw;
	display: flex;
	align-items: center;
}
body.with_vietnamese .form_box .input .visa_box{
	display: block;
}
.form_box .input .visa_title{
	padding: 0 3vw;
	position: relative;
	font-size: 2.4vw;
	line-height: 1.5;
}
.form_box .input .visa_title small{
	margin-left: 1vw;
	color: #0071bc;
}
.form_box .input .visa_title br{
	display: inline !important;
}
.form_box .input .visa_title::before{
	content: "";
	border-top: 7px solid transparent;
	border-bottom: 7px solid transparent;
	border-left: 7px solid #F39C11;
	position: absolute; top: 50%; left: 0;
	transform: translateY(-50%);
}
.form_box .input .visa_inner{
}
body.with_vietnamese .form_box .input .visa_inner{
	margin-top: 2vw;
}
body.with_vietnamese .form_box .input .visa_inner label{
	display: block;
}
body.with_vietnamese .form_box .input .visa_inner label + label{
	margin-left: 0;
}
body.with_vietnamese .form_box .input .visa_inner label small{
	display: block;
}
.form_box .input.category{
}
.form_box .input.category div{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
body.with_vietnamese .form_box .input.category div{
	display: block;
}
.form_box .input.category div + div{
	margin-top: 2vw;
}
.form_box .input.category div span{
	width: 10%;
	font-size: 3.2vw;
}
.form_box .input.category div span small{
	margin-left: 2vw;
	color: #0071bc;
}
.form_box .input.category div span.select_form{
	width: 90%;
	display: block;
}
.form_box .input.category div + div span.select_form{
	width: 80%;
	margin-left: 10%;
}
body.with_vietnamese .form_box .input.category div span.select_form{
	width: 100%;
	margin-left: 0;
}
.form_box .input.category div:nth-child(2) span.select_form{
	margin-left: 0;
}
.form_box .input.category div + div span.select_form + button{
	margin-left: 2vw;
}
body.with_vietnamese .form_box .input.category div + div span.select_form + button{
	margin: 2vw 0 0 0;
}
.form_box .input.category div:last-child{
	margin-left: 10%;
}
body.with_vietnamese .form_box .input.category div:last-child{
	margin-left: 0;
}
.form_box .input .attached_title_box{
	padding: 2vw;
	background: #555;
}
.form_box .input .attached_title{
	font-size: 3.2vw;
	font-weight: bold;
	color: #FFF;
}
.form_box .input .attached_title small{
	display: block;
	font-weight: normal;
	font-size: 2.4vw;
}
.form_box .input .attached_caution{
	font-size: 2.8vw;
	color: #fff100;
	text-align: right;
}
.form_box .input .attached_caution small{
	display: block;
	font-size: 2vw;
}
.form_box .input .attached_box{
	padding: 2vw;
	background: #f4f4f4;
}
.form_box .input .attached_item{
	margin-top: 3vw;
	display: flex;
	flex-wrap: wrap;
	align-items: flex-start;
}
.form_box .input .attached_box .attached_item:first-child{
	margin-top: 0;
}
.form_box .input .attached_num{
	width: 3.2vw;
	margin-top: 1vw;
	padding-top: 0.2vw;
	background: #990000;
	border-radius: 1.6vw;
	font-size: 2.4vw;
	line-height: 3vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.form_box .input .attached_name{
	width: calc(100% - 4vw);
	padding-left: 2vw;
	font-size: 3.2vw;
	line-height: 1.5;
	color: #444;
}
.form_box .input .attached_name small{
	display: block;
	color: #0071bc;
}
.form_box .input .attached_inner{
	padding-left: 6vw;
}
.form_box .input .attached_inner div{
	margin-top: 0.5vw;
}
.form_box .input .gray_box{
	padding: 2vw 2vw 10vw 2vw;
	background: #f4f4f4;
	position: relative;
}
.form_box .input .gray_box + .gray_box{
	margin-top: 2vw;
}
.form_box .input .gray_box .delete_btn{
	position: absolute; bottom: 2vw; right: 2vw;
}
.form_box .input .gray_box_add{
	margin-top: 2vw;
	display: flex;
	justify-content: flex-end;
}
.form_box .input .education_box{
}
.form_box .input .education_item{
	margin-top: 2vw;
}
.form_box .input .education_box .education_item:first-child{
	margin-top: 0;
}
.form_box .input .education_name{
	font-size: 3.2vw;
}
.form_box .input .education_name small{
	margin-left: 1vw;
	color: #0071bc;
}
.form_box .input .education_inner{
}
body.with_vietnamese .form_box .input .education_inner{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.form_box .input .education_inner span.select_form{
	display: inline-block;
}
.form_box .input .education_inner span.select_form select{
	min-width: 10vw;
	width: auto;
}
.form_box .input .education_inner span{
	margin-right: 1.5vw;
}
body.with_vietnamese .form_box .input .education_inner span{
	width: auto;
	margin: 0 2vw;
	line-height: 1.2;
}
.form_box .input .education_inner span.select_form{
	margin-right: 0.5vw;
}
body.with_vietnamese .form_box .input .education_inner span.select_form{
	width: auto;
	margin-left: 0;
}
.form_box .input .education_inner span small{
	display: block;
	font-size: 2.2vw;
	color: #0071bc;
}
.form_box .input .history_box{
}
.form_box .input .history_item{
	margin-top: 2vw;
}
.form_box .input .history_box .history_item:first-child{
	margin-top: 0;
}
.form_box .input .history_name{
	font-size: 3.2vw;
}
.form_box .input .history_name small{
	margin-left: 1vw;
	color: #0071bc;
}
.form_box .input .history_inner{
}
body.with_vietnamese .form_box .input .history_inner{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.form_box .input .history_inner span.select_form{
	display: inline-block;
}
.form_box .input .history_inner span.select_form select{
	min-width: 10vw;
	width: auto;
}
body.with_vietnamese .form_box .input .history_inner span{
	margin-right: 1vw;
}
body.with_vietnamese .form_box .input .history_inner span:nth-child(4){
	margin-right: 1vw;
}
.form_box .input .history_inner span{
	margin-right: 1.5vw;
	line-height: 1.2;
}
.form_box .input .history_inner span.select_form{
	margin-right: 0.5vw;
}
.form_box .input .history_inner span small{
	display: block;
	font-size: 2.2vw;
	color: #0071bc;
}
.form_box .input .movie_box{
	margin-top: 2vw;
}
.form_box .input .sample_movie{
	width: 35vw;
}
.form_box .input .sample_movie a{
	padding: 3vw 0;
	background: #FFF;
	border: 1px solid #999;
	display: block;
	line-height: 1.2;
	color: #666;
	text-align: center;
}
.form_box .input .sample_movie a small{
	display: block;
}
.form_box .input .movie_icon{
	display: block;
}
.form_box .input .movie_icon i{
	font-size: 12vw;
}
.form_box .input .movie_play{
	display: block;
	font-size: 3vw;
	color: #333;
	text-decoration: underline;
}
.form_box .input .movie_inner{
	margin-top: 2vw;
	padding: 2vw;
	background: #EEE;
}
.form_box .input .movie_title{
	display: flex;
	align-items: flex-start;
}
.form_box .input .movie_title i{
	margin-right: 2vw;
	font-size: 6vw;
	color: #e60012;
}
.form_box .input .movie_title span{
	font-size: 2.8vw;
	line-height: 1.5;
	font-weight: bold;
	color: #333;
}
.form_box .input .movie_title span small{
	display: block;
	color: #666;
	font-weight: normal;
}
.form_box .input .movie_text{
	margin-top: 2vw;
	font-size: 2.6vw;
	color: #333;
}
.form_box .input .movie_text small{
	display: block;
}
.form_box .input .address_box{
}
.form_box .input .address_item{
	margin-top: 2vw;
}
.form_box .input .address_box .address_item:first-child{
	margin-top: 0;
}
.form_box .input .address_name{
}
.form_box .input .address_name small{
	margin-left: 1vw;
	color: #0071bc;
}
.form_box .input .address_inner{
}
.form_box .input .address_inner input.zip{
	width: 35vw;
}
body.with_vietnamese .form_box .input .address_inner input.zip{
	width: 100%;
	margin-top: 2vw;
}
.form_box .input .address_inner button{
	padding: 0.5vw 1.5vw 0 1.5vw;
	background: #f39c12;
	border: 1px solid #e08e0b;
	border-radius: 4px;
	font-size: 3vw;
	line-height: 1.5;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
body.with_vietnamese .form_box .input .address_inner button{
	margin-top: 2vw;
}
.form_box .input .zip_link{
	margin-top: 1vw;
}
body.with_vietnamese .form_box .input .zip_link{
	margin-top: 0;
}
.form_box .input .zip_link a{
	color: #e60012;
	text-decoration: underline;
}
.form_box .input .zip_link small{
	display: block;
	color: #0071bc;
	text-decoration: none;
}
.form_box .input .karte_box{
	margin-top: 3vw;
	padding: 3vw;
	background: #EEE;
}
.form_box .input .karte_title{
	font-size: 3.2vw;
	font-weight: bold;
	color: #333;
}
.form_box .input .karte_text{
	margin-top: 2vw;
	font-size: 2.8vw;
	color: #333;
}
.form_box .input.line_id{
}
.form_box .input.line_id span{
}
.form_box .input.line_id span small{
	margin-left: 1vw;
	color: #0071bc;
}
.form_box .input.line_id span + input{
	margin: 1vw 0 0 1vw;
}
.form_box .input.support{
}
.form_box .input.support div{
}
.form_box .input.support div + div{
	margin-top: 1vw;
}
.form_box .input.support button{
	margin-top: 1vw;
}
.form_box .input.support button + button{
	margin: 1vw 0 0 1vw;
}
.form_box .input.permit_number{
}
.form_box .input.permit_number input{
}
.form_box .input.permit_number input.w50{
	width: 8%;
}
.form_box .input.permit_number input.w350{
	width: 25%;
}
.form_box .input.permit_number span{
	font-size: 3vw;
}
.form_box .career_box{
	margin-top: 3vw;
}
.form_box .career_title_box{
	padding: 2vw;
	background: #555;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.form_box .career_title{
	font-size: 3.2vw;
	color: #FFF;
}
.form_box .career_title small{
	margin-left: 1vw;
}
.form_box .career_inner{
	padding: 2vw;
	background: #f4f4f4;
}
.form_box .career_item{
	margin-top: 2vw;
}
.form_box .career_item:first-child{
	margin-top: 0;
}
.form_box .career_name{
	font-size: 3.2vw;
}
.form_box .career_name span{
	color: #e60012;
}
.form_box .career_name small{
	margin-left: 1vw;
	color: #0071bc;
}
.form_box .career_input{
}
.form_box .career_inner .career_item:first-child .career_input{
	display: flex;
	align-items: center;
}
.form_box .career_inner .career_item:first-child span{
	margin-right: 2vw;
}
.form_box .career_inner .career_item:first-child span.select_form{
	width: auto;
	margin-right: 1vw;
	display: inline-block;
}
.form_box .career_inner .career_item span small{
	color: #0071bc;
	font-size: 2vw;
}
.form_box .career_inner .career_item:first-child span small{
	display: block;
}
.form_box .career_category{
}
.form_box .career_category div{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
body.with_vietnamese .form_box .career_category div{
	display: block;
}
.form_box .career_category div + div{
	margin-top: 2vw;
}
.form_box .career_category div span{
	width: 10%;
	font-size: 3.2vw;
}
.form_box .career_category div span small{
	margin-left: 1vw;
}
.form_box .career_category div span.select_form{
	width: 90%;
	display: block;
}
body.with_vietnamese .form_box .career_category div span.select_form{
	width: 100%;
}
.form_box .career_category div + div span.select_form{
	width: 70%;
	margin-left: 10%;
}
body.with_vietnamese .form_box .career_category div + div span.select_form{
	width: 100%;
	margin-left: 0;
}
.form_box .career_category div:nth-child(2) span.select_form{
	margin-left: 0;
}
.form_box .career_category div + div span.select_form + button{
	margin-left: 1vw;
}
body.with_vietnamese .form_box .career_category div + div span.select_form + button{
	margin-left: 0;
	margin-top: 2vw;
}
.form_box .career_category div:last-child{
	margin-left: 10%;
}
body.with_vietnamese .form_box .career_category div:last-child{
	margin-left: 0;
}
.form_box .career_add_btn{
	margin-top: 2vw;
	display: flex;
	justify-content: flex-end;
}

.form_box .apply_check_box{
	margin-top: 4vw;
	padding: 3vw;
	background: #f4f4f4;
	border: 1px solid #CCC;
	border-radius: 4px;
}
.form_box .apply_check_title{
	font-size: 3.2vw;
	font-weight: bold;
	color: #333;
	text-align: center;
}
.form_box .apply_check_title small{
	display: block;
	color: #666;
}
.form_box .apply_check_box label{
	margin-top: 3vw;
	display: flex;
	align-items: flex-start;
	font-size: 3vw;
}
.form_box .apply_check_box label input{
	margin: 1vw 1vw 0 0;
}
.form_box .apply_check_box label small{
	margin-top: 1vw;
	display: block;
	color: #666;
}
.form_box .btn{
	width: 80vw;
	margin: 6vw auto 0 auto;
}
.form_box .btn button{
	width: 100%;
	padding: 5vw 2vw;
	display: block;
	background: #990000;
	border: none;
	border-radius: 6px;
	outline: none;
	font-size: 3.5vw;
	line-height: 1.5;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.form_box .btn button.two_line{
}
.form_box .btn button.two_line span{
	display: block;
	font-size: 3.5vw;
}
.form_box .btn button.two_line span + span{
	font-size: 2.6vw;
}

.form_top_caution{
	margin-top: 1vw;
	font-size: 3vw;
	font-weight: bold;
	color: #e60012;
}
.form_box .word_count{
	font-size: 2.4vw;
	color: #666;
	text-align: right;
}

.hit_num{
	display: flex;
	justify-content: space-between;
	font-size: 3vw;
	color: #e60012;
	font-weight: bold;
}
.hit_num strong{
	font-size: 3.3vw;
	color: #000;
	font-weight: bold;
}

.jobsearch_list{
}
.jobsearch_list .box{
	margin-top: 3vw;
	border: 1px solid #666;
}
.jobsearch_list .cate{
	padding: 1.5vw 2vw;
	background: #666;
	font-size: 3vw;
	line-height: 1.5;
	color: #FFF;
}
.jobsearch_list .catch{
	margin: 0 2vw;
	padding: 2vw 0;
	border-bottom: 1px solid #f39c11;
	font-size: 3.2vw;
	color: #f39c11;
	font-weight: bold;
}
.jobsearch_list .inner{
	padding: 2vw;
}
.jobsearch_list .item{
	margin-top: 2vw;
}
.jobsearch_list .title{
	width: 25vw;
	padding-top: 0.5vw;
	background: #f39c11;
	border-radius: 2.5vw;
	font-size: 3vw;
	line-height: 4.5vw;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.jobsearch_list .text{
	margin-top: 1vw;
	padding-left: 2vw;
	font-size: 3vw;
}
.jobsearch_list .bottom{

}
.jobsearch_list .tag{
	padding: 0.5vw 2vw 0 2vw;
	display: flex;
	flex-wrap: wrap;
}
.jobsearch_list .tag div{
	margin: 1.5vw 1.5vw 0 0;
	padding: 0.5vw 1.5vw 0 1.5vw;
	background: #f3efe8;
	font-size: 2.8vw;
}
.jobsearch_list .btn_box{
	padding: 2vw 2vw 4vw 2vw;
	display: flex;
	justify-content: space-between;
}
.jobsearch_list .btn_box .btn{
	width: 49%;
	margin-top: 2vw;
	border-radius: 6px;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	overflow: hidden;
}
.jobsearch_list .btn_box .btn a{
	padding: 1vw 0 0.5vw 0;
	background: #f39c11;
	display: block;
	font-size: 2.7vw;
	font-weight: normal;
	color: #FFF;
	text-align: center;
}
.jobsearch_list .btn_box .btn.last a{
	background: #990000;
}
.jobsearch_list .btn_box .btn a span{
	display: block;
}
.jobsearch_list .btn_box .btn a span:first-child{
	font-size: 3.2vw;
	font-weight: bold;
}

.modal_box{
	width: 94%;
	background: #FFF;
	border-radius: 6px;
	position: absolute; top: 50%; left: 50%;
	transform:translate(-50%,-50%);
	overflow: hidden;
}
.modal_title_box{
	padding: 2vw 3vw;
	background: #990000;
	position: relative;
	font-size: 3vw;
	line-height: 1.2;
	color: #FFF;
	font-weight: normal;
	text-align: left;
}
.modal_title_box span{
	margin-left: 1vw;
}
.modal_title_box a{
	position: absolute; top: 50%; right: 2vw;
	transform: translateY(-50%);
	color: #FFF;
}
.modal_inner{
	max-height: 500px;
	overflow-y: auto;
	color: #444;
}

.modal_login_category{
	padding: 3vw 2vw 0 2vw;
}
.modal_login_category .title{
	width: 20vw;
	padding-top: 0.5vw;
	background: #555;
	border-radius: 2vw;
	font-size: 2.2vw;
	line-height: 3.5vw;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.modal_login_category .input{
	display: flex;
	flex-flow: column;
}
.modal_login_category .input label{
	margin-top: 1vw;
}
.modal_login_category .input label + label{
	margin-left: 0;
}
.modal_login_input{
	padding: 1vw 2vw 0 2vw;
}
.modal_login_input .item{
	margin-top: 2vw;
}
.modal_login_input .title{
	width: 20vw;
	padding-top: 0.5vw;
	background: #555;
	border-radius: 2vw;
	font-size: 2.2vw;
	line-height: 3.5vw;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.modal_login_input .input{
	margin-top: 1vw;
}
.modal_login_btn{
	margin-top: 3vw;
	text-align: center;
}
.modal_login_btn button{
	padding: 2vw 8vw 1.5vw 8vw;
	display: inline-block;
	background: #990000;
	border: none;
	border-radius: 4vw;
	outline: none;
	font-size: 3vw;
	line-height: 4.5vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.modal_login_btn button i{
	margin-left: 2vw;
}
.modal_login_foget{
	margin-top: 1vw;
	font-size: 0;
	text-align: center;
}
.modal_login_foget a{
	font-size: 2vw;
	line-height: 1.2;
	color: #a6937c;
	text-align: center;
	text-decoration: underline;
}

.modal_registration_box{
	margin: 3vw 2vw 2vw 2vw;
	padding: 3vw 2vw;
	background: #f3efe8;
	border-radius: 10px;
}
.modal_registration_box .left{
	display: flex;
	align-items: center;
}
.modal_registration_box .medal{
	width: 10vw;
}
.modal_registration_box .text{
	margin-top: 0;
	padding-left: 2vw;
	font-size: 2.5vw;
	color: #000;
}
.modal_registration_box .right{
}
.modal_registration_box .title{
	width: auto;
	padding-top: 3vw;
	background: none;
	border-radius: 0;
	font-size: 3vw;
	line-height: 1.5;
	color: #990000;
	font-weight: bold;
	text-align: center;
}
.modal_registration_box .inner{
	padding: 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.modal_registration_box .item{
	width: 49%;
	margin-top: 2vw;
	padding: 2vw;
	background: #FFF;
	border: 1px solid #555;
	display: flex;
	flex-flow: column;
	align-items: center;
}
.modal_registration_box .item:nth-child(even){
	border-color: #7e0000;
}
.modal_registration_box .icon{
	width: 20vw;
}
.modal_registration_box .btn_box{
	padding: 0;
	display: flex;
	flex-flow: column;
}
.modal_registration_box .btn_box .btn{
	width: 30vw;
}
.modal_registration_box .btn_box .btn a{
	padding: 2vw 0 1.5vw 0;
	background: #555;
	display: block;
	font-size: 2.2vw;
	line-height: 1.2;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.modal_registration_box .item:nth-child(even) .btn_box .btn a{
	background: #7e0000;
}
.modal_registration_box p{
	margin-top: 1vw;
	font-size: 2.2vw;
	text-align: center;
}

.modal_apply{
	padding: 1vw 2vw 2vw 2vw;
}
.modal_apply .welcome{
	margin-top: 2vw;
	font-size: 2.7vw;
	font-weight: bold;
	text-align: center;
}
.modal_apply .top_text{
	margin-top: 2vw;
	font-size: 2.2vw;
	text-align: center;
}
.modal_apply_box{
	margin-top: 2vw;
}
.modal_apply_box .category{
	padding: 1vw 2vw;
	background: #666;
	font-size: 2.5vw;
	color: #FFF;
}
.modal_apply_box .detail{
	padding: 2vw;
	background: #f3efe8;
	border-radius: 0 0 10px 10px;
}
.modal_apply_box .catch_copy{
	padding-bottom: 1vw;
	border-bottom: 1px solid #f39c11;
	font-size: 2.7vw;
	line-height: 1.3;
	color: #f39c11;
	font-weight: bold;
}
.modal_apply_inner{
	padding-top: 1vw;
}
.modal_apply_inner .item{
}
.modal_apply_inner .title{
	width: 25vw;
	padding-top: 0.5vw;
	background: #f39c11;
	border-radius: 2.25vw;
	font-size: 2.5vw;
	line-height: 4vw;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.modal_apply_inner .text{
	margin-top: 1vw;
	padding-left: 2vw;
	font-size: 2.5vw;
	color: #000;
}

.modal_apply_select{
	padding-top: 4vw;
}
.modal_apply_select .title{
	width: 30vw;
	padding-top: 0.5vw;
	background: #555;
	border-radius: 2vw;
	font-size: 2.2vw;
	line-height: 3.5vw;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.modal_apply_select .input{
	margin-top: 1vw;
}
.modal_apply_select .input span{
	width: 100%;
}

.modal_apply_btn_box{
	padding-top: 2vw;
	display: flex;
	justify-content: space-between;
}
.jobsearch_list .btn_box .modal_apply_btn_box .btn{
	width: 49%;
	margin-top: 0;
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
}
.modal_apply_btn_box .btn button{
	width: 100%;
	padding: 2vw 0 1.5vw 0;
	background: #f39c11;
	border: none;
	border-radius: 4vw;
	outline: none;
	display: block;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 2.7vw;
	line-height: 4.5vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.modal_apply_btn_box .btn:nth-child(even) button{
	background: #990000;
}
.modal_apply_btn_box .btn button i{
	margin-left: 2vw;
}

.modal_message{
	padding: 4vw 2vw;
}
.modal_message .title{
	width: 100%;
	padding-top: 0;
	background: none;
	border-radius: 0;
	font-size: 3.2vw;
	line-height: 1.5;
	color: #444;
	font-weight: bold;
	text-align: center;
}
.modal_message .text{
	margin-top: 1vw;
	padding-left: 0;
	font-size: 2.5vw;
	text-align: center;
}
.modal_message .btn{
}
.jobsearch_list .btn_box .modal_message .btn{
	width: 50%;
	margin: 2vw auto 0 auto;
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
	text-align: center;
}
.jobsearch_list .btn_box .modal_message .btn a{
	width: 100%;
	padding: 2vw 0 1.5vw 0;
	background: #f39c11;
	border: none;
	border-radius: 4vw;
	outline: none;
	display: block;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 2.7vw;
	line-height: 4.5vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.jobsearch_list .btn_box .modal_message .btn.complete a{
	background: #990000;
}
.modal_message .btn a i{
	margin-left: 2vw;
}

.modal_job_list{
	padding: 2vw 0 4vw 0;
}
.modal_job_list .top_box{
	padding: 1vw 2vw 0 2vw;
}
.modal_job_list .movie{
	width: 60%;
	margin: 0 auto;
}
.modal_job_list .movie_inner{
	height: 30vw;
	border: 1px solid #555;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 12vw;
	text-align: center;
}
.modal_job_list .inner{
	margin-top: 3vw;
	padding: 0;
}
.modal_job_list .catch_copy{
	font-size: 3.2vw;
	line-height: 1.3;
	color: #f39c11;
	font-weight: bold;
}
.modal_job_list .category{
	padding-top: 1vw;
}
.modal_job_list .item{
}
.modal_job_list .title{
	width: 25vw;
	padding-top: 0.5vw;
	background: #f39c11;
	border-radius: 2.25vw;
	font-size: 2.5vw;
	line-height: 4vw;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.modal_job_list .text{
	margin-top: 1vw;
	padding-left: 0;
	font-size: 2.5vw;
	color: 000;
}

.modal_job_table{
	padding: 4vw 0 0 0;
}
.modal_job_table table{
	width: 100%;
	border-collapse: collapse;
	font-size: 2.7vw;
}
.modal_job_table tr{
}
.modal_job_table tr:nth-child(odd){
	background: #f3efe8;;
}
.modal_job_table th,
.modal_job_table td{
	padding: 2vw;
	display: block;
	font-weight: normal;
	text-align: left;
}
.modal_job_table th{
}
.modal_job_table td{
	border-top: 1px solid #DDD;
}

.modal_job_list .modal_apply_select,
.modal_job_list .modal_apply_btn_box{
	padding: 2vw 2vw 0 2vw;
}
.modal_job_list .modal_apply_select{
	padding-top: 4vw;
}
.modal_job_list .modal_apply_select .title{
	width: 30vw;
	padding-top: 0.5vw;
	background: #555;
	border-radius: 2vw;
	font-size: 2.2vw;
	line-height: 3.5vw;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}

.pagination{
	margin-top: 6vw;
	display: flex;
	justify-content: center;
	align-items: center;
}
.pagination a{
	font-size: 3vw;
	color: #f39c11;
}
.pagination a.prev{
	margin-right: 3vw;
}
.pagination a.next{
	margin-left: 3vw;
}
.pagination a.item{
	width: 6vw;
	margin: 0 1vw;
	padding-top: 0.5vw;
	border: 1px solid #f39c11;
	font-size: 3vw;
	line-height: 5.5vw;
	text-align: center;
}
.pagination a.item.active{
	background: #f39c11;
	color: #FFF;
}

.jobsearch_small{
	margin-top: 8vw;
}
.jobsearch_small h3{
	padding: 2vw 0 1.5vw 0;
	background: #555;
	font-size: 3.2vw;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.jobsearch_small .box{
	padding: 4vw 2vw;
	background: #f4f4f4;
	border: 1px solid #555;
}
.jobsearch_small .item{
	margin-bottom: 2vw;
}
.jobsearch_small .name{
	font-size: 3.2vw;
}
.jobsearch_small .input{
}
.jobsearch_small .input span.select_form{
	width: 100%;
}
.jobsearch_small .save_check{
	text-align: center;
}
.jobsearch_small .btn{
	width: 70%;
	margin: 0 auto;
	padding-top: 3vw;
}
.jobsearch_small .btn button{
	width: 100%;
	padding: 3vw;
	display: block;
	background: #990000;
	border: none;
	border-radius: 10px;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 3.2vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}

.line_account{
	margin-top: 4vw;
}
.line_account h3{
	padding: 3vw 0 2.5vw 0;
	background: #555;
	font-size: 3.2vw;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.line_account .box{
	padding: 6vw 2vw;
	background: #f4f4f4;
	border: 1px solid #555;
}
.line_account .qr{
	width: 35vw;
	margin: 0 auto;
}
.line_account p{
	margin-top: 4vw;
	font-size: 3vw;
	line-height: 1.5;
	text-align: center;
}

.registration_info_box{
	margin-top: 4vw;
}
.registration_info_box h3{
	padding: 3vw 0 2.5vw 0;
	background: #555;
	font-size: 3.5vw;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.registration_info_box .box{
	padding: 6vw 2vw;
	background: #f4f4f4;
	border: 1px solid #555;
	text-align: center;
}
.registration_info_box .medal{
	width: 25vw;
	margin: 0 auto;
	text-align: center;
}
.registration_info_box h4{
	margin-top: 2vw;
	font-size: 4vw;
	font-weight: bold;
}
.registration_info_box p{
	margin-top: 2vw;
	font-size: 3.5vw;
}
.registration_info_box h5{
	margin-top: 2vw;
	font-size: 3.5vw;
	font-weight: bold;
	color: #990000;
}
.registration_info_box .inner{
}
.registration_info_box .item{
	margin-top: 3vw;
	padding: 2vw;
	background: #FFF;
	border: 1px solid #555;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.registration_info_box .icon{
	width: 30vw;
}
.registration_info_box .detail{
	width: calc(100% - 35vw);
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
}
.registration_info_box .text{
	font-size: 3vw;
	line-height: 1.3;
}
.registration_info_box .btn{
	width: 75%;
	margin-top: 1vw;
}
.registration_info_box .btn a{
	width: 100%;
	margin: 0 auto;
	padding: 2vw 1vw;
	background: #555;
	border-radius: 6px;
	display: block;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 3.5vw;
	line-height: 4vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.registration_info_box .item:nth-child(even) .btn a{
	background: #990000;
}


/* guide */

.guide_h2{
	padding: 18vw 0 2vw 0;
}
.guide_h2 .inner{
}
.guide_h2 .icon{
	height: 25vw;
	position: absolute; top: 4vw; left: 50%;
	transform: translateX(-50%);
}
.guide_h2 .icon img{
	height: 100%;
}
.guide_h2 .title_box{
	padding-top: 2vw;
	position: relative;
	z-index: 1;
	text-align: center;
}
.guide_h2 .big_title{
	margin-top: 4vw;
	font-size: 7vw;
	line-height: 1.3;
	font-weight: bold;
	color: #990000;
}
.guide_h2 .big_title small{
	font-size: 6vw;
}
.guide_h2 .big_title span{
	font-size: 5vw;
	font-weight: normal;
	color: #000;
}
.guide_h2 .small_title{
	margin-top: 2vw;
	font-size: 4vw;
	line-height: 1.3;
}
.guide_h2 .small_title span{
	margin-right: 2vw;
	padding: 1vw 2vw 0.5vw 2vw;
	background: #990000;
	border-radius: 3vw;
	display: inline-block;
	vertical-align: middle;
	font-size: 3vw;
	line-height: 4.5vw;
	font-weight: bold;
	color: #fff9b4;
	text-align: center;
}
.guide_h2 .cate{
	position: relative;
	z-index: 1;
	text-align: center;
}
.guide_h2 .cate div{
	padding: 1vw 3vw 0.5vw 3vw;
	background: #555;
	border-radius: 3.25vw;
	display: inline-block;
	font-size: 3.5vw;
	line-height: 5vw;
	color: #FFF;
}
.guide_h2 .btn_box{
	margin-top: 4vw;
	display: flex;
	justify-content: space-between;
}
.guide_h2 .btn_box div{
	width: 49%;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
}
.guide_h2 .btn_box div a{
	padding: 4vw 2vw 3vw 2vw;
	background: #990000;
	border: 1px solid #FFF;
	border-radius: 4px;
	display: block;
	font-size: 4vw;
	font-weight: normal;
	color: #FFF;
	text-align: center;
}
.guide_h2 .btn_box div a::after{
	content: "";
	margin-left: 4vw;
	display: inline-block;
	vertical-align: middle;
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 10px solid #FFF;
}
.guide_h2 .btn_box div:last-child a{
	background: #555;
}
.guide_h2 .btn_box div a i{
	margin-right: 4vw;
}
.guide_h2 .caution{
	margin-top: 4vw;
	font-size: 2.5vw;
	line-height: 1.3;
	color: #555;
}

.guide_link{
	padding: 4vw 0;
	background: #f3efe8;
}
.guide_link h2{
	font-size: 4vw;
	line-height: 1.3;
	font-weight: normal;
	text-align: center;
}
.guide_link .select{
	margin-top: 3vw;
}
.guide_link .select span{
	display: block;
}
.guide_link .select select{
	border-color: #a6937c;
	border-radius: 4px;
}

body.guide_page .h3_box{
	text-align: center;
}
body.guide_page .h3_box h3{
	font-size: 6.5vw;
	line-height: 1.3;
	font-weight: normal;
	color: #555;
}
body.guide_page .h3_box h3 small{
	display: block;
	font-size: 4vw;
}
body.guide_page .h3_box h3 strong{
	font-weight: normal;
	color: #990000;
}
body.guide_page .h3_box h3 span{
	font-size: 4vw;
}
body.guide_page .h3_box .h3_small{
	font-size: 2.5vw;
	color: #a6937c;
}

.guide_can{
	padding-top: 8vw;
}
.guide_can .box{
	padding-top: 4vw;
}
.guide_can .inner{
	display: flex;
	flex-wrap: wrap;
	gap: 2vw;
}
.guide_can .item{
	width: 22vw;
	position: relative;
}
.guide_can .item span{
	padding: 0.3vw 2vw 0 2vw;
	background: #990000;
	border-radius: 1.75vw;
	display: block;
	position: absolute; top: -1.5vw; left: -1.5vw;
	z-index: 1;
	font-size: 2.5vw;
	line-height: 3.2vw;
	font-weight: bold;
	color: #fff9b4;
	text-align: center;
}
.guide_can .carte{
	margin: 4vw 0 5vw 0;
	padding: 1vw 2vw;
	background: #7e6b5a;
	border-radius: 3vw;
	font-size: 3vw;
	line-height: 4vw;
	color: #FFF;
	text-align: center;
}
.guide_can .carte a{
	color: #ffff00;
}

.guide_example{
	padding: 8vw 0 2vw 0;
}
.guide_example .top_text{
	margin-top: 2vw;
	font-size: 3vw;
	line-height: 1.3;
	text-align: center;
}
.guide_example .question_box{
	margin-top: 4vw;
	padding: 0 3vw 3vw 3vw;
	background: #fffde5;
	border: 1px solid #a6937c;
	border-radius: 10px;
}
.guide_example .question_box .item{
	padding-top: 3vw;
}
.guide_example .question_box .title{
	display: flex;
	align-items: center;
	font-size: 3vw;
	font-weight: bold;
	color: #59493f;
}
.guide_example .question_box .title span{
	width: 4vw;
	height: 4vw;
	margin-right: 2vw;
	background: #59493f;
	border-radius: 2vw;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 2.5vw;
	color: #FFF;
	text-align: center;
}
.guide_example .question_box .text{
	padding-left: 6vw;
	font-size: 3vw;
	line-height: 1.3;
}
.guide_example .case_box{
	margin-top: 4vw;
}
.guide_example .case_title{
	display: flex;
	align-items: center;
	font-size: 4vw;
	line-height: 1;
	color: #555;
}
.guide_example .case_title span{
	height: 6vw;
	margin-right: 2vw;
}
.guide_example .case_title span img{
	height: 100%;
}
.guide_example .case_caution{
	margin-top: 2vw;
	font-size: 3vw;
	color: #990000;
	text-align: right;
}
.guide_example .inner{
	margin-top: 2vw;
	border: 1px solid #555;
	border-top: none;
}
.guide_example .inner .item{
	padding-bottom: 2vw;
}
.guide_example .inner h4{
	padding: 2vw;
	background: #555;
	font-size: 3vw;
	line-height: 1.3;
	font-weight: normal;
	color: #FFF;
}
.guide_example .inner h4 span{
	display: block;
	font-size: 1.8vw;
	color: #fff9b4;
}
.guide_example .inner .image{
}
.guide_example .inner .image img{
	width: 100%;
}
body.guide_page.kigyo_page .guide_example .inner .item#case1 .image{
	border-top: 1px solid #555;
}
.guide_example .inner .table{
	padding: 2vw 2vw 0 2vw;
}
.guide_example .inner .table table{
	width: 100%;
	border-collapse: collapse;
}
.guide_example .inner .table tr{
}
.guide_example .inner .table tr:nth-child(odd){
	background: #EEE;
}
.guide_example .inner .table th,
.guide_example .inner .table td{
	padding: 1vw 2vw;
	display: block;
	font-size: 3vw;
	text-align: left;
}
.guide_example .inner .table th{
	font-weight: bold;
	color: #72b1a6;
}
.guide_example .inner .table td{
	padding-top: 0;
}
.guide_example .inner .table td span{
	color: #990000;
}
.guide_example .inner .table td strong{
	font-weight: bold;
}
.guide_example .inner .triangle{
	width: 10vw;
	margin: 0 auto;
	font-size: 0;
	text-align: center;
}
.guide_example .inner .text_box{
	padding: 2vw;
	font-size: 3.2vw;
	line-height: 1.3;
}
.guide_example .inner .text_box strong{
	font-weight: bold;
	color: #990000;
}
.guide_example .inner .text_box span{
	color: #990000;
}
.guide_example .inner .text_box small{
	font-size: 3vw;
}
.guide_example .inner .text_box big{
	font-size: 3.5vw;
}
.guide_example .inner .text_box span.carte{
	display: inline-block;
}
.guide_example .inner .text_box span.carte a{
	padding: 1.2vw 4vw 1vw 4vw;
	background: #7e6b5a;
	border-radius: 3vw;
	display: block;
	font-size: 3.2vw;
	line-height: 3.8vw;
	font-weight: bold;
	color: #fff100;
}
.guide_example .inner .text_box span.carte a img{
	width: 2.8vw;
	margin-left: 2vw;
	display: inline-block;
	vertical-align: middle;
}

.guide_after{
	padding-top: 1vw;
}
.guide_after .top_triangle{
	width: 15vw;
	margin: 0 auto;
	font-size: 0;
	text-align: center;
}
.guide_after .top_title{
	margin-top: 3vw;
	padding: 2vw;
	background: #990000;
	font-size: 3.2vw;
	font-weight: bold;
	color: #FFF;
}
.guide_after .box{
	padding-top: 20px;
	overflow: auto;
}
.guide_after .inner{
	width: 1200px;
}
.guide_after .acc_box{
	width: 300px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.guide_after .acc_box p{
	font-size: 24px;
	font-weight: bold;
}
.guide_after .acc_box .triangle{
	width: 30px;
}
.guide_after .table{
	margin-top: -35px;
}
.guide_after .table table{
	width: 100%;
	border-collapse: collapse;
	font-size: 16px;
	line-height: 1.3;
}
.guide_after .table tr{
}
.guide_after .table th,
.guide_after .table td{
	padding: 10px 20px;
	border: 1px solid #CCC;
	vertical-align: middle;
}
.guide_after .table th{
	width: 450px;
	height: 50px;
	background: #EEE;
	font-weight: normal;
}
.guide_after .table th:last-child{
	background: #990000;
	color: #FFF;
}
.guide_after .table td{
}
.guide_after .table tr:nth-child(n+2) td{
	height: 90px;
}
.guide_after .table tr:last-child td:nth-child(n+2){
	font-size: 20px;
	font-weight: bold;
	color: #990000;
	text-align: center;
}
.guide_after .table td.trans{
	border-top: none;
	border-left: none;
}
.guide_after .table td div{
	width: 70px;
	margin-right: 12px;
	background: #7e6b5a;
	border-radius: 10px;
	display: inline-block;
	vertical-align: middle;
	font-size: 16px;
	line-height: 20px;
	color: #FFF;
	text-align: center;
}
.guide_after .table td span{
	color: #990000;
}

.guide_banner{
	padding-top: 4vw;
	text-align: center;
}

.guide_plan{
	padding: 8vw 0 2vw 0;
}
.guide_plan h4{
	margin-top: 4vw;
	padding: 2vw;
	background: #a6937c;
	font-weight: bold;
	font-size: 3.2vw;
	color: #fff9b4;
	text-align: center;
}
.guide_plan .box{
	overflow: auto;
}
.guide_plan .table{
	width: 1200px;
}
.guide_plan .table table{
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
	line-height: 1.3;
	color: #666;
}
.guide_plan .table tr{
}
.guide_plan .table th,
.guide_plan .table td{
	padding: 10px;
	background: #f4f4f4;
	border: 4px solid #FFF;
	vertical-align: middle;
}
.guide_plan .table tr th:first-child,
.guide_plan .table tr td:first-child{
	border-left: none;
}
.guide_plan .table tr th:last-child,
.guide_plan .table tr td:last-child{
	border-right: none;
}
.guide_plan .table th{
	width: 205px;
	height: 70px;
	background: #b3b3b3;
	font-weight: bold;
	color: #FFF;
}
.guide_plan .table th:nth-child(2){
	width: 330px;
	background: #555;
}
.guide_plan .table_2 th:nth-child(2){
	background: #990000;
}
.guide_plan .table th:nth-child(3){
	width: 130px;
}
.guide_plan .table th:last-child{
	width: 535px;
}
.guide_plan .table th span{
	font-weight: normal;
}
.guide_plan .table td{
}
.guide_plan .table td:first-child{
	font-weight: bold;
	text-align: right;
}
.guide_plan .table td:nth-child(2),
.guide_plan .table td:nth-child(3){
	text-align: center;
}
.guide_plan .table td:nth-child(2) img{
	width: 24px;
}
.guide_plan .table_2 td:first-child,
.guide_plan .table_2 td:last-child{
	background: #f3efe8;
}
.guide_plan .table_2 td:nth-child(2){
	background: #fffde5;
}
.guide_plan .table td span{
	font-weight: normal;
}
.guide_plan .table td span.red{
	color: #990000;
}
.guide_plan .table td small{
	font-size: 12px;
}
.guide_plan .table td:nth-child(2) small{
	font-size: 11px;
}
.guide_plan .h4_box h4{
	width: 65%;
	margin-top: 0;
	padding: 0;
	background: none;
	font-size: 3.4vw;
}
.guide_plan .h4_box h4 img{
	width: 3vw;
	margin-left: 2vw;
	vertical-align: middle;
}
.guide_plan .h4_box .btn{
	width: 35%;
	padding: 3vw 0 0 4vw;
}
.guide_plan .h4_box .btn a{
	padding: 1vw 2vw 0.5vw 2vw;
	background: #FFF;
	border-radius: 2.75vw;
	display: block;
	position: relative;
	font-size: 3vw;
	line-height: 4vw;
	font-weight: bold;
	color: #990000;
	text-align: center;
}
.guide_plan .h4_box .btn a::after{
	content: "";
	position: absolute; top: 50%; right: 2vw;
	transform: translateY(-50%);
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 8px solid #990000;
}
.guide_plan .bottom_text{
	margin-top: 4vw;
	font-size: 4vw;
	color: #990000;
}

.guide_cta{
}
.guide_cta .box{
	width: 50%;
	margin: 0 auto;
}
.guide_cta .box div{
	margin-top: 3vw;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));	
}

.guide_merit{
	padding: 4vw 0 2vw 0;
}
.guide_merit .box{
	padding: 4vw;
	border: 1px solid #990000;
	position: relative;
}
.guide_merit .acc_1{
	width: 10vw;
	position: absolute; top: 3vw; left: 3vw;
}
.guide_merit .acc_2{
	width: 15vw;
	position: absolute; top: 3vw; right: 3vw;
}
.guide_merit .title{
	font-size: 4vw;
	line-height: 1.3;
	font-weight: bold;
	color: #59493f;
	text-align: center;
}
.guide_merit .title span{
	color: #990000;
}
.guide_merit .inner{
	padding-top: 2vw;
}
.guide_merit .inner div{
	margin-top: 1vw;
	font-size: 3.5vw;
	line-height: 1.3;
	font-weight: bold;
	color: #59493f;
}
.guide_merit .inner div span{
	color: #990000;
}
.guide_merit .inner div i{
	margin-right: 2vw;
}


body.karte_page.guide_page .guide_h2{
	padding: 4vw 0 2vw 0;
}
body.karte_page.guide_page .guide_h2 .icon{
	width: 75%;
	height: auto;
	margin: 0 auto;
	position: static;
	transform: translateX(0);
	text-align: center;
}
body.karte_page.guide_page .guide_h2 .cate div{
	padding: 1vw 6vw 0.5vw 6vw;
	font-size: 4vw;
}
body.karte_page.guide_page .guide_h2 .small_title{
	font-size: 3.8vw;
	line-height: 1.5;
}
body.karte_page.guide_page .guide_h2 .small_title div{
	display: inline-block;
}
body.karte_page.guide_page .guide_h2 .big_title div{
	display: none;
}
body.karte_page.guide_page .guide_h2 strong{
	font-weight: normal;
}
body.karte_page.guide_page .guide_h2 .medal{
	width: 75vw;
	margin: 4vw  auto 0 auto;
	text-align: center;
}

.karte_about{
	padding: 8vw 0;
	background: url(../images/guide_karte/webp/bg.webp) no-repeat center top;
	background-size: auto 100%;
}
.karte_about p{
	margin-top: 6vw;
	font-size: 3vw;
}
.karte_about p span{
	color: #990000;
}
.karte_about p strong{
	font-size: 3.5vw;
	font-weight: normal;
	color: #990000;
}
.karte_about .caution{
	margin-top: 4vw;
	font-size: 2.4vw;
	color: #555;
}
.karte_about h4{
	margin-top: 6vw;
	font-size: 4vw;
	font-weight: bold;
	color: #990000;
	text-align: center;
}
.karte_about h4 span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
}
.karte_about .box{
	padding-top: 6vw;
	display: flex;
	flex-wrap: wrap;
	gap: 3vw;
}
.karte_about .item{
	width: 30vw;
	height: 30vw;
	background: #fffff0;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	text-align: center;
}
.karte_about .num{
	position: absolute; top: -2.5vw; left: 50%;
	transform: translateX(-50%);
	font-size: 4.5vw;
	font-weight: bold;
	color: #990000;
}
.karte_about .inner{
}
.karte_about h5{
	font-size: 3.5vw;
	font-weight: bold;
	color: #990000;
}
.karte_about .text{
	font-size: 2.5vw;
}

.karte_recom{
}
.karte_recom .triangle{
	width: 50vw;
	margin: 0 auto;
}
.karte_recom .top_text{
	padding-top: 4vw;
	font-size: 3.5vw;
	font-weight: bold;
	text-align: center;
}
.karte_recom .top_text div{
	padding-bottom: 5vw;
	background: url(../images/guide_karte/webp/underline.webp) no-repeat center bottom;
	background-size: 100% auto;
	display: inline-block;
}
.karte_recom .top_text span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
	color: #990000;
}
.karte_recom p{
	padding-top: 4vw;
	font-size: 3.5vw;
	font-weight: bold;
	color: #990000;
	text-align: center;
}
.karte_recom .box{
	padding-top: 4vw;
	display: flex;
	flex-wrap: wrap;
	gap: 3vw;
}
.karte_recom .item{
	width: 30vw;
	padding: 2vw;
	background: #fffff7;
	border: 3px solid #990000;
	border-radius: 10px;
}
.karte_recom .text{
	font-size: 3vw;
	font-weight: bold;
	color: #990000;
	text-align: center;
}
.karte_recom .icon{
	width: 80%;
	margin: 2vw auto 0 auto;
	text-align: center;
}

.karte_price{
	margin-top: 6vw;
	padding-top: 6vw;
	background: #fbf5f5;
}
.karte_price .table_box{
	padding-top: 4vw;
}
.karte_price .table_box table{
	width: 100%;
	border-collapse: collapse;
}
.karte_price .table_box tr{
}
.karte_price .table_box th,
.karte_price .table_box td{
	padding: 1vw;
	border: 1px solid #CCC;
	font-size: 2.8vw;
	font-weight: bold;
}
.karte_price .table_box th{
	width: 54%;
	background: #EEE;
}
.karte_price .table_box tr th:last-child{
	width: 46%;
	background: #990000;
	color: #FFF;
}
.karte_price .table_box td{
	padding-left: 3vw;
	background: #FFF;
}
.karte_price .table_box td strong{
	font-size: 3.5vw;
	color: #990000;
}
.karte_price .caution{
	padding-top: 2vw;
	font-size: 2.5vw;
}

body.karte_page.guide_page .guide_plan{
	margin-top: 6vw;
	padding-bottom: 6vw;
	background: #f6f4f2;
}
body.karte_page.guide_page .guide_plan .h4_box{
	margin-top: 4vw;
}
body.karte_page.guide_page .guide_example .inner{
	margin-top: 4vw;
}
body.karte_page.guide_page .guide_cta{
	padding: 3vw 0 6vw 0;
	background: #fbf5f5;
}


.modal_area{
	width: 100%;
	height: 100%;
	display: none;
	position: fixed; top: 0; left: 0;
	z-index: 10;
}
.modal_bg{
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.5);
}
.modal_image{
	width: 80vw;
	position: absolute; top: 50%; left: 50%;
	transform:translate(-50%,-50%);
	text-align: center;
}


.karte_registration_table{
}
.karte_registration_table table{
	width: 100%;
	border-collapse: collapse;
	white-space: nowrap;
}
.karte_registration_table table tr{
}
.karte_registration_table table tr:nth-child(even){
	background: #f4f4f4;
}
.karte_registration_table table th,
.karte_registration_table table td{
	padding: 1.5vw 2vw;
	font-size: 3.2vw;
	font-weight: normal;
}
.karte_registration_table table th{
	width: 35%;
	text-align: right;
}
.karte_registration_table table td{
	white-space: wrap;
}
.karte_registration_table .payment{
	margin-top: 2vw;
}

.law_box{
	height: 30vw;
	margin: 2vw 2vw 0 2vw;
	padding: 2vw;
	border: 1px solid #F39C11;
	overflow-y: auto;
}
.law_box .inner{
}
.law_box p{
	font-size: 2.2vw;
}

.law_check{
	margin-top: 4vw;
	text-align: center;
}
.law_check input{
	margin-right: 1vw;
}

.karte_registration_btn{
	width: 70%;
	margin: 4vw auto;
}
.karte_registration_btn button{
	width: 100%;
	padding: 5vw 2vw;
	display: block;
	background: #990000;
	border: none;
	border-radius: 10px;
	outline: none;
	font-size: 4vw;
	line-height: 1.5;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.karte_registration_btn.disable button{
	background: #555;
	pointer-events: none;
}

.karte_wide_registration_table{
	margin: 2vw 2vw 0 2vw;
}
.karte_wide_registration_table table{
	width: 100%;
	border-collapse: collapse;
	white-space: nowrap;
}
.karte_wide_registration_table table tr{
}
.karte_wide_registration_table table th,
.karte_wide_registration_table table td{
	padding: 2vw 0;
	display: block;
	font-size: 3vw;
	line-height: 1.5;
	font-weight: normal;
	vertical-align: top;
	text-align: left;
}
.karte_wide_registration_table table th.req span:last-child{
	margin-left: 2vw;
	padding: 0.5vw 1vw 0vw 1vw;
	background: #990000;
	font-size: 2vw;
	color: #FFF;
}
.karte_wide_registration_table table td{
	padding-top: 0;
	white-space: wrap;
}
.karte_wide_registration_table table td span.select_form{
	width: 100%;
}
.karte_wide_registration_table table td span.caution{
	margin-left: 2vw;
	display: inline-block;
	font-size: 2vw;
	color: #f39c12;
}

.karte_wide_registration_table.parmit_number_table{
	padding: 2vw 0;
	border-top: 1px dashed #AAA;
	border-bottom: 1px dashed #AAA;
}
.karte_wide_registration_table.parmit_number_table td.parmit_number_input input{
	width: 25vw;
}
.karte_wide_registration_table.parmit_number_table td.parmit_number_input input.vs{
	width: 8vw;
}
.karte_wide_registration_table.parmit_number_table td.parmit_number_input span{
	width: 10vw;
	display: inline-block;
	text-align: center;
}
.karte_wide_registration_table.parmit_number_table td.parmit_number_input span.ex{
	width: auto;
	margin-left: 2vw;
	padding-top: 0;
	display: inline-block;
	text-align: left;
}

.karte_wide_modal_area .law_check{
	margin-top: 4vw;
	padding: 0 2vw;
	display: flex;
	text-align: left;
}
.karte_wide_modal_area .law_check .icon{
	width: 15vw;
}
.karte_wide_modal_area .law_check .inner{
	width: calc(100% - 15vw);
	padding-left: 3vw;
}
.karte_wide_modal_area .law_check span{
	display: block;
	font-size: 2vw;
	color: #990000;
}

.karte_wide_registration_btn{
	width: 90%;
	margin: 4vw auto 8vw auto;
}
.karte_wide_registration_btn button{
	width: 100%;
	padding: 1.5vw 2vw;
	display: block;
	background: #990000;
	border: none;
	border-radius: 5vw;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 3.5vw;
	line-height: 6vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.karte_wide_registration_btn button i{
	margin-left: 2vw;
}


/* footer */

footer{
}
footer .wrapper{
	padding: 0;
}
footer .nav_box{
	padding-top: 8vw;
	border-bottom: 1px solid #000;
}
footer .top_nav{
}
footer .bottom_nav{
}
footer nav{
}
footer nav div{
	border-top: 1px solid #000;
}
footer nav div a{
	padding: 2vw;
	display: block;
	font-size: 3vw;
	color: #555;
}
footer .logo_box{
	padding: 6vw 2vw 2vw 2vw;
}
footer .logo_box .top{
	font-size: 2.5vw;
}
footer .logo_box .logo{
	width: 55%;
}
footer .logo_box .tel{
	margin-top: 3vw;
}
footer .logo_box .title{
	width: 55%;
	padding: 0 1vw;
	background: #555;
	border-radius: 3vw;
	font-size: 3vw;
	line-height: 6vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
footer .logo_box .number{
	width: 55%;
	margin-top: 3vw;
}
footer .logo_box .btn_box{
	width: 55%;
	margin-top: 3vw;
	display: flex;
	justify-content: space-between;
}
footer .logo_box .btn_box div{
	width: 49%;
	border-radius: 0;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.2);
	overflow: hidden;
}
footer .logo_box .btn_box div a{
	padding: 1vw 0 0.5vw 0;
	background: #990000;
	border: 2px solid #FFF;
	display: block;
	font-size: 3vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
footer .logo_box .btn_box div:last-child a{
	background: #555;
}
footer .logo_box .btn_box div a i{
	margin-right: 1vw;
}
footer .logo_box .inner{
	margin-top: 4vw;
	display: flex;
	align-items: center;
}
footer .logo_box .acc{
	width: 12%;
}
footer .logo_box p{
	padding-left: 4vw;
	font-size: 2.2vw;
}
footer .copy{
	padding: 2vw;
	background: #555;
	font-size: 2.5vw;
	color: #FFF;
	text-align: center;
}


/* quick_form */

.sp_fixed{
	width: 100%;
	position: fixed; bottom: 0; left: 0;
	display: flex;
	align-items: flex-end;
}
.sp_fixed .tel_banner{
	width: 75%;
}
.sp_fixed .quick_tab{
	width: 25%;
}
.sp_fixed .quick_tab .close{
	padding-bottom: 1.5vw;
	background: #990000;
}
.sp_fixed .quick_tab .close,
.sp_fixed .quick_tab a.on .open{
	display: none;
}
.sp_fixed .quick_tab a.on .close{
	display: block;
}

.quick_form{
	width: 100%;
	height: 100%;
	overflow: auto;
	position: fixed; top: 0; left: 0;
	padding: 12vw 0 0 0;
	display: none;
}
.quick_form .title_box{
}
.quick_form .balloon{
}
.quick_form .title_box h2{
}
.quick_form .title_box p{
}
.quick_form .box{
	min-height: calc(100vh - 25vw);
	padding: 2vw;
	background: #FFF url(../images/quick_form/webp/bg.webp) no-repeat bottom right;
	background-size: 80% auto;
	border: 2px solid #990000;
}
.quick_form .select_title{
	text-align: center;
}
.quick_form .select_title span{
	display: inline-block;
	position: relative;
	font-size: 3.2vw;
	line-height: 1.2;
	font-weight: bold;
	text-align: center;
}
.quick_form .select_title span::before,
.quick_form .select_title span::after{
	content: "";
	width: 2px;
	height: 100%;
	background: #000;
	position: absolute; top: 0;
}
.quick_form .select_title span::before{
	left: -2vw;
	transform: rotate(-15deg);
}
.quick_form .select_title span::after{
	right: -2vw;
	transform: rotate(15deg);
}
.quick_form .select{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.quick_form .select .item{
	width: 49%;
	margin-top: 2vw;
	background: #FFF;
	border: 2px solid #555;
	text-align: center;
}
.quick_form .select .item:nth-child(2),
.quick_form .select .item:nth-child(3){
	border-color: #7e0000;
}
.quick_form .select .item a{
	padding: 1vw;
	display: block;
}
.quick_form .select .icon{
	width: 50%;
	height: 18vw;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
}
.quick_form .select .title{
	width: 70%;
	margin: 0 auto;
	padding: 1.2vw 1vw 0.6vw 1vw;
	background: #555;
	border-radius: 6px;
	display: block;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 3vw;
	line-height: 3.6vw;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.quick_form .select .item:nth-child(2) .title,
.quick_form .select .item:nth-child(3) .title{
	margin: 1.8vw auto 2.8vw auto;
	background: #7e0000;
}
.quick_form .select .text{
	margin-top: 1vw;
	display: block;
	font-size: 2.6vw;
}
.quick_form .about_form{
	margin-top: 3vw;
	padding: 2vw;
	border: 1px solid #d1c0a5;
	border-radius: 10px;
}
.quick_form .about_form h3{
	font-size: 3.2vw;
	font-weight: bold;
	text-align: center;
}
.quick_form .about_form h3::before{
	content: "";
	width: 4vw;
	height: 4vw;
	margin-right: 2vw;
	background: url(../images/quick_form/webp/question.webp) no-repeat;
	background-size: 100% 100%;
	display: inline-block;
	vertical-align: middle;
}
.quick_form .about_form .text{
	margin-top: 1vw;
	font-size: 2.6vw;
}
.quick_form .inner{
	padding: 3vw 2vw 6vw 2vw;
	background: #f6fcff;
	display: none;
}
body.under_column .quick_form .inner{
	display: block;
}
.quick_form .select_category{
	padding: 2vw;
	background: #EEE;
	border-radius: 6px;
}
.quick_form .select_category .name{
	font-size: 3vw;
}
.quick_form .select_category .input{
	margin-top: 1vw;
}
.quick_box{
	display: none;
}
body.kigyo_page .quick_box#quick_1{
	display: block;
}
body.foreign_page .quick_box#quick_2{
	display: block;
}
body.okuridasi_page .quick_box#quick_3{
	display: block;
}
body.jinzai_page .quick_box#quick_4{
	display: block;
}
.quick_box .caution{
	margin-top: 0.5vw;
	font-size: 2vw;
	color: #990000;
	text-align: right;
}
.quick_form .form_inner{
}
.quick_form .form_inner .item{
	margin-top: 3vw;
}
.quick_form .form_inner .name{
	font-size: 3vw;
}
.quick_form .form_inner .name span{
	margin-left: 1vw;
	padding: 0.2vw 1vw 0 1vw;
	background: #990000;
	border-radius: 1.4vw;
	display: inline-block;
	vertical-align: middle;
	font-size: 2.2vw;
	line-height: 2.6vw;
	color: #FFF;
	text-align: center;
}
.quick_form .form_inner .name small{
	color: #990000;
}
.quick_form .form_inner .input{
	margin-top: 1vw;
}
.quick_form .form_inner .input select + select{
	margin-top: 1vw;
}
.quick_form .form_inner .input span.select_form + span.select_form{
	margin-top: 1vw;
}
.quick_form .privacy_check{
	margin-top: 2vw;
	text-align: center;
}
.quick_form .privacy_en{
	margin-top: 0;
	font-size: 2vw;
	color: #999;
	text-align: center;
}
.quick_form .privacy_en a{
	color: #a6937c;
	text-decoration: underline;
}
.quick_form .btn{
	margin-top: 0;
	padding-bottom: 10vw;
}
.quick_form .btn button{
	min-width: 60vw;
	margin: 3vw auto 0 auto;
	outline: none;
	padding: 2.5vw;
	background: #990000;
	border: 5px solid #7e0000;
	box-shadow: 0 5px 0 #cfcdce;
	border-radius: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 3vw;
	font-weight: normal;
	color: #FFF;
	text-align: center;
}
.quick_form .btn button i{
	margin-right: 2vw;
}
.quick_form .btn button small{
	display: block;
	font-size: 2vw;
}

}
