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

@media screen and (min-width:1024px){

.wrapper{
	width: 1200px;
	margin: 0 auto;
	padding: 0;
	position: relative;
}
body.wide_body .contents_box .wrapper{
	width: 1500px;
}


/* header */

header{
	width: 100%;
	height: auto;
	background: #FFF;
	position: static;
	z-index: 50;
	box-shadow: none;
}
header .wrapper{
	padding: 0;
	display: block;
}
header .top{
	padding: 5px 0;
	background: #e5e5e5;
}
header .top .wrapper{
	display: flex;
	justify-content: flex-start;
	align-items: center;
}
header .login_box{
	display: block;
}
header.loggedin .login_box{
	display: none;
}
header .login_box form{
	display: flex;
	align-items: center;
}
header .login_box .item{
	width: 130px;
	margin-right: 10px;
	display: flex;
	align-items: center;
}
header .login_box .item:first-child{
	width: 120px;
}
header .login_box .name{
	margin-right: 10px;
	font-size: 14px;
}
header .login_box .input{
	width: 100%;
}
header .login_box .input select{
	border: 2px solid #990000;
	border-radius: 4px;
}
header .login_box .btn{
	margin-left: 5px;
}
header .login_box .btn span{
	display: block;
}
header .login_box .btn a{
	font-size: 14px;
	color: #a6937c;
	text-decoration: underline;
}
header .login_box .btn a:hover{
	text-decoration: none;
}
header .login_box .btn button{
	width: 130px;
	padding: 2px 10px;
	display: inline-block;
	background: #990000;
	border: 1px solid #990000;
	border-radius: 15px;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 14px;
	line-height: 24px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	transition: .2s;
}
header .login_box .btn button:hover{
	background: #FFF;
	color: #990000;
}
header .login_box .btn button i{
	margin-left: 5px;
}
header .tel_box{
	padding-left: 10px;
	display: flex;
	align-items: center;
}
header .tel_box .tel{
	width: 350px;
	margin-right: 15px;
}
header .tel_box .btn{
	width: 160px;
}
header .tel_box .btn a{
	padding: 2px 5px 2px 25px;
	display: block;
	position: relative;
	background: #7e6b5a;
	border: 1px solid #7e6b5a;
	border-radius: 23px;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 14px;
	line-height: 20px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	transition: .2s;
	text-decoration: none;
}
header .tel_box .btn a:hover{
	background: #FFF;
	color: #7e6b5a;
}
header .tel_box .btn a span{
	font-size: 16px;
}
header .tel_box .btn a i{
	position: absolute; top: 50%; left: 12px;
	transform: translateY(-50%);
	font-size: 17px;
}
header .mid{
	padding: 10px 0;
}
header .mid .wrapper{
	display: flex;
	justify-content: space-between;
}
header h1{
	width: 435px;
	height: auto;
	margin: 0 auto 0 0;
	padding-left: 0;
	display: block;
	position: relative;
	text-align: left;
}
header h1 img{
	width: 100%;
	margin-top: 10px;
}
header h1 span{
	display: block;
	font-size: 16px;
	line-height: 1.2;
	font-weight: normal;
}
header .mid nav{
	width: calc(100% - 435px);
	display: flex;
	justify-content: flex-end;
	align-items: center;
}
header .mid nav div{
	margin-left: 25px;
	font-size: 14px;
	line-height: 1.3;
	text-align: center;
}
header .mid nav div:first-child{
	margin-left: 0;
}
header .mid nav div a{
	position: relative;
	display: block;
	text-decoration: none;
}
header .mid nav div a:hover::before{
	content: "";
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 5px solid #F39C11;
	position: absolute; top: 50%; left: -10px;
	transform: translateY(-50%);
}
header .bottom{
	padding: 7px;
	background: #555;
}
header .bottom nav{
	display: flex;
	justify-content: space-between;
}
header .bottom nav div{
	padding: 0 11px 0 8px;
	position: relative;
}
header .bottom nav div::after{
	content: "";
	width: 2px;
	height: 26px;
	border-right: dotted 2px #a6937c;
	position: absolute; top: 0; right: 0;
}
header .bottom nav div:last-child::after{
	display: none;
}
header .bottom nav div a{
	font-size: 14px;
	color: #FFF;
	text-decoration: none;
}
header .bottom nav div a:hover{
	color: #990000;
}

header .loggedin_box{
	width: 545px;
	padding: 0;
	background: none;
	display: none;
	justify-content: space-between;
	align-items: center;
}
header.loggedin .loggedin_box{
	display: flex;
}
header .loggedin_box .name{
	width: calc(100% - 260px);
	font-size: 20px;
	line-height: 1.3;
}
header .loggedin_box .name span{
	margin-right: 12px;
	font-size: 24px;
	line-height: 1.3;
	font-weight: bold;
}
header .loggedin_box .btn_box{
	width: 250px;
	padding-top: 0;
	display: flex;
	justify-content: flex-end;
}
header .loggedin_box .btn{
	width: 120px;
	margin-left: 10px;
}
header .loggedin_box .btn a,
header .loggedin_box .btn button{
	width: 100%;
	padding: 9px;
	display: inline-block;
	background: #990000;
	border: 1px solid #990000;
	border-radius: 20px;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 14px;
	line-height: 20px;
	font-weight: normal;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	transition: .2s;
}
header .loggedin_box .btn a:hover{
	background: #FFF;
	color: #990000;
}
header .loggedin_box .btn button{
	background: #AAA;
	border-color: #AAA;
}
header .loggedin_box .btn button:hover{
	background: #FFF;
	color: #AAA;
}
header .loggedin_box .btn a i{
	margin-right: 5px;
}
header .loggedin_box .btn button i{
	margin-left: 5px;
}


/* main */

main{
	margin-top: 0;
	overflow: hidden;
}

.kv{
	padding: 60px 0 20px 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: 38px;
	font-weight: bold;
}
.kv h2{
	margin-top: 30px;
	font-size: 62px;
	line-height: 1.3;
	font-weight: bold;
	color: #990000;
}
.kv p{
	font-size: 30px;
	font-weight: bold;
}
.kv .device{
	width: 675px;
	margin-top: 0;
	position: absolute; bottom: 24px; right: -135px;
	text-align: center;
}
.kv .medal{
	width: 225px;
	position: absolute; top: -115px; right: -35px;
}
.kv .arrow{
	width: 35px;
	margin: 10px 0 0 265px;
	text-align: center;
}
.kv .btn_box{
	margin-top: 35px;
	display: flex;
	justify-content: flex-start;
}
.kv .btn_box div{
	width: 270px;
	margin-right: 20px;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
}
.kv .btn_box div a{
	padding: 16px 0 14px 0;
	background: #990000;
	border: 1px solid #FFF;
	border-radius: 4px;
	display: block;
	font-size: 24px;
	font-weight: normal;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	transition: .2s;
}
.kv .btn_box div a:hover{
	background: #FFF;
	color: #990000;
}
.kv .btn_box div a::after{
	content: "";
	margin-left: 20px;
	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 a:hover::after{
	border-left-color: #990000;
}
.kv .btn_box div:last-child a{
	background: #555;
}
.kv .btn_box div:last-child a:hover{
	background: #FFF;
	color: #555;
}
.kv .btn_box div:last-child a:hover::after{
	border-left-color: #555;
}
.kv .btn_box div a i{
	margin-right: 20px;
}
.kv .caution{
	margin-top: 30px;
	font-size: 11px;
	line-height: 1.3;
}

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

.structure{
	padding: 73px 0 66px 0;
	background: url(../images/structure/webp/bg.webp) no-repeat top left;
	background-size: cover;
}
.structure .top_text{
	margin-top: 40px;
	font-size: 24px;
	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: 25px 0 15px 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: 24px;
	font-weight: bold;
	text-align: center;
}
.structure .caution{
	margin-top: 5px;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
}
.structure p{
	font-size: 24px;
	font-weight: bold;
	color: #990000;
	text-align: center;
}

.solution{
	padding: 120px 0 105px 0;
	background: #990000;
	position: relative;
}
.solution::before{
	content: "";
	position: absolute; top: 0; left: 50%;
	transform: translateX(-50%);
	border-top: 40px solid #FFF;
	border-right: 40px solid transparent;
	border-left: 40px 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: 60px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.solution .item{
	width: 285px;
	margin-top: 0;
	padding: 39px 20px 23px 20px;
	background: #FFF;
	border-radius: 6px;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
	text-align: center;
}
.solution .icon{
	width: 74px;
	margin: 0 auto;
}
.solution .inner{
}
.solution h3{
	margin-top: 15px;
	font-size: 24px;
	font-weight: bold;
	color: #990000;
}
.solution .arrow{
	margin-top: 5px;
}
.solution .arrow img{
	width: 42px;
}
.solution .arrow span{
	margin-top: 5px;
	display: block;
	font-size: 18px;
	font-weight: bold;
}
.solution .btn_box{
	padding-top: 5px;
}
.solution .btn_box div{
	margin-top: 12px;
}
.solution .btn_box div a{
	padding: 13px 0 11px 0;
	background: #f5e6e6;
	border: 1px solid #990000;
	border-radius: 10px;
	display: block;
	font-size: 20px;
	font-weight: bold;
	color: #990000;
	text-decoration: none;
	transition: .2s;
}
.solution .btn_box div a:hover{
	background: #990000;
	color: #f5e6e6;
}
.solution .btn_box .one_btn{
	margin-top: 41px;
}
.solution .btn_box .one_btn a{
	padding: 38px 0;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
}
.solution .one_btn a img{
	width: 42px;
}
.solution .one_btn a span{
	width: 100%;
	display: block;
	font-size: 18px;
	font-weight: bold;
}

.trouble{
	padding: 87px 0 120px 0;
	background: url(../images/trouble/webp/bg.webp) no-repeat center bottom;
	background-size: 100% auto;
}
.trouble .box{
	padding-top: 45px;
	display: flex;
	justify-content: space-between;
}
.trouble .item{
	width: 385px;
	min-height: 380px;
	margin-top: 0;
	padding: 18px 15px 25px 20px;
	background: #FFF;
	border: 1px solid #555;
	border-radius: 4px;
}
.trouble h3{
	position: relative;
	font-size: 26px;
	font-weight: bold;
	color: #990000;
}
.trouble h3::before{
	content: "";
	width: 350px;
	height: 1px;
	background: #990000;
	position: absolute; bottom: -2px; left: -20px;
}
.trouble h3::after{
	content: "";
	width: 12px;
	height: 12px;
	background: #990000;
	border-radius: 6px;
	position: absolute; bottom: -7px; left: 330px;
}
.trouble p{
	margin-top: 20px;
	font-size: 16px;
}
.trouble .logo{
	width: 688px;
	margin: 80px auto 0 auto;
	text-align: center;
}
.trouble h4{
	margin-top: 10px;
	font-size: 48px;
	font-weight: bold;
	text-align: center;
}
.trouble h4 span{
	color: #990000;
}
.trouble .top{
	margin-top: 20px;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}
.trouble h5{
	margin-top: 10px;
	text-align: center;
}
.trouble h5 span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
	font-size: 48px;
	font-weight: bold;
	color: #990000;
}
.trouble .bottom{
	margin-top: 10px;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
}

.point{
	margin-top: -60px;
	padding: 0 0 80px 0;
	background: url(../images/point/webp/bg.webp) no-repeat center bottom;
	background-size: 100% auto;
}
.point .box{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.point .item{
	width: 386px;
	margin-top: 18px;
	padding: 5px 5px 17px 5px;
	background: #FFF;
	border: 4px solid #555;
	border-radius: 4px;
	position: relative;
}
.point .item::after{
	content: "";
	width: 120px;
	height: 120px;
	background: url(../images/common/webp/medal.webp) no-repeat;
	background-size: 100% 100%;
	position: absolute; top: -14px; right: -10px;
}
.point .icon{
	width: 154px;
	margin: 0 auto;
}
.point h3{
	margin-top: 5px;
	font-size: 28px;
	font-weight: bold;
	text-align: center;
}
.point .balloon{
	height: 60px;
	margin-top: 5px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	line-height: 24px;
	font-weight: bold;
	text-align: center;
}
.point .item:last-child .balloon{
	line-height: 20px;
}
.point .btn_box{
	width: 343px;
	margin: 0 auto;
}
.point .btn_box div{
	margin-top: 8px;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));	
}
.point .btn_box div a{
	padding: 18px 0 16px 0;
	background: #990000;
	display: block;
	border: 1px solid #FFF;
	border-radius: 6px;
	position: relative;
	font-size: 20px;
	line-height: 1.5;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	transition: .2s;
}
.point .btn_box div a:hover{
	background: #FFF;
	color: #990000;
}
.point .btn_box div:last-child a{
	background: #555;
}
.point .btn_box div:last-child a:hover{
	background: #FFF;
	color: #555;
}
.point .btn_box div a i{
	position: absolute; top: 50%; left: 22px;
	transform: translateY(-50%);
}
.point .top{
	margin-top: 70px;
	font-size: 48px;
	font-weight: bold;
	text-align: center;
}
.point h4{
	text-align: center;
}
.point h4 span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
	font-size: 48px;
	line-height: 1.4;
	font-weight: bold;
	color: #990000;
}
.point .bottom{
	margin-top: 10px;
	font-size: 48px;
	font-weight: bold;
	text-align: center;
}

