@charset "UTF-8";

/*
Theme Name: bnc2026
Description: ブライダルナガノ・コスチューム Website Theme
Author: ブライダルナガノ・コスチューム
Author URI: https://bridal-nagano.com/
*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;500;600&display=swap');
@import url('https://fonts.googleapis.com/css?family=Cormorant+Infant:400,500,600,700&display=swap');
@import url('https://cdn.jsdelivr.net/npm/yakuhanjp@3.4.1/dist/css/yakuhanmp.min.css');

body {
	background: #fff;
	line-height: 1.8;
	letter-spacing: .03em;
	font-size: 1.4rem;
	font-family: YakuHanMP,'Noto Serif JP','Yu Mincho',YuMincho,'Hiragino Mincho ProN',serif;
	color: #333;
}
#headerInner, #gNavi, #social, #social li a, .costumeType, .typeBody, #brandList, #infoBox, #footerInner, #fNaviBox, #brandList li a, #headLetter, #costumeList, #kimonoCatlist, #kimonoCatlist li a, #brandTtl, #brandDetails, .slick-slider, /* #headBox.headNoimg h1, */ #newsWrap, .contWrap, .subImg, #flowList, .flowPoint, .shopSubImg {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
}
#headerInner, .costumeType, #brandList, #infoBox, #costumeList, #brandTtl, #brandDetails, #newsWrap, .contWrap, .subImg, #flowList, .shopSubImg {
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
#headerInner, #gNavi, #social, #social li a, .typeBody, #infoBox, #brandList li a, #headLetter, #kimonoCatlist li a, #brandTtl, #brandDetails, .slick-slider, .flowPoint, #plan .contWrap, #shopIntro .contWrap {
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;
}
.typeBody, #brandList li a, #kimonoCatlist, #kimonoCatlist li a, .slick-slider, .flowPoint {
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
}
.typeBody {
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-ms-flex-direction: column;
	flex-direction: column;
}
#brandList, #costumeList, #shopImgList {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
}
/* ヘッダー */
#headerInner {
	position: relative;
	height: 170px;
}
#toggle, #naviBox {
	display: none;
}
nav {
	font-size: 1.6rem;
}
#gNavi {
	margin-top: 40px;
}
#gNavi li + li {
	margin-left: 2.15vw;
}
#social {
	position: absolute;
	top: 170px;
	right: 0;
	width: 5.55555vw;
	-ms-writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
}
#social li + li {
	margin-top: 1.5em;
}
#social li a img {
	margin-bottom: 10px;
}
/* コンテンツ */
#index main, section + section, #shopInfo {
	margin-top: 120px;
}
#headerInner, #topimage, #headBox, #headBoxBrand {
	padding: 0 5.55555vw;
}
.inner, .inBox, .inBox2 {
	margin: 0 auto;
	padding: 0 80px;
	width: 100%;
}
.inBox {
	padding: 0 130px;
}
.inBox2 {
	padding: 0;
	max-width: 1000px;
}
@media screen and (min-width: 1440px) {
	.inner, .inBox {
		padding: 0;
	}
	.inner {
		width: 1280px;
	}
	.inBox {
		overflow: hidden;
		width: 1180px;
		padding: 0 80px;
	}
}
@media screen and (max-width: 1439px) {
	.inner {
		padding: 0 5.55555vw;
	}
}
.en {
	letter-spacing: .04em;
	font-family: 'Cormorant Infant', serif;
	font-weight: 500;
}
.goth {
	font-family: '游ゴシック体', YuGothic, '游ゴシック', 'Yu Gothic', 'ヒラギノ角ゴ ProN', 'Hiragino kaku Gothic ProN', 'メイリオ', Meiryo, sans-serif;
}
.newline {
	display: inline-block;
}
.noMgn {
	margin-bottom: 0!important;
}
.telLink a {
	color: inherit;
}
h1 a {
	display: block;
}
h2 {
	position: relative;
	display: inline-block;
	margin: 0 0 1.5em 130px;
	text-align: left;
	font-size: 3.2rem;
	color: #888;
}
@media screen and (min-width: 1680px) {
	h2 {
		font-size: 1.806vw;
	}
}
h2::before {
	content: "";
	position: absolute;
	top: 50%;
	left: -130px;
	width: 85px;
	height: 2px;
	background: #aaa;
}
#shopSummary h2 {
  margin-bottom: 1em;
}
#latestNews h2 {
	margin-bottom: 1.1em;
}
@media screen and (max-width: 1679px) {
	#brandDB h2 {
		margin-left: 190px;
	}
}
@media screen and (max-width: 1439px) {
	#brandDB h2 {
		margin-left: 170px;
	}
}
#headBox {
	margin-bottom: 65px;
	height: 32.6vw;
}
@media screen and (min-width: 1680px) {
	#headBox {
		height: 27.7778vw;
	}
}
#headLetter {
	width: 100%;
	height: 100%;
	background: url(assets/images/wedding/head_img.jpg) no-repeat center top;
	background-size: cover!important;
}
#color #headLetter {
	background: url(assets/images/color/head_img_kai.jpg) no-repeat 20% top;
}
#tuxedo #headLetter {
	background: url(assets/images/tuxedo/head_img.jpg?v2) no-repeat center top;
}
#kimono #headLetter {
	background: url(assets/images/kimono/head_img2025.jpg) no-repeat center top;
}
#headBox h1 {
	margin: 0 0 .9vw 5.8vw;
	font-size: 3.6rem;
	color: #666;
}
#headBox h1.whiteLetters {
	color: #fff;
}
.subjp {
	display: block;
	margin-top: .35em;
	font-size: 1.5rem;
	font-weight: bold;
	font-weight: 600;
}
@media screen and (min-width: 1680px) {
	#headBox h1 .en {
		font-size: 2.143vw;
	}
	.subjp {
		font-size: 0.893vw;
	}
}
#headBox.headNoimg {
	margin-bottom: 100px;
	height: auto;
}
#headBox.headNoimg h1 {
	margin: auto;
	padding: 1.06em 0 1.445em;
	border-top: solid 1px #d6d6d6;
	border-bottom: solid 1px #d6d6d6;
	text-align: center;
}
#headBox.headNoimg .subjp {
	margin: .2em 0 0;
}
@media screen and (min-width: 1920px) {
	#headBox.headNoimg h1 {
		padding: 1.5em 0 1.75em;
	}
	#headBox.headNoimg h1 .en {
		font-size: 1.979vw;
	}
	#headBox.headNoimg .subjp {
		font-size: 0.781vw;
	}
}
.bodyBox h3 {
	margin-bottom: 1.1em;
	text-align: left;
	line-height: 1.55;
	font-size: 2.2rem;
	font-weight: 500;
}
.viewBtn a, #more-button {
	font-size: 1.45rem;
}
.viewBtn a {
	display: block;
	margin: 0 auto;
	padding: .55em;
	width: 200px;
	border: solid 1px #ccc;
	text-align: center;
}
.moreBtn {
	position: relative;
	display: inline-block;
	float: right;
}
.moreBtn a {
	margin-right: 55px;
}
.moreBtn::after {
	content: "";
	position: absolute;
	top: 50%;
	right: 0;
	width: 40px;
	height: 1px;
	background: #666;
}
/* TOP */
#topimage {
	height: 54.167vw;
}
.inDetail {
	width: 100%;
	height: 100%;
}
body .vegas-container {
	height: 100%!important;
}
#covid19 a {
	display: block;
	margin: 0 auto 120px;
	padding: 1.3em;
	max-width: 850px;
	border: solid 1px #d2e5df;
	background: #edf6f3;
	text-align: center;
	letter-spacing: .05em;
	font-size: 2.0rem;
	color: #495b46;
}
#aboutUs {
	margin: 0 auto;
	max-width: 850px;
}
#concept {
	padding: 0 130px;
}
#conceptLead {
	margin-bottom: 1em;
	line-height: 1.6;
	font-size: 2.2rem;
	font-weight: 500;
}
#conceptBody {
	line-height: 2.25;
}
#brandsLead {
	text-align: left;
}
#costume {
	width: 100%;
}
#costumeBox, .costumeType {
	width: 100%;
}
.costumeType div {
	width: 49.5%;
	width: calc((100% - 0.83333vw) / 2);
	height: 41.667vw;
	background-color: #f7f7f7;
}
@media screen and (min-width: 1680px) {
	.costumeType div {
		height: 34vw;
	}
}
.costumeType + li {
	margin-top: 75px;
}
.typeImg {
	background-size: cover!important;
}
.wd {
	background: url(assets/images/index/img_weddingdress.jpg?v2) no-repeat center top;
}
.cd {
	background: url(assets/images/index/img_colordress.jpg) no-repeat center top;
}
.kmn {
	background: url(assets/images/index/img_kimono_new.jpg) no-repeat center top;
}
.txd {
	background: url(assets/images/index/img_tuxedo.jpg) no-repeat center top;
}
.typeName {
	margin: 45px 0;
}
.typeName .en {
	position: relative;
	top: -.95em;
	margin-right: 1.80555vw;
	font-size: 3.6rem;
	font-size: 2.5vw;
	color: #555;
}
.typeName .en::after {
	content: "";
	position: absolute;
	top: 2.63888vw;
	right: -3.81944vw;
	width: 5.55555vw;
	height: 1px;
	background: #999;
	-webkit-transform: rotate(-58deg);
	transform: rotate(-58deg);
}
.typeName .jp {
	font-size: 1.6rem;
	font-size: 1.111vw;
}
@media screen and (min-width: 1680px) {
	.typeName .en {
		top: -1.27em;
		font-size: 2.153vw;
	}
	.typeName .jp {
		font-size: 0.833vw;
	}
}
#brandList {
	margin-top: 25px;
	width: 100%;
}
#brandList li, #brandList::before, #brandList::after {
	width: 24.11764%;
	width: calc((100% - 36px) / 4);
}
#brandList::before, #brandList::after {
	content: "";
	display: block;
}
#brandList::before {
	order:1;
}
#brandList li {
	margin-top: 12px;
}
#brandList li a {
	width: 100%;
	height: 100%;
	border: solid 1px #ddd;
	text-align: center;
	font-size: 2.2rem;
}
#latestNews {
	overflow: hidden;
}
#latestNews .inner {
	max-width: 1020px;
}
#latestNews .inBox {
	max-width: 920px;
}
#newsList {
	margin-bottom: 35px;
}
#newsList li {
	border-bottom: solid 1px #ddd;
	line-height: 1.5;
}
#newsList li:first-child {
	border-top: solid 1px #ddd;
}
#newsList a {
	display: table;
	width: 100%;
	padding: 26px 0;
}
#newsList a time, .newsTitle {
	display: table-cell;
	vertical-align: middle;
}
#newsList a time {
	width: 7.5em;
	font-size: 1.5rem;
	color: #999;
}
/* Wedding */
#intro {
	margin-bottom: 80px;
}
#lead {
	margin-bottom: 45px;
	text-align: center;
	line-height: 2.15;
	font-size: 1.5rem;
}
.openBtn {
	display: block;
	position: relative;
	margin: 0 auto;
	padding: 20px 24px;
	width: 340px;
	border: solid 1px #ccc;
	line-height: 1;
	text-align: center;
	font-size: 2.0rem;
	cursor: pointer;
}
.btnIcon, .btnIcon span {
	display: inline-block;
	-webkit-transition: all .3s;
	-o-transition: all .3s;
	transition: all .3s;
}
.btnIcon {
	position: absolute;
	top: 50%;
	right: 24px;
	margin-top: -1px;
	width: 15px;
	height: 15px;
}
.btnIcon span {
	position: absolute;
	width: 100%;
	height: 1px;
	background: #666;
}
.btnIcon span:nth-of-type(1) {
	-webkit-transform: rotate(0deg);
	-ms-transform: rotate(0deg);
	transform: rotate(0deg);
}
.btnIcon span:nth-of-type(2) {
	-webkit-transform: rotate(90deg);
	-ms-transform: rotate(90deg);
	transform: rotate(90deg);
}
.btnIcon.active span:nth-of-type(2) {
	-webkit-transform: rotate(180deg);
	-ms-transform: rotate(180deg);
	transform: rotate(180deg);
}
#brands {
	display: none;
}
#brands #brandList {
	margin-top: 35px;
}
#dressBox {
	margin: 0 auto 90px;
	text-align: center;
}
#dressList {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
	-webkit-box-orient: horizontal;
	-webkit-box-direction: normal;
	-webkit-flex-flow: row wrap;
	-ms-flex-flow: row wrap;
	flex-flow: row wrap;
	padding: 0 60px;
	width: 100%;
}
@media screen and (min-width: 1680px) {
	#dressList {
		padding: 0;
	}
}
@media screen and (max-width: 1439px) {
	#dressList {
		padding: 0 40px;
	}
}
#dressList::before {
	content: "";
	display: block;
	width: 18.88888vw;
	width: calc((100% - 192px) / 4);
	order:1;
}
#dressList::after {
	content: "";
	display: block;
	width: 18.88888vw;
	width: calc((100% - 192px) / 4);
}
#dressList li {
/* 	margin-bottom: 54px; */
	margin-bottom: 47px;
	width: 18.88888vw;
	width: calc((100% - 192px) / 4);
}
@media screen and (max-width: 1439px) {
	#dressList li {
/* 		margin-bottom: 3.75vw; */
		margin-bottom: 3.4vw;
		width: calc((100% - 13.33333vw) / 4);
	}
}
#dressList li a {
	display: block;
	width: 100%;
	height: auto;
}
.costumeNo {
/*
	margin-top: 7.5%;
	line-height: 1;
*/
	margin-top: 6.5%;
	line-height: 1.4;
	font-size: 1.2rem;
}
#costumeList {
	width: 100%;
}
#costumeList li {
	width: 47.66%;
}
#costumeList li:nth-child(n+3) {
	margin-top: 45px;
}
#costumeList li a {
	display: block;
}
#costumeList .typeImg {
	height: 25vw;
}
@media screen and (min-width: 1500px) {
	#costumeList .typeImg {
		height: 360px;
	}
}
.typeNameBox {
	margin-top: 26px;
}
#costumeList .typeName {
	float: left;
	margin: 28px 0 3px;
	line-height: 1;
}
#costumeList .typeName .en {
	margin-right: 26px;
	font-size: 2.5rem;
}
#costumeList .typeName .en::after {
	top: 25px;
	right: -48px;
	width: 64px;
}
@media screen and (min-width: 1680px) {
	.typeNameBox {
		margin-top: 38px;
	}
	#costumeList .typeName .en::after {
		top: 30px;
	}
}
#costumeList .typeName .jp {
	font-size: 1.3rem;
}
#costumeList .moreBtn {
	line-height: 1.3;
	font-size: 1.4rem;
}
#costumeList .moreBtn > span {
	margin-right: 55px;
}
#costumeList .wd {
	background: url(assets/images/img_weddingdress.jpg?v2) no-repeat center top;
}
#costumeList .cd {
	background: url(assets/images/img_colordress.jpg) no-repeat center top;
}
#costumeList .kmn {
	background: url(assets/images/img_kimono_new.jpg) no-repeat center top;
	background-color: #f7f7f7;
}
#costumeList .txd {
	background: url(assets/images/img_tuxedo.jpg) no-repeat center top;
}
/* brand */
#headBoxBrand {
	margin-bottom: 100px;
}
#brandTtl {
	padding: 0 3.8vw;
	height: 147px;
	border-top: solid 1px #d6d6d6;
	border-bottom: solid 1px #d6d6d6;
	line-height: 1;
}
.costumeName, .costumeNameJp {
	color: #666;
}
.costumeName {
	font-size: 3.6rem;
}
.costumeNameJp {
	font-size: 1.8rem;
	font-weight: 600;
}
.typeList {
	overflow: hidden;
}
.typeList li {
	float: left;
}
.typeList li + li {
	margin-left: 10px;
}
.typeList li a {
	display: block;
	padding: .695em;
	width: 210px;
	border: solid 1px #ccc;
	line-height: 1;
	text-align: center;
	font-size: 1.8rem;
}
.typeList li.current a {
	border-color: #a1d2b7;
}
#brandDetails {
	margin-bottom: 90px;
}
.brandImg {
	width: 480px;
}
.brandImg img {
	width: 100%;
}
.brandTxtBox {
	width: calc(100% - 560px);
}
#brandName {
	margin-bottom: 30px;
	line-height: 1;
}
#brandName .jp {
	display: block;
	margin-top: 15px;
	font-size: 1.3rem;
}
.brandTxt {
	line-height: 2.1;
}
.khmarry {
	position: relative;
	top: 12px;
}
.otherName {
	font-size: 3.4rem;
}
#brandDB #dressBox {
	margin-bottom: 45px;
}
/* Kimono */
#kimonoCatlist {
	width: 100%;
}
#kimonoCatlist li {
	margin: 0 10px;
	width: 300px;
	line-height: 1.45;
}
#kimonoCatlist li a {
	padding: 18px;
	width: 100%;
	height: 100%;
	border: solid 1px #ccc;
	text-align: center;
	font-size: 1.5rem;
}
#itemImg {
	height: 100%;
}
.slideThumb {
	padding: 0 80px;
}
.slideThumb img {
	width: auto;
	max-height: 724px;
}
.swiper-slide {
	overflow: hidden;
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	-webkit-align-items: center;
	align-items: center;;
	-webkit-box-pack: center;
	-ms-flex-pack: center;
	-webkit-justify-content: center;
	justify-content: center;
	background: #fff;
}
.swiper-button-next, .swiper-button-prev {
	top: calc(50% - 44px)!important;
	bottom: auto!important;
	margin-top: 0!important;
	width: 41px!important;
	height: 41px!important;
	border: solid 1px #ccc;
	background-image: none!important;
}
.swiper-button-next span, .swiper-button-prev span {
	position: relative;
	display: inline-block;
}
.swiper-button-next span::after, .swiper-button-prev span::after {
	content: "";
	position: absolute;
	top: -3px;
	left: 13px;
	vertical-align: middle;
	width: 9px;
	height: 9px;
	border-top: 1px solid #aaa;
	border-right: 1px solid #aaa;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.swiper-button-prev span::after {
	left: 17px;
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
}
.swiper-button-next {
	right: 0!important;
}
.swiper-button-prev {
	left: 0!important;
}
.swiper-pagination {
	position: static!important;
	margin: 22px 0 0;
}
.swiper-container-horizontal>.swiper-pagination-bullets, .swiper-pagination-custom, .swiper-pagination-fraction {
	bottom: 0!important;
}
.swiper-pagination-bullet {
	margin: 0 6px!important;
	width: 6px!important;
	height: 6px!important;
}
.swiper-pagination-bullet-active {
	background: #999!important;
}
#brandBox {
	margin-top: 50px;
}
.modelDescription ul {
	display: -webkit-box;
	display: -ms-flexbox;
	display: -webkit-flex;
	display: flex;
	-webkit-box-pack: justify;
	-ms-flex-pack: justify;
	-webkit-justify-content: space-between;
	justify-content: space-between;
}
.feature {
	width: calc(100% - 350px);
}
.modelNumber {
	margin-bottom: 1.0em;
	font-size: 2.2rem;
	font-weight: 500;
}
.modelNumber.en {
	font-family: 'Cormorant Infant',YakuHanMP,'Noto Serif JP','Yu Mincho',YuMincho,'Hiragino Mincho ProN',serif;
}
.modelNumber.waso {
	font-size: 1.9rem;
}
#brandName.brandLabel {
	margin-bottom: 16px;
}
#brandName.brandLabel .modelNumber {
	margin-bottom: 0;
}
#brandName.brandLabel .en {
	margin-right: 12px;
	font-size: 2.7rem;
}
#brandName.brandLabel .waso {
	font-size: 2.1rem;
}
#brandName.brandLabel .jp {
	margin-top: 7px;
}
/* 公開時は非表示 */
/*
.price {
	display: block;
	margin-top: 1.2em;
	font-size: 1.8rem;
}
.money {
	margin-left: .7em;
	font-size: 1.9rem;
}
*/
.requestBtn a, #fContactBtn a {
	display: block;
	padding: 1.04em;
	width: 280px;
	border: solid 1px #999;
	text-align: center;
}
.backtBtn {
	margin-top: 2.3em;
	text-align: right;
}
.backtBtn a {
	position: relative;
	display: inline-block;
	padding-bottom: .45em;
	line-height: 1;
	font-size: 1.6rem;
}
.backtBtn a::before {
	content: "";
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: 1px;
	background: #666;
}
/* Pre-shoot */
.subImg {
	margin-top: 80px;
}
#preshootIntro .subImg {
	display: block;
}
.subImg li {
	width: 31.25%;
}
.flowTtl {
	margin: -1.5em 0 50px;
	text-align: center;
	font-size: 1.8rem;
}
#flowList li {
	width: 15.278vw;
	max-width: 220px;
}
#flowList span.newline {
	display: inline;
}
.flowPoint {
	position: relative;
	width: 15.278vw;
	height: 15.278vw;
	max-width: 220px;
	max-height: 220px;
	background: #ebf5f0;
	text-align: center;
	font-size: 1.7rem;
}
.flowPoint + p {
	margin-top: 20px;
}
.arrowNext {
	display: block;
	position: absolute;
	right: -30px;
	width: 48px;
	height: 10px;
	z-index: 1;
}
.arrowNext::after, .arrowNext::before {
	content: "";
	position: absolute;
	bottom: 0;
	right: 0;
	margin: auto;
}
.arrowNext::before {
	width: 100%;
	height: 1px;
	background: #bbb;
}
.arrowNext::after {
	bottom: -7px;
	right: 3px;
	width: 15px;
	height: 15px;
	border-top: 1px solid #bbb;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.flowLink a {
	display: block;
	margin: 55px auto 0;
	padding: 1.2em;
	width: 420px;
	border: solid 1px #ccc;
	text-align: center;
}
.shortBtn a {
	margin: 58px auto 0;
}
.planPriceBox {
	font-size: 2.2rem;
	font-weight: 500;
}
.planPrice {
	font-size: 2.3rem;
}
.tax {
	font-size: 1.3rem;
}
.planList {
	margin: 20px 0 25px;
	padding: 30px;
	border: solid 6px #ebf5f0;
	text-align: left;
	font-size: 1.5rem;
}
.planList li + li {
	margin-top: .4em;
}
.notesList {
	line-height: 1.6;
	font-size: 1.3rem;
}
.notesList li {
	margin-left: 1em;
	text-indent: -1em;
}
.notesList li + li {
	margin-top: .45em;
}
/* Hair make */
#jitakutsukuri {
	-webkit-box-orient: horizontal;
	-webkit-box-direction: reverse;
	-ms-flex-flow: row-reverse;
	flex-flow: row-reverse;
	margin-bottom: -40px;
}
.contWrap + .contWrap {
	margin-top: 85px;
}
.contWrap img {
	width: 100%;
}
.imgBox {
	width: 39.21568%;
}
.bodyBox {
	width: 54.90196%;
	line-height: 1.95;
}
.imgBox.roughness {
	margin-top: 110px;
}
.bodyBox.roughness {
	margin-top: 104px;
}
.subImg.make li {
	width: 264px;
}
/* Memorial */
#aboutMemorial .imgBox {
	width: 44.1176471%
}
#memorialLead {
	margin-top: 190px;
	width: 50%;
}
#memorialImg {
	overflow: visible;
}
.subImg.collections li {
	width: 31.6%;
}
.subImg.collections li img {
	 width: 100%;
}
/*
.firstCollection {
  margin-top: 7.35294%;
}
*/
/*
.firstCollection li:first-child {
	margin-top: -55px;
}
.firstCollection li:nth-child(3) {
	margin-top: 20px;
}
.firstCollection li:last-child {
	margin-top: 95px;
}
*/
.firstCollection li {
	margin-top: -5px;
}
.firstCollection li:first-child {
	margin-top: 70px;
}
.firstCollection li:last-child {
	margin-top: -80px;
}
.secondCollection {
  margin-top: 2.74509%;
}
.secondCollection li:nth-child(2) {
	margin-top: -150px;
}
.secondCollection li:nth-child(3) {
	margin-top: -75px;
}
#memorialImg .requestBtn a {
  margin: 1.96078% auto 0;
}
.spMemorialImg {
  display: none;
}
.leadImg {
  margin-top: 80px;
}
/* Shop */
#shopDetails {
	margin-bottom: 2.0em;
}
#shopDetails, #shopSummary {
	text-align: left;
}
#shopImgBox {
	margin-top: 50px;
}
#showcase {
	width: 29.0196%;
}
#shopImgList {
	width: 69.8039%;
}
#shopImgList li {
	width: 49.1573%;
}
#shopImgList li:nth-child(n+3) {
	margin-top: 12px;
}
.shopTxt {
	margin-top: 45px;
}
#shopWrap .shortBtn a {
	margin-top: 42px;
}
/* News */
#newsMain {
	width: 700px;
}
#sideMenu {
	width: 220px;
}
#newsMain article + article {
	margin-top: 130px;
}
.articleTtl {
	margin-bottom: 40px;
}
.articleTtl h3 {
	font-size: 1.8rem;
}
.articleTtl time {
	display: block;
	margin-bottom: 35px;
	padding-bottom: .3em;
	border-bottom: solid 1px #ddd;
	font-size: 1.5rem;
	color: #999;
}
.entryBody p + p {
	margin-top: 2em;
}
.entryBody img {
	padding: .8em 0;
}
.entryBody a {
	text-decoration: underline;
}
.entryBody a:hover {
	text-decoration: none;
}
.pagenation {
	margin: 130px 0 0 -16px;
	letter-spacing: 0;
	line-height: 1;
	font-size: 1.5rem;
}
.pagenation span, .pagenation a {
	display: inline-block;
	vertical-align: top;
	margin: 0 16px;
	min-width: 14px;
	text-align: center;
	color: #666;
}
.pagenation .current::after {
	content: "";
	display: block;
	margin: 10px auto 0;
	width: 14px;
	height: 2px;
	background: #ccc;
}
#archiveBox dt {
	padding: .48em 20px;
	border: solid 1px #ccc;
	font-size: 1.7rem;
}
#archiveList {
	margin-top: 15px;
}
#archiveList li + li {
	margin-top: 8px;
}
#archiveList li a {
	display: block;
	width: 100%;
	padding: .57em 20px;
	background: #edf6f2;
	line-height: 1.4;
	font-size: 1.5rem;
}
#archiveTitle {
	margin-bottom: 1.5em;
	line-height: 1;
	font-size: 1.7rem;
}
#pageNavi {
	margin-top: 65px;
	padding: 16px 15px;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
	width: 100%;
	text-align: center;
	line-height: 1;
}
#pageNavi ul li a {
	letter-spacing: .07em;
	font-size: 1.5rem;
	font-weight: 500;
	color: #004da0;
}
.prev, .next {
	width: 40px;
}
.prev a, .next a {
	display: block;
	padding: 15px;
}
.all {
	padding: 15px;
}
#pageNavi ul li a img {
	opacity: 1;
}
#news .backtBtn {
	margin-top: 45px;
}
/* Privacy Policy */
.privacyList {
	margin-top: 40px;
}
.privacyList li {
	margin-left: 1.5em;
	list-style: decimal;
}
.privacyList li + li {
	margin-top: 1.5em;
}
ul.privacyList {
	margin-top: 1em;
}
ul.privacyList li {
	list-style: disc;
}
ul.privacyList li + li {
	margin-top: .6em;
}
/* Contact */
#contactLead {
	margin-bottom: 80px;
	line-height: 1.95;
	text-align: left;
}
.contactTel {
	font-weight: 500;
}
.mw_wp_form {
	margin-top: -20px;
	padding-top: 20px;
}
button, input, select, textarea, option {
	font-family: inherit;
	font-size: inherit;
}
input[type="text"],
input[type="submit"],
input[type="email"],
input[type="url"],
textarea,
select {
	-moz-appearance: none;
	-webkit-appearance: none;
	appearance: none;
	border-radius: 0;
	-webkit-border-radius: 0;
	-moz-border-radius: 0;
}
#mailfield input[type="text"],
#mailfield input[type="email"],
#mailfield input[type="url"] {
	height: 44px;
}
#mailfield input,
#mailfield textarea {
	border: solid 1px #d6d6d6;
	padding: .8em;
	font-size: 1.4rem;
	vertical-align: middle;
	letter-spacing: 1px;
	-webkit-user-select : auto;
}
#mailfield textarea {
	width: 100%;
	resize: vertical;
}
#mailfield input[type="email"] {
	width: 500px;
}
#mailfield .inputTxt .mwform-tel-field input[type="text"],
#mailfield .inputTxt .mwform-zip-field input[type="text"] {
	width: 74px;
}
.inputFull input {
	width: 100%;
}
.mwform-checkbox-field {
	display: inline-block;
	margin-right: 1.8em;
}
.mwform-checkbox-field input {
	display: none;
}
.mwform-checkbox-field label {
	display: inline-block;
	position: relative;
	padding: 9px 0 9px 30px;
	text-align: left;
	line-height: 1.5;
	vertical-align: middle;
	cursor: pointer;
}
.mwform-checkbox-field label::before {
	content: "";
	position: absolute;
	top: calc(50% - 10px);
	left: 0;
	display: block;
	width: 20px;
	height: 20px;
	border: solid 1px #d6d6d6;
	background: #fff;
}
.mwform-checkbox-field span::after {
	-webkit-transition: opacity 0.2s linear;
	transition: opacity 0.2s linear;
	content: "";
	position: absolute;
	top: 50%;
	left: 8px;
	display: block;
	opacity: 0;
	margin-top: -6px;
	width: 6px;
	height: 10px;
	border-right: 2px solid #333;
	border-bottom: 2px solid #333;
	-webkit-transform: rotate(45deg);
	-ms-transform: rotate(45deg);
	transform: rotate(45deg);
}
.mwform-checkbox-field input[type="checkbox"]:checked + span::after {
	opacity: 1;
}
.mw_wp_form .horizontal-item + .horizontal-item {
	margin-left: 0!important;
}
#mailfield {
	border-top: solid 1px #ddd;
}
#mailfield dl {
	display: table;
	margin: 0;
	width: 100%;
}
#mailfield dt, #mailfield dd {
	display: table-cell;
	vertical-align: middle;
	margin: 0;
	border-bottom: solid 1px #ddd;
	line-height: 1.6;
	text-align: left;
}
#mailfield dt {
	padding: 1.5em 0 1.5em 4.3em;
	text-indent: -4.3em;
	width: 25%;
}
#mailfield dd {
	padding: 1.5em 0 1.5em 1em;
	width: 80%;
}
.must span, .optional span {
	margin-right: 1.3em;
	padding: .35em .6em;
	background: #e3415e;
	font-size: 1.3rem;
	font-weight: 600;
	color: #fff;
}
.optional span {
	background: #999;
}
.mwNotes {
	display: block;
	margin-top: .5em;
	font-size: 1.3rem;
}
.mf_buttons {
	margin-top: 45px;
	width: 100%;
	text-align: center;
}
.mf_buttons input {
	display: inline-block;
	margin: 0 10px;
	width: 260px;
	height: 55px;
	border: solid 1px #ccc;
	background: #fff;
	text-align: center;
	font-size: 1.6rem;
	font-weight: bold;
	font-weight: 500;
	color: #333;
	cursor: pointer;
}
.mf_buttons input:focus {
	outline: none;
}
.mw_wp_form .error {
	margin-top: .5em;
	font-size: 1.3rem!important;
	color: #f02222!important;
}
/* IEのinput要素に出てくるマークを消去 */
/* text */
input::-ms-clear {
	visibility: hidden;
}
#mailfield input[type="checkbox"]:not(:target) {
	border: 0px\9;
}
/* 確認画面 */
.mw_wp_form_confirm .must span,
.mw_wp_form_confirm .optional span,
.mw_wp_form_confirm #mailfield dl#kakuninEmail,
.mw_wp_form_confirm #mailfield .mwNotes {
	display: none;
}
.mw_wp_form_confirm .optional::after {
	content: "（任意）";
}
.mw_wp_form_confirm #mailfield dt br {
	display: none;
}
.mw_wp_form_confirm .mf_buttons {
	margin-bottom: 0;
}
.confirmTxt {
	display: none;
	margin-bottom: 2em;
}
.mw_wp_form_confirm .confirmTxt {
	display: block;
}
/* 完了画面 */
.mw_wp_form_complete {
	display: none;
}
#thanks {
	text-align: center;
}
.thanksTtl {
	font-weight: bold;
	font-weight: 500;
	font-size: 2.0rem;
}
#thanks strong {
	display: block;
	margin-bottom: .35em;
	line-height: 1.65;
	font-size: 1.5rem;
	font-weight: bold;
	font-weight: 500;
}
#thanks p + p {
	margin-top: 1.25em;
}
#thanks a {
	text-decoration: underline;
}
#thanks a:hover {
	text-decoration: none;
}
.protection {
	margin-top: 25px;
}
.protection a {
	text-decoration: underline;
}
/* reCAPTCHA v3のバッジ非表示 */
.grecaptcha-badge {
	visibility: hidden!important;
}
/* フッター */
#shopInfo {
	padding: 80px 0;
	background: #f7f7f7;
}
#shopImg {
	margin-left: 40px;
	width: 570px;
	height: 350px;
	background: url(assets/images/img_shopinfo.jpg) no-repeat center center;
	background-size: cover!important;
}
#aboutShop {
	overflow: hidden;
	padding-left: 130px;
}
.shopName {
	margin-bottom: .3em;
	font-size: 1.6rem;
	font-weight: 600;
}
.address {
	margin-bottom: 1.5em;
	text-align: left;
}
.contactUs a {
  color: #333;
}
.closeDays {
  line-height: 1.95;
}
.tue {
  margin-right: .9em;
}
.calendar {
  vertical-align: middle;
  margin: .5em 0;
  padding: 0 .6em;
  border: solid 1px #bbb;
}
.calendar a {
  display: block;
}
#shopInfo .moreBtn {
	float: left;
}
#gmap {
	width: 100%;
}
.mapBox {
	height: 330px;
}
.map {
	width: 100%;
	height: 100%;
/*
	-webkit-filter: grayscale(100%);
	-moz-filter: grayscale(100%);
	-ms-filter: grayscale(100%);
	filter: grayscale(100%);
*/
}
footer {
	padding: 70px 5.55555vw 65px;
}
#fLogoBox {
	width: 176px;
}
#fNaviBox {
	margin-left: 5.9vw;
}
.fNavi, #footerInner .en {
	font-size: 1.3rem;
}
.fNavi {
	text-align: left;
	line-height: 1;
}
.fNavi + .fNavi {
	margin-left: 4vw;
}
.fNavi .en {
	display: inline-block;
	margin-right: 20px;
	width: 85px;
}
.fNavi:nth-child(2) .en {
	width: 61px;
}
.fNavi li + li {
	margin-top: 1.45em;
}
#fSocial {
	margin-top: 30px;
	text-align: center;
	letter-spacing: -.4em;
}
#fSocial li {
	display: inline-block;
	vertical-align: middle;
	line-height: 1;
}
#fSocial li + li {
	margin-left: 20px;
}
#fSocial li a {
	display: block;
}
#fContactBox {
	margin-left: auto;
}
#fContactBox dt, #fContactBox dd {
	display: inline-block;
	vertical-align: middle;
}
#fContactBox dt {
	margin-right: 20px;
}
#copyright {
	margin-top: 30px;
	text-align: right;
	font-size: 1.2rem;
}
/* 404 */
#notFound #headBox.headNoimg h1 {
	padding: 1.06em 0;
}
#notFound p {
	text-align: center;
}
#notFound a {
	display: inline-block;
	margin-top: 1em;
	text-decoration: underline;
}
#notFound a:hover {
	text-decoration: none;
}
/* スライダー */
.swiper-wrapper {
	height: 724px!important;
}
/* 無限スクロール */
#loadBox {
	position: relative;
	width: 100%;
	height: 48px;
}
#more-button {
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	display: inline-block;
	margin: 0 auto;
	width: 200px;
	height: 48px;
	border: solid 1px #ccc;
	background: #fff;
	text-align: center;
	color: #444;
	cursor: pointer;
}
.page-load-status {
	display: none;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	width: 100%;
	background: #fff;
}
@media screen and (min-width: 1680px) {
	.page-load-status {
		padding: 0;
	}
}
.nextPage, .infinite-scroll-last, .infinite-scroll-error {
	display: none;
}
.infinite-scroll-last, .infinite-scroll-error {
	position: relative;
	height: 48px;
	text-align: center;
	line-height: 48px;
	font-size: 1.5rem;
}
.infinite-scroll-last::before, .infinite-scroll-error::before {
	position: absolute;
	top: 50%;
	left: 0;
	width: 100%;
	height: 1px;
	content: '';
	background: #ccc;
}
.infinite-scroll-last span, .infinite-scroll-error span {
	position: relative;
	padding: 0 5.5em;
	background: #fff;
}
.fade {
	opacity: 0;
	animation-name: fadeanimation;
	animation-duration: .9s;
	animation-fill-mode: forwards;
}
@keyframes fadeanimation {
	0% {
		opacity: 0;
	}
	100% {
		opacity: 1;
	}
}
.infinite-scroll-request {
	position: relative;
	top: 8px;
	margin: 0 auto;
	width: 32px;
	height: 32px;
	border: 2px rgba(0, 0, 0, .18) solid;
	border-top: 2px #555 solid;
	border-radius: 50%;
	-webkit-animation: spCircRot .7s infinite linear;
	animation: spCircRot .7s infinite linear;
}
@-webkit-keyframes spCircRot {
	from {
		-webkit-transform: rotate(0deg);
	}
	to {
		-webkit-transform: rotate(359deg);
	}
}
@keyframes spCircRot {
	from {
		transform: rotate(0deg);
	}
	to {
		transform: rotate(359deg);
	}
}
/* Ajax検索 */
.searchandfilter ul li, .searchandfilter ul li li {
	padding: 0;
	line-height: 1.45;
}
.searchandfilter ul > li > ul {
	display: grid;
  grid-template-columns: repeat(4, 1fr);
  gap: 18px;
  overflow: hidden;
	width: 100%;
}
input.sf-input-checkbox[type=checkbox], input.sf-input-radio[type=radio] {
	display: none;
}
input.sf-input-checkbox[type=checkbox]:checked + label, input.sf-input-radio[type=radio]:checked + label, input.sf-input-radio.checked + label {
	border: solid 1px #a1d2b7;
}
.searchandfilter label {
	display: block;
	padding: 18px!important;
	width: 100%;
	border: solid 1px #ccc;
	text-align: center;
	line-height: 1.45;
	font-size: 1.5rem;
}
.searchandfilter label:hover {
	cursor: pointer;
}
/* hover */
@media screen and (min-width: 1280px) {
	nav a, #covid19 a, .viewBtn a, .moreBtn a, #brandList a, #newsList a, footer a, #costumeList a, #kimonoCatlist li a, .typeList a, .requestBtn a, .backtBtn a, #archiveList a, .pagenation a, .flowLink a, #more-button, .calendar {
		transition: opacity .5s ease;
		-webkit-transition: opacity .5s ease;
		-moz-transition: opacity .5s ease;
	}
	nav a:hover, #covid19 a:hover, .viewBtn a:hover, .moreBtn a:hover, #brandList a:hover, #newsList a:hover, footer a:hover, #costumeList a:hover, #kimonoCatlist li a:hover, .typeList a:hover, .requestBtn a:hover, .backtBtn a:hover, #archiveList a:hover, .pagenation a:hover, .flowLink a:hover, #more-button:hover, .calendar:hover {
		opacity: .6;
	}
	.mf_buttons input {
		transition: all .5s ease;
		-webkit-transition: all .5s ease;
		-moz-transition: all .5s ease;
	}
	.mf_buttons input:hover {
		border-color: #999;
		background: #999;
		color: #fff;
	}
}
#social a img:hover, #brandList a img:hover, #fSocial a img:hover {
	opacity: 1;
}

