@charset "utf-8";

/*------------------------------------------------------------
	直下ファイル共通
------------------------------------------------------------*/
.head-line01::before {
	top: 0;
	bottom: 0;
	margin: auto;
}

.head-line01::before{
    transform: translateY(-50%);
    top: 50%;
	left:3px;
}

.com-img-area .head-line01 {
	left: 0%;
	transform: translateX(0%);
}

.com-img-area .head-line01 span {
	position: absolute;
	width: 86px;
	left: 0;
	right: 0;
	margin: 0 auto;
	top: 0;
	white-space: nowrap;
}

#main .top-box {
	display: flex;
	justify-content: center;
}

#main .top-box .ttl {
	writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	direction: ltr;
	text-align: center;
	width: 178px;
	margin-bottom: 0;
	display: flex;
	align-items: center;
}

#main .top-box .text {
	padding: 211px 0 0 0;
	width: calc(100% - 178px);
	box-sizing: border-box;
}

#main .top-box .text p {
	font-size: 1.8rem;
	line-height: 1.7;
}

@media all and (max-width: 896px) {
	.head-line01 {
		margin-bottom: 33px;
		font-size: 3.1rem;
	}

	.head-line01::before {
		margin-top: auto;
	}

	#main .top-box .ttl {
		width: 104px;
	}

	#main .top-box .text p {
		font-size: 1.4rem;
	}
}

/* 取り扱いサービス LibraryInc/service.php */
.sec_product .content {
	position: relative;
}

.sec_product .top-box {
	position: absolute;
	transform: translateX(0%) translateY(-50%);
	width: 100%;
}

.sec_product .imgList {
	padding-top: 168px !important;
	margin-top: 0 !important;
}

.sec_product .imgList li {
	width: 260px !important;
}

.sec_product .imgList li .photo-box {
	display: block;
}

.sec_product .imgList li span.title {
	display: block;
	padding-left: 30px !important;
	font-size: 1.6rem !important;
	line-height: 1.5 !important;
	letter-spacing: 0.05em !important;
}

.store_hachioji #main .fordog span {
	display: none !important;
}

@media (max-width: 896px) {
	.sec_product {
		padding-bottom: 47px !important;
	}

	.sec_product .content {
		margin: 0 15px !important;
	}

	.sec_product .imgList {
		padding-top: 80px !important;
	}

	.sec_product .imgList li {
		width: 49% !important;
		margin-top: 30px !important;
	}

	.sec_product .imgList li .photo-box {
		margin-bottom: 10px !important;
		position: relative !important;
	}

	.sec_product .imgList li span.title {
		padding-left: 20px !important;
		font-size: 1.2rem !important;
	}

	.sec_product .imgList li .photo-box::after {
		left: 8px !important;
		height: 44px !important;
		bottom: -35px !important;
	}

	.sec_product .imgList li img{
		width: 260px;
	}

	.menu-box .tab-list {
		margin-bottom: 40px;
	}

	#menuBox .service_ttl {
		text-align: center;
		color: #fff;
		font-size: 2.2rem;
		font-weight: normal;
		line-height: 1.2;
		letter-spacing: 1px;
	}

	#menuBox .service_ttl .en {
		font-size: 1.4rem;
	}

	#menuBox .imgList {
		padding-top: 0 !important;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		margin: 0 -15px 40px;
	}

	#menuBox .sec_product .imgList li .photo-box::after {
		width: 1px;
		position: absolute;
		background-color: #fff;
		content: '';
	}

	#menuBox .imgList a {
		color: #fff;
	}

	#menuBox .imgList .lts0 {
		letter-spacing: 0;
	}

	.sec_product .imgList li.mt00{
		margin-top: 0 !important;
	}
}

/* 共通見出し */
#main h2.line_ttl {
	padding-right: 24px;
	color: #958626;
	letter-spacing: 0.05em;
	text-align: right;
	margin-bottom: 80px;
	font-size: 6.0rem;
	font-weight: 500;
}

#main h2.line_ttl .line {
	position: relative;
}

#main h2.line_ttl .line::after {
	width: 2px;
    height: 90px;
    position: absolute;
    top: 0;
    left: -30px;
    background-color: #c03c3f;
    content: '';
}

#main h2.line_ttl .line span {
	position: relative;
	z-index: 1;
}

#main h2.line_ttl .line .due {
	position: absolute;
	top: 80%;
	left: 0;
	font-size: 2.4rem;
	color: #111111;
}

#main h2.line_ttl .line .cor {
	color: #111111;
}

@media (max-width: 896px) {
	#main h2.line_ttl {
		font-size: 2.1rem;
		margin-bottom: 5.5rem;
	}

	#main h2.line_ttl .line::after {
		width: 2px;
		height: 50px;
		position: absolute;
		top: -10px;
		left: -10px;
		background-color: #c03c3f;
		content: '';
	}
}

/*------------------------------------------------------------
	index
------------------------------------------------------------*/
.home #g-header {
	padding-bottom: 50px;
}

.home #g-header .page {
	display: none;
}

.home #g-navi li,
.home #g-navi li a {
	color: #fff;
	text-shadow: rgba(68, 12, 11, 0.8) 0 0 10px;
}

.home .mainVisual {
	margin-bottom: -6px;
	position: relative;
}

.home .mainVisual__text {
	position: absolute;
	z-index: 10;
}

.home .mainVisual__text h2 {
	color: #fff;
	font-size: 3.193rem;
	font-weight: normal;
	order: 1;
	letter-spacing: 12px;
	white-space: nowrap;
	text-align: right;
}

@media all and (min-width: 897px) {
	.home .mainVisual__text {
		display: flex;
		top: 15.5%;
		left: 15.3%;
		/*9.3%*/
		line-height: 1.4;
	}

	.home .mainVisual__text h2,
	.home .mainVisual__text p {
		writing-mode: tb-rl;
		-webkit-writing-mode: vertical-rl;
		direction: ltr;
		font-size: 6.612rem;
	}

	.home .mainVisual__text h2 {
		writing-mode: tb-rl;
		-webkit-writing-mode: vertical-rl;
		direction: ltr;
		font-size: 6.612rem;
	}

	.home #g-header .page {
		display: none;
	}
}

.home .mainVisual__text p {
	margin-right: 100px;
	font-size: 1.8rem;
	line-height: 2.2;
	color: #fff;
	letter-spacing: 0.05em;
	padding-top: 218px;
}

.home .mainVisual__text p span {
	margin-bottom: 5px;
	display: block;
	font-size: 2.2rem;
}

.home .mainVisual__image img {
	width: 100%;
}

.sliderArea {
	position: relative;
}

.slick-dots {
	position: absolute;
	right: 63px;
	bottom: 54px;
}

.slick-dots li {
	margin-left: 5px;
	display: inline-block;
	width: 30px;
	height: 3px;
	overflow: hidden;
	font-size: 0;
	line-height: 0;
	background-color: #958626;
	opacity: 0.3;
}

.slick-dots li.slick-active {
	opacity: 1;
}

.slick-dots li button {
	display: none;
}

.home #main .newsArea {
	padding: 1px 0 70px;
	position: relative;
}

.home #main .info {
	margin: -19px 0 54px;
	padding: 20px 0 18px;
	position: relative;
	width: calc(50% + 259px);
	display: flex;
	justify-content: flex-end;
	z-index: 10;
	letter-spacing: 0.05em;
	box-sizing: border-box;
	background: #FFF;
}

.home #main .info__ttl {
	padding: 7px 10px 7px 30px;
	width: 165px;
	font-size: 1.6rem;
	background: url(../img/icon03.png) no-repeat left center;
	box-sizing: border-box;
}

