@charset 'UTF-8';

/*normalize: http://necolas.github.io/normalize.css/*/

/* normalize.css 2012-07-07T09:50 UTC - http://github.com/necolas/normalize.css */

/* ==========================================================================
   HTML5 display definitions
   ========================================================================== */

/**
 * Correct `block` display not defined in IE 8/9.
 */

article,aside,details,figcaption,figure,footer,header,hgroup,main,nav,section,summary{
	display: block;
}

/**
 * Correct `inline-block` display not defined in IE 8/9.
 */

audio,canvas,video{
	display: inline-block;
}

/**
 * Prevent modern browsers from displaying `audio` without controls.
 * Remove excess height in iOS 5 devices.
 */

audio:not([controls]){
	display: none;
	height: 0;
}

/**
 * Address `[hidden]` styling not present in IE 8/9.
 * Hide the `template` element in IE, Safari, and Firefox < 22.
 */

[hidden],template{
	display: none;
}

/* ==========================================================================
   Base
   ========================================================================== */

/**
 * 1. Set default font family to sans-serif.
 * 2. Prevent iOS text size adjust after orientation change, without disabling
 *    user zoom.
 */

html{
	font-family: sans-serif;
	/* 1 */

	-webkit-text-size-adjust: 100%;
	/* 2 */
	    -ms-text-size-adjust: 100%;
	/* 2 */
}

/**
 * Remove default margin.
 */

body{
	margin: 0;
}

/* ==========================================================================
   Links
   ========================================================================== */

/**
 * Remove the gray background color from active links in IE 10.
 */

a{
	background: transparent;
}

/**
 * Address `outline` inconsistency between Chrome and other browsers.
 */

a:focus{
	outline: thin dotted;
}

/**
 * Improve readability when focused and also mouse hovered in all browsers.
 */

a:active,a:hover{
	outline: 0;
}

/* ==========================================================================
   Typography
   ========================================================================== */

/**
 * Address variable `h1` font-size and margin within `section` and `article`
 * contexts in Firefox 4+, Safari 5, and Chrome.
 */

h1,h2,h3,h4,p{
	font-size: 1em;

	margin-block-end: 0;
	margin-block-start: 0;
}

/**
 * Address styling not present in IE 8/9, Safari 5, and Chrome.
 */

abbr[title]{
	border-bottom: 1px dotted;
}

/**
 * Address style set to `bolder` in Firefox 4+, Safari 5, and Chrome.
 */

b,strong,.strong{
	font-weight: 700;
}

/**
 * Address styling not present in Safari 5 and Chrome.
 */

dfn,em,.em{
	font-style: italic;
}

/**
 * Address differences between Firefox and other browsers.
 */

hr{
	box-sizing: content-box;
	height: 0;
}

/*
 * proper formatting (http://blog.fontdeck.com/post/9037028497/hyphens)
*/

p{
	-webkit-hyphens: auto;
	        hyphens: auto;

	-epub-hyphens: auto;
}

/*
 * Addresses margins set differently in IE6/7.
 */

pre{
	margin-block-end: 0;
	margin-block-start: 0;
}

/**
 * Correct font family set oddly in Safari 5 and Chrome.
 */

code,kbd,pre,samp{
	font-family: monospace, serif;
	font-size: 1em;
}

/**
 * Improve readability of pre-formatted text in all browsers.
 */

pre{
	white-space: pre-wrap;
}

/**
 * Set consistent quote types.
 */

q{
	quotes: '\201C' '\201D' '\2018' '\2019';
}

/**
 * Address inconsistent and variable font size in all browsers.
 */

q:before,q:after{
	content: '';
	content: none;
}

small,.small{
	font-size: 75%;
}

/**
 * Prevent `sub` and `sup` affecting `line-height` in all browsers.
 */

sub,sup{
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline;
}

sup{
	top: -.5em;
}

sub{
	bottom: -.25em;
}

/* ==========================================================================
  Lists
========================================================================== */

/*
 * Addresses margins set differently in IE6/7.
 */

dl,menu,ol,ul{
	margin-block-end: 0;
	margin-block-start: 0;
}

dd{
	margin-block-end: 0;
	margin-block-start: 0;
}

/*
 * Addresses paddings set differently in IE6/7.
 */

menu{
	padding: 0 0 0 40px;
}

ol,ul{
	padding: 0;
	list-style-type: none;
}

/*
 * Corrects list images handled incorrectly in IE7.
 */

nav ul,nav ol{
	list-style: none;
	list-style-image: none;
}

/* ==========================================================================
  Embedded content
========================================================================== */

/**
 * Remove border when inside `a` element in IE 8/9.
 */

img{
	border: 0;
}

/**
 * Correct overflow displayed oddly in IE 9.
 */

svg:not(:root){
	overflow: hidden;
}

/* ==========================================================================
   Figures
   ========================================================================== */

/**
 * Address margin not present in IE 8/9 and Safari 5.
 */

figure{
	margin-block-end: 0;
	margin-block-start: 0;
}

/* ==========================================================================
   Forms
   ========================================================================== */

/**
 * Define consistent border, margin, and padding.
 */

fieldset{
	margin: 0 2px;
	padding: .35em .625em .75em;
	border: 1px solid #c0c0c0;
}

/**
 * 1. Correct `color` not being inherited in IE 8/9.
 * 2. Remove padding so people aren't caught out if they zero out fieldsets.
 */

legend{
	padding: 0;
	/* 2 */
	border: 0;
	/* 1 */
}

/**
 * 1. Correct font family not being inherited in all browsers.
 * 2. Correct font size not being inherited in all browsers.
 * 3. Address margins set differently in Firefox 4+, Safari 5, and Chrome.
 */

button,input,select,textarea{
	font-family: inherit;
	/* 1 */
	font-size: 100%;
	/* 2 */
	margin: 0;
	/* 3 */
}

/**
 * Address Firefox 4+ setting `line-height` on `input` using `!important` in
 * the UA stylesheet.
 */

button,input{
	line-height: normal;
}

/**
 * Address inconsistent `text-transform` inheritance for `button` and `select`.
 * All other form control elements do not inherit `text-transform` values.
 * Correct `button` style inheritance in Chrome, Safari 5+, and IE 8+.
 * Correct `select` style inheritance in Firefox 4+ and Opera.
 */

button,select{
	text-transform: none;
}

/**
 * 1. Avoid the WebKit bug in Android 4.0.* where (2) destroys native `audio`
 *    and `video` controls.
 * 2. Correct inability to style clickable `input` types in iOS.
 * 3. Improve usability and consistency of cursor style between image-type
 *    `input` and others.
 */

button,html input[type='button'],/* 1 */
input[type='reset'],input[type='submit']{
	cursor: pointer;
	/* 3 */

	-webkit-appearance: button;
	/* 2 */
}

/**
 * Re-set default cursor for disabled elements.
 */

button[disabled],html input[disabled]{
	cursor: default;
}

/**
 * 1. Address box sizing set to `content-box` in IE 8/9/10.
 * 2. Remove excess padding in IE 8/9/10.
 */

input[type='checkbox'],input[type='radio']{
	box-sizing: border-box;
	/* 1 */
	padding: 0;
	/* 2 */
}

/**
 * 1. Address `appearance` set to `searchfield` in Safari 5 and Chrome.
 * 2. Address `box-sizing` set to `border-box` in Safari 5 and Chrome
 *    (include `-moz` to future-proof).
 */

input[type='search']{
	box-sizing: content-box;

	-webkit-appearance: textfield;
	/* 1 */
	/* 2 */
}

/**
 * Remove inner padding and search cancel button in Safari 5 and Chrome
 * on OS X.
 */

input[type='search']::-webkit-search-cancel-button,input[type='search']::-webkit-search-decoration{
	-webkit-appearance: none;
}

/**
 * Remove inner padding and border in Firefox 4+.
 */

button::-moz-focus-inner,input::-moz-focus-inner{
	padding: 0;
	border: 0;
}

/**
 * 1. Remove default vertical scrollbar in IE 8/9.
 * 2. Improve readability and alignment in all browsers.
 */

textarea{
	overflow: auto;
	/* 1 */
	vertical-align: top;
	/* 2 */
}

/* ==========================================================================
   Tables
   ========================================================================== */

/**
 * Remove most spacing between table cells.
 */

table{
	border-spacing: 0;
	border-collapse: collapse;
}

*{
	box-sizing: border-box;
}

*:before,*:after{
	box-sizing: border-box;
}

.image-replacement,.ir{
	overflow: hidden;
	white-space: nowrap;
	text-indent: 100%;
}

.clearfix,.cf{
	zoom: 1;
}

.clearfix:before,.clearfix:after,.cf:before,.cf:after{
	display: table;
	content: '';
}

