@charset "UTF-8";














.radio-btns span {
  position: relative;
  padding-left: 30px;

  padding: 0;
}
/*
.radio-btns span.span-txt1 {
  position: relative;
  padding-left: 30px;
  padding-left: 10px;
  
  color: #ab0d23;
  font-weight: bold;
}
.radio-btns span.wpcf7-list-item-label {
  position: relative;
  top: -1px;
  vertical-align: middle;
  padding: 0 25px 0 33px;
  margin: 0 ;

}
.radio-btns span.wpcf7-list-item {
	padding: 8px 0;
	padding: 0;
	margin: 0 ;
	background: rgba(170,211,102,1.00);
}

*/


/*
.radio-btns.m01 span.wpcf7-list-item-label {
	width: 100%;
	padding: 0 25px 0 33px;
	background:rgba(210,157,0,1.00);
}
.radio-btns.m01 span.wpcf7-list-item {
	padding: 0 0 8px;
	padding: 8px 0 0;
}
.radio-btns.calc3 span.wpcf7-list-item {
	width: calc( 100% / 2 );
	font-size: 0.8rem;
}
@media print, screen and (min-width: 801px) {
.radio-btns.calc3 span.wpcf7-list-item {
	width: calc( 100% / 3 );
	font-size: 0.9rem;
}
}
.radio-btns.calc2 span.wpcf7-list-item {
	width: calc( 100% / 2 );
	font-size: 0.8rem;
}
@media print, screen and (min-width: 801px) {
.radio-btns.calc2 span.wpcf7-list-item {
	width: calc( 100% / 2 );
	font-size: 0.9rem;
}
}
*/



/***

ラジオボタン　flex

***/
/*
.wpcf7-validates-as-required{
	width: 100%;
	display: flex;
	
}
*/











/* ラジオボタン */
/*
.radio-btns input[type=checkbox] {
  display: none;
}

.radio-btns span input[type=checkbox] + span::before {
  position: absolute;
  content: '';
  display: block;
  width: 20px;
  height: 20px;
  border-radius: 50%;
  background: #fff;
  border: 4px solid #ddd;
  left: 0;
  top: 0;
}

.radio-btns span input[type=checkbox] + span::after {
  position: absolute;
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #2ca5df;
  left: 9px;
  top: 9px;
  opacity: 0;
  transition: .3s;
}

.radio-btns span input[type=checkbox]:checked + span::after {
 opacity: 1;
}

*/











.wpcf7-form-control{
/*	background:rgba(197,203,117,1.00);*/
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: center;
	align-content: center;
	align-self: center;
}
/**

ラジオボタン　レイアウト

***/
.wpcf7-list-item{
	width: 48%;
	width: calc( 48% - 35px );
	width: 100%;
	height: auto;
	font-size: 15px;
	text-align: left;
	line-height: 100.1%;
	color: #3e3e3e;
	vertical-align: middle; /* 縦方向で中央揃え */
	
	padding: 0;
/*	padding: 0 0 40px;*/
	margin: 0 0 25px 35px;
	
}
.wpcf7-list-item.contact_m00{
	margin: 0 0 0 35px;
}

.radio-btns .contact01 .wpcf7-list-item:nth-child(2n-1){
	width: 40%;
	width: calc( 40% - 35px );
	width: 100%;
}
.radio-btns .contact01 .wpcf7-list-item:nth-child(2n){
	width: 55%;
	width: calc( 55% - 35px );
	width: 100%;
}
@media print, screen and (max-width: 800px) {
.wpcf7-list-item,
.radio-btns .contact01 .wpcf7-list-item:nth-child(2n-1),
.radio-btns .contact01 .wpcf7-list-item:nth-child(2n){
	width: 100%;
}
}


.wpcf7-list-item-label{
	font-size: 15px;
	text-align: left;
	vertical-align: middle;
	color: #3e3e3e;
/*	color: rgba(130,56,228,1.00);*/
	
	
}
@media print, screen and (max-width: 800px) {
.wpcf7-list-item-label{
	font-size: 3vw;
}
}



input[type=radio] {
/*  margin-right: 8px;*/
}

/* ラジオボタン */
.radio-btns input[type=radio] {
/*  display: none;*/
}

