@charset "Shift-JIS";

span.xf_essential {
	margin-left: 5px;
}

.mt18{
	margin-top:18px;}
.mt20{
	margin-top:20px;}

::placeholder {
  color: #a6a5c4;
	font-family:'Noto Sans JP', sans-serif;}

/* ------------------------------------------------ checkbox */



select{
padding: 16px 0;
    font-size: 18px;
    width: 100%;
    margin-bottom: 15px;
}

input, textarea {
    width: 100%;
    box-sizing: border-box;
	font-size:18px;
	letter-spacing: 1.4px;
    transition: all .6s ease;
/*    border-bottom: 2px solid #333;*/
    border-right: none;
    border-left: none;
    border-top: none;
	border-bottom:none;
    border-radius: 0px;
	background-color:#f1f1f1;
}

input[type="text"]:focus,
textarea:focus {
	outline:none;
  box-shadow: 0 0 7px #c7c020;
  border: 1px solid #c7c020;
}

input[type=radio] {
	width: auto;
	padding: 0
}
#mailBox .xf_block input[type=radio]:checked+label {
	font-weight:bold;
	color: #c4920f;
}

input[type=checkbox] {
	width:auto;
	background-color: #ccc;
	}
input[type=checkbox]:checked {
	background-color: #ddd
}
input[type=checkbox] +label{
	letter-spacing:2px;
	}

@media screen and (max-width: 500px) {
input[type=checkbox] +label{
	letter-spacing:0px;
	}
}

#mailBox table.xf_block th.xf_field{
	opacity:0;
	display:block;
	width:100%;
	display:none;
	}
#mailBox table.xf_block td{
	display: block;
    width: 100%;
    box-sizing: border-box;
    border-bottom: 1px solid #bdbcbc;
    margin: 1em 0 2em 0;
    padding: 0 0 2.5em 0;

	}


.obi-head{
	position: relative;
    font-size: 180%;
    padding: 8px 0;
    font-weight: bold;
    background-color: #ff9a3b;
    text-align: center;
    color: #fff;
	}
.obi-head::after{
	top: 100%;
	left: 50%;
	border: solid transparent;
	content: "";
	height: 0;
	width: 0;
	position: absolute;
	pointer-events: none;
	border-color: rgba(255, 154, 59, 0);
	border-top-color: #ff9a3b;
	border-width: 22px;
	margin-left: -22px;
	}


.licence{
	padding: 10px 0 30px 0;
	display:flex;
	justify-content:center;
	align-items:center;
	vertical-align:middle;
	}

.licence input[type=radio]{
	display:none;}

.licence input[type=radio]+label {
	font-size:25px;
	padding:10px 40px;
	border: 3px double #fff;
}

.licence input[type=radio]:checked+label{
	font-weight:bold;
	border: 3px double #CC0000;
    border-radius: 50%;
}



#mailBox h1{
	margin-top:52px;
	text-align:center;
	font-size:20px;
	padding-bottom:50px;
	}
#mailBox h1 span{
	font-size:33px;
	color:#333;
	font-weight:bold
}
#mailBox h1 p{
    margin-top: 10px;
    background-color: #d8d4b0;
    padding: 5px 0;
	}

#mailBox h1 em{
    font-size: 20px;
    letter-spacing: 2px;	}

#mailBox .campaign-schedule{
	text-align:center;
	font-weight:bold;
	font-size:17px;
	margin:30px auto 50px auto;
	box-sizing:border-box;
	border-left:10px solid #ccc;
	border-right:10px solid #ccc;
	background-color:#ccc;
	padding:7px 0;}

#mailBox .campaign-schedule span{
	display:block;
	background-color:#fff;
	padding:15px 0;
	letter-spacing:2px;
}




table.xf_block td.xf_input .subject{
	font-weight:bold;
	font-size:18px;
	}
table.xf_block td.xf_input .subject-rule{
	margin-top:5px;
	margin-bottom:15px;
	}
p.front{
	font-size:16px;
	font-weight:bold;
	color:#675757;
	letter-spacing:2px;
	}
p.front2{
	font-size:13px;
	font-weight:bold;
	color:#675757;
	letter-spacing:2px;
	padding-top:12px;
	}

p.front span{
    font-size: 12px;
    margin-left: 10px;
    background-color: #d43e36;
    vertical-align: middle;
    letter-spacing: 0;
    color: #fff;
    padding: 0 7px;
	}

