@charset "UTF-8";

#contact #headVisual { background: url(images/bg_headtitle.jpg) no-repeat center center; background-size: cover; }
.breadcrumb-b { margin-bottom: 50px; }
.heading-1 { margin-bottom: 40px; }
.read { color: #EA5711; font-size: 1.8rem; font-weight: bold; text-align: center; margin-bottom: 40px; }

@media (min-width: 768px) {
}

@media (max-width: 767px) {
	.container.w900 { padding: 0; }
}

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

	flowNav

------------------------------------------------- */
#flowNav { margin-bottom: 100px; overflow: hidden; padding: 0; }
#flowNav li { font-weight: bold; color: #61524E; font-size: 1.6rem; width: 33.3%; height: 50px; line-height: 50px; padding: 0 10px 0px 20px; position: relative; background-color: #f6f6f6; }
#flowNav li:last-child { border-right: none; }

#flowNav li.arrow:before { content: ''; position: absolute; border: 10px solid #f6f6f6; border-top: 25px solid transparent; border-bottom: 25px solid transparent; border-right: 1px solid transparent; top: 0px; right: 0px; z-index: 1;}
#flowNav li.arrow.active:before { content: ''; position: absolute; border: 10px solid #EA5711; border-top: 25px solid transparent; border-bottom: 25px solid transparent; border-right: 1px solid transparent; top: 0px; right: 0px; z-index: 1;}
#flowNav li.arrow:after { content: ''; position: absolute; border: 10px solid #fff; border-top: 25px solid #f6f6f6; border-bottom: 25px solid #f6f6f6; border-right: 1px solid #f6f6f6; top: 0px; right: -1px; }
#flowNav li.active { background-color: #EA5711; color: #fff; border-right: none;}
#flowNav li.active:after { content: ''; position: absolute; border: 10px solid transparent; border-top: 25px solid #f6f6f6; border-bottom: 25px solid #f6f6f6; border-right: 1px solid #f6f6f6; top: 0px; right: -1px; }
.conf #flowNav li.arrow:before { content: ''; right: -1px; border-right: 1px solid #EA5711; border-top: 25px solid #EA5711; border-bottom: 25px solid #EA5711; }
.conf #flowNav li:nth-child(1).arrow:before { border: 10px solid transparent; border-top: 25px solid #EA5711; border-bottom: 25px solid #EA5711; border-right: 1px solid #EA5711; }
.conf #flowNav li:nth-child(1).arrow:after { border: 10px solid transparent; }
.thanks #flowNav li.active:after { content: ''; border: none; }
.thanks #flowNav li:nth-child(2).arrow:before { content: ''; border: 10px solid transparent; border-top: 25px solid #EA5711; border-bottom: 25px solid #EA5711; border-right: 1px solid #EA5711; right: -1px; }
.thanks #flowNav li:nth-child(2).arrow:after { border: 10px solid transparent; }

@media (max-width: 767px) {
    #flowNav { margin-bottom: 25px;}
	#flowNav li { font-size: 1.4rem; }
}

@media (max-width: 480px) {
	#flowNav li { font-size: 1.2rem; height: auto; min-height: 30px; line-height: 1; padding: 9px 5px 0px 0px; text-align: center; }
	#flowNav li:first-child { width: 38%;}
	#flowNav li:nth-child(2) { width: 38%; }
	#flowNav li:last-child { width: 24%; }
	#flowNav li.arrow:before { content: ''; border-top: 15px solid transparent; border-bottom: 15px solid transparent; top: 0; height: 100%; }
	#flowNav li.arrow:after { content: ''; border-top: 15px solid #f6f6f6; border-bottom: 15px solid #f6f6f6; top: 0; height: 100%; }
	#flowNav li.active:after { content: ''; border-top: 15px solid #f6f6f6; border-bottom: 15px solid #f6f6f6; height: 100%; }
	.conf #flowNav li.arrow:before { border-top: 15px solid #EA5711; border-bottom: 15px solid #EA5711; }
	.thanks #flowNav li:nth-child(2).arrow:before { border-top: 15px solid #EA5711; border-bottom: 15px solid #EA5711; }
}


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

	form

------------------------------------------------- */
form > div:not(.btnWrap) {  margin-bottom: 40px; position: relative; }
form > div:not(.btnWrap)::before { content:""; display: block; position: absolute; width: 6px; background: #F1AD1B; height: 100%; left: 0; }
form > div select { border: 1px solid #a8a8a8; width: 100%; padding: 12px 0; font-size: 1.6rem; }
form dl dt { position: relative; font-weight: bold; margin-bottom: 11px; }
form dl dt.required::after { content: '必須'; background: #F42911; color: #fff; font-weight: bold; font-size: 1.4rem; letter-spacing: 0.2em; width: 50px; display: inline-block; text-align: center; margin-left: 10px; vertical-align: middle;}
form > div p { color: #333; letter-spacing: 0.05em; line-height: 1.858; margin-top: 5px; }
form > div .select { position: relative; }
/* form > div .select::after { content: ''; display: block; position: absolute; width: 0; height: 0; border-style: solid; border-width: 12.5px 8.5px 8px 8.5px; border-color: #fff transparent transparent transparent; right: 11px; top: 50%; margin-top: -5px; pointer-events: none; }
form > div .select::before { content: ''; display: block; position: absolute; width: 40px; height: 100%; background: #fff; right: 0px; top: 0px; pointer-events: none; border: 1px solid #a8a8a8; background: #A6A6A6; } */
form > div .w200 { max-width: 200px; }
form > div .w430 { max-width: 430px; }
form dl dd input[type="text"],
form dl dd textarea { font-size: 1.6rem; }
form dl dd input[type="text"] { border: 1px solid #a8a8a8; width: 100%; padding: 10px 10px; }
form dl dd textarea { border: 1px solid #a8a8a8; width: 100%; height: 200px; padding: 10px; }
form dl dd label { /*display: block;*/ margin-bottom: 10px; }
form dl dd .radio_col { display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-align: center; -ms-flex-align: center; align-items: center; -ms-flex-wrap: wrap; flex-wrap: wrap; }
form dl dd .radio_col > label { margin-right: 10px; }
form dl dd .radioWrap input { vertical-align: inherit; }
form dl dd > p { font-size: 1.4rem; margin-bottom: 10px; }
/* form dl dd .radio_col > input[type="text"] { margin-top: -3px; } */
form > div.address input[type="text"]:not(:last-of-type),
form > div .select { margin-bottom: 20px; }
form hr { display: block; width: 100%; height: 1px; background-color: #eee; border: 0; margin-bottom: 50px; }
form .birth { font-weight: bold; }
form .birth input { margin: 0 10px; }
form .birth .year { width: 80px; }
form .birth .month { width: 50px; }
form .birth .day { width: 50px; }
/* 22.03.09 入力エラー Nakamura */
form .err { color:#e60000; font-weight: bold; }

/* form .gonenrei label {  display: inline-block; padding-right: 30px;  }
form .know label {  display: inline-block; padding-right: 30px;  } */
form .example { line-height: 40px; display: inline-block; vertical-align: top; }

.btn_submit { cursor: pointer; background: #EA5711; color: #fff; font-size: 1.6rem; border: none; border-radius: 4px; padding: 18px 0; width: 300px; position: relative; margin: 0 auto; display: block; }
.btn_submit::before { content: ''; position: absolute; top: 50%; right: 25px; margin-top: -5px; border-top: 2px solid #fff; border-right: 2px solid #fff; width: 10px; height: 10px; transform: rotate(45deg); }

@media (min-width: 768px) {
    form dl dt { font-size: 1.8rem; }
	form > div p  { font-size: 1.8rem; }
	form > div:not(.btnWrap) { padding-left: 55px; padding-right: 50px; }
	form > div.col2 { display:-webkit-box; display:-ms-flexbox; display:flex; -webkit-box-pack: justify; -ms-flex-pack: justify; justify-content: space-between; }
	form > div.col2 > dl { max-width: 380px; width: calc(50% - 17px); }
	form dl dd .radio_col > label { width: 25%; }
	form .gender dl dd .radio_col > label { width: 10%; }
	form .example { margin-left: 20px; }

	form > div .select::after { content: ''; display: block; position: absolute; width: 0; height: 0; border-style: solid; border-width: 12.5px 8.5px 8px 8.5px; border-color: #fff transparent transparent transparent; right: 11px; top: 50%; margin-top: -5px; pointer-events: none; }
	form > div .select::before { content: ''; display: block; position: absolute; width: 40px; height: 100%; background: #fff; right: 0px; top: 0px; pointer-events: none; border: 1px solid #a8a8a8; background: #A6A6A6; }

}

@media (max-width: 767px) {
    form dl dt { font-size: 1.6rem; }
	form > div p  { font-size: 1.6rem; }
	form > div:not(.btnWrap) { padding-left: 20px; }
	form > div.col2 > dl:first-of-type { margin-bottom: 11px; }
	form dl dd .radio_col > label { width: 100%; }
	form .example { margin-left: 10px; }
	form > div .w200 { max-width: 150px; }
}

@media (max-width: 480px) {
}


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

	thanks

------------------------------------------------------*/
/* #contact.thanks .container { margin-bottom: 30px; } */
#contact.thanks .title { background: #f2ad1a; color: #fff; text-align: center; font-weight: bold; font-size: 2.4rem; padding: 4px 0; margin-bottom: 30px; }
#contact.thanks .thanks_text { letter-spacing: 0.05em; line-height: 1.75; margin-bottom: 40px; }
#contact.thanks .contact_link { text-align: center; padding: 24px 0; font-weight: bold; border-top: 1px solid #EA5711; border-bottom: 1px solid #EA5711; }
#contact.thanks .contact_link a { color: inherit; text-decoration: underline; }
#contact.thanks .contact_link a:hover { text-decoration: none; }
#contact.thanks .return_top { text-align: center; display: block; color: inherit; margin-top: 40px; }


@media (min-width: 768px) {
	#contact.thanks .thanks_text { font-size: 1.8rem; }
    #contact.thanks .contact_link { font-size: 2.0rem; }
}

@media (max-width: 767px) {
	#contact.thanks .thanks_text { font-size: 1.6rem; }
	#contact.thanks .contact_link { font-size: 1.6rem; }
}



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

	confirm

------------------------------------------------------*/
#contact.conf form > div p { font-size: 1.6rem; }
#contact.conf form .birth { font-weight: normal; }
#contact.conf .back { display: block; text-align: center; color: inherit; margin-top: 30px; }