.home #main .info__link {
	margin-left: 10px;
	width: 610px;
	border-left: 1px solid #958626;
}

.home #main .info__link a {
	padding: 6px 31px;
	display: block;
	font-size: 1.6rem;
	color: #111;
	background: url(../img/icon02.png) no-repeat right 37px center;
}

.home #main .info__link a:hover {
	opacity: 0.7;
}

.home #main .banner {
	position: relative;
	margin: 0 auto 84px;
	width: 1000px;
	background-color: #fff;
}

.home #main .banner .slick-dots {
	right: 0;
	left: 0;
	bottom: -29px;
	text-align: center;
}

.home #main .banner .banner__list .slick-slide>div {
	height: 300px;
}

.home #main .banner .banner__list img {
	width: 100%;
}

.home #main .banner .banner__list a:hover {
	opacity: 0.7;
}

.home #main .newsArea .news {
	margin: 0 auto;
	width: 948px;
	display: flex;
	justify-content: space-between;
}

.home #main .newsArea .news__ttl {
	width: 218px;
	font-size: 1.6rem;
	letter-spacing: 0.05em;
	text-align: center;
	border-right: 1px solid #646433;
	display: flex;
	align-items: center;
	justify-content: center;
}

.home #main .newsArea .news__list {
	padding: 10px 0 10px 50px;
	width: calc(100% - 218px)
}

.home #main .newsArea .news__list li {
	margin-bottom: 8px;
	display: flex;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	justify-content: space-between;
	border-bottom: 1px solid #646433;
    padding: 20px 0 25px;
}

.home #main .newsArea .news__list li:last-child {
	margin-bottom: 0;
}

.home #main .newsArea .news__list .time {
	width: 100px;
	color: #958626;
}

.home #main .newsArea .news__list .txt {
	width: calc(100% - 105px);
}

.home #main .newsArea .news__list a {
	display: block;
}

.home #main .newsArea .news__list a:hover {
	opacity: 0.7
}

.home #main .about .top-img img {
	width: 100%;
}

.home #main .about .bg-box {
	padding: 45px 0 225px;
}

.home #main .about .content {
	max-width: 860px;
}

.home #main .about h2 {
	margin-right: -20px;
	margin-bottom: 22px;
	font-size: 4.8rem;
	letter-spacing: 0.05em;
	font-weight: 500;
	line-height: 1.5;
	font-feature-settings: "palt";
	-moz-font-feature-settings: "palt";
}

.home #main .about p {
	margin-bottom: 25px;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

.home #main .about .photo {
	margin: 42px 0 25px;
	text-align: center;
}

.home #main .about .note-list li {
	padding: 0 0 5px 1em;
	color: #333;
	font-size: 1.2rem;
	text-indent: -1em;
}

.home #main .about .note-list li:last-child {
	padding-bottom: 0 !important;
}

.home #main .sec02 {
	padding: 73px 0 0;
	background: url("../img/top/bg03.jpg") no-repeat left top;
}

.home #main .sec02 .p-top {
	margin-bottom: 94px;
	font-size: 1.6rem;
	letter-spacing: 0.05em;
	text-align: center;
}

.home #main .sec02 .inner {
	margin: 0 0 0 auto;
	width: calc(50% + 550px);
	padding-bottom: 1px;
	position: relative;
}

.home #main .sec02 .inner::after {
	width: calc(50% + 690px);
	height: 558px;
	position: absolute;
	bottom: 0;
	right: 0;
	background-color: #cbcead;
	content: '';
	z-index: -1;
}

.home #main .sec02 .photo-list {
	margin-bottom: 60px;
}

.home #main .sec02 .photo-list .slick-slide>div {
	margin-right: 50px;
	width: 334px;
}

.home #main .sec02 .photo-list li .photo {
	margin-bottom: 40px;
}

.home #main .sec02 .photo-list li .text {
	display: flex;
	align-items: center;
}

.home #main .sec02 .photo-list li .text .ttl {
	width: 100px;
	height: 100px;
	display: flex;
	align-items: center;
	flex-direction: column;
	justify-content: center;
	color: #FFF;
	font-size: 2rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	background-color: #958626;
	line-height: 1.2;
}

.home #main .sec02 .photo-list li .text .ttl.fs14 {
	font-size: 1.4rem;
}

.home #main .sec02 .photo-list li .text .txt {
	padding-left: 20px;
	width: calc(100% - 100px);
	font-size: 2rem;
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0;
	box-sizing: border-box;
}

.home #main .sec02 .photo-list li .text .txt.fs18 {
	font-size: 1.8rem;
}



.home #main .sec02 .photo-list li .text .txt span {
	font-size: 1.6rem !important;
}

.home #main .sec02 .photo-list li sup {
	font-size: 1rem;
}

.home #main .sec02 .slick-prev {
	display: none !important;
}

.home #main .sec02 .slick-next {
	width: 126px;
	height: 126px;
	position: absolute;
	top: calc(50% - 132px);
	right: 34px;
	font-size: 0;
	border: 0;
	border-radius: 50%;
	background: url("../img/index/btn.png") no-repeat center;
	cursor: pointer;
}

.home #main .sec02 .notes {
	font-size: 1.2rem;
	font-weight: 500;
	line-height: 2.1;
}

.home #main .sec02 .notes span {
	margin-right: 10px;
}

.home #main .sec02 a {
	padding-bottom: 4px;
	position: relative;
	color: #333333;
	font-size: 1.4rem;
	letter-spacing: 0.05em;
	border-bottom: 1px solid #333;
}

.home #main .contact {
	padding: 116px 0 60px;
	position: relative;
	flex-direction: row-reverse;
	align-items: center;
}

.home #main .contact .ttl-box {
	width: 50%;
	padding-top: 29px;
	box-sizing: border-box;
}

.home #main .contact .ttl-box .head-line01 {
	width: 550px;
	margin-bottom: 0 !important;
}

.home #main .contact .txt-box {
	padding: 36px 58px 60px 0;
	position: relative;
	width: 50%;
	box-sizing: border-box;
	background-color: #fff;
}

.home #main .contact .txt-box .sub-box {
	width: 470px;
	margin-left: auto;
	text-align: center;
}

.home #main .contact .txt-box .title {
	margin-bottom: 25px;
	font-size: 1.8rem;
	letter-spacing: 0.1em;
	line-height: 1.5;
}

.home #main .contact .txt-box p {
	margin-bottom: 35px;
	letter-spacing: 0.05em;
}

@media (min-width: 897px){
	.home #g-footer .f-navi {
		background-color: #f9f7f5;
	}
	.home #main .sec02 .photo-list li .text .small{
		font-size: 1.7rem!important;
		letter-spacing: -1px;
	}
}