.cta{
	padding: 105px;
	background: url(../images/cta/webp/bg_sp.webp) no-repeat center;
	background-size: cover;
}
.cta .btn_box{
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: space-between;
}
.cta .btn_box div{
	width: 390px;
	margin-top: 0;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));	
}
.cta .btn_box div:last-child a{
	pointer-events: none;
}

.use{
	padding: 90px 0 116px 0;
}
.use .wrapper{
	padding: 0;
}
.use .box{
	margin-top: 50px;
}
.use .box + .box{
	margin-top: 95px;
}
.use .title_box{
	padding: 30px 37px;
	background: #555;
	position: relative;
}
.use h3{
	font-size: 36px;
	font-weight: bold;
	color: #FFF;
}
.use .h3_small{
	margin-top: 10px;
	font-size: 18px;
	font-weight: bold;
	color: #FFF;
}
.use .btn{
	width: 283px;
	position: absolute; top: 35px; left: auto; right: 47px;
}
.use .inner{
	border: 1px solid #555;
	border-top: none;
}
.use p{
	padding: 32px 40px 0 40px;
	font-size: 18px;
	font-weight: bold;
}
.use p span{
	color: #990000;
}
.use .image{
	margin-top: 30px;
}
.use .image img{
	width: 100%;
}
.use .sub_title{
	margin-top: 40px;
	padding: 0 40px;
	position: relative;
}
.use .sub_title::before{
	content: "";
	width: 90%;
	height: 1px;
	background: #555;
	position: absolute; top: 50%; left: 40px;
	transform: translateY(-50%);
}
.use .sub_title span{
	padding: 0 13px 0 0;
	background: #FFF;
	display: inline-block;
	position: relative;
	z-index: 1;
	font-size: 20px;
	font-weight: bold;
}
.use .image_2{
	width: 1110px;
	margin: 50px 0 0 25px;
	position: relative;
}
.use .image_2 img{
	width: 100%;
}
.use .link{
	width: 357px;
	position: absolute; top: 353px; left: 537px;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
}
.use .bottom{
	margin-top: 45px;
	padding: 0 20px;
	text-align: center;
}
.use .bottom:last-child{
	padding-bottom: 90px;
}
.use .bottom span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
	font-size: 20px;
	font-weight: bold;	
}
.use .bottom strong{
	color: #990000;
}
.use .image_3{
	width: 1135px;
	margin-top: 50px;
}
.use .image_3 img{
	width: 100%;
}

.about{
	padding: 80px 0;
	background: linear-gradient(#faf2f2, #ebcccc);
}
.about .box{
	padding: 105px 20px 90px 20px;
	background: #FFF;
	border-radius: 4px;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
}
.about .logo{
	width: 688px;
	margin: 0 auto;
	text-align: center;
}
.about .title{
	margin-top: 20px;
	font-size: 48px;
	font-weight: bold;
	text-align: center;
}
.about .title span{
	color: #990000;
}
.about p{
	margin-top: 60px;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}
.about p strong{
	color: #990000;
}
.about p span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
}
.about .bottom{
	margin-top: 40px;
	font-size: 32px;
	font-weight: bold;
	color: #990000;
	text-align: center;
}

.zoom{
	padding: 43px 0;
}
.zoom h2{
	color: #000;
}
.zoom p{
	margin-top: 20px;
	font-size: 16px;
	text-align: center;
}
.zoom .btn{
	width: 400px;
	margin: 40px auto 0 auto;
	text-align: center;
}
.zoom .btn a{
	margin: 30px auto 0 auto;
	outline: none;
	padding: 16px;
	background: #990000;
	border: 5px solid #7e0000;
	box-shadow: 0 5px 0 #cfcdce;
	border-radius: 10px;
	display: block;
	font-size: 20px;
	font-weight: normal;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	transition: .2s;
}
.zoom .btn a:hover{
	background: #FFF;
	color: #990000;
}
.zoom .btn a i{
	margin-right: 10px;
}

.contact{
	padding: 45px 0 40px 0;
	background: #f3efe8;
}
.contact h2{
	color: #000;
}
.contact p{
	margin-top: 20px;
	font-size: 16px;
	text-align: center;
}
.contact .box{
	width: 800px;
	margin: 30px auto 0 auto;
	padding: 28px 60px 45px 60px;
	background: #FFF;
}
.contact .inner{
}
.contact .item{
	padding-top: 10px;
	display: flex;
	align-items: flex-start;
}
.contact .name{
	width: calc(100% - 500px);
	padding-top: 5px;
	font-size: 14px;
	position: relative;
}
.contact .name span{
	margin-left: 0;
	padding: 2px 5px;
	background: #990000;
	position: absolute; top: 5px; right: 30px;
	vertical-align: middle;
	font-size: 13px;
	color: #FFF;
}
.contact .input{
	width: 500px;
	margin-top: 0;
}
.contact .privacy_check{
	margin-top: 30px;
	text-align: center;
}
.contact .btn{
	margin-top: 0;
}
.contact .btn button{
	min-width: 400px;
	margin: 30px auto 0 auto;
	outline: none;
	padding: 16px;
	background: #990000;
	border: 5px solid #7e0000;
	box-shadow: 0 5px 0 #cfcdce;
	border-radius: 10px;
	display: block;
	font-size: 20px;
	font-weight: normal;
	color: #FFF;
	text-align: center;
	transition: .2s;
}
.contact .btn button:hover{
	background: #FFF;
	color: #990000;
}
.contact .btn button i{
	margin-right: 10px;
}


/* under_column */

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

.basic_h2{
	height: 200px;
	padding: 0;
	display: flex;
	align-items: center;
	position: relative;
}
.basic_h2 .icon{
	height: 200px;
	position: absolute; top: 0; left: 0;
	transform: translateX(0);
}
.basic_h2 .icon img{
	height: 100%;
}
.basic_h2 h2{
	padding-left: 100px;
	position: relative;
	z-index: 1;
	font-size: 30px;
	line-height: 1.3;
	font-weight: normal;
	text-align: left;
}
.basic_h2 h2 small{
	font-size: 18px;
	font-weight: normal;
}
.basic_h2 .acc{
	width: 550px;
	position: absolute; top: 25px; right: 25px;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
}

.kigyo_h2{
	display: flex;
	flex-flow: column;
	justify-content: center;
	align-items: flex-start;
	height: auto;
	min-height: 200px;
	padding: 20px 0;
}
.kigyo_h2 h2{
	padding-top: 0;
	line-height: 1.3;
	max-width: calc(100% - 600px);
}

