/*
Description: Page css.
*/

.page-title-back{
	width:100%;
	height:auto;
	display:block;
	margin-bottom:20px;
}
.page-title-box{
	width:100%;
	height:30%;
	display:block;
	overflow:hidden;
}
h2.page-title{
	color:#fff;
	text-shadow: -1px -2px 3px #808080;
	font-size: clamp(3.9rem, calc(3.7rem + 0.625vw), 4.4rem);
	padding:10% 0 10% 0;
	text-align:center;
}
h1.title-blue {
	padding: 0.2em 0.5em;/*文字の上下 左右の余白*/
	color: #494949;/*文字色*/
	background: #f4f4f4;/*背景色*/
	border-left: solid 5px #172a88;/*左線*/
	border-bottom: solid 3px #d7d7d7;/*下線*/
	border-radius:5px;
	font-size: clamp(2.2rem, calc(2rem + 0.625vw), 2.6rem);
	font-weight:normal;
	margin-bottom:20px;
}
.title-green-page {
	padding: 0.2em 0.5em;/*文字の上下 左右の余白*/
	background: #f4f4f4;/*背景色*/
	border-left: solid 5px #99CC33;/*左線*/
	border-bottom: solid 3px #d7d7d7;/*下線*/
	border-radius:5px;
	font-size: clamp(2.2rem, calc(2rem + 0.625vw), 2.6rem);
	margin-bottom:20px;
}
.title-orange {
	padding: 0.2em 0.5em;/*文字の上下 左右の余白*/
	border-left: solid 5px #ff9900;/*左線*/
	font-weight:bold;
	margin-bottom:20px;
}
h2.title-green {
	border-bottom: solid 3px #aaa;
	position: relative;
	font-weight:bold;
	margin-bottom:20px;
}

h2.title-green:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #8fc31f;
	bottom: -3px;
	width: 20%;
}

/*テーブル*/

table.table01 {
	font-size:12px;
	color: #757575;
	line-height: 2;
	margin: 0 0 24px;
	width: 100%;
	border-radius:10px;
}
table.table01 th {
	border: none;
	padding: 1%;
	height:200%;
	color:#333;
	vertical-align:middle;
	margin:0 0 -1px 0;
	background:#ddd;
	text-align:center;
	box-sizing:border-box;
	line-height:110%;
}
table.table01 th.w30{width:30%;}
table.table01 th.w20{width:20%;}
table.table01 th.w50{width:50%;}
table.table01 td {
	border: none;
	padding: 2%;
	height:200%;
	color:#333;
	background:#fff;
	vertical-align:middle;
	margin:-1px 0 -1px 0;
	box-sizing:border-box;
	line-height:130%;
}
table.table02 {
	border-left: 1px solid #999;
	border-bottom: 1px solid #999;
	font-size:12px;
	color: #757575;
	line-height: 2;
	margin: 0 0 24px;
	width: 100%;
	border-radius:10px;
	border-collapse: collapse
}
table.table02 th {
	border: 1px solid #999;
	padding: 1%;
	height:200%;
	color:#333;
	vertical-align:middle;
	margin:0;
	background:#ddd;
	text-align:center;
	box-sizing:border-box;
	line-height:110%;
}
table.table02 td.w40{width:40%;}
table.table02 th.w30{width:30%;}
table.table02 th.w20{width:20%;}
table.table02 th.w50{width:50%;}
table.table02 td {
	border-top: 1px solid #999;
	border-right: 1px solid #999;
	padding: 2%;
	margin:0;
	height:200%;
	color:#333;
	background:#fff;
	vertical-align:middle;
	
	box-sizing:border-box;
	line-height:130%;
}

