@charset "UTF-8";

/* ------------------------------------------------------------ */
/* 下層共通 */
/* ------------------------------------------------------------ */
.sub {
	
}

.sub .content {
	padding: 80px 0 0;
}

.sub .post_content {
	margin: 0 auto 80px;
}


/* ------------------------------------------------------------ */
/* ページタイトル */
/* ------------------------------------------------------------ */
section.pagetitle {
	padding: 60px 0 0;
}

.pagetitle h2 {
	margin: 0 auto;
	font-size: 14px;
}

.pagetitle h2 span {
	font-size: 28px;
}

.pagetitle h2 span span {
	font-size: 1.4em;
}


/* ------------------------------------------------------------ */
/* concept */

.concept .box {
	background: #fff;
	padding: 60px;
	margin: 0 auto 120px;
}

.concept .box .image {
	width: 50%;
	max-width: 400px;
	margin: 0 auto 50px;
}

.concept .box .image:first-child {
	max-width: 420px;
	padding: 40px 0 0;
}

.concept .box h3 {
	text-align: center;
	letter-spacing: .05em;
}

.concept .box .item.txt {
	width: 66%;
	line-height: 1.8;
	margin: 0 auto 40px;
	font-size: 15px;
}


.concept .column {
	justify-content: center;
	align-content: center;
	align-items: center;
	margin: 0 auto 120px;
}

.concept .column:nth-child(even) {
	flex-direction: row-reverse;
}

.concept .column .item {
	margin: 0 auto;
}

.concept .column .item:first-child {
	 width: 45%;	
}

.concept .column .item:last-child {
	width: 55%;				
}

.concept .column:nth-child(odd) .item:first-child {
	text-align: right;
}

.concept .column:nth-child(even) .item:first-child {
	text-align: left;
}

.concept .column:nth-child(odd) .item:last-child {
	padding: 0 6em 0 1em;
	background: #fff5ef;
}

.concept .column:nth-child(even) .item:last-child {
	padding: 0 1em 0 6em;
	background: #fff5ef;
}

.concept .animated {
	-webkit-animation-duration: 1.2s;
	animation-duration: 1.2s;
}

.concept .item h4 {
	font-size: 20px;
	margin: 0 auto 15px;
	letter-spacing: .1em;	
}

.concept .item h4 span {
	display: block;
	font-size: 16px;
	margin: 0 auto 5px;	
}

.concept .item h4 span span {
	display: inline;
	font-size: 1.6em;
}
.concept .item .txt {
	font-size: 12px;
	line-height: 2;
}



/* ------------------------------------------------------------ */
/* lineup一覧 */
.sub.lineup .acWrap {
	width: 90%;
	margin: 0 auto 60px;
}

.acWrap .ac_tit {
	padding: 20px 50px;
	color: #fff;
	position: relative;
	margin: 0 auto 20px;
}

.ac_tit h3 {
	font-size: 16px;
}

.ac_tit h3 span {
	display: block;
	font-size: 28px;
	letter-spacing: .1em;
}

.ac_tit h3 span span {
	display: inline;
	font-size: 1.4em;
}

.ac_tit.active {
	margin: 0 auto;
}

.ac_tit::after {
	content: "";
	display: block;
	clear: both;
}


.ac_tit::before {
	content: "\f055";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: 2em;
	position: absolute;
	top: 50%;
	right: 30px;
	transform: translateY(-50%);
}

.ac_tit.active::before {
	content: "\f056";
}

.ac_tit .floatR {
	width: 42%;
	margin: 0;
	padding: 0 40px 0 0;
	line-height: 2;
}

#ac01 {
	background: url(../img/lineup/bg-actit-classic.png) no-repeat center / cover;
}
#ac02 {
	background: url(../img/lineup/bg-actit-lux.png) no-repeat center / cover;
}
#ac03 {
	background: url(../img/lineup/bg-actit-modern.png) no-repeat center / cover;
}


.acWrap .acBox {
	display: none;
	background: #808080;
	margin: 0 auto 20px;
	padding: 50px 50px 10px;
	color: #fff;
}

.sub.lineup .col03 {
	margin: 0 auto;
	flex-wrap: wrap;	
	text-align: center;	
}

.sub.lineup .col03 .item {
	margin: 0 0 40px;
	padding: 0 10px;	
}

.sub.lineup .acBox a {
	color: #fff;
}

.sub.lineup .thum {
	/*height: 195px;*/
	height: 140px;
}

.sub.lineup .thum img {
	height: 100%;
	max-width: inherit;
}


.sub.lineup .col03 h4 {
	font-size: 11px;
	margin: 0 auto 5px;
}

.sub.lineup .col03 h4 span {
	display: block;
	font-size: 18px;
	letter-spacing: .1em;
	line-height: 1;	
}

.sub.lineup .col03 h4 span span {
	display: inline;
	font-size: 1.4em;
}

/* collection */
.sub.lineup .box {
	width: 90%;
	margin: 0 auto;
	padding: 40px 50px 10px;
	border: 1px solid #745f43;
}

.box .ac_tit {
	margin: 0 auto 30px;
}

.box .ac_tit .floatR {
	width: 68%;
}

.box .ac_tit::before {
	display: none;
}

/* ------------------------------------------------------------ */
/* lineup詳細 */
.sub.lineup.page-child .content {
	padding: 0;
} 