.basic_h2 .h2_about{
	min-width: 0;
	width: 360px;
	margin: 20px 0 0 100px;
	position: relative;
	z-index: 1;
}
.basic_h2 .h2_about a{
	padding: 5px 0 4px 0;
	background: #a6937c;
	border: 1px solid #a6937c;
	border-radius: 18px;
	display: block;
	font-size: 18px;
	line-height: 25px;
	color: #FFF;
	text-align: center;
	transition: .2s;
	text-decoration: none;
}
.basic_h2 .h2_about a:hover{
	background: #FFF;
	color: #a6937c;
}
.basic_h2 .h2_about a i{
	margin-right: 5px;
}
.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: 820px;
	background: #FFF;
	border-radius: 10px;
	position: absolute; top: 50%; left: 50%;
	transform:translate(-50%,-50%);
	overflow: hidden;
}
.partner_about_modal_title_box{
	padding: 11px 17px;
	background: #a6937c;
	position: relative;
	font-size: 18px;
	line-height: 1.2;
	color: #FFF;
	font-weight: normal;
	text-align: left;
}
.partner_about_modal_title_box span{
	margin-left: 5px;
}
.partner_about_modal_title_box a{
	position: absolute; top: 50%; right: 17px;
	transform: translateY(-50%);
	color: #FFF;
}
.partner_about_modal_inner{
	height: 460px;
	overflow-y: auto;
	color: #444;
}
.partner_about_modal_inner p{
	padding: 20px 20px 0 20px;
	font-size: 16px;
	text-align: center;
}
.partner_about_modal_list{
	margin: 20px 20px 0 20px;
	padding: 17px 50px 20px 50px;
	background: #f4f4f4;
	border-radius: 10px;
}
.partner_about_modal_list .item{
	margin-top: 3px;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.partner_about_modal_list .num{
	width: 20px;
	height: 20px;
	background: #a6937c;
	border-radius: 10px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 14px;
	line-height: 20px;
	color: #FFF;
	font-weight: bold;
}
.partner_about_modal_list .text{
	width: calc(100% - 30px);
	font-size: 16px;
}
.partner_about_modal_caution{
	padding: 20px 20px 20px 20px;
}
.partner_about_modal_caution .item{
	margin-top: 0;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.partner_about_modal_caution .num{
	width: 60px;
	font-size: 16px;
}
.partner_about_modal_caution .text{
	width: calc(100% - 60px);
	font-size: 16px;
}

body.jobsearch_page .basic_h2{
	flex-flow: column;
	justify-content: center;
}
body.jobsearch_page .basic_h2 h2{
	padding-left: 0;
}
.jobsearch_big{
	padding: 10px 0 0 0;
}
.jobsearch_big .box{
	width: 1000px;
	margin: 0 auto;
	padding: 25px;
	background: #FFF;
	border-radius: 20px;
	box-shadow: 0 0 10px rgba(5, 2, 2, 0.2);
	position: relative;
	z-index: 1;
}
.jobsearch_big form{
	display: flex;
	justify-content: center;
	align-items: center;
}
.jobsearch_big .item{
	width: 350px;
	margin: 0 20px 0 0;
}
.jobsearch_big .name{
	font-size: 14px;
}
.jobsearch_big .input{
}
.jobsearch_big .input span.select_form{
	width: 100%;
}
.jobsearch_big .btn{
	padding-top: 10px;
	text-align: right;
}
.jobsearch_big .btn button{
	width: 200px;
	padding: 9px 0 5px 0;
	display: inline-block;
	background: #f39c11;
	border: 1px solid #f39c11;
	border-radius: 20px;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 16px;
	line-height: 24px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	transition: .2s;
}
.jobsearch_big .btn button:hover{
	background: #FFF;
	color: #f39c11;
}
.jobsearch_big .btn button i{
	margin-right: 5px;
	font-size: 17px;
}

.trans_area{
	padding: 10px 0;
	background: #f39c11;
}
.trans_area .wrapper{
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
}
.trans_area p{
	margin-right: 12px;
	font-size: 16px;
	line-height: 1.5;
}
.trans_area form{
	width: 500px;
	margin-left: 5px;
}
.trans_area span.select_form{
	display: block;
}

.contents_box{
	padding: 30px 0 50px 0;
}
body.jobsearch_page .contents_box .wrapper{
	display: flex;
	justify-content: space-between;
	flex-flow: row-reverse;
	flex-wrap: wrap;
}
.right_contents{
	width: 800px;
}
.left_contents{
	width: 380px;
}

.form_step_box{
	margin-top: 15px;
}
.form_step_box p{
	font-size: 16px;
	text-align: center;
}
.form_step_box p small{
	display: block;
	font-size: 14px;
}
.form_step{
	margin-top: 55px;
	overflow-x: auto;
}
.form_step .inner{
	width: 100%;
	padding: 0;
	display: flex;
	align-items: flex-start;
	justify-content: center;
}
body.wide_body .form_step .inner{
	width: 100%;
}
.form_step .item{
	width: 300px;
	padding: 0;
}
.form_step .num{
	width: 88px;
	margin: 0 auto;
	padding: 2px 0 1px 0;
	background: #AAA;
	border-radius: 8px;
	position: relative;
	font-size: 14px;
	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: 30px;
	padding-top: 30px;
	position: relative;
	font-size: 16px;
	line-height: 1.5;
	color: #AAA;
	text-align: center;
}
.form_step .text small{
	display: block;
	font-size: 14px;
	color: #666;
}
.form_step .text::before{
	content: "";
	width: 300px;
	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: 12px;
	height: 12px;
	background: #AAA;
	border-radius: 6px;
	position: absolute; top: -6px; 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{
	width: 800px;
	margin: 30px auto 0 auto;
	padding: 10px;
	background: #EEE;
	display: flex;
	justify-content: center;
	align-items: center;
}
body.jinzai_page .form_step_box .login_box{
	width: 1200px;
}
.form_step_box .login_box .text{
	margin-right: 20px;
	font-size: 14px;
}
.form_step_box .login_box .text small{
	display: block;
	font-size: 14px;
}
.form_step_box .login_box .btn{
	width: 140px;
	margin-top: 0;
	text-align: right;
}
.form_step_box .login_box .btn button{
	width: 100%;
	padding: 2px 10px;
	display: inline-block;
	background: #990000;
	border: 1px solid #990000;
	border-radius: 20px;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 16px;
	line-height: 34px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	transition: .2s;
}
.form_step_box .login_box .btn button:hover{
	background: #FFF;
	color: #990000;
}
.form_step_box .login_box .btn button i{
	margin-left: 5px;
	font-size: 17px;
}
body.with_vietnamese .form_step_box .login_box .btn button{
	background: #990000;
	border: 1px solid #990000;
	border-radius: 21px;
	font-size: 14px;
	line-height: 18px;
}
body.with_vietnamese .form_step_box .login_box .btn button:hover{
	background: #FFF;
	color: #990000;
}
body.with_vietnamese .form_step_box .login_box .btn button small{
	display: block;
	font-size: 14px;
	line-height: 18px;
}

.form_step_box .login_box .link{
	width: 140px;
	margin-top: 0;
	text-align: right;
}
.form_step_box .login_box .link a{
	width: 100%;
	padding: 2px 10px;
	display: inline-block;
	background: #f39c11;
	border: 1px solid #f39c11;
	border-radius: 20px;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 16px;
	line-height: 34px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	transition: .2s;
	text-decoration: none;
}
.form_step_box .login_box .link a:hover{
	background: #FFF;
	color: #f39c11;
}

.form_title_box{
	width: 1020px;
	margin: 40px auto 0 auto;
	padding: 0 320px 10px 0;
	border-bottom: 2px solid #f39c12;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	position: relative;
}
.form_title_box .num{
	width: 90px;
	margin-right: 10px;
	padding: 2px;
	background: #f39c11;
	border-radius: 12px;
	font-size: 14px;
	line-height: 20px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.form_title_box .title{
	margin-right: 14px;
	font-size: 18px;
	font-weight: bold;
}
.form_title_box .title small{
	font-size: 13px;
	color: #0071bc;
}
.form_title_box .req{
	font-size: 14px;
	font-weight: bold;
}
.form_title_box .req span{
	color: #e60012;
}
.form_title_box .req small{
	font-size: 13px;
	color: #0071bc;
}
.form_title_box .btn_box{
	width: 450px;
	margin-top: 0;
	position: absolute; bottom: 10px; right: 0;
}
.form_title_box .btn_box form{
	display: flex;
	justify-content: flex-end;
}
.form_title_box .btn_box div{
	width: 150px;
	margin-left: 10px;
}
.form_title_box .btn_box div button{
	width: 100%;
	padding: 4px 0;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #FFF;
	border: 2px solid #555;
	border-radius: 8px;
	outline: none;
	font-size: 16px;
	line-height: 1.2;
	font-weight: normal;
	color: #555;
	text-align: center;
	transition: .2s;
}
.form_title_box .btn_box div button:hover{
	background: #555;
	color: #FFF;
}
.form_title_box .btn_box div:last-child button{
	border-color: #f39c11;
	color: #f39c11;
}
.form_title_box .btn_box div:last-child button:hover{
	background: #f39c11;
	color: #FFF;
}
.form_title_box .btn_box div button i{
	margin-right: 2px;
	font-size: 30px;
}
body.with_vietnamese .form_title_box{
	padding-right: 330px;
}
body.with_vietnamese .form_title_box .btn_box{
	width: 330px;
}
body.with_vietnamese .form_title_box .btn_box div{
	width: 160px;
}
body.with_vietnamese .form_title_box .btn_box div:first-child{
	margin-left: 0;
}
body.with_vietnamese .form_title_box .btn_box div button{
	font-size: 13px;
}
body.with_vietnamese .form_title_box .btn_box div button i{
	font-size: 26px;
}
.form_title_box .btn_box div button small{
	display: block;
	font-size: 11px;
	color: #666;
}
.form_title_box .btn_box div button:hover small{
	color: #FFF;
}

.form_box{
	width: 1020px;
	margin: 0 auto;
	padding-top: 10px;
}
.form_box .item{
	margin-top: 15px;
	display: flex;
	flex-wrap: wrap;
}
.form_box .name{
	width: 230px;
	padding-top: 5px;
	font-size: 14px;
}
.form_box .name span{
	color: #e60012;
}
.form_box .name span.trans{
	display: block;
	font-size: 12px;
	color: #0071bc;
}
.form_box .name span.trans{
	display: block;
	font-size: 12px;
	color: #0071bc;
}
.form_box .name small{
	display: block;
	font-size: 11px;
}
.form_box .input{
	width: 790px;
	margin-top: 0;
}
.form_box .input.country{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
body.with_vietnamese .form_box .input.country{
	display: flex;
}
.form_box .input.country select{
	width: 350px;
}
.form_box .input.country span{
	width: 140px;
	margin-top: 0;
	padding-left: 20px;
	font-size: 14px;
	line-height: 1.2;
	display: block;
}
.form_box .input.country span small{
	margin-left: 0;
	display: block;
	color: #0071bc;
}
body.with_vietnamese .form_box .input.country span{
	width: 140px;
}
body.with_vietnamese .form_box .input.country span.select_form{
	width: 350px;
}
.form_box .input.country span.select_form{
	width: 350px;
	margin-top: 0;
	padding-left: 0;
}
.form_box .input.country span + input{
	width: calc(100% - 490px);
	margin-top: 0;
}
body.with_vietnamese .form_box .input.country span + input{
	width: calc(100% - 490px);
	margin-top: 0;
}
.form_box .input.birth{
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}
.form_box .input.birth select{
	min-width: 100px;
	width: auto;
	margin-right: 0;
}
.form_box .input.birth span{
	margin-right: 20px;
	line-height: 1.2;
}
.form_box .input.birth span.select_form{
	margin-right: 10px;
}
.form_box .input.birth span small{
	display: block;
	font-size: 12px;
	color: #0071bc;
}
.form_box .input .caution{
	margin-top: 10px;
	font-size: 14px;
	color: #f39c12;
}
.form_box .input .caution small{
	display: block;
	font-size: 12px;
}
.form_box .input span.inline_caution{
	margin-left: 15px;
	font-size: 13px;
	color: #f39c12;
}
.form_box .input.visa_type{
	display: flex;
	align-items: center;
}
body.with_vietnamese .form_box .input.visa_type{
	display: block;
}
.form_box .input.visa_type span.select_form{
	margin-right: 30px;
}
.form_box .input.visa_type select{
	min-width: 180px;
	width: auto;
	margin-right: 0;
}
body.with_vietnamese .form_box .input.visa_type select{
	width: 350px;
}
.form_box .input .visa_box{
	margin-top: 0;
	display: flex;
	align-items: center;
}
body.with_vietnamese .form_box .input .visa_box{
	margin-top: 15px;
	display: block;
}
.form_box .input .visa_title{
	padding: 0 20px;
	position: relative;
	font-size: 11px;
	line-height: 1.5;
}
.form_box .input .visa_title small{
	margin-left: 0;
	display: block;
	font-size: 12px;
	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: 15px;
	padding-left: 35px;
}
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: flex;
}
.form_box .input.category div + div{
	margin-top: 10px;
}
.form_box .input.category div span{
	width: 45px;
	font-size: 14px;
}
body.with_vietnamese .form_box .input.category div span{
	width: 100%;
}
.form_box .input.category div span small{
	margin-left: 10px;
	font-size: 12px;
	color: #0071bc;
}
.form_box .input.category div span.select_form{
	width: 745px;
	display: block;
}
body.with_vietnamese .form_box .input.category div span.select_form{
	width: 100%;
	margin-left: 0;
}
.form_box .input.category div + div span.select_form{
	width: 700px;
	margin-left: 45px;
}
body.with_vietnamese .form_box .input.category div + div span.select_form{
	width: calc(100% - 110px);
}
.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: 10px;
}
body.with_vietnamese .form_box .input.category div + div span.select_form + button{
	margin: 0 0 0 10px;
}
.form_box .input.category div:last-child{
	margin-left: 45px;
}
body.with_vietnamese .form_box .input.category div:last-child{
	margin-left: 0;
}
.form_box .input .attached_title_box{
	padding: 10px 20px 10px 15px;
	background: #555;
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
}
.form_box .input .attached_title{
	font-size: 14px;
	font-weight: bold;
	color: #FFF;
}
.form_box .input .attached_title small{
	display: block;
	font-weight: normal;
	font-size: 12px;
}
.form_box .input .attached_caution{
	font-size: 12px;
	color: #fff100;
	text-align: right;
}
.form_box .input .attached_caution small{
	display: block;
	font-size: 12px;
}
.form_box .input .attached_box{
	padding: 20px;
	background: #f4f4f4;
}
.form_box .input .attached_item{
	margin-top: 20px;
	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: 20px;
	margin-top: 2px;
	padding-top: 1px;
	background: #990000;
	border-radius: 10px;
	font-size: 14px;
	line-height: 19px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.form_box .input .attached_name{
	width: calc(100% - 20px);
	padding-left: 10px;
	font-size: 14px;
	line-height: 1.5;
	color: #444;
}
.form_box .input .attached_name small{
	display: block;
	color: #0071bc;
}
.form_box .input .attached_inner{
	padding-left: 30px;
}
.form_box .input .attached_inner div{
	margin-top: 5px;
}
.form_box .input .gray_box{
	padding: 20px;
	background: #f4f4f4;
	position: relative;
}
.form_box .input .gray_box + .gray_box{
	margin-top: 20px;
}
.form_box .input .gray_box .delete_btn{
	position: absolute; bottom:auto; top: 20px; right: 20px;
}
.form_box .input .gray_box_add{
	margin-top: 10px;
	display: flex;
	justify-content: flex-end;
}
.form_box .input .education_box{
}
.form_box .input .education_item{
	margin-top: 15px;
	display: flex;
	align-items: center;
}
body.with_vietnamese .form_box .input .education_item{
	display: block;
}
.form_box .input .education_box .education_item:first-child{
	margin-top: 0;
}
.form_box .input .education_name{
	width: 65px;
	font-size: 14px;
}
body.with_vietnamese .form_box .input .education_name{
	width: 100%;
}
.form_box .input .education_name small{
	margin-left: 10px;
	font-size: 12px;
	color: #0071bc;
}
.form_box .input .education_inner{
	width: calc(100% - 65px);
}
body.with_vietnamese .form_box .input .education_inner{
	width: 100%;
	margin-top: 10px;
	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: 80px;
	width: auto;
}
.form_box .input .education_inner span{
	margin-right: 25px;
}
body.with_vietnamese .form_box .input .education_inner span{
	width: auto;
	margin: 0 10px;
	line-height: 1.2;
}
.form_box .input .education_inner span.select_form{
	width: auto;
	margin-right: 10px;
}
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: 12px;
	color: #0071bc;
}
.form_box .input .history_box{
}
.form_box .input .history_item{
	margin-top: 15px;
	display: flex;
	align-items: center;
}
body.with_vietnamese .form_box .input .history_item{
	display: block;
}
.form_box .input .history_box .history_item:first-child{
	margin-top: 0;
}
.form_box .input .history_name{
	width: 150px;
	font-size: 14px;
}
body.with_vietnamese .form_box .input .history_name{
	width: 100%;
}
.form_box .input .history_name small{
	margin-left: 10px;
	font-size: 12px;
	color: #0071bc;
}
.form_box .input .history_inner{
	width: calc(100% - 150px);
}
body.with_vietnamese .form_box .input .history_inner{
	width: 100%;
	margin-top: 10px;
	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: 80px;
	width: auto;
}
.form_box .input .history_inner span.select_form select.w350{
	min-width: 80px;
	width: 350px;
}
body.with_vietnamese .form_box .input .history_inner span{
	margin-right: 20px;
}
body.with_vietnamese .form_box .input .history_inner span:nth-child(4){
	margin-right: 20px;
}
.form_box .input .history_inner span{
	margin-right: 10px;
	line-height: 1.2;
}
.form_box .input .history_inner span.select_form{
	width: auto;
	margin-right: 10px;
}
.form_box .input .history_inner span small{
	display: block;
	font-size: 12px;
	color: #0071bc;
}
.form_box .input .movie_box{
	margin-top: 10px;
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
.form_box .input .sample_movie{
	width: 210px;
}
.form_box .input .sample_movie a{
	width: 100%;
	height: 133px;
	padding: 25px 0 0 0;
	background: #FFF;
	border: 1px solid #999;
	display: block;
	line-height: 1.2;
	color: #666;
	text-align: center;
	transition: .2s;
}
.form_box .input .sample_movie a small{
	display: block;
	font-size: 12px;
}
.form_box .input .sample_movie a:hover{
	opacity: .6;
}
.form_box .input .movie_icon{
	display: block;
	line-height: 1;
}
.form_box .input .movie_icon i{
	font-size: 45px;
	line-height: 1;
}
.form_box .input .movie_play{
	margin-top: 10px;
	display: block;
	font-size: 14px;
	color: #333;
	text-decoration: underline;
}
.form_box .input .sample_movie a:hover .movie_play{
	text-decoration: none;
}
.form_box .input .movie_inner{
	width: 570px;
	margin-top: 0;
	padding: 15px;
	background: #EEE;
}
.form_box .input .movie_title{
	display: flex;
	align-items: center;
}
.form_box .input .movie_title i{
	margin-right: 10px;
	font-size: 30px;
	color: #e60012;
}
.form_box .input .movie_title span{
	font-size: 15px;
	line-height: 1.5;
	font-weight: bold;
	color: #333;
}
.form_box .input .movie_title span small{
	display: block;
	font-size: 12px;
	color: #666;
	font-weight: normal;
}
.form_box .input .movie_text{
	margin-top: 10px;
	font-size: 14px;
	color: #333;
}
.form_box .input .movie_text small{
	display: block;
	font-size: 11.5px;
}
.form_box .input .address_box{
}
.form_box .input .address_item{
	margin-top: 15px;
	display: flex;
	align-items: center;
}
body.with_vietnamese .form_box .input .address_item{
	display: block;
}
.form_box .input .address_box .address_item:first-child{
	margin-top: 0;
}
.form_box .input .address_name{
	width: 120px;
	font-size: 14px;
}
body.with_vietnamese .form_box .input .address_name{
	width: 100%;
}
.form_box .input .address_name small{
	margin-left: 10px;
	color: #0071bc;
	font-size: 12px;
}
.form_box .input .address_inner{
	width: calc(100% - 120px);
	display: flex;
	align-items: center;
	position: relative;
}
body.with_vietnamese .form_box .input .address_inner{
	width: 100%;
	display: block;
}
.form_box .input .address_inner input.zip{
	width: 200px;
	margin-right: 10px;
}
body.with_vietnamese .form_box .input .address_inner input.zip{
	width: 400px;
	margin-top: 0;
}
.form_box .input .address_inner button{
	padding: 5px 7px;
	background: #f39c12;
	border: 1px solid #e08e0b;
	border-radius: 4px;
	font-size: 14px;
	line-height: 1.5;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	transition: .2s;
}
.form_box .input .address_inner button:hover{
	background: #FFF;
	color: #f39c12;
}
body.with_vietnamese .form_box .input .address_inner button{
	margin-top: 0;
}
.form_box .input .zip_link{
	margin: 0 0 0 20px;
}
body.with_vietnamese .form_box .input .zip_link{
	margin-top: 0;
	position: absolute; top: -25px; right: 0;
}
.form_box .input .zip_link a{
	font-size: 14px;
	color: #e60012;
	text-decoration: underline;
}
.form_box .input .zip_link small{
	margin-left: 10px;
	display: inline-block;
	font-size: 12px;
	color: #0071bc;
	text-decoration: none;
}
.form_box .input .zip_link a:hover{
	text-decoration: none;
}
.form_box .input .address_inner select{
	width: 200px;
}
body.with_vietnamese .form_box .input .address_inner select{
	width: 100%;
}
.form_box .input .karte_box{
	margin-top: 20px;
	padding: 15px;
	background: #EEE;
}
.form_box .input .karte_title{
	font-size: 15px;
	font-weight: bold;
	color: #333;
}
.form_box .input .karte_text{
	margin-top: 10px;
	font-size: 14px;
	color: #333;
}
.form_box .input.line_id{
}
body.with_vietnamese .form_box .input.line_id{
	display: flex;
	align-items: center;
}
.form_box .input.line_id span{
	margin: 0 20px;
	line-height: 1.2;
}
.form_box .input.line_id span small{
	margin-left: 0;
	display: block;
	font-size: 12px;
	color: #0071bc;
}
.form_box .input.line_id span + input{
	margin: 0;
}
.form_box .input.support{
}
.form_box .input.support div{
}
.form_box .input.support div + div{
	margin-top: 15px;
}
.form_box .input.support span.select_form{
	width: 350px;
	display: inline-block;
}
body.with_vietnamese .form_box .input.support span.select_form{
	width: calc(100% - 120px);
}
body.with_vietnamese .form_box .input.support button.add_btn{
	margin: 15px 0 0 0;
}
.form_box .input.support button{
	margin: 0 20px;
}
body.with_vietnamese .form_box .input.support button{
	margin: 0 0 0 15px;
}
.form_box .input.support button + button{
	margin: 0 0 0 -10px;
}
.form_box .input.permit_number{
}
.form_box .input.permit_number input{
}
.form_box .input.permit_number input.w50{
	width: 65px;
}
.form_box .input.permit_number input.w350{
	width: 350px;
}
.form_box .input.permit_number span{
	font-size: 14px;
}
.form_box .career_box{
	margin-top: 30px;
}
.form_box form .career_box:first-child{
	margin-top: 25px;
}
.form_box .career_title_box{
	padding: 6px 30px 6px 15px;
	background: #555;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.form_box .career_title{
	font-size: 14px;
	color: #FFF;
}
.form_box .career_title small{
	margin-left: 10px;
	font-size: 12px;
}
.form_box .career_inner{
	padding: 15px 20px 20px 20px;
	background: #f4f4f4;
}
.form_box .career_item{
	margin-top: 15px;
	display: flex;
}
.form_box .career_item:first-child{
	margin-top: 0;
}
.form_box .career_name{
	width: 210px;
	padding-top: 5px;
	font-size: 14px;
}
.form_box .career_name span{
	color: #e60012;
}
.form_box .career_name small{
	margin-left: 0;
	display: block;
	font-size: 12px;
	color: #0071bc;
}
.form_box .career_input{
	width: calc(100% - 210px);
}
.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: 10px;
}
.form_box .career_inner .career_item:first-child span.select_form{
	min-width: 80px;
	width: auto;
	margin-right: 10px;
	display: inline-block;
}
.form_box .career_inner .career_item span small{
	color: #0071bc;
	font-size: 12px;
}
.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: flex;
}
.form_box .career_category div + div{
	margin-top: 15px;
}
.form_box .career_category div span{
	width: 45px;
	font-size: 14px;
}
body.with_vietnamese .form_box .career_category div span{
	width: 100%;
}
.form_box .career_category div span small{
	margin-left: 10px;
	font-size: 12px;
}
.form_box .career_category div span.select_form{
	width: calc(100% - 45px);
	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: calc(100% - 145px);
	margin-left: 45px;
}
body.with_vietnamese .form_box .career_category div + div span.select_form{
	width: calc(100% - 110px);
	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: 10px;
}
body.with_vietnamese .form_box .career_category div + div span.select_form + button{
	margin-left: 10px;
	margin-top: 0;
}
.form_box .career_category div:last-child{
	margin-left: 45px;
}
body.with_vietnamese .form_box .career_category div:last-child{
	margin-left: 0;
}
.form_box .career_add_btn{
	margin-top: 15px;
	display: flex;
	justify-content: flex-end;
}

.form_box .apply_check_box{
	width: 750px;
	margin: 50px auto 0 auto;
	padding: 25px;
	background: #f4f4f4;
	border: 1px solid #CCC;
	border-radius: 6px;
}
.form_box .apply_check_title{
	font-size: 14px;
	font-weight: bold;
	color: #333;
	text-align: center;
}
.form_box .apply_check_title small{
	display: block;
	font-size: 12px;
	color: #666;
}
.form_box .apply_check_box label{
	margin-top: 15px;
	display: flex;
	align-items: flex-start;
	font-size: 14px;
}
.form_box .apply_check_box label input{
	margin: 2px 12px 0 0;
}
.form_box .apply_check_box label small{
	margin-top: 10px;
	display: block;
	font-size: 12px;
	color: #666;
}
.form_box .btn{
	width: 580px;
	margin: 40px auto 0 auto;
}
.form_box .btn button{
	width: 100%;
	padding: 33px;
	display: block;
	background: #990000;
	border: 2px solid #990000;
	border-radius: 6px;
	outline: none;
	font-size: 24px;
	line-height: 1.5;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	transition: .2s;
}
.form_box .btn button:hover{
	background: #FFF;
	color: #990000;
}
.form_box .btn button.two_line{
	padding: 25px 33px;
}
.form_box .btn button.two_line span{
	display: block;
	font-size: 24px;
}
.form_box .btn button.two_line span + span{
	font-size: 16px;
}

.form_top_caution{
	width: 1020px;
	margin: 10px auto 0 auto;
	font-size: 14px;
	font-weight: bold;
	color: #e60012;
}
.form_box .word_count{
	font-size: 14px;
	color: #666;
	text-align: right;
}

.hit_num{
	display: flex;
	justify-content: space-between;
	font-size: 12px;
	color: #e60012;
	font-weight: bold;
}
.hit_num strong{
	font-size: 16px;
	color: #000;
	font-weight: bold;
}

.jobsearch_list{
}
.jobsearch_list .box{
	margin-top: 20px;
	padding: 0 25px 15px 25px;
	border: 1px solid #666;
	position: relative;
}
.jobsearch_list .cate{
	width: 400px;
	padding: 7px;
	background: #666;
	margin-left: -25px;
	font-size: 14px;
	line-height: 1.5;
	color: #FFF;
}
.jobsearch_list .catch{
	margin: 7px 0 0 0;
	padding: 0 0 10px 0;
	border-bottom: 1px solid #f39c11;
	font-size: 16px;
	color: #f39c11;
	font-weight: bold;
}
.jobsearch_list .inner{
	padding: 5px 0 0 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.jobsearch_list .item{
	width: 250px;
	margin-top: 11px;
	display: flex;
	align-items: center;
}
.jobsearch_list .inner .item:nth-child(even){
	width: calc(100% - 250px);
}
.jobsearch_list .inner .item:last-child{
	width: 100%;
	padding-left: 250px;
	align-items: flex-start;
}
.jobsearch_list .title{
	width: 80px;
	padding-top: 1px;
	background: #f39c11;
	border-radius: 12.5px;
	font-size: 14px;
	line-height: 24px;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.jobsearch_list .text{
	width: calc(100% - 80px);
	margin-top: 0;
	padding-left: 10px;
	font-size: 14px;
}
.jobsearch_list .bottom{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: flex-start;
}
.jobsearch_list .tag{
	width: calc(100% - 450px);
	padding: 16px 0 0 0;
	display: flex;
	flex-wrap: wrap;
}
.jobsearch_list .tag div{
	margin: 4px 4px 0 0;
	padding: 3px 6px;
	background: #f3efe8;
	font-size: 14px;
	line-height: 1;
}
.jobsearch_list .btn_box{
	width: 410px;
	padding: 20px 0 0 0;
	display: flex;
	justify-content: space-between;
}
.jobsearch_list .btn_box .btn{
	width: 200px;
	margin-top: 0;
	border-radius: 10px;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	overflow: hidden;
}
.jobsearch_list .btn_box .btn a{
	padding: 10px 0 8px 0;
	background: #f39c11;
	border: 1px solid #f39c11;
	border-radius: 10px;
	display: block;
	font-size: 12px;
	font-weight: normal;
	color: #FFF;
	text-align: center;
	transition: .2s;
	text-decoration: none;
}
.jobsearch_list .btn_box .btn a:hover{
	background: #FFF;
	color: #f39c11;
}
.jobsearch_list .btn_box .btn.last a{
	background: #990000;
	border-color: #990000;
}
.jobsearch_list .btn_box .btn.last a:hover{
	background: #FFF;
	color: #990000;
}
.jobsearch_list .btn_box .btn a span{
	display: block;
}
.jobsearch_list .btn_box .btn a span:first-child{
	font-size: 16px;
	font-weight: bold;
}

.modal_box{
	width: 820px;
	background: #FFF;
	border-radius: 10px;
	position: absolute; top: 50%; left: 50%;
	transform:translate(-50%,-50%);
	overflow: hidden;
}
.modal_title_box{
	padding: 11px 17px;
	background: #990000;
	position: relative;
	font-size: 18px;
	line-height: 1.2;
	color: #FFF;
	font-weight: normal;
	text-align: center;
}
.modal_title_box span{
	margin-left: 5px;
}
.modal_title_box a{
	position: absolute; top: 50%; right: 17px;
	transform: translateY(-50%);
	color: #FFF;
}
.modal_inner{
	max-height: 480px;
	overflow-y: auto;
	color: #444;
}

.modal_login_category{
	padding: 20px 10px 0 20px;
	display: flex;
	align-items: center;
}
.modal_login_category .title{
	width: auto;
	min-width: 60px;
	padding: 2px 5px;
	background: #555;
	border-radius: 12px;
	font-size: 14px;
	line-height: 20px;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.modal_login_category .input{
	padding-left: 10px;
	display: block;
}
.modal_login_category .input label{
	margin-top: 0;
	font-size: 14px;
}
.modal_login_category .input label + label{
	margin-left: 20px;
}
.modal_login_input{
	padding: 20px 20px 0 20px;
	display: flex;
	justify-content: center;
	gap: 20px;
}
.modal_login_input .item{
	width: auto;
	margin-top: 0;
	display: flex;
	align-items: center;
}
.modal_login_input .title{
	width: auto;
	min-width: 60px;
	padding: 2px 5px;
	background: #555;
	border-radius: 12px;
	font-size: 14px;
	line-height: 20px;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.modal_login_input .input{
	margin-top: 0;
	margin-left: 15px;
}
.modal_login_input .input input{
	width: 250px;
}
.modal_login_btn{
	margin-top: 20px;
	text-align: center;
}
.modal_login_btn button{
	width: 300px;
	padding: 13px 0 11px 0;
	display: inline-block;
	background: #990000;
	border: 1px solid #990000;
	border-radius: 25px;
	outline: none;
	font-size: 16px;
	line-height: 24px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	transition: .2s;
}
.modal_login_btn button:hover{
	background: #FFF;
	color: #990000;
}
.modal_login_btn button i{
	margin-left: 20px;
}
.modal_login_foget{
	margin-top: 10px;
	font-size: 0;
	text-align: center;
}
.modal_login_foget a{
	font-size: 14px;
	line-height: 1.2;
	color: #a6937c;
	text-align: center;
	text-decoration: underline;
}
.modal_login_foget a:hover{
	text-decoration: none;
}

.modal_registration_box{
	margin: 15px 10px 10px 10px;
	padding: 10px 10px 10px 15px;
	background: #f3efe8;
	border-radius: 10px;
	display: flex;
}
.modal_registration_box .left{
	width: 120px;
	display: block;
}
.modal_registration_box .medal{
	width: 100%;
}
.modal_registration_box .text{
	width: auto;
	margin-top: 5px;
	padding-left: 0;
	font-size: 15px;
	line-height: 1.2;
	color: #000;
	text-align: center;
}
.modal_registration_box .right{
	width: calc(100% - 120px);
	padding-left: 20px;
}
.modal_registration_box .title{
	width: auto;
	padding-top: 0;
	background: none;
	border-radius: 0;
	font-size: 18px;
	line-height: 1.5;
	color: #990000;
	font-weight: bold;
	text-align: center;
}
.modal_registration_box .inner{
	padding: 10px 0 0 0;
	display: flex;
	gap: 10px;
}
.modal_registration_box .item{
	width: 150px;
	margin-top: 0;
	padding: 10px;
	background: #FFF;
	border: 1px solid #555;
	display: flex;
	flex-flow: column;
	align-items: center;
}
.modal_registration_box .inner .item:nth-child(even){
	width: 150px;
	border-color: #7e0000;
}
.jobsearch_list .modal_registration_box .inner .item:last-child{
	width: 150px;
	padding-left: 10px;
	align-items: center;
}
.modal_registration_box .icon{
	width: 82px;
	height: 70px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.modal_registration_box .btn_box{
	width: 100%;
	padding: 0;
	display: flex;
	flex-flow: column;
}
.modal_registration_box .btn_box .btn{
	width: 100%;
	height: 40px;
	display: flex;
	align-items: center;
	border-radius: 0;
	box-shadow: none;
}
.modal_registration_box .btn_box .btn a{
	width: 100%;
	padding: 5px 0 3px 0;
	background: #555;
	border: 1px solid #555;
	display: block;
	font-size: 14px;
	line-height: 16px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	transition: .2s;
	text-decoration: none;
}
.modal_registration_box .btn_box .btn a:hover{
	background: #FFF;
	color: #555;
}
.modal_registration_box .item:nth-child(even) .btn_box .btn a{
	border-color: #7e0000;
	background: #7e0000;
	line-height: 22px;
}
.modal_registration_box .item:nth-child(even) .btn_box .btn a:hover{
	background: #FFF;
	color: #7e0000;
}
.modal_registration_box p{
	margin-top: 5px;
	font-size: 12px;
	line-height: 1.2;
	text-align: center;
}

.modal_apply{
	padding: 10px 10px 30px 10px;
}
.modal_apply .welcome{
	margin-top: 15px;
	font-size: 21px;
	line-height: 1.5;
	font-weight: bold;
	text-align: center;
}
.modal_apply .top_text{
	margin-top: 15px;
	font-size: 16px;
	line-height: 1.5;
	text-align: center;
}
.modal_apply_box{
	margin-top: 20px;
}
.modal_apply_box .category{
	padding: 7px;
	background: #666;
	font-size: 14px;
	line-height: 1.5;
	color: #FFF;
}
.modal_apply_box .detail{
	padding: 10px 25px 20px 25px;
	background: #f3efe8;
	border-radius: 0 0 10px 10px;
}
.modal_apply_box .catch_copy{
	padding-bottom: 10px;
	border-bottom: 1px solid #f39c11;
	font-size: 16px;
	line-height: 1.3;
	color: #f39c11;
	font-weight: bold;
}
.modal_apply_inner{
	padding-top: 10px;
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}
.modal_apply_inner .item{
	width: auto;
	margin-top: 0;
	padding: 10px 30px 0 0;
	display: flex;
	align-items: center;
}
.modal_apply_inner .title{
	width: 80px;
	padding-top: 1px;
	background: #f39c11;
	border-radius: 12.5px;
	font-size: 14px;
	line-height: 24px;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.modal_apply_inner .text{
	margin-top: 0;
	padding-left: 10px;
	font-size: 14px;
}

.modal_apply_select{
	padding-top: 25px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.modal_apply_select .title{
	width: 180px;
	padding-top: 2px;
	background: #555;
	border-radius: 12px;
	font-size: 14px;
	line-height: 22px;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.modal_apply_select .input{
	width: 500px;
	margin: 0 0 0 10px;
}
.modal_apply_select .input span{
	width: 100%;
}

.modal_apply_btn_box{
	padding-top: 20px;
	display: flex;
	justify-content: center;
	gap: 40px;
}
.jobsearch_list .btn_box .modal_apply_btn_box .btn{
	width: 300px;
	margin-top: 0;
	border-radius: 0;
	box-shadow: none;
	overflow: visible;
}
.modal_apply_btn_box .btn button{
	width: 100%;
	padding: 13px 0 11px 0;
	background: #f39c11;
	border: 1px solid #f39c11;
	border-radius: 25px;
	outline: none;
	display: block;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 16px;
	line-height: 24px;
	font-weight: normal;
	color: #FFF;
	text-align: center;
	transition: .2s;
}
.modal_apply_btn_box .btn button:hover{
	background: #FFF;
	color: #f39c11;
}
.modal_apply_btn_box .btn:nth-child(even) button{
	background: #990000;
	border-color: #990000;
	font-size: 20px;
}
.modal_apply_btn_box .btn:nth-child(even) button:hover{
	background: #FFF;
	color: #990000;
}
.modal_apply_btn_box .btn button i{
	margin-left: 20px;
}

.modal_message{
	padding: 30px;
}
.modal_message .title{
	width: 100%;
	padding-top: 0;
	background: none;
	border-radius: 0;
	font-size: 21px;
	line-height: 1.5;
	color: #444;
	font-weight: bold;
	text-align: center;
}
.modal_message .text{
	margin-top: 20px;
	padding-left: 0;
	font-size: 16px;
	text-align: center;
}
.modal_message .btn{
}
.jobsearch_list .btn_box .modal_message .btn{
	width: 300px;
	margin: 20px 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: 13px 0 11px 0;
	background: #f39c11;
	border: 1px solid #f39c11;
	border-radius: 25px;
	outline: none;
	display: block;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 16px;
	line-height: 24px;
	font-weight: normal;
	color: #FFF;
	text-align: center;
	transition: .2s;
}
.jobsearch_list .btn_box .modal_message .btn a:hover{
	background: #FFF;
	color: #f39c11;
}
.jobsearch_list .btn_box .modal_message .btn.complete a{
	background: #990000;
	border-color: #990000;
	font-size: 20px;
}
.jobsearch_list .btn_box .modal_message .btn.complete a:hover{
	background: #FFF;
	color: #990000;
}
.modal_message .btn a i{
	margin-left: 20px;
}

.modal_job_list{
	padding: 15px 0 25px 0;
}
.modal_job_list .top_box{
	padding: 0 30px;
	display: flex;
	flex-flow: row-reverse;
}
.modal_job_list .top_box.no_movie{
	display: block;
}
.modal_job_list .movie{
	width: 400px;
	margin: 0;
}
.modal_job_list .movie_inner{
	height: 225px;
	border: 1px solid #555;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 72px;
	text-align: center;
}
.modal_job_list .inner{
	width: calc(100% - 400px);
	margin-top: 0;
	padding: 10px 20px 0 0;
}
.modal_job_list .top_box.no_movie .inner{
	width: 100%;
	padding: 10px 0 0 0;
}
.modal_job_list .catch_copy{
	font-size: 16px;
	line-height: 1.5;
	color: #f39c11;
	font-weight: bold;
}
.modal_job_list .category{
	padding-top: 10px;
}
.modal_job_list .top_box.no_movie .category{
	display: flex;
	justify-content: center;
}
.modal_job_list .item{
	width: 100%;
	margin-top: 0;
	padding: 10px 0 0 0;
	display: flex;
	align-items: flex-start;
}
.jobsearch_list .inner .item:last-child {
    width: 100%;
    padding-left: 0;
    align-items: flex-start;
}
.modal_job_list .top_box.no_movie .item,
.jobsearch_list .top_box.no_movie .inner .item:last-child{
	width: auto;
	padding-right: 30px;
}
.modal_job_list .title{
	width: 70px;
	padding-top: 1px;
	background: #f39c11;
	border-radius: 12.5px;
	font-size: 14px;
	line-height: 24px;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.modal_job_list .text{
	width: calc(100% - 70px);
	margin-top: 0;
	padding: 5px 0 0  10px;
	font-size: 14px;
	line-height: 1.3;
}

.modal_job_table{
	padding: 20px 0 0 0;
}
.modal_job_table table{
	width: 100%;
	border-collapse: collapse;
	font-size: 14px;
}
.modal_job_table tr{
}
.modal_job_table tr:nth-child(odd){
	background: #f3efe8;;
}
.modal_job_table th,
.modal_job_table td{
	padding: 13px;
	display: table-cell;
	font-weight: normal;
	text-align: left;
}
.modal_job_table th{
	width: 200px;
	text-align: right;
}
.modal_job_table td{
	border-top: none;
}

.modal_job_list .modal_apply_select,
.modal_job_list .modal_apply_btn_box{
	padding: 25px 0 0 0;
}
.modal_job_list .modal_apply_select .title{
	width: 180px;
	padding-top: 2px;
	background: #555;
	border-radius: 12px;
	font-size: 14px;
	line-height: 22px;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}

.pagination{
	margin-top: 30px;
	display: flex;
	justify-content: center;
	align-items: center;
}
.pagination a{
	font-size: 16px;
	color: #f39c11;
}
.pagination a.prev{
	margin-right: 16px;
}
.pagination a.next{
	margin-left: 16px;
}
.pagination a.item{
	width: 33px;
	margin: 0 3px;
	padding-top: 0;
	border: 1px solid #f39c11;
	font-size: 16px;
	line-height: 31px;
	text-align: center;
	transition: .2s;
	text-decoration: none;
}
.pagination a.item:hover{
	background: #f39c11;
	color: #FFF;
}
.pagination a.item.active{
	background: #f39c11;
	color: #FFF;
}
.pagination a.item.active:hover{
	background: #FFF;
	color: #f39c11;
}

.jobsearch_small{
	margin-top: 0;
}
.jobsearch_small h3{
	padding: 12px 0;
	background: #555;
	font-size: 16px;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.jobsearch_small .box{
	padding: 20px 15px 40px 15px;
	background: #f4f4f4;
	border: 1px solid #555;
}
.jobsearch_small .item{
	margin-bottom: 20px;
}
.jobsearch_small .name{
	font-size: 14px;
}
.jobsearch_small .input{
}
.jobsearch_small .input span.select_form{
	width: 100%;
}
.jobsearch_small .save_check{
	margin-top: 20px;
	text-align: center;
}
.jobsearch_small .btn{
	width: 300px;
	margin: 0 auto;
	padding-top: 20px;
}
.jobsearch_small .btn button{
	width: 100%;
	padding: 20px;
	display: block;
	background: #990000;
	border: 1px solid #990000;
	border-radius: 10px;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 16px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	transition: .2s;
}
.jobsearch_small .btn button:hover{
	background: #FFF;
	color: #990000;
}

.line_account{
	margin-top: 30px;
}
.line_account h3{
	padding: 12px 0;
	background: #555;
	font-size: 16px;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.line_account .box{
	padding: 50px 0 40px 0;
	background: #f4f4f4;
	border: 1px solid #555;
}
.line_account .qr{
	width: 180px;
	margin: 0 auto;
}
.line_account p{
	margin-top: 30px;
	font-size: 14px;
	line-height: 1.5;
	text-align: center;
}

.registration_info_box{
	margin-top: 30px;
}
.registration_info_box h3{
	padding: 12px 0;
	background: #555;
	font-size: 16px;
	color: #FFF;
	font-weight: bold;
	text-align: center;
}
.registration_info_box .box{
	padding: 20px;
	background: #f4f4f4;
	border: 1px solid #555;
}
.registration_info_box .medal{
	width: 120px;
	margin: 0 auto;
	text-align: center;
}
.registration_info_box h4{
	margin-top: 15px;
	font-size: 19px;
	font-weight: bold;
}
.registration_info_box p{
	margin-top: 15px;
	font-size: 18px;
}
.registration_info_box h5{
	margin-top: 15px;
	font-size: 18px;
	font-weight: bold;
	color: #990000;
}
.registration_info_box .inner{
}
.registration_info_box .item{
	margin-top: 20px;
	padding: 13px 20px;
	background: #FFF;
	border: 1px solid #555;
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.registration_info_box .icon{
	width: 130px;
}
.registration_info_box .detail{
	width: calc(100% - 140px);
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
}
.registration_info_box .text{
	font-size: 17px;
	line-height: 1.3;
}
.registration_info_box .btn{
	width: 160px;
	margin-top: 12px;
}
.registration_info_box .btn a{
	width: 100%;
	margin: 0 auto;
	padding: 6px 4px;
	background: #555;
	border: 1px solid #555;
	border-radius: 6px;
	display: block;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 15px;
	line-height: 1.3;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	text-decoration: none;
}
.registration_info_box .btn a:hover{
	background: #FFF;
	color: #555;
}
.registration_info_box .item:nth-child(even) .btn a{
	background: #990000;
	border-color: #990000;
}
.registration_info_box .item:nth-child(even) .btn a:hover{
	background: #FFF;
	color: #990000;
}


/* guide */

.guide_h2{
	height: 300px;
	padding: 0;
	display: flex;
}
.guide_h2 .inner{
	width: 600px;
	padding-top: 66px;
}
.guide_h2 .icon{
	height: 200px;
	position: absolute; top: 0; left: 0;
	transform: translateX(0);
}
.guide_h2 .icon img{
	height: 100%;
}
.guide_h2 h2{
	padding-left: 100px;
	position: relative;
	z-index: 1;
	font-size: 30px;
	line-height: 1.3;
	font-weight: normal;
	text-align: left;
}
body.guide_page.okuridasi_page .guide_h2 h2{
	font-size: 29px;
}
.guide_h2 .title_box{
	width: 600px;
	padding-top: 30px;
	position: relative;
	z-index: 1;
	text-align: center;
}
.guide_h2 .big_title{
	margin-top: 20px;
	font-size: 38px;
	line-height: 1.3;
	font-weight: bold;
	color: #990000;
}
.guide_h2 .big_title small{
	font-size: 29px;
}
.guide_h2 .big_title span{
	font-size: 30px;
	font-weight: normal;
	color: #000;
}
.guide_h2 .small_title{
	margin-top: 20px;
	font-size: 24px;
	line-height: 1.3;
}
.guide_h2 .small_title span{
	width: 90px;
	margin-right: 5px;
	padding: 0;
	background: #990000;
	border-radius: 15px;
	display: inline-block;
	vertical-align: middle;
	font-size: 16px;
	line-height: 30px;
	font-weight: bold;
	color: #fff9b4;
	text-align: center;
}
.guide_h2 .btn_box{
	margin-top: 0;
	display: flex;
	justify-content: flex-start;
	position: absolute; bottom: 30px; left: 20px;
}
.guide_h2 .btn_box div{
	width: 270px;
	margin-right: 20px;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
}
.guide_h2 .btn_box div a{
	padding: 16px 0 14px 0;
	background: #990000;
	border: 1px solid #FFF;
	border-radius: 4px;
	display: block;
	font-size: 24px;
	font-weight: normal;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	transition: .2s;
}
.guide_h2 .btn_box div a:hover{
	background: #FFF;
	color: #990000;
}
.guide_h2 .btn_box div a::after{
	content: "";
	margin-left: 20px;
	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 a:hover::after{
	border-left-color: #990000;
}
.guide_h2 .btn_box div:last-child a{
	background: #555;
}
.guide_h2 .btn_box div:last-child a:hover{
	background: #FFF;
	color: #555;
}
.guide_h2 .btn_box div:last-child a:hover::after{
	border-left-color: #555;
}
.guide_h2 .btn_box div a i{
	margin-right: 20px;
}
.guide_h2 .caution{
	margin-top: 0;
	position: absolute; bottom: 30px; right: 20px;
	font-size: 11px;
	line-height: 1.3;
	color: #555;
	text-align: right;
}

.guide_link{
	padding: 10px 0;
	background: #f3efe8;
}
.guide_link .box{
	display: flex;
	justify-content: center;
	gap: 5px;
	text-align: center;
}
.guide_link .item{
}
.guide_link .item a{
	height: 80px;
	background: #FFF;
	border: 1px solid #a6937c;
	border-radius: 5px;
	position: relative;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	line-height: 1.3;
	font-weight: bold;
	color: #a6937c;
	transition: .2s;
	text-decoration: none;
}
.guide_link .item a:hover{
	background: #990000;
	border-color: #990000;
	color: #FFF;
}
.guide_link .item a::after{
	content: "";
	border-top: 8px solid #f3efe8;
	border-right: 6px solid transparent;
	border-left: 6px solid transparent;
	position: absolute; top: -1px; left: 50%;
	transform: translateX(-50%);
	display: none;
}
.guide_link .item a:hover::after{
	display: block;
}
.guide_link .item.w80 a{
	width: 80px;
}
.guide_link .item.w110 a{
	width: 110px;
}
.guide_link .item.w115 a{
	width: 115px;
}
.guide_link .item.w120 a{
	width: 120px;
}
.guide_link .item.w140 a{
	width: 140px;
}
.guide_link .item.w145 a{
	width: 145px;
}
.guide_link .item.w150 a{
	width: 150px;
}
.guide_link .item.w160 a{
	width: 160px;
}
.guide_link .item.w175 a{
	width: 175px;
}
.guide_link .item.w200 a{
	width: 200px;
}
.guide_link .item a small{
	font-size: 14px;
}
.guide_link .link_cese{
	height: 80px;
	padding: 5px 10px 0 10px;
	background: #a6937c;
	border-radius: 5px;
}
.guide_link .inner{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-items: center;
	gap: 5px;
}
.guide_link .inner .item a{
	height: 40px;
}
.guide_link .inner .item a::after{
	border-top-color: #a6937c;
}
.guide_link .title{
	font-size: 16px;
	color: #FFF;
}

body.guide_page .h3_box{
	text-align: center;
}
body.guide_page .h3_box h3{
	font-size: 48px;
	line-height: 1.3;
	font-weight: normal;
	color: #555;
}
body.guide_page .h3_box h3 small{
	display: block;
	font-size: 30px;
}
body.guide_page .h3_box h3 strong{
	font-weight: normal;
	color: #990000;
}
body.guide_page .h3_box h3 span{
	font-size: 36px;
}
body.guide_page .h3_box .h3_small{
	font-size: 16px;
	color: #a6937c;
}

.guide_can{
	padding-top: 60px;
}
.guide_can .box{
	width: 780px;
	margin: 0 auto;
	padding-top: 30px;
	position: relative;
}
.guide_can .box.wide{
	width: 100%;
}
.guide_can .inner{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
	gap: 20px;
}
.guide_can .item{
	width: 180px;
	position: relative;
}
.guide_can .item span{
	width: 90px;
	padding: 0;
	background: #990000;
	border-radius: 15px;
	display: block;
	position: absolute; top: -15px; left: -15px;
	z-index: 1;
	font-size: 16px;
	line-height: 30px;
	font-weight: bold;
	color: #fff9b4;
	text-align: center;
}
.guide_can .acc{
	width: 413px;
	position: absolute; top: 364px; left: 82px;
}
.guide_can .carte{
	width: 580px;
	margin: 60px 0 10px 0;
	padding: 5px;
	background: #7e6b5a;
	border-radius: 20px;
	font-size: 16px;
	line-height: 30px;
	color: #FFF;
	text-align: center;
}
.guide_can .carte a{
	color: #ffff00;
}

.guide_example{
	padding: 70px 0 20px 0;
}
.guide_example .top_text{
	margin-top: 20px;
	font-size: 16px;
	line-height: 1.3;
	text-align: center;
}
.guide_example .question_box{
	margin-top: 30px;
	padding: 0 20px 20px 20px;
	background: #fffde5;
	border: 1px solid #a6937c;
	border-radius: 20px;
}
.guide_example .question_box .item{
	padding-top: 20px;
}
.guide_example .question_box .title{
	display: flex;
	align-items: center;
	font-size: 21px;
	font-weight: bold;
	color: #59493f;
}
.guide_example .question_box .title span{
	width: 22px;
	height: 22px;
	margin-right: 11px;
	background: #59493f;
	border-radius: 11px;
	display: flex;
	justify-content: center;
	align-items: center;
	font-size: 16px;
	color: #FFF;
	text-align: center;
}
.guide_example .question_box .text{
	padding-left: 33px;
	font-size: 18px;
	line-height: 1.3;
}
.guide_example .case_box{
	margin-top: 22px;
}
.guide_example .case_title{
	display: flex;
	align-items: center;
	font-size: 24px;
	line-height: 1;
	color: #555;
}
.guide_example .case_title span{
	height: 52px;
	margin-right: 11px;
}
.guide_example .case_title span img{
	height: 100%;
}
.guide_example .case_caution{
	margin-top: -22px;
	font-size: 14px;
	color: #990000;
	text-align: right;
}
.guide_example .inner{
	margin-top: 11px;
	border: 1px solid #555;
	border-top: none;
}
.guide_example .inner .item{
	padding-bottom: 20px;
}
.guide_example .inner h4{
	padding: 18px;
	background: #555;
	font-size: 24px;
	line-height: 1.3;
	font-weight: normal;
	color: #FFF;
}
.guide_example .inner h4 span{
	display: inline-block;
	font-size: 16px;
	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: 20px 20px 0 20px;
}
.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: 10px 20px;
	display: table-cell;
	font-size: 16px;
	line-height: 1.3;
	text-align: left;
}
.guide_example .inner .table th{
	width: 100px;
	position: relative;
	font-weight: bold;
	color: #72b1a6;
}
.guide_example .inner .table th::after{
	content: "";
	border-left: 6px solid #72b1a6;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
	position: absolute; top: 50%; right: 0;
	transform: translateY(-50%);
}
.guide_example .inner .table th.none::after{
	display: none;
}
.guide_example .inner .table td{
	padding-top: 14px;
}
.guide_example .inner .table td span{
	color: #990000;
}
.guide_example .inner .table td strong{
	font-weight: bold;
}
body.guide_page.jinzai_page .guide_example .inner .item#case1 .table{
	width: 860px;
	margin-top: -240px;
	position: relative;
	z-index: 2;
}
.guide_example .inner .triangle{
	width: 80px;
	margin: 0 auto;
	font-size: 0;
	text-align: center;
}
.guide_example .inner .text_box{
	padding: 20px;
	font-size: 20px;
	line-height: 1.3;
	text-align: center;
}
.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: 16px;
}
.guide_example .inner .text_box big{
	font-size: 24px;
}
.guide_example .inner .text_box span.carte{
	display: inline-block;
}
.guide_example .inner .text_box span.carte a{
	width: 240px;
	height: 40px;
	padding: 4px;
	background: #7e6b5a;
	border: 1px solid #7e6b5a;
	border-radius: 20px;
	display: block;
	font-size: 20px;
	line-height: 30px;
	font-weight: bold;
	color: #fff100;
	text-align: center;
	text-decoration: none;
	transition: .2s;
}
.guide_example .inner .text_box span.carte a:hover{
	background: #fff100;
	color: #7e6b5a;
}
.guide_example .inner .text_box span.carte a img{
	width: 15px;
	margin-left: 6px;
	display: inline-block;
	vertical-align: middle;
}
.guide_example .inner .text_box span.carte a:hover img{
	filter: brightness(0) saturate(100%) invert(41%) sepia(17%) saturate(606%) hue-rotate(354deg) brightness(92%) contrast(88%);
}

.guide_after{
	padding-top: 0;
}
.guide_after .top_triangle{
	width: 170px;
	margin: 0 auto;
	font-size: 0;
	text-align: center;
}
.guide_after .top_title{
	margin-top: 13px;
	padding: 25px;
	background: #990000;
	font-size: 30px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
.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: 50px;
	text-align: center;
}

.guide_plan{
	padding: 50px 0 5px 0;
}
.guide_plan h4{
	margin-top: 30px;
	padding: 11px;
	background: #a6937c;
	font-weight: bold;
	font-size: 18px;
	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{
	padding: 20px;
	background: #990000;
	display: block;
	position: relative;
}
.guide_plan .h4_box h4{
	width: 100%;
	margin-top: 0;
	padding: 0;
	background: none;
	font-size: 20px;
}
.guide_plan .h4_box h4 img{
	width: 15px;
	margin-left: 20px;
	vertical-align: middle;
}
.guide_plan .h4_box .btn{
	width: 140px;
	padding: 0;
	position: absolute; top: 50%; right: 50px;
	transform: translateY(-50%);
}
.guide_plan .h4_box .btn a{
	padding: 2px;
	background: #FFF;
	border: 1px solid #FFF;
	border-radius: 13px;
	display: block;
	position: relative;
	font-size: 14px;
	line-height: 20px;
	font-weight: bold;
	color: #990000;
	text-align: center;
	transition: .2s;
	text-decoration: none;
}
.guide_plan .h4_box .btn a:hover{
	background: #990000;
	color: #FFF;
}
.guide_plan .h4_box .btn a::after{
	content: "";
	position: absolute; top: 50%; right: 15px;
	transform: translateY(-50%);
	border-top: 6px solid transparent;
	border-bottom: 6px solid transparent;
	border-left: 7px solid #990000;
	transition: .2s;
}
.guide_plan .h4_box .btn a:hover::after{
	border-left-color: #FFF;
}
.guide_plan .bottom_text{
	margin-top: 33px;
	font-size: 36px;
	color: #990000;
	text-align: center;
}

.guide_cta{
	padding-top: 30px;
}
.guide_cta .box{
	width: 100%;
	margin: 0 auto;
	display: flex;
	justify-content: center;
	align-items: center;
	gap: 15px;
}
.guide_cta .box div{
	width: 390px;
	margin-top: 0;
	filter: drop-shadow(0px 0px 10px rgba(0,0,0,0.2));
}
.guide_cta .box div:last-child{
	pointer-events: none;
}

.guide_merit{
	padding: 25px 0 20px 0;
}
.guide_merit .box{
	padding: 46px 135px 57px 135px;
	border: 1px solid #990000;
	position: relative;
}
.guide_merit .acc_1{
	width: 76px;
	position: absolute; top: 33px; left: 82px;
}
.guide_merit .acc_2{
	width: 167px;
	position: absolute; top: 28px; right: 82px;
}
.guide_merit .title{
	font-size: 36px;
	line-height: 1.3;
	font-weight: bold;
	color: #59493f;
	text-align: center;
}
.guide_merit .title span{
	color: #990000;
}
.guide_merit .inner{
	padding-top: 35px;
}
.guide_merit .inner div{
	margin-top: 15px;
	font-size: 24px;
	line-height: 1.3;
	font-weight: bold;
	color: #59493f;
}
.guide_merit .inner div span{
	color: #990000;
}
.guide_merit .inner div i{
	margin-right: 9px;
}


body.karte_page.guide_page .guide_h2{
	height: 500px;
	padding: 50px 0;
}
body.karte_page.guide_page .guide_h2 .inner{
	padding-top: 0;
}
body.karte_page.guide_page .guide_h2 h2{
	padding-left: 0;
}
body.karte_page.guide_page .guide_h2 .icon{
	width: 570px;
	height: auto;
	margin: 37px 0 0 0;
	position: static;
	transform: translateX(0);
	text-align: center;
}
body.karte_page.guide_page .guide_h2 .title_box{
	padding-top: 0;
}
body.karte_page.guide_page .guide_h2 .big_title{
	margin-top: 0;
	font-size: 30px;
}
body.karte_page.guide_page .guide_h2 .big_title small{
	font-size: 30px;
}
body.karte_page.guide_page .guide_h2 .small_title{
	margin-top: 0;
	font-size: 24px;
	line-height: 1.5;
}
body.karte_page.guide_page .guide_h2 .small_title div{
	display: none;
}
body.karte_page.guide_page .guide_h2 .big_title div{
	display: inline-block;
	font-weight: normal;
	color: #000;
}
body.karte_page.guide_page .guide_h2 strong{
	font-weight: normal;
}
body.karte_page.guide_page .guide_h2 .medal{
	width: 560px;
	margin: 30px 0 0 40px;
	text-align: center;
}
body.karte_page.guide_page .guide_h2 .btn_box{
	bottom: 50px; left: auto; right: 5px;
	z-index: 1;
}
body.karte_page.guide_page .guide_h2 .btn_box div{
	margin: 0 0 0 20px;
}
body.karte_page.guide_page .guide_h2 .caution{
	bottom: 150px; right: 5px;
}

.karte_about{
	padding: 47px 0 36px 0;
	background: url(../images/guide_karte/webp/bg.webp) no-repeat center top;
	background-size: auto 100%;
	text-align: center;
}
.karte_about p{
	margin-top: 30px;
	font-size: 20px;
	line-height: 1.5;
}
.karte_about p span{
	color: #990000;
}
.karte_about p strong{
	font-size: 24px;
	font-weight: normal;
	color: #990000;
}
.karte_about .caution{
	margin-top: 20px;
	font-size: 16px;
	line-height: 1.5;
	color: #555;
}
.karte_about h4{
	margin-top: 10px;
	font-size: 40px;
	line-height: 1.5;
	font-weight: bold;
	color: #990000;
	text-align: center;
}
.karte_about h4 span{
	background: linear-gradient(transparent 50%, #ffffb2 50%);
}
.karte_about .box{
	padding-top: 30px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 30px;
}
.karte_about .item{
	width: 200px;
	height: 200px;
	background: #fffff0;
	border-radius: 50%;
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	text-align: center;
}
.karte_about .num{
	position: absolute; top: -30px; left: 50%;
	transform: translateX(-50%);
	font-size: 48px;
	font-weight: bold;
	color: #990000;
}
.karte_about .inner{
	padding-top: 20px;
}
.karte_about h5{
	font-size: 24px;
	font-weight: bold;
	color: #990000;
}
.karte_about .text{
	font-size: 18px;
	line-height: 1.5;
}

.karte_recom{
}
.karte_recom .triangle{
	width: 480px;
	margin: 0 auto;
}
.karte_recom .top_text{
	padding-top: 36px;
	font-size: 36px;
	line-height: 1.5;
	font-weight: bold;
	text-align: center;
}
.karte_recom .top_text div{
	padding: 0 40px 55px 40px;
	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: 25px;
	font-size: 24px;
	font-weight: bold;
	color: #990000;
	text-align: center;
}
.karte_recom .box{
	padding-top: 40px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 40px;
}
.karte_recom .item{
	width: 340px;
	padding: 45px 35px 55px 35px;
	background: #fffff7;
	border: 3px solid #990000;
	border-radius: 10px;
}
.karte_recom .text{
	font-size: 24px;
	font-weight: bold;
	color: #990000;
	text-align: center;
}
.karte_recom .icon{
	width: 100%;
	margin: 35px auto 0 auto;
	text-align: center;
}

.karte_price{
	margin-top: 80px;
	padding-top: 50px;
	background: #fbf5f5;
}
.karte_price .table_box{
	padding-top: 45px;
}
.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: 15px;
	border: 1px solid #CCC;
	font-size: 20px;
	font-weight: bold;
}
.karte_price .table_box th{
	width: 560px;
	background: #EEE;
	text-align: center;
}
.karte_price .table_box tr th:last-child{
	width: 640px;
	background: #990000;
	color: #FFF;
}
.karte_price .table_box td{
	padding-left: 140px;
	background: #FFF;
}
.karte_price .table_box tr td:last-child{
	padding-left: 180px;
}
.karte_price .table_box td strong{
	font-size: 32px;
	color: #990000;
}
.karte_price .caution{
	padding-top: 33px;
	font-size: 16px;
}

body.karte_page.guide_page .guide_plan{
	margin-top: 80px;
	padding-bottom: 55px;
	background: #f6f4f2;
}
body.karte_page.guide_page .guide_plan .h4_box{
	margin-top: 40px;
}
body.karte_page.guide_page .guide_example .inner{
	margin-top: 45px;
}
body.karte_page.guide_page .guide_cta{
	padding: 50px 0 60px 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: 600px;
	position: absolute; top: 50%; left: 50%;
	transform:translate(-50%,-50%);
	text-align: center;
}


.karte_modal_area .modal_box{
	width: 500px;
}

.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: 15px;
	font-size: 14px;
	font-weight: normal;
}
.karte_registration_table table th{
	width: 155px;
	text-align: right;
}
.karte_registration_table table td{
	white-space: wrap;
}
.karte_registration_table .payment{
	margin-top: 10px;
}

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

.law_check{
	margin-top: 20px;
	text-align: center;
}
.law_check input{
	margin-right: 13px;
}

.karte_registration_btn{
	width: 300px;
	margin: 20px auto;
}
.karte_registration_btn button{
	width: 100%;
	padding: 17px;
	display: block;
	background: #990000;
	border: 1px solid #990000;
	border-radius: 10px;
	outline: none;
	font-size: 16px;
	line-height: 24px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	transition: .2s;
}
.karte_registration_btn.disable button{
	background: #555;
	border-color: #555;
	pointer-events: none;
}
.karte_registration_btn button:hover{
	background: #FFF;
	color: #990000;
}

.karte_wide_registration_table{
	margin: 25px 70px 0 70px;
}
.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: 10px 0;
	display: table-cell;
	font-size: 14px;
	line-height: 1.5;
	font-weight: normal;
	vertical-align: top;
	text-align: left;
}
.karte_wide_registration_table table th{
	width: 200px;
	padding: 17px 30px 0 0;
}
.karte_wide_registration_table table th.req{
	display: flex;
	justify-content: space-between;
	align-items: center;
}
.karte_wide_registration_table table th.req span:last-child{
	margin-left: 0;
	padding: 4px 6px 3px 6px;
	background: #990000;
	font-size: 13px;
	color: #FFF;
}
.karte_wide_registration_table table td{
	width: 480px;
	padding-top: 10px;
	white-space: wrap;
}
.karte_wide_registration_table table td.pt{
	padding-top: 20px;
}
.karte_wide_registration_table table td span.select_form{
	width: 100%;
}
.karte_wide_registration_table table td span.caution{
	margin-left: 20px;
	display: inline-block;
	font-size: 14px;
	color: #f39c12;
}

.karte_wide_registration_table.parmit_number_table{
	margin: 10px 70px -15px 70px;
	padding: 10px 0;
	border-top: 1px dashed #AAA;
	border-bottom: 1px dashed #AAA;
}
.karte_wide_registration_table.parmit_number_table td.parmit_number_input input{
	width: 220px;
}
.karte_wide_registration_table.parmit_number_table td.parmit_number_input input.vs{
	width: 50px;
}
.karte_wide_registration_table.parmit_number_table td.parmit_number_input span{
	width: 45px;
	display: inline-block;
	text-align: center;
}
.karte_wide_registration_table.parmit_number_table td.parmit_number_input span.ex{
	width: auto;
	margin-left: 10px;
	padding-top: 0;
	display: inline-block;
	text-align: left;
}

.karte_wide_modal_area .law_box{
	margin-top: 20px;
}

.karte_wide_modal_area .law_check{
	margin-top: 30px;
	padding: 0;
	display: flex;
	justify-content: center;
	text-align: left;
}
.karte_wide_modal_area .law_check .icon{
	width: 132px;
}
.karte_wide_modal_area .law_check .inner{
	width: 500px;
	padding-left: 20px;
}
.karte_wide_modal_area .law_check span{
	display: block;
	font-size: 14px;
	color: #990000;
}

.karte_wide_registration_btn{
	width: 400px;
	margin: 30px auto;
}
.karte_wide_registration_btn button{
	width: 100%;
	padding: 9px;
	display: block;
	background: #990000;
	border: 1px solid #990000;
	border-radius: 25px;
	outline: none;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 20px;
	line-height: 30px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	text-decoration: none;
	transition: .2s;
}
.karte_wide_registration_btn button:hover{
	background: #FFF;
	color: #990000;
}
.karte_wide_registration_btn button i{
	margin-left: 10px;
}


/* footer */

footer{
}
footer .wrapper{
	padding: 0;
	display: flex;
	flex-flow: row-reverse;
	justify-content: space-between;
	align-items: flex-start;
}
footer .nav_box{
	width: 720px;
	padding: 15px 0 20px 0;
	border-bottom: none;
}
footer .top_nav{
}
footer .bottom_nav{
	margin-top: 25px;
	display: flex;
}
footer nav{
}
footer nav div{
	border-top: none;
}
footer nav div a{
	padding: 0;
	display: inline;
	font-size: 12px;
	line-height: 1.5;
	color: #555;
}
footer .top_nav nav{
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
footer .top_nav nav div{
	margin: 5px 20px 0 0;
	position: relative;
}
footer .top_nav nav div::after{
	content: "";
	width: 2px;
	height: 26px;
	border-right: dotted 2px #a6937c;
	position: absolute; top: 0; right: -11px;
}
footer .top_nav nav div:last-child::after{
	display: none;
}
footer .top_nav nav div a{
	font-size: 14px;
}
footer .bottom_nav nav{
	margin-right: 20px;
}
footer .logo_box{
	width: 480px;
	padding: 20px 170px 20px 10px;
}
footer .logo_box .top{
	width: 320px;
	padding-left: 0;
	font-size: 12px;
	text-align: left;
}
footer .logo_box .logo{
	width: 320px;
	margin: 5px 0 0 0;
	text-align: center;
}
footer .logo_box .logo img{
	width: 100%;
}
footer .logo_box .tel{
	width: 320px;
	margin-top: 13px;
}
footer .logo_box .title{
	width: 320px;
	padding: 3px 0 1px 0;
	background: #555;
	border-radius: 14px;
	font-size: 15px;
	line-height: 24px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
}
footer .logo_box .number{
	width: 320px;
	margin: 7px auto 0 auto;
}
footer .logo_box .btn_box{
	width: 320px;
	margin-top: 14px;
	display: flex;
	justify-content: space-between;
}
footer .logo_box .btn_box div{
	width: 150px;
	border-radius: 0;
	box-shadow: 0 0 6px rgba(0, 0, 0, 0.2);
	overflow: hidden;
}
footer .logo_box .btn_box div a{
	padding: 2px 0 0 0;
	background: #990000;
	border: 2px solid #FFF;
	border-radius: 4px;
	display: block;
	font-size: 16px;
	line-height: 32px;
	font-weight: bold;
	color: #FFF;
	text-align: center;
	transition: .2s;
	text-decoration: none;
}
footer .logo_box .btn_box div a:hover{
	background: #FFF;
	color: #990000;
}
footer .logo_box .btn_box div:last-child a{
	background: #555;
}
footer .logo_box .btn_box div:last-child a:hover{
	background: #FFF;
	color: #555;
}
footer .logo_box .btn_box div a i{
	margin-right: 5px;
	font-size: 17px;
}
footer .logo_box .inner{
	margin-top: 16px;
	display: flex;
	justify-content: flex-start;
	align-items: flex-start;
}
footer .logo_box .acc{
	width: 59px;
}
footer .logo_box p{
	padding-left: 7px;
	font-size: 11px;
	line-height: 18px;
}
footer .copy{
	padding: 10px;
	background: #555;
	font-size: 14px;
	color: #FFF;
	text-align: center;
}


/* quick_form */

.contents_wrap{
	padding-right: 320px;
	position: relative;
}
.main_contents{
}
.side_contents{
	width: 320px;
	height: 100%;
	overflow: auto;
	position: absolute; top: 0; right: 0;
}
@media screen and (min-width:1620px){
	.side_contents{
		position: fixed;
	}
}
.side_contents{
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.side_contents::-webkit-scrollbar {
    display: none;
}
.side_contents main{
}

.quick_form{
	width: 320px;
	height: 100%;
	overflow: auto;
	position: static;
	padding: 0;
	display: block;
}
.quick_form{
    -ms-overflow-style: none;
    scrollbar-width: none;
}
.quick_form::-webkit-scrollbar {
    display: none;
}
.quick_form .title_box{
	padding: 20px 10px 0 10px;
	line-height: 1.5;
	text-align: center;
}
.quick_form .balloon{
	width: 130px;
	margin: 0 auto;
}
.quick_form .title_box h2{
	margin-top: 5px;
	font-size: 22px;
	font-weight: bold;
}
.quick_form .title_box p{
	margin-top: 0;
	font-size: 14px;
}
.quick_form .box{
	min-height: 0;
	padding: 20px 25px 30px 25px;
	background: #FFF url(../images/quick_form/webp/bg.webp) no-repeat bottom right;
	background-size: 236px auto;
	border: none;
}
.quick_form .select_title{
	text-align: center;
}
.quick_form .select_title span{
	display: inline-block;
	position: relative;
	font-size: 16px;
	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: -15px;
	transform: rotate(-15deg);
}
.quick_form .select_title span::after{
	right: -15px;
	transform: rotate(15deg);
}
.quick_form .select{
	padding-top: 10px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.quick_form .select .item{
	width: 130px;
	margin-top: 10px;
	background: #FFF;
	border: 4px 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: 0 6px 6px 6px;
	display: block;
	text-decoration: none;
	transition: .2s;
}
.quick_form .select .item a:hover{
	background: #555;
	color: #FFF;
}
.quick_form .select .item a:hover .title{
	background: #FFF;
	color: #555;
}
.quick_form .select .item:nth-child(2) a:hover,
.quick_form .select .item:nth-child(3) a:hover{
	background: #7e0000;
}
.quick_form .select .item:nth-child(2) a:hover .title,
.quick_form .select .item:nth-child(3) a:hover .title{
	background: #FFF;
	color: #7e0000;
}
.quick_form .select .icon{
	width: 90px;
	height: 90px;
	margin: 0 auto;
	display: flex;
	align-items: center;
	justify-content: center;
}
.quick_form .select .title{
	width: 100%;
	margin: 0 auto;
	padding: 3px;
	background: #555;
	border-radius: 10px;
	display: block;
	box-shadow: 0 1px 0 rgba(5, 2, 2, 0.5);
	font-size: 16px;
	line-height: 20px;
	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: 10px auto 17px auto;
	background: #7e0000;
}
.quick_form .select .text{
	margin-top: 7px;
	display: block;
	font-size: 12px;
}
.quick_form .about_form{
	margin-top: 30px;
	padding: 15px 10px;
	border: 2px solid #d1c0a5;
	border-radius: 20px;
}
.quick_form .about_form h3{
	font-size: 18px;
	font-weight: bold;
	text-align: center;
}
.quick_form .about_form h3::before{
	content: "";
	width: 22px;
	height: 22px;
	margin-right: 10px;
	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: 15px;
	font-size: 14px;
}
.quick_form .inner{
	padding: 20px;
	background: #FFF;
	display: none;
}
body.under_column .quick_form .inner{
	display: block;
}
.quick_form .select_category{
	padding: 15px;
	background: #EEE;
	border-radius: 10px;
}
.quick_form .select_category .name{
	font-size: 14px;
	line-height: 1.5;
}
.quick_form .select_category .input{
	margin-top: 10px;
}
.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: 5px;
	font-size: 12px;
	color: #990000;
	text-align: right;
}
.quick_form .form_inner{
}
.quick_form .form_inner .item{
	margin-top: 10px;
}
.quick_form .form_inner .name{
	font-size: 14px;
	line-height: 1.5;
}
.quick_form .form_inner .name span{
	margin-left: 10px;
	padding: 1px 10px 0 10px;
	background: #990000;
	border-radius: 10px;
	display: inline-block;
	vertical-align: middle;
	font-size: 14px;
	line-height: 19px;
	color: #FFF;
	text-align: center;
}
.quick_form .form_inner .name small{
	color: #990000;
}
.quick_form .form_inner .input{
	margin-top: 10px;
}
.quick_form .form_inner .input select + select{
	margin-top: 10px;
}
.quick_form .form_inner .input span.select_form + span.select_form{
	margin-top: 10px;
}
.quick_form .privacy_check{
	margin-top: 20px;
	text-align: center;
}
.quick_form .privacy_en{
	margin-top: 0;
	font-size: 11px;
	color: #999;
	text-align: center;
}
.quick_form .privacy_en a{
	color: #a6937c;
	text-decoration: underline;
}
.quick_form .privacy_en a:hover{
	text-decoration: none;
}
.quick_form .btn{
	margin-top: 0;
	padding-bottom: 0;
}
.quick_form .btn button{
	min-width: 0;
	width: 280px;
	margin: 30px auto 0 auto;
	outline: none;
	padding: 16px;
	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: 20px;
	font-weight: normal;
	color: #FFF;
	text-align: center;
	transition: .2s;
}
.quick_form .btn button:hover{
	background: #FFF;
	color: #990000;
}
.quick_form .btn button i{
	margin-right: 10px;
}
.quick_form .btn button small{
	display: block;
	font-size: 11px;
}

}