p.front-detail{
font-size: 13px;
    padding-left: 8px;
    margin-bottom: 7px;
}

p.back{
font-size: 13px;
    margin-top: -3px;	}

.radioBox{
	margin:0;
	padding:0;}
.radioBox + .radioBox{
	margin-top:-8px
	}







/*SUBMIT
------------------------------------------------------------------------------*/
input[type=submit], input[type=button] {
	width:80%;
	max-width: 500px;
	box-sizing:border-box;
	border-radius:3px;
	text-align: center;
	background-color: #244c5a;
	font-weight: bold;
	margin: 0 auto 3em auto;
	box-shadow : 0 0 0 1px #244c5a;
	border: 3px solid #fff;
	display:block;
	padding: 1em 0;
	color: #fff!important;

}


input[type=button] {
	margin-bottom: 30px;
	cursor: pointer;
}
input[type=submit]:hover, input[type=button] :hover {
	opacity: 0.8;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
}
@media screen and (max-width: 500px) {
	.button1, .button2{width: 90%;}
}

/*
------------------------------------------------------------------------------*/
.thanks-campaign{
	margin:50px auto;
	}
.thanks-campaign-txt{
	font-size:15px;
	line-height:1.7;
	}
.thanks-campaign-contact{
	margin-top:15px;
	border:1px solid #ccc;
	padding:7px;
	border-radius:10px;	
	}





/*
------------------------------------------------------------------------------*/	
input, textarea {
    padding: 18px 12px;
    /*margin-bottom: 25px;*/
}

table.xf_block td.xf_input{
	margin-bottom:20px;
}

div.attendant input[type=radio]+label {
	padding: 10px 51px;
	}
div.attendant input[type=radio]:checked+label{
	background-image:url(https://fs223.formasp.jp/k574/form20/images/594020.gif);
	background-repeat:no-repeat;
	background-position:bottom;
	padding: 10px 51px;
	}

table.xf_block td.xf_input h3{
    margin-bottom: 18px;
    font-size: 20px;
    letter-spacing: 2px;
    font-weight: bold;
    color: #308a86;
    background: #dce7e5;
    padding: 5px 0 5px 15px;
}
table.xf_block td.xf_input h3 p{
	font-size: 14px;
	letter-spacing: 0.5px;
	font-weight: normal;
	color: #333;
}

.xf_table_title{
	width: 100%;
}

.xf_table_title h2 p{
	font-size:13px;

	}

table.xf_block:nth-of-type(2){
    background-color: #f5f7f6;
	border-radius:15px;
}


table.xf_block:nth-of-type(2) .front{
	color:#1c3d6f;
	margin: 11px 0 5px 0;
	background-color: #dbdfd4;
    padding: 5px;
	}
table.xf_block:nth-of-type(2) .front2{
	font-size: 15px;
	font-weight:normal;
color: #2c4e35;
    letter-spacing: 0;
    background: #ede8cc;
	padding: 5px 10px;
}
.sem-body-3cource{
	border:1px dotted #555;
	padding:1em;
	box-sizing:border-box;
	width:100%;}

#mailBox table.xf_block0{
	margin:0 auto;
	}
#mailBox table.xf_block1{
	margin:0 auto 50px auto;
	}


#mailBox table.xf_block0 th.xf_field,
#mailBox table.xf_block1 th.xf_field,
#mailBox table.xf_block2 th.xf_field{
	opacity:1;
	display:block;
	background-color:#f1f1f1;
	text-align:center;
	border-bottom:1px dotted #999;
	}


#mailBox table.xf_block0 td,
#mailBox table.xf_block1 td,
#mailBox table.xf_block2 td{
	text-align:center;
	border-bottom:1px dotted #999;
	margin-bottom:0;
	display:block;
	}




@media screen and (min-width: 769px) {


div.attendant{
	width: 500px;
    font-size: 37px;
    margin: 0 auto;
    text-align: center;
	}
	
div.attendant input[type=radio] {
	display: none;
	}


div.short{
	width:30%;}
div.middle{
	width:60% ;}
.spDisplay{
	display:none;}
.pcNone{
	display:none;
	}

.obi-image{
	width:100%;
	text-align:right;}
.obi-image img{
	width:100%;
	height:auto;
}
#mailBox .campaign-schedule{
	width:500px;
	}

