@charset "utf-8";

/* RESPONSIVE */
/* -------------------------------------------------- */
@media screen and (min-width: 1024px) {

	/* 980px以上用（PC用）の記述 */
	/* メインビジュアル */
	#fv::after {
		background: url(../../img/mv/mv_contact.jpg) center center no-repeat;
		-webkit-background-size: cover;
		background-size: cover;
	}

	/* telephone
	-------------------------------------------------------*/
	#telephone {
		width: 600px;
		padding-bottom: 100px;
		margin: 0 auto 100px;
		text-align: center;
		border-bottom: 1px #c9c9c9 solid;
	}

	#telephone .commonTit2 {
		margin-bottom: 50px;
	}

	#telephone p {
		font-size: 1.7rem;
		line-height: 1.6;
		margin-bottom: 20px;
	}

	#telephone dl {
		display: inline-block;
		text-align: center;
	}

	#telephone dt {
		display: inline-block;
		font-size: 6rem;
		line-height: 1.3;
		font-weight: bold;
		font-family: 'Barlow Condensed', sans-serif;
		letter-spacing: 0.1em;
		position: relative;
		color: #a70303;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	#telephone dt:before {
		content: "";
		width: 27px;
		height: 36px;
		padding-right: 10px;
		background: url(../../img/contact/icon_tel.svg) 0 0 no-repeat;
		display: block;
	}

	#telephone dt span {
		display: block;
		line-height: 1;
	}

	#telephone dd {
		font-size: 1.5rem;
		line-height: 1.0;
		letter-spacing: 0.1em;
		text-align: center;
	}

	#telephone dd.time {
		color: #444;
	}

	/* form
	-------------------------------------------------------*/
	#contactFrom {
		padding-top: 100px;
		margin-top: -100px;
	}

	.contactTxt {
		font-size: 1.7rem;
		line-height: 1.6;
		margin-bottom: 50px;
		text-align: center;
	}

	#form p span {
		color: #e60012;
	}

	#form .tit2 {
		text-align: center;
	}

	.flow {
		text-align: center;
		margin-bottom: 40px;
	}

	#formArea {
		padding: 0 90px;
	}

	#formArea input[type="text"],
	#formArea input[type="tel"],
	#formArea input[type="email"] {
		width: 100%;
		height: 60px;
		line-height: 51px;
		font-size: 2.0rem;
		border: solid 1px #a0a0a0;
		border-radius: 5px;
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		padding: 0 20px;
		position: relative;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		font-weight: normal;
		font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	}

	#formArea textarea {
		width: 100%;
		line-height: 1.3;
		font-size: 2.0rem;
		border: solid 1px #a0a0a0;
		border-radius: 10px;
		-moz-border-radius: 10px;
		-webkit-border-radius: 10px;
		padding: 10px 20px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
		font-family: "游ゴシック", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	}

	#formArea dl {
		letter-spacing: -.4em;
	}

	#formArea dt {
		font-size: 1.8rem;
		line-height: 1.3;
		letter-spacing: 0.1em;
		color: #000;
		margin-bottom: 15px;
		font-weight: bold;
	}

	#formArea dt span {
		display: inline-block;
		font-size: 1.2rem;
		color: #fff;
		letter-spacing: 0.18em;
		font-weight: normal;
		border-radius: 3px;
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		background: #a70303;
		margin-left: 10px;
		width: 40px;
		height: 23px;
		line-height: 23px;
		text-align: center;
		vertical-align: top;
	}

	#formArea dd {
		margin-bottom: 40px;
		letter-spacing: 0;
		position: relative;
	}

	#formArea .kinmuInput {
		margin-bottom: 10px;
	}

	#kinmuNum1 {
		display: inline-block;
		width: 150px;
		margin-left: 30px;
		letter-spacing: 0;
	}

	#kinmuNum1::before {
		content: '〒';
		font-size: 1.8rem;
		color: #333;
		position: absolute;
		top: 16px;
		left: -30px;
	}

	#kinmuNum2 {
		display: inline-block;
		width: 150px;
		margin-left: 50px;
		letter-spacing: 0;
	}

	#kinmuNum2::before {
		content: 'ー';
		font-size: 1.8rem;
		color: #333;
		position: absolute;
		top: 17px;
		left: -34px;
	}

	#btArea {
		text-align: center;
	}

	.pp a {
		color: #333;
		font-weight: bold;
		text-decoration: underline;
		transition: all 0.3s ease-in-out 0s;
	}

	.pp a:hover {
		text-decoration: none;
	}

	#btArea a {
		background-color: #a70303;
	}

	/* confirm
	-------------------------------------------------------*/
	#form.confirm .thxTxt {
		text-align: center;
	}

	#form.confirm dt {
		color: #666666 !important;
		margin-bottom: 10px !important;
	}

	#form.confirm dd {
		font-size: 2.0rem;
		line-height: 1.7;
		border-bottom: solid 3px #d2d2d2;
		padding-bottom: 3px;
	}

	#form.confirm #prevFrom a {
		display: block;
		font-size: 1.4rem;
		font-weight: 500;
		line-height: 1.7;
		color: #666666;
		background: url(../../img/common/icon_prev.png) 0 center no-repeat;
		padding-left: 15px;
		width: 220px;
		margin: 10px auto 0;
	}


	/* complete
	-------------------------------------------------------*/
	#form.complete .thxTxt {
		text-align: center;
	}

	/*エラー*/
	.errIn {
		display: block;
		padding-top: 15px;
		color: #e60012;
	}

	.errIn:before {
		content: "";
		padding-right: 10px;
		width: 7px;
		height: 6px;
		display: inline-block;
		background: url(../../img/common/icon5.png) 0 0 no-repeat;
		color: #e60012;
		vertical-align: middle;
	}

	#contactFrom .commonBtn1 {
		text-align: center;
	}

}