@media all and (max-width: 896px) {
	.home #g-header {
		position: absolute;
		background-color: transparent;
	}

	.home #g-header .home {
		display: none;
	}

	.home #g-header .page {
		display: block;
	}

	.home .mainVisual__text {
		right: auto;
		left: 0;
		top: auto;
		bottom: 45px;
		padding: 0 30px;
	}

	.home .mainVisual__text h2 {
		margin-bottom: 0;
		line-height: 1.437;
		letter-spacing: 0.2em;
		text-align: left;
	}

	.home .mainVisual__text p {
		padding-top: 24px;
		margin-right: 0;
		line-height: 1.563;
		letter-spacing: 0.2em;
		font-size: 1.6rem;
	}

	.home .mainVisual .slick-dots {
		right: 30px;
		bottom: 30px;
	}

	.home .slick-dots li {
		width: 25px;
	}

	.home .slick-dots li:not(:last-of-type) {
		margin-right: 2px;
	}

	.home #main .newsArea {
		padding: 0 0 60px;
	}

	.home #main .info {
		margin: 0 0 40px;
		padding: 18px 30px 21px;
		position: relative;
		display: block;
		top: 0;
		width: auto;
	}

	.home #main .info__ttl {
		width: auto;
		margin-bottom: 4px;
		padding: 6px 10px 7px 30px;
		font-size: 1.7rem;
	}

	.home #main .info__link {
		margin-left: 0;
		width: inherit;
		border: none;
	}

	.home #main .info__link a {
		padding: 0;
		font-size: 1.5rem;
		background-position: right center;
	}

	.home #main .banner {
		width: auto;
		margin: 0 15px 83px;
	}

	.home #main .banner .banner__list .slick-slide>div {
		height: auto;
	}

	.home #main .banner .banner__list img {
		margin-bottom: -6px;
	}

	.home #main .newsArea .news {
		margin: 0 15px;
		width: auto;
		display: block;
		/* border-top: 1px solid #958626; */
	}

	.home #main .newsArea .news__ttl {
		padding: 23px 15px 30px;
		width: auto;
		font-size: 1.7rem;
		text-align: left;
		border: none;
	}

	.home #main .newsArea .news__list {
		padding: 0 0 0 15px;
		width: auto;
	}

	.home #main .newsArea .news__list li {
		margin-bottom: 15px;
		font-size: 1.3rem;
		letter-spacing: 0.02em;
		padding: 0 1em 15px;
	}

	.home #main .newsArea .news__list .time {
		width: 90px;
	}

	.home #main .newsArea .news__list .txt {
		width: calc(100% - 100px);
		letter-spacing: 0;
	}

	.home #main .about .bg-box {
		padding: 32px 0 115px;
	}

	.home #main .about .content {
		max-width: inherit;
	}

	.home #main .about h2 {
		margin-right: 0;
		margin-bottom: 20px;
		font-size: 2.5rem;
		line-height: 1.4;
	}

	.home #main .about p {
		margin-bottom: 22px;
		font-size: 1.3rem;
		line-height: 1.7;
	}

	.home #main .about .photo {
		margin: 30px auto 38px;
		max-width: 280px;
	}

	.home #main .about .note-list li {
		font-size: 1.1rem;
	}

	.home #main .sec02 {
		padding-top: 56px;
	}

	.home #main .sec02 .inner {
		margin: 0 0 0 15px;
		width: auto;
	}

	.home #main .sec02 .slick-prev {
		display: none !important;
	}

	.home #main .sec02 .slick-next {
		width: 75px;
		height: 75px;
		top: calc(50% - 78px);
		right: 46px;
		background: url("../img/index/btn.png") no-repeat center / cover;
	}

	.home #main .sec02 .inner::after {
		display: none;
	}

	.home #main .sec02 .photo-list .slick-slide>div {
		width: 235px;
		margin-right: 15px;
	}

	.home #main .sec02 .photo-list li .text .txt,
	.home #main .sec02 .photo-list li .text .txt.fs18 {
		font-size: 1.2rem;
	}

	.home #main .sec02 .photo-list li .text .txt span {
		font-size: 1.2rem !important;
	}

	.home #main .sec02 .photo-list {
		margin: 0;
	}

	.home #main .sec02 .photo-list .slick-slide>div {
		margin-right: 10px;
		width: 238px;
	}

	.home #main .sec02 .photo-list li .photo {
		margin-bottom: 20px;
	}

	.home #main .sec02 .photo-list li .text .ttl {
		width: 70px;
		height: 70px;
		font-size: 1.2rem;
	}

	.home #main .sec02 .photo-list li .text .ttl.fs14 {
		font-size: 0.8rem;
	}

	.home #main .sec02 .photo-list li .text .ttl .num {
		font-size: 2.1rem;
	}

	.home #main .sec02 .photo-list li .text .txt {
		padding-left: 10px;
		width: calc(100% - 57px);
		font-size: 1.3rem;
		line-height: 1.24;
	}

	.home #main .contact {
		padding: 58px 0 0;
		display: block;
	}

	.home #main .contact .ttl-box {
		margin-bottom: -53px;
		width: auto;
		padding-top: 0;
		position: relative;
		z-index: 1;
	}

	.home #main .contact .ttl-box .head-line01 {
		width: auto;
	}

	.home #main .contact .ttl-box .head-line01::before{
		margin-top: -5px;
	}

	.home #main .contact .txt-box {
		width: auto;
		padding: 89px 30px 40px;
	}

	.home #main .contact .txt-box .sub-box {
		width: auto;
	}

	.home #main .contact .txt-box .title {
		margin-bottom: 30px;
		font-size: 1.5rem;
	}
}

@media all and (max-width: 374px) {
	.home #main .about h2 {
		font-size: 2.4rem;
	}
}

/*------------------------------------------------------------
	store
------------------------------------------------------------*/
.store #g-header .home {
	display: none;
}

.store #main .top-sec .content {
	padding: 0 25px;
	position: relative;
	display: flex;
	align-items: center;
}

.store #main .top-sec h2 {
	position: absolute;
	right: 15px;
	top: 0;
	font-size: 2.8rem;
	letter-spacing: 0.05em;
	writing-mode: tb-rl;
	-webkit-writing-mode: vertical-rl;
	direction: ltr;
	text-align: left;
}

.store #main .top-sec .com-text-box {
	width: 600px;
	height: 350px;
}

.store #main .com-text-box ul {
	margin-left: 40px;
}

.store #main .newsArea {
	padding: 1px 0 0;
	position: relative;
	height: 425px;
	background: #cbcead;
}

.store #main .banner {
	position: relative;
	margin: 0 auto 84px;
	width: 1000px;
	background-color: #fff;
}

.store #main .banner__list {
	position: absolute;
	top: -70px;
	width: 100%;
}

.store #main .slick-dots {
    right: 50%;
    bottom: -20px;
	transform: translateX(50%);
}

.store #main .com-text-box li {
	line-height: 1.5;
	background-position: right 7px top;
}

.store #main .top-sec .com-text-box li:not(:last-of-type) {
	margin-left: 15px;
}

.store #main .inner .com-text-box ul:not(:last-of-type) {
	margin-left: 50px;
}

.store #main .inner .com-text-box li {
	line-height: 1.5;
}

.store #main .inner .com-text-box li:not(:last-of-type) {
	margin-left: 15px;
}

.store .sec_product .top-box {
	padding: 0 10px 0 170px;
}

.store .sec_product .top-box .text {
	padding-left: 100px;
}

.store #main .com-img-area .top-box {
	max-width: 735px;
	margin: 0 auto 140px;
}

.store #main .com-img-area .other_bnr {
	display: flex;
	font-style: 1.4rem;
	margin-top: 1em;
}

.store #main .com-img-area .other_bnr dt {
	min-width: 83px;
	width: 83px;
	margin-right: 13px;
}

.store #main .com-img-area{
	padding-bottom:110px;
}

.store #main .sec_map {
	padding-top:80px;
	padding-bottom: 80px;
}

.store #main .sec_map #map {
	height: 460px;
	margin-bottom: 40px;
}

.store #main .sec_map h3 {
	font-size: 2.4rem;
	font-weight: normal;
	padding-bottom: 20px;
	border-bottom: 1px solid #111;
	margin-bottom: 1em;
	line-height: 1;
}

.store #main .sec_map .inner {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: top;
}

.store #main .sec_map .box {
	width: 46.81%;
}

.store .footer-page-nav {
	background: #f9f7f4;
	padding-top: 60px;
}