/* main */
#mailBox {
	width: 100%;
	box-sizing:border-box;
	margin: 20px auto 60px auto;

}
table.xf_block{
	width:100%;
	margin:0 auto;
	border:none;
	color:#333;
	}

table.xf_block0 td.xf_input,
table.xf_block1 td.xf_input{
	margin-bottom:0px;
	}



#mailBox table.xf_block0,
#mailBox table.xf_block1,
#mailBox table.xf_block2{
	width:850px;
	box-sizing:border-box;
	margin:0 auto 50px auto;
	border:none;
	color:#333;
	}
#mailBox table.xf_block0 tbody,
#mailBox table.xf_block1 tbody,
#mailBox table.xf_block2 tbody{
	display:block;
	}

#mailBox table.xf_block0 tr,

#mailBox table.xf_block1 tr,
#mailBox table.xf_block2 tr{
	display:flex;
	}

#mailBox table.xf_block0 th.xf_field,
#mailBox table.xf_block1 th.xf_field,
#mailBox table.xf_block2 th.xf_field{
	width:50%;
	font-weight:normal;
	padding:5px 0;
	}

#mailBox table.xf_block0 td.xf_input,
#mailBox table.xf_block1 td.xf_input,
#mailBox table.xf_block2 td.xf_input{
	width:50%;
	padding:5px 0;}



input[type=submit], input[type=button] {
    font-size: 23px;
    padding: 9px 0;
    width: 35%;
}


}


@media screen and (max-width: 768px) {
div.attendant{
	width: 500px;
    font-size: 37px;
    margin: 0 auto;
    text-align: center;
	}
	
div.attendant input[type=radio] {
	display: none;
	}
div.attendant input[type=radio]+label {
	padding: 10px 51px;
	}


div.attendant input[type=radio]:checked+label{
	background-image: url(https://fs223.formasp.jp/k574/form20/images/594020.gif);
	background-repeat:no-repeat;
	background-position:bottom;
	padding: 10px 51px;
	}


div.short{
	width:50%;}
div.middle{
	width:80% ;}
	.spDisplay{
	display:none;}
input, textarea {
    padding: 12px 18px;
}
	select{
    padding: 10px 5px;		
	}
.spNone{
	display:none;
	}

.obi-image{
	width:100%;}
.obi-image img{
	width:100%;
	height:auto;}	

#mailBox .campaign-schedule{
	width:500px;
	}


/* main */
#mailBox {
	width: 95%;
	box-sizing:border-box;
	margin: 20px auto 60px auto;
/*
	padding-bottom: 20px;
	background-color:#f7f6f5;
	border-radius:25px;
	border:1px solid #ccc;
	box-shadow:2px 2px 4px #efefef;
*/
}


table.xf_block{
	width:85%;
	margin:0 auto;
	border:none;
	color:#333;
	}

#mailBox table.xf_block td{
	padding:0;}

#mailBox table.xf_block0,
#mailBox table.xf_block1{
	width:100%;
	}
#mailBox table.xf_block0{
	margin:0 auto;}
#mailBox table.xf_block1{
	margin:0 auto 50px auto;}

input[type=submit], input[type=button] {
	font-size: 24px;
    padding: 13px 0;
    width: 75%;
}

.thanks-campaign{
	width:600px;
}




}
@media screen and (max-width: 600px) {

table.xf_block{
	width:98%;
	margin:0 auto;
	border:none;
	color:#333;
	}

div.attendant{
width: 100%;
    font-size: 35px;
    display: flex;
    justify-content: space-around;
	}
	
div.attendant input[type=radio] {
	display: none;
	}

div.attendant input[type=radio]+label {
	width:50%;
	padding: 10px 0px;
	}
div.attendant input[type=radio]:checked+label{
	background-image: url(https://fs223.formasp.jp/k574/form20/images/594020.gif);
    background-repeat: no-repeat;
    background-size: 80%;
    background-position: center;
    padding: 10px 0px;
	}




.licence{
	justify-content:space-around;}

.licence input[type=radio]+label {
	font-size:25px;
	padding:0 10px;
}



.spNone{
	display:none;
	}
.spDisplay{
	display:block;}


#mailBox .campaign-schedule{
	width:90%;
	}
#mailBox .campaign-schedule span{
	letter-spacing:0;
}


