@charset "utf-8";



input[type="file"] {
    display: none;
}
.form_img_upload {
    display: block;
    margin: 10px 0 0!important;
    border-radius: 10px;
	max-width: 100%;
}
.form_img_upload_btn {
    width: 150px;
    padding: 6px 14px!important;
    border-radius: 40px;
    text-decoration: none;
    font-size: 13px;
    font-weight: bold;
    text-align: center;
    color: white;
    background: #09bbfe;
    margin: 0;
    border: none;
    transition: background 0.5s;
    cursor: pointer;
    display: flex;
    align-items: center;
}

.form_img_upload_btn:hover {
	cursor: pointer;
    background: #00bfdb;
}

.form_img_upload_btn:before {
	font-family: "Font Awesome 5 Free";
	  content: '\f302';
	  font-size: 19px;
	  font-weight: 400;	
	margin: -3px 5px 0 0;
}
.form_complete_col {
    width: 960px;
    margin: 50px auto;
    padding: 160px 80px;
    background: #ffffff;
    font-size: 95%;
    text-align: center;
    line-height: 1.8;
}

.form_complete_col strong {
    font-size: 130%;
    margin: 0 0 40px 0;
    display: block;
    color: rgba(48,61,80,.9);
}

dl {
	margin: 0 auto;
	overflow: hidden;
	display: flex;
	flex-wrap: wrap;
	align-items: baseline;
	margin-top: 10px;
/*	gap: 20px;
	padding: 20px;
	border: 5px solid #EFEFEF;
*/
}

dl dt {
/*	width: calc(30% - 20px);*/
	min-height: 70px;
	height: 100%;
	overflow: hidden;
	margin: 0px 0px 0px;
	font-weight: normal;
	display: flex;
	justify-content: center;
	align-items: center;
}

dl dd {
	width: 100%;
	padding: 0;
	margin: 0;
	min-height: 70px;
	align-items: center;
	flex-wrap: wrap;
}
dl dd.flexform {
	display: flex;
	gap: 20px;
	align-items: center;
}

dl dt:first-child,
dl dt:first-child + dd {
	border: none;
}

dl dt span {
	display: block;
	font-size: 85%;
	color: #3377ff;
}

input[type="text"],
input[type="date"],
input[type="email"],
input[type="tel"],
input[type="number"],
input[type="password"]{
	max-width: 90%;
	padding: 10px 2%;
	border: 1px solid #e7e7e7;
	border-radius: 7px;
	background: #FFFFFF;
	-webkit-appearance: none;
	font-size: 100%;
	font-family: inherit;
}

input[type="text"]:focus,
input[type="email"]:focus,
input[type="tel"]:focus,
textarea:focus {
	box-shadow: 0px 0px 5px #55ccff;
	border: 1px solid #55ccff;
	background: #ffffff;
}

ul li input[type="radio"],
ul li input[type="checkbox"] {
	margin-right: 10px;
	margin-top: 10px;
}

ul li:first-child input[type="radio"],
ul li:first-child input[type="checkbox"] {
	margin-top: 0px;
}

select {
	font-size: 100%;
    font-family: inherit;
    margin-top: 10px;
    padding: 10px;
    border: 1px solid #cccccc;
    border-radius: 3px;
}

textarea {
	display: block;
	width: 100%;
	max-width: 100%;
	height: 150px;
	padding: 7px 2%;
	resize: vertical;
	border: 1px solid #cccccc;
	border-radius: 3px;
	background: #fafafa;
	-webkit-appearance: none;
	font-size: 100%;
	font-family: inherit;
}


ul {
	list-style-type: none;
}

ul li label:hover {
	cursor: pointer;
}


input#company {
	width: 60%;
}

input#name_1,
input#name_2,
input#read_1,
input#read_2,
input#postal,
input#phone,
input#schedule {
	width: 30%;
}

input#mail_address,
input#mail_address_confirm {
	width: 80%;
}

input#postal + a {
	display: inline-block;
	padding: 5px 15px;
	border: 1px solid #46b8da;
	border-radius: 3px;
	background: #5bc0de;
	font-size: 100%;
	color: #ffffff;
	text-decoration: none;
}

input#postal + a:hover {
	cursor: pointer;
	background: #31b0d5;
	border: 1px solid #269abc;
}

input#address {
	width: 90%;
}


p#form_submit {
	width: 90%;
	margin: 0 auto;
	padding: 15px 0;
	border-top: 1px solid #cccccc;
}

input[type="button"] {
	min-width: 280px;
	padding: 17px 20px;
	border-radius: 40px;
	text-decoration: none;
	font-size: 17px;
	font-weight: bold;
	text-align: center;
	color: white;
	background: #09bbfe;
	margin: 20px auto 0!important;
	border: none;
	transition: background 0.5s;
}

input[type="button"]:hover {
	cursor: pointer;
	opacity: 0.8;

}

input#form_submit_button {
	display: block;
    margin: 0 auto;
}	

.form_required:after {
    padding: 0;
    font-size: 14px;
    font-weight: bold;
    color: #ff5b81;
 	word-break: keep-all;
 	content: '✱';
 	width: 20%;
 	border-radius: 10px;
 	height: fit-content;
 	vertical-align: super;		
}

.form_error {
    font-size: 12px;
    font-weight: bold;
    color: #ff5b81;
    display: block;
    margin: 5px 0 0 0!important;
}