.basestyleWrap {
	width: 100%;
	height: auto;
	margin: 0 auto;
/*	padding: 80px 0;*/
}

.bx-wrapper img {
	max-width: 100%;
	display: block;
	height: auto;
}

/*.style02 {
	background-image: url(../img/style/02/style02main.jpg);
	background-size: cover;
	background-position: center top;
}
*/


/* ------------------------------------------------------------ */
/* shop一覧 */
.tabWrap {
	width: 100%;
	height: auto;
	margin: 0 auto 60px;
}


.tabBtn {
	width: 100%;
	margin: 0;
	font-size: 0;
	background: #999;
}

.tabBtn a {
	width: calc(100%/6 - 1px);
	color: #fff;
	display: inline-block;
	vertical-align: middle;
	margin: 0 1px 0 0;
	padding: 12px 10px;
	font-size: 16px;
	background: #000;
	text-align: center;
}

.tabBtn a.current,
.tabBtn a:hover {
	background: #808080;	
}

.tabBtn a.current:hover {
	background: #000;	
}

.tabBox {
	background: #808080;
	padding: 80px 40px 40px;
}

.tabBox .item {
	border-top: 1px solid #fff;
	padding: 40px 0 0;
	margin: 0 auto 40px;
}

.tabBox .item::after {
	content: "";
	display: block;
	clear: both;
}


.shopList .shop_name {
	margin: 0 auto 30px;
	color: #fff;	
	width: 100%;
	display: table;
}

.shopList .shop_name h4 {
	width: 45%;	
	display: table-cell;
	vertical-align: top;
	font-size: 18px;
	letter-spacing: .05em;
	line-height: 1.8;
}

.shopList .shop_name h4 .tag {
	display: inline-block;
	color: #808080;
	padding: 0 10px;
	background: #fff;
	font-size: 12px;
	margin: 0 0 8px;
}

.shopList .shop_name a.phone {
	color: #fff;
	display: block;
	margin: 8px 0 0;
	padding: 0 0 0 1.2em;
	line-height: 1.2;	
	position: relative;
}

.shopList .shop_name a.phone::before {
	content: "\f095";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	font-size: .8em;
	line-height: 1;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%) rotate(100deg);
}

.shopList .shop_name .shop_info {
	width: 55%;
	display: table-cell;
	vertical-align: top;
}

.shop_info dl {
	width: 100%;
	display: table;
	font-size: 13px;
	margin: 0 auto 5px;
}
.shop_info dl dt,
.shop_info dl dd {
	display: table-cell;
	vertical-align: top;
}

.shop_info dl dt {
	width: 25%;
	padding: 0 10px 0 0;
}

.shop_info a {
	color: #fff;
}
.shop_info a:hover {
	color: #e96d3c;
}

.shopList .shop_map {
	width: 100%;
	height: 230px;
	margin: 0 auto 20px;	
	overflow: hidden;
}

.shopList .shop_map iframe {
	width: 100%;
	height: 100%;
}

.shopList .btn {
	float: right;
	width: 150px;
}

.shopList .btn a {
	font-size: 12px;
	padding: 8px 10px;
	color: #e96d3c;
	border: none;
	background: #fff;
	border-radius: 30px;
}

.shopList .btn a:hover {
	color: #fff;	
	background: #e96d3c;
}


/* FSM　shopエリアマップ */
.fsm_shop .tabBox {
	padding: 20px 60px 40px;
	position: relative;
}

.cat_style .tabBtn a {
	width: calc(100%/2 - 1px);
}

.fsm_shop ul.list {
	width: 180px;
	position: absolute;
	top: 40px;
	left: 80px;
}

 ul.list li {
	width: 100%;
	height: auto;	
	margin: 0 auto;
	padding: 10px 0;	
	border-bottom: 1px solid #fff;
}

 ul.list li a {
	 color: #fff;
}

 ul.list li.hover a {
	 color: #e96d3c;
}

.shopMap {
	width: 518px;
	height: 583px;
	margin: 0 0 0 auto;
	position: relative;
}

.shopMap ul.list {
	width: 100%;
	height: 100%;	
	margin: 0;
	padding: 0;	
	position: relative;
	top: inherit;
	left: inherit;
	
}

.shopMap ul.list li {
	margin: 0;
	padding: 0;
	position: absolute;
	cursor: pointer;
	border: none;
}

.shopMap li a {
	display: block;
	width: 100%;
	height: 100%;
	background-image: url(../img/fsm_shop.png);
	background-repeat: no-repeat;	
	text-indent: -9999px;
	opacity: 0;
	visibility: hidden;	
}

.shopMap li.hover a,
.shopMap li:hover a {
	opacity: 1;
	visibility: visible;
}

.sprite {
	background-image: url(../img/fsm_shop.png);
	background-repeat: no-repeat;
	background-position: -5px -5px;	
}

/* 北海道 */
.shopMap li.hokkaido {
	width: 200px;
	height: 365px;	
	top: 0;
	left: 305px;
}

.hokkaido a {
	background-position: -838px -598px;
}

.shopMap li.kanto {
	width: 75px;
	height: 98px;	
	bottom: 140px;
	left: 280px;
}

.kanto a {
	background-position: -1341px -350px;
}

.shopMap li.chubu {
	width: 135px;
	height: 152px;
	bottom: 140px;
	left: 195px;
}

.chubu a {
	background-position: -728px -296px;
}

