@charset "utf-8";
/*------------------------------------------------------------
	トープページ
------------------------------------------------------------*/
#main {
	padding-top: 156px;
	position: relative;
	padding-bottom: 159px;
	background: #0B2E56 url(../img/common/bg01.jpg) no-repeat right top 43px;
	background-size: 248px auto;
}

#main:before {
	width: 300px;
	height: 300px;
	position: absolute;
	left: 0;
	bottom: 40px;
	background: url(../img/common/bg02.jpg) no-repeat left top;
	background-size: 236px auto;
	content: '';
}

#main .headLine01 {
	margin-bottom: 65px;
}

#main p {
	font-size: 14px;
}

#main .topText {
	margin-bottom: 105px;
	color: #FFF;
	letter-spacing: 1px;
	line-height: 2.4;
	text-align: center;
}

#main .topText a {
	color: #FFF;
	text-decoration: underline;
}

#main .topText a:hover {
	text-decoration: none;
}

#main .content {
	position: relative;
	z-index: 1;
}

#main .mailForm .tableBox {
	margin-bottom: 50px;
	padding: 27px 30px;
	background-color: #FFF;
}

#main .mailForm .must {
	color: #AD1E32;
}

#main .mailForm .sml {
	margin-bottom: 5px;
	font-size: 12px;
	font-weight: bold;
	letter-spacing: 1px;
}

#main .mailForm .sml .must {
	margin-right: 4px;
}

#main .mailForm table {
	margin-bottom: 26px;
	width: 100%;
	border-collapse: collapse;
}

#main .mailForm th,
#main .mailForm td {
	padding: 27px 0 23px 20px;
	width: 62%;
	font-size: 13px;
	line-height: 1.5;
	word-break: break-all;
	text-align: left;
	vertical-align: middle;
	box-sizing: border-box;
	word-break: break-all;
}

#main .mailForm th {
	padding: 12px 20px 8px 10px;
	width: 37%;
	letter-spacing: 2px;
	text-align: center;
	border: 1px solid #E4D3A5;
	border-right: 4px solid #FFF;
	border-bottom: 1px solid #FFF;
	background-color: #E4D3A5;
	font-family: 'Noto Serif JP', serif;
}

#main .mailForm th .sm {
	display: block;
	font-size: 11px;
	letter-spacing: 4px;
	line-height: 1.4;
}

#main .mailForm td {
	border-top: 1px solid #A1A1A1;
	border-bottom: 1px solid #A1A1A1;
}

#main .mailForm td textarea,
#main .mailForm td input[type="text"],
#main .mailForm td input[type="email"],
#main .mailForm td input[type="tel"] {
	padding: 8px 13px;
	width: 439px;
	height: 40px;
	font-size: 13px; 
	border: 1px solid #9A9A9A;
	border-radius: 0;
	box-sizing: border-box;
	appearance: none;
	-webkit-appearance: none;
}

#main .mailForm td textarea {
	width: 100%;
	height: 130px;
}

#main .mailForm .checkList li {
	margin-bottom: 11px;
}

#main .mailForm .checkList li:last-child {
	margin-bottom: 0;
}

#main .mailForm input[type="radio"] {
	display: none;
}

#main .mailForm input[type="radio"] + label {
	padding: 7px 45px 6px;
	display: block;
	color: #0A2E55;
	letter-spacing: 2.5px;
	background: #E6E9EE url(../img/common/radio_img02.png) no-repeat left 20px center;
	background-size: 10px auto;
}

#main .mailForm  input[type="radio"]:checked + label {
	color: #FFF;
	background-image: url(../img/common/radio_img01.png);
	background-color: #0B2E56;
}

#main .mailForm input[type="checkbox"] {
	display: none;
}

#main .mailForm input[type="checkbox"] + label {
	padding: 7px 45px 6px;
	display: block;
	color: #0A2E55;
	letter-spacing: 2.5px;
	background: #E6E9EE url(../img/common/check_img02.png) no-repeat left 20px center;
	background-size: 10px auto;
}

#main .mailForm  input[type="checkbox"]:checked + label {
	color: #FFF;
	background-image: url(../img/common/check_img01.png);
	background-color: #0B2E56;
}