/*-------------------------------------------------
 * mediaqueries
-------------------------------------------------*/
@media screen and (max-width: 1279px) {
	/* ヘッダー */
	#headerInner {
		height: 140px;
	}
	#toggle {
		display: -webkit-box;
		display: -webkit-flex;
		display: flex;
		-webkit-box-pack: center;
		-webkit-justify-content: center;
		justify-content: center;
		-webkit-box-align: center;
		-webkit-align-items: center;
		align-items: center;
		position: relative;
		z-index: 9999;
	}
	.trigger,
	.trigger span {
		display: inline-block;
		-webkit-transition: all .4s;
		transition: all .4s;
	}
	.trigger {
		width: 40px;
		height: 25px;
		cursor: pointer;
	}
	.trigger span {
		position: absolute;
		left: 0;
		width: 100%;
		height: 1px;
		border-radius: .001%;
		background: #666;
	}
	.trigger span:nth-of-type(1) {
		top: 0;
	}
	.trigger span:nth-of-type(2) {
		top: 12px;
	}
	.trigger span:nth-of-type(2)::after {
		position: absolute;
		top: 0;
		left: 0;
		content: '';
		width: 100%;
		height: 1px;
		border-radius: .001%;
		background: #666;
		-webkit-transition: all .4s;
		transition: all .4s;
	}
	.trigger span:nth-of-type(3) {
		bottom: 0;
	}
	.trigger.active span:nth-of-type(1) {
		-webkit-transform: translateY(8px) scale(0);
		transform: translateY(8px) scale(0);
	}
	.trigger.active span:nth-of-type(2) {
		-webkit-transform: rotate(-42deg);
		transform: rotate(-42deg);
	}
	.trigger.active span:nth-of-type(2)::after {
		-webkit-transform: rotate(84deg);
		transform: rotate(84deg);
	}
	.trigger.active span:nth-of-type(3) {
		-webkit-transform: translateY(-8px) scale(0);
		transform: translateY(-8px) scale(0);
	}
	.hide {
		overflow: hidden;
		visibility: hidden;
		opacity: 0;
	}
	.animation {
		-webkit-transition-property: opacity, visibility;
		transition-property: opacity, visibility;
		-webkit-transition-duration: .3s;
		transition-duration: .3s;
		-webkit-transition-timing-function: ease-in;
		transition-timing-function: ease-in;
	}
	.no-scroll {
		position: fixed;
		overflow: hidden;
		width: 100%;
		height: 100%;
	}
	nav {
		font-size: 1.9rem;
	}
	#naviBox {
		position: fixed;
		top: 140px;
		left: 0;
		margin: 0;
		padding: 0 5.55555vw 6vw;
		width: 100%;
		height: calc(100% - 140px);
		overflow-y: auto;
		-webkit-overflow-scrolling: touch;
		background: #fff;
		z-index: 999;
	}
	#gNavi {
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-flex-flow: row wrap;
		flex-flow: row wrap;
		margin: 0 0 4vw 0;
		text-align: left;
	}
	#gNavi li {
		margin: 0;
		border-bottom: solid 1px #ddd;
		width: 48.2%;
	}
	#gNavi li:first-child, #gNavi li:nth-child(2) {
		border-top: solid 1px #ddd;
	}
	#gNavi li a {
		position: relative;
		display: block;
		padding: 1.7vw 0;
	}
	#gNavi li + li, #social li + li {
		 margin: 0;
	}
	#social {
		position: static;
		width: auto;
		text-align: center;
		-webkit-writing-mode: horizontal-tb;
		writing-mode: horizontal-tb;
	}
	#social li {
		margin-right: 3.9vw;
	}
	#social li a img {
		margin: 0 10px 0 0;
	}
	/* コンテンツ */
	#index main, section + section, #shopInfo {
		margin-top: 10vw;
	}
	#covid19, #aboutUs {
		padding: 0 5.55555vw;
	}
	.inBox, #concept {
		padding: 0;
	}
	/* 見出し */
	h1 img {
		width: 190px;
	}
	h2, #brandDB h2 {
		margin: 0 0 1.1em 7.5vw;