@media screen and (min-width: 768px) and (max-width: 1023px) {

	/* 768px - 979px用（タブレット用）の記述 */
	/* メインビジュアル */
	#fv::after {
		background: url(../../img/mv/mv_contact.jpg) center center no-repeat;
		-webkit-background-size: cover;
		background-size: cover;
	}

	/* 入会案内
	-------------------------------------------------------*/
	#EntryguidanceBox {
		margin-bottom: 40px;
		border: 1px solid #0068b7;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		text-align: center;
	}

	#EntryguidanceTxt {
		padding: 10px;
		line-height: 1.5;
	}

	#EntryguidanceBtn {
		padding-bottom: 10px;
		margin: 0 10px;
	}

	#EntryguidanceBtn a {
		background-color: #0068b7;
	}

	/* telephone
	-------------------------------------------------------*/
	#telephone {
		padding-bottom: 40px;
		margin-bottom: 40px;
		border-bottom: 1px #c9c9c9 solid;
		text-align: center;
	}

	#telephone p {
		font-size: 1.4rem;
		line-height: 1.2;
		margin-bottom: 10px;
		text-align: center;
	}

	#telephone dl {
		display: inline-block;
		text-align: center;
	}

	#telephone dt {
		display: inline-block;
		font-size: 4.4rem;
		line-height: 1.3;
		font-weight: bold;
		font-family: 'Barlow Condensed', sans-serif;
		position: relative;
		padding-top: 15px;
		color: #a70303;
		display: flex;
		justify-content: center;
		align-items: center;
		/*
		animation: color 10s infinite;
		-webkit-animation: color 10s infinite;
		*/
	}

	#telephone dt:before {
		content: "";
		width: 27px;
		height: 36px;
		padding-right: 10px;
		background: url(../../img/contact/icon_tel.svg) 0 0 no-repeat;
		display: block;
	}

	#telephone dd {
		font-size: 1.0rem;
		line-height: 1.0;
		letter-spacing: 0.1em;
		text-align: left;
		padding-left: 25px;
	}

	#telephone dd.time {
		color: #444;
	}

	.pp {
		text-align: center;
	}

	.pp a {
		color: #333;
		font-weight: bold;
		text-decoration: underline;
	}

	/* form
	-------------------------------------------------------*/
	.contactTxt {
		font-size: 1.4rem;
		line-height: 1.2;
		margin-bottom: 15px;
		text-align: center;
	}

	#form p span {
		color: #e60012;
	}

	#form .tit2 {
		text-align: center;
	}

	#form #position {
		text-align: center;
		margin-bottom: 25px;
	}

	#form #position img {
		width: 500px;
	}

	#form #formArea input,
	#form #formArea textarea {
		box-shadow: none;
		-moz-box-shadow: none;
		-webkit-box-shadow: none;
		appearance: none;
		-webkit-appearance: none;
	}

	#form #formArea input[type="text"],
	#form #formArea input[type="tel"],
	#form #formArea input[type="email"] {
		width: 100%;
		height: 26px;
		line-height: 24px;
		font-size: 1.4rem;
		border: solid 1px #a0a0a0;
		border-radius: 5px;
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		padding: 0 10px;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

	#form #formArea textarea {
		width: 100%;
		line-height: 1.3;
		font-size: 1.4rem;
		border: solid 1px #a0a0a0;
		border-radius: 5px;
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		padding: 10px;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
	}

	#form #formArea dt {
		font-size: 1.2rem;
		height: 16px;
		line-height: 16px;
		letter-spacing: 0.1em;
		color: #666666;
		margin-bottom: 5px;
		font-weight: bold;
	}

	#form #formArea dt span {
		display: inline-block;
		font-size: 0.9rem;
		height: 16px;
		line-height: 16px;
		color: #fff;
		letter-spacing: 0.18em;
		font-weight: normal;
		border-radius: 3px;
		-moz-border-radius: 3px;
		-webkit-border-radius: 3px;
		padding: 0 0.4em;
		background: #c71818;
		margin-left: 5px;
	}

	#form #formArea dd {
		margin-bottom: 10px;
	}

	#form #formArea .scroll {
		width: 100%;
		height: 123px;
		background: #f3f3f3;
		margin-bottom: 20px;
	}

	#form #formArea .scroll dl {
		padding: 10px 15px 0 10px;
	}

	#form #formArea .scroll dt {
		font-size: 1.2rem;
		color: #333;
	}

	#form #formArea .scroll dd {
		font-size: 1.1rem;
		color: #555;
		margin-bottom: 15px;
	}

	/* 縦スクロールバー */
	#form #formArea .scroll .jspVerticalBar {
		position: absolute;
		top: 4px;
		right: 3px;
		width: 3px;
		height: 116px;
	}

	/* 背景 */
	#form #formArea .scroll .jspTrack {
		background: #bfbfbf;
		position: relative;
		height: 116px !important;
	}

	/* ノブ */
	#form #formArea .jspDrag {
		background: #535353;
		position: relative;
		top: 0;
		left: 0;
		cursor: pointer;
	}

	#form #formArea .scroll .jspHorizontalBar .jspTrack,
	.jspHorizontalBar .jspDrag {
		float: left;
		height: 116px;
	}

	#form #formArea #btArea {
		text-align: center;
	}

	#form #formArea #btArea.submit a {
		display: inline-block;
		width: 205px;
		height: 45px;
		font-size: 1.6rem;
		line-height: 1.2;
		text-align: center;
		color: #fff;
		border-radius: 3px;
		-moz-border-radius: 3px;
		-webkit-border-radius: 3px;
		background: url(../../img/common/icon_arrow_01_sp.png) no-repeat 95% 50% #ff652d;
		background-size: 5px 9px;
	}

	#form.confirm #formArea #btArea.submit a {
		line-height: 45px;
		letter-spacing: 0.8em;
	}

	#form #formArea #btArea.submit a span {
		display: block;
		font-size: 1.0rem;
		padding-top: 0.8rem;
	}


	/* confirm
	-------------------------------------------------------*/
	#form.confirm p {
		font-size: 1.4rem;
		line-height: 1.2;
		margin-bottom: 15px;
	}

	#form.confirm dl {
		margin-bottom: 30px;
	}

	#form.confirm dt {
		color: #666666 !important;
		margin-bottom: 5px !important;
	}

	#form.confirm dd {
		font-size: 1.6rem;
		line-height: 1.2;
		border-bottom: solid 3px #d2d2d2;
		padding-bottom: 0.2em;
		margin-bottom: 20px !important;
	}

	#form.confirm #prevFrom a {
		display: block;
		font-size: 1.4rem;
		line-height: 1.2;
		color: #666666;
		background: url(../../img/common/sp/icon_prev.png) no-repeat 0% 50%;
		-webkit-background-size: 10px auto;
		background-size: 7px auto;
		padding-left: 12px;
		margin: 10px auto 0;
	}

	#btArea {
		padding: 0;
	}


	/* complete
	-------------------------------------------------------*/
	#form.complete p {
		font-size: 1.4rem;
		line-height: 1.2;
		margin-bottom: 25px;
		text-align: left;
	}

	#form.complete a {
		color: #0068b7;
	}

	#form .commonBtn1 a {
		color: #fff;
		background-color: #a70303;
	}

	#form.complete .btn {
		margin: 0 auto;
	}

	/*エラー*/
	.errIn {
		color: #e60012;
	}

	.errIn:before {
		content: "";
		padding-right: 10px;
		width: 7px;
		height: 6px;
		display: inline-block;
		background: url(../../img/common/sp/icon5_sp.png) 0 0 no-repeat;
		-webkit-background-size: 10px auto;
		background-size: 10px auto;
		color: #e60012;
		vertical-align: middle;
	}

}