#main .mailForm td .ttl {
	margin-right: 5px;
	font-weight: bold;
	letter-spacing: 3px;
}

#main .mailForm td select {
	margin-right: 10px;
	padding: 6px 20px 4px 11px;
	width: 78px;
	height: 37px;
	font-size: 13px;
	line-height: 1.5;
	letter-spacing: 2.5px;
	border-radius: 0;
	border: 1px solid #A1A1A1;
	background: #FFF url(../img/common/select_img01.png) no-repeat right center;
	background-size: auto 100%;
	box-sizing: border-box;
	appearance:none;
    -moz-appearance:none;
	-webkit-appearance: none;
}

#main .mailForm td select::-ms-expand { 
	display: none; 
}

#main .mailForm td .day {
	margin-right: 40px;
}

#main .mailForm td .wid01 {
	margin-right: 0;
	width: 212px;
}

#main .mailForm td .textUl li {
	margin-bottom: 9px;
	overflow: hidden;
	zoom: 1;
}

#main .mailForm td .textUl li:last-child {
	margin-bottom: 0;
}

#main .mailForm td .textUl li .ttl {
	margin: 12px 0 0;
	display: inline-block;
	width: 64px;
	float: left;
	text-align: justify;
	text-align-last: justify;
}

#main .mailForm td .textUl li input[type="text"] {
	float: right;
}

#main .mailForm td input[type="text"].wid02 {
	margin: 0 10px 0 80px;
	width: 170px;
	vertical-align: bottom;
}

#main .mailForm td .note {
	margin: 6px 0 15px;
	font-size: 11px;
	letter-spacing: 1.5px;
}

#main .mailForm td .ttl01 {
	margin-right: 11px;
}

#main .mailForm td .wid03 {
	margin-right: 18px;
	width: 169px;
}

#main .mailForm td .wid04 {
	margin-right: 0;
	width: 246px;
}

#main .mailForm .text01 {
	margin-bottom: 12px;
	font-size: 11px;
	letter-spacing: 2.5px;
}

#main .mailForm .privacyBox {
	margin-bottom: 25px;
	height: 132px;
	border: 1px solid #878787;
}

#main .mailForm .privacyBox .inner {
	padding: 18px;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
}

#main .mailForm .privacyBox .jspVerticalBar {
	width: 7px;
	height: 100%;
	background: #FFF;
}

#main .mailForm .privacyBox .jspTrack {
	background: #FFF;
}

#main .mailForm .privacyBox .jspTrack .jspDrag {
	background: #A1A1A1;
}

#main .mailForm .privacyBox p {
	color: #878787;
	font-size: 11px;
	line-height: 1.85;
	letter-spacing: 1px;
	text-align: justify;
}

#main .mailForm .text02 {
	margin-bottom: 15px;
	padding: 10px 10px 8px;
	color: #FFF;
	font-size: 11px;
	text-align: center;
	letter-spacing: 2px;
	background-color: #AD1E32;
}

#main .mailForm .agreeBox {
	text-align: center;
}

#main .mailForm .agreeBox input[type="checkbox"] + label {
	padding: 6px 12px 0 45px;
	display: inline-block;
	background: #FFF url(../img/common/check_img04.png) no-repeat left 0px center;
	background-size: 42px auto;
}

#main .mailForm .agreeBox input[type="checkbox"]:checked + label {
	color: #000;
	background-image: url(../img/common/check_img03.png);
}

#main .mailForm .submit {
	text-align: center;
}

#main .mailForm .submit li {
	margin: 0 7px;
	display: inline-block;
}

#main .mailForm .submit li input {
	padding: 10px 30px 8px;
	width: 240px;
	cursor: pointer;
	color: #FFF;
	font-size: 13px;
	letter-spacing: 2.5px;
	text-align: center;
	border: none;
	border-radius: none;
	background: #B38104 url(../img/common/icon02.png) no-repeat right 11px center;
	background-size: 7px auto;
}

#main .mailForm .submit .back input {
	color: #0A2E55;
	background-color: #FFF;
	background-image: url(../img/common/icon003.png);
	background-position: left 10px center;
}