/* 		font-size: 3.2rem; */
	}
	h2::before {
		left: -7.5vw;
		width: 5.2vw;
	}
	#headBox {
		position: relative;
		margin-bottom: 5.08vw;
		padding-top: 138px;
		height: 60vw;
	}
	#headLetter {
		background-position-x: 62.2%;
	}
	#color #headLetter {
		background-position-x: 36.8%;
	}
	#kimono #headLetter {
		background-position-x: 62.6%;
	}
	#tuxedo #headLetter {
		background-position-x: 55%;
	}
	#headBox h1 {
		position: absolute;
		top: 0;
		left: 0;
		right: 0;
		display: -webkit-flex;
		display: flex;
		flex-direction: column;
		-webkit-justify-content: center;
		justify-content: center;
		margin: auto;
		width: calc(100% - (5.55555vw + 5.55555vw));
		height: 138px;
		border-top: solid 1px #d6d6d6;
		text-align: center;
		font-size: 3.3rem;
	}
	#headBox h1.whiteLetters {
		color: #666;
	}
	.subjp {
		margin: .2em 0 .4em;
		font-size: 1.5rem;
	}
	.subjp {
	}
	#headBox.headNoimg {
		margin-bottom: 9vw;
	}
	#news #headBox.headNoimg {
		margin-bottom: 6vw;
	}
	#headBox.headNoimg h1 {
		padding: 0;
	}
	#headBox.headNoimg .subjp {
		margin: .2em 0 .6em;
	}
	.viewBtn a, #more-button {
		font-size: 1.4rem;
	}
	.bodyBox h3 {
		margin-bottom: .75em;
		font-size: 1.9rem;
	}
	.viewBtn a {
		padding: .4em;
	}
	/* TOP */
	#topimage {
		height: 130vw;
	}
	#covid19 a {
		margin-bottom: 10vw;
		font-size: 1.8rem;
	}
	#conceptLead {
		margin-bottom: .75em;
		font-size: 2.0rem;
	}
	.costumeType div {
		width: calc((100% - 1.04166vw) / 2);
	}
	.costumeType + li {
		margin-top: 4.558vw;
	}
	.typeName {
		margin: 1.95312vw 0;
	}
	.typeName .en {
		top: -.8em;
		margin-right: 1.80555vw;
		font-size: 3.385vw;
	}
	.typeName .en::after {
		top: 3.125vw;
		right: -4.948vw;
		width: 7.1615vw;
	}
	.typeName .jp, #costumeList .typeName .jp {
		font-size: 1.563vw;
	}
	#brandList {
		margin-top: 3.25vw;
	}
	#brandList li, #brandList::before, #brandList::after {
		width: calc((100% - 24px) / 3);
	}
	#newsList {
		margin-bottom: 4.55vw;
	}
	#newsList a {
		padding: 2.6vw 0;
	}
	#newsList a time {
		width: 6.5em;
	}
	/* Wedding */
	#intro {
		margin-bottom: 6.64vw;
	}
	#lead {
		margin-bottom: 3.8vw;
		line-height: 2;
		font-size: 1.4rem;
	}
	.openBtn {
		padding-top: 16px;
		padding-bottom: 16px;
	}
	#brands #brandList {
		margin-top: 2.73438vw;
	}
	#dressBox {
		margin-bottom: 9vw;
	}
	#dressList, .page-load-status {
		padding: 0;
	}
	#dressList li, #dressList::after {
		width: calc((100% - 8.59375vw) / 3);
	}
	#dressList::before {
		content: none;
	}
	.costumeNo {
		font-size: 1.1rem;
	}
	#costumeList li {
		width: calc((100% - 1.7578vw) / 2);
	}
	#costumeList li:nth-child(n+3) {
		margin-top: 1.7578vw;
	}
	#costumeList li a {
		display: -webkit-flex;
		display: flex;
		flex-direction: column;
		-webkit-justify-content: center;
		justify-content: center;
	}
	#costumeList li a div, #costumeList .typeImg {
		width: 100%;
	}
	#costumeList .typeImg {
		height: 25vw;
	}
	.typeNameBox {
		display: -webkit-flex;
		display: flex;
		flex-direction: column;
		-webkit-justify-content: center;
		justify-content: center;
		margin: 0;
		padding: 3.64583vw 0 4.42708vw;
		background: #f7f7f7;
		text-align: center;
	}
	#costumeList .typeName {
		display: block;
		float: none;
		margin: 3.2552vw 0 .39062vw;
	}
	#costumeList .typeName .en {
		margin-right: 1.95312vw;
		font-size: 2.865vw;
	}
	#costumeList .typeName .en::after {
		top: 20px;
		top: 2.60416vw;
		right: -34px;
		right: -4.42708vw;
		width: 5.98958vw;
	}
	#costumeList .moreBtn {
		display: none;
	}
	#headBoxBrand, #brandDetails {
		margin-bottom: 9vw;
	}
	#brandTtl {
		flex-direction: column;
		-webkit-justify-content: center;
		justify-content: center;
		padding: 4.55vw 0 4.5vw;
		height: auto;
	}
	#brandLogo {
		text-align: center;
	}
	.logoBox {
		display: block;
		width: 29vw;
	}
	.logoBox.type1 {
		width: 12vw;
	}
	.logoBox.type2, .logoBox.type5 {
		width: 38vw;
	}
	.logoBox.type3 {
		width: 24vw;
	}
	.logoBox.type4, .logoBox.type6 {
		width: 36vw;
	}
	.logoBox.type7 {
		width: 27.6vw;
	}
	.logoBox.type8 {
		width: 14vw;
	}
	.logoBox.type9 {
		width: 16.4vw;
	}
	.logoBox.type10 {
		width: 28.6vw;
	}
	.logoBox.type11 {
		width: 32.8vw;
	}
	.logoBox.type12 {
		width: 20.2vw;
	}
	.logoBox.type13 {
		width: 18.4vw;
	}
	.logoBox.type14 {
		width: 19.2vw;
	}
	.logoBox.type15 {
		width: 15.8vw;
	}
	.logoBox.type16 {
		width: 18vw;
	}
	.logoBox.type17 {
		width: 21vw;
	}
	.logoBox.type18 {
		width: 22vw;
	}
	.khmarry {
		top: 1.2vw;
	}
	#brandTtl.noBrandname {
		height: 139px;
	}
	.costumeName, .costumeNameJp {
		line-height: 1.4;
	}
	.costumeName {
		font-size: 3.3rem;
	}
	.costumeNameJp {
		margin: .2em 0 .6em;
		font-size: 1.5rem;
	}
	.typeList {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: center;
		justify-content: center;
		margin-top: 2.8vw;
		width: 100%;
	}
	.typeList li a {
		padding: .6em;
		width: 180px;
		font-size: 1.6rem;
	}
	.brandImg {
		width: 51.8%;
	}
	.brandTxtBox {
		width: 43%;
	}
	#brandName {
		margin-bottom: 3.2vw;
	}
	.brandTxt {
		line-height: 1.8;
	}
	.modelNumber {
		margin-bottom: .3em;
	}
	.otherName {
		display: block;
		margin-bottom: -.2em;
		font-size: 3.776vw;
	}
	.requestBtn a, #fContactBtn a {
		margin: 0 auto;
		padding: .8em 1em;
	}
	.requestBtn a, #shopWrap .shortBtn a {
		margin-top: 5%;
	}
	.backtBtn {
		margin-top: 1.8em;
		text-align: center;
	}
	/* Kimono */
	#kimonoCatlist {
		-webkit-justify-content: space-between;
		justify-content: space-between;
	}
	#kimonoCatlist li {
		margin: 0;
		width: calc((100% - 3.33333vw) / 3);
	}
	#kimonoCatlist li a {
		padding: 12px 20px;
		font-size: 1.4rem;
	}
	/* slideBox */
	.slideThumb {
		padding: 0;
	}
	.swiper-container {
		overflow: visible!important;
	}
	.swiper-button-next, .swiper-button-prev {
		top: auto!important;
		bottom: -12px!important;
	}
	.swiper-pagination {
		margin-top: 34px;
	}
	#brandBox {
		margin-top: 7.25%;
	}
	.modelDescription ul {
		display: block;
	}
	.modelDescription ul li {
		width: 100%;
	}
	/* Pre-shoot */
	.subImg {
		margin-top: 10%;
	}
	.subImg.location {
		margin-top: 5.5%;
	}
	.subImg li {
		width: 32.2%;
	}
	.flowTtl {
		margin: -.5em 0 5.20833vw;
		line-height: 1.5;
	}
	#flowList, #shopImgBox {
		flex-direction: column;
	}
	#flowList span.newline {
		display: inline-block;
	}
	#flowList li, .flowPoint {
		width: 100%;
		max-width: inherit;
	}
	#flowList li {
		position: relative;
	}
	#flowList li:not(:last-child)::before, #flowList li:not(:last-child)::after {
		content: "";
		position: absolute;
		bottom: -52px;
		left: 0;
		right: 0;
		margin: auto;
		z-index: 1;
	}
	#flowList li:not(:last-child)::before {
		width: 1px;
		height: 38px;
		background: #bbb;
	}
	#flowList li:not(:last-child)::after {
		bottom: -50px;
		width: 15px;
		height: 15px;
		border-top: 1px solid #bbb;
		-webkit-transform: rotate(135deg);
		transform: rotate(135deg);
	}
	#flowList li + li {
		margin-top: 30px;
	}
	.flowPoint {
		padding: 2em;
		height: auto;
		max-height: inherit;
	}
	.flowPoint br {
		display: none;
	}
	.flowPoint + p {
		margin-top: 15px;
		text-align: center;
		line-height: 1.7;
	}
	.arrowNext {
		display: none;
	}
	.flowLink a {
		margin-top: 5.7vw;
	}
	.planList {
		margin-bottom: 2.86458vw;
		padding: 25px;
		border-width: 5px;
		line-height: 1.5;
	}
	#plan .contWrap {
		align-items: start;
	}
	.planPriceBox {
		margin-top: -.4em;
		font-size: 1.9rem;
	}
	/* Hair make */
	.contWrap + .contWrap {
		margin-top: 8.2vw;
	}
	.bodyBox {
		width: 53.5%;
		line-height: 1.8;
	}
	.bodyBox.roughness, #memorialLead.bodyBox.roughness, #memorialImg, /* .subImg.collections li:nth-child(-n+2),  */.subImg.collections li:nth-child(-n+3), .firstCollection li:last-child, #plan .requestBtn, #memorialImg .requestBtn, #shopWrap .requestBtn {
		margin: 0;
	}
	.imgBox, .imgBox.roughness {
		margin-top: 4px;
		width: 40.5%;
	}
	.imgBox.roughness {
		margin-top: 49px;
	}
	.subImg.make {
	}
	.subImg.make li {
		width: 48.4%;
	}
	#jitakutsukuri {
		margin-bottom: 0;
	}
	/* Memorial */
	#aboutMemorial .contWrap {
		align-items: center;
	}
	.subImg, .subImg.collections, #shopImgBox, .shopTxt {
		margin-top: 5.5%;
	}
	.subImg.secondCollection {
  	margin-top: 2.34375vw;
	}
	.leadImg {
  	margin-top: 8.5%
	}
  #memorialImg .requestBtn a {
    margin-top: 5.8%;
  }
	/* Shop */
	#shopDetails {
		margin-bottom: 1.1em;
	}
	#shopImgList, #shopImgList li img {
		width: 100%;
	}
	#shopImgList li {
		margin: 0 0 8px!important;
		width: calc((100% - 8px) / 2);
	}
	#showcase {
		width: 100%;
	}
	#showcase img {
		width: 100%;
		height: 38vw;
		object-fit: cover;
		object-position: 50% 29.7%;
	}
	#memorialImg .requestBtn {
		float: none;
	}
	/* News */
	#newsWrap {
		display: block;
	}
	#newsMain, #sideMenu {
		width: 100%;
	}
	#newsMain article + article, .pagenation {
		margin-top: 9.76562vw;
	}
	#sideMenu {
		margin-top: 7.16145vw;
	}
	.articleTtl {
		margin-bottom: 2.2em;
	}
	#archiveBox dt {
		 margin-bottom: 5px;
	}
	#archiveList {
		display: -webkit-flex;
		display: flex;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		flex-flow: row wrap;
		margin: 0;
	}
	#archiveList li, #archiveList::before, #archiveList::after {
		width: calc((100% - 24px) / 4);
	}
	#archiveList li {
		margin-top: 8px;
	}
	#archiveList::before, #archiveList::after {
		content: "";
		display: block;
	}
	#archiveList::before {
		order: 1;
	}
	#archiveList::after {
	}
	/* Privacy Policy */
	.privacyList {
		margin-top: 4.94791vw;
	}
	/* Contact */
	#contactLead {
		margin-bottom: 7.5vw;
	}
	#mailfield .inputTxt input,
	#mailfield .inputTxt textarea,
	#mailfield input[type="text"],
	#mailfield input[type="email"] {
		width: 100%;
	}
	#mailfield dt {
		padding-left: 3.8em;
		text-indent: -3.8em;
		width: 32%;
	}
	#mailfield dd {
		width: 68%;
	}
	.must span, .optional span {
		margin-right: .8em;
	}
	.mf_buttons {
		margin-top: 4.5%;
	}
	.mf_buttons input {
		margin: 0 1.2%;
		max-width: 260px;
		width: 47%;
	}
	/* フッター */
	#infoBox {
		display: block;
	}
	#shopInfo {
		padding: 9vw 0;
	}
	#aboutShop {
		padding: 0;
	}
	#aboutShop dt,	#aboutShop dd {
		display: block;
		vertical-align: top;
	}
	#aboutShop dt {
		width: 280px;
	}
	.address {
		margin: 0 15vw 2.86458vw 0;
	}
	#shopInfo .moreBtn {
		float: right;
		margin-top: .6em;
	}
	#shopImg {
		margin: 5vw 0 0 0;
		width: 100%;
		height: 38vw;
		background-position-y: 78%;
	}
	.mapBox {
		height: 380px;
	}
	footer {
		padding-top: 9vw;
		padding-bottom: 4vw;
	}
	#footerInner {
		display: block;
	}
	#fLogoBox, #copyright, #fContactBox {
		width: auto;
		text-align: center;
	}
	#fSocial {
		margin-top: 20px;
	}
	#fNaviBox {
		-webkit-justify-content: center;
		justify-content: center;
		margin: 5.2vw 0 2.6vw;
	}
	.fNavi + .fNavi {
		margin-left: 6vw;
	}
	.fNavi, #footerInner #fContactBox .en {
		display: block;
		margin-bottom: .4em;
	}
	#fContactBox dt {
		margin-right: 0;
	}
	/* 404 */
	#notFound #headBox.headNoimg h1 {
		padding: 0;
	}
	/* 無限スクロール */
	#more-button {
		height: 42px;
	}
	.infinite-scroll-request {
		top: 5px;
	}
	.infinite-scroll-last span, .infinite-scroll-error span {
		padding: 0 6.5vw;
	}
	/* Ajax検索 */
  .searchandfilter ul > li > ul {
    gap: 11px;
  }
	@media screen and (max-width: 1023px) {
		.searchandfilter ul > li > ul {
      grid-template-columns: repeat(2, 1fr);
    }
	}
	.searchandfilter label {
		padding: 12px 20px!important;
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 599px) {
	html, body {
		height: 100%;
	}
	/* ヘッダー */
	#headerInner {
		height: 100px;
	}
	/* グローバルナビ */
	.trigger {
		width: 28px;
		height: 21px;
	}
	.trigger span:nth-of-type(2) {
		top: 10px;
	}
	.trigger.active span:nth-of-type(2) {
		-webkit-transform: rotate(-45deg);
		transform: rotate(-45deg);
	}
	.trigger.active span:nth-of-type(2)::after {
		-webkit-transform: rotate(90deg);
		transform: rotate(90deg);
	}
	nav {
		font-size: 1.7rem;
	}
	#naviBox {
		top: 100px;
		padding: 0 4.4vw 5vw;
		height: calc(100% - 100px);
	}
	#gNavi li {
		width: 100%;
	}
	#gNavi li a {
		padding: 1.8vw;
	}
	#gNavi li:nth-child(2) {
		border-top: none;
	}
	/* コンテンツ */
	#headerInner, .inner, #topimage, #covid19, #aboutUs, #headBox, #headBoxBrand {
		padding: 0 4.4vw;
	}
	.backtBtn a, .infinite-scroll-last, .infinite-scroll-error {
		font-size: 1.4rem;
	}
	.viewBtn a {
		display: inline-block;
		width: auto;
		padding: .25em 1.5em;
	}
	/* 見出し */
	h1 img {
		width: 156px;
	}
	h2, #latestNews h2, #brandDB h2, #headBox h1, #headBox.headNoimg h1 .en, .costumeName {
		font-size: 6.039vw;
	}
	h2, #latestNews h2, #brandDB h2, #shopSummary h2 {
		margin-bottom: 4vw;
	}
	h2::before {
		width: 4.8vw;
		height: 1px;
	}
	#headBox {
		padding-top: 20.28vw;
		height: 81.2vw;
		height: 100vw;
	}
	#headBox h1, #brandTtl.noBrandname {
		flex-direction: row;
		-webkit-justify-content: space-between;
		justify-content: space-between;
		-webkit-align-items: center;
		align-items: center;
		width: calc(100% - (4.4vw + 4.4vw));
		height: 20.28vw;
	}
	#brandTtl.noBrandname {
		padding: 0;
		width: 100%;
	}
	h1.contHead {
		border-bottom: none!important;
	}
	.subjp, #headBox.headNoimg .subjp, .costumeNameJp {
		font-size: 3.382vw;
	}
	#headBox.headNoimg .subjp {
		margin: 0;
	}
	.costumeName {
		 margin-bottom: .1em;
	}
	.costumeNameJp {
		margin-bottom: .4em;
	}
	#kimono #headLetter {