.shopMap li.kinki {
	width: 80px;
	height: 90px;
	bottom: 98px;
	left: 158px;
}

.kinki a {
	background-position: -1218px -993px;
}

.shopMap li.chugoku {
	width: 116px;
	height: 107px;
	bottom: 73px;
	left: 55px;
	z-index: 2;
}

.chugoku a {
	background-position: -60px -1001px;
}

.shopMap li.kyushu {
	width: 100px;
	height: 338px;
	bottom: 15px;
	left: 15px;
	z-index: 1;
}

.kyushu a {
	background-position: -20px -1421px;
}



/* ------------------------------------------------------------ */
/* modelhouse一覧 */

.modelhouse {
	
}

/* スタイルから探す */
.cat_style .tabBtn a {
	width: calc(100%/2 - 1px);
}

.modelhouse .col03 {
	margin: 0 auto;
	flex-wrap: wrap;
	text-align: center;
}

.modelhouse .tabBox .col03 .item {
	margin: 0 0 40px;
	padding: 0 10px;
}

.cat_style .tabBox .item {
	border-top: none;
	padding: 0;
	margin: 0 auto 40px;
}

.cat_style .model .tabBox .item {
	border-top: 1px solid #fff;
	padding: 40px 0 0;
}

.modelhouse .acBox a {
	color: #fff;
}

.modelhouse .acBox .thum,
.modelhouse .thumItem .thum {
	width: 100%;
	/*height: 195px;*/
	height: 175px;
	margin: 0 auto 10px;
	overflow: hidden;
	position: relative;
}

.modelhouse .thumItem .thum {
	height: auto;
}

.modelhouse .acBox .thum img/*,
.modelhouse .thumItem .thum img*/ {
	height: 100%;
	max-width: inherit;	
	position: absolute;
	top: 50%;
	left: 50%;
	transform-origin: top left;
	transform: translate(-50%, -50%);
	-webkit-transition: transform 0.5s linear;
	transition: transform 0.5s linear;
}

.modelhouse .thumItem .thum img {
	/*width: 100%;*/
}

.modelhouse a:hover .thum img/*,
.modelhouse .thumItem .thum:hover img*/ {
    transform: scale(1.2) translate(-50%, -50%);
}

.modelhouse .acBox .col03 h4,
.modelhouse .thumItem h4 {
	font-size: 11px;
	margin: 0 auto 5px;
}

.modelhouse .acBox .col03 h4 span,
.modelhouse .thumItem h4 span {
    display: block;
    font-size: 18px;
    letter-spacing: .1em;
    line-height: 1;
}

.modelhouse .acBox .col03 h4 span span,
.modelhouse .thumItem h4 span span {
    display: inline;
    font-size: 1.4em;
}


/* エリアから探す */

.cat_area {
	
}

.modelhouse .shopList .shop_name .txtItem,
.modelhouse .shopList .shop_name .thumItem {
	display: table-cell;
	vertical-align: top;
}

.modelhouse .shopList .shop_name .txtItem {
	width: 65%;
	padding: 0 40px 0 0;
}

.modelhouse .shopList .shop_name h4 {
	width: 100%;
	display: block;
	margin: 0 0 10px;
}

.modelhouse .shopList .shop_name p {
	margin: 0 0 30px;
}

.modelhouse .shopList .shop_name .thumItem {
	width: 35%;
	text-align: center;	
}

.modelhouse .shopList .shop_name .btn {
	float: none;
	margin: 0;
}

/* スタイルから探す02 */
.cat_style .model .tabBox {
	padding: 40px;
}

.cat_style .model h3 {
	font-size: 11px;
	margin: 0 auto 30px;
	color: #fff;
	text-align: center;
}

.cat_style .model h3 span {
	display: block;
	font-size: 22px;
	letter-spacing: .1em;
	line-height: 1;
}

.cat_style .model h3 span span {
	display: inline;
	font-size: 1.4em;
}

.cat_style .model .shopList .shop_name .btn {
	width: auto;
	max-width: inherit;
	text-align: left;
}
.cat_style .model .shopList .shop_name .btn a {
	display: inline-block;
	width: 150px;	
	margin: 0 10px 0 0;
	text-align: center;
}




/* ------------------------------------------------------------ */
/* フォーム共通 */

.formWrap {
	width: 100%;
	height: auto;
	margin: 0 auto 60px;
	background: #808080;	
	padding: 60px 40px 40px;	
}

.formBox {
	color: #fff;	
	margin: 0 auto 40px;	
}

.formBox::after {
	content: "";
	display: block;
	clear: both;
}

.formBox span.required {
	color: #fff;
	background: #e96d3c;
	padding: 2px 8px;
	display: inline-block;
	margin: 0 0 0 1.5em;
	font-size: 11px;
	text-align: center;
	border-radius: 3px;
	vertical-align: middle;
}


.formBox dl {
	width: 100%;
	margin: 0 auto 15px;
	display: table;
}

.formBox dt,
.formBox dd {
	margin: 0 auto;
	display: table-cell;
	padding: 10px;
	vertical-align: middle;
}

.formBox dt {
	width: 28%;
}

.formBox dd {
	position: relative;
}

.formBox .textItem {
	display: block;
}

.formBox .textItem dt,
.formBox .textItem dd {
	display: block;
	width: 100%;
	padding: 0 10px 10px;
}


