@charset "utf-8";/* --------------------------------------------------- *//* 西野の常春 *//* --------------------------------------------------- *//* ビジュアル *//* --------------------------------------------------- */#visual {	position: relative;	padding-top:30px;}#visual::before {	content: '';	position: absolute;	top: 20px;	left: 48%;	display: block;	width: 560px;	height: 560px;	background-image: url('../../image/common/bouquet.png');	background-repeat: no-repeat;	background-size: cover;	background-position: 50% 50%;}#visual .inblock {	position: relative;	z-index: 1;	display: table;	text-align: center;}#visual .inblock h2 {	font-size: 4.2rem;	font-weight: 700;	line-height: 1.4;}#visual .inblock h2 span { display: block; }#visual .inblock h3 {	display: block;	margin: 20px auto 30px;	width: 100%;	max-width: 380px;	background-color: #22a7d9;	color: #fff;	font-family: 'Kosugi Maru', sans-serif;	font-size: 1.8rem;	line-height: 32px;}#visual .inblock figure {	position: relative;	display: block;	width: 100%;	max-width: 480px;	z-index: 2;}#visual .inblock figure img { width: 100%; height: auto; }@media screen and (max-width: 959px) {	#visual::before { left: 38%; }}@media screen and (max-width: 767px) {	#visual::before {		top: 50%;		left: 47%;		width: 516px;		height: 516px;		transform: translate(-50%, -50%);		opacity: 0.7;	}	#visual .inblock { margin: 0 auto; }	#visual .inblock h2 { font-size: 3.6rem; }	#visual .inblock h3 {		margin: 20px auto 30px;		max-width: 340px;		font-size: 1.6rem;		line-height: 28px;	}}@media screen and (max-width: 419px) {	#visual { padding-top: 20px; }	#visual::before {		top: 45%;		left: 47%;		width: 110%;		height: auto;		padding: 100% 0 0 0 ;		transform: translate(-50%, -50%);		opacity: 0.7;	}	#visual .inblock h2 { font-size: 2.8rem; }	#visual .inblock h3 {		margin: 20px auto 50px;		max-width: 280px;		font-size: 1.4rem;		line-height: 24px;		letter-spacing: 0;	}}/* --------------------------------------------------- *//* プレゼント上部 *//* --------------------------------------------------- */#present1 {	position: relative;	margin: -80px 0 0 0;}#present1 .campaign {	padding: 30px 5%;	background-color: #a3d102;}#present1 .campaign h2,#present1 .campaign p {	position: relative;	color: #fff;	font-size: 1.8rem;	font-weight: 700;	text-align: center;	z-index: 3;}#present1 .campaign h2 { font-size: 4.2rem; line-height: 1.3; }#present1 .campaign h2 span { display: inline-block; }#present1 .campaign h2 + p { font-size: 2.8rem; }@media screen and (max-width: 767px) {	#present1 { margin: -70px 0 0 0; }	#present1 .campaign p { font-size: 1.6rem; }	#present1 .campaign h2 { font-size: 3.6rem; }	#present1 .campaign h2 + p { font-size: 2.0rem; }}@media screen and (max-width: 419px) {	#present1 { margin: -50px 0 0 0; }	#present1 .campaign p { font-size: 1.4rem; }	#present1 .campaign h2 { font-size: 3.2rem; }	#present1 .campaign h2 + p { font-size: 1.8rem; }}/* おみやげ */#present1 .sb-card {	position: relative;	padding: 30px 0;	background-color: #fcfeeb;}#present1 .sb-card .contents {	position: relative;	max-width: 800px;}#present1 .sb-card p {	font-size: 2.0rem;	font-weight: 700;}#present1 .sb-card p br { display: none; }#present1 .sb-card h3 {	color: #a3d102;	font-size: 3.6rem;	font-weight: 700;	line-height: 1.4;}#present1 .sb-card h3 span { display: inline-block; }#present1 .sb-card h3 em {	display: block;	font-size: 1.8rem;	font-weight: 700;}#present1 .sb-card figure {	position: absolute;	top: -10px;	right: 0;	display: table;}#present1 .sb-card a {	display: table;	margin: 20px auto 0;	padding: 0 24px;	background-color: #ff6419;	border-radius: 18px;}#present1 .sb-card a p {	position: relative;	padding: 0 12px 0 0;	color: #fff;	font-family: 'Kosugi Maru', sans-serif;	font-size: 1.6rem;	line-height: 36px;}#present1 .sb-card a p::after {	content: '';	position: absolute;	top: 13px;	right: 0;	display: block;	width: 8px;	height: 8px;	border-top: 2px solid #fff;	border-right: 2px solid #fff;	transform: rotate(45deg);}#present1 .sb-card a p span { display: inline; }/* :hov */.pcmode #present1 .sb-card a:hover { background-color: #ffbb00; }@media screen and (max-width: 959px) {	#present1 .sb-card p { font-size: 1.8rem; }	#present1 .sb-card h3 { font-size: 3.2rem; }	#present1 .sb-card h3 span { display: inline-block; }	#present1 .sb-card h3 em { font-size: 1.6rem; }}@media screen and (max-width: 799px) {	#present1 .sb-card p br { display: inline; }	#present1 .sb-card figure {		top: -70px;		right: -20px;	}}@media screen and (max-width: 767px) {	#present1 .sb-card p { font-size: 1.6rem; }	#present1 .sb-card h3 { font-size: 2.8rem; }	#present1 .sb-card figure img { width: 180px; height: auto; }}@media screen and (max-width: 479px) {	#present1 .sb-card { padding: 110px 0 30px; }	#present1 .sb-card p,	#present1 .sb-card h3 { text-align: center; }	#present1 .sb-card figure {		top: -135px;		right: 50%;		transform: translateX(50%);	}	#present1 .sb-card a { margin: 20px auto 0; }}/* --------------------------------------------------- *//* ブランド *//* --------------------------------------------------- */#bland {	background-image: url('../../image/model/bland_bg.jpg');	background-repeat: no-repeat;	background-size: cover;	background-position: 50%;}#bland .contents {	padding: 60px 40px;	max-width: 720px;	background-color: rgba(255, 255, 255, 0.6);	text-align: center;	box-sizing: border-box;}#bland h3 {	font-size: 1.8rem;	font-weight: 700;}#bland h3::before {	content: '';	display: block;	margin: 0 auto 20px;	width: 200px;	height: 44px;	background-image: url('../../image/model/roof.png');	background-size: cover;	background-position: 50% 50%;}#bland h3 span { display: inline-block; }#bland h2 {	margin: 0 0 20px 0;	font-size: 4.8rem;	font-weight: 700;	line-height: 1.3;}#bland p {	font-size: 1.6rem;	font-weight: 700;}#bland p span { display: inline-block; }@media screen and (max-width: 767px) {	#bland .contents { padding: 40px 25px; }	#bland h3 { font-size: 1.6rem; }	#bland h3::before {		width: 150px;		height: 33px;	}	#bland h2 { font-size: 4.8rem; line-height: 1.1; }	#bland h2 span { display: block; }}@media screen and (max-width: 479px) {	#bland p {		font-size: 1.6rem;		text-align: left;	}	#bland p span { display: inline; }	#bland p br { display: none; }}@media screen and (max-width: 419px) {	#bland .contents { padding: 25px 15px; }	#bland h3 { font-size: 1.4rem; }	#bland h3::before {		margin: 0 auto 10px;		width: 100px;		height: 22px;	}	#bland h2 { font-size: 4.2rem; }	#bland p { font-size: 1.4rem; }}/* --------------------------------------------------- *//* コンセプト *//* --------------------------------------------------- */#concept h3 {	font-size: 1.8rem;	font-weight: 700;	text-align: center;}#concept h2 {	margin: 0 0 20px 0;	font-size: 4.8rem;	font-weight: 700;	line-height: 1.3;	text-align: center;}#concept h2 span { display: inline-block; padding: 0 15px; }#concept p {	font-size: 1.6rem;	font-weight: 700;	text-align: center;}#concept p span { display: inline-block; }@media screen and (max-width: 767px) {	#concept h3 { font-size: 1.6rem; }}@media screen and (max-width: 419px) {	#concept h3 { font-size: 1.4rem; }	#concept h2 { font-size: 3.6rem; }	#concept p { font-size: 1.4rem; text-align: left; }	#concept p span { display: inline; }}/* --------------------------------------------------- *//* こだわり *//* --------------------------------------------------- */.future { margin-top: 60px; }.future dl dt {	position: relative;	padding: 0 0 20px 0;}.future dl dt::after {	content: '';	position: absolute;	left: 0;	bottom: 0;	display: block;	width: 100%;	height: 100px;	background: linear-gradient(to bottom, rgba(255,255,255,0.0) 0, #fbf9f0 95%);}.future dl dt figure {	margin: 0 auto;	width: 100%;	max-width: 1120px;}.future dl dt figure img { width: 100%; }.future dl dd {	margin: -2px 0 0 0;	padding: 30px 0 70px;	background-color: #fbf9f0;}.future dl dd > div {	margin: 0 auto;	width: 90%;	max-width: 800px;}.future h3 {	font-size: 2.4rem;	font-weight: 700;	text-align: center;}.future h3 span { display: inline-block; }.future p {	margin-top: 30px;	font-size: 1.6rem;}.future ul {	display: table;	margin: 60px auto 0;	width: 90%;	max-width: 1040px;}.future ul li { display: table-cell; width: 50%; }.future ul li figure {	margin: 0 auto;	width: 92%;}.future ul li figure img { width: 100%; height: auto; }/* 個別設定 */#kaze.future h2,#hikari.future h2,#ondo.future h2,#sozai.future h2 {	position: absolute;	top: 50%;	left: 50%;	width: 70%;	max-width: 900px;	height: 100%;	z-index: 1;	transform: translate(-50%, -50%); }#kaze.future h2 img,#hikari.future h2 img,#ondo.future h2 img,#sozai.future h2 img {	position: absolute;	width: 33%;	max-width: 270px;	height: auto;	transform: translate(-50%, -50%); }#kaze.future h2 img { top: 80%; left: 0;}#hikari.future h2 img { top: 80%; left: 100%;}#ondo.future h2 img { top: 25%; left: 0;}#sozai.future h2 img { top: 25%; left: 100%;}#plan.future h2 {	position: relative;	margin: 0 0 20px 0;	font-size: 3.6rem;	font-weight: 700;	text-align: center;}#plan.future h2::before {	content: '';	display: block;	margin: 0 auto;	width: 200px;	height: 44px;	background-image: url('../../image/model/roof.png');	background-size: cover;	background-position: 50% 50%;}#plan.future figure ul li { display: table-cell; width: 33%; }#plan.future figure ul li a{	margin: 0 auto;	width: 100%;}#plan.future figure ul li img { width: 100%; height: auto;} @media screen and (max-width: 959px) {	.future dl dd { padding: 80px 0 0; }	.future ul { width: 100%; }	.future ul li { display: table-cell; width: 50%; }	.future ul li figure { width: 100%; }}@media screen and (max-width: 767px) {	.future { margin-top: 50px; }	.future dl dt::after { height: 80px; }	.future dl dd { padding: 80px 0 0; }	.future h3 { font-size: 2.0rem; }	.future p {		margin-top: 25px;		font-size: 1.4rem;	}	#kaze.future h2 img,	#hikari.future h2 img,	#ondo.future h2 img,	#sozai.future h2 img {  top: 100%; left: 50%; width: 140px; }	#plan.future dl dd { padding: 30px 0 0; }	#plan.future h2 { font-size: 3.2rem; }	#plan.future h2::before {		width: 150px;		height: 33px;	}}@media screen and (max-width: 559px) {	.future dl dd { padding: 80px 0 50px; }	.future ul { margin : 0 auto; width: 90%; }	.future ul li { display: block; margin: 40px auto 0; width: 100%; }	#plan.future dl dd { padding: 20px 0 50px; }}@media screen and (max-width: 419px) {	.future { margin-top: 40px; }	.future dl dt::after { height: 50px; }	.future dl dd { padding: 80px 0 40px; }	.future h3 { font-size: 1.8rem; }	.future p { margin-top: 20px; }	.future ul li { display: block; margin: 30px auto 0; width: 100%; }	#kaze.future h2 img,	#hikari.future h2 img,	#ondo.future h2 img,	#sozai.future h2 img {  top: 105%; left: 50%; width: 120px; }	#plan.future dl dd { padding: 10px 0 40px; }	#plan.future h2 { margin: 0 0 10px 0; font-size: 2.8rem; }	#plan.future h2::before {		width: 100px;		height: 22px;	}}/* --------------------------------------------------- *//* フロートボタン *//* --------------------------------------------------- */@media screen and (min-width: 768px) {	.btn-contact {		position: fixed;		top: 50%;		right: 0;		z-index: 555;		transform: translateY(-50%);	}	.btn-contact a {		display: table;		padding: 18px 15px;		background-color: #ff6419;		border-radius: 5px 0 0 5px;		box-shadow: 0 0 4px rgba(0,0,0, 0.2);		color: #fff;		font-family: 'Kosugi Maru', sans-serif;		font-size: 1.6rem;		line-height: 1.2;		transition: 0.5;	}	.btn-contact a { opacity: 0.0; transform: translateY(-25%); }	.btn-contact.dispon a { 50%; opacity: 1.0; transform: translateY(-50%); }}@media screen and (max-width: 767px) {	.btn-contact { margin: 40px auto 0; }	.btn-contact a {		display: table;		margin: 0 auto;		width: 180px;		background-color: #ff6419;		border-radius: 18px;		color: #fff;		font-family: 'Kosugi Maru', sans-serif;		font-size: 1.6rem;		line-height: 36px;		text-align: center;	}	.btn-contact a span br { display: none; }}@media screen and (max-width: 419px) {	.btn-contact { margin: 30px auto 0; }	.btn-contact a {		border-radius: 16px;		font-size: 1.4rem;		line-height: 32px;	}}.pcmode .btn-contact a:hover { background-color: #ffbb00; }/* --------------------------------------------------- *//* ギャラリー *//* --------------------------------------------------- */#gallery h3 {	display: table;	margin: 0 auto;}#gallery h3 img { width: 200px; height: auto; }#gallery h2 {	font-size: 3.2rem;	font-weight: 700;	text-align: center;}#gallery blockquote { margin-left: 2%; padding: 30px 0; }#gallery blockquote p {	margin-top: 25px;	font-size: 1.6rem;	letter-spacing: 0.15em;	line-height: 2.2;	text-align: center;}#gallery blockquote p span { display: inline-block; }#gallery .slider {	display: table;	margin: 30px auto 0;	width: 100%;}#gallery .slider li {	display: inline-block;	width: 25%;	float: left;}#gallery .slider li img { width: 100%; height: auto; }.pcmode #gallery .slider li a:hover { opacity: 0.5; }@media screen and (max-width: 959px) {	#gallery .slider li { width: 33.3%; }}@media screen and (max-width: 767px) {	#gallery h3 { margin: 0 auto; }	#gallery h3 img { width: 150px; }	#gallery h2 { font-size: 2.6rem; }	#gallery blockquote { margin-left: 3%; padding: 10px 0 30px; }	#gallery blockquote p { font-size: 1.4rem; }	#gallery .slider { margin:  30px auto 0; }	#gallery .slider li { width: 50%; }}@media screen and (max-width: 419px) {	#gallery h3 { margin: 0 auto; }	#gallery h3 img { width: 100px; }	#gallery h2 { font-size: 2.0rem; }	#gallery blockquote { margin-left: 5%; padding: 0 0 20px; }	#gallery blockquote p { letter-spacing: 0.12em; }	#gallery .slider { margin:  20px auto 0; }}/* --------------------------------------------------- *//* ご成約キャンペーン *//* --------------------------------------------------- */#reaching { background-color: #22a7d9; }#reaching h2 {	margin-bottom: 20px;	color: #fff;	font-size: 3.6rem;	font-weight: 700;	line-height: 1.3;	text-align: center;}#reaching h2 + p {	color: #fff;	font-size: 1.8rem;	text-align: center;}#reaching h2 + p span { display: inline-block; }#reaching ul {	display: table;	margin: 40px auto 30px;	width: 100%;}#reaching ul li {	display: table-cell;	width: 50%;	vertical-align: top;	box-sizing: border-box;}#reaching ul li:first-child { padding: 0 3% 0 0; }#reaching ul li:last-child { padding: 0 0 0 3%; }#reaching ul li h4 {	display: block;	margin: 0 auto 20px;	background-color: #fff;	color: #22a7d9;	font-size: 1.8rem;	font-weight: 700;	line-height: 42px;	text-align: center;}#reaching ul li h3 {	color: #fff;	font-size: 2.0rem;	font-weight: 700;}#reaching p {	color: #fff;	font-size: 1.4rem;}#reaching p.note { font-size: 1.2rem; }#reaching ul li figure {	display: inline-block;	padding: 0 0 10px 30px;	width: 210px;	float: right;}#reaching ul li figure img { width: 100%; height: auto; }@media screen and (max-width: 959px) {	#reaching ul li figure {		display: block;		margin-bottom: 10px;		padding: 0;		width: 100%;		float: none;	}}@media screen and (max-width: 767px) {	#reaching h2 { margin-bottom: 15px; font-size: 3.2rem; }	#reaching h2 + p { font-size: 1.6rem; }	#reaching ul { margin: 30px auto 20px; }	#reaching ul li:first-child { padding: 0 2% 0 0; }	#reaching ul li:last-child { padding: 0 0 0 2%; }	#reaching ul li h4 { font-size: 1.6rem; }	#reaching ul li h3 { font-size: 1.8rem; }	#reaching p.note { font-size: 1.1rem; }}@media screen and (max-width: 419px) {	#reaching h2 { margin-bottom: 10px; font-size: 2.4rem; }	#reaching h2 + p { font-size: 1.4rem; }	#reaching ul { margin: 20px auto; }	#reaching ul li { display: block; width: 100%; }	#reaching ul li:first-child { padding: 0; }	#reaching ul li:last-child { margin-top: 20px; padding: 0; }	#reaching p.note { font-size: 1.0rem; }}/* --------------------------------------------------- *//* アクセス *//* --------------------------------------------------- */#access { text-align: center; }#access .inblock {	margin: 0 auto;	width: 90%;}#access h2 {	margin: 0 0 20px 0;	font-size: 4.2rem;	font-weight: 700;	line-height: 1.3;}#access h2::before {	content: '';	display: block;	margin: 0 auto 20px;	width: 200px;	height: 44px;	background-image: url('../../image/model/roof.png');	background-size: cover;	background-position: 50% 50%;}#access h2 + p {	font-family: 'Kosugi Maru', sans-serif;	font-size: 1.8rem;	font-weight: 700;}#access .gmap { margin: 30px auto; }#access .gmap iframe { width: 100%; height: 480px; }#access address { font-style: normal; }#access address h3 {	position: relative;	display: table;	margin: 0 auto;	padding: 0 54px;	font-family: 'Kosugi Maru', sans-serif;	font-size: 4.2rem;	letter-spacing: 0.2em;}#access address h3::before,#access address h3::after {	position: absolute;	top: -5px;	color: #bbb;	font-size: 4.8rem;}#access address h3::before {	content: '“';	left: 0;}#access address h3::after {	content: '”';	right: 0;}#access address p { font-size: 2.0rem; }#access address a {	display: table;	margin: 20px auto 0;	padding: 0 15px;	width: 60%;	max-width: 240px;	background-color: #22a7d9;	border-radius: 21px;	color: #fff;	font-size: 1.6rem;	line-height: 42px;	box-sizing: border-box;}/* :hov */.pcmode #access address a:hover { opacity: 0.5; }@media screen and (max-width: 767px) {	#access h2 { margin: 0 0 15px 0; font-size: 3.6rem; }	#access h2::before {		width: 150px;		height: 33px;	}	#access h2 + p { font-size: 1.6rem; }	#access .gmap { margin: 20px auto; }	#access .gmap iframe { width: 100%; height: 360px; }	#access address h3 {		padding: 0 48px;		font-size: 3.6rem;	}	#access address h3::before,	#access address h3::after {		top: -5px;		font-size: 4.2rem;	}	#access address p { font-size: 1.8rem; }	#access address a { margin: 15px auto 0; }}@media screen and (max-width: 419px) {	#access h2 { margin: 0 0 10px 0; font-size: 2.8rem; }	#access h2::before {		margin: 0 auto 10px;		width: 100px;		height: 22px;	}	#access h2 + p { font-size: 1.4rem; }	#access .gmap iframe { width: 100%; height: 280px; }	#access address h3 {		padding: 0 42px;		font-size: 3.2rem;	}	#access address h3::before,	#access address h3::after {		top: -5px;		font-size: 3.6rem;	}	#access address p { font-size: 1.6rem; }	#access address a {		border-radius: 18px;		font-size: 1.4rem;		line-height: 36px;	}}/* --------------------------------------------------- *//* 販売 *//* --------------------------------------------------- */#owner {	background-color: #a3d102;	color: #fff;	text-align: center;}#owner h2 {	margin-bottom: 10px;	font-size: 3.2rem;	font-weight: 700;}#owner h2 span { display: inline-block; }#owner p span {	display: inline-block;	font-size: 1.6rem;}@media screen and (max-width: 419px) {	#owner h2 { font-size: 2.8rem; }	#owner p span { font-size: 1.4rem; }}/* --------------------------------------------------- *//* プレゼント下部 *//* --------------------------------------------------- */#present2 {	position: relative;	margin: 0;	background-color: #fbf9f0;}#present2 .campaign {	padding: 30px 4%;	background-color: #008341;}#present2 .campaign h2,#present2 .campaign p {	position: relative;	color: #fff;	font-size: 1.8rem;	font-weight: 700;	text-align: center;	z-index: 3;}#present2 .campaign h2 { font-size: 4.2rem; line-height: 1.3; }#present2 .campaign h2 span { display: inline-block; }#present2 .campaign h2 + p { font-size: 2.8rem; }@media screen and (max-width: 767px) {	#present2 .campaign { padding: 20px 4%; }	#present2 .campaign p { font-size: 1.4rem; }	#present2 .campaign h2 { font-size: 3.2rem; }	#present2 .campaign h2 + p { font-size: 1.8rem; }}@media screen and (max-width: 419px) {	#present2 .campaign { padding: 15px 4%; }	#present2 .campaign p { font-size: 1.2rem; }	#present2 .campaign h2 { font-size: 2.8rem; }	#present2 .campaign h2 + p { font-size: 1.6rem; }}/* おみやげ */#present2 .sb-card {	position: relative;	padding: 40px 3%;	background-color: #fff;	box-shadow: 2px 2px 13px rgba(0, 0, 0, 0.12);}#present2 .sb-card .contents { position: relative; }#present2 .sb-card p {	font-size: 2.0rem;	font-weight: 700;}#present2 .sb-card p br { display: none; }#present2 .sb-card h3 {	color: #008341;	font-size: 3.6rem;	font-weight: 700;	line-height: 1.4;}#present2 .sb-card h3 span { display: inline-block; }#present2 .sb-card h3 em {	display: block;	font-size: 1.8rem;	font-weight: 700;}#present2 .sb-card figure {	position: absolute;	top: -20px;	right: 0;	display: table;}@media screen and (max-width: 1039px) {	#present2 .sb-card p { font-size: 1.8rem; }	#present2 .sb-card p br { display: inline; }	#present2 .sb-card h3 { font-size: 3.2rem; }	#present2 .sb-card h3 span { display: inline-block; }	#present2 .sb-card h3 em { font-size: 1.6rem; }	#present2 .sb-card figure img { width: 180px; height: auto; }}@media screen and (max-width: 899px) {	#present2 .sb-card figure {		top: -60px;		right: -30px;	}}@media screen and (max-width: 767px) {	#present2 .sb-card { box-shadow: 2px 2px 9px rgba(0, 0, 0, 0.10); }	#present2 .sb-card p { font-size: 1.6rem; }	#present2 .sb-card h3 { margin: 15px 0 0 0; font-size: 2.8rem; }}@media screen and (max-width: 579px) {	#present2 .sb-card {		padding: 110px 0 30px;		box-shadow: 2px 2px 7px rgba(0, 0, 0, 0.08);	}	#present2 .sb-card p,	#present2 .sb-card h3 { text-align: center; }	#present2 .sb-card p { font-size: 1.4rem; }	#present2 .sb-card h3 { margin: 0; font-size: 2.4rem; }	#present2 .sb-card figure {		top: -125px;		right: 50%;		transform: translateX(50%);	}	#present2 .sb-card figure img { width: 160px; height: auto; }}/* --------------------------------------------------- *//* お問い合わせ *//* --------------------------------------------------- */#contact { background-color: #fbf9f0; }#contact .contents {	padding: 50px;	background-color: #fff;	box-sizing: border-box;	box-shadow: 2px 2px 13px rgba(0, 0, 0, 0.12);}#contact blockquote {	margin: 0 auto;	max-width: 860px;}#contact h2 {	margin: 0 0 20px 0;	color: #ff6419;	font-size: 3.6rem;	font-weight: 700;	text-align: center;}#contact blockquote p.privacy-link {	margin-top: 10px;	font-size: 1.2rem;	text-align: right;}#contact blockquote p.privacy-link a { color: #ff6419; }#contact h3 { display: inline-block; }#contact .requir h3::after {	content: '必須';	margin-left: 10px;	color: #ff6419;	font-size: 1.0rem;}#contact form {	margin: 40px auto 0;	max-width: 860px;}.contact-tbl { border-top: 1px dotted #ccc; }.contact-tbl dt {	display: inline-block;	padding: 15px 0 0 0;	width: 180px;	float: left;}.contact-tbl dd {	padding: 15px 0 15px 200px;	border-bottom: 1px dotted #ccc;}.contact-tbl dd div { min-height: 26px; }.contact-tbl dd span {	display: inline-block;	margin-left: 8px;	font-size: 1.2rem;}.btns {	margin: 30px 0 0 0;	text-align: center;}@media screen and (max-width: 767px) {	#contact .contents {		padding: 40px 5%;		box-shadow: 2px 2px 9px rgba(0, 0, 0, 0.10);	}	#contact h2 { font-size: 2.4rem; }	#contact form { margin: 30px auto 0; }	.contact-tbl dt {		padding: 15px 0 0 0;		width: 100%;		float: none;	}	.contact-tbl dd { padding: 10px 0 15px 15%; }	.btns { margin: 20px 0 0 0; }}@media screen and (max-width: 419px) {	#contact .contents {		padding: 30px 5%;		box-shadow: 2px 2px 7px rgba(0, 0, 0, 0.08);	}	#contact h2 { margin: 0 0 10px 0; font-size: 2.0rem; }	#contact blockquote p.privacy-link { margin-top: 5px; }	#contact form { margin: 20px auto 0; }	.contact-tbl dd { padding: 10px 0 15px 0; }}p.failfeild {	display: block;	color: #ee0000;	font-size: 1.2rem;	font-weight: 700;}/* --------------------------------------------------- *//* 確認画面 *//* --------------------------------------------------- */#contact.comfirm .contents a:last-child { opacity: 0.0; }/* --------------------------------------------------- *//* 完了画面 *//* --------------------------------------------------- */#thanks .contents {	padding: 50px;	background-color: #fff;	box-sizing: border-box;	box-shadow: 2px 2px 13px rgba(0, 0, 0, 0.12);}#thanks blockquote {	margin: 0 auto;	max-width:  800px;}#thanks h2 {	margin: 0 0 20px 0;	color: #ff6419;	font-size: 3.2rem;	font-weight: 700;	text-align: center;}#thanks h2 span { display: inline-block; }#thanks p { font-size: 1.6rem; }#thanks .btn-back {	display: table;	margin: 30px auto 0;}#thanks .btn-back a {	display: table;	padding: 0 24px;	width: 240px;	background-color: #ff6419;	border-radius: 21px;	color: #fff;	font-family: 'Kosugi Maru', sans-serif;	font-size: 1.6rem;	line-height: 42px;	text-align: center;	box-sizing:border-box;}.pcmode #thanks .btn-back a:hover { background-color: #ffbb00; }@media screen and (max-width: 767px) {	#thanks .contents {		padding: 40px 5%;		box-shadow: 2px 2px 9px rgba(0, 0, 0, 0.10);	}	#thanks h2 { font-size: 2.4rem; }	#thanks p { font-size: 1.4rem; }}@media screen and (max-width: 419px) {	#thanks .contents {		padding: 30px 5%;		box-shadow: 2px 2px 7px rgba(0, 0, 0, 0.08);	}	#thanks h2 { font-size: 2.0rem; }	#thanks .btn-back {		display: table;		margin: 30px auto 0;		width: 70%;	}	#thanks .btn-back a {		width: 100%;		border-radius: 18px;		font-size: 1.4rem;		line-height: 36px;	}}