@media screen and (max-width: 767px) {

	/* 479px以下用（スマートフォン用）の記述 */
	/* メインビジュアル */
	#fv::after {
		background: url(../../img/mv/mv_contact.jpg) center center no-repeat;
		-webkit-background-size: cover;
		background-size: cover;
	}

	/* 入会案内
	-------------------------------------------------------*/
	#EntryguidanceBox {
		margin-bottom: 40px;
		border: 1px solid #0068b7;
		-webkit-box-sizing: border-box;
		box-sizing: border-box;
		text-align: center;
	}

	#EntryguidanceTxt {
		padding: 10px;
		line-height: 1.5;
	}

	#EntryguidanceBtn {
		padding-bottom: 10px;
		margin: 0 10px;
	}

	#EntryguidanceBtn a {
		background-color: #0068b7;
	}

	/* telephone
	-------------------------------------------------------*/
	#telephone {
		margin-bottom: 30px;
		padding-bottom: 30px;
		border-bottom: 1px #c9c9c9 solid;
		text-align: center;
	}

	#telephone p {
		font-size: 1.4rem;
		line-height: 1.2;
		margin-bottom: 10px;
		text-align: left;
	}

	#telephone dl {
		display: inline-block;
		text-align: center;
	}

	#telephone dt {
		display: inline-block;
		font-size: 2.5rem;
		line-height: 1.3;
		font-weight: bold;
		font-family: 'Barlow Condensed', sans-serif;
		position: relative;
		display: flex;
		justify-content: center;
		align-items: center;
	}

	#telephone dt a {
		color: #a70303 !important;
		font-size: 4.4rem;
	}

	#telephone dt:before {
		content: "";
		width: 27px;
		height: 36px;
		padding-right: 10px;
		background: url(../../img/contact/icon_tel.svg) 0 0 no-repeat;
		display: block;
	}

	#telephone dd {
		font-size: 1.0rem;
		line-height: 1.0;
		letter-spacing: 0.1em;
		text-align: center;
	}

	#telephone dd.time {
		color: #444;
	}

	.flow {
		text-align: center;
		margin-bottom: 30px;
	}

	.flow img {
		width: 100%;
		height: auto;
	}

	/* form
	-------------------------------------------------------*/
	.contactTxt {
		font-size: 1.4rem;
		line-height: 1.2;
		margin-bottom: 15px;
	}

	#form p span {
		color: #e60012;
	}

	#form .tit2 {
		text-align: center;
	}

	#form #position {
		text-align: center;
	}

	#form #formArea input,
	#form #formArea textarea {
		box-shadow: none;
		-moz-box-shadow: none;
		-webkit-box-shadow: none;
		appearance: none;
		-webkit-appearance: none;
	}

	#form #formArea input[type="text"],
	#form #formArea input[type="tel"],
	#form #formArea input[type="email"] {
		width: 100%;
		line-height: 24px;
		font-size: 1.4rem;
		border: solid 1px #a0a0a0;
		border-radius: 5px;
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		padding: 10px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	#form #formArea textarea {
		width: 100%;
		line-height: 1.3;
		font-size: 1.4rem;
		border: solid 1px #a0a0a0;
		border-radius: 5px;
		-moz-border-radius: 5px;
		-webkit-border-radius: 5px;
		padding: 10px;
		-webkit-box-sizing: border-box;
		-moz-box-sizing: border-box;
		box-sizing: border-box;
	}

	#form #formArea dt {
		font-size: 1.2rem;
		height: 16px;
		line-height: 16px;
		letter-spacing: 0.1em;
		color: #666666;
		margin-bottom: 5px;
		font-weight: bold;
	}

	#form #formArea dt span {
		display: inline-block;
		font-size: 0.9rem;
		height: 16px;
		line-height: 16px;
		color: #fff;
		letter-spacing: 0.18em;
		vertical-align: top;
		font-weight: normal;
		border-radius: 3px;
		-moz-border-radius: 3px;
		-webkit-border-radius: 3px;
		padding: 0 0.4em;
		background: #a70303;
		margin-left: 5px;
	}

	#form #formArea dd {
		margin-bottom: 10px;
	}

	#form #formArea .scroll {
		width: 100%;
		height: 123px;
		background: #f3f3f3;
		margin-bottom: 20px;
	}

	#form #formArea .scroll dl {
		padding: 10px 15px 0 10px;
	}

	#form #formArea .scroll dt {
		font-size: 1.2rem;
		color: #333;
	}

	#form #formArea .scroll dd {
		font-size: 1.1rem;
		color: #555;
		margin-bottom: 15px;
	}

	.pp {
		text-align: center;
	}

	.pp a {
		color: #333;
		font-weight: bold;
		text-decoration: underline;
	}

	#btArea {
		padding: 0;
	}

	#btArea a {
		background-color: #0068b7;
	}

	/* confirm
	-------------------------------------------------------*/
	#form.confirm p {
		font-size: 1.4rem;
		line-height: 1.2;
		margin-bottom: 15px;
	}

	#form.confirm dl {
		margin-bottom: 30px;
	}

	#form.confirm dt {
		color: #666666 !important;
		margin-bottom: 5px !important;
	}

	#form.confirm dd {
		font-size: 1.6rem;
		line-height: 1.2;
		border-bottom: solid 3px #d2d2d2;
		padding-bottom: 0.2em;
		margin-bottom: 20px !important;
	}

	#form.confirm #prevFrom a {
		display: block;
		font-size: 1.4rem;
		line-height: 1.2;
		color: #666666;
		background: url(../../img/common/sp/icon_prev.png) no-repeat 0% 50%;
		-webkit-background-size: 7px auto;
		background-size: 7px auto;
		padding-left: 15px;
		margin: 10px auto 0;
	}


	/* complete
	-------------------------------------------------------*/
	#form.complete p {
		margin-bottom: 25px;
	}

	#form.complete a {
		color: #0068b7;
	}


	#form .commonBtn1 a {
		color: #fff;
		background-color: #a70303;
	}

	/*エラー*/
	.errIn {
		color: #e60012;
		font-size: 1.1rem;
	}

	.errIn:before {
		content: "";
		padding-right: 10px;
		width: 7px;
		height: 6px;
		display: inline-block;
		background: url(../../img/common/sp/icon5_sp.png) 0 0 no-repeat;
		-webkit-background-size: 10px auto;
		background-size: 10px auto;
		color: #e60012;
		vertical-align: middle;
	}

}