/*MW WP form*/
table.table03 {
	border-bottom:0px;
	color: #757575;
	line-height: 2;
	margin: 0;
	width: 100%;
	border-collapse: collapse;
    border-spacing: 0;
}
table.table03 th {
	width:35%;
	border-left: 1px solid #999;
	border-top: 1px solid #999;
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	padding: 5% 1%;
	height:200%;
	color:#333;
	vertical-align:middle;
	margin:-1px 0 -1px 0;
	background:#e7f0f8;
	text-align:left;
	box-sizing:border-box;
}
.mw_wp_form table.table03 th {
	width:35%;
	border-left: 1px solid #999;
	border-top: 1px solid #999;
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	padding: 10px 1%;
	height:200%;
	line-height:110%;
	color:#333;
	vertical-align:middle;
	margin:-1px 0 -1px 0;
	background:#e7f0f8;
	text-align:left;
	box-sizing:border-box;
}
table.table03 th.w30{width:30%;}
table.table03 th.w20{width:20%;}
table.table03 th.w20p{width:20%;text-align:center;font-size:20px;}
table.table03 th.w50{width:50%;}
table.table03 td {
	width:65%;
	border-left: 1px solid #999;
	border-top: 1px solid #999;
	border-right: 1px solid #999;
	border-bottom: 1px solid #999;
	padding: 1%;
	height:200%;
	color:#333;
	vertical-align:middle;
	margin:-1px 0 -1px 0;
	box-sizing:border-box;
}
table.table03 td.tdtitle{
	text-align:center;
	background: #ffffff;
	background: -moz-linear-gradient(-45deg, #efefef 0%, #eee 31%, #ccc 68%, #ddd 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(-45deg, #efefef 0%,#eee 31%,#ccc 68%,#ddd 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(135deg, #efefef 0%,#eee 31%,#ccc 68%,#ddd 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	position:relative;
}
table.table03 th.allbar{
	text-align:center;
	background:#99CCCC;
	padding-top:10px;
	padding-bottom:10px;
}
.mw_wp_form_preview table.table03 th.allbar{display:none;}
.mw_wp_form_preview table.table03 th{
	background:#fff;
}
span.px_10{
	font-size:10px;
	padding:0;
	line-height:12px;
}
.mw_wp_form_preview span.px_10{
	display:none;
}
table.table03 td.okdesu span.mwform-checkbox-field-text{
	font-size:18px;
}
table.table03 a:link,
table.table03 a:visited{
	color:#0099ff;
}
table.table03 a:hover,
table.table03 a:visited:hover{
	color:#ccc;
	text-decoration: none; 
}

/*線なし*/
table.table04 {
	border-bottom:0px;
	line-height: 2;
	margin: 0;
	width: 100%;
	border-collapse: collapse;
    border-spacing: 0;
}
table.table04 th {
	width:70%;
	padding: 5% 1%;
	vertical-align:middle;
	margin:0;
	text-align:left;
	font-weight:normal;
	line-height:120%;
}
th.w15{width:15%;}
th.w30{width:30%;}
th.w20{width:20%;}
th.w50{width:50%;}
table.table04 td {
	width:30%;
	border: none;
	padding: 1%;
	vertical-align:middle;
	margin:0;
}
table.table04 a:link,
table.table04 a:visited{
	color:#0099ff;
}
table.table04 a:hover,
table.table04 a:visited:hover{
	color:#ccc;
	text-decoration: none; 
}

.name,
.furigana,
.tatemono,
.heyabangou,
.mail,
.shitsumon,
.mwform_datepicker01,
.hasDatepicker{
	width:90%;
}
.tel,.form2{
	width:20%;
}
.mwform_datepicker01{
	width:90%!important;
	max-width:500px;
}
.sentaushi{
	width:90%!important;
	max-width:500px;
}
.form2{
	width:15%;
}
.hissu{
	background:#ff0000;
	color:#fff;
	padding:2px 5px;
	text-align:center;
	font-size:10px;
	vertical-align:middle;
	border-radius:3px;
}
table.table03 tr th img{
	width:30%;
	margin:0 auto;
}
label[for='tokuten_1-1'] span,
label[for='tokuten_2-1'] span,
label[for='tokuten_3-1'] span{
	font-size:20px;
	font-weight:bold;
	line-height:20px;
}
.mw_wp_form_preview .preview{
	display:none!important;
}


button, input {
    line-height: normal;
}
input[type=submit].send{
	width:100%;
	font-size:20px;
	font-weight:bold;
}
button, input, select, textarea {
    border: 1px solid #ccc;
    border-radius: 3px;
    font-family: inherit;
    padding: 6px;
}
.shitsumon,
.kininaru,
.igai{
	width:100%!important;
}
.mw_wp_form_preview .hissu{display:none;}
.redlinebox{
	width:100%;
	padding:20px;
	line-height:200%;
	border:4px solid #dd0000;
	margin-bottom:40px;
	color:#163273;
}
.respofont02 {
    font-size: 2rem;
    line-height: 1.3;
}
.middle{
	vertical-align:middle;
}
table th.light-blue{
	background:#b0c4de;
}
table th.gray{
	background:#555;
	color:#FFF;
}
table td.aligntop{
	vertical-align:top;
}

/*リスト*/
.count_3{
	counter-reset: chapter;
}
.count_3 ul{
	list-style:none;
	padding: 0;
}
.count_3 li:before {
	content: "POINT "counter(chapter) ;
	counter-increment: chapter;
	width: 50px;
	height: 50px;
	margin: 0 5px 0 0;
	padding:5px 10px;
	border-radius: 20px;
	background: #30b0d8;
	color: #fff;
	text-align: center;
	z-index: 1;
}
.count_3 li {
	padding: 10px;
	list-style:none;
	font-weight:bold;
}

.kome {
	font-size: 0.8em;
	vertical-align: top;
}
.margin0auto{
	margin:0 auto;
}
.nifty-au-jyouken{
	width:100%;
	height:auto;
	display:flex;
	position:relative;
}
.maru-plus{
	position:absolute;
	width:40px;
	height:40px;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	border-radius:50%;
	background:#172a88;
	z-index:5;
	margin: auto;
}
.maru-plus:before {
	position:absolute;
	font-family: "icomoon";
	content: "\ea0a";
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	color:#fff;
	z-index:6;
	margin: auto;
	padding:19.5%;
	font-size:25px;
}
.page-yellow-box{
	width:calc(100% / 2 - 20px);
	margin:10px;
	border-radius:7px;
	height:auto;
	display:flex;
	flex-direction:column;
	border:1px solid #fdcf00;
	position:relative;
}
.page-orange-box{
	width:calc(100% / 2 - 20px);
	margin:10px;
	border-radius:7px;
	height:auto;
	display:flex;
	flex-direction:column;
	border:1px solid #f39800;
	position:relative;
}
.page-yellow-box-title{
	width:100%;
	border-radius: 6px 6px 0 0;
	background:#fdcf00;
	padding:5px;
	color:#fff;
	font-size:12px;
	text-align:center;
}
.page-orange-box-title{
	width:100%;
	border-radius: 6px 6px 0 0;
	background:#f39800;
	padding:5px;
	color:#fff;
	font-size:12px;
	text-align:center;
}
.redbox{
	background:#ee0000;
	padding:2px 5px;
	color:#fff;
	font-weight:bold;
	border-radius:5px;
}
.bluebox{
	background:#036eb8;
	padding:2px 5px;
	color:#fff;
	font-weight:bold;
	border-radius:5px;
}
.greenbox{
	background:#00913a;
	padding:2px 5px;
	color:#fff;
	font-weight:bold;
	border-radius:5px;
}
.minwidth200{
	display:inline-table;
	text-align:center;
	min-width:200px;
}
.dashed-bottom-box{
	border-bottom:1px dashed #ccc;
	padding:10px 0 20px 0;
	margin-bottom:20px;
}
.dashed-bottom-box:last-child{
	border-bottom:none;
}

/*グレーボタン*/
.graybutton {
	display: flex;
	align-items: center;
	justify-content: center;
	line-height: 1;
	text-decoration: none;
	color: #0099ff;
	font-size: 18px;
	border-radius: 3px;
	width: 200px;
	height: 40px;
	border: 1px solid #bbbbbb;
	transition: 0.3s;
	background-image: ;
}
.gray-button:hover {
	background-image: linear-gradient(180deg, rgba(209, 209, 209, 1), rgba(255, 255, 255, 1));
}
/* フロー */

.flow {
	margin: 0 auto 50px;
}
.flow .flowbox {
	margin: 0 auto 33px;
	width: 100%;
	padding:0;
	border: 3px solid #FFC300;
	-webkit-border-radius: 5px;
	border-radius: 5px;
	position: relative;
	line-height: 1.4; /* テキストの指定 */
}
.flow .flowbox:after {
	border-top: 25px solid #FFC300;
	border-left: 70px solid transparent;
	border-right: 70px solid transparent;
	content: "";
	position: absolute;
	bottom: -28px; /* 三角形の高さ＋ボックスのボーダーをマイナスに */
	left: 50%;/* 中央寄せに使用 */
	margin-left: -70px; /* 中央寄せに使用 */
}
.flow .flowbox:last-child:after {
	border: none; /* 最後のボックスだけ三角形を表示しない */
}
.flowleft{
	display:inline-block;
	width:20%;
	height:100%;
	background:#FFC300;
	padding:10px;
	vertical-align: top;
	text-align:center;
	font-weight:bold;
	border-radius:0 0 10px 0;
	color:#fff;
}
.flowright{
	display:inline-block;
	width:75%;
	padding:10px;
	vertical-align: middle;
}

/*注事項用*/
.graybox{background:#f0f3f7;display:block;overflow:hidden;padding:10px;border-radius:3px;margin-bottom:20px;}
.grad02{
	background: #006699;
	background: -moz-linear-gradient(-45deg, #006699 0%, #666699 31%, #666699 68%, #006699 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(-45deg, #006699 0%,#666699 31%,#666699 68%,#006699 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(135deg, #006699 0%,#666699 31%,#666699 68%,#006699 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	position:relative;
	padding:2px 10px;
}
.colorwhite{color:#FFFFFF;}
.colorgray{color:#333;}
.c {
    text-align: center;
}
.overlay { /* グレーの背景 */
  position: fixed;
  background: rgba(0, 0, 0, 0.2);
  transition: all 0.5s 0s ease;
  visibility: hidden;
  opacity: 0;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
}
#pop-up,#pop-up2 {
  display: none;
}
#pop-up:checked + .overlay,#pop-up2:checked + .overlay {
  visibility: visible;
  opacity: 1;
  z-index: 100000;
  background-color: #000000D0;
  width: 100%;
}
.popWindow, .popWindow2 {
  border-radius: 5px;
  overflow: auto; /* スクロールバー用 */
  max-height: 95%; /* すき間 */
  min-width: fit-content; /* 横幅が広い時に白の部分が大きくならないため */
  max-width: 95%; /* すき間 */
  position: fixed;
  top: 50%; /* 中央に */
  left: 50%; /* 中央に */
  transform: translate(-50%, -50%); /* 中央に */
  z-index: 100010;
  font-size: 13px;
  line-height: 18px;
  margin: 10px auto;
  padding: 4px 10px;
  background: #FFFD; /* 枠の色 */
  text-align: center; /* 文字を中央寄せ */
  transition: all 500ms ease-in-out;
}
.popWindow .ptitle, .popWindow2 .ptitle {
  font-size: 15px;
  margin: 8px;
  color: #333;
}
.popWindow .close, .popWindow2 .close {
  position: absolute;
  top: 8px;
  right: 10px;
  transition: all 300ms;
  font-size: 24px;
  line-height: inherit;
  font-weight: bold;
  text-decoration: none;
  color: #000;
  padding: 2px;
}
.popWindow .close:hover, .popWindow2 .close:hover {
  color: #06D85F;
}
.popWindow::-webkit-scrollbar-track, .popWindow2::-webkit-scrollbar-track {
  background: none;
}
.popWindow::-webkit-scrollbar, .popWindow2::-webkit-scrollbar {
  width: 10px;
  height: 10px;
}
.popWindow::-webkit-scrollbar-thumb, .popWindow2::-webkit-scrollbar-thumb {
  background: #999;
  border-radius: 5px;
}
.clickable:hover {
  cursor: pointer;
}
@media screen and (max-width: 700px){
  #pop-up:checked + .overlay, #pop-up2:checked + .overlay {
    visibility: hidden;
    opacity: 0;
  }
}


/*注意事項用ポップアップ*/
.tmb {
	width: 90%;
}
.tmb_img {
	width: 100%;
	height: auto;
}
.tmb_img:hover {
	cursor: pointer;
}
.popup {
	z-index: 10;
	position: fixed;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	transform: scale(0);
	background-color: rgba(0, 0, 0, 0.8);
	opacity: 0;
	transition: opacity 0.3s, transform 0s 0.3s;
}
.popup__btn {
	display: block;
	z-index: 13;
	position: absolute;
	top: 1vh;
	right: 1vh;
	width: 5vh;
	height: 5vh;
	cursor: pointer;
}
.popup__btn::before,
.popup__btn::after {
	position: absolute;
	top: 50%;
	width: 100%;
	height: 2px;
	margin-top: -1px;
	background-color: #fff;
	content: '';
}
.popup__btn::before {
	transform: rotate(45deg);
}
.popup__btn::after {
	transform: rotate(-45deg);
}
.popup__btnarea {
	z-index: 12;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.popup__img {
	z-index: 11;
	position: absolute;
	top: 5%;
	left: 5%;
	width: 90%;
	height: 90%;
}
.popup__img img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}
/*input[type="checkbox"] {
	display: none;
}
input[type="checkbox"]:checked ~ .popup {
	transform: scale(1);
	opacity: 1;
	transition: opacity 0.3s;
}*/

/*モバイル*/
@media screen and (max-width: 768px) {
	table.table01 th,
	table.table01 td,
	table.table01 th.w30,
	table.table04 th,
	table.table04 td{
		display:block;
		width:100%;
	}
	.nifty-au-jyouken{
		display:block;
	}
	
	.page-yellow-box,
	.page-orange-box{
		width:100%;
		display:block;
		margin:20px 0;
	}
	
	/*MW WP form*/
	.hissubefore{
		word-wrap: break-word;
	}
	table.table03,table.table03 td{
		width:100%;
		display:block;
		padding:5px;
	}
	table.table03 th{
		width:100%;
		display:block;
		padding:10% 5px;
	}
	.mw_wp_form table.table03 th{
		width:100%;
		display:block;
		padding:10px 5px;
	}
	table.table03 tbody,table.table03 tr{
		width:100%;
		display:block;
	}
	table.table03 th, table.table03 th.w20p{width:100%;display:block;}
	.mw_wp_form_preview table.table03 th{
		border-bottom:1px solid #fff;
	}
	.mw_wp_form_preview table.table03 td{
		border-top:1px solid #fff;
	}
	.mw_wp_form_preview table.table03 td.kakunin{
		border-top:1px solid #999;
		margin-bottom:1px;
	}
	.tel, .form2{
		width:40%;
	}
	.respofont02{font-size: 2rem;}
	.flowleft{
		display:block;
		width:100%;
		height:auto;
		padding:10px;
		vertical-align: top;
		border-radius:0;
	}
	.flowright{
		display:block;
		width:100%;
	}
}