#main .mailForm .submit li input:hover {
	opacity: 0.7;
}

#main .mailForm .tableBox01 td {
	padding: 24px 0 21px 49px;
	font-size: 13px;
	letter-spacing: 3px;
}

#main .mailForm .tableBox01 td .textList {
	margin: 6px 0;
}

#main .mailForm .tableBox01 td .textList li {
	width: 50%;
	float: left;
}

#main .mailForm .tableBox01 td .textList li:nth-child(2n) {
	width: 43.5%;
	float: right;
}

#main .mailForm .tableBox01 td .textList li .dlList dt {
	float: left;
	color: #B38204;
	font-size: 13px;
}

#main .mailForm .tableBox01 td .textList li .dlList dd {
	padding-left: 7.2em;
	font-size: 13px;
	letter-spacing: 1px;
}

#main .mailForm .tableBox01 td .txt {
	margin-left: 5px;
	color: #B38204;
}

#main .mailForm .tableBox01 td .textList01 li {
	margin-bottom: 35px;
	float: none !important;
	width: 100% !important;
}

#main .mailForm .tableBox01 td .textList01 li:last-child {
	margin-bottom: 0;
}

#main .mailForm .tableBox01 td .time01 {
	display: block;
	margin-bottom: 10px;
}

#main .mailForm .tableBox01 td .text {
	line-height: 1.95;
}

#main .mailForm .tableBox01 .privacy {
	color: #FFF;
	font-size: 12px;
	font-weight: normal;
	font-family: "游ゴシック","Yu Gothic","游ゴシック体","YuGothic","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","Meiryo UI","メイリオ",Meiryo,"ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	line-height: 1.6;
	background-color: #AD1E32;
}

#main .mailForm .tableBox01 td .agreeBox {
	margin-left: -18px;
	text-align: left;
}

#main .errorMsg {
	margin-bottom: 20px;
}

#main .errorMsg li {
	color: #AD1E32;
	font-size: 13px;
	line-height: 1.7;
}

#main .thanks p {
	color: #FFF;
	font-size: 14px;
	line-height: 2.35;
	text-align: center;
	letter-spacing: 2px;
}

#main .thanks .text {
	margin-bottom: 34px;
	font-size: 26px;
	font-family: 'Noto Serif JP', serif;
	line-height: 1.62;
	letter-spacing: 4px;
}

#main .thanks p a {
	color: #FFF;
	text-decoration: underline;
}

#main .thanks p a:hover {
	text-decoration: none;
}

@media all and (-ms-high-contrast:none){
	#main .mailForm input[type="checkbox"] + label {
		padding: 10px 45px 3px;
		background-position: top 12px left 20px;
		background-size: 10px auto;
	}
	
	#main .mailForm .text02 {
		padding: 12px 10px 6px;
	}
	
	#main .mailForm .agreeBox input[type="checkbox"] + label {
		padding: 8px 12px 0 45px;
	}
	
	#main .mailForm .submit li input {
		padding: 12px 30px 6px;
	}
}