/* ラジオボタンの基本スタイル */
.radio-btns input[type="radio"] {
  appearance: none; /* デフォルトのスタイルを無効化 */
	content: '';
  
  position: absolute;
  content: '';
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #ddd;
  left: 0;
  top: -32%;
	left: -35px;
	
	vertical-align: middle;
}

/*
.radio-btns span.g02 input[type="radio"] {
	top: 12%;
}
*/
@media print, screen and (min-width: 801px) {
/*
.radio-btns span.pc_g02-sp_g03 input[type="radio"] {
	top: 12%;
}
*/
}
@media print, screen and (max-width: 800px) {
.radio-btns span.g02 input[type="radio"] {
	top: 12%;
}
.radio-btns span.sp_g02 input[type="radio"] {
	top: 12%;
}
.radio-btns span.pc_g02-sp_g03 input[type="radio"] {
	top: 20%;
}
}






/* チェックされた場合のスタイル */
input[type="radio"]:checked::before {
	content: "";
	width: 10px;
	height: 10px;
	background-color: #0D7A2E;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
	opacity: 1;
  transition: .3s;

}
input.on[type=radio]:after {
  content: "";
	width: 10px;
	height: 10px;
	background-color: #0D7A2E;
	border-radius: 50%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	position: absolute;
	opacity: 1;
  transition: .3s;
}



/*
.radio-btns input[type=radio] + span::before {
  position: absolute;
  content: '';
  display: block;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  background: #fff;
  border: 1px solid #ddd;
  left: 0;
  top: 0;
	left: -35px;
	
	vertical-align: middle;  縦方向で中央揃え 
}
*/
/*
.radio-btns input[type=radio] + span::after {
  position: absolute;
  content: '';
  display: block;
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background: #2ca5df;
  left: 10px;
  top: 10px;
  opacity: 0;
  transition: .3s;
		left: -25px;
}

.radio-btns input[type=radio]:checked + span::after {
 opacity: 1;
}
*/


/*
@media print, screen and (min-width: 801px) {
.contact_txt1{
	width: 100%;
	height: auto;
	background: rgba(229,149,221,1.00);
}

.wpcf7-form-control-wrap{
	width: 100%;
	height: auto;
	background:rgba(126,152,231,1.00);
}
.wpcf7-form-control-wrap{
	width: 100%;
	height: auto;
	background:rgba(138,200,122,1.00);
}
*/



/***

最終チェックボタン

***/
.final-check01bg{
	clear: both;
	width: 100%;
	height: 40px;
	position: relative;
	
	
/*	background: rgba(233,129,246,1.00);*/
}

/* チェックされた場合のスタイル */
/*
.final-check01{
	position: absolute;
	top: 50%;
	left: -20px;
	transform: translate(-50%, -50%);
	opacity: 1;
  	transition: .3s;
}
*/

.final-check01{
	clear: both;
	width: auto;
	height: 40px;
	margin: 0 auto;
	position: relative;
/*	background: rgba(104,212,223,1.00);*/
}
.final-check01 label{
	clear: both;
	width: auto;
	height: 40px;
	margin: 0;
	position: relative;
/*	background:rgba(251,255,24,1.00);*/
	
	display: flex;
	justify-content: center;
	flex-wrap: nowrap;
}
.final-check01 input[type="checkbox"] {
	position: absolute;
	position: relative;
/*
	top: 25%;
	left: -20px;
*/
/*	transform: translate(-50%, -50%);*/
	opacity: 1;
  	transition: .3s;
	
	width: 14px;
	height: 14px;
	left: -30px;
	top: -1px;
}
@media print, screen and (min-width: 801px) {
.final-check01 input[type="checkbox"] {
	top: 1px;
}
}


.final-check01 span.span-txt1 {
	clear: both;
	width: auto;
	margin: 0;
	position: relative;
	left: -18px;
	
	font-size: 14px;
	text-align: center;
	line-height: 100.1%;
	color: #ab0d23;
	position: relative;
	letter-spacing: 0.02em;
	
	
/*	background: rgba(103,190,117,1.00);*/
}





/*同意ボタンオフ*/
input[type="submit"]:disabled {
	opacity: 0.3;
}
/*同意ボタンオフ*/



.table_box1 input, .table_box1 textarea {
  font-size: 14px; /* 希望するフォントサイズを指定 */
}
@media print, screen and (max-width: 800px) {
.table_box1 input, .table_box1 textarea {
  font-size: 3vw;
}
}