.store .f-navi {
	display: none;
}

.store #main h2.bdr_left .line::before{
    content: none;
}

.store #main h2.bdr_left .line::after {
    height: 70px;
    top: -8px;
}

.store_ameria .page-title .text-sml .sub{
	font-size: 4rem;
}

.store_mandm .page-title .text-sml .sub{
	font-size: 4rem;
	letter-spacing: 10px;
}

.store_hachioji .page-title .text-sml .sub{
	font-size: 3.5rem;
    letter-spacing: 0;
    top: 50px;
}

.store_fordog .page-title .text-sml .sub{
	font-size: 3.5rem;
    letter-spacing: 0;
    top: 50px;
}

.store_fordog .page-title .text .sub h2{
	line-height: 1;
	margin-left: 0;
}

@media all and ( min-width: 897px){
	.store_hachioji #main .sec02 .head-line01::before{
		margin-top:-32px;
	}

	.store_ameria #main .sec02 .head-line01::before{
		margin-top:-10px;
	}

	.store_fordog #main .sec02 .head-line01::before{
		margin-top:35px;
	}
}

@media all and (max-width: 896px) {
	.head-line01::before{
		left:0;
	}

	.store .page-title .text h2 {
		width: auto;
		line-height: 1.22;
	}

	.store #main .newsArea {
		height: 405px;
	}

	.store #main .banner {
		width: 100%;
		background: transparent;
	}

	.store #main .banner__list {
		top: -50px;
		text-align: center;
		position: relative;
	}

	.store #main .top-sec {
		margin-bottom: 0;
		padding-bottom: 92px;
	}

	.store #main .top-sec .content {
		margin: 0;
		padding: 0;
		position: relative;
		display: block;
	}

	.store #main .top-sec h2 {
		writing-mode: horizontal-tb;
		-webkit-writing-mode: horizontal-tb;
		-moz-writing-mode: horizontal-tb;
		-ms-writing-mode: lr-tb;
	}

	.store #main .top-sec .com-text-box {
		width: auto;
		height: auto;
	}

	.store #main .top-sec .com-text-box ul {
		margin: 0 0 30px;
	}

	.store #main .top-sec .com-text-box li {
		line-height: 1.33;
		background-position: left 23px top 6px;
	}

	.store #main .top-sec .com-text-box li:not(:last-of-type) {
		margin-left: 0;
	}

	.store #main .inner {
		display: flex;
		align-items: center;
	}

	.store #main .head-line01 {
		width: 104px;
		height: auto;
		order: -1;
	}

	.store #main .top-box .text {
		width: 100%;
		padding: 35px 30px 0;
	}

	.store #main .inner .com-text-box {
		margin: 0 28px;
		padding: 0 0 29px;
		width: auto;
		height: auto;
	}

	.store #main .inner .com-text-box ul {
		margin: 0 0 21px;
	}

	.store #main .inner .com-text-box li {
		line-height: 1.5;
		background-position: left 23px top 6px;
	}

	.store #main .inner .com-text-box li:not(:last-of-type) {
		margin-left: 0;
	}

	.store .sec_product .imgList {
		padding-top: 0px !important
	}

	.store .sec_product .top-box {
		flex-wrap: wrap;
		padding-left: 0;
		transform: none;
		position: relative;
		margin-top: -70px
	}

	.store .sec_product .top-box .text {
		width: auto;
		padding: 35px 0 0 0;
		font-size: 1.4rem;
	}

	.store #main .com-img-area .top-box {
		flex-wrap: wrap;
		margin-bottom: 35px;
	}

	.store #main .com-img-area .head-line01 span {
		position: relative;
		width: auto;
	}

	.store #main .com-img-area .com-shop-box::after {
		display: none;
	}

	.store #main .sec_map #map {
		height: 200px;
		margin-left: -30px;
		margin-right: -30px;
	}

	.store #main .sec_map h3 {
		font-size: 1.6rem;
		padding-bottom: 10px;
	}

	.store #main .sec_map .box {
		width: 100%;
	}

	.store #main .sec_map .box:first-child {
		margin-bottom: 25px;
	}

	.store #main h2.bdr_left{
		font-size: 2.1rem;
	}

	.store #main h2.bdr_left .line::after {
		height: 50px;
	}

	.store_ameria .page-title-sp .sub{
		width:108px
	}

	.store_hachioji .page-title-sp .sub{
		width:162px
	}

	.store_mandm .page-title-sp .sub{
		width:108px
	}

	.store_mandm .page-title-sp .sub span{
		font-size: 4rem;
		letter-spacing: 10px;
	}

	.store_fordog .page-title-sp .sub{
		width:162px;
		line-height: 0.9;
	}

	.store_fordog .page-title-sp .sub span{
		font-size: 3rem;
		letter-spacing: 0;
	}
}


/* タブレット のみ*/
@media (min-width: 521px) {
	.ovr_tab{
		display: block!important;
	}
	.udr_tab{
		display: none!important;
	}
}
@media (max-width: 520px) {
	.ovr_tab{
		display: none!important;
	}
	.udr_tab{
		display: block!important;
	}
}

/* ----------
20220328追加 
-----------*/
/* SP時のヘッダー固定 */
@media (max-width: 896px) {

	/* SP表示時ヘッダー固定 */
	#g-header .h-box {
		padding: 25px 32px 25px;
		position: unset;
	}

	#g-header {
		position: fixed;
	}

	/* ハンバーガーメニュ－ */
	.menu {
		top: 10px;
		z-index: 30;
	}

	/* スクロールして「scroll-navクラス」がついたときのヘッダーデザイン */
	#g-header.scroll-nav {
		background-color: rgba(255, 255, 255, 0.9);
		box-shadow: 0 2px 4px rgb(0 0 0 / 30%);
		padding-bottom: 0px;
		z-index: 20;
	}
}

/*----------------------
 コーポレートページ共通 
 ----------------------*/

.mt-50{
	margin-top:-50px
}

.mt20 {
	margin-top: 20px !important;
}

.mb10 {
	margin-bottom: 10px;
}

.mb15 {
	margin-bottom: 15px !important;
}

.mb20{
	margin-bottom:20px !important
}

.mb50 {
	margin-bottom: 50px !important;
}

.alignC {
	text-align: center !important;
}

.alignR {
	text-align: right !important;
}

.bord {
	color: #c03c3f
}

.fs12 {
	font-size: 1.2rem !important;
}

.fs14 {
	font-size: 1.4rem;
}

.fs20{
	font-size:20px!important;
}

.ls-2{
	letter-spacing: -2px !important;
}

.corp #g-header {
	position: static;
}

.corp #g-header .home {
	display: none;
}

.corp .p_title {
	height: 340px;
	letter-spacing: 0.2em;
	line-height: 1.33;display: flex;
	justify-content: center;
	align-items: center;
}

.corp .sec01 {
	background-color: #fff;
	padding: 80px 0;
	font-size: 1.6rem
}

@media (min-width: 897px) {
	.corp #g-header .home {
		display: none;
	}
}

@media (max-width: 896px) {
	.corp #g-header {
		padding-bottom: 0px;
	}

	.corp .p_title {
		height:200px
	}

	.corp .p_title h2{
		font-size: 3.2rem!important;
		letter-spacing: 0.2em;
		font-weight: 500;
	}
	
	.corp .sec01,
	.corp .sec02 {
		padding: 20px 0;
		font-size: 1.3rem
	}
}

/* サイトマップ */

#sitemap ul {
	line-height: 2.5;
}

#sitemap h3 {
	margin-top: 10px;
	padding: 0 0 10px 15px;
	border-bottom: 1px solid #eaebe1;
}