.clearfix:after,.cf:after{
	clear: both;
}

/*
use the best ampersand
http://simplebits.com/notebook/2008/08/14/ampersands-2/
*/

span.amp{
	font-family: Baskerville, 'Goudy Old Style', Palatino, 'Book Antiqua', serif !important;
	font-style: italic;
}

:root{
	--color: #000;
	--colorR: #b71c24;
}

/* ==========================================================================
  アニメーション
========================================================================== */

@keyframes menuFadeIn{
	0%{
		display: flex;
		opacity: 0;
	}

	100%{
		opacity: 1;
	}
}

@keyframes menuFadeOut{
	0%{
		opacity: 1;
	}

	99%{
		opacity: 0;
	}

	100%{
		display: none;
		opacity: 0;
	}
}

@keyframes fadeIn{
	0%{
		opacity: 0;
	}

	100%{
		opacity: 1;
	}
}

@keyframes fadeOut{
	0%{
		opacity: 1;
	}

	100%{
		opacity: 0;
	}
}

@keyframes fadeInUp{
	0%{
		transform: translateY(30px);
		opacity: 0;
	}

	80%{
		opacity: 1;
	}

	100%{
		transform: translateY(0);
		opacity: 1;
	}
}

.isAnime{
	opacity: 0;
}

.fadeInUp.animeAction{
	animation: fadeInUp 1s cubic-bezier(.33, 1, .68, 1) 1 forwards;
}

.fadeIn.animeAction{
	animation: fadeIn 1s ease-in 1 forwards;
}

.slideInRight.animeAction{
	animation: slideInRight 1s cubic-bezier(.33, 1, .68, 1) 1 forwards;
}

@keyframes slideInRight{
	0%{
		transform: translateX(30px);
		opacity: 0;
	}

	80%{
		opacity: 1;
	}

	100%{
		transform: translateX(0);
		opacity: 1;
	}
}

.slideInLeft.animeAction{
	animation: slideInLeft 1s cubic-bezier(.33, 1, .68, 1) 1 forwards;
}

@keyframes slideInLeft{
	0%{
		transform: translateX(-30px);
		opacity: 0;
	}

	80%{
		opacity: 1;
	}

	100%{
		transform: translateX(0);
		opacity: 1;
	}
}

/*========= 流れるテキスト ===============*/

/*全共通*/

.textUp{
	display: inline-block;
	overflow: hidden;
}

.textUpInner{
	display: inline-block;
}

/* 上下のアニメーション*/

.textUp.animeAction{
	animation-name: slideTextY100;
	animation-duration: .8s;
	opacity: 0;

	animation-fill-mode: forwards;
}

@keyframes slideTextY100{
	from{
		transform: translateY(100%);
		/* 要素を上の枠外に移動*/
		opacity: 0;
	}

	to{
		transform: translateY(0);
		/* 要素を元の位置に移動*/
		opacity: 1;
	}
}

.textUpInner.animeAction{
	animation-name: slideTextY-100;
	animation-duration: .8s;
	opacity: 0;

	animation-fill-mode: forwards;
}

@keyframes slideTextY-100{
	from{
		transform: translateY(-100%);
		/* 要素を下の枠外に移動*/
		opacity: 0;
	}

	to{
		transform: translateY(0);
		/* 要素を元の位置に移動*/
		opacity: 1;
	}
}

/* vue用 */

.fade-enter-active,.fade-leave-active{
	transition: opacity .4s;
}

.fade-enter,.fade-leave-to{
	opacity: 0;
}

.fade2-enter-active,.fade2-leave-active{
	transition: opacity .2s;
}

.fade2-enter,.fade2-leave-to{
	opacity: 0;
}

.mode-fade-enter-active,.mode-fade-leave-active{
	transition: opacity .5s ease;
}

.mode-fade-enter-from,.mode-fade-leave-to{
	opacity: 0;
}

/* ==========================================================================
   ajaロード関連
========================================================================== */

.ajaxFadein{
	animation: fadeInAjax .6s 1 0s ease forwards;
}

@keyframes fadeInAjax{
	0%{
		opacity: 0;
	}

	100%{
		opacity: 1;
	}
}

.loading{
	position: relative;
	margin-top: 50px;
}

.loading::before{
	position: absolute;
	top: 50%;
	left: 50%;
	width: 52px;
	height: 52px;
	margin: -26px 0 0 -26px;
	content: '';
	animation: loader .8s infinite linear;
	border: 6px solid #000;
	border-top-color: #ddd;
	border-radius: 50%;
}

.noPost{
	font-size: 1.7rem;
	margin-top: 2em;
	text-align: center;

	grid-column: 1 / 6;
}

@media only screen and (max-width: 767px){
	.loading{
		margin-top: 4.16667vw;
	}

	.loading::before{
		position: absolute;
		top: 50%;
		left: 50%;
		width: 26px;
		height: 26px;
		margin: 0 0 0 -13px;
		content: '';
		animation: loader .8s infinite linear;
		border: 4px solid #000;
		border-top-color: #ddd;
		border-radius: 50%;
	}
}

@keyframes loader{
	0%{
		transform: rotate(0deg);
	}

	100%{
		transform: rotate(360deg);
	}
}

/* ==========================================================================
   フォーム
========================================================================== */

.formWall .formInput select,.formWall .formInput input[type='text'],.formWall .formInput input[type='date'],.formWall .formInput input[type='tel'],.formWall .formInput input[type='email']{
	line-height: 37px;
	width: 100%;
	height: 37px;
	padding: 0 1em;
	border: 1px solid #808080;
	border-radius: 5px;
}

.formWall .formInput textarea{
	width: 100%;
	height: 170px;
	padding: 1em;
	border: 1px solid #808080;
	border-radius: 5px;
}

.formWall .formInput input[type='checkbox'],.formWall .formInput input[type='radio']{
	accent-color: #000;
}

.formWall .obiTitle{
	font-size: 1.8rem;
	line-height: 1;
	display: grid;
	height: 50px;
	margin-bottom: 60px;
	text-align: center;
	color: #fff;
	background: #000;

	place-content: center;
}

.formWall .typeSelectBox{
	margin-bottom: 60px;
}

.formWall .typeSelectBox ul{
	display: flex;

	gap: 0 45px;
	justify-content: center;
}

.formWall .typeSelectBox li{
	font-size: 1.8rem;
	display: flex;

	align-items: center;
}

.formWall .typeSelectBox input[type='radio']{
	width: 22px;
	height: 22px;
}

.formWall .typeSelectBox label{
	padding-left: .3em;
}

.formWall .formBox{
	display: flex;
	width: 666px;
	margin: 0 auto;
}

.formWall .formBox .title{
	font-size: 1.6rem;
	line-height: 1;
	display: flex;
	color: #1d3446;

	align-items: center;
	flex: 0 1 213px;
}

.formWall .formBox .title .hissu{
	font-size: 1.2rem;
	line-height: 1;
	display: flex;
	width: 34px;
	height: 17px;
	margin-right: 17px;
	color: #fff;
	border-radius: 1px;
	background: #90001f;

	align-items: center;
	justify-content: center;
}

.formWall .formBox .inputBox{
	flex: 0 1 453px;
}

.formWall .formBox .messageConf{
	line-height: 1.75;
	white-space: pre-wrap;
}

.formWall .formBox .errorText{
	padding-top: .6em;
	color: red;
}

.formWall .formBox .errorText .errorShow{
	font-size: 1.4rem;
	line-height: 1;
}

.formWall .formBox+.formBox{
	margin-top: 35px;
}

.formWall .formBoxAddress{
	margin-top: 55px;
	padding-top: 50px;
	border-top: 1px dotted #000;
}

.formWall .formBoxAddress .zipBox .inputBox{
	flex: 0 1 154px;
}

.formWall .formBoxAddress .addrBox .title{
	margin-top: 7px;

	align-self: flex-start;
}

.formWall .formBoxAddress .addrBox input:last-child{
	margin-top: 10px;
}

.formWall .formBoxDate{
	margin-top: 55px;
	padding-top: 50px;
	border-top: 1px dotted #000;
}

.formWall .formBoxDate .text{
	max-width: 666px;
	margin: 0 auto 35px;
}

.formWall .formBoxDate .text p{
	font-size: 1.6rem;
	line-height: 1.75;
	color: #1d3446;
}

.formWall .formBoxDate .text .kibou{
	font-weight: 700;
}

.formWall .formBoxDate .text .kome{
	font-weight: 400;
}

.formWall .formBoxDate .formBox .title{
	padding-right: 55px;

	justify-content: flex-end;
}

.formWall .formBoxDate .formBox+.formBox{
	margin-top: 15px;
}

.formWall .formBoxMessage{
	margin-top: 75px;
}