/*フォームのデフォルトスタイルのリセットはbase.css*/
/*フォーム*/
input,
select,
textarea {
	width: 100%;
	padding: 12px 10px;
	background: #fff;
	margin: 0 auto;
	border: 1px solid #4d4d4d;
	border-radius: 0;
	cursor: pointer;	
}

.formBox .sizeS input {
	width: 50%;
}


input[type="checkbox"],
input[type="radio"] {
	width: auto;
	min-width: auto;
}

textarea {
	height: 240px;
}


/* 確認画面のときに表示 */
.wpcf7-form.sent .formBox {
	display: none;
}

.wpcf7-form.sent .formBox.confirm {
	display: block;
	margin: 0 auto 20px;	
}

.formBox.confirm {
	margin: 0 auto 20px;
}

.formBox p.wpcf7c-elm-step2 {
	text-align: center;
	background: #e96d3c;
	color: #fff;
	padding: 5px 10px;
	margin: 0 auto;
	font-size: 1.1em;
}

/* 完了画面のときに表示 */
.wpcf7c-elm-step3 {
	margin: 0 auto;
	padding: 20px 0 0;
}

.formBox .wpcf7c-elm-step3 p {
	padding: 0;
	text-align: center;
	line-height: 2;
	margin: 0 auto 30px;
}

.formBox .wpcf7c-elm-step3 p.btn a {
	color: #e96d3c;
	border: none;
	background: #fff;
	border-radius: 30px;	
}

/* エラーメッセージ */
.formWrap div.wpcf7-response-output {
	margin: 0 auto 1em;
	background: #fff;
}

.formWrap .submitBox {
	margin: 0 auto;
	width: 100%;
	text-align: center;
	padding: 30px 0 0;
}


.formBox dd span.btn,
input[type="submit"],
input[type="reset"],
input[type="button"] {
	display: inline-block;
	font-size: 12px;
	padding: 8px 10px;
	color: #e96d3c;
	border: none;
	background: #fff;
	border-radius: 30px;
	margin: 0 10px 10px;
	width: 150px;
	transition: all .5s;
	-webkit-transition: all .5s;
}

.formBox dd span.btn {
	position: absolute;
	top: 12px;
	right: 0;
}


input[type="submit"]:hover,
input[type="reset"]:hover,
input[type="button"]:hover,
.formBox .wpcf7c-elm-step3 p.btn a:hover {
	color: #fff;	
	background: #e96d3c;
}

div.wpcf7 .ajax-loader {
	display: none !important;
	margin: 0 auto !important;
}


/* ------------------------------------------------------------ */
/* pamphlet */
.pamphlet .pagetitle {
	text-align: center;
}
.pamphlet .pagetitle p {
	padding: 40px 0 0;
}

.pamphlet .formBox h3 {
	font-size: 11px;
	padding: 0 0 20px;
	margin: 0 auto 30px;
	color: #fff;
	text-align: center;
	border-bottom: 1px solid #fff;		
}

.pamphlet .formBox h3 span {
	display: block;
	font-size: 22px;
	letter-spacing: .1em;
	line-height: 1;
}

.pamphlet .formBox h3 span span {
	display: inline;
	font-size: 1.4em;
}

.pamphlet .col03 {
	margin: 0 auto;
	flex-wrap: wrap;	
	text-align: center;	
}

.pamphlet .col03 .item {
	margin: 0 0 40px;
	padding: 0 10px;	
}

.pamphlet .customer {
	font-size: 13px;
	padding: 60px 0 0;
}

.pamphlet .customer h3 {
	font-size: 24px;
	border-bottom: none;	
	letter-spacing: .2em;
}

.pamphlet .customer p {
	margin: 0 0 30px;
}


.pamphlet .formWrap label {
	width: 100%;
	height: 100%;
	cursor: pointer;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
}

.pamphlet .formBox .thum {
	width: 100%;
	height: 195px;
	margin: 0 auto 15px;
	overflow: hidden;
	position: relative;
	z-index: 1;
}

.pamphlet .formBox .thum img {
	height: 100%;
	max-width: inherit;	
	position: absolute;
	top: 50%;
	left: 50%;
	transform-origin: top left;
	transform: translate(-50%, -50%);
	-webkit-transition: transform 0.5s linear;
	transition: transform 0.5s linear;
}

.pamphlet .formBox label:hover .thum img {
    transform: scale(1.2) translate(-50%, -50%);
}

.pamphlet .formBox .thum p {
	width: 100%;
	font-size: 16px;
	line-height: 2;
	letter-spacing: .1em;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	opacity: 0;
	visibility: hidden;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
	z-index: 3;
}

.pamphlet .formBox .thum::before {
	content: "";
	display: block;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0);
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transition: all .3s ease-in-out;
	transition: all .3s ease-in-out;
	z-index: 2;
}


.pamphlet .formWrap label:hover .thum p {
	opacity: 1;
	visibility: visible;
}
.pamphlet .formWrap label:hover .thum::before,
.pamphlet .formWrap label.disabled .thum::before {
	background: rgba(0,0,0,.25);
}


.pamphlet .formBox h4 {
	text-align: left;
}

.pamphlet .formBox h4 .check_label {
	display: block; 
	letter-spacing: .1em;
	line-height: 1;
	position: relative;
	height: 60px; 
}

.check_label span.check_label_kana {
	display: inline-block;
	font-size: 11px;
	position: absolute; 
	left: 35px; 
	top: 0; 
	vertical-align: top;
	word-wrap: break-word;
	word-break: break-all;	
}

