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


.type_radio01 .name{
	display:inline-block;
}
.type_radio01 label{
	display:inline-block;
	font-size:14px;
	line-height:20px;
	position:relative;
	margin-right:20px;
	cursor:pointer;
	min-width:180px;
	padding:14px 20px 14px 40px ;
/*	border:1px solid #004DA0;*/
	border-radius:3px;
	box-sizing:border-box;
}
.type_radio01 label:last-child{
	margin-right:0;
}

.type_radio01 .input{
	display:inline-block;
}
.type_radio01 input{
	opacity:0;
	width:0;
}
.type_radio01 span:not(.p)::before{
	content:"";
	width:18px;
	height:18px;
	border:1px solid #AFAFAF;
	border-radius:50%;
	position:absolute;
	top:calc(50% - 10px);
	left:12px;
}
.type_radio01 span:not(.p)::after{
	content:"";
	width:0px;
	height:0px;
	background:#004DA0;
	border-radius:50%;
	position:absolute;
	top:50%;
	left:22px;
	transform:translate(-50%, -50%);
}
.type_radio01 label .p,
.type_radio01 label p{
	display:inline;
}
.type_radio01 label .p::before,
.type_radio01 label p::before{
	content:"";
	position:absolute;
	top:0;left:0;
	width:100%;
	height:100%;
	border:1px solid #E6E6E6;
	border-radius:3px;
	box-sizing:border-box;
}
.type_radio01 input:checked + span::after{
	width:10px;
	height:10px;
}
.type_radio01 input:checked ~ .p,
.type_radio01 input:checked ~ p{
	color:#004DA0;
}
.type_radio01 input:checked ~ .p::before,
.type_radio01 input:checked ~ p::before{
	border:1px solid #004DA0;
}

@media(max-width:834px){
	.type_radio01 label{width:100%;margin: 0;}
	.type_radio01 label + label{margin-top:15px;}

}

/*--------------------------------------------------*/

.type_text01{
	display:flex;
	justify-content:space-between;
	border-radius:3px;
}
.type_text01 .t_name{
	font-size:14px;line-height:30px;
	width:160px;
	height:50px;
	display:flex;
}
.type_text01 .t_name span{
	width:100%;
	align-self:center;
}
.type_text01 .t_input{
	width:calc(100% - 170px);
}
.type_text01 .t_input input{
	width:100%;
	font-size:14px;
	line-height:28px;
	padding:10px;
	border:1px solid #E6E6E6;
	border-radius:3px;
	box-sizing:border-box;
}
.type_text01 .t_input .t_caption{
	width:100%;
	font-size:12px;
	line-height:20px;
	margin-top:20px;
}
.type_text01 .t_input .t_caption a{
	color:#004DA0;
	text-decoration: underline;
}

@media(max-width:834px){
	.type_text01{flex-wrap:wrap;}
	.type_text01 .t_name{height:auto;}
	.type_text01 .t_input{width:100%;;}

}

/*--------------------------------------------------*/

.type_text02 .t_wrap{
	display:flex;
	justify-content:space-between;
	border:1px solid #004DA0;
	border-radius:3px;
	padding-right:10px;
}
.type_text02 .t_name{
	font-size:16px;line-height:22px;
	width:210px;
	height:75px;
	display:flex;
	background:#004DA0;
	color:#FFF;
}
.type_text02 .t_name span{
	padding:0 10px;
	width:100%;
	align-self:center;
	box-sizing:border-box;
}
.type_text02 .t_input{
	width:calc(100% - 220px);
	align-self:center;
}
.type_text02 .t_input input{
	width:100%;
	font-size:16px;
	line-height:28px;
	padding:10px;
	border:1px solid #E6E6E6;
	border-radius:3px;
	box-sizing:border-box;
}
.type_text02 .t_caption{
	width:100%;
	font-size:12px;
	line-height:20px;
	margin-top:20px;
}
.type_text02 .t_caption a{
	color:#004DA0;
	text-decoration: underline;
}

@media(max-width:834px){
	.type_text02 .t_wrap{flex-wrap:wrap;padding:0;}
	.type_text02 .t_name{font-size:14px;width:100%;height:50px;}
	.type_text02 .t_input{width:100%;padding:10px;box-sizing:border-box;}
	.type_text02 .t_input input{font-size:14px;}
}


/*--------------------------------------------------*/