.form_confirm_txt {
    padding: 7px!important;
    font-size: 120%;
    margin: 10px!important;
    display: block;
    font-weight: bold;
    color: rgba(48,61,80,.9);	
}

a.form_back_btn {
    display: block;
    width: 280px;
    padding: 10px 20px 8px!important;
    border-radius: 40px;
    text-decoration: none;
    font-weight: bold;
    font-size: 15px;
    text-align: center;
    color: #6c6c6c;
    background: #dbdbdb;
    margin: 20px auto !important;
    border: none;
    transition: background 0.5s;
}

a.form_back_btn:hover {
	background: #999999;	
}

a.choice_btn {
    display: block;
    width: 260px;
    padding: 10px 20px 10px!important;
    border-radius: 40px;
    text-decoration: none;
    font-weight: bold;
    font-size: 15px;
    text-align: center;
    color: #FFFFFF;
    background: #09bbfe;
    margin: 20px auto !important;
    border: none;
    transition: background 0.5s;
}

a.choice_btn:hover {
	background: #00bfdb;	
}

.short_space {
    width: 18%!important;
}


input[type="radio"],input[type="checkbox"] {
    width: 20px;
    height: 20px;
    border-radius: 100px;
    position: relative;
    vertical-align: sub;
    margin-right: 5px;
  }
 
.recommend_list {
    display: flex;
    align-items: center;
    gap: 20px;
    flex-wrap: wrap;
    margin: 0 0 30px 0!important;
}
.recommend_list input{
    opacity: 0;
    position: absolute;
    left: 0;
}
.recommend_list label{
    padding: 10px 20px!important;
    border-radius: 40px;
    background: #eee;
    display: inline-block;
    cursor: pointer;
    transition: .2s;
}
.recommend_list label:hover,
.recommend_list input:checked + label{
    background: #00deff;
    color: #FFF;
}

img.form_img_upload_confirm {
	max-width: 256px;
	height: auto;
	}
.code_col_adjust {
    padding: 50px 0 0!important;
    text-align: center;
}

.code_col_adjust ul {
	display: flex;
	justify-content: center;
    gap: 15px;		
}

.code_col_adjust ul li input {
	width: 60px;
	text-align: center;
}

.code_col_adjust strong {
	display: block;
	margin: 20px 0 0!important;
    color: rgba(48,61,80,.9);	
}

.form_spacing_adjust {
    padding: 120px 20px!important;	
}
/* -- responsive ----------------------------------------------------------------------------------------------------------------- */

/* 1000pixel start */
@media screen and ( max-width: 1000px ) {
dl dt:first-child {
	line-height: 3.5em;
	font-weight: bold;
	border-bottom: 1px solid #DDDDDD;
}

{
    width: 100%;
    font-size: 95%;
}
dl {
	overflow: visible;
}

dl dt {
	width: 100%;
	float: none;
	text-align: left;
	padding: 0px 0 0px;
	justify-content: flex-start;
	min-height: auto;
	line-height: 3.5em;
	margin: 0 0 10px 0;
	font-weight: bold;
	border-bottom: 1px solid #DDDDDD;
}

dl dd {
	width: 100%;
	border-top: none;
	min-height: auto;
}

dl dt span {
	font-weight: normal;
}

input[type="button"] {
    min-width: 60%;
    padding: 14px 10px;
    border-radius: 40px;
    text-decoration: none;
    font-size: 110%;
    font-weight: bold;
    text-align: center;
    color: white;
    margin: 20px auto 0!important;
    border: none;
    transition: background 0.5s;
    width: 60%;
}
	
.form_description {
	margin:  0 0 20px 0!important;	
	}
	
dl {
    width: 100%;
    flex-wrap: wrap;
    gap: 10px;
}
	
.agreement_box {
    width: 100%;
    height: 240px;
}
	
img.form_img_upload_confirm {
margin: 10px auto!important;
    text-align: center;
    display: block;
	}	
.form_confirm_txt {
    padding: 7px 0!important;
    margin: 10px 0!important;
}

input[type="text"],
input[type="email"],
input[type="password"],	
input[type="tel"] {
	margin-top: 0px;
    width: 100%;
	max-width: 100%;
}

input#postal + a {
	padding: 6px 15px 5px;
}

input#form_submit_button {
	margin-left: 0;
}

select {
	font-size: 16px;
	margin-top: 0;
}

input#phone,
input#schedule {
	width: 50%;
}
	
.form_complete_col {
	width: 100%;	
	padding: 90px 20px;
	}	
	textarea {
	width: 100%;
	max-width: 100%;		
	}		

}
/* 1000pixel end */

.mailmag_modalcol h2 {
	font-size: 124%;
    margin: 0;
    background: #FFFFFF;
    border-left: 5px solid #2ca2ff;
    padding: 11px 25px 8px 10px;
    color: #3c3c3c;
    display: flex;
    align-items: center;
    line-height: 1em;
    font-weight: normal;
}

.modaal-container {
	width: 50%!important;
	border-radius: 10px !important;
}

@media screen and ( max-width: 850px ) {
	.modaal-container {
		width: 100%!important;
	}

	.modaal-content-container {
		padding: 10px!important;
	}
 
	.mailmag_modalcol {
		margin-top: 10px!important;
	}
}