/* main */
#mailBox {
	width: 95%;
	box-sizing:border-box;
	margin: 20px auto 60px auto;
/*
	padding-bottom: 20px;
	background-color:#f7f6f5;
	border-radius:25px;
	border:1px solid #ccc;
	box-shadow:2px 2px 4px #efefef;
*/
}
input[type=submit], input[type=button] {
	font-size: 24px;
    padding: 4px 0;
    width: 80%;
	max-width: 400px;
}

	
.thanks-campaign{
	width:80%;
}

#mailBox h1 span{
	font-size:150%;
	font-weight:bold;
	color:#333;
	display:block;}
#mailBox h1{
	margin-top:40px;
	text-align:center;
	font-size:120%;}
	}



.address-flex{
	display: flex;
	align-items: flex-end;
	width: 100%;		
}
.address-flex .adbox-1{
	width: 50%;
}
.address-flex .adbox-1 .short{
	width: 90%;
	margin:0;
}

.short{
	width:30%;
	margin:0;
}

.middle{
	width:60%;
	margin:0;
}

.name-flex{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.name-flex .nbox{
	width: 49%;
}
.name-flex .nbox input[type=text]{
    width: 100%;
	
}
@media screen and (max-width: 550px) { 
.name-flex .nbox{	width: 100%;}
}


	#mailBox table.xf_block:nth-of-type(2){
		padding: 2em;
		box-sizing: border-box;
	}	
#mailBox table.xf_block:nth-of-type(2) td{
    border-bottom:none;
	padding: 0;
	margin: 0;
	box-sizing: border-box;
}

#mailBox table.xf_block:nth-of-type(2) tr:nth-of-type(4) .flexContainer,
#mailBox table.xf_block:nth-of-type(2) tr:nth-of-type(6) .flexContainer{
	background-color: #eeefef;
	margin:0 0 2.5em 0;
	border-top:1px dashed #ccc;
}
.flexContainer{
	display: flex;
    flex-wrap: wrap;
    width: 100%;
	}
.flexContainer h4{
	width: 17%;
    text-align: center;
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;	
}
.flexContainer .semiList{
	width: 83%;
	border-left: 1px solid #ccc;
	border-right: 1px solid #ccc;
	box-sizing: border-box;
}
.flexContainer .semiList .flexBox{
	display: flex;
    flex-wrap: wrap;
    padding: 10px 0 5px 0;
    border-bottom: 1px dotted #ccc;	
	}
	.flexContainer .semiList .flexBox br{ display: none;}	
.flexContainer .semiList .flexBox:last-of-type{
	border-bottom: 0;
}
.flexContainer .semiList .flexBox > div:first-of-type{
	width: 15%;
    text-align: center;
    font-weight: bold;
    letter-spacing: 0.2em;	
}
.flexContainer .semiList .flexBox > div:nth-of-type(2){
	display: flex;
	flex-wrap:wrap;
	width: 85%;
}
.flexContainer .semiList .flexBox > div:nth-of-type(2) .listBox{
	width: 85%;
}

	@media screen and (max-width: 850px) {
		.flexContainer h4 { width: 100%; padding: 0.7em 0; background-color: #a2a0a0; color: #fff;}
		#mailBox table.xf_block:nth-of-type(2){ padding: 0.8em;}		
		.flexContainer .semiList .flexBox > div:nth-of-type(2) .listBox{ width:90%; box-sizing: border-box;}	
		.flexContainer .semiList {width: 100%;}
		.flexContainer .semiList .flexBox > div:first-of-type {align-items: flex-start;}
		.flexContainer .semiList .flexBox {padding: 0; }
				.flexContainer .semiList .flexBox > div:first-of-type{width: 30%; display: flex; align-items: center; justify-content: center ;}
		.flexContainer .semiList .flexBox > div:nth-of-type(2){width: 70%; padding: 5px 0;}
	}	
	@media screen and (max-width: 600px) {
		.flexContainer h4{ font-size: 12px;}
		#mailBox table.xf_block:nth-of-type(2){ padding: 0.5em;}
		.flexContainer .semiList .flexBox > div:first-of-type{width: 100%; font-size: 13px; padding: 5px 0 0 0;}
		.flexContainer .semiList .flexBox > div:nth-of-type(2){width: 100%;}		
	}