#sitemap ul ul {
	margin-left: 2em
}

#sitemap .menu_wrap {
	display: flex;
	justify-content: space-between;
}

#sitemap .menu_wrap div {
	width: 49%
}

@media (max-width:896px) {
	#sitemap .menu_wrap{
		display: block;
	}
	#sitemap .menu_wrap div{
		width:100%
	}
}
 
@media (min-width: 897px){
	#sitemap_body #g-footer .f-navi {
		background-color: #f9f7f5;
	}
}

/* 私たちの心がまえ */
#policy .sec01 .content {
	max-width: 970px;
}

#nihongami h3,
#policy h3,
#recruit h3,
#company h3 {
	background-color: #c03c3f;
	padding: 10px 0;
	color: #FFF;
	text-align: center;
	margin: 0 auto;
	font-size: 2rem;
	margin-bottom: 15px
}

#policy .ttl,
#company .ttl {
	display: flex;
	align-items: center;
}

#policy .seo-box .ttl{
	display: block;
	margin-top:30px
}

#policy .ttl .num,
#company .ttl .num {
	margin-right: 27px;
	padding: 15px 0;
	width: 60px;
	color: #7a5d53;
	font-size: 1.8rem;
	font-weight: 700;
	text-align: center;
}

#policy .ttl .txt,
#company .ttl .txt {
	line-height: 1.4;
	letter-spacing: 0.05em;
	width: calc(100% - 60px)
}

#policy .seo-box th{
	width:100px
}

#policy .seo-box td,
#policy .seo-box th{
	margin-bottom: 10px;
    padding: 0 0 10px 15px;
    border-bottom: 1px solid #eaebe1;
}

#policy .seo-box th{
	width: 20%;
    letter-spacing: 8px;
    font-weight: bold;
}

#policy .c-table dt{
	margin-top:10px;
	font-weight: bold;
}

#policy .text_area{
	max-width: 970px;
    margin: 50px auto;
    padding: 0 5px;
}

.corp .sec02 .link{
	text-align: center;
}

/* MAP */
#policy #map iframe {width: 100%;height: 400px;margin: 40px 0 0 0;border: solid 1px #cfbfbe;}
@media only screen and (max-width: 768px) {
#policy .seo-box {background: #fff;padding: 1px 0}
#policy #map iframe {display: none;}
#policy #map p {font-size: 15px;margin: 10px 5px;text-align: center;}
#policy #map p a {background: #876b5f;color: #fff;display: block;padding: 8px;margin: 10px auto;text-decoration: none;border-radius: 6px;background: linear-gradient(to bottom, #876b5f 0%, #745240 100%);}
#policy .text_area {margin: 40px auto 0;}
#policy .text_area h2,#policy .c-nap h2 {font-size: 16px;}
}


@media (max-width: 896px) {

	#policy .ttl,
	#company .ttl {
		margin-bottom: 10px;
	}
	#policy .seo-box .ttl {
		font-size: 1.6rem;
	}
	#policy .ttl .num,
	#company .ttl .num {
		padding: 0;
		margin-right: 0;
	}

	#policy .seo-box th{
		width: 23%;
    	letter-spacing: 1px;
	}

	#policy .splsm2{
		letter-spacing: -2px;
	}

}

@media (min-width: 897px){
	#policy #g-footer .f-navi {
		background-color: #f9f7f5;
	}
}

/* 共通　マップ　店舗・ポリシー */

.corp .map-box{
	margin:40px auto
}

.corp .map iframe {
	width: 1100px;
	height: 450px;
	margin: 0 auto;
}
.home .corp .map iframe {
	max-width: 970px;
}
.corp .sec02 .link{
	text-align: center;
}

@media all and (max-width: 896px) {
	.home .seo-box .content {
		margin: 0 20px;
	}
	.home .corp .map,
	.corp .sec02 .map {
		width: 100%;
		padding-bottom: 68.08%;
		height: 0;
		position: relative;
		z-index: 10;
		overflow: hidden;
	}
	.home .corp .map,
	#store_info .sec02 .map {
		padding-bottom: 130%;
	}
	.home .corp .map iframe,
	.corp .sec02 .map iframe {
		width: 100%;
		height: 100%;
		position: absolute;
		top: 0;
		left: 0;
	}
	.home .corp .map-box,
	.corp .map-box{
		margin:10px auto 20px
	}
}

/* 店舗情報 */

#store_info .holiday{
	color:#c03c3f;
}

#store_info .holiday li{
	text-indent: -1.4rem;
    padding-left: 1rem;
    display: inline-block;
}

#store_info .com-img-box .text-box th {
	width: 25%
}

#store_info .com-img-box .text-box {
	padding: 26px 75px 34px 60px;
}

#store_info .btn a {
    padding-bottom: 4px;
    position: relative;
    color: #333333;
    letter-spacing: 0.05em;
    border-bottom: 1px solid #333;
}

#store_info .jinjya a {
    padding-bottom: 4px;
    position: relative;
    color: #333333;
    border-bottom: 1px solid #333;
}

@media all and (max-width: 896px) {
	#store_info .page-title {
		margin-bottom: -9%;
	}

	#store_info #main .com-text-box li {
		background-position: left 23px top 6px;
	}

	#store_info #main {
		padding: 31px 0;
	}

	#store_info #main .shop .content {
		margin: 0;
		padding: 0;
	}

	#store_info #main .shop {
		padding: 31px 0 0;
	}

	#store_info #main .inner {
		display: block;
	}

	#store_info .com-img-box .text-box {
		padding: 45px 30px 30px 20px;
	}
	.home .corp .link,
	#store_info .sec02 .link {
		margin: 24px auto 0;
		width: 240px;
		position: relative;
		z-index: 1;
	}
}

/* 経営理念・会社概要 */
#company .content {
	max-width: 850px;
}

#company .comProf {
	padding: 20px
}

#company .comProf li {
	display: flex;
}

#company .comProf li .title {
	width: 20%;
	letter-spacing: 8px;
	font-weight: bold;
}

#company .comProf li .text {
	width: 80%;
}

#company .comProf li {
	margin-top: 10px;
	padding: 0 0 10px 15px;
	border-bottom: 1px solid #eaebe1;
}

#company .comProf li .bgbolde{
	background-color: rgb(192,60,63,0.2);
	display: inline-block;
	padding:5px;
}

#company .comProf li:last-child img{
	width: 100px;
	aspect-ratio: 100 / 71;
	margin-left: calc(50% - 50px);
    margin-top: 10px;
    margin-bottom: 10px;
}

@media all and (max-width: 896px) {

	#company .sec01{
		padding-bottom: 0;
    	margin-bottom: 50px;
	}

	#company .comProf li:last-child{
		border-bottom: none;
	}
	
	#company .comProf {
		padding: 0
	}

	#company .comProf li .title {
		width: 23%;
		letter-spacing: 1px;
	}

	#company .comProf li .text {
		width: 76%;
	}
}

@media (min-width: 897px){
	#company #g-footer .f-navi {
		background-color: #f9f7f5;
	}
}

/* 募集情報 */
#recruit .content {
	max-width: 850px;
}

#recruit .sec01 .content {
	text-align: center;
}

#recruit .sec02 .kenkyukai {
	position: relative;
}

#recruit .sec02 .kenkyukai .ec {
	position: absolute;
	right: 0;
	top: 0
}

#recruit .sec02 .kenkyukai .ec img {
	display: block;
	margin-bottom: 10px
}

#recruit .sec02 h4 {
	text-align: center;
	font-size: 2rem;
}