/* 		background-position-x: 61%; */
		background-position-x: 56.3%;
	}
	/* TOP */
	#topimage {
		height: calc(100% - 100px);
	}
	#covid19 a {
		margin-bottom: 8vw;
		letter-spacing: .03em;
		font-size: 3.623vw;
	}
	#conceptLead, .bodyBox h3 {
		font-size: 4.348vw;
	}
	#conceptLead span {
		display: block;
	}
	#conceptBody {
		line-height: 1.9;
	}
	.costumeType {
		display: block;
	}
	.costumeType div {
		width: 100%;
	}
	.costumeType div.typeImg {
		height: 66.67vw;
	}
	.costumeType div.typeBody {
		height: 44.448vw;
	}
	.typeName {
		margin: 1.44927vw 0 1.93236vw;
	}
	.typeName .en {
		top: -.8em;
		margin-right: 5.07246vw;
		font-size: 5.314vw;
		font-size: 5.556vw;
	}
	.typeName .en::after {
		top: 5.0724vw;
		top: 5.07246vw;
		right: -8.454vw;
		width: 11vw;
	}
	.typeName .jp {
		font-size: 3.14vw;
		font-size: 3.382vw;
	}
	#brandsLead br {
		display: none;
	}
	#brandList li, #brandList::before, #brandList::after {
		width: calc((100% - 10px) / 2);
	}
	#brandList li {
		margin-top: 10px;
	}
	#newsList a {
		padding: 3.2vw 0;
	}
	#newsList a time, .newsTitle {
		display: block;
	}
	#newsList a time {
		width: auto;
	}
	/* Wedding */
	#lead {
		margin-bottom: 5.2vw;
		text-align: justify;
		line-height: 1.8;
	}
	#lead br {
		display: none;
	}
	#lead .newline {
		display: inline;
	}
	.openBtn {
		padding-top: 14px;
		padding-bottom: 14px;
		width: 100%;
		font-size: 1.7rem;
	}
	.btnIcon {
		width: 13px;
		height: 13px;
	}
	#dressList li {