@media screen and (max-width: 767px) {
	#main {
		padding: 78px 0 0;
		background-image: none;
	}

	#main:before {
		display: none;
	}
		
	#main .content {
		margin: 0;
	}
	
	#main .headLine01 {
		margin: 0 18px 41px;
		font-size: 10px;
	}
	
	#main .headLine01 .en {
		margin-bottom: 5px;
		font-size: 25px;
	}

	#main p {
		margin: 0 18px;
		font-size: 13px;
	}

	#main .topText {
		margin-bottom: 44px;
		letter-spacing: 2px;
		line-height: 1.93;
		text-align: justify;
	}

	#main .topText .sp {
		display: inline !important;
	}

	#main .topText a:hover {
		text-decoration: underline;
	}

	#main .content {
		z-index: 0;
	}

	#main .mailForm {
		padding-bottom: 80px;
		background-color: #fff;
	}
	
	#main .mailForm .tableBox {
		margin-bottom: 0;
		padding: 46px 17px 32px;
	}

	#main .mailForm .sml {
		margin: 0 0 19px;
		font-size: 11px;
	}

	#main .mailForm .sml .must {
		margin-right: 4px;
	}

	#main .mailForm table {
		margin-bottom: 0;
	}

	#main .mailForm th,
	#main .mailForm td {
		padding: 20px 0 34px;
		width: 100% !important;
		display: block !important;
		font-size: 13px;
		line-height: 1.5;
	}

	#main .mailForm th {
		padding: 12px 10px 10px;
		letter-spacing: 2px;
		border: none;
		font-size: 12px;
	}

	#main .mailForm th .sm {
		display: inline;
		font-size: 10px;
		letter-spacing: 2px;
	}

	#main .mailForm td {
		border: none;
	}

	#main .mailForm td textarea,
	#main .mailForm td input[type="text"],
	#main .mailForm td input[type="email"],
	#main .mailForm td input[type="tel"] {
		padding: 7px 15px 6px;
		width: 100%;
		height: inherit;
	}

	#main .mailForm td textarea {
		height: 130px;
	}

	#main .mailForm .checkList li {
		margin-bottom: 16px;
	}

	#main .mailForm input[type="radio"] + label {
		padding: 16px 10px 15px 38px;
		letter-spacing: 2px;
		background-size: 14px auto;
		background-position: left 10px center;
	}

	#main .mailForm input[type="checkbox"] + label {
		padding: 16px 10px 15px 38px;
		display: block;
		font-size: 13px;
		letter-spacing: 2px;
		background: #E6E9EE url(../img/common/sp_check_img02.png) no-repeat left 10px center;
		background-size: 14px auto;
	}

	#main .mailForm  input[type="checkbox"]:checked + label {
		background-image: url(../img/common/sp_check_img01.png);
	}

	#main .mailForm td .ttl {
		margin-right: 0;
		font-weight: normal;
	}

	#main .mailForm td select {
		margin: 0 35px 0 30px;
		padding: 7px 20px 5px 11px;
		width: calc(50% - 58px);
		-webkit-width: calc(50% - 58px);
		height: inherit;
		background-image: url(../img/common/sp_select_img01.png);
	}

	#main .mailForm td .day {
		margin: 0 0 0 6px;
	}

	#main .mailForm td .wid01 {
		margin: 18px 0 0 15px;
		width: calc(100% - 52px);
		-webkit-width: calc(100% - 52px);
		border-radius: 5px 0 0 5px;
	}

	#main .mailForm td .textUl li {
		margin-bottom: 18px;
	}

	#main .mailForm td .textUl li .ttl {
		margin: 12px 0 0;
		width: 58px;
		letter-spacing: 0;
	}

	#main .mailForm td .textUl li input[type="text"] {
		width: calc(100% - 74px);
		-webkit-width: calc(100% - 74px);
	}

	#main .mailForm td input[type="text"].wid02 {
		margin: 0 11px 0 0;
		width: calc(100% - 34px);
		-webkit-width: calc(100% - 34px);
		vertical-align: middle;
	}

	#main .mailForm td .note {
		margin: 9px 0 15px;
		font-size: 13px;
		line-height: 1.92;
	}

	#main .mailForm td .ttl01 {
		margin-right: 0;
	}

	#main .mailForm td .wid03 {
		margin: 0 0 0 6px;
		width: calc(100% - 75px);
		-webkit-width: calc(100% - 75px);
	}

	#main .mailForm td .wid04 {
		margin: 18px 0 0 75px;
		width: calc(100% - 75px);
		-webkit-width: calc(100% - 75px);
		border-radius: 5px 0 0 5px;
	}

	#main .mailForm .text01 {
		margin: -5px 0 18px;
		font-size: 15px;
	}

	#main .mailForm .privacyBox {
		margin-bottom: 35px;
		height: 210px;
	}

	#main .mailForm .privacyBox .inner {
		padding: 18px 25px 18px 15px;
	}
	
	#main .mailForm .privacyBox p {
		margin: 0;
		font-size: 13px;
	}

	#main .mailForm .text02 {
		margin: 0 0 32px;
		padding: 12px 10px 11px;
	}

	#main .mailForm .agreeBox input[type="checkbox"] + label {
		padding: 1px 12px 0 25px;
		font-size: 11px;
		background-image: url(../img/common/sp_check_img04.png);
		background-size: 13px auto;
	}

	#main .mailForm .agreeBox input[type="checkbox"]:checked + label {
		background-image: url(../img/common/sp_check_img03.png);
	}

	#main .mailForm .submit li {
		margin: 0 18px 7px;
		position: relative;
		display: block;
		background-color: #B38104;
	}

	#main .mailForm .submit li:last-child {
		margin-bottom: 0;
	}

	#main .mailForm .submit li:before {
		width: calc(100% - 8px);
		-webkit-width: calc(100% - 8px);
		height: calc(100% - 8px);
		-webkit-height: calc(100% - 8px);
		position: absolute;
		left: 4px;
		top: 4px;
		border: 1px solid #FFF;
		box-sizing: border-box;
		content: '';
	}

	#main .mailForm .submit li input {
		padding: 21px 10px 16px;
		display: block;
		position: relative;
		width: 100%;
		font-size: 14px;
		background-color: transparent;
		background-position: right 63px center;
		background-size: 9px auto;
		z-index: 1;
	}
	
	#main .mailForm .submit .back {
		background-color: #0B2E56;
	}
	
	#main .mailForm .submit .back:before {
		display: none;
	}

	#main .mailForm .submit .back input {
		padding: 10px 10px;
		color: #FFF;
		font-size: 14px;
		background-color: transparent;
		background-image: url(../img/common/icon09.png);
		background-position: left 20px center;
		background-size: 6px auto;
	}

	#main .mailForm .submit li input:hover {
		opacity: 1;
	}

	#main .mailForm .tableBox01 td {
		padding: 15px 0 30px;
		letter-spacing: 2px;
	}

	#main .mailForm .tableBox01 td .textList {
		margin: 3px 0 1px;
	}

	#main .mailForm .tableBox01 td .textList li {
		margin-bottom: 24px;
		width: auto;
		float: none;
	}

	#main .mailForm .tableBox01 td .textList li:last-child {
		margin-bottom: 0;
	}
	
	#main .mailForm .tableBox01 td .textList li:nth-child(2n) {
		width: auto;
		float: none;
	}

	#main .mailForm .tableBox01 td .textList li .dlList dt {
		width: 5em;
	}

	#main .mailForm .tableBox01 td .textList li .dlList01 dt {
		text-align: justify;
		text-align-last: justify;
	}

	#main .mailForm .tableBox01 td .textList li .dlList dd {
		padding-left: 6.8em;
	}

	#main .mailForm .tableBox01 td .time01 {
		display: inline-block;
		margin: 0 20px 0 0;
	}

	#main .mailForm .tableBox01 .privacy {
		color: #000;
		background-color: #E4D3A5;
	}

	#main .mailForm .tableBox01 td .agreeBox {
		margin-left: 0;
		text-align: center;
	}
	
	#thanksBox {
		position: relative;
	}
	
	#thanksBox:before {
		width: 124px;
		height: 142px;
		position: absolute;
		right: 0;
		top: -20px;
		background: url(../img/common/sp_bg01.png);
		background-size: 124px auto;
		content: '';
		z-index: 1;
	}
	
	#thanksBox:after {
		width: 90px;
		height: 76px;
		position: absolute;
		left: 0;
		bottom: 16px;
		background: url(../img/common/sp_bg02.png);
		background-size: 90px auto;
		content: '';
		z-index: 1;
	}

	#thanksBox .content {
		position: relative;
		z-index: 2;
	}
	
	#main .thanks {
		padding-bottom: 70px;
	}
	
	#main .thanks p {
		font-size: 13px;
		line-height: 1.98;
	}

	#main .thanks .text {
		margin: -7px 0 11px;
		font-size: 20px;
		line-height: 2;
		letter-spacing: 3px;
	}

	#main .thanks p a:hover {
		text-decoration: underline;
	}
}


#main p.textred {
	color: #FF0000;
	font-size: 80%;
}