#recruit .sec02 h4 span {
	margin-bottom: 30px;
	padding-right: 24px;
	font-weight: 700;
	border: 1px solid #cccccc;
    padding: 10px 30px;
	display: inline-block
}

#recruit .sec02 h5 {
	font-size: 1.8rem;
}

#recruit .contact {
	background-color: #fff;
	padding: 15px;
	margin-top: 20px;
}

#recruit .sec02 .kenkyukai_left {
	width: 75%
}

#recruit .sec02 a {
	padding-bottom: 4px;
	border-bottom: 1px solid #111;
}

@media all and (min-width:897px) {
	#recruit .sec02 {
		padding: 80px 0;
		font-size: 1.6rem;
	}
	
	#recruit #g-footer .f-navi {
		background-color: #f9f7f5;
	}
}

@media all and (max-width: 896px) {

	#recruit .sec02 .kenkyukai .ec {
		top: 130px;
		left: 50%;
		right: 50%;
		transform: translate(-50%, -50%);
		width: 100%;
	}

	#recruit .sec02 .kenkyukai .ec p {
		text-align: center;
	}

	#recruit .sec02 .kenkyukai .ec img {
		margin: 0 auto 10px
	}

	#recruit .sec02 .kenkyukai_left {
		width: 100%;
		padding-top: 300px;
	}

	#recruit .sec02 .kenkyukai_left p {
		font-size: 1.2rem;
	}
}



/*------------------------------------------------------------
	お問い合わせ・予約フォーム・Thanksページ
------------------------------------------------------------*/
.errs{
	color: #C00;
}
#YSform #g-header {
	position: static;
}
#YSform .main_title{
	padding: 100px 0;
	text-align: center;
}
#YSform .main_title h2{
	writing-mode: vertical-rl;	
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: vertical-rl;
	font-size: 40px;
	margin: auto;
	text-align: center;
	display: inline-block;
	font-weight:500;
}
#YSform .detail,
#YSform .attention{
	background-color: #FFF;
	padding: 73px 0;
	color: #c03c3f;
}
#YSform .detail .direction{
	display: flex;
	max-width: 610px;
	width: 95%;
	justify-content: space-between;
	margin: auto;
}
#YSform .detail .direction .text{
	font-size: 16px;
	color: #000;
}
#YSform .detail .comments{
	margin: 70px auto 20px;
    justify-content: flex-start;
    display: flex;
    flex-wrap: wrap;
    max-width: 800px;
	width: 95%;
}
#YSform .form_action{
	margin: 65px auto;
	max-width: 800px;
}
#YSform .form_action .form_table{
	border-collapse:collapse;
	max-width: 800px;
	width: 100%;
}

#YSform .form_action .form_table .required{
	font-size: 14px;
	background-color: #c03c3f;
    color: #FFF;
    height: 20px;
    width: 44px;
    line-height: 1.5;
    display: inline-block;
    margin-left: 18px;
    text-align: center;
}
#YSform .form_action .form_table th{
	width: 35%;
	border-bottom:1px solid #999999;
	font-size: 18px;
	padding: 25px 0;
}
#YSform .form_action .form_table td{
	padding: 25px 0;
	border-bottom:1px solid #999999;
}
#YSform .form_action .form_table td .txt{
	width: 100%;
	height: 40px;
	border: none;
}
#YSform .form_action .form_table tr.date td .txt{
	width: 144px;
	margin-bottom: 20px;
}
#YSform .form_action .form_table tr.shop td p{
	padding: 20px 0;
	border-bottom:1px solid #999999;
}
#YSform .form_action .form_table tr.shop td p label{
	font-size: 16px;
}
#YSform .form_action .form_table tr.shop td p:first-child{
	padding-top: 0;
}
#YSform .form_action .form_table tr.shop td p:last-child{
	border:none;
	padding-bottom: 0;
}
#YSform .form_action .form_table tr.shop td p span{
	margin: 0 22px 0 12px;
	font-size: 14px;
}
#YSform .form_action .form_table tr.shop td p span.black{
	margin:0;
	background-color: #000;
	color:#FFF;	
	line-height: 1.5;
	display: inline-block;
	text-align: center;	
	font-size: 12px;
}
#YSform .form_action .form_table tr.shop td p span.time{
	width: 66px;
}
#YSform .form_action .form_table tr.shop td p span.tel{
	width: 42px;
}
#YSform .form_action .form_table td #message{
	height: 140px;
}
#YSform .form_action .form_table .shop label,
#YSform .form_action .form_table .service label,
#YSform .form_action .form_table .date label{
	position: relative;
	cursor: pointer;
	padding-left: 30px;	
}
#YSform .form_action .form_table .shop label::before,
#YSform .form_action .form_table .shop label::after,
#YSform .form_action .form_table .date label::before,
#YSform .form_action .form_table .date label::after {
  content: "";
  display: block;
  border-radius: 50%;
  position: absolute;
  transform: translateY(-50%);
  top: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}
#YSform .form_action .form_table .shop label::before,
#YSform .form_action .form_table .date label::before {
  background-color: #fff;
  border-radius: 50%;
  width: 20px;
  height: 20px;
  left: 5px;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
  -ms-border-radius: 50%;
  -o-border-radius: 50%;
}
.shop label::after, 
.date label::after {
  background-color: #c03c3f;
  border-radius: 50%;
  opacity: 0;
  width: 12px;
  height: 12px;
  left: 9px;  
}
.visually-hidden {
 position: absolute;
 white-space: nowrap;
 border: 0;
 clip: rect(0 0 0 0);
 clip-path: inset(50%);
 overflow: hidden;
 height: 1px;
 width: 1px;
 margin: -1px;
 padding: 0;
}
#YSform .form_action .form_table .service label::before,
#YSform .form_action .form_table .service label::after {
	content: "";
	display: block; 
	position: absolute;
}
#YSform .form_action .form_table .service label::before {
	background-color: #fff;
	border-radius: 0%;
	width: 20px;
	height: 20px;
	transform: translateY(-50%);
	top: 50%;
	left: 5px;
}
.service label::after {
	border-bottom: 4px solid #c03c3f;
    border-left: 4px solid #c03c3f;
    opacity: 0;
    height: 4px;
    width: 12px;
    transform: rotate(-53deg);
    top: 6px;
    left: 7px;
}
input:checked + label::after {
	opacity: 1;
}
#YSform #link_to_map .btn {
    padding: 4px 0;
    width: 159px;
    display: block;
    color: #FFF;
    text-align: center;
    border-radius: 30px;
    box-sizing: border-box;
    background-color: #c03c3f;
    border: none;
	font-size: 14px;
  }