.formWall .formBoxMessage .title{
	line-height: 1.75;

	align-self: flex-start;
}

.formWall .notice{
	font-size: 1.4rem;
	line-height: 1.75;
	max-width: 666px;
	margin: 80px auto 0;
	padding: 30px;
	color: #1d3446;
	background: #dbdbdb;
}

.formWall .notice dd{
	margin-left: 1em;
	text-indent: -1em;
}

.formWall .accept{
	margin-top: 75px;
	text-align: center;
}

.formWall .accept .row{
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1;
	display: flex;

	align-items: center;
	justify-content: center;
}

.formWall .accept .row label{
	padding-left: 14px;
}

.formWall .accept .row input{
	width: 27px;
	height: 27px;
}

.formWall .accept .row a{
	text-decoration: underline;
}

.formWall .formBtn{
	font-size: 1.6rem;
	font-weight: 700;
	display: flex;
	width: 270px;
	height: 47px;
	margin: 70px auto 0;
	color: #fff;
	border-radius: 23px;
	background: #000;

	align-items: center;
	justify-content: center;
}

.formWall .formBtn:disabled{
	opacity: .5;
}

.formWall .formBtn+.formBtn{
	margin-top: 30px;
}

.formWall .formConf .formBoxDate p .text{
	margin-right: 1em;
}

/* 送信エラー */

.formWall .sendError{
	font-size: 1.4rem;
	line-height: 1.75;
	margin: 2em auto 0;
	padding: 1em;
	text-align: center;
	color: #e64d4d;
	border: 1px solid #e64d4d;
	background: #fff;
}

@media only screen and (max-width: 767px){
	.formWall .formInput select,.formWall .formInput input[type='text'],.formWall .formInput input[type='date'],.formWall .formInput input[type='tel'],.formWall .formInput input[type='email']{
		font-size: 16px;
		line-height: 8.88889vw;
		height: 8.88889vw;
		padding: 0 .5em;
		border: .27778vw solid #808080;
		border-radius: .83333vw;
	}

	.formWall .formInput textarea{
		font-size: 16px;
		height: 33.33333vw;
		border: .27778vw solid #808080;
		border-radius: .83333vw;
	}

	.formWall .obiTitle{
		font-size: 1.4rem;
		height: 9.16667vw;
		margin-bottom: 6.94444vw;
	}

	.formWall .typeSelectBox{
		margin-bottom: 6.94444vw;
	}

	.formWall .typeSelectBox ul{
		display: flex;

		gap: 0 8.33333vw;
		justify-content: center;
	}

	.formWall .typeSelectBox li{
		font-size: 1.4rem;
	}

	.formWall .typeSelectBox input[type='radio']{
		width: 5vw;
		height: 5vw;
	}

	.formWall .formBox{
		width: 100%;
	}

	.formWall .formBox .title{
		font-size: 1.4rem;

		flex: 0 1 33.33333vw;
	}

	.formWall .formBox .title .hissu{
		font-size: 1rem;
		width: 8.05556vw;
		height: 3.33333vw;
		margin-right: 1.94444vw;
	}

	.formWall .formBox .inputBox{
		flex: 0 1 50vw;
	}

	.formWall .formBox+.formBox{
		margin-top: 5.55556vw;
	}

	.formWall .telBox,.formWall .emailBox{
		display: block;
	}

	.formWall .telBox .title,.formWall .emailBox .title{
		margin-bottom: 2.77778vw;
	}

	.formWall .formBoxAddress{
		margin-top: 6.94444vw;
		padding-top: 6.94444vw;
		border-top: .27778vw dotted #000;
	}

	.formWall .formBoxAddress .zipBox{
		display: block;
	}

	.formWall .formBoxAddress .zipBox .title{
		margin-bottom: 2.77778vw;
	}

	.formWall .formBoxAddress .zipBox .inputBox{
		width: 36.38889vw;
	}

	.formWall .formBoxAddress .addrBox{
		display: block;
	}

	.formWall .formBoxAddress .addrBox .title{
		margin: 0 0 2.77778vw;
	}

	.formWall .formBoxAddress .addrBox input:last-child{
		margin-top: 2.77778vw;
	}

	.formWall .formBoxDate{
		margin-top: 6.94444vw;
		padding-top: 6.94444vw;
		border-top: .27778vw dotted #000;
	}

	.formWall .formBoxDate .text{
		max-width: 100%;
		margin-bottom: 8.33333vw;
	}

	.formWall .formBoxDate .text p{
		font-size: 1.4rem;
	}

	.formWall .formBoxDate .text .kibou{
		font-weight: 400;
	}

	.formWall .formBoxDate .text .kome{
		font-size: 1.2rem;
	}

	.formWall .formBoxDate .formBox .title{
		padding-right: 4.16667vw;

		flex: 0 0 auto;
		justify-content: flex-start;
	}

	.formWall .formBoxDate .formBox .inputBox{
		flex: 0 1 44.72222vw;
	}

	.formWall .formBoxDate .formBox+.formBox{
		margin-top: 2.77778vw;
	}

	.formWall .formBoxMessage{
		display: block;
		margin-top: 9.72222vw;
	}

	.formWall .formBoxMessage .title{
		margin-bottom: 2.77778vw;
	}

	.formWall .notice{
		font-size: 1.2rem;
		line-height: 1.75;
		max-width: none;
		margin: 4.16667vw auto 0;
		padding: 0;
		background: none;
	}

	.formWall .accept{
		margin-top: 15.27778vw;
	}

	.formWall .accept .row{
		font-size: 1.4rem;
	}

	.formWall .accept .row label{
		padding-left: 3.33333vw;
	}

	.formWall .accept .row input{
		width: 6.38889vw;
		height: 6.38889vw;
	}

	.formWall .formBtn{
		width: 75vw;
		height: 13.05556vw;
		margin: 8.33333vw auto 0;
		border-radius: 6.38889vw;
	}

	.formWall .formBtn+.formBtn{
		margin-top: 8.33333vw;
	}

	.formWall .formConf .formBox .title{
		line-height: 1.4;

		flex-shrink: 0;
	}

	.formWall .formConf .formBox .inputBox p{
		word-break: break-all;
	}

	.formWall .formConf .formBoxDate p .text{
		margin-right: 1em;
	}

	/* 送信エラー */
	.formWall .sendError{
		font-size: 1.4rem;
		line-height: 1.75;
		margin: 2em auto 0;
		padding: 1em;
		text-align: center;
		color: #e64d4d;
		border: 1px solid #e64d4d;
		background: #fff;
	}
}

/* ==========================================================================
   共通設定
========================================================================== */

html{
	font-size: 62.5%;
	overflow-y: scroll;

	-webkit-text-size-adjust: 100%;
	    -ms-text-size-adjust: 100%;
}

body{
	font-family: 'Noto Sans', 'Noto Sans JP', 'Noto Sans CJK JP', 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', '游ゴシック', '游ゴシック体', 'メイリオ', Meiryo, sans-serif;
	font-size: 1.6rem;
	line-height: 1.4;
	overflow: hidden;
	width: 100%;
	min-width: 1240px;
	text-align: justify;
	text-justify: inter-ideograph;
	color: #000;
	color: #000;
	color: var(--color);

	font-feature-settings: 'pkna';
	font-optical-sizing: auto;
}

img{
	max-width: 100%;
	height: auto;
	vertical-align: bottom;

	backface-visibility: hidden;
}

a{
	display: inline-block;
	text-decoration: none;
	color: #000;
	color: #000;
	color: var(--color);
}

a:hover{
	opacity: .8;
}

.spShow{
	display: none;
}

.pcShow{
	display: inline-block;
}

.container{
	display: grid;
	min-height: 100vh;

	grid-template-columns: 100%;
	grid-template-rows: 1fr auto;
}

.pageContainer{
	position: relative;
	z-index: 2;

	grid-column: 1;
	grid-row: 1;
}

.footer{
	z-index: 1;

	grid-column: 1;
	grid-row: 2;
}

button{
	padding: 0;
	border: none;
	outline: none;
	background: none;
}

button:focus{
	outline: none;
}

button:hover{
	opacity: .8;
}

button:disabled{
	opacity: 1;
}

button:disabled:hover{
	opacity: 1;
}

/* ==========================================================================
   footer
========================================================================== */

.footer{
	display: grid;
	height: 60px;
	background: #000;

	place-content: center;
}

.footer .copyright{
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1;
	color: #fff;
}

.footer .copyright span{
	font-size: 1.8rem;
	letter-spacing: .13em;
}

/* ==========================================================================
   mv
========================================================================== */

.mv202503 .mv-inner{
	display: grid;
	min-width: unset;
	max-width: 2000px;
	margin: 0 auto;

	align-items: center;
	grid-template-columns: 40% 60%;
}