.check_label span.check_label_kana span {
	display: block;
	font-size: 20px;
	margin: 0 0 5px;
}
.check_label span.check_label_kana span span {
	display: inline;
	font-size: 1.4em;
	line-height: 0.7;
}

.check_label .wpcf7-form-control-wrap {
	 position: inherit; 
	display: inline-block;
	width: 100%; 
}


.check_label span.wpcf7-list-item {
	display: inline;
	margin: 0;
}


.formWrap span.wpcf7-not-valid-tip {
	font-size: 11px;
	padding: 3px 5px;
	background: rgba(255,255,255,.8);
	display: block;	
}

.formWrap .check_label span.wpcf7-not-valid-tip {
	position: absolute;
	width: 100%;
	bottom: -35px;
	left: 0;
}

.pamphlet .formWrap label:hover .wpcf7-list-item-label,
.pamphlet .formWrap label.disabled .wpcf7-list-item-label {
	opacity: .7;
}


.pamphlet .formBox .check_label .wpcf7-list-item-label {
	text-indent: -9999px;
	display: none;
	opacity: 0;
}


.pamphlet .formBox input[type="checkbox"] {
	display: inline-block;
	vertical-align: top;	
	width: 24px;
	height: 24px;
	min-width: 24px;
	border: 2px solid #fff;
	background: none;
	-webkit-appearance: none;
	padding: 8px;
	position: relative;
}

.pamphlet .formBox input[type="checkbox"]:checked:after {
	content:"";
	display: block;
	width: 40px;
	height: 28px;
	background:url(../img/icon/icon-check.svg) no-repeat center top / 100% auto;
	position: absolute;
	bottom: 0;
	left: -5px;
	z-index: 10;
}

.pamphlet .formBox input[type="checkbox"]:checked:focus {
	outline: 0;
}

.pamphlet .formBox input[type="checkbox"]:disabled,
.pamphlet .formBox input.wpcf7c-conf[type="checkbox"]:disabled {
	background: #666 !important;
	border-color: #4d4d4d;
}





@media screen and (max-width: 1023px) {
/* 1023px以下用（スマートフォン用）の記述 */
	
/* ------------------------------------------------------------ */
/* 下層共通 */
/* ------------------------------------------------------------ */
.sub .content {
}

.sub .post_content {
	margin: 0 auto 50px;
}
	
/* ------------------------------------------------------------ */
/* ページタイトル */
/* ------------------------------------------------------------ */
section.pagetitle {
	padding: 20px 0 0;
}

	
/* ------------------------------------------------------------ */
/* concept */
.concept .box {
	padding: 40px;
	margin: 0 auto 80px;
}	

.concept .box .image {
	width: 60%;
	margin: 0 auto 40px;
}
	
.concept .box .image:first-child {
	padding: 20px 0 0;
}	
	
.concept .box .item.txt {
	width: 85%;
	margin: 0 auto 20px;
	font-size: 1em;
}	
	
.concept .column {
	margin: 0 auto 80px;
}	
	
.concept .column:last-child {
	margin: 0 auto;
}	
	
.concept .item h4 {
	font-size: 1.4em;
	margin: 0 auto 10px;
}
	
.concept .column:nth-child(even) .item:last-child {
	padding: 0 1em 0 4em;
}	
	
.concept .column:nth-child(odd) .item:last-child {
	padding: 0 4em 0 1em;
}	
	
.concept .item .thum .pc {
	display: block;
}	
	
.concept .item .thum .sp {
	display: none;
}	
	
	
/* ------------------------------------------------------------ */
/* lineup */
	
.acWrap .ac_tit {
	padding: 20px 40px;
}	
	
.ac_tit h3 {
	font-size: 1em;
}
.ac_tit h3 span {
	font-size: 1.8em;
}	
	
.ac_tit .floatR {
	width: 52%;
	padding: .5em 2em 0 0;
	line-height: 1.8;
}
	
.ac_tit .floatR.pc {
	display: block;
}	
	
.acBox .txt.sp {
	display: none;
}	
	
.acWrap .acBox {
	margin: 0 auto 20px;
	padding: 40px 30px 10px;
}	
	
	
.sub.lineup .thum {
	height: 120px;
}	
	
.sub.lineup .col03 h4 span {
	font-size: 1.4em;
	margin: 0 0 4px;	
}	
	
.sub.lineup .col03 p {
	font-size: 11px;
}	
	
.sub.lineup .box {
	padding: 30px 30px 10px;
}
	
.box .ac_tit .floatR {
	width: 65%;
	padding: 0;
}
	
.box .ac_tit .floatR br {
	display: none;
}	
	
	
/* ------------------------------------------------------------ */
/* shop一覧 */
.tabWrap {
	margin: 0 auto 60px;
}

.tabBtn a {
	padding: 12px 10px;
	font-size: 14px;
}

.tabBox {
	padding: 50px 30px 20px;
}

	
.tabBox .item {
	padding: 30px 0 0;
	margin: 0 auto 30px;
}

.shopList .shop_name {
	margin: 0 auto 20px;
}

.shopList .shop_name h4 {
	font-size: 1.4em;
}

.shopList .shop_name h4 .tag {
	font-size: 11px;	
}

.shopList .shop_name a.phone {
	margin: 5px 0 0;
}

.shop_info dl {
	font-size: .9em;
}


.shopList .shop_map {
}


.shopList .btn a {
	font-size: .9em;
}


/* FSM　shopエリアマップ */
.fsm_shop .tabBox {
	padding: 40px;
}
	
.archive .fsm_shop .tabBtn {
	display: none;
}	
	
.archive .fsm_shop .tabBox {
	padding: 20px 40px;
}

.fsm_shop ul.list {
	width: 100%;
	position: relative;
	top: inherit;
	left: inherit;
}

ul.list li {
	padding: 0;	
}

ul.list li a {
	display: block;
	width: 100%;
	height: 100%;
	padding: 6% 0;
	position: relative;
}

ul.list li:last-child {
	border-bottom: none;	
}

ul.list li a::after {
	content: "\f054";
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	-moz-osx-font-smoothing: grayscale; /*Firefox*/
	-webkit-font-smoothing: antialiased;
}
	
ul.list li.hokkaido a {
	background: url(../img/fsm-hokkaido.png) no-repeat right 15% center / auto 85%;
}	

ul.list li.kanto a {
	background: url(../img/fsm-kanto.png) no-repeat right 15% center / auto 85%;
}	
	
ul.list li.chubu a {
	background: url(../img/fsm-chubu.png) no-repeat right 15% center / auto 85%;
}	

ul.list li.kinki a {
	background: url(../img/fsm-kinki.png) no-repeat right 15% center / auto 85%;
}	

ul.list li.chugoku a {
	background: url(../img/fsm-chugoku.png) no-repeat right 15% center / auto 85%;
}	
	
ul.list li.kyushu a {
	background: url(../img/fsm-kyushu.png) no-repeat right 15% center / auto 85%;
}	
	

/* ------------------------------------------------------------ */
/* modelhouse一覧 */

/* スタイルから探す */
.modelhouse .tabBox .col03 .item {
	margin: 0 0 20px;
}

.cat_style .tabBox .item {
}

.modelhouse .acBox .thum,
.modelhouse .thumItem .thum {
	height: 140px;
}

.modelhouse .acBox .col03 h4,
.modelhouse .thumItem h4 {
	font-size: 11px;
	margin: 0 auto 5px;
}

.modelhouse .acBox .col03 h4 span,
.modelhouse .thumItem h4 span {
    font-size: 1.2em;
}

.modelhouse .acBox .col03 h4 span span,
.modelhouse .thumItem h4 span span {
    font-size: 1.4em;
}

/* スタイルから探す：詳細 */
.modelhouse .shopList .shop_name .txtItem {
	padding: 0 2em 0 0;
}	
	
	
	

/* エリアから探す */
.cat_area .model .tabBox {
	padding: 30px;
}

.cat_area .shopList .shop_name {
	margin: 0 auto 20px;
}	
	
.cat_area .shopList .shop_name .txtItem,
.cat_area .shopList .shop_name .thumItem {
}

.cat_area .shopList .shop_name .txtItem {
}

.cat_area .shopList .shop_name h4 {
}

.cat_area .shopList .shop_name p {
}

.cat_area .shopList .shop_name .thumItem {
}

.cat_area .shopList .shop_name .btn {
}

/* ------------------------------------------------------------ */
/* form共通 */
.formWrap {
	margin: 0 auto 20px;
	padding: 20px 30px 30px;
}	
	
.formWrap div.wpcf7-response-output {
	margin: 1em auto;
}	
	
/* ------------------------------------------------------------ */
/* 資料請求 */
.pamphlet .pagetitle p {
	padding: 2em 0 0;
}
	
.formBox {
	margin: 0 auto 20px;
}	
	
.pamphlet .formBox h3 {
	padding: 0 0 10px;
}	
	
.pamphlet .formBox h3 span {
	font-size: 1.8em;
}	
	
.pamphlet .col03 .item {
	margin: 0 0 20px;
	padding: 0 10px;
}	
	
.pamphlet .formBox .thum {
	height: 145px;
}	
	
.pamphlet .formBox .thum p {
	display: none;
}	
	
.pamphlet .formBox h4 .check_label {
	height: 55px;
}
	
.check_label span.check_label_kana {
	left: 25px;
	top: 0;
}	
	
.check_label span.check_label_kana span {
	font-size: 1.5em;
	line-height: 1.1;	
}

	
.pamphlet .formBox input[type="checkbox"] {
	width: 20px;
	height: 20px;
	min-width: 20px;
}
	
.formWrap .check_label span.wpcf7-not-valid-tip {
	/*bottom: -35px;
	left: 0;*/
}
	

.pamphlet .formBox h4 .check_label .pamph-other01,
.pamphlet .formBox h4 .check_label .pamph-other02 {
	font-size: .8em;
	letter-spacing: 0;
}	
	
	
.pamphlet .customer {
	padding: 40px 0 0;
}
	
.pamphlet .customer h3 {
	font-size: 1.8em;
}	

	
	
	
	
	
}