#YSform  #link_to_map .btn:hover {
	filter: alpha(opacity=70);
	-moz-opacity: 0.70;
	opacity: 0.70;
	-webkit-filter: alpha(opacity=70);
}
#YSform #map {
	display: none;
}
#YSform #map iframe {
	width: 100%;
	height: 400px;
	border: solid 1px #CFBFBE;
}
#YSform #map p {
	font-size: 12px;
	text-align: right;
}
#YSform .form_action .form_table tr.shop,
#YSform .form_action .form_table tr.service,
#YSform .form_action .form_table tr.date,
#YSform .form_action .form_table tr.inquiry{
	vertical-align: top;
}
#YSform .form_action .form_table tr.service td .cBox{
	display: flex;
	flex-wrap: wrap;
}
#YSform .form_action .form_table tr.service td .cBox li{
	padding-right: 20px;
	padding-bottom: 15px;
}
#YSform .form_action .form_table tr.service td .cBox .other{
	width: 100%;
}
#YSform .form_action .form_table tr.service td .cBox label{
	font-size: 16px;
}
#YSform .form_action .form_table tr.service td .cBox .comment{
	color: #666;
	padding-bottom: 2px;
	display: inline-block;
}
#YSform .form_action #formBtn{
	margin-top: 45px;
}
#YSform .form_action #formBtn .btn{
    margin: 0 auto;
    padding: 13px 5px 11px;
    width: 240px;
    display: block;
    color: #FFF;
    text-align: center;
    border-radius: 30px;
    box-sizing: border-box;
    background-color: #c03c3f;
	border: none;
}
#YSform .attention li{
	max-width: 800px;
	margin: auto;
}
#YSform .attention .comments{
	margin: 0 auto 40px;
}
#YSform .attention ol{
	list-style: decimal;
	padding-left: 18px;
}
#YSform .form_action #formBtn.confirm{
	display: flex;
	justify-content: center;
	margin: 45px auto 0;
	width: 50%;
}
#YSform .form_action #formBtn.confirm .btn{
	width: 150px;
}
#YSform.thanks .detail .direction{
	justify-content: center;
	margin: auto;
	flex-wrap: wrap;
	text-align: center;
}
#YSform.thanks .detail .direction p:first-child{
	margin-bottom: 20px;
}
#YSform .form_action .form_table .date p.note{
	color: #c03c3f;
	margin-bottom: 2%;
}
#YSform .form_action .form_table tr.shop td p span.close{
	margin-left:82px!important
}
@media all and (max-width: 896px) {
	#YSform #g-header {
		padding-bottom: 0;
	}
	#YSform .detail .direction{
		justify-content: center;
		flex-wrap: wrap;
	}
	#YSform .detail .direction .text{
		margin-bottom: 5%;
	}
	#YSform .form_action .form_table th,
	#YSform .form_action .form_table td{
		display: block;
		width: 98%;
		margin: auto;
		padding: 3% 0 5%;
	}
	#YSform .form_action .form_table tr.shop td p span {
		display: block;
		margin-left: 8% !important;
	}
	#YSform .form_action .form_table tr.service td .cBox .comment{
		display: block;
	}
	#YSform .attention ul{
		width: 95%;
		margin: auto;
	}
	#YSform .form_action #formBtn.confirm{
		flex-wrap: wrap;
		width: 100%;	
	}
	#YSform .form_action #formBtn.confirm .btn{
		width: 65%;
		margin-bottom: 2%;
	}
	#YSform .form_action .form_table .date p.line{
		display: flex;
		width: 84%;
		flex-wrap: wrap;
		margin: 4% auto;
		justify-content: center;
	}
	#YSform .form_action .form_table .service label.hair_makeup::before {
		top: 30%;
	}
	#YSform .form_action .form_table .date p.line strong{
		width: 100%;
	}
	#YSform .form_action .form_table tr.shop td p span.close{
		margin-left:0!important
	}
	
}

/* corporate記述 */

@media (max-width: 896px) {
	.spmt20{
		margin-top:20px !important
	}
}

/* お問い合わせフォーム */
.corp .p_title h2{
	font-size:40px;
	font-weight: 500;
	-webkit-writing-mode: vertical-rl;
	writing-mode: vertical-rl;
	direction: ltr;
	display:inline-block
}

/* ご予約フォーム　全部 */
#reserveHub .sec01 {
	background-color: transparent;
}

#reserveHub .sec01 .btn a {
	padding: 11px;
	display: block;
	text-align: center;
	color: #fff;
	letter-spacing: 0.025em;
	border-radius: 24px;
	box-sizing: border-box;
	background-color: #c03c3f;
	width: 100%;
}

#reserveHub .reserveBox {
	padding: 20px;
	max-width: 600px;
	text-align: center;
	margin:10px auto 0;
	background-color: #fff;
}

#reserveHub .cBox .ttl{
	margin-bottom:20px !important;
}

#reserveHub .rbox_in{
	display: flex;
	justify-content: space-between;
	margin-top:20px
}

#reserveHub .rbox_in .btn{
	width: 49%;
}

#reserveHub .reserveBox h3 {
	color: #c03c3f;
	text-align: center;
}

#reserveHub .reserveBox strong {
	font-size: 2.8rem;
	font-weight: bold;
}

#reserveHub h3 .h3kakko{
	margin-left:290px
}

@media (max-width: 896px) {
	#reserveHub .reserveBox strong {
		font-size: 2rem;
	}
	#reserveHub .content {
		margin: auto 0
	}

	#reserveHub .cBox {
		padding: 30px;
	}

	#reserveHub .reserveBox{
		display: block;
		padding-bottom: 20px;
	}

	#reserveHub .reserveBox {
		padding: 10px;
	}

	#reserveHub .reserveBox .box_left{
		width:100%;
		margin-bottom: 20px;
	}

	#reserveHub .reserveBox .box_right {
		 width: 90%;
	}

	#reserveHub h3 .h3kakko{
		margin-left:auto
	}
}

/* 各ストア詳細 */

.store #main .fordog span {
	display: none !important;
}

.store_fordog #main .fordog span {
    display: block !important;
}

.store_fordog .com-shop-box .txt-box {
    top: 70px;
}

.eng_ver{
	text-orientation: upright;
}

.store .sec_product .content {
    margin-top:100px !important;
}

.store_mandm #main .sec_product {
    padding-bottom: 0;
}

.store .holiday{
	color:#c03c3f;
}

.store .holiday li{
	text-indent: -1.4rem;
    padding-left: 1rem;
    display: inline-block;
}

@media (max-width: 896px){
	.store_mandm .sec_product {
		padding-bottom: 0!important;
	}

	.store_mandm #main .inner {
		padding-top: 30px
	}
	.store #main .com-img-area .com-shop-box{
		z-index: unset;
	}
	}

	/* 店舗情報　バナー非表示時 */
.store #main .newsArea {
	height:200px
}
@media (max-width: 896px){
	.store #main .newsArea {
		height: 80px;
	}
	.store #main .top-sec {
		padding-bottom: 40px;
	}
}

/* 店舗情報　バナー表示時 */

.store_hachioji #main .newsArea,
.store_ameria #main .newsArea{
	height:280px
}
.store_hachioji #main .banner__list,
.store_ameria #main .banner__list{
	top:-100px;
}
.store_hachioji .sec_product .content,
.store_ameria .sec_product .content{
    margin-top: 200px !important;
}

@media (max-width: 896px){
	.store_hachioji #main .banner__list,
	.store_ameria #main .banner__list{
		top:0;
	}
	.store_hachioji .sec_product .content,
	.store_ameria .sec_product .content{
		margin-top: 100px !important;
	}
	.store_hachioji #main .newsArea,
	.store_ameria #main .newsArea{
		background: #fff;
		height: auto;
	}
}
@media (max-width:520px){
	.store_hachioji .sec_product .content{
		margin-top: 170px !important;
	}
	.store_hachioji #main .newsArea{
		background: #fff;
		height: auto;
	}
	.store_hachioji #main .newsArea img{
	width: 100%;
	aspect-ratio: 38 / 47;
	}
}
@media (max-width: 896px) and (min-width: 521px) {
	.store_hachioji #main .newsArea,
	.store_ameria #main .newsArea{
		height:280px
	}
}

/* 404 */
@media (max-width: 896px){
body#notfound h2 {
	font-size: 30px!important;
}
}
@media (min-width: 897px){
	body#notfound #g-footer .f-navi {
		background-color: #f9f7f5;
	}
}

/* 七彩クラブ */
#nihongami #title img{
	width: 100%;
}

#nihongami .sec01{
	padding-bottom:120px
}