.mv202503 .mv-text{
	padding-block: 100px;
}

.mv202503 .mv-text img{
	width: 100%;
	height: 100%;

	-o-object-fit: contain;
	   object-fit: contain;
	-o-object-position: left;
	   object-position: left;
}

.mv202503 .mv-text .logo{
	position: absolute;
	z-index: 2;
	top: 20px;
	left: 50px;
	width: 168px;
}

.mv202503 .mv-text h2{
	width: clamp(500px, 30vw, 600px);
	max-width: 100%;
}

.mv202503 .mv-text p{
	width: clamp(400px, 30vw, 600px);
	margin: clamp(40px, 1.4vw, 40px) clamp(60px, 5vw, 80px);
}

.mv202503 .mv-text ul li{
	height: clamp(40px, 4vw, 60px);
	margin: clamp(20px, 1.4vw, 40px) clamp(40px, 5vw, 80px);
}

.mv202503 .mv-image{
	position: relative;
	height: 100%;
}

.mv202503 .mv-image figure{
	height: 100%;
}

.mv202503 .mv-image figure::before{
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 10%;
	height: 100%;
	content: '';
	background-image: linear-gradient(to right, #fff, transparent);
}

.mv202503 .mv-image img{
	height: 100%;

	-o-object-fit: cover;
	   object-fit: cover;
	-o-object-position: center;
	   object-position: center;
}

@media (max-width: 767px){
	.mv202503 .mv-inner{
		grid-template-columns: 1fr;
	}

	.mv202503 .mv-text{
		padding-block: 80px 20px;
	}

	.mv202503 .mv-text .logo{
		top: 20px;
		left: 20px;
		width: 90px;
	}

	.mv202503 .mv-text h2{
		width: 95%;
	}

	.mv202503 .mv-text p{
		width: 70%;
		margin: clamp(20px, 1.4vw, 40px) auto;
	}

	.mv202503 .mv-text ul{
		display: flex;
		margin: 20px;

		gap: 20px;
		justify-content: center;
	}

	.mv202503 .mv-text ul li{
		height: clamp(30px, 4vw, 60px);
		margin: unset;
	}
	.mv202503 .mv-image figure::before{
		content: none;
	}
}

.mihoshi1LP .mv{
	position: relative;
}

.mihoshi1LP .mv::before{
	position: absolute;
	z-index: -1;
	top: 0;
	left: 0;
	width: 50%;
	height: 100%;
	content: '';
	background: #72ba99;
}

.mihoshi1LP .mv .fv{
	position: relative;
	height: 100svh;
	min-height: 750px;
	padding-top: 300px;
}

.mihoshi1LP .mv .logo{
	position: absolute;
	z-index: 2;
	top: 58px;
	left: 50px;
	width: 168px;
}

.mihoshi1LP .mv .mainText{
	font-size: 4.7rem;
	font-weight: 700;
	line-height: 1.34;
	text-align: center;
}

.mihoshi1LP .mv .text2{
	font-size: 4.6rem;
	font-weight: 900;
	line-height: 1.39;
	position: absolute;
	top: 50%;
	left: 50%;
	letter-spacing: .1em;

	translate: -50% -50%;
	writing-mode: vertical-rl;
}

.mihoshi1LP .mv .text2 span{
	color: #fff;
}

.mihoshi1LP .mv .text2{
	animation-delay: 600ms;
}

.mihoshi1LP .mv .inner{
	display: flex;
	height: calc(100% - 125px);

	align-items: center;
	gap: 0 200px;
	justify-content: center;
}

.mihoshi1LP .mv .modelhouse{
	display: flex;
	padding-bottom: 47px;
	background: url('../../img/miyoshi1/arrow_b.svg') no-repeat center bottom / 28px auto;

	align-items: center;
	flex-flow: column;
}

.mihoshi1LP .mv .modelhouse figure{
	display: flex;
	width: 526px;
	height: 349px;

	align-items: flex-end;
	justify-content: center;
	order: 1;
}

.mihoshi1LP .mv .modelhouse .discription{
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.5;
	margin-top: 20px;
	text-align: center;

	order: 2;
}

.mihoshi1LP .mv .modelhouse header{
	font-weight: 700;
	display: flex;
	width: 210px;
	height: 26px;
	margin-top: 15px;
	background: #fff;

	order: 3;
}

.mihoshi1LP .mv .modelhouse header p,.mihoshi1LP .mv .modelhouse header h2{
	display: flex;
	height: 100%;

	align-items: center;
	justify-content: center;
}

.mihoshi1LP .mv .modelhouse header p{
	font-size: 1.4rem;
	width: 89px;
	color: #fff;
	background: #000;

	-webkit-clip-path: polygon(0 0, 100% 0, 88.7% 100%, 0% 100%);
	        clip-path: polygon(0 0, 100% 0, 88.7% 100%, 0% 100%);
}

.mihoshi1LP .mv .modelhouse header h2{
	font-size: 2rem;
	width: 121px;
}

.mihoshi1LP .mv .modelhouse2 header{
	background: #f4f4f4;
}

.mihoshi1LP .access{
	display: flex;
	margin-top: 20px;

	align-items: center;
	justify-content: center;
}

.mihoshi1LP .access li{
	font-size: 2.7rem;
	font-weight: 700;
	display: grid;
	height: 61px;
	background: #fff;

	flex: 0 1 319px;
	place-content: center;
}

.mihoshi1LP .access li:last-child{
	background: #72ba99;
}

/* ==========================================================================
   ギャラリー
========================================================================== */

.mihoshi1LP .gallery{
	padding: 100px 0 57px;
	background: #000;
}

.mihoshi1LP .gallery>h2{
	font-size: 3.6rem;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 108px;
	text-align: center;
	color: #fff;
}

.mihoshi1LP .gallery>h2 span{
	display: inline-flex;
	margin-right: 15px;

	align-items: center;
	gap: 0 15px;
}

.mihoshi1LP .gallery>h2 span::before,.mihoshi1LP .gallery>h2 span::after{
	width: 25px;
	height: 32px;
	content: '';
	background: url('../../img/miyoshi1/gallery_mark.svg') no-repeat center center / contain;

	flex-shrink: 0;
}

.mihoshi1LP .gallery>h2 span::after{
	transform: scaleX(-1);
}

.mihoshi1LP .gallery .swiperWall{
	position: relative;
	height: 197px;
}

.mihoshi1LP .gallery .swiper{
	position: absolute;
	top: 0;
	left: 50%;
	overflow: visible;
	width: 1177px;
	height: 197px;
	margin: 0 auto;
	transform: translateX(-50%);
}

.mihoshi1LP .gallery .swiper .swiper-wrapper{
	transition-timing-function: linear;
}

/* ==========================================================================
   mv下バナー
========================================================================== */

.mvBottomWall{
	padding: 60px 0;
	background: #1d2d3d;
}

.mvBottomWall .mvBanner{
	max-width: 1200px;
	margin: 0 auto 75px;
}

/* ==========================================================================
   見学会＆相談会
========================================================================== */

.pickup202503 .pickup-inner{
	display: grid;
	max-width: 1195px;
	margin: 0 auto;
	background: #fff;

	grid-template-columns: repeat(2, 1fr);
}

.pickup202503 .pickup-text{
	position: relative;
	padding: 80px;
}

.pickup202503 .pickup-text em{
	font-style: normal;
	position: absolute;
	top: 0;
	right: 0;
	display: inline-block;
	padding: .4em .8em;
	color: #fff;
	background: #c00;
}

.pickup202503 .pickup-text p{
	font-size: 14px;
	font-style: normal;
	display: inline-block;
	padding: .4em 1.4em;
	color: #fff;
	border-radius: calc(1px * infinity);
	background: #000;
}

.pickup202503 .pickup-text h2{
	font-size: clamp(20px, 2.5vw, 32px);
	margin-top: 10px;
	border-bottom: solid 1px #000;
}

.pickup202503 .pickup-text ul{
	line-height: 2;

	margin-block: 30px 10px;
}

.pickup202503 .pickup-text li{
	display: flex;
}

.pickup202503 .pickup-text li::before{
	display: inline-block;
	width: 1em;
	margin-right: 0;
	content: '•';

	flex-shrink: 0;
}

.pickup202503 .pickup-text a{
	display: block;
	margin-top: 2em;
	padding: .8em;
	text-align: center;
	border: solid 2px #000;
	background: #efe26a;
}

@media (max-width: 767px){
	/* ==========================================================================
    mv下バナー
  ========================================================================== */
	.mvBottomWall{
		padding: 18.05556vw 0;
	}
	.mvBottomWall .mvBanner{
		max-width: 83.33333vw;
		margin: 0 auto 24.16667vw;
	}
	.pickup202503 .pickup-inner{
		grid-template-columns: 1fr;
		margin-inline: 20px;
	}

	.pickup202503 .pickup-text{
		padding: 40px 20px;
	}
}

/* ==========================================================================
   モデルハウス紹介
========================================================================== */

.mihoshi1LP .modelHouse>header{
	position: relative;
	height: 323px;
	margin-bottom: 340px;
	padding: 186px 0 0;
	background: #f4f4f4;
}

.mihoshi1LP .modelHouse>header::before,.mihoshi1LP .modelHouse>header::after{
	position: absolute;
	z-index: -1;
	top: 322px;
	width: 50vw;
	min-width: 630px;
	height: 0;
	padding-bottom: 14.30556%;
	content: '';
	background: #f4f4f4;
}

.mihoshi1LP .modelHouse>header::before{
	left: 0;

	-webkit-clip-path: polygon(100% 0, 0 0, 0 100%);
	        clip-path: polygon(100% 0, 0 0, 0 100%);
}

.mihoshi1LP .modelHouse>header::after{
	right: 0;

	-webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
	        clip-path: polygon(100% 0, 0 0, 100% 100%);
}

.mihoshi1LP .modelHouse>header h2{
	font-size: 4rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
}

.mihoshi1LP .modelHouse>header h2::after{
	display: block;
	width: 43px;
	height: 5px;
	margin: 13px auto 0;
	content: '';
	background: url('../../img/miyoshi1/hodelhouse_title_line.svg') no-repeat center center / contain;
}

.mihoshi1LP .mhSection .mhHeader{
	position: relative;
	display: grid;
	max-width: 1195px;
	margin: 0 auto;
	margin-bottom: 77px;

	grid-template-columns: 1fr 600px;
	grid-template-rows: auto 1fr;
}

.mihoshi1LP .mhSection .mhHeader::before{
	position: absolute;
	z-index: -1;
	top: -231px;
	right: -135px;
	width: 242px;
	height: 263px;
	content: '';
	background: url('../../img/miyoshi1/kazari1.png') no-repeat center center / contain;
}

.mihoshi1LP .mhSection .mhHeader h2{
	line-height: 1;

	grid-column: 1;
	grid-row: 1;
}

.mihoshi1LP .mhSection .mhHeader p{
	font-size: 3.4rem;
	font-weight: 700;
	line-height: 1.8;
	margin-top: 55px;

	grid-column: 1;
	grid-row: 2;
}

.mihoshi1LP .mhSection .mhHeader .img{
	grid-column: 2;
	grid-row: 1 / 3;
}

.mihoshi1LP .mhSection .imgList{
	position: relative;
	display: flex;
	max-width: 1195px;
	margin: 0 auto;

	justify-content: space-between;
}

.mihoshi1LP .mhSection .imgList::before{
	position: absolute;
	z-index: -1;
	top: -62px;
	left: -100px;
	width: 227px;
	height: 243px;
	content: '';
	background: url('../../img/miyoshi1/kazari2.png') no-repeat center center / contain;
}

.mihoshi1LP .mhSection .secTitle{
	font-size: 3.6rem;
	font-weight: 700;
	display: flex;
	max-width: 460px;
	height: 74px;
	margin: 0 auto;
	background: #72ba99;

	align-items: center;
	justify-content: center;
}

.mihoshi1LP .mhSection .naikan{
	position: relative;
	max-width: 1195px;
	margin: 200px auto 0;
}

.mihoshi1LP .mhSection .naikan::before{
	position: absolute;
	z-index: -1;
	top: 52px;
	right: -159px;
	width: 223px;
	height: 236px;
	content: '';
	background: url('../../img/miyoshi1/kazari3.png') no-repeat center center / contain;
}

.mihoshi1LP .mhSection .naikan .secTitle{
	margin-bottom: 86px;
}

.mihoshi1LP .mhSection .naikan .swiperWall{
	display: grid;
	max-width: 900px;
	margin: 0 auto;

	gap: 0 20px;
	grid-template-columns: 500px 1fr;
}

.mihoshi1LP .mhSection .naikan .swiperWall .swiper{
	width: 100%;
}

.mihoshi1LP .mhSection .naikan .swiperWall .swiper .swiper-button-prev,.mihoshi1LP .mhSection .naikan .swiperWall .swiper .swiper-button-next{
	width: 20px;
	height: 80px;
	margin: 0;

	translate: 0 -50%;
}

.mihoshi1LP .mhSection .naikan .swiperWall .swiper .swiper-button-prev::after,.mihoshi1LP .mhSection .naikan .swiperWall .swiper .swiper-button-next::after{
	display: none;
}

.mihoshi1LP .mhSection .naikan .swiperWall .swiper .swiper-button-prev{
	left: 0;
}

.mihoshi1LP .mhSection .naikan .swiperWall .swiper .swiper-button-next{
	right: 0;
}

.mihoshi1LP .mhSection .naikan .swiperWall .tm{
	display: grid;

	align-content: start;
	gap: 10px;
	grid-template-columns: repeat(3, 1fr);
}

.mihoshi1LP .mhSection .naikan .swiperWall .tm li{
	position: relative;
	cursor: pointer;
}

.mihoshi1LP .mhSection .naikan .swiperWall .tm li:hover{
	opacity: .8;
}

.mihoshi1LP .mhSection .naikan .swiperWall .tm li::before{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	content: '';
	transition: border-color .2s linear;
	border: 4px solid transparent;
}

.mihoshi1LP .mhSection .naikan .swiperWall .tm .activeTm::before{
	border-color: #000;
}

.mihoshi1LP .mhSection .madori{
	position: relative;
	max-width: 985px;
	margin: 181px auto 0;
}

.mihoshi1LP .mhSection .madori::before{
	position: absolute;
	z-index: -1;
	top: -96px;
	left: -253px;
	width: 230px;
	height: 247px;
	content: '';
	background: url('../../img/miyoshi1/kazari4.png') no-repeat center center / contain;
}

.mihoshi1LP .mhSection .madori::after{
	position: absolute;
	z-index: -1;
	right: -218px;
	bottom: 20px;
	width: 230px;
	height: 369px;
	content: '';
	background: url('../../img/miyoshi1/kazari5.png') no-repeat center center / contain;
}

.mihoshi1LP .mhSection .madori .secTitle{
	margin-bottom: 98px;
}

.mihoshi1LP .mhSection .parking{
	margin-top: 180px;
}

.mihoshi1LP .mhSection .parking .secTitle{
	margin-bottom: 56px;
}

.mihoshi1LP .mhSection .parking figure{
	max-width: 747px;
	margin: 0 auto;
}

.mihoshi1LP .mhSection .parking figcaption{
	font-size: 2.4rem;
	margin-top: 10px;
	text-align: center;
}

.mihoshi1LP .mhSection .cta{
	position: relative;
	height: 420px;
	margin-top: 70px;
	padding: 117px 0 0;
	text-align: center;
	background: #f4f4f4;
}

.mihoshi1LP .mhSection .cta h2{
	font-size: 2.4rem;
	line-height: 1.75;
}

.mihoshi1LP .mhSection .cta p{
	font-size: 2.4rem;
	line-height: 1.75;
}

.mihoshi1LP .mhSection .cta .goForm{
	font-size: 2.4rem;
	font-weight: 700;
	display: flex;
	max-width: 460px;
	height: 74px;
	margin: 37px auto 0;
	border: 4px solid #000;
	background: url('../../img/miyoshi1/goform_arrow.svg') no-repeat calc(100% - 12px) center / 12px auto;
	background-color: #efe26a;

	align-items: center;
	justify-content: center;
}

.mihoshi1LP .mhSection .ctaTriangle::before,.mihoshi1LP .mhSection .ctaTriangle::after{
	position: absolute;
	z-index: -1;
	top: 419px;
	width: 50vw;
	min-width: 630px;
	height: 0;
	padding-bottom: 14.30556%;
	content: '';
	background: #f4f4f4;
}

.mihoshi1LP .mhSection .ctaTriangle::before{
	left: 0;

	-webkit-clip-path: polygon(100% 0, 0 0, 0 100%);
	        clip-path: polygon(100% 0, 0 0, 0 100%);
}

.mihoshi1LP .mhSection .ctaTriangle::after{
	right: 0;

	-webkit-clip-path: polygon(100% 0, 0 0, 100% 100%);
	        clip-path: polygon(100% 0, 0 0, 100% 100%);
}

.mihoshi1LP .mhSection2{
	margin-top: 316px;
}

.mihoshi1LP .mhSection2 .mhHeader::before{
	position: absolute;
	z-index: -1;
	top: -231px;
	right: -135px;
	width: 242px;
	height: 263px;
	content: '';
	background: url('../../img/miyoshi1/kazari6.png') no-repeat center center / contain;
}

.mihoshi1LP .mhSection2 .imgList::before{
	position: absolute;
	z-index: -1;
	top: -62px;
	left: -100px;
	width: 225px;
	height: 241px;
	content: '';
	background: url('../../img/miyoshi1/kazari7.png') no-repeat center center / contain;
}

.mihoshi1LP .mhSection2 .secTitle{
	background: #e6e6e6;
}

.mihoshi1LP .mhSection2 .madori{
	position: relative;
	max-width: 952px;
}

.mihoshi1LP .mhSection2 .madori::before{
	position: absolute;
	z-index: -1;
	top: -10px;
	left: -238px;
	width: 230px;
	height: 247px;
	content: '';
	background: url('../../img/miyoshi1/kazari8.png') no-repeat center center / contain;
}

.mihoshi1LP .mhSection2 .madori::after{
	position: absolute;
	z-index: -1;
	right: -249px;
	bottom: 0;
	width: 235px;
	height: 358px;
	content: '';
	background: url('../../img/miyoshi1/kazari9.png') no-repeat center center / contain;
}

.mihoshi1LP .mhSection2 .madori .secTitle{
	margin-bottom: 30px;
}

/* ==========================================================================
   enSecTitle
========================================================================== */

.mihoshi1LP .enSecTitle{
	text-align: center;
}

.mihoshi1LP .enSecTitle h2{
	font-size: 2.8rem;
	font-weight: 500;
	line-height: 1;
	text-align: center;
}

.mihoshi1LP .enSecTitle h2::before{
	font-family: 'Oswald', sans-serif;
	font-size: 10rem;
	font-weight: 500;
	display: block;
	margin-bottom: 25px;
	content: attr(data-en);
	letter-spacing: .13em;
}

/* ==========================================================================
   location
========================================================================== */

.mihoshi1LP .location{
	margin-top: 250px;
}

.mihoshi1LP .location .enSecTitle{
	margin-bottom: 80px;
}

.mihoshi1LP .location .topText{
	font-size: 1.6rem;
	line-height: 1.75;
	text-align: center;
}

.mihoshi1LP .location .map{
	width: 100%;
	margin-top: 90px;
}

.mihoshi1LP .location .map img{
	width: 100%;
	max-width: none;
}

.mihoshi1LP .location .listBox{
	display: grid;
	max-width: 1200px;
	margin: 110px auto 0;

	grid-gap: 35px 0;
	grid-template-columns: minmax(auto, 489px) minmax(auto, 349px) 1fr;
	grid-template-rows: auto 1fr;
}

.mihoshi1LP .location .listBox .list1{
	margin-right: 20px;

	grid-column: 1;
	grid-row: 1 / 3;
}

.mihoshi1LP .location .listBox .list2{
	margin-right: 20px;

	grid-column: 2;
	grid-row: 1;
}

.mihoshi1LP .location .listBox .list3{
	margin-right: 20px;

	grid-column: 2;
	grid-row: 2;
}

.mihoshi1LP .location .listBox .list4{
	grid-column: 3;
	grid-row: 1 / 3;
}

.mihoshi1LP .location .listBox figcaption{
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1;
	margin-bottom: 15px;
	padding-left: 8px;
	border-left: 5px solid #000;
}

.mihoshi1LP .location .listBox li{
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.75;
	margin-left: 1em;
	text-indent: -1em;
}

.mihoshi1LP .location .listBox li::before{
	content: '・';
}

.mihoshi1LP .location .imgListBox{
	display: flex;
	max-width: 1200px;
	margin: 83px auto 0;

	justify-content: space-between;
}

.mihoshi1LP .location .imgListBox li{
	flex: 0 1 381px;
}

.mihoshi1LP .location .imgListBox figcaption{
	font-size: 1.6rem;
	font-weight: 500;
	margin-top: 15px;
	text-align: center;
}

/* ==========================================================================
   quality
========================================================================== */

.mihoshi1LP .quality{
	margin-top: 300px;
	padding: 250px 0 240px;
	background: #f4f4f4;
}

.mihoshi1LP .quality .enSecTitle{
	margin-bottom: 100px;
}

.mihoshi1LP .quality .row{
	display: flex;
	max-width: 1200px;
	margin: 0 auto;

	flex-flow: row wrap;
	gap: 50px 0;
	justify-content: space-between;
}

.mihoshi1LP .quality .qualitySec{
	padding-bottom: 55px;
	border: 5px solid #000;
	background: #fff;

	flex: 0 1 580px;
}

.mihoshi1LP .quality .qualitySec>header{
	display: flex;
	margin-bottom: 40px;

	align-items: center;
}

.mihoshi1LP .quality .qualitySec>header::before{
	width: 93px;
	height: 93px;
	margin: -5px 30px 0 -5px;
	content: '';

	flex-shrink: 0;
}

.mihoshi1LP .quality .qualitySec>header h2{
	font-size: 2.7rem;
	font-weight: 700;
}

.mihoshi1LP .quality .qualitySec p{
	font-size: 1.8rem;
	line-height: 1.75;
	max-width: 503px;
	margin: 0 auto;
}

.mihoshi1LP .quality .qualitySec1>header::before{
	background: url('../../img/miyoshi_sim/quality_icon1.svg') no-repeat center center / contain;
}

.mihoshi1LP .quality .qualitySec1>header .max{
	font-size: 1.6rem;
	font-weight: 500;
	display: grid;
	width: 83px;
	height: 26px;
	margin-left: 15px;
	border: 1px solid #000;

	place-content: center;
}

.mihoshi1LP .quality .qualitySec2>header::before{
	background: url('../../img/miyoshi_sim/quality_icon2.svg') no-repeat center center / contain;
}

.mihoshi1LP .quality .qualitySec3>header::before{
	background: url('../../img/miyoshi_sim/quality_icon3.svg') no-repeat center center / contain;
}

.mihoshi1LP .quality .qualitySec4>header::before{
	background: url('../../img/miyoshi_sim/quality_icon4.svg') no-repeat center center / contain;
}

.mihoshi1LP .quality .gaiyou{
	padding-bottom: 18px;
	letter-spacing: .05em;
	background-image: linear-gradient(to right, #000 2px, transparent 2px);
	background-repeat: repeat-x;
	background-position: left bottom;
	background-size: 10px 2px;

	flex: 0 0 100%;
}

.mihoshi1LP .quality .gaiyou>h2{
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1;
	margin-bottom: 18px;
	padding-bottom: 18px;
	letter-spacing: .05em;
	background-image: linear-gradient(to right, #000 2px, transparent 2px);
	background-repeat: repeat-x;
	background-position: left bottom;
	background-size: 10px 2px;
}

.mihoshi1LP .quality .gaiyou1{
	margin-top: 80px;
}

.mihoshi1LP .quality .gaiyou1 .listInline{
	display: flex;

	flex-flow: row wrap;
}

.mihoshi1LP .quality .gaiyou1 .listInline li{
	font-size: 1.6rem;
	line-height: 2;
	display: inline-flex;

	align-items: center;
}

.mihoshi1LP .quality .gaiyou1 dl{
	line-height: 2;
	display: flex;
}

.mihoshi1LP .quality .gaiyou1 dd{
	display: inline;
	margin: 0;
}

/* ==========================================================================
   お問い合わせ
========================================================================== */

.contactFormBox{
	padding: 130px 0 150px;
	background: #000;
}

.contactFormBox .enSecTitle{
	margin-bottom: 115px;
	color: #fff;
}

.contactFormBox .infoText{
	display: flex;
	max-width: 1050px;
	/* 	height: 80px; */
	margin: 0 auto 50px;
	padding: 20px 0;
	text-align: center;
	background: #efe26a;

	align-items: center;
	flex-flow: column;
	justify-content: center;
}

.contactFormBox .infoText p{
	font-size: 2rem;
	font-weight: bold;
	line-height: 1;
}

.contactFormBox .infoText p:first-child{
	line-height: 1.5;
	margin-bottom: 30px;
}

.contactFormBox .infoText p:first-child a{
	font-size: 1.5em;
}

.contactFormBox .formWall{
	max-width: 1050px;
	margin: 0 auto;
	padding: 40px 50px 140px;
	background: #fff;
}

.contactFormBox .formThanks{
	padding: 120px 0;
}

.contactFormBox .formThanks h2{
	font-size: 3.2rem;
	line-height: 1;
	margin-bottom: 70px;
	text-align: center;
	color: #1d2d3d;
}

.contactFormBox .formThanks p{
	font-size: 1.8rem;
	line-height: 1.75;
	text-align: center;
}

.contactFormBox .formThanks p+p{
	margin-top: 1.5em;
}

.contactFormBox .formThanks .formBtn{
	margin-top: 100px;
}

.page-template-page-miyoshi_sim_thanks{
	background: #000;
}

/* ==========================================================================
   end
========================================================================== */

@media only screen and (max-width: 767px){
	html{
		font-size: 2.77778vw;
	}

	body{
		font-size: 1.4rem;
		font-weight: 400;
		width: 100%;
		min-width: 0;
	}

	img{
		width: 100%;
	}

	.spShow{
		display: inline-block;
	}

	.pcShow{
		display: none;
	}

	/* ==========================================================================
   footer
========================================================================== */
	.footer{
		display: block;
		height: auto;
		padding-bottom: 15vw;
	}

	.footer .copyright{
		font-size: 1.4rem;
		display: flex;
		height: 16.66667vw;

		align-items: center;
		justify-content: center;
	}

	.footer .copyright span{
		font-size: 1.6rem;
	}

	/* ==========================================================================
   mv
========================================================================== */
	.mihoshi1LP .mv::before{
		width: 100%;
		height: 59vw;
	}

	.mihoshi1LP .mv .fv{
		height: auto;
		min-height: 0;
		padding-top: 12.77778vw;
	}

	.mihoshi1LP .mv .logo{
		top: 5.27778vw;
		left: 7.22222vw;
		width: 17.77778vw;
		height: auto;
	}

	.mihoshi1LP .mv .mainText{
		font-size: 1.8rem;
		margin-bottom: 2.22222vw;
	}

	.mihoshi1LP .mv .text2{
		font-size: 1.766rem;
		top: 32.5vw;
		right: 11.11111vw;
		left: auto;

		translate: 0 0;
	}

	.mihoshi1LP .mv .inner{
		display: block;
		height: auto;

		gap: 0;
	}

	.mihoshi1LP .mv .modelhouse{
		padding-bottom: 0;
		background: none;
	}

	.mihoshi1LP .mv .modelhouse .discription{
		display: none;
	}

	.mihoshi1LP .mv .modelhouse header{
		width: 31.11111vw;
		height: 3.80556vw;
		margin-top: 2.5vw;

		order: 2;
	}

	.mihoshi1LP .mv .modelhouse header p{
		font-size: .744rem;
		width: 13.05556vw;
	}

	.mihoshi1LP .mv .modelhouse header h2{
		font-size: 1.066rem;
		width: 18.05556vw;
	}

	.mihoshi1LP .mv .modelhouse1 figure{
		width: 51.11111vw;
		height: 37.22222vw;
	}

	.mihoshi1LP .mv .modelhouse1 header{
		margin-left: 6.94444vw;

		align-self: flex-start;
	}

	.mihoshi1LP .mv .modelhouse2{
		margin-top: 30px;
	}

	.mihoshi1LP .mv .modelhouse2 figure{
		width: 56.11111vw;
		height: 32.77778vw;
	}

	.mihoshi1LP .mv .modelhouse2 header{
		margin-right: 6.94444vw;

		align-self: flex-end;
	}

	.mihoshi1LP .access{
		margin-top: 3.88889vw;
	}

	.mihoshi1LP .access li{
		font-size: 1.03rem;
		font-weight: 700;
		height: 6.94444vw;
		border: .27778vw solid #72ba99;
		background: #fff;

		flex: 0 1 34.44444vw;
	}

	/* ==========================================================================
   ギャラリー
========================================================================== */
	.mihoshi1LP .gallery{
		padding: 11.94444vw 0 14.72222vw;
		background: #000;
	}

	.mihoshi1LP .gallery>h2{
		font-size: 1.38rem;
		margin-bottom: 11.11111vw;
	}

	.mihoshi1LP .gallery>h2 span{
		display: inline-flex;
		margin-right: 1.66667vw;

		align-items: center;
		gap: 0 1.66667vw;
	}

	.mihoshi1LP .gallery>h2 span::before,.mihoshi1LP .gallery>h2 span::after{
		width: 2.66667vw;
		height: 3.47222vw;
	}

	.mihoshi1LP .gallery .swiperWall{
		height: auto;
	}

	.mihoshi1LP .gallery .swiper{
		position: static;
		width: 100%;
		height: auto;
		transform: translateX(0);
	}

	/* ==========================================================================
   モデルハウス紹介
========================================================================== */
	.mihoshi1LP .modelHouse>header{
		height: 34.44444vw;
		margin-bottom: 18.33333vw;
		padding: 17.5vw 0 0;
	}

	.mihoshi1LP .modelHouse>header::before,.mihoshi1LP .modelHouse>header::after{
		position: absolute;
		top: 34.16667vw;
		min-width: 0;
		padding-bottom: 15.27778vw;
	}

	.mihoshi1LP .modelHouse>header h2{
		font-size: 1.53rem;
	}

	.mihoshi1LP .modelHouse>header h2::after{
		width: 4.72222vw;
		height: .55556vw;
		margin: .97222vw auto 0;
	}

	.mihoshi1LP .mhSection .mhHeader{
		max-width: 87.5vw;
		margin-bottom: 11.11111vw;

		grid-template-columns: 100%;
		grid-template-rows: auto auto 1fr;
	}

	.mihoshi1LP .mhSection .mhHeader::before{
		top: 17.5vw;
		right: -15vw;
		width: 25.55556vw;
		height: 27.77778vw;
		background: url('../../img/miyoshi1/sp_kazari1.png') no-repeat center center / contain;
	}

	.mihoshi1LP .mhSection .mhHeader h2{
		width: 71.66667vw;

		justify-self: center;
	}

	.mihoshi1LP .mhSection .mhHeader p{
		font-size: 1.6rem;
		width: 78.05556vw;
		margin: 6.94444vw 0 0 4.72222vw;

		grid-column: 1;
		grid-row: 2;
		justify-self: center;
	}

	.mihoshi1LP .mhSection .mhHeader .img{
		margin-top: 5.55556vw;

		grid-column: 1;
		grid-row: 3;
	}

	.mihoshi1LP .mhSection .imgList{
		width: 73.05556vw;
		margin: 0 auto;

		flex-flow: column;
		gap: 5vw 0;
		justify-content: center;
	}

	.mihoshi1LP .mhSection .imgList::before{
		top: -7.77778vw;
		left: -25.27778vw;
		width: 42.22222vw;
		height: 45.27778vw;
		background: url('../../img/miyoshi1/sp_kazari2.png') no-repeat center center / contain;
	}

	.mihoshi1LP .mhSection .secTitle{
		font-size: 1.38rem;
		max-width: 49.16667vw;
		height: 8.05556vw;
	}

	.mihoshi1LP .mhSection .naikan{
		max-width: 87.5vw;
		margin: 7.5vw auto 0;
	}

	.mihoshi1LP .mhSection .naikan::before{
		top: -17.5vw;
		right: -14.44444vw;
		width: 23.61111vw;
		height: 25vw;
		background: url('../../img/miyoshi1/sp_kazari3.png') no-repeat center center / contain;
	}

	.mihoshi1LP .mhSection .naikan .secTitle{
		margin-bottom: 6.11111vw;
	}

	.mihoshi1LP .mhSection .naikan .swiperWall{
		max-width: 73.05556vw;

		gap: 5vw 0;
		grid-template-columns: 100%;
	}

	.mihoshi1LP .mhSection .naikan .swiperWall .swiper .swiper-button-prev,.mihoshi1LP .mhSection .naikan .swiperWall .swiper .swiper-button-next{
		width: 2.22222vw;
		height: 8.33333vw;
	}

	.mihoshi1LP .mhSection .naikan .swiperWall .tm{
		gap: 1.94444vw;
	}

	.mihoshi1LP .mhSection .naikan .swiperWall .tm li:hover{
		opacity: 1;
	}

	.mihoshi1LP .mhSection .naikan .swiperWall .tm li::before{
		border: .69444vw solid transparent;
	}

	.mihoshi1LP .mhSection .madori{
		max-width: none;
		margin: 10vw auto 0;
	}

	.mihoshi1LP .mhSection .madori::before{
		top: -5.83333vw;
		left: -7.22222vw;
		width: 24.44444vw;
		height: 26.11111vw;
		background: url('../../img/miyoshi1/sp_kazari4.png') no-repeat center center / contain;
	}

	.mihoshi1LP .mhSection .madori::after{
		display: none;
	}

	.mihoshi1LP .mhSection .madori .secTitle{
		margin-bottom: 4.72222vw;
	}

	.mihoshi1LP .mhSection .madori figure{
		width: 62.22222vw;
		margin-left: 16.11111vw;
	}

	.mihoshi1LP .mhSection .parking{
		margin-top: 2.77778vw;
	}

	.mihoshi1LP .mhSection .parking .secTitle{
		margin-bottom: 6.94444vw;
	}

	.mihoshi1LP .mhSection .parking figure{
		max-width: 79.44444vw;
	}

	.mihoshi1LP .mhSection .parking figcaption{
		display: none;
	}

	.mihoshi1LP .mhSection .cta{
		height: 45vw;
		margin-top: 5.55556vw;
		padding: 9.44444vw 0 0;
	}

	.mihoshi1LP .mhSection .cta h2{
		font-size: 1.13rem;
	}

	.mihoshi1LP .mhSection .cta p{
		font-size: 1.13rem;
	}

	.mihoshi1LP .mhSection .cta .goForm{
		font-size: 1.13rem;
		max-width: 60.27778vw;
		height: 9.72222vw;
		margin: 4.44444vw auto 0;
		border: .77778vw solid #000;
		background: url('../../img/miyoshi1/goform_arrow.svg') no-repeat calc(100% - 1.66667vw) center / 1.66667vw auto;
		background-color: #efe26a;
	}

	.mihoshi1LP .mhSection .ctaTriangle::before,.mihoshi1LP .mhSection .ctaTriangle::after{
		position: absolute;
		top: 45vw;
		min-width: 0;
		padding-bottom: 15.27778vw;
	}

	.mihoshi1LP .mhSection2{
		margin-top: 27.77778vw;
	}

	.mihoshi1LP .mhSection2 .mhHeader::before{
		top: 17.5vw;
		right: -15vw;
		width: 25.55556vw;
		height: 27.77778vw;
		background: url('../../img/miyoshi1/sp_kazari6.png') no-repeat center center / contain;
	}

	.mihoshi1LP .mhSection2 .imgList::before{
		top: auto;
		bottom: -22.22222vw;
		left: -15.83333vw;
		width: 24.16667vw;
		height: 25.83333vw;
		background: url('../../img/miyoshi1/sp_kazari7.png') no-repeat center center / contain;
	}

	.mihoshi1LP .mhSection2 .naikan{
		margin-top: 11.11111vw;
	}

	.mihoshi1LP .mhSection2 .madori{
		max-width: none;
	}

	.mihoshi1LP .mhSection2 .madori::before{
		z-index: 2;
		top: auto;
		bottom: -1.94444vw;
		left: -.55556vw;
		width: 24.44444vw;
		height: 26.38889vw;
		background: url('../../img/miyoshi1/sp_kazari8.png') no-repeat center center / contain;
	}

	.mihoshi1LP .mhSection2 .madori::after{
		display: none;
	}

	.mihoshi1LP .mhSection2 .madori .secTitle{
		margin-bottom: 2.22222vw;
	}

	.mihoshi1LP .mhSection2 .madori figure{
		position: relative;
		z-index: 1;
		width: 81.94444vw;
		margin-left: 6.94444vw;
	}

	/* ==========================================================================
   enSecTitle
========================================================================== */
	.mihoshi1LP .enSecTitle h2{
		font-size: 1.4rem;
	}

	.mihoshi1LP .enSecTitle h2::before{
		font-size: 4rem;
		margin-bottom: 2.5vw;
	}

	/* ==========================================================================
   location
========================================================================== */
	.mihoshi1LP .location{
		margin-top: 20.83333vw;
	}

	.mihoshi1LP .location .enSecTitle{
		margin-bottom: 12.5vw;
	}

	.mihoshi1LP .location .topText{
		font-size: 1.4rem;
		width: 83.33333vw;
		margin: 0 auto;
	}

	.mihoshi1LP .location .map{
		margin-top: 16.66667vw;
	}

	.mihoshi1LP .location .listBox{
		display: block;
		max-width: 83.33333vw;
		margin: 20.83333vw auto 0;
	}

	.mihoshi1LP .location .listBox .list1{
		margin-right: 0;
	}

	.mihoshi1LP .location .listBox .list2{
		margin-right: 0;
	}

	.mihoshi1LP .location .listBox .list3{
		margin-right: 0;
	}

	.mihoshi1LP .location .listBox figure+figure{
		margin-top: 13.88889vw;
	}

	.mihoshi1LP .location .listBox figcaption{
		font-size: 1.6rem;
		margin-bottom: 4.16667vw;
		padding-left: 2.5vw;
		border-left: 1.38889vw solid #000;
	}

	.mihoshi1LP .location .listBox li{
		font-size: 1.4rem;
		line-height: 1.78;
	}

	.mihoshi1LP .location .imgListBox{
		max-width: 83.33333vw;
		margin: 26.38889vw auto 0;

		flex-flow: column;
		gap: 11.11111vw 0;
		justify-content: flex-start;
	}

	.mihoshi1LP .location .imgListBox li{
		flex: 0 1 auto;
	}

	.mihoshi1LP .location .imgListBox figcaption{
		font-size: 1.4rem;
		line-height: 1.78;
		margin-top: 4.16667vw;
	}

	/* ==========================================================================
   quality
========================================================================== */
	.mihoshi1LP .quality{
		margin-top: 45.83333vw;
		padding: 18.61111vw 0 25vw;
		background: #f4f4f4;
	}

	.mihoshi1LP .quality .enSecTitle{
		margin-bottom: 16.66667vw;
	}

	.mihoshi1LP .quality .row{
		display: flex;
		max-width: 91.66667vw;
		margin: 0 auto;

		flex-flow: column;
		gap: 8.33333vw 0;
		justify-content: flex-start;
	}

	.mihoshi1LP .quality .qualitySec{
		padding-bottom: 6.94444vw;
		border: .83333vw solid #000;

		flex: 0 1 auto;
	}

	.mihoshi1LP .quality .qualitySec>header{
		margin-bottom: 6.94444vw;
	}

	.mihoshi1LP .quality .qualitySec>header::before{
		width: 13.88889vw;
		height: 13.88889vw;
		margin: -.83333vw 3.88889vw 0 -.83333vw;
	}

	.mihoshi1LP .quality .qualitySec>header h2{
		font-size: 1.8rem;
		font-weight: 900;
	}

	.mihoshi1LP .quality .qualitySec p{
		font-size: 1.4rem;
		max-width: 83.33333vw;
	}

	.mihoshi1LP .quality .qualitySec1>header .max{
		font-size: 1.4rem;
		width: 23.05556vw;
		height: 7.22222vw;
		margin-left: 4.16667vw;
		border: .27778vw solid #000;
	}

	.mihoshi1LP .quality .gaiyou{
		margin-bottom: 4.16667vw;
		padding-bottom: 4.16667vw;
		background-image: linear-gradient(to right, #000 .55556vw, transparent .55556vw);
		background-size: 2.5vw .55556vw;
	}

	.mihoshi1LP .quality .gaiyou>h2{
		font-size: 1.6rem;
		margin-bottom: 4.16667vw;
		padding-bottom: 4.16667vw;
		background-image: linear-gradient(to right, #000 .55556vw, transparent .55556vw);
		background-size: 2.5vw .55556vw;
	}

	.mihoshi1LP .quality .gaiyou1{
		margin-top: 9.72222vw;
	}

	.mihoshi1LP .quality .gaiyou1 .listInline{
		display: block;
	}

	.mihoshi1LP .quality .gaiyou1 .listInline li{
		font-size: 1.4rem;
		display: inline;
		text-align: left;
	}

	.mihoshi1LP .quality .gaiyou1 .listInline li+li::after{
		content: ' ';
	}

	.mihoshi1LP .quality .gaiyou1 dl{
		line-height: 2;
		display: block;
	}

	.mihoshi1LP .quality .gaiyou1 dd{
		display: inline;
		margin: 0;
	}

	.mihoshi1LP .quality .gaiyou1 dd br{
		display: none;
	}

	/* ==========================================================================
   お問い合わせ
========================================================================== */
	.contactFormBox{
		padding: 16.66667vw 0 22.22222vw;
	}

	.contactFormBox .enSecTitle{
		margin-bottom: 11.11111vw;
	}

	.contactFormBox .infoText{
		max-width: 91.66667vw;
		/* 		height: 32.5vw; */
		margin: 0 auto 8.33333vw;
	}

	.contactFormBox .infoText p{
		font-size: 1.8rem;
		line-height: 1.38;
	}

	.contactFormBox .infoText p:first-child a{
		display: block;
	}

	.contactFormBox .formWall{
		max-width: 91.66667vw;
		padding: 5.55556vw 4.16667vw 22.22222vw;
	}

	.contactFormBox .formThanks{
		padding: 13.88889vw 4.16667vw 16.66667vw;
	}

	.contactFormBox .formThanks h2{
		font-size: 1.6rem;
		margin-bottom: 6.94444vw;
	}

	.contactFormBox .formThanks p{
		font-size: 1.4rem;
		text-align: justify;
	}

	.contactFormBox .formThanks .formBtn{
		margin-top: 13.88889vw;
	}

	/*end*/
}