@media screen and (max-width: 767px) {
/* 767px以下用（スマートフォン用）の記述 */
/* ------------------------------------------------------------ */
/* 下層共通 */
/* ------------------------------------------------------------ */
.sub .content {
}

.sub .post_content {
	margin: 0 auto 50px;
}
	
/* ------------------------------------------------------------ */
/* ページタイトル */
/* ------------------------------------------------------------ */
section.pagetitle {
	padding: 10px 0 0;
}

.pagetitle h2 {
	font-size: 12px;
}
.pagetitle h2 span {
	font-size: 1.8em;
}
	
/* ------------------------------------------------------------ */
/* concept */
.concept .box {
	padding: 40px 20px;
}	
	
.concept .box .image:first-child {
	padding: 10px 0 0;
}	
	
.concept .box .item.txt {
	width: 90%;
}	
	
.concept .column {
	margin: 0 auto 60px;
}	
		
.concept .item h4 {
	font-size: 1.3em;
}
.concept .item h4 span {
	font-size: 14px;
}	
	
.concept .column:nth-child(even) .item:last-child {
	padding: 0 1em;
}	
	
.concept .column:nth-child(odd) .item:last-child {
	padding: 0 1em;
}	
	
		
/* ------------------------------------------------------------ */
/* lineup */
	
.sub.lineup .acWrap {
	width: 90%;
	margin: 0 auto 30px;
}
	
.acWrap .ac_tit {
	padding: 20px 30px;
}	
	
.ac_tit::before {
	font-size: 1.8em;
	right: 20px;
}
	
.ac_tit h3 {
	float: none;
	margin: 0 0 10px;
}
	
.ac_tit h3 span {
	font-size: 1.6em;
}	
	
.ac_tit .floatR.pc {
	display: none;
}	
	
.acBox .txt.sp {
	display: block;
	margin: 0 0 20px;
}
	
.acWrap .acBox {
	padding: 30px 30px 10px;
}	
	
.sub.lineup .col03 .item {
	margin: 0 0 30px;
	padding: 0 .5em;
	width: calc(100%/2);
}
	
.sub.lineup .box {
	padding: 20px 30px 10px;
}
	
.box .ac_tit {
	margin: 0 auto 20px;
}
		
.box .ac_tit .floatR {
	width: 100%;
	padding: 0;
	float: none;
}	
	
/* ------------------------------------------------------------ */
/* shop一覧 */
.tabWrap {
	margin: 0 auto;
}

.tabBtn a {
	width: calc(100%/3 - 1px);	
	margin: 0 1px 1px 0;
}

.tabBox {
	padding: 40px 20px 20px;
}

.shopList .shop_name h4 {
	font-size: 1.2em;
}

.shopList .shop_map {
	height: 180px;	
}

.shopList .btn a {
	font-size: .9em;
}
	
	
/* FSM　shopエリアマップ */
.fsm_shop .tabBox {
	padding: 30px;
}
	
.archive .fsm_shop .tabBox {
	padding: 20px 30px;
}


	
/* ------------------------------------------------------------ */
/* modelhouse一覧 */
.modelhouse .tabBtn a {
	margin: 0 1px 0 0;
}
	
/* スタイルから探す */
.modelhouse .tabBox .col03 .item {
	margin: 0 0 20px;
	width: calc(100%/2);
}

	
/* スタイルから探す：詳細 */
.cat_style .model .tabBox {
	padding: 30px;
}	
	
.cat_style .model .tabBox .item {
	padding: 30px 0 0;
}
		
.modelhouse .shopList .shop_name .txtItem {
	width: 55%;
}	
	
.modelhouse .shopList .shop_name .thumItem {
	width: 45%;
}	
	
	

/* ------------------------------------------------------------ */
/* form共通 */
.formWrap {
	margin: 0 auto 20px;
	padding: 10px 20px 20px;
}	
	
.formBox dt {
	width: 28%;
	padding: 5px 1em 5px 0;	
}	
	
.formBox dd {
	padding: 5px 0 5px 1em;
}	
	
.formBox dd span.btn {
	top: 6px;
	width: 110px;
	font-size: .9em;
	margin: 0;
}	
	
	
textarea {
	height: 180px;
}	
	
.formWrap .submitBox {
	padding: 10px 0 0;
}	
	
/* ------------------------------------------------------------ */
/* 資料請求 */
.formBox {
	margin: 0 auto 20px;
}	
	
.pamphlet .formBox h3 span {
	font-size: 1.6em;
}	
	
.pamphlet .col03 .item {
	margin: 0 0 20px;
	padding: 0 10px;
	width: calc(100%/2);
}
	
.pamphlet .formBox .thum {
	height: 145px;
}	
	
.pamphlet .formBox input[type="checkbox"]:checked:after {
	width: 30px;
	height: 18px;
	bottom: 5px;
	left: -5px;
}	
	
.pamphlet .customer {
	padding: 30px 0 0;
}
	
.pamphlet .customer h3 {
	font-size: 1.6em;
	margin: 0 auto 15px;
}	
	
	
	
}