/* 		margin-bottom: 5.797vw; */
		margin-bottom: 5.15vw;
		width: calc((100% - 1.93236vw) / 2);
	}
	#dressList::after {
		content: none;
	}
	#costumeList li {
		width: 100%;
	}
	#costumeList li + li {
		margin-top: 3.62318vw!important;
	}
	#costumeList .typeImg {
		height: 52.4vw;
	}
	.typeNameBox {
		padding: 39px 0 35px;
		padding: 9.42028vw 0 8.4541vw;
	}
	#costumeList .typeName .en {
		margin-right: 4.10628vw;
		font-size: 5.314vw;
	}
	#costumeList .typeName .en::after {
		top: 5.07246vw;
		right: -8.4541vw;
		width: 11.5942vw;
	}
	#costumeList .typeName .jp {
		font-size: 3.14vw;
	}
	#headBoxBrand {
		margin: 0;
	}
	#brandTtl {
		padding: 6.5vw 0 6vw;
	}
	#brandTtl:not(.other) {
		border-bottom: none;
	}
	#brandTtl.other {
		margin-bottom: 6vw;
	}
	.logoBox {
		width: 40vw;
	}
	.logoBox.type1 {
		width: 17.8vw;
	}
	.logoBox.type2 {
		width: 74vw;
	}
	.logoBox.type3 {
		width: 34vw;
	}
	.logoBox.type4 {
		width: 52vw;
	}
	.logoBox.type5 {
		width: 68vw;
	}
	.logoBox.type6 {
		width: 47.6vw;
	}
	.logoBox.type7 {
		width: 39vw;
	}
	.logoBox.type8 {
		width: 20.6vw;
	}
	.logoBox.type9 {
		width: 24.6vw;
	}
	.logoBox.type10 {
		width: 41vw;
	}
	.logoBox.type11 {
		width: 48.4vw;
	}
	.logoBox.type12 {
		width: 30vw;
	}
	.logoBox.type13 {
		width: 26.6vw;
	}
	.logoBox.type14 {
		width: 27.4vw;
	}
	.logoBox.type15 {
		width: 24.2vw;
	}
	.logoBox.type16 {
		width: 25.4vw;
	}
	.logoBox.type17 {
		width: 30.8vw;
	}
	.logoBox.type18 {
		width: 32vw;
	}
	.logoBox.type19 {
		width: 11.6vw;
	}
	.typeList {
		margin-top: 4vw;
	}
	.typeList li a {
		padding: .5em;
		width: 36vw;
		font-size: 1.4rem;
	}
	.typeList li + li {
		margin-left: 1.93236vw;
	}
	#brandDetails {
		display: block;
	}
	.brandImg, .brandTxtBox {
		width: 100%;
	}
	.brandImg {
		margin-bottom: 8.21256vw;
	}
	#brandName {
		margin-bottom: 4.5vw;
	}
	#brandName .jp {
		margin-top: 11px;
		font-size: 1.2rem;
	}
	#brandDB #dressBox {
		margin-bottom: 5.314vw;
	}
	.modelNumber {
		font-size: 1.9rem;
	}
	.otherName {
		font-size: 5.797vw;
	}
	.modelNumber.waso {
		font-size: 1.6rem;
	}
	#brandName.brandLabel {
		padding-top: 6px;
	}
	#brandName.brandLabel .en {
		margin: 0;
		font-size: 2.3rem;
	}
	#brandName.brandLabel .waso {
		font-size: 1.8rem;
	}
	.requestBtn a, #fContactBtn a {
		padding: .65em 1em;
		width: 224px;
	}
	.requestBtn a, #shopWrap .shortBtn a {
		margin-top: 6.3%;
	}
	/* Kimono */
	#kimonoCatlist li {
		width: 21.6%;
	}
	#kimonoCatlist li:last-child {
		width: 54%;
	}
	#kimonoCatlist li a {
		padding: 2.17391vw 0;
		font-size: 1.3rem;
	}
	/* slideBox */
	#itemImg {
		padding: 0;
	}
	.swiper-slide {
		background: #f7f7f7;
	}
	.swiper-button-next, .swiper-button-prev {
		width: 31px!important;
		height: 31px!important;
		bottom: -6px!important;
	}
	.swiper-button-next {
		right: 0!important;
	}
	.swiper-button-prev {
		left: 0!important;
	}
	.swiper-button-next span::after, .swiper-button-prev span::after {
		top: -7px;
		left: 9px;
		width: 7px;
		height: 7px;
	}
	.swiper-button-prev span::after {
		left: 13px;
	}
	.swiper-pagination {
		margin-top: 17px;
	}
	.swiper-pagination-bullet {
		margin: 0 4px!important;
		width: 4px!important;
		height: 4px!important;
	}
	/* 公開時は非表示 */
	.price {
		margin-top: .4em;
	}
	/* Pre-shoot */
	.subImg, .subImg.collections, #shopImgBox, .shopTxt {
		margin-top: 7%;
	}
	.subImg.location, .subImg.collections {
		flex-flow: row wrap;
	}
	.subImg.location, .subImg.location li:last-child, .subImg.collections li {
		margin: 0;
		width: 100%;
	}
	.subImg.location li, .subImg.make li {
		width: 50%;
	}
	.flowLink a {
		width: 100%;
		padding-top: .9em;
		padding-bottom: .9em;
		line-height: 1.5;
	}
	.fit, .fit2, .fit3, .fit4, .fit5, .fit6, .fit7, .fit8, .fit9, .fit10 {
		width: 100%;
		height: 70vw;
		object-fit: cover;
		object-position: 50% 20.8%;
	}
	.fit2 {
		height: 80vw;
		object-position: 50% 40%;
	}
	.fit3 {
		object-position: 50% 28.5%;
	}
	.fit4 {
		object-position: 50% 35%;
	}
	.fit5 {
		height: 58vw;
		object-position: 50% 54%;
	}
	.fit6 {
		height: 110vw;
	}
	.fit7 {
		height: 80vw;
		object-position: 50% 24%;
	}
	.fit8 {
		object-position: 50% 18%;
	}
	.fit9 {
		object-position: 50% 17.8%;
	}
	.fit10 {
		object-position: 50% 22%;
	}
	.flowTtl, .planPriceBox {
		font-size: 4.106vw;
	}
	.flowTtl {
		margin-top: 0;
	}
	.flowPoint {
		padding: 1.35em;
	}
	#flowList li + li {
		margin-top: 22px;
	}
	#flowList li:not(:last-child)::before, #flowList li:not(:last-child)::after {
		bottom: -40px;
	}
	#flowList li:not(:last-child)::before {
		height: 32px;
	}
	#flowList li:not(:last-child)::after {
		bottom: -38px;
	}
	.planPrice {
		font-size: 5.314vw;
	}
	/* Hair make */
	.contWrap {
		display: block;
	}
	.contWrap.firstArea {
		margin-top: -9vw;
	}
	.imgBox, .imgBox.roughness, .bodyBox, #aboutMemorial .imgBox, #memorialLead {
		margin-top: 0;
		width: 100%;
	}
	.imgBox, .imgBox.roughness {
		margin-bottom: 28px;
	}
  /* Memorial */
  #memorialLead h3 {
	  margin-bottom: 2em;
  }
  #memorialMv, .leadImg, #memorialLead h3 br {
    display: none;
  }
	.spMemorialImg {
  	display: block;
	}
	.subImg.collections li + li, .secondCollection {
  	margin-top: 1.93236vw!important;
	}
  #memorialImg .requestBtn a {
    margin-top: 7.7%;
  }
	/* Shop */
	#shopImgList li {
		margin-bottom: 8px!important;
		margin-bottom: 1.93236vw!important;
		width: 100%;
	}
	#showcase img {
		height: 62.56vw;
		object-position: 50% 30.5%;
	}
	/* News */
	.articleTtl {
		margin-bottom: 1.3em;
	}
	.articleTtl time {
		margin-bottom: 25px;
	}
	.articleTtl h3 {
		font-size: 1.5rem;
	}
	.entryBody p + p {
		margin-top: 1em;
	}
	#archiveBox dt {
		padding: .15em 15px;
	}
	#archiveList li a {
		padding: .35em 15px;
	}
	#archiveList li {
		margin-top: 6px!important;
	}
	#archiveList li, #archiveList::before, #archiveList::after {
		width: calc((100% - 18px) / 4);
	}
	#news .backtBtn {
		margin-top: 7.24637vw
	}
	/* Privacy Policy */
	.privacyList li + li {
		margin-top: 1.2em;
	}
	ul.privacyList li {
		margin-left: 0;
	}
	/* Contact */
	#contactLead br, #mailfield dt br {
		display: none;
	}
	#mailfield input[type="text"],
	#mailfield input[type="email"],
	#mailfield input[type="url"],
	#mailfield select {
		height: 40px;
	}
	#mailfield .inputTxt .mwform-tel-field input[type="text"],
	#mailfield .inputTxt .mwform-zip-field input[type="text"] {
		max-width: 100px;
		width: 29%;
	}
	#mailfield dl {
		display: inherit;
	}
	#mailfield dt, #mailfield dd {
		display: block;
		width: 100%;
	}
	#mailfield dt {
		padding: 1em 0 .85em;
		border: none;
		text-indent: 0;
	}
	#mailfield dd {
		padding: 0 0 1em 0;
	}
	.mw_wp_form_input #mailfield dd.inputCheckbox {
		padding: 0 0 .6em 0;
	}
	.mwform-checkbox-field label {
		padding: 5px 0 5px 27px;
	}
	.mf_buttons {
		margin-top: 6%;
	}
	.mf_buttons input {
		margin: 0 auto;
		max-width: 100%;
		width: 100%;
		height: 46px;
	}
	.mf_buttons input:not(:last-child) {
		margin-bottom: 10px;
	}
	/* 確認画面 */
	.mw_wp_form_confirm #mailfield dt {
		padding-bottom: .5em!important;
		color: #888;
	}
	.confirmTxt {
		margin-bottom: 1.5em;
	}
	/* 完了画面 */
	#thanks {
		text-align: left;
	}
	.thanksTtl {
		font-size: 1.6rem;
	}
	#thanks p + p {
		margin-top: 1em;
	}
	#thanks .newline {
		display: inline;
	}
	.protection {
		margin-top: 4.6vw;
	}
	/* フッター */
	#shopImg {
		height: 52vw;
		background-position-y: 88.5%;
	}
	footer {
		padding: 10vw 4.4vw 7vw;
	}
	.address {
		margin: 0 0 3.62318vw 0;
	}
	.shopName {
		font-size: 1.5rem;
	}
	#fLogoBox p img {
		width: 170px;
	}
	#fNaviBox {
		-webkit-justify-content: space-between;
		justify-content: space-between;
		margin: 6.2vw 5vw 3.5vw;
	}
	.fNavi {
		width: calc((100% - 4.4vw) / 2);
		line-height: 1.5;
	}
	.fNavi + .fNavi, .tue {
		margin: 0;
	}
	.fNavi li {
		border-bottom: solid 1px #ddd;
	}
	.fNavi li + li {
		margin-top: 1.2em;
	}
	.fNavi li a {
		display: block;
		padding-bottom: .5em;
	}
	.fNavi .en, .fNavi:nth-child(2) .en {
		display: block;
		width: auto;
	}
	#copyright {
		font-size: 1.1rem;
	}
	/* 404 */
	#notFound p {
		text-align: left;
	}
	#notFound .newline {
		display: inline;
	}
	/* スライダー */
	.swiper-wrapper {
		height: 100%!important;
	}
	/* 無限スクロール */
	#more-button {
		margin-bottom: 5px;
		width: 118px;
		height: 34px;
	}
	/* ローディングアニメーション */
	.infinite-scroll-request {
		top: 3px;
		width: 28px;
		height: 28px;
	}
	/* Ajax検索 */
  .searchandfilter ul > li > ul {
    gap: 8px;
  }
	.searchandfilter label {
		padding: 2.17391vw 0!important;
		font-size: 1.3rem;
	}
}