.type_textbtn01{
	display:flex;
	justify-content:space-between;
	border-radius:3px;
}
.type_textbtn01 .t_name{
	font-size:14px;line-height:30px;
	width:160px;
	height:50px;
	display:flex;
}
.type_textbtn01 .t_name span{
	width:100%;
	align-self:center;
}
.type_textbtn01 .t_input{
	display:flex;
	flex-wrap:wrap;
	width:calc(100% - 170px);
}
.type_textbtn01 .t_input input{
	width:360px;
	font-size:14px;
	line-height:28px;
	padding:10px;
	border:1px solid #E6E6E6;
	border-radius:3px;
	align-self:center;
	box-sizing:border-box;
	margin-right:20px;
}
.type_textbtn01 .t_input button{
	text-align:center;
	width:100px;
	font-size:14px;
/*	line-height:28px;*/
	line-height:30px;
	padding:10px 0;
/*	border:1px solid #004DA0;*/
	border:none;
	background:#004DA0;
	color:#FFF;
	border-radius:3px;
	align-self:center;
	box-sizing:border-box;
}
.type_textbtn01 .t_input button:hover{
	background:rgba(0,77,160,0.8);
/*	border-color:rgba(0,77,160,0.8);*/
}

.type_textbtn01 .t_input .t_caption{
	width:100%;
	font-size:12px;
	line-height:20px;
	margin-top:20px;
}
.type_textbtn01 .t_input .t_caption a{
	color:#004DA0;
	text-decoration: underline;
}

@media(max-width:834px){
	.type_textbtn01{flex-wrap:wrap;}
	.type_textbtn01 .t_name{height:auto;}
	.type_textbtn01 .t_input{width:100%;;}
	.type_textbtn01 .t_input input{width:calc(100% - 110px);margin-right:10px;}
	.type_textbtn01 .t_input .t_caption{margin-top:10px;}

}
/*--------------------------------------------------*/

.type_select01{
	display:flex;
	justify-content:space-between;
	border-radius:3px;
}
.type_select01 .t_name{
	font-size:14px;line-height:30px;
	width:160px;
	height:50px;
	display:flex;
}
.type_select01 .t_name span{
	width:100%;
	align-self:center;
}
.type_select01 .t_input{
	width:calc(100% - 170px);
}
.type_select01 .t_input .t_select{
	position:relative;
	z-index:2;
}
.type_select01 .t_input .t_select::before{
	content:"▼";
	position:absolute;
	top:50%;
	right:25px;
	transform:translate(50% , -50%);
	z-index:-1;
	pointer-events:none;
}
.type_select01 .t_input .t_select::after{
	content:"";
	position:absolute;
	top:50%;
	right:0px;
	width:50px;
	height:50px;
	transform:translateY(-50%);
	background:#E6E6E6;
	border-radius:3px;
	z-index:-2;
	pointer-events:none;
}
@media all and (-ms-high-contrast: none) {
	.type_select01 .t_input .t_select::after {
	    display: none;
	}
}


.type_select01 .t_input .t_select select{
	width:100%;
	font-size:14px;
	line-height:28px;
	padding:10px 50px 10px 10px;
	border:1px solid #E6E6E6;
	border-radius:3px;
	box-sizing:border-box;
	background:none;
	-webkit-appearance: none;
    -moz-appearance: none;
    appearance: inherit;
}
.type_select01 .t_input .t_caption{
	width:100%;
	font-size:12px;
	line-height:20px;
	margin-top:20px;
}
.type_select01 .t_input .t_caption a{
	color:#004DA0;
	text-decoration: underline;
}

@media(max-width:834px){
	.type_select01 {flex-wrap:wrap;}
	.type_select01 .t_input{width:100%;}
}
/*--------------------------------------------------*/


.type_check01 label{
	display:block;
	font-size:14px;
	line-height:28px;
	position:relative;
	margin:30px auto 50px;
	cursor:pointer;
	width:635px;
	max-width:100%;
	box-sizing:border-box;
	border:1px solid #004DA0;
	border-radius:3px;
	padding:10px;
	background:#FFF;
	
}
.type_check01 input{
	width:35px;
	opacity:0;
}
.type_check01 span::before{
	content:"\f0c8";
	font-family:"Font Awesome 5 Free";
	font-size:20px;
	line-height:100%;
	color:#004DA0;
	position:absolute;
	top:calc(50% - 10px);
	left:15px;
}
.type_check01 span::after{
	content:"\f14a";
	font-weight:bold;
	font-family:"Font Awesome 5 Free";
	font-size:20px;
	line-height:100%;
	color:#004DA0;
	position:absolute;
	top:calc(50% - 10px);
	left:15px;
	opacity:0;
	pointer-events:none;
}
.type_check01 input:checked + span::after{
	opacity:1;
}

/*--------------------------------------------------*/


.type_radiotext01{
	display:flex;
	justify-content:space-between;
	border-radius:3px;
	position:relative;
	padding-left:20px;
}
.type_radiotext01 .t_name{
	font-size:14px;line-height:30px;
	width:200px;
	height:50px;
	display:flex;
}
.type_radiotext01 .t_name span{
	width:100%;
	align-self:center;
}
.type_radiotext01 .t_input{
	width:calc(100% - 240px);
}
.type_radiotext01 .t_input input{
	width:100%;
	font-size:14px;
	line-height:28px;
	padding:10px;
	border:1px solid #E6E6E6;
	border-radius:3px;
	box-sizing:border-box;
}
.type_radiotext01 .t_input .t_caption{
	width:100%;
	font-size:12px;
	line-height:20px;
	margin-top:20px;
}
.type_radiotext01 .t_input .t_caption a{
	color:#004DA0;
	text-decoration: underline;
}


.type_radiotext01 input[type="radio"]{
	width:240px;
	height:20px;
	border-radius:50%;
	position:absolute;
	top:calc(50% - 10px);
	left:0px;
	opacity:0;
}

.type_radiotext01 input[type="radio"] + span::before{
	content:"";
	width:18px;
	height:18px;
	border:1px solid #AFAFAF;
	border-radius:50%;
	position:absolute;
	top:calc(50% - 10px);
	left:2px;
	pointer-events:none;
}
.type_radiotext01 input[type="radio"] + span::after{
	content:"";
	width:0px;
	height:0px;
	background:#004DA0;
	border-radius:50%;
	position:absolute;
	top:50%;
	left:12px;
	transform:translate(-50%, -50%);
	pointer-events:none;
}

.type_radiotext01 input[type="radio"]:checked + span::after{
	width:10px;
	height:10px;
}
.type_radiotext01 input[type="radio"]:checked ~ .t_name{
	color:#004DA0;
}

@media(max-width:834px){
	.type_radiotext01{flex-wrap:wrap;justify-content:flex-start;padding:0;}
	.type_radiotext01 .t_name{height:auto;padding-left:40px;margin-bottom:5px;}
	.type_radiotext01 .t_input{width:100%;}
	.type_radiotext01 input[type="radio"]{top:5px;}
	.type_radiotext01 input[type="radio"] + span::before{top:5px;}
	.type_radiotext01 input[type="radio"] + span::after{top:15px;}

}

/*--------------------------------------------------*/


.m_modalArea {
  display: none;
  position: fixed;
  z-index: 1002;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

.m_modalBg {
  width: 100%;
  height: 100%;
  z-index: 1001;
  background-color: rgba(30,30,30,0.9);
}

.m_modalWrapper {
  position: absolute;
  top: 50%;
  left: 50%;
  transform:translate(-50%,-50%);
  width: 70%;
  max-width: 500px;
  padding: 40px;
  border:1px solid #F2F9ED;
  background-color: #FFF;
  box-sizing:border-box;
  border-radius:3px;
}

.m_modalContents{
	font-size:14px;
	font-weight:bold;
	margin-bottom:30px;
}

.m_buttons{
	display:flex;
	justify-content:center;
}
.m_buttons button{
	padding:10px;
	border:1px solid #004DA0;
	background:#004DA0;
	color:#FFF;
	font-size:16px;
	width:150px;
	cursor: pointer;
	border-radius:3px;
	margin: 0 10px;
	transition:0.5s;
}
.m_buttons button:hover{
	box-shadow: 0 0.3rem 1rem 0 rgb(0 0 0 / 40%)
}

.m_buttons button#modalaction{
	order:2;
}
.m_buttons button#modalcancel{
	order:1;
}

.m_buttons button#modalcancel{
	color:#000;
	background:#FFF;
	border-color:#E6E6E6;
}
.m_buttons button#modalcancel:hover{
	box-shadow: 0 0.3rem 1rem 0 rgb(0 0 0 / 40%)
}


@media(max-width:834px){
	.m_modalWrapper {
		width: 90%;
		padding: 20px;
	}

	.m_buttons button{
		padding:5px;
		font-size:14px;
		width:120px;
	}
}



/*------------------------------ */
/* ====== 画像のボーター消し ====== */
img {border: none;}
a img {margin: 0;padding: 0;border:none;}

/* ------------------------------
フォーム
------------------------------ */
input{ padding:2px 3px; }
select{ padding:2px 3px; }
p {line-break: strict;} /*禁則処理用*/