@media screen and (max-width: 479px) {
/* 479px以下用（スマートフォン用）の記述 */
/* ------------------------------------------------------------ */
/* 下層共通 */
/* ------------------------------------------------------------ */
.sub .content {
}


	
/* ------------------------------------------------------------ */
/* concept */
.concept .box {
	padding: 30px 20px;
	margin: 0 auto 60px;	
}	
	
.concept .box .image {
	width: 80%;
	margin: 0 auto 20px;
}
	
.concept .box h3 {
	margin: 0 auto 20px;
}	
	
.concept .box .item.txt {
	width: 100%;
}
	
.concept .column {
	flex-wrap: wrap;
	margin: 0 auto 30px;	
}	
	
	
.concept .column .item {
	width: 100% !important;
	padding: 0 !important;
	margin: 0 auto 10px;	
}
	
.concept .item .thum .pc {
	display: none;
}	
	
.concept .item .thum .sp {
	display: block;
}	
	
/* ------------------------------------------------------------ */
/* lineup */
	
.sub.lineup .acWrap {
	width: 100%;
}
	
.acWrap .ac_tit {
	padding: 10px 20px;
}	
	
.acWrap .acBox {
	padding: 20px 15px 0;
}	
	
.sub.lineup .col03 .item {
	margin: 0 0 20px;
}
	
.sub.lineup .thum {
	height: auto;
}	
	
.sub.lineup .thum img {
	height: auto;
	max-width: inherit;
	width: 100%;
}
	
.sub.lineup .col03 h4 {
	text-align: left;
}
	
.sub.lineup .col03 p {
	text-align: left;
}
	
.sub.lineup .box {
	padding: 10px 20px 0px;
	width: 100%;
}
	
.box .ac_tit {
	margin: 0 auto 20px;
}
		
.box .ac_tit .floatR {
	width: 100%;
	padding: 0;
	float: none;
}	
		
	
/* ------------------------------------------------------------ */
/* shop一覧 */
.tabBtn a {
	font-size: 13px;	
}

.tabBox {
	padding: 30px 15px 20px;
}

.tabBox .item {
	padding: 20px 0 0;
	margin: 0 auto 20px;
}
	
.shopList .shop_name {
	margin: 0 auto 10px;
}	
	
.shopList .shop_name h4 {
	width: 100%;
	display: block;
	margin: 0 auto 20px;
}
	
.shopList .shop_name h4 br {
	display: none;
}
	
.shopList .shop_name h4 .tag {
	margin: 0 10px 0 0;
}
	
.shopList .shop_name .shop_info {
	width: 100%;
	display: block;
}
	
.shop_info dl {
	display: block;
	margin: 0 auto 15px;	
}
	
.shop_info dl dt, .shop_info dl dd {
	width: 100%;
	display: block;
	padding: 0;
	margin: 0 auto 5px;	
}	
	
.shopList .shop_map {
	height: 160px;	
}
	
/* FSM　shopエリアマップ */
.fsm_shop .tabBox {
	padding: 20px;
}
	
.archive .fsm_shop .tabBox {
	padding: 10px 20px;
}
	
ul.list li a {
	padding: 30px 0;
}
	

/* ------------------------------------------------------------ */
/* modelhouse一覧 */
	
/* スタイルから探す */
.modelhouse .tabBox .col03 .item {
	margin: 0 0 10px;
	padding: 0 5px;
}

.modelhouse .acBox .thum,
.modelhouse .thumItem .thum {
	height: 120px;
}
	
.modelhouse .acBox .col03 h4,
.modelhouse .thumItem h4 {
	text-align: left;
}	
	
/* スタイルから探す：詳細 */
.cat_style .model .tabBox {
	padding: 20px;
}	
	
.cat_style .model .tabBox .item {
	padding: 20px 0 0;
}
	
.cat_style .shopList .shop_name {
	display: block;
}
	
.modelhouse .shopList .shop_name .txtItem {
	width: 100%;
	display: block;
	padding: 0 0 1em;
}
	
.modelhouse .model .shopList .shop_name p {
	margin: 0 0 20px;
}
	
.modelhouse .model .shopList .shop_name p.btn {
	margin: 0;
}
	
.cat_style .model .shopList .shop_name .btn a {
	display: block;
	margin: 0 0 0 auto;
}	
	
.modelhouse .shopList .shop_name .thumItem {
	width: 100%;
	display: block;
	margin: 0 auto 20px;	
}	
	
	
.modelhouse .model .thumItem .thum {
	height: auto;
}	

.modelhouse .model .thumItem .thum img {
	width: 100%;
}	
	
	
/* ------------------------------------------------------------ */
/* form共通 */
.formWrap {
	margin: 0 auto 20px;
	padding: 10px 10px 20px;
}	
	
.formBox dl {
	display: block;	
	margin: 0 auto 25px;	
}	
	
.formBox dt {
	width: 100%;
	display: block;
	padding: 0;	
	margin: 0 auto 5px;
}	
	
.formBox dd {
	width: 100%;
	display: block;	
	padding: 0;	
}	
	
	
/* ------------------------------------------------------------ */
/* 資料請求 */
.formBox {
	margin: 0 auto 20px;
}	
	
.pamphlet .formBox h3 span {
	font-size: 1.4em;
}	
	
.pamphlet .col03 .item {
	margin: 0 0 10px;
	padding: 0 5px;
}
	
.pamphlet .formBox .thum {
	height: 100px;
	margin: 0 auto 10px;
}
	
.pamphlet .formBox h4 .check_label {
	font-size: 1.25em;
	height: 60px;	
}
	
.check_label span.check_label_kana {
	font-size: 10px;
}	
	
.pamphlet .formBox .wpcf7-list-item-label {
	padding: 0 0 0 5px;
}
	
.formWrap .check_label span.wpcf7-not-valid-tip {
	bottom: -40px;
	left: 0;
}	
	
.pamphlet .customer {
	padding: 30px 0 0;
}
	
.pamphlet .customer h3 {
	font-size: 1.4em;
	margin: 0 auto 15px;
}	
		
	
}

@media screen and (max-width: 360px) {
/* 360px以下用（スマートフォン用）の記述 */


}