#nihongami .sec02 .img{
	display: flex;
	justify-content: space-between;
	margin-top: -80px;
}

#nihongami .sec02 .img p{
	font-size: 1.2rem;
}

#nihongami table{
	margin:auto;
	width:100%
}

#nihongami table td, #nihongami table th, #nihongami table tr {
    margin-bottom: 10px;
    padding: 10px 0 10px 15px;
    border-bottom: 1px solid #cccccc;
}

#nihongami table th{
	text-align: center;
}

#nihongami .sec02 .content{
	width:800px
}

@media (max-width: 896px){
	#nihongami .p_title h2{
		font-size: 30px;
		letter-spacing: -1px;
	}
	#nihongami .sec01 {
		padding-bottom: 90px;
	}
	#nihongami .sec02 .content{
		width: auto;
	}
	#nihongami .sec02 .img{
		display: block;
    	margin: auto;
	}
	#nihongami .sec02 .img img{
		margin-top:10px
	}
}

@media all and (max-width: 896px) and (min-width: 500px){
	#nihongami .sec02 .img{
		width: 350px;
	}
}

@media all and (max-width: 499px) {
	#nihongami .sec02 .img{
		width: auto;
	}
}

/* キャンペーン追加 */
.home #main .sec02 .desc{
	margin-top:10px
}
.home #main .sec02 .desc a{
	margin: 0 auto;
    padding: 13px 5px 11px;
    width: 200px;
    display: block;
    color: #FFF;
    text-align: center;
    border-radius: 30px;
    box-sizing: border-box;
    background-color: #c03c3f;
	border:none;
}

@media (max-width: 896px){
	.home #main .sec02 .desc a{
		font-size: 1.3rem;
	}
}

/* index.html GMO*/
			.home .seo-box {background: #fff;padding: 80px 0 30px;}
			.home .text_area {max-width: 970px;margin: 50px auto;padding: 0 5px;}
			.home .text_area h2,.home .c-nap h2 {background: #EEE6DB;border-left: 8px solid #64463E;color: #684c45;font-size: 18px;font-weight: bold;line-height: 1.home .4;margin: 0 0 15px;padding: 10px 15px;}
			.home .text_area p {margin: 0;}
			.home .text_area p:last-child {}
			/*NAP*/
			.home .c-nap {margin: 40px 0 0;}
			.home .c-nap a {color: #745240;text-decoration: none;}
			.home .c-nap a:hover {color: #ffbdbd;}
			.home .c-table {border-collapse: collapse;text-align: left;width: 100%;}
			.home .c-table tr {border-bottom: solid 1px #c9baad;}
			.home .c-table th {font-weight: bold;text-align: left;vertical-align: middle;width: 25%;}
			.home .c-table td {vertical-align: middle;}
			.home .c-table dt {font-weight: bold;}
			.home .u-p15 {padding: 15px;}
			.home .ut-p15 {padding-top: 15px;}
			/* MAP */
			.home #map iframe {width: 100%;height: 400px;margin: 40px 0 0 0;border: solid 1px #cfbfbe;}
			@media only screen and (max-width: 768px) {
			.home .seo-box {background: #fff;padding: 1px 0}
			.home #map iframe {display: none;}
			.home #map p {font-size: 15px;margin: 10px 5px;text-align: center;}
			.home #map p a {background: #876b5f;color: #fff;display: block;padding: 8px;margin: 10px auto;text-decoration: none;border-radius: 6px;background: linear-gradient(to bottom, #876b5f 0%, #745240 100%);}
		   .home .text_area {margin: 40px auto;}
			.home .text_area h2,.home .c-nap h2 {font-size: 16px;}
			.home .c-table tr {border: none;}
			.home .c-table th {background: #f3ece7;border-top: solid 1px #c9baad;border-bottom: solid 1px #c9baad;display: block;padding: 10px !important;text-align: center;width: auto;}
			.home .c-table td {display: block;padding: 10px !important;padding-bottom: 15px !important;}
			.home .c-table dd:nth-child(3n) {border-bottom: dotted 1px #c9baad;padding-bottom: 5px;}
			}

/* index 重要なお知らせ非表示時*/
.home #main .info{
	background:transparent;
}
@media all and (max-width: 896px) {
	.home #main .info{
		padding:0;
	}
}

/* ご予約フォーム修正 */
#reserveHub .rbox_in01 .btn{
	width: 32%;
}
#reserveHub .rbox_in01 .btn a{
	height:77px;
	display: flex;
	justify-content: center;
	align-items: center;
}
@media all and (max-width: 896px) {
	#reserveHub .rbox_in01,#reserveHub .rbox_in{
		display: block;
	}
	#reserveHub .rbox_in01 .btn,#reserveHub .rbox_in .btn{
		width: 100%;
		margin-top: 10px;
	}
}

/* ストアリスト　スライダー */

.store #main .sec_store_list{
	background-color: #fff;
}

.store #main .sec_store_list .inner {
    margin: 0 0 0 auto;
    width: calc(50% + 550px);
    position: relative;
	padding:80px 0 80px 1px
}

.store #main .sec_store_list .photo-list .slick-slide>div {
    margin-right: 56px;
    width: 220px;
}

.store #main .sec_store_list .ttl{
	color:#b58b8c;
	font-size: 1.6rem;
}


.store #main .sec_store_list .slick-next,
.store #main .sec_store_list .slick-prev {
    width: 50px;
    height: 50px;
    position: absolute;
    top: calc(50% - 50px);
    right: 120px;
    font-size: 0;
    border: 0;
    border-radius: 50%;
    background: url(../img/store/btn.png) no-repeat center;
    cursor: pointer;
}
.store #main .sec_store_list .slick-next{
	right:unset;
	left:1079px;
}

.store #main .sec_store_list .slick-prev {
    background: url(../img/store/btn_prv.png) no-repeat center;
	left:-70px;
}

@media (max-width: 896px){
	.store #main .com-img-area {
		padding-bottom: 50px;
	}

	.store #main .sec_store_list ul{
		width:100%;
	}

	.store #main .sec_store_list .slick-next{
		right:calc(50% - 35px);
		bottom: -40px;
		top: unset;
		z-index: 10;
		left:unset;
		width: 30px;
		height:30px;
		background-size: 100%;
	}

	.store #main .sec_store_list .slick-prev{
		left: calc(50% - 55px);
		bottom: -40px;
		top: unset;
		z-index: 10;
		width: 30px;
		height:30px;
		background-size: 100%;
	}

	.store #main .sec_store_list .inner {
		margin: 0 0 0 20px;
		padding: 30px 0 60px;
		width: auto;
	}

	.store #main .sec_store_list .photo-list .slick-slide>div {
		margin-right: 12px;
		width: 160px;
	}
}

/*------------------------------------------------------------
個人情報の取り扱いについて
------------------------------------------------------------*/

#privacy .sec01 .content {
    max-width: 970px;
}

#privacy .content h3{
	margin:30px auto 20px;
	background-color: #c03c3f;
    padding: 10px 0;
    color: #FFF;
    text-align: center;
    font-size: 2rem;
}

#privacy .content ul{
	margin:10px auto
}

#privacy .content ul li{
	padding-left:1.8rem;
	text-indent: -1.8rem;
}

#privacy .content .com_name{
	text-align: right;
	font-weight: bold;
	margin-top:1rem;
}

@media (min-width: 897px){
	
	body#privacy #g-footer .f-navi {
		background-color: #f9f7f5;
	}
}

@media (max-width: 896px){

	body#privacy .p_title h2{
		letter-spacing: 0;
	}

	body#privacy .sec01{
		margin-bottom:50px
	}

}
