/********* common *********/
* {
	box-sizing: border-box;
}

body {
	font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size: 16px;
	width: 100%;
	max-width: 2000px;
	margin: 0 auto;
	overflow-x: hidden;
}

a {
	text-decoration: none;
}

header {
	background: url(../images/bg_header.png) no-repeat;
	width: 100%;
	max-width: 2000px;
	height: 148px;
	position: fixed;
	z-index: 6;
}

header h1 {
	float: left;
	margin: 25px 0 0 17.5%;
}

header nav {
	width: calc(79.5% - 368px);
	float: left;
}

header nav ul {
	font-size: 0;
	width: 100%;
	margin-left: 4.1%;
}

header nav ul li {
	font-size: 16px;
	text-align: center;
	display: inline-block;
	position: relative;
}

header nav ul li:first-child,
header nav ul li:nth-child(2) {
	width: 25%;
}

header nav ul li:nth-child(n+2)::before {
	content: '';
	background: #fff;
	width: 1px;
	height: 40px;
	display: block;
	position: absolute;
	top: 10px;
	left: 0;
}

header nav ul li:nth-child(n+3) {
	width: calc(50% / 3 - 1px);
}

header nav ul li a {
	color: #fff;
	padding: 14px 0;
	display: block;
	transition: all 0.5s;
}

header nav ul li a:hover {
	background: #ff533d;
}

header nav ul li a span {
	font-size: 8px;
}

header nav .sub-menu {
	font-size: 12px;
	background: #ff533d;
	width: 100%;
	text-align: left;
	display: none;
	position: absolute;
	top: 60px;
	left: 0;
}

header nav .sub-menu a {
	padding-left: 10px;
}

header nav .sub-menu a:hover {
	text-decoration: underline;
}

main {
	top: 60px;
	position: relative;
}

input,
textarea {
	font-size: 16px;
}

.page-top {
	height: 140px;
	position: absolute;
	right: 30px;
	bottom: 30px;
	writing-mode: vertical-rl;
	transition: all 0.5s;
}

.page-top:hover {
	bottom: 50px;
}

.page-top a {
	color: #5f262f;
	padding: 0 15px;
}

footer {
	background: url(../images/bg_footer.jpg) repeat-x;
	margin-top: 60px;
	text-align: center;
}

footer .logo {
	padding: 19px 0;
}

footer .logo img {
	width: 150px;
}

footer .copy {
	font-size: 12px;
	color: #fff;
	background: #5f262f;
	padding: 5px 0;
}

footer .btn {
	display: none;
}

.under-layer section {
	padding: 30px 0;
}

.under-layer h2 {
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	color: #5f262f;
	text-align: center;
}

.under-layer h2 span {
	font-size: 18px;
}

.under-layer h2 span.red {
	color: #fa637c;
}

#breadcrumb {
	background: #e4d8ca;
	width: 100%;
	margin-top: 20px;
}

#breadcrumb ul {
	font-size: 0;
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding-left: 80px;
	position: relative;
	z-index: 2;
}

#breadcrumb ul li {
	font-size: 12px;
	color: #5f262f;
	padding: 8px 0;
	display: inline-block;
}

#breadcrumb ul li:nth-child(n+2) {
	margin-left: 5px;
}

#breadcrumb ul li a {
	color: #5f262f;
}

#breadcrumb ul li a:hover {
	text-decoration: underline;
}

br.sp {
	display: none;
}

@media screen and (max-width: 2000px) {
	header {
		background-position: 17.5% 0;
	}
}

@media screen and (max-width: 1750px) {
	header {
		background-position: -200px 0;
	}

	header h1 {
		margin-left: 150px;
	}

	header nav {
		width: calc(97% - 334px);
	}
}

@media screen and (max-width: 1500px) {
	header {
		background-position: -300px 0;
	}

	header h1 {
		margin-left: 50px;
	}

	header nav {
		width: calc(97% - 234px);
	}

	#breadcrumb ul {
		margin-left: 200px;
	}
}

@media screen and (min-width: 1101px) {
	header nav ul {
		display: block;
	}

	#nav-drawer {
		display: none;
	}
}

@media screen and (max-width: 1100px) {
	header nav ul {
		display: none;
	}

	#nav-drawer {
		margin-top: 15px;
		text-align: right;
		display: block;
	}

	.nav-unshown {
		display: none;
	}

	#nav-open {
		width: 40px;
		height: 32px;
		vertical-align: middle;
		display: inline-block;
		cursor: pointer;
	}

	#nav-open span,
	#nav-open span:before,
	#nav-open span:after {
		content: '';
		background: #fff;
		height: 4px;
		width: 40px;
		display: block;
		position: absolute;
	}

	#nav-open span:before {
		bottom: -13px;
	}

	#nav-open span:after {
		bottom: -26px;
	}

	#nav-content {
		background: #5f262f;
		width: 100%;
		height: 100%;
		padding-top: 50px;
		text-align: center;
		overflow: auto;
		position: fixed;
		top: 0;
		left: 0;
		z-index: 9999;
		transition: 0.5s ease-in-out;
		-webkit-transform: translateY(-105%);
		transform: translateY(-105%);
	}

	#nav-content div {
		font-size: 24px;
		margin-top: 35px;
		color: #fff;
	}

	#nav-content div a {
		color: #fff;
		line-height: 1.4;
	}

	#nav-content div.small {
		margin-top: 10px;
	}

	#nav-content div.small a {
		font-size: 18px;
	}

	#nav-content div.btn {
		margin-top: 20px;
	}

	#nav-content div:nth-of-type(8) {
		margin-top: 50px;
	}

	#nav-content div:last-of-type {
		margin-bottom: 50px;
	}

	#nav-content div.btn a {
		background: #ff533d;
		width: 450px;
		margin: 0 auto;
		padding: 30px 0;
		display: block;		
	}

	#nav-content div a:hover {
		text-decoration: underline;
	}

	#nav-input:checked ~ #nav-close {
		width: 40px;
		height: 32px;
		display: inline-block;
		position: relative;
		z-index: 10000;
		cursor: pointer;
		transition: 0.5s ease-in-out;
	}

	#nav-input:checked ~ #nav-close span,
	#nav-input:checked ~ #nav-close span::before {
		content: '';
		background: #fff;
		height: 4px;
		width: 40px;
		display: block;
		position: absolute;
	}

	#nav-input:checked ~ #nav-close span {
		top: 15px;
		transform: rotate(-45deg);
	}

	#nav-input:checked ~ #nav-close span::before {
		transform: rotate(90deg);
	}

	#nav-input:checked ~ #nav-open span {
		display: none;
	}

	#nav-input:checked ~ #nav-content {
		transform: translateY(0%);
	}
}

@media screen and (min-width: 641px) {
	a[href^='tel:'] {
		pointer-events: none;
		cursor: default;
	}
}

@media screen and (max-width: 640px) {
	header {
		background: url(../images/bg_header_sp.png) no-repeat top left;
		background-size: contain;
		height: 22.814vw;
	}

	header nav {
		width: calc(100% - 32.75vw);
	}

	header h1 {
		margin: 3vw 0 0 4vw;
	}

	header h1 img {
		width: 28.75vw;
		max-width: 184px;
	}

	#nav-drawer {
		margin: 5vw 5vw 0 0;
	}

	#nav-open {
		width: 7vw;
		height: 6vw;
	}

	#nav-open span,
	#nav-open span::before,
	#nav-open span::after {
		height: 0.7vw;
		width: 7vw;
	}

	#nav-open span::before {
	    bottom: -2.5vw;
	}

	#nav-open span::after {
		bottom: -5vw;
	}

	#nav-content {
		padding-top: 7vw;
	}

	#nav-input:checked ~ #nav-close {
		width: 7vw;
		height: 6vw;
		top: 0.5vw;
	}

	#nav-input:checked ~ #nav-close span {
		top: 2vw;
	}

	#nav-input:checked ~ #nav-close span,
	#nav-input:checked ~ #nav-close span::before {
		height: 0.7vw;
		width: 7vw;
	}

	#nav-content div {
		font-size: 5vw;
		margin-top: 6vw;
	}

	#nav-content div.open {
		cursor: pointer;
	}

	#nav-content div.small {
		margin-top: 1.5vw;
		display: none;
	}

	#nav-content div.small a {
		font-size: 4.4vw;
	}

	#nav-content div.btn {
		margin-top: 3vw;
	}

	#nav-content div:nth-of-type(8) {
		margin-top: 12vw;
	}

	#nav-content div:last-of-type {
		margin-bottom: 6vw;
	}

	#nav-content div.btn a {
		font-size: 4.5vw;
		width: 80%;
		padding: 6vw 0;
	}

	main {
		top: 14.7vw;
	}

	footer {
		margin: 15vw 0 14.5vw;
	}

	footer .logo {
		display: none;
	}

	footer .copy {
		font-size: 3.2vw;
		padding: 1.5vw 0;
	}

	footer .btn {
		width: 100%;
		display: block;
		position: fixed;
		left: 0;
		bottom: 0;
		z-index: 5;
	}

	footer .btn ul {
		font-size: 0;
	}

	footer .btn ul li {
		font-size: 3.6vw;
		width: calc(100% / 3);
		height: 14.5vw;
		text-align: center;
		display: inline-block;
		vertical-align: top;
	}

	footer .btn ul li:first-child {
		background: #ef363d;
	}

	footer .btn ul li:nth-child(2) {
		background: #58eaa6;
	}

	footer .btn ul li:last-child {
		background: #fe5da6;
	}

	footer .btn ul li a {
		color: #fff;
		width: 100%;
		height: 100%;
		display: block;
	}

	footer .btn ul li:first-child a {
		padding-top: 2.5vw;
	}

	footer .btn ul li:nth-child(2) a {
		padding-top: 3vw;
	}

	footer .btn ul li:last-child a {
		padding-top: 3.2vw;
	}

	footer .btn ul li a img {
		vertical-align: middle;
	}

	footer .btn ul li:first-child a img,
	footer .btn ul li:last-child a img {
		width: 8.75vw;
	}

	footer .btn ul li:nth-child(2) a img {
		width: 9.688vw;
	}

	.under-layer section {
		padding: 4.8vw 0;
	}

	.under-layer h2 {
		font-size: 2.8vw;
		line-height: 1.2;
	}

	.under-layer h2::before {
		content: '';
		background: #5f262f;
		width: 1px;
		height: 5vw;
		display: block;
		margin: 0 auto 1vw;
	}

	.under-layer h2 span {
		font-size: 5vw;
		padding-left: 2.7vw;
	}

	#breadcrumb {
		margin-top: 2vw;
		padding-left: 2vw;
	}

	#breadcrumb ul {
		margin-left: 0;
		padding-left: 0;
	}

	#breadcrumb ul li {
		font-size: 3.6vw;
		padding: 2vw 0;
	}

	#breadcrumb ul li:nth-child(n+2) {
		margin-left: 1vw;
	}

	.page-top {
		font-size: 3.6vw;
		height: inherit;
		margin: 4vw 0 0;
	    position: relative;
	    right: 0;
	    bottom: 0;
	    text-align: center;
	    -ms-writing-mode: horizontal-tb;
	    writing-mode: horizontal-tb;
	}

	.page-top a {
		padding-left: 3.6vw;
	}

	.page-top:hover {
		bottom: 4.5vw;
	}

	.page-top img {
		display: block;
		margin: 0 auto 2vw;
	}

	br.sp {
		display: block;
	}
}
/********* common *********/

/********* top *********/
#top #slider li .pc {
	display: block;
}

#top #slider li .sp {
	display: none;
}

#top .bx-wrapper {
	margin-bottom: 70px !important;
	-moz-box-shadow: none !important;
	-webkit-box-shadow: none !important;
	box-shadow: none !important;
	border: none !important;
}

#top .bx-wrapper .bx-pager.bx-default-pager a {
	background: #e4d8ca !important;
	width: 100px !important;
	height: 15px !important;
	margin: 0 12px !important;
	border-radius: 0 !important;
}

#top .bx-wrapper .bx-pager.bx-default-pager a:hover,
#top .bx-wrapper .bx-pager.bx-default-pager a.active,
#top .bx-wrapper .bx-pager.bx-default-pager a:focus {
	background: #ff533d !important;
}

#top section h2 {
	font-size: 12px;
	color: #5f262f;
	margin-left: 20px;
	padding-top: 8px;
	line-height: 1.6;
}

#top section h2 span {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
}

#top section h2 span.red {
	color: #fa637c;
}

#top section ul {
	font-size: 0;
	width: 100%;
	max-width: 1500px;
	margin: 0 auto;
	padding: 0 50px;
}

#top section ul li {
	display: inline-block;
	vertical-align: middle;
}

#top section ul li:first-child {
	width: 257px;
}

#top section ul li:first-child::before {
	content: '';
	background: #5f262f;
	width: 1px;
	height: 65px;
	display: block;
	float: left;
}

#top section ul li:last-child {
	width: calc(100% - 257px);
	max-width: 1000px;
}

#top section .btn-more {
	font-family: 'Montserrat', sans-serif;
	font-size: 20px;
	width: 400px;
	height: 50px;
	margin: 30px auto 0;
	text-align: center;
}

#top section .btn-more a {
	color: #fff;
	background: #5f262f;
	width: 100%;
	height: 100%;
	padding-top: 13px;
	display: block;
	transition: all 0.5s;
}

#top section .btn-more a:hover {
	color: #5f262f;
	background: #fff;
	box-shadow: 2px 2px 2px 2px rgba(0,0,0,0.2);
}

#top #movie {
	margin: 120px 0 80px;
}

#top #movie ul li:last-child {
	text-align: center;
}

#top #movie ul li:last-child video {
	max-width: 100%;
	cursor: pointer;
}

#top #section-01 {
	background: url(../images/bg_top_about.jpg) no-repeat top center;
	height: 1000px;
	padding: 180px 0 0;
}

#top #section-01 h2 {
	color: #5f262f;
}

#top #section-01 ul li:last-child {
	max-width: 1000px;
	padding: 120px 0 50px;
	border-top: #5f262f 1px solid;
	border-bottom: #5f262f 1px solid;
	text-align: center;
	position: relative;
}

#top #section-01 ul li:last-child::before {
	content: '';
	background: #5f262f;
	width: 80%;
	height: 1px;
	margin: auto;
	display: block;
	position: absolute;
	top: -12px;
	left: 0;
	right: 0;
}

#top #section-01 ul li:last-child::after {
	content: '';
	background: #5f262f;
	width: 80%;
	height: 1px;
	margin: auto;
	display: block;
	position: absolute;
	bottom: -12px;
	left: 0;
	right: 0;
}

#top #section-01 .text {
	font-size: 14px;
	color: #5f262f;
	margin-top: 50px;
	text-align: center;
	line-height: 1.8;
}

#top #section-02 h2 span {
	color: #fff;
}

#top #section-02 h2 span.brown {
	color: #5f262f;
}

#top #section-02 .inner {
	background: #ff533d;
	width: 100%;
}

#top #section-02 ul li {
	vertical-align: top;
}

#top #section-02 ul li:first-child {
	padding-top: 180px;
}

#top #section-02 ul li:last-child {
	padding-left: 30px;
	width: calc(100% - 307px);
	max-width: 900px;
}

#top #section-02 ul li .box-01 {
	width: 900px;
	max-width: 100%;
	margin: 50px auto 30px;
	display: flex;
}

#top #section-02 ul li .box-01 .right {
	font-size: 14px;
	color: #fff;
	margin-left: 30px;
	line-height: 1.8;
}

#top #section-02 ul li .box-02 {
	background: rgba(183, 47, 37, .64);
	width: 790px;
	max-width: 100%;
	margin: 10px auto 0;
	padding: 30px 0 20px;
	text-align: center;
}

#top #section-02 ul li .box-02 p {
	font-size: 14px;
	color: #fff;
	margin-top: 10px;
	line-height: 1.8;
}

#top #section-02 ul li .text-01 {
	font-size: 14px;
	color: #fff;
	margin-top: 20px;
	text-align: center;
	line-height: 1.8;
}

#top #section-02 ul li .wrapper-02 {
	background: url(../images/bg_greetings_01.png) no-repeat top center #fff;
	width: 2000px;
	margin: 50px 0 0 -1000px;
	padding-bottom: 50px;
	position: relative;
	left: 50%;
}

#top #section-02 ul li .g-text {
	margin-top: 10px;
	text-align: center;
}

#top #section-02 ul li .g-text img {
	width: 100%;
	max-width: 863px;
}

#top #section-02 ul li .g-title-01 {
	padding-top: 60px;
	text-align: center;
}

#top #section-02 ul li .text-02 {
	font-size: 14px;
	margin-top: 15px;
	text-align: center;
	line-height: 1.7;
}

#top #section-02 ul li .text-02.a-left {
	width: 900px;
	max-width: 100%;
	margin: 10px auto 0;
	text-align: left;
}

#top #section-02 ul li .text-02 span {
	font-weight: bold;
}

#top #section-02 ul li .box-03 {
	width: 900px;
	max-width: 100%;
	margin: 40px auto 0;
	display: flex;
}

#top #section-02 ul li .box-03 .right {
	font-size: 14px;
	margin-left: 30px;
	line-height: 1.7;
}

#top #section-02 ul li .box-03 .right img {
	width: 100%;
	max-width: 303px;
}

#top #section-02 ul li .wrapper-03 {
	background: url(../images/bg_greetings_02.png) no-repeat bottom center #fef3e6;
	width: 2000px;
	margin-left: -1000px;
	padding-bottom: 100px;
	position: relative;
	left: 50%;
}

#top #section-02 ul li .g-title-02 {
	width: 900px;
	max-width: 100%;
	margin: 0 auto;
	padding-top: 60px;
}

#top #section-02 ul li .wrapper-04 {
	padding: 30px 0 100px;
}

#top #section-02 ul li .text-03 {
	font-size: 14px;
	color: #fff;
	text-align: center;
}

#top #section-02 ul li .g-title-03 {
	margin-top: 20px;
	text-align: center;
}

#top #section-02 ul li .g-title-03 img {
	max-width: 100%;
}

#top #section-02 ul li .g-image {
	margin-top: 30px;
	text-align: center;
}

#top #section-02 ul li .g-image img {
	max-width: 100%;
}

#top #section-02 ul li .g-title-04 {
	margin-top: 10px;
	text-align: center;
}

#top #section-02 ul li .g-title-04 img {
	max-width: 100%;
}

#top #section-02 ul li br.pc {
	display: inline-block;
}

#top #section-02 ul li br.sp {
	display: none;
}

/*#top #section-02 ul li ul {
	padding: 0;
}

#top #section-02 ul li ul li {
	font-size: 14px;
	color: #fff;
	padding: 30px 0;
}

#top #section-02 ul li ul li:first-child {
	width: 18%;
}

#top #section-02 ul li ul li:first-child::before {
	width: 0;
	height: 0;
}

#top #section-02 ul li ul li:last-child {
	width: 82%;
	margin: 0;
	padding: 35px 0;
	border-top: none;
	border-bottom: #fff 1px dashed;
	border-left: none;
	border-right: none;
}

#top #section-02 ul li ul:last-of-type li:last-child {
	border: none;
}

#top #section-02 ul li ul li a {
	color: #fff;
}*/

#top #top-magazine {
	background: #fbf5ef;
	padding: 50px 0;
}

#top #top-magazine .box {
	max-width: 950px;
	display: flex;
}

#top #top-magazine .box .left div:nth-child(n+2) {
	display: none;
}

#top #top-magazine .box .left img {
	width: 270px;
	cursor: pointer;
}

#top #top-magazine .box .right {
	color: #5f262f;
	margin-left: 30px;
}

#top #top-magazine .box .right .date {
	font-size: 24px;
	background: #fff;
	padding: 8px 30px;
}

#top #top-magazine .box .right h3 {
	font-size: 24px;
	margin: 10px 0 0 30px;
	line-height: 1.6;
}

#top #top-magazine .box .right .text {
	font-size: 12px;
	margin: 10px 0 0 30px;
	line-height: 1.6;
}

#section-03 {
	background: url(../images/bg_top_recruit.jpg) no-repeat top center;
	height: 1000px;
	padding: 180px 0 0;
	position: relative;
}

#top #section-03 ul.inner {
	width: 1500px;
	margin: 0 auto;
}

#top #section-03 ul.inner > li:first-child {
	width: 175px;
}

#top #section-03 ul.inner li:first-child::before {
	display: none;
}

#top #section-03 ul.inner > li:last-child {
	width: calc(100% - 175px);
	max-width: 100%;
}

#top #section-03 h2 {
	color: #fff;
	margin-left: 0;
	padding-left: 20px;
	position: relative;
	text-align: left;
}

#top #section-03 h2::before {
	content: '';
	background: #fff;
	width: 1px;
	height: 65px;
	display: block;
	position: absolute;
	left: 0;
}

#top #section-03 h2 span.pink {
	color: #fa637c;
}

#top #section-03 ul {
	width: 1050px;
	margin: 0;
}

#top #section-03 ul li {
	width: 50%;
	text-align: center;
}

#top #section-03 ul li ul {
	padding: 0;
}

#top #section-03 ul li a {
	color: #fff;
	display: block;
	transition: all 0.5s;
}

#top #section-03 ul li a:hover {
	opacity: 0.5;
}

#top #section-03 h3 {
	font-size: 18px;
	line-height: 1.8;
}

#top #section-03 h3 span {
	font-size: 20px;
	font-family: 'Montserrat', sans-serif;
}

#top #section-03 ul li:first-child a::before,
#top #section-03 ul li:last-child a::before {
	content: '';
	background: #fff;
	width: 1px;
	height: 20px;
	margin: 0 auto 30px;
	display: block;
	float: none;
}

#top #section-03 .text-01 {
	font-size: 14px;
	margin-top: 15px;
	line-height: 1.8;
}

#top #section-03 .balloon {
	background: #040607;
	width: 340px;
 	margin-top: -23px;
	padding: 7px 0;
	position: relative;
	display: inline-block;
}

#top #section-03 .balloon:before{
	content: "";
	margin-left: -35px;
	position: absolute;
	top: -70px;
	left: 50%;
	border: 35px solid transparent;
	border-bottom: 35px solid #040607;
}

#top #section-03 .balloon p {
	font-size: 18px;
	color: #fff;
	margin: 0;
	padding: 15px 0;
	text-align: center;
	line-height: 1.8;
}

#top #section-04 {
	margin-top: 60px;
	padding-bottom: 60px;
	position: relative;
}

#top #section-04 .text {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 14px;
	color: #5f262f;
	text-align: center;
	line-height: 1.6;
}

#top #section-04 ul li ul {
	margin-top: 30px;
}

#top #section-04 ul li ul li {
	font-size: 14px;
	width: calc((100% - 100px) / 3 - 1px);
	text-align: center;
}

#top #section-04 ul li ul li:nth-child(n+2) {
	margin-left: 50px;
}

#top #section-04 ul li ul li a {
	color: #fff;
	background: #e4d8ca;
	padding: 40px 0;
	display: block;
	transition: all 0.5s;
}

#top #section-04 ul li ul li a:hover {
	background: #ff533d;
}

#top #section-04 ul li ul li:first-child::before {
	width: 0;
	height: 0;
}

#top #section-04 ul li ul li br {
	display: none;
}

#top .page-top {
	top: 60px;
}

#top .page-top:hover {
	top: 45px;
}

@media screen and (max-width: 1500px) {
	#top #section-03 ul {
		width: 65vw
	}
}

@media screen and (max-width: 1400px) {
	#top section h2 {
		font-size: 18px;
		margin-left: 0;
		padding-left: 0 !important;
	}

	#top section h2 span {
		font-size: 24px;
	}

	#top section ul li:first-child {
		width: 264px;
		margin: 0 auto 50px;
		display: block;
		text-align: center;
	}

	#top section ul li:first-child::before {
		height: 25px;
		margin: 0 auto;
		float: none;
	}

	#top section ul li:last-child {
		width: 100%;
		margin: 0 auto;
		display: block;
	}

	#top #section-01 ul li {
		display: block;
	}

	#top #section-01 ul li:last-child {
		margin: 0 auto
	}

	#top #section-02 ul li {
		display: block;
	}

	#top #section-02 {
		padding-top: 30px;
	}

	#top #section-02 ul li:first-child {
		margin-bottom: 0;
		padding-top: 50px;
	}

	#top #section-02 ul li:last-child {
		width: 100%;
		padding-left: 0;
	}

	/*#top #section-02 ul li ul li {
		display: inline-block;
	}

	#top #section-02 ul li ul li:first-child {
		margin: 0;
	}

	#top #section-02 ul li ul li:last-child {
		width: 77%;
		margin-left: 5%;
		padding: 2.25vw 0;
		line-height: 1.6;
	}

	#top #section-02 .btn-more {
		margin-top: 10px;
	}*/

	#top #section-03 {
		padding-top: 120px;
	}

	#top #section-03 ul.inner {
		width: 100%;
	}

	#top #section-03 ul.inner > li {
		display: block;
	}

	#top #section-03 ul.inner > li:first-child {
		width: 100%;
		padding: 0;
	}

	#top #section-03 ul.inner > li:last-child {
		width: 100%;
		margin: 0 auto;
		padding: 0;
	}

	#top #section-03 h2 {
		text-align: center;
		position: relative;
		top: 0;
		left: 0;
	}

	#top #section-03 h2::before {
		right: 0;
		margin: auto;
		top: -30px;
		height: 25px;
	}

	#top #section-03 ul {
		width: 100%;
		max-width: 1000px;
		margin-top: 50px;
		padding: 0;
	}

	#top #section-03 ul li {
		display: inline-block;
		vertical-align: top;
	}

	#top #section-03 ul li:first-child {
		padding-right: 2vw;
	}

	#top #section-03 ul li:last-child {
		padding-left: 2vw;
	}

	#top #section-03 ul li:first-child::before {
		display: none;
	}

	#top #section-03 .image img {
		width: 100%;
		max-width: 496px;
	}

	#top #section-03 .balloon {
		width: 25vw;
	}

	#top #section-03 .balloon p {
		font-size: 1.8vw;
	}

	#top #section-04 ul li {
		display: block;
		margin: 0 auto;
	}

	#top #section-04 ul li ul {
		padding: 0;
	}

	#top #section-04 ul li ul li {
		width: calc((100% - 6.1vw) / 3);
		margin: 0;
		display: inline-block;
		vertical-align: top;
		line-height: 1.6;
	}

	#top #section-04 ul li ul li br {
		display: block;
	}

	#top #section-04 ul li ul li:nth-child(n+2) {
		margin-left: 3vw;
	}
}

@media screen and (max-width: 1000px) {
	#top #section-02 ul li .wrapper-02,
	#top #section-02 ul li .wrapper-03 {
		width: calc(100% + 130px);
		margin-left: -80px;
		left: 0;
	}

	#top #section-02 ul li .text-02 {
		padding: 0 50px;
	}

	#top #section-02 ul li .box-03 {
		width: 100%;
		padding: 0 50px;
	}

	#top #section-02 ul li .g-title-02 {
		width: 100%;
		padding: 60px 50px 0;
	}
}

@media screen and (max-width: 800px) {
	#top .sub-title img {
		width: 85vw;
	}
}

@media screen and (max-width: 640px) {
	#top #slider li .pc {
		display: none;
	}

	#top #slider li .sp {
		display: block;
	}
	#top .bx-wrapper {
		margin-bottom: 15vw !important;
	}

	#top .bx-wrapper .bx-pager.bx-default-pager a {
		width: 16vw !important;
		height: 2.4vw !important;
		margin: 0 1.9vw !important;
	}

	#top section ul {
		padding: 0;
	}

	#top section ul li:first-child {
		width: 100%;
		margin-bottom: 3.5vw;
	}

	#top section ul li:first-child::before {
		height: 5vw;
	}

	#top section h2 {
		font-size: 3.2vw;
		padding-top: 1.5vw;
	}

	#top section h2 span {
		font-size: 5vw;
	}

	#top section .btn-more {
		font-size: 5vw;
		width: 80%;
		height: 13vw;
		margin-top: 3vw;
		position: relative;
	}

	#top section .btn-more a {
		padding-top: 3.9vw;
	}

	#top #movie {
		margin: 20vw 0 5vw;
	}

	#top #movie ul li:last-child video {
		width: 98%;
	}

	#top #section-01 {
		background: none;
		height: inherit;
		padding-top: 5vw;
	}

	#top #section-01 ul li:last-child::before,
	#top #section-01 ul li:last-child::after {
		height: 0;
	}

	#top #section-01 .sub-title {
		position: relative;
	}

	#top #section-01 .sub-title::before {
		content: '';
		background: #5f262f;
		width: 60%;
		height: 1px;
		margin: auto;
		display: block;
		position: absolute;
		top: -4vw;
		left: 0;
		right: 0;
	}

	#top #section-01 .sub-title::after {
		content: '';
		background: #5f262f;
		width: 70%;
		height: 1px;
		margin: auto;
		display: block;
		position: absolute;
		top: -1.9vw;
		left: 0;
		right: 0;
	}

	#top #section-01 ul li:last-child {
		background: url(../images/bg_top_about_sp.jpg) no-repeat;
		background-size: contain;
		height: 137.5vw;
	    padding: 10vw 0;
	    border: none;
	    text-align: center;
	    position: relative;
	}

	#top .sub-title img {
		width: 59.376vw;
	}

	#top #section-01 .text {
		font-size: 3.4vw;
		margin-top: 2vw;
	}

	#top #section-01 .btn-more::before {
		content: '';
		background: #5f262f;
		width: 87.5%;
		height: 1px;
		margin: auto;
		display: block;
		position: absolute;
		bottom: -5.9vw;
		left: 0;
		right: 0;
	}

	#top #section-01 .btn-more::after {
		content: '';
		background: #5f262f;
		width: 97%;
		height: 1px;
		margin: auto;
		display: block;
		position: absolute;
		bottom: -3.8vw;
		left: 0;
		right: 0;
	}

	#top #section-02 {
		background: none;
		height: inherit;
		padding-top: 5vw;
	}

	#top #section-02 h2 {
		padding-top: 1.5vw;
	}

	#top #section-02 h2 span {
		color: #5f262f;
	}

	#top #section-02 h2 span.brown {
		color: #fa637c;
	}

	#top #section-02 .inner {
		background: transparent;
	}

	#top #section-02 ul li:first-child {
		margin-bottom: 2vw;
		padding-top: 5vw;
	}

	#top #section-02 ul li:last-child {
		padding: 0;
	}

	#top #section-02 ul li .wrapper-01 {
		background: #ff533d;
	}

	#top #section-02 ul li .box-01 {
	    width: 100%;
	    margin: 0 auto;
	    flex-wrap: wrap;
	}

	#top #section-02 ul li .box-01 .left img {
		width: 100%;
	}

	#top #section-02 ul li .box-01 .right {
		font-size: 3.75vw;
		width: 100%;
		margin: 0;
		padding: 5vw 3vw 3vw 3vw;
		text-align: center;
		line-height: 1.4;
		letter-spacing: -0.05em;
	}

	#top #section-02 ul li .box-02 {
	    width: 93.75vw;
	    margin: 1.5vw auto 0;
	    padding: 5vw 0;
	}

	#top #section-02 ul li .box-02:nth-of-type(2) img {
		width: 69.531vw;
	}

	#top #section-02 ul li .box-02:nth-of-type(3) img {
		width: 52.969vw;
	}

	#top #section-02 ul li .box-02 p {
	    font-size: 3.75vw;
	    margin-top: 2vw;
	    line-height: 1.4;
	    letter-spacing: -0.05em;
	}

	#top #section-02 ul li .text-01 {
	    font-size: 3.75vw;
	    margin-top: 4vw;
	    line-height: 1.4;
	}

	#top #section-02 ul li .g-text {
		margin-top: 2vw;
	}

	#top #section-02 ul li .g-text img {
		width: 90.313vw;
	}

	#top #section-02 ul li .wrapper-01 {
		padding-bottom: 5vw;
	}

	#top #section-02 ul li .wrapper-02 {
	    background: url(../images/bg_greetings_01_sp.png) no-repeat top center #fff;
	    width: 100%;
	    margin: 0;
	    padding-bottom: 5vw;
	    left: 0;
	}

	#top #section-02 ul li .g-title-01 {
	    padding-top: 15vw;
	}

	#top #section-02 ul li .g-title-01 img {
		width: 60.156vw;
	}

	#top #section-02 ul li .text-02 {
		font-size: 3.75vw;
		margin-top: 3vw;
		padding: 0;
		line-height: 1.4;
	}

	#top #section-02 ul li .text-02.a-left {
	    width: 100%;
	    margin: 3vw auto 0;
	    text-align: center;
	}

	#top #section-02 ul li .box-03 {
		margin-top: 5vw;
		padding: 0;
		flex-wrap: wrap;
	}

	#top #section-02 ul li .box-03 .left img {
		width: 100%;
	}

	#top #section-02 ul li .box-03 .right {
	    font-size: 3.75vw;
	    width: 100%;
	    margin: 3vw 0 0 0;
	    text-align: center;
	    line-height: 1.4;
	    letter-spacing: -0.05em;
	}

	#top #section-02 ul li .box-03 .right img {
		width: 47.344vw;
		margin-bottom: 2vw;
	}

	#top #section-02 ul li .wrapper-03 {
		background: url(../images/bg_greetings_02_sp.png) no-repeat bottom center #fef3e6;
		width: 100%;
		margin-left: 0;
		padding-bottom: 20vw;
	}

	#top #section-02 ul li .g-title-02 {
	    padding: 5vw 0 0;
	    text-align: center;
	}

	#top #section-02 ul li .g-title-02 img {
		width: 78.438vw;
	}

	#top #section-02 ul li .wrapper-04 {
		background: #ff533d;
	    padding: 3vw 0 15vw;
	}

	#top #section-02 ul li .text-03 {
	    font-size: 3.75vw;
	}

	#top #section-02 ul li .g-title-03 {
		margin-top: 3vw;
	}

	#top #section-02 ul li .g-title-03 img {
		width: 86.094vw;
	}

	#top #section-02 ul li .g-image {
		margin-top: 7vw;
	}

	#top #section-02 ul li .g-title-04 {
		margin-top: 2vw;
	}

	#top #section-02 ul li .g-title-04 img {
		width: 87.656vw;
	}

	#top #section-02 ul li br.pc {
		display: none;
	}

	#top #section-02 ul li br.sp {
		display: inline-block;
	}

	/*#top #section-02 ul li ul li {
		font-size: 3.9vw;
		padding: 3vw 9vw 0;
		display: block;
	}

	#top #section-02 ul li ul li:first-child {
	    width: 100%;
	    text-align: left;
	}

	#top #section-02 ul li ul li:last-child {
		background: none;
		width: 100%;
		height: inherit;
		margin-left: 0;
		padding: 1.5vw 9vw;
	}*/

	#top #top-magazine {
		padding: 5vw 0;
	}

	#top #top-magazine .box {
		flex-wrap: wrap;
	}

	#top #top-magazine .box .left {
		margin: 0 auto;
	}

	#top #top-magazine .box .left img {
		width: 81.25vw;
	}

	#top #top-magazine .box .right {
		width: 100%;
		margin: 3.125vw 0 0;
	}

	#top #top-magazine .box .right .date {
		font-size: 5vw;
		padding: 1.563vw 10vw;
	}

	#top #top-magazine .box .right h3 {
		font-size: 5vw;
		margin: 2vw 0 0 0;
		padding: 0 6.5vw 0 11vw;
	}

	#top #top-magazine .box .right .text {
		font-size: 4.375vw;
		margin: 0.5vw 0 0 0;
		padding: 0 6.5vw 0 11vw;
	}

	#top #section-03 {
		background: none;
		height: inherit;
		padding-top: 5vw;
	}

	#top #section-03 h2 {
		color: #5f262f;
	}

	#top #section-03 h2::before {
		background: #000;
		height: 5vw;
		position: relative;
		top: 0;
	}

	#top #section-03 ul {
		margin-top: 2vw;
	}

	#top #section-03 ul li ul li {
		width: 100%;
		height: 125vw;
		display: block;
	}

	#top #section-03 ul li ul li:first-child {
		background: url(../images/bg_top_soap.jpg) no-repeat;
		margin: 0;
		padding: 0;
	}

	#top #section-03 ul li ul li:last-child {
		background: url(../images/bg_top_deli.jpg) no-repeat;
		padding: 0;
	}

	#top #section-03 ul li:first-child a::before,
	#top #section-03 ul li:last-child a::before {
		display: none;
	}

	#top #section-03 ul li .image {
		margin-top: 5vw;
	}

	#top #section-03 h3 {
		font-size: 5.7vw;
		padding-top: 3vw;
		line-height: 1.2;
	}

	#top #section-03 h3 span {
		font-size: 4.4vw;
	}

	#top #section-03 .text-01 {
	    font-size: 3.6vw;
	    margin-top: 2vw;
	    line-height: 1.6;
	}

	#top #section-03 .image img {
		width: 81.252vw;
		max-width: 520px
	}

	#top #section-03 .balloon {
		width: 81.5%;
		margin-top: 2vw;
		padding: 1.1vw 0;
	}

	#top #section-03 .balloon p {
	    font-size: 3.6vw;
	    padding: 2.4vw 0;
	}

	#top #section-04 {
		margin-top: 5vw;
		padding-bottom: 5vw;
	}

	#top #section-04 ul li:first-child {
		margin-bottom: 1vw;
	}

	#top #section-04 .text {
		font-size: 3.6vw;
	}

	#top #section-04 ul li ul {
		margin-top: 1.5vw;
	}

	#top #section-04 ul li ul li {
		width: 100%;
		display: block;
	}

	#top #section-04 ul li ul li:first-child {
		margin: 0;
	}

	#top #section-04 ul li ul li:nth-child(n+2) {
		margin: 3vw 0 0 0;
	}

	#top #section-04 ul li ul li a {
		font-size: 4.4vw;
		background: #ff533d;
		width: 80%;
		margin: 0 auto;
		padding: 4.5vw 0;
	}

	#top #section-04 ul li ul li a br {
		display: none;
	}

	#top .page-top {
		top: 0;
	}

	#top .page-top:hover {
		top: -15px;
	}
}
/********* top *********/

/********* about *********/
#about section {
	background: url(../images/bg_about.png) no-repeat;
	background-position: center 60px;
	background-attachment: fixed;
}

#about #breadcrumb {
	background: #fff;
}

#about h3 {
	margin-top: 50px;
	text-align: center;
}

#about .text-01 {
	font-size: 14px;
	color: #5f262f;
	margin-top: 20px;
	text-align: center;
	line-height: 1.8;
}

#section-03 {
	background: url(../images/bg_top_recruit.jpg) no-repeat top center;
	height: 1000px;
	padding: 180px 0 0;
	position: relative;
}

#about .recruit h2 {
	color: #fff;
	padding-left: 20px;
	position: absolute;
	top: 50%;
	left: 30px;
}

#about .recruit h2::before {
	content: '';
	background: #fff;
	width: 1px;
	height: 65px;
	display: block;
	position: absolute;
	left: 0;
}

#about .recruit h2 span.pink {
	color: #fa637c;
}

#about .recruit {
	font-size: 0;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 50px;
}

#about .recruit li {
	width: 50%;
	text-align: center;
	display: inline-block;
}

#about .recruit li a {
	color: #fff;
	display: block;
	transition: all 0.5s;
}

#about .recruit li a:hover {
	opacity: 0.5;
}

#about .recruit h3 {
	font-size: 18px;
	color: #5f262f;
	line-height: 1.8;
}

#about .recruit h3 span {
	font-size: 20px;
	font-family: 'Montserrat', sans-serif;
}

#about .recruit .balloon {
	background: #ff533d;
	width: 340px;
 	margin-top: -23px;
	padding: 7px 0;
	position: relative;
	display: inline-block;
}

#about .recruit .balloon:before{
	content: "";
	margin-left: -35px;
	position: absolute;
	top: -70px;
	left: 50%;
	border: 35px solid transparent;
	border-bottom: 35px solid #ff533d;
}

#about .recruit .balloon p {
	font-size: 18px;
	color: #fff;
	margin: 0;
	padding: 15px 0;
	text-align: center;
	line-height: 1.8;
}

#about .recruit .btn {
	font-size: 16px;
}

#about .recruit .btn a {
	color: #fff;
	background: #5f262f;
	width: 400px;
	margin: 20px auto 0;
	padding: 18px 0;
	text-align: center;
}

#about .box {
	font-size: 0;
	width: 100%;
	max-width: 1100px;
	margin: 100px auto 0;
	padding: 0 50px;
	text-align: center;
}

#about .box li {
	display: inline-block;
	vertical-align: middle;
	text-align: left;
}

#about .box .number {
	font-size: 18px;
	font-family: 'Montserrat', sans-serif;
	padding-left: 13px;
	border-left: #fff 1px solid;
}

#about .box .title {
	margin-top: 30px;
}

#about .box .text {
	margin-top: 30px;
	line-height: 1.8;
}

#about .box-01 li:first-child {
	font-size: 14px;
	color: #fff;
	background: url(../images/bg_about_box_01.png) no-repeat;
	width: 600px;
	height: 900px;
	padding: 150px 100px 0 50px;
}

#about .box-01 li:last-child {
	margin-left: -70px;
}

#about .box-01 li span {
	font-weight: bold;
}

#about .box-01 li span.big {
	font-size: 22px;
	line-height: 1.4;
}

#about .box-02 li:first-child {
	margin-right: -70px;
	position: relative;
	z-index: 2;
}

#about .box-02 li:last-child {
	font-size: 14px;
	color: #fff;
	background: url(../images/bg_about_box_02.png) no-repeat;
	width: 600px;
	height: 900px;
	padding: 185px 60px 0 95px;
}

#about .box-02 li span {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
}

#about .box-03 li:first-child {
	font-size: 14px;
	color: #fff;
	background: url(../images/bg_about_box_03.png) no-repeat;
	width: 600px;
	height: 900px;
	padding: 150px 100px 0 50px;
}

#about .box-03 li:last-child {
	margin-left: -70px;
}

#about .box-03 li span {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.4;
}

#about .bottom {
	padding: 80px 50px;
}

#about .bottom .text-02 {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	color: #5f262f;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 50px 0;
	border-top: #5f262f 1px solid;
	border-bottom: #5f262f 1px solid;
	text-align: center;
	line-height: 1.6;
	position: relative;
}

#about .bottom .text-02::after {
    content: '';
    background: #5f262f;
    width: 80%;
    height: 1px;
    margin: auto;
    display: block;
    position: absolute;
    bottom: -12px;
    left: 0;
    right: 0;
}

#about .bottom .text-02::before {
    content: '';
    background: #5f262f;
    width: 80%;
    height: 1px;
    margin: auto;
    display: block;
    position: absolute;
    top: -12px;
    left: 0;
    right: 0;
}

#about .bottom .last {
	text-align: center;
	margin: 50px 0 30px;
}

#about .bottom .btn-contact ul {
	font-size: 0;
	width: 100%;
	max-width: 1100px;
	margin: 50px auto 0;
}

#about .bottom .btn-contact ul li {
	font-size: 14px;
	width: calc((100% - 100px) / 3 - 1px);
	text-align: center;
	display: inline-block;
}

#about .bottom .btn-contact ul li:nth-child(n+2) {
	margin-left: 50px;
}

#about .bottom .btn-contact ul li a {
	color: #fff;
	background: #e4d8ca;
	padding: 40px 0;
	display: block;
	transition: all 0.5s;
}

#about .bottom .btn-contact ul li a:hover {
	background: #ff533d;
}

#about .bottom .btn-contact ul li:first-child::before {
	width: 0;
	height: 0;
}

#about .bottom .btn-contact ul li br {
	display: none;
}

#about .page-top {
	bottom: 20px;
}

#about .page-top:hover {
	bottom: 40px;
}

@media screen and (max-width: 1100px) {
	#about .recruit li {
		width: 48%
	}

	#about .recruit li:last-child {
		margin-left: 2%;
	}

	#about .recruit li .image img {
		width: 100%;
		max-width: 496px;
	}

	#about .recruit .balloon {
		width: 25vw;
	}

	#about .recruit .btn a {
		width: 90%;
		line-height: 1.4;
	}

	#about .box {
		padding: 0;
	}

	#about .box-01 li,
	#about .box-03 li {
		display: block;
		margin: 0 auto;
	}

	#about .box-01 li:first-child,
	#about .box-03 li:first-child {
		padding: 50px 50px 0;
	}

	#about .box-01 li:last-child,
	#about .box-03 li:last-child {
		width: 454px;
		margin: -300px auto 0;
	}

	#about .box-02 {
		display: flex;
		flex-direction: column;
		flex-wrap: wrap;
	}

	#about .box-02 li {
		margin: 0 auto;
	}

	#about .box-02 li:first-child {
		margin: -250px auto 0;
		order: 2;
	}

	#about .box-02 li:last-child {
		padding: 50px 50px 0;
		order: 1;
	}
}

@media screen and (max-width: 640px) {
	#about section {
		background: none;
	}

	#about section::before {
		content: '';
		background: url(../images/bg_about_sp.jpg) no-repeat center 15vw;
		width: 100vw;
		height: 100vh;
		position: fixed;
		top: 0;
		left: 0;
	    z-index: -1;
	}

	#about h3 {
		margin-top: 15vw;
	}

	#about h3 img {
		width: 100vw;
	}

	#about .text-01 {
		font-size: 3.6vw;
		margin-top: 4vw;
	}

	#about .recruit li {
		width: 100%;
		padding: 0;
		display: block;
	}

	#about .recruit .balloon {
		width: 80%;
	}

	#about .recruit .balloon p {
		font-size: 3.6vw;
		padding: 2.5vw 0;
	}

	#about .recruit h3 {
		margin-top: 5vw;
	}

	#about .recruit h3 span {
		font-size: 4.4vw;
	}

	#about .recruit .btn {
		font-size: 3vw;
	}

	#about .recruit .btn a {
		margin: 3.2vw auto;
		padding: 2.9vw 0;
	}

	#about .box {
		margin-top: 15vw;
	}

	#about .box-01 li:first-child {
		background: url(../images/bg_about_box_01_sp.png) no-repeat;
		background-size: contain;
		width: 96.876vw;
		max-width: 620px;
		margin: 0 auto;
	}

	#about .box-01 li:first-child,
	#about .box-02 li:last-child,
	#about .box-03 li:first-child {
		height: 145.314vw;
		padding: 7.5vw 7vw 0;
	}

	#about .box .number {
		font-size: 5.6vw;
		padding-left: 1.9vw;
	}

	#about .box .title {
		margin-top: 3vw;
		text-align: center;
	}

	#about .box .title img {
		width: 64vw;
	}

	#about .box .text {
		font-size: 3.2vw;
		margin-top: 4.8vw;
		line-height: 1.6;
	}

	#about .box-01 li span,
	#about .box-02 li span,
	#about .box-03 li span {
		font-size: 3.6vw;
		line-height: 1.6;
	}

	#about .box-01 li span.big {
		font-size: 5vw;
	}

	#about .box-01 li:last-child,
	#about .box-02 li:first-child,
	#about .box-03 li:last-child {
		width: 84.376vw;
		margin: -8vw auto 0;
	}

	#about .box-01 li:last-child img,
	#about .box-02 li:first-child img,
	#about .box-03 li:last-child img {
		width: 100%;
	}

	#about .box-02 li:last-child {
		background: url(../images/bg_about_box_02_sp.png) no-repeat;
		background-size: contain;
		width: 96.876vw;
		max-width: 620px;
		margin: 0 auto;
	}

	#about .box-02 li:last-child img {
		width: 48.75vw;
	}

	#about .box-03 li:first-child {
		background: url(../images/bg_about_box_03_sp.png) no-repeat;
		background-size: contain;
		width: 96.876vw;
		max-width: 620px;
		margin: 0 auto;
	}

	#about .box-03 .text {
		margin-top: 7.5vw;
	}

	#about .bottom {
		padding: 0 5%;
	}

	#about .bottom .last {
		margin: 25vw 0 4.5vw;
	}

	#about .bottom .last img {
		width: 30vw;
	}

	#about .bottom .text-02::before {
		top: -2vw;
	}

	#about .bottom .text-02 {
		font-size: 3.6vw;
		padding: 5vw 0;
	}

	#about .bottom .text-02::after {
		bottom: -2vw;
	}

	#about .bottom .btn-contact ul {
		margin: 7.8vw auto 12vw;
	}

	#about .bottom .btn-contact ul li {
		font-size: 4.4vw;
	    width: 89%;
	    margin: 0 auto;
		display: block;
	}

	#about .bottom .btn-contact ul li:nth-child(n+2) {
		margin: 3vw auto 0;
	}

	#about .bottom .btn-contact ul li a {
		background: #ff533d;
		padding: 5.5vw 0;
	}
}
/********* about *********/

/********* contact *********/
#contact .text {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 14px;
	color: #5f262f;
	margin: 20px 0;
	text-align: center;
	line-height: 1.6;
}

#contact .btn-contact ul {
	font-size: 0;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 0 50px;
}

#contact .btn-contact ul li {
	font-size: 14px;
	width: calc((100% - 100px) / 3);
	text-align: center;
	display: inline-block;
}

#contact .btn-contact ul li:nth-child(n+2) {
	margin-left: 50px;
}

#contact .btn-contact ul li a {
	color: #fff;
	background: #e4d8ca;
	padding: 40px 0;
	display: block;
	transition: all 0.5s;
}

#contact .btn-contact ul li a:hover {
	background: #ff533d;
}

#contact .btn-contact ul li:first-child::before {
	width: 0;
	height: 0;
}

#contact .btn-contact ul li br {
	display: none;
}

#contact section h3 {
	font-size: 12px;
	color: #5f262f;
	margin-left: 20px;
	padding-top: 8px;
	line-height: 1.6;
}

#contact section h3 span {
    font-family: 'Montserrat', sans-serif;
    font-size: 18px;
}

#contact section h3 span.red {
	color: #fa637c;
}

#contact section #tel {
	margin-top: 120px;
}

#contact section ul.inner {
	font-size: 0;
	width: 100%;
	max-width: 1500px;
	margin: 0 auto;
	padding: 0 50px;
}

#contact section ul.inner > li {
	display: inline-block;
	vertical-align: middle;
}

#contact section ul.inner > li:first-child {
	width: 257px;
}

#contact section ul.inner > li:first-child::before {
	content: '';
	background: #5f262f;
	width: 1px;
	height: 65px;
	display: block;
	float: left;
}

#contact section ul.inner > li:last-child {
	width: calc(100% - 257px);
	max-width: 1000px;
	margin: 0 auto;
}

#contact section #tel ul.inner li ul {
	max-width: 900px;
	margin: 0 auto;
}

#contact section #tel ul.inner li ul li {
	font-size: 14px;
	display: inline-block;
	vertical-align: top;
}

#contact section #tel ul.inner li ul li:nth-child(odd) {
	color: #fff;
	background: #ff533d;
	margin-top: 25px;
	padding: 3px 0;
	width: 140px;
	text-align: center;
}

#contact section #tel ul.inner li ul li:nth-child(even) {
	width: calc(100% - 170px);
	margin-left: 30px;
}

#contact section #tel ul.inner li ul li .box {
	padding: 30px 0 30px 30px;
	border-bottom: #e4d8ca 1px solid;
	overflow: hidden;
}

#contact section #tel ul.inner li ul li .box span {
	color: #5f262f;
	width: 77%;
	float: left;
	display: block;
}

#contact section #tel ul.inner li ul li a {
	font-size: 18px;
	font-weight: bold;
	color: #5f262f;
}

#contact section #line {
	background: url(../images/bg_contact_line.jpg) no-repeat top center;
	margin-top: 150px;
	padding: 50px 0;
}

#contact section #line ul li:last-child {
	width: 100%;
}

#contact section #line ul.inner li ul {
	border: #5f262f 1px solid;
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

#contact section #line ul.inner li ul li {
	font-size: 14px;
	color: #5f262f;
}

#contact section #line ul.inner li ul li:nth-child(even) {
	width: 50%;
	border-left: #5f262f 1px solid;
}

#contact section #line ul.inner li ul li > span {
	color: #5f262f;
	width: 160px;
	float: left;
	line-height: 2;
	display: block;
}

#contact section #line ul.inner li ul li:first-child img {
	margin: 18px 0 0 175px;
}

#contact section #line ul.inner li ul li .box {
	border-bottom: #5f262f 1px solid;
	padding-left: 30px;
}

#contact section #line ul.inner li ul li .box:last-of-type {
	border: none;
}

#contact section #line ul.inner li ul li .box span {
	color: #5f262f;
	width: 160px;
	padding-top: 38px;
	float: left;
	display: block;
}

#contact section #line ul.inner li ul li .box img {
	margin-left: 185px;
	padding: 22px 0;
}

#contact section #line ul.inner li ul li:first-child {
	width: 50%;
	text-align: left;
}

#contact section #line ul.inner li ul li:nth-child(n+3) {
	border-top: #5f262f 1px solid;
}

#contact section #line ul.inner li ul li:first-child,
#contact section #line ul.inner li ul li:nth-child(n+3) {
	padding-left: 30px;
}

#contact section #line ul.inner li ul li:nth-child(3) span,
#contact section #line ul.inner li ul li:last-child span {
	color: #5f262f;
	width: 160px;
	padding: 33px 0;
	float: left;
	display: block;
}

#contact section #line ul.inner li ul li:nth-child(n+3) img {
	margin-left: 185px;
	padding: 22px 0;
}

#contact section #form {
	margin-top: 100px;
}

#contact section #form ul li .finish {
	font-size: 24px;
	margin-bottom: 20px;
	text-align: center;
}

#contact section #form form dl {
	padding: 15px 0 15px 120px;
	margin-top: 10px;
	border: #e4d8ca 1px solid;
	overflow: hidden;
}

#contact section #form form dl::after {
	content: '';
	clear: both;
}

#contact section #form form dl dt {
	font-size: 14px;
	color: #5f262f;
	width: 300px;
	margin-top: 3px;
	padding-top: 4px;
	float: left;
}

#contact section #form form dl:last-of-type dt {
	padding-left: 55px;
}

#contact section #form form dl dt .left {
	width: 195px;
	float: left;
}

#contact section #form form dl dt .right {
	font-size: 12px;
	color: #fe0100;
	line-height: 1.2;
	float: left;
}

#contact section #form form dl dt span {
	font-size: 12px;
	color: #fff;
	background: #fe0100;
	width: 40px;
	margin-top: -5px;
	padding: 5px 0;
	display: block;
	text-align: center;
	float: left;
	vertical-align: middle;
}

#contact section #form form dl dd {
	font-size: 12px;
	color: #5f262f;
	width: calc(100% - 305px);
	margin-left: 5px;
	line-height: 2.5;
	float: left;
}

#contact section #form form dl dd ul {
	font-size: 0;
}

#contact section #form form dl dd ul li {
	font-size: 12px;
	width: calc(100% / 3);
	display: inline-block;
	vertical-align: top;
}

#contact section #form form input,
#contact section #form form select {
	border: #e4d8ca 1px solid;
}

#contact section select {
	background: url(../images/select_arrow.png) no-repeat;
	background-position: 80px center;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    padding: 0;
    margin: 0;
    height: 30px;
    position: relative;
    z-index: 1;
    padding: 0 40px 0 10px;
    border: 1px solid #ccc;
    cursor: pointer;
}

#contact section select::-ms-expand {
    display: none;
}

#contact section .selectwrap{
    position: relative;
    display: inline-block;
}

#contact section .selectwrap::before{
    content: '';
    position: absolute;
    z-index: 0;
    top: 0;
    right: 0;
    background: #ccc;
    height: 100%;
    width: 30px;
}

#contact section .selectwrap::after{
    content: '';
    position: absolute;
    z-index: 0;
    top: 0;
    bottom: 0;
    margin: auto 0;
    right: 9px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 6px 0 6px;
    border-color: #fff transparent transparent transparent;
}

#contact select option {
	background-color: #fff;
	color: #333;
}

#contact select::-ms-expand {
	display: none;
}

#contact select:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #828c9a;
}

#contact section #form form input[type='text'] {
	width: 270px;
	max-width: 90%;
	height: 30px;
	border: 1px solid #e4d8ca;
}

#contact section #form form input[type='checkbox'] {
    display: none;
}

#contact section #form form input[type='checkbox'] + label {
    padding-left: 20px;
    position: relative;
    margin-right: 20px;
    cursor: pointer;
}

#contact section #form form input[type='checkbox'] + label::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    height: 15px;
    border: 1px solid #e4d8ca;
}

#contact section #form form input[type='checkbox']:checked + label::after {
	content: "";
	display: block;
	position: absolute;
	top: -5px;
	left: 5px;
	width: 7px;
	height: 14px;
	transform: rotate(40deg);
	border-bottom: 3px solid #5f262f;
	border-right: 3px solid #5f262f;
}

#contact section #form form input[type='radio'] {
    display: none;
}

#contact section #form form input[type='radio'] + label{
    padding-left: 20px;
    position: relative;
    margin-right: -15px;
    cursor: pointer;
}

#contact section #form form input[type='radio'] + label::before{
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 15px;
    height: 15px;
    border: 1px solid #e4d8ca;
    border-radius: 50%;
}

#contact section #form form input[type='radio']:checked + label::after{
    content: "";
    display: block;
    position: absolute;
    top: 6px;
    left: 6px;
    width: 5px;
    height: 5px;
    background: #5f262f;
    border-radius: 50%;
}

#contact section #form form textarea {
	border: #e4d8ca 1px solid;
	width: 380px;
	max-width: 90%;
	height: 170px;
}

#contact section #form form input[type='submit'] {
	font-size: 16px;
	color: #fff;
	background: #5f262f;
	margin: 50px auto 0;
	width: 400px;
	height: 50px;
	padding-top: 5px;
	display: block;
	cursor: pointer;
	transition: all 0.5s;
}

#contact section #form form input[type='submit']:hover {
	color: #5f262f;
	background: #fff;
	border: #5f262f 1px solid;
}

@media screen and (max-width: 1400px) {
    #contact section h3 {
        font-size: 18px;
        margin-left: 0;
        padding-left: 0 !important;
    }

    #contact section h3 span {
        font-size: 24px;
    }

    #contact section #tel ul li:first-child,
    #contact section #line ul li:first-child,
    #contact section #form ul.inner > li:first-child {
        width: 264px;
        margin: 0 auto 50px;
        display: block;
        text-align: center;
    }

    #contact section #tel ul li:first-child::before,
    #contact section #line ul li:first-child::before,
    #contact section #form ul.inner > li:first-child::before {
        height: 25px;
        margin: 0 auto;
        float: none;
    }

    #contact section #tel ul li:last-child {
        width: 100%;
    }

    #contact section #tel ul li {
    	display: block;
    }

    #contact section #line {
    	margin-top: 220px;
    }

    #contact section #line ul.inner {
    	position: relative;
    }

    #contact section #line ul.inner > li:first-child {
    	position: absolute;
    	top: -170px;
    	left: 0;
    	right: 0;
    }

    #contact section #line ul.inner > li:last-child {
		display: block;
	}

	#contact section #line ul.inner li ul li:nth-child(2) {
    	width: 50%;
    }

	#contact section #line ul.inner li ul li span {
		text-align: center;
	}

	#contact section #line ul.inner li ul li:first-child img {
		margin: 0 auto;
	}

	#contact section #line ul li ul li:first-child {
		margin: 0 auto;
	}

	#contact section #form ul li {
		display: block;
	}

	#contact section #form form dl dd ul li {
		width: 50%;
	}
}

@media screen and (max-width: 1100px) {
	#contact section #tel ul.inner li ul li .box span {
		width: 75%;
	}

	#contact section #line ul.inner li ul li:first-child,
	#contact section #line ul.inner li ul li:nth-child(n+3),
	#contact section #line ul.inner li ul li .box {
		margin: 0;
		padding-left: 0;
	}

	#contact section #line ul.inner li ul li > span,
	#contact section #line ul.inner li ul li .box span,
	#contact section #line ul.inner li ul li:nth-child(3) span,
	#contact section #line ul.inner li ul li:last-child span {
		width: 100%;
	}

	#contact section #line ul.inner li ul li .box span,
	#contact section #line ul.inner li ul li:nth-child(3) span,
	#contact section #line ul.inner li ul li:last-child span {
		padding: 10px 0 0;
	}

	#contact section #line ul.inner li ul li img,
	#contact section #line ul.inner li ul li .box img,
	#contact section #line ul.inner li ul li:nth-child(3) img,
	#contact section #line ul.inner li ul li:last-child img {
		margin: 0 auto;
		padding: 10px 0;
		display: block;
	}

	#contact section ul.inner > li:last-child {
		width: 733px;
		max-width: 100%;
	}

	#contact section #form form dl {
		padding-left: 30px;
	}

	#contact section #form form dl dd {
		width: 100%;
		margin: 10px 0 0 0;
	}

	#contact section #form form dl dd ul li {
		width: calc(100% / 3);
	}

	#contact section #form form textarea {
		width: 34.5vw;
	}
}

@media screen and (max-width: 800px) {
	#contact section #tel ul.inner li ul li .box {
		padding-top: 25px;
	}

	#contact section #tel ul.inner li ul li .box span {
		width: 100%;
		padding-bottom: 10px;
		float: none;
	}

	#contact section #line ul.inner li ul li img,
	#contact section #line ul.inner li ul li .box img,
	#contact section #line ul.inner li ul li:nth-child(3) img,
	#contact section #line ul.inner li ul li:last-child img {
		width: 35vw;
		max-width: 110px;
	}

	#contact section #form form dl dt {
		width: 275px;
	}

	#contact section #form form dl dt .left {
		width: 175px;
	}

	#contact section #form form dl dd {
		width: 100%;
	}

	#contact section #form form dl dd ul li {
		width: 50%;
	}

	#contact section #form form input[type="text"] {
		width: 30vw;
	}

	#contact section #form form textarea {
		width: 30vw;
	}
}

@media screen and (max-width: 640px) {
	#contact .text {
	    font-size: 3.6vw;
	    margin: 3.2vw 0;
	}

	#contact .btn-contact ul {
		padding: 0;
	}

	#contact .btn-contact ul li {
		width: 100%;
		display: block;
	}

	#contact .btn-contact ul li:first-child {
		margin: 0;
	}

	#contact .btn-contact ul li:nth-child(n+2) {
		margin: 3vw 0 0 0;
	}

	#contact .btn-contact ul li a {
		font-size: 4.4vw;
		background: #ff533d;
		width: 80%;
		margin: 0 auto;
		padding: 4.5vw 0;
	}

	#contact .btn-contact ul li a br {
		display: none;
	}

	#contact section #tel {
		margin-top: 24vw;
	}

	#contact section #tel ul.inner,
	#contact section #line ul.inner,
	#contact section #form ul.inner {
		padding: 0;
	}

	#contact section #tel ul.inner > li:first-child,
	#contact section #line ul.inner > li:first-child,
	#contact section #form ul.inner > li:first-child {
		width: 100%;
		margin-bottom: 3.5vw;
	}

	#contact section #tel ul.inner > li:first-child::before,
	#contact section #line ul.inner > li:first-child::before,
	#contact section #form ul.inner > li:first-child::before {
		height: 5vw;
	}

	#contact section h3 {
		font-size: 3.2vw;
		padding-top: 1.5vw;
	}

	#contact section h3 span {
		font-size: 5vw;
	}

	#contact section #tel ul.inner li ul li {
		display: block;
	}

	#contact section #tel ul.inner li ul li:first-child {
		margin: 0 auto;
	}

	#contact section #tel ul.inner li ul li:nth-child(odd) {
		font-size: 4.4vw;
		width: 50vw;
		padding: 0.5vw 0;
	}

	#contact section #tel ul.inner li ul li:nth-child(even) {
		width: 100%;
		margin-left: 0;
		text-align: center;
	}

	#contact section #tel ul.inner li ul li:nth-child(3),
	#contact section #tel ul.inner li ul li:nth-child(5),
	#contact section #tel ul.inner li ul li:nth-child(7),
	#contact section #tel ul.inner li ul li:nth-child(9) {
		margin: 4vw auto 0;
	}

	#contact section #tel ul.inner li ul li .box {
		padding: 3.6vw 0;
	}

	#contact section #tel ul.inner li ul li .box span {
		font-size: 3.6vw;
		padding-bottom: 1.5vw;
	}

	#contact section #tel ul.inner li ul li a {
		font-size: 6.6vw;
	}

	#contact section #tel ul.inner li ul li:last-child div:last-of-type {
		border-bottom: none;
	}

	#contact section #line {
		background: url(../images/bg_contact_line_sp.jpg) no-repeat;
		margin-top: 15vw;
		padding: 7.8vw 2.5%;
	}

	#contact section #line ul.inner > li:first-child {
		position: relative;
		top: 0;
	}

	#contact section #line ul.inner li ul {
		display: block;
	}

	#contact section #line ul.inner li ul li {
		font-size: 3.2vw;
		width: 100%;
		border-left: none !important;
	}

	#contact section #line ul.inner li ul li:first-child {
		width: 100%;
		border-left: none;
		border-bottom: #5f262f 1px solid;
		overflow: hidden;
	}

	#contact section #line ul.inner li ul li:nth-child(2) {
		width: 100%;
	}

	#contact section #line ul.inner li ul li:first-child img {
		margin: 0 auto;
	}

	#contact section #line ul.inner li ul li > span {
		line-height: 1.2;
		width: 40%;
		margin-top: 7.5vw;
		padding-left: 4vw;
	}

	#contact section #line ul.inner li ul li .box span,
	#contact section #line ul.inner li ul li:nth-child(3) span,
	#contact section #line ul.inner li ul li:last-child span {
		width: 40%;
		margin-top: 0;
		padding: 11.5vw 0 0 5vw;
	}

	#contact section #line ul.inner li ul li img,
	#contact section #line ul.inner li ul li .box img,
	#contact section #line ul.inner li ul li:nth-child(3) img,
	#contact section #line ul.inner li ul li:last-child img {
		padding: 1.5vw 0;
		width: 51.564vw;
		max-width: 330px;
	}

	#contact section #form {
		margin-top: 15vw;
	}

	#contact section #form ul li .finish {
		font-size: 4.5vw;
		margin-bottom: 3.2vw;
	}

	#contact section #form form dl {
		margin: 2.5vw 2.5%;
		padding: 1vw 1.5vw 1.5vw 3vw;
	}

	#contact section #form form dl dt,
	#contact section #form form dl dd {
		float: none;
	}

	#contact section #form form dl dt {
		font-size: 4.4vw;
		width: 100%;
		margin-top: 0.9vw;
		padding-top: 1.2vw;
		overflow: hidden;
	}

	#contact section #form form dl:last-of-type dt {
		padding-left: 0;
	}

	#contact section #form form dl dt span {
		font-size: 3.6vw;
		width: 11.5vw;
		margin-top: -0.5vw;
		padding: 1vw 0;
	}

	#contact section #form form dl dt .left {
		font-size: 4.4vw;
		width: 60%;
	}

	#contact section #form form dl dt .right {
		font-size: 3.6vw;
		float: right;
	}

	#contact section #form form dl dd {
		width: 100%;
		margin-top: 1.5vw;
		padding-left: 1vw;
	}

	#contact section #form form input[type="text"] {
		width: 97%;
		max-width: 100%;
		height: 9.5vw;
	}

	#contact section #form form dl dd ul li {
		font-size: 4.4vw;
		width: 100%;
	}

	#contact section #form form input[type="checkbox"] + label::before {
		width: 5vw;
		height: 5vw;
	}

	#contact section #form form input[type="checkbox"] + label {
		padding: 0 9vw;
	}

	#contact section #form form input[type='checkbox']:checked + label::after {
		top: -1.5vw;
		left: 1.5vw;
		width: 2.1vw;
		height: 4.5vw;
		border-bottom: 1.48vw solid #5f262f;
		border-right: 1.48vw solid #5f262f;
	}

	#contact section select {
		font-size: 4.4vw;
		background: url(../images/select_arrow_sp.png) no-repeat;
		background-position: 25vw center;
		height: 9.5vw;
		padding: 0 12.5vw 0 5.5vw;
	}

	#contact section #form form input[type="radio"] + label {
		font-size: 3.6vw;
    	padding-left: 6.6vw;
    	margin-right: 0;
	}

	#contact section #form form input[type="radio"] + label::before {
	    width: 4.8vw;
	    height: 4.8vw;
	}

	#contact section #form form input[type="radio"]:checked + label::after {
	    top: 1.7vw;
	    left: 1.7vw;
	    width: 1.8vw;
	    height: 1.8vw;
	}

	#contact section #form form textarea {
		width: 85vw;
		max-width: 100%;
		height: 50vw;
	}

	#contact section #form form input[type="submit"] {
		font-size: 4.4vw;
		width: 80%;
		margin-top: 6vw;
		height: inherit;
		padding: 4.5vw 0;
		border: none;
		border-radius: 0;
		-webkit-box-sizing: content-box;
		-webkit-appearance: button;
		appearance: button;
		cursor: pointer;
	}

	#contact section #form form input[type="submit"]::-webkit-search-decoration,
	#contact section #form form input[type="button"]::-webkit-search-decoration {
		display: none;
	}

	#contact section #form form input[type="submit"]::focus,
	#contact section #form form input[type="button"]::focus {
		outline-offset: -2px;
	}
}
/********* contact *********/

/********* delivery *********/
#delivery section {
	background: url(../images/bg_delivery.jpg) no-repeat top center;
	background-attachment: fixed;
}

#delivery #breadcrumb {
	background: #fff;
}

#delivery h3 {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	color: #5f262f;
	margin-top: 80px;
	text-align: center;
}

#delivery .text-01 {
	font-size: 14px;
	color: #5f262f;
	width: 100%;
	max-width: 1100px;
	margin: 30px auto 0;
	padding: 0 50px;
	line-height: 1.8;
	text-align: center;
}

#delivery .movie-link {
	width: 1100px;
	margin: 50px auto 0;
	padding: 0 50px;
	display: flex;
	justify-content: space-between;
}

#delivery .movie-link div {
	width: 475px;
}

#delivery .movie-link div p {
	font-size: 30px;
	color: #5f262f;
	text-align: center;
	line-height: 1.5;
}

#delivery .movie-link div a img {
	width: 100%;
}

#delivery .shoplist {
	margin-top: 100px;
}

#delivery .shoplist > ul {
	font-size: 0;
	width: 100%;
	max-width: 1100px;
	margin: 120px auto 0;
	padding: 0 50px;
}

#delivery .shoplist ul li {
	width: calc(50% - 10px);
	display: inline-block;
	vertical-align: top;
}

#delivery .shoplist > ul li:last-child {
	margin-left: 20px;
}

#delivery .shoplist ul li .box {
	background: #fff;
	padding: 15px 0 20px;
	box-shadow: 2px 3px 5px 1px rgba(0,0,0,0.2);
}

#delivery .shoplist ul li .shopname {
	font-size: 14px;
	color: #5f262f;
	padding: 0 30px;
	line-height: 1.6;
}

#delivery .shoplist ul li .shopname span {
    font-family: 'Playfair Display', serif;
    font-size: 35px;
}

#delivery .shoplist ul li .title {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 30px;
	color: #5f262f;
	background: #e4d8ca;
	margin-top: 10px;
	padding: 10px 30px 10px 35px;
	line-height: 1.2;
}

#delivery .shoplist ul li h4 {
	font-size: 14px;
	color: #5f262f;
	margin-top: 10px;
	padding: 0 20px;
	line-height: 1.4;
}

#delivery .shoplist ul li h4 span {
	font-size: 40px;
	vertical-align: middle;
	line-height: 0.5;
}

#delivery .shoplist ul li h4 span.green {
	color: #7fff00;
}

#delivery .shoplist ul li h4 span.black {
	color: #000;
}

#delivery .shoplist ul li h4 span.sky-blue {
	color: #87cefa;
}

#delivery .shoplist ul li h4 span.orange {
	color: #ff533d;
}

#delivery .shoplist ul li h4 span.pink {
	color: #faa6b1;
}

#delivery .shoplist ul li h4 span.b-pink {
	color: #ff5db1;
}

#delivery .shoplist ul li .text {
	font-size: 12px;
	color: #5f262f;
	margin-top: 5px;
	padding: 0 30px 0 30px;
	line-height: 1.6;
}

#delivery .shoplist ul li .btn {
	margin-top: 20px;
}

#delivery .shoplist ul li .btn ul li {
	font-size: 14px;
	width: calc(50% - 5px);
	border: #5f262f 1px solid;
}

#delivery .shoplist ul li .btn ul li:last-child {
	margin-left: 10px;
}

#delivery .shoplist ul li .btn ul li a {
	color: #5f262f;
	background: #fff;
	width: 100%;
	padding: 18px 0;
	text-align: center;
	display: block;
	transition: all 0.5s;
}

#delivery .shoplist ul li .btn ul li a:hover {
	color: #fff;
	background: #5f262f;
}

#delivery .shoplist ul li .voice {
	margin-top: 60px;
	text-align: center;
}

#delivery .shoplist ul li ul.girl {
	margin-top: 20px;
}

#delivery .shoplist ul li ul.girl li {
	position: relative;
	transition: all 0.5s;
}

#delivery .shoplist ul li ul.girl li:hover {
	opacity: 0.5;
}

#delivery .shoplist ul li ul.girl li .green {
	background: rgba(127, 255, 0, 0.9);
}

#delivery .shoplist ul li ul.girl li .black {
	background: rgba(0, 0, 0, 0.9);
}

#delivery .shoplist ul li ul.girl li .sky-blue {
	background: rgba(135, 206, 250, 0.9);
}

#delivery .shoplist ul li ul.girl li .orange {
	background: rgba(255, 83, 61, 0.9);
}

#delivery .shoplist ul li ul.girl li .pink {
	background: rgba(250, 166, 177, 0.9);
}

#delivery .shoplist ul li ul.girl li .b-pink {
	background: rgba(255, 93, 177, 0.9);
}

#delivery .shoplist ul li ul.girl li .name {
	font-size: 12px;
	color: #fff;
	width: 110px;
	height: 110px;
	padding: 28px 11px 0 11px;
	line-height: 1.4;
	border-radius: 100%;
	position: absolute;
	bottom: 10px;
	right: 10px;
}

#delivery .shoplist ul li ul.girl li .name span.big {
	font-size: 16px;
}

#delivery .shoplist ul li ul.girl li .name span.age {
	display: block;
	text-align: right;
}

#delivery .recruit {
	width: 100%;
	max-width: 1100px;
	padding: 0 50px;
	margin: 150px auto 0;
}

#delivery .recruit dl {
	border-top: #e4d8ca 1px solid;
	border-right: #e4d8ca 1px solid;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

#delivery .recruit dt {
	color: #5f262f;
	background: #e4d8ca;
	width: 20%;
	padding: 30px 0 0 30px;
	border-bottom: #fff 1px solid;
}

#delivery .recruit dd {
	color: #5f262f;
	background: #fff;
	width: 80%;
	padding: 30px;
	border-bottom: #e4d8ca 1px solid;
}

#delivery .recruit dd:nth-of-type(3),
#delivery .recruit dd:nth-of-type(4),
#delivery .recruit dd:nth-of-type(7),
#delivery .recruit dd:last-of-type {
	padding: 10px 30px 20px 30px;
}

#delivery .recruit dd::after {
	content: '';
	clear: both;
}

#delivery .recruit dd ul {
	font-size: 0;
	margin-top: 10px;
}

#delivery .recruit dd ul li {
	font-size: 14px;
	display: inline-block;
	vertical-align: middle;
}

#delivery .recruit dd ul li:first-child,
#delivery .recruit dd ul li:nth-child(3) {
	font-size: 10px;
	color: #fff;
	width: 120px;
	padding: 5px 0;
	text-align: center;
}

#delivery .recruit dd ul li:nth-child(2) {
	width: 230px;
}

#delivery .recruit dd:nth-of-type(7) ul li:nth-child(2),
#delivery .recruit dd:nth-of-type(9) ul li:nth-child(2) {
	width: inherit;
}

#delivery .recruit dd ul li:nth-child(2),
#delivery .recruit dd ul li:last-child {
	margin-left: 30px;
}

#delivery .recruit dd ul li.green {
	background: #7fff00;
}

#delivery .recruit dd ul li.black {
	background: #000;
}

#delivery .recruit dd ul li.sky-blue {
	background: #87cefa;
}

#delivery .recruit dd ul li.orange {
	background: #ff533d;
}

#delivery .recruit dd ul li.pink {
	background: #faa6b1;
}

#delivery .recruit dd ul li.b-pink {
	background: #ff5db1;
}

#delivery .recruit dd ul li:last-child {
	margin-left: 30px;
}

#delivery .recruit dd ul li a {
	color: #5f262f;
}

#delivery .recruit dd ul li br {
	display: none;
}

#delivery .shopdata {
	clear: both;
	padding-bottom: 50px;
}

#delivery .shopdata ul {
	width: 100%;
	margin: 150px auto 0;
	padding: 0 50px;
}

#delivery .shopdata ul li {
	font-size: 14px;
	color: #5f262f;
	background: rgba(255,255,255,0.8);
	width: calc(100% / 3 - 10px);
	padding: 30px 0;
	vertical-align: top;
}

#delivery .shopdata ul li:nth-child(n+2) {
	margin-left: 15px;
}

#delivery .shopdata ul li:nth-child(4) {
	margin-left: 0;
}

#delivery .shopdata ul li .image {
	text-align: center;
}

#delivery .shopdata ul li h4 {
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	margin-top: 10px;
	padding: 0 40px;
}

#delivery .shopdata ul li h4 span {
	font-size: 14px;
	color: #ff3e2d;
}

#delivery .shopdata ul li .text {
	margin-top: 5px;
	padding: 0 40px;
	line-height: 1.4;
}

#delivery .bottom {
	background: rgba(228, 216, 202, 0.2);
	padding: 80px 50px;
}

#delivery .bottom .text-02 {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	color: #5f262f;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 50px 0;
	border-top: #5f262f 1px solid;
	border-bottom: #5f262f 1px solid;
	text-align: center;
	line-height: 1.6;
	position: relative;
}

#delivery .bottom .text-02::after {
    content: '';
    background: #5f262f;
    width: 80%;
    height: 1px;
    margin: auto;
    display: block;
    position: absolute;
    bottom: -12px;
    left: 0;
    right: 0;
}

#delivery .bottom .text-02::before {
    content: '';
    background: #5f262f;
    width: 80%;
    height: 1px;
    margin: auto;
    display: block;
    position: absolute;
    top: -12px;
    left: 0;
    right: 0;
}

#delivery .bottom .btn-contact ul {
	font-size: 0;
	width: 100%;
	max-width: 1100px;
	margin: 50px auto 0;
}

#delivery .bottom .btn-contact ul li {
	font-size: 14px;
	width: calc((100% - 100px) / 3);
	text-align: center;
	display: inline-block;
}

#delivery .bottom .btn-contact ul li:nth-child(n+2) {
	margin-left: 50px;
}

#delivery .bottom .btn-contact ul li a {
	color: #fff;
	background: #e4d8ca;
	padding: 40px 0;
	display: block;
	transition: all 0.5s;
}

#delivery .bottom .btn-contact ul li a:hover {
	background: #ff533d;
}

#delivery .bottom .btn-contact ul li:first-child::before {
	width: 0;
	height: 0;
}

#delivery .bottom .btn-contact ul li br {
	display: none;
}

@media screen and (max-width: 1400px) {
	#delivery .bottom .btn-contact ul {
		padding: 0;
	}

	#delivery .bottom .btn-contact ul li {
		width: calc((100% - 6.1vw) / 3);
		margin: 0;
		display: inline-block;
		vertical-align: top;
		line-height: 1.6;
	}

	#delivery .bottom .btn-contact ul li br {
		display: block;
	}

	#delivery .bottom .btn-contact ul li:nth-child(n+2) {
		margin-left: 3vw;
	}
}

@media screen and (max-width: 1100px) {
	#delivery .movie-link {
		width: 100%;
	}

	#delivery .movie-link div {
		width: calc(50% - 25px);
	}

	#delivery .shoplist ul li .voice img {
		max-width: 100%;
	}

	#delivery .shoplist ul li ul.girl li img {
		width: 100%;
	}

	#delivery .shopdata ul li .image img {
		max-width: 90%;
	}

	#delivery .recruit dd ul li:nth-child(2) {
		width: 150px;
	}

	#delivery .recruit dd ul li:nth-child(2),
	#delivery .recruit dd ul li:last-child {
		margin-left: 10px;
	}

	#delivery .recruit dd ul li br {
		display: block;
		line-height: 0.5;
	}
}

@media screen and (max-width: 850px) {
	#delivery .text-01,
	#delivery .shoplist > ul,
	#delivery .recruit,
	#delivery .shopdata ul {
		padding: 0 20px;
	}

	#delivery .shoplist {
		margin-top: 15vw;
	}

	#delivery .shoplist ul {
		width: 100%;
	}

	#delivery .shoplist ul:nth-of-type(even) {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	#delivery .shoplist ul:nth-of-type(even) li:first-child {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 2;
		-webkit-order: 2;
		order: 2;
	}

	#delivery .shoplist ul:nth-of-type(even) li:last-child {
		-webkit-box-ordinal-group: 1;
		-ms-flex-order: 1;
		-webkit-order: 1;
		order: 1;
	}

	#delivery .shoplist ul li {
		width: 100%;
	}

	#delivery .shoplist > ul li:last-child {
		margin: 0;
	}

	#delivery .shoplist ul li .btn ul li {
		font-size: 1.8vw;
	}

	#delivery .shoplist ul li ul.girl li {
		width: calc(50% - 10px);
	}

	#delivery .shoplist ul li ul.girl li:last-child {
		margin-left: 20px;
	}

	#delivery .recruit dt {
		padding: 30px 0 0 20px;
	}

	#delivery .recruit dd {
		padding: 30px 30px 30px 20px;
	}

	#delivery .recruit dd:nth-of-type(3),
	#delivery .recruit dd:nth-of-type(4),
	#delivery .recruit dd:nth-of-type(7),
	#delivery .recruit dd:last-of-type {
	    padding: 10px 10px 20px 20px;
	}

	#delivery .recruit dd ul li:nth-child(2) {
		width: 120px;
	}

	#delivery .recruit dd:nth-of-type(4) ul li:first-child,
	#delivery .recruit dd:nth-of-type(4) ul li:nth-child(3) {
		width: 120px;
	}

	#delivery .recruit dd:nth-of-type(4) ul li:nth-child(2),
	#delivery .recruit dd:nth-of-type(4) ul li:last-child {
		width: calc(100% - 135px);
	}

	#delivery .recruit dd:nth-of-type(4) ul li:nth-child(3),
	#delivery .recruit dd:nth-of-type(4) ul li:last-child {
		margin-top: 10px;
	}

	#delivery .recruit dd ul li br {
		display: none;
	}

	#delivery .bottom {
		padding: 80px 20px;
	}

	#delivery .recruit dd:nth-of-type(9) ul li {
		display: block;
	}

	#delivery .recruit dd:nth-of-type(9) ul li:last-child {
		margin: 10px 0 0 0;
	}
}

@media screen and (min-width: 641px) {
	#delivery .shopdata ul {
		max-width: 1100px;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	}

	#delivery .shopdata ul li:nth-child(n+4) {
		margin-top: 80px;
	}
}

@media screen and (max-width: 640px) {
	#delivery br.pc {
		display: none;
	}

	#delivery section {
		background: none;
	}

	#delivery section::before {
		content: '';
		background: url(../images/bg_delivery_sp.jpg) no-repeat top center;
		width: 100vw;
		height: 100vh;
		position: fixed;
		top: 0;
		left: 0;
	    z-index: -1;
	}

	#delivery .shop-btn li:nth-child(n+2) {
		margin-top: 2.5vw;
	}

	#delivery .shop-btn li a {
		padding-top: 5.2vw;
	}

	#delivery h3 {
		font-size: 3.5vw;
		margin-top: 8vw;
	}

	#delivery h3 img {
		width: 36.096vw;
	}

	#delivery .movie-link {
		width: 93.75vw;
		margin-top: 5vw auto 0;
		padding: 0;
		justify-content: center;
		flex-wrap: wrap;
	}
	
	#delivery .movie-link div {
		width: 100%;
	}

	#delivery .movie-link div:nth-child(2) {
		margin-top: 5vw;
	}
	
	#delivery .movie-link div p {
		font-size: 6.1vw;
	}

	#delivery .text-01,
	#delivery .shoplist > ul,
	#delivery .recruit,
	#delivery .shopdata ul {
		padding: 0;
	}

	#delivery .text-01 {
		font-size: 3.6vw;
	}

	#delivery .shoplist > ul {
		margin: 10vw auto 0;
		padding-bottom: 3vw;
		border-bottom: #5f262f 2px solid;
	}

	#delivery .shoplist ul li {
		display: block;
	}

	#delivery .shoplist > ul li:last-child {
		margin: 0;
	}

	#delivery .shoplist ul li .box {
		padding: 0 0 1.5vw;
		box-shadow: none;
	}

	#delivery .shoplist ul li .shopname {
		font-size: 3.6vw;
		text-align: center;
		line-height: 1.2;
	}

	#delivery .shoplist ul li .shopname span {
		font-size: 7.2vw;
	}

	#delivery .shoplist ul li .title {
		font-size: 6.1vw;
		margin-top: 1.5vw;
		padding: 1.5vw 0;
		text-align: center;
	}

	#delivery .shoplist ul li ul.girl li:last-child {
		margin-left: 0;
	}

	#delivery .shoplist ul li h4 {
		font-size: 4.4vw;
		margin-top: 3vw;
		padding: 0 4vw 0 2vw;
	}

	#delivery .shoplist ul li h4 span {
		font-size: 8vw;
	}

	#delivery .shoplist ul li .text {
		font-size: 3.6vw;
		padding: 0 4vw 0 6vw;
	}

	#delivery .shoplist ul li .btn {
		margin-top: 3vw;
	}

	#delivery .shoplist ul li .btn ul li {
		font-size: 4.4vw;
		width: 80%;
		margin: 0 auto;
	}

	#delivery .shoplist ul li .btn ul li:last-child {
		margin: 2vw auto 0;
	}

	#delivery .shoplist ul li .btn ul li a {
		padding: 5vw 0;
	}

	#delivery .shoplist ul li .voice {
		margin-top: 5vw;
	}

	#delivery .shoplist ul li .voice img {
		width: 100%;
	}

	#delivery .shoplist ul li ul.girl {
		margin-top: 2vw;
	}

	#delivery .shoplist ul li ul.girl li {
		width: 50%;
		display: inline-block;
	}

	#delivery .shoplist ul li ul.girl li .name {
		font-size: 3vw;
		width: 25vw;
		height: 25vw;
		padding: 7vw 2vw 0 2vw;
		left: 3vw;
		bottom: 3vw;
	}

	#delivery .shoplist ul li ul.girl li .name span.big {
		font-size: 3.6vw;
	}

	#delivery .recruit {
		margin-top: 15vw;
		width: 96%;
	}

	#delivery .recruit dt,
	#delivery .recruit dd {
		width: 100%;
	}

	#delivery .recruit dt {
		font-size: 3.6vw;
		padding: 2.5vw 3vw;
	}

	#delivery .recruit dd {
		font-size: 4.4vw;
		padding: 3vw 4vw;
		border-left: #e4d8ca 1px solid;
	}

	#delivery .recruit dd:nth-of-type(3),
	#delivery .recruit dd:nth-of-type(4),
	#delivery .recruit dd:nth-of-type(7),
	#delivery .recruit dd:last-of-type {
		padding: 0 1vw 2vw;
	}

	#delivery .recruit dd ul {
		margin-top: 2vw;
	}

	#delivery .recruit dd ul li:nth-child(odd) {
		font-size: 2.4vw;
		width: 27vw;
		padding: 1.5vw 0;
	}

	#delivery .recruit dd ul li:nth-child(even) {
		font-size: 3.8vw;
		width: calc(100% - 28.5vw);
		margin-left: 1.5vw;
	}

	#delivery .recruit dd ul li:nth-child(n+3) {
		margin-top: 2vw;
	}

	#delivery .recruit dd:nth-of-type(4) ul li:first-child,
	#delivery .recruit dd:nth-of-type(4) ul li:nth-child(3) {
		width: 27vw;
	}

	#delivery .recruit dd:nth-of-type(4) ul li:nth-child(2),
	#delivery .recruit dd:nth-of-type(4) ul li:last-child,
	#delivery .recruit dd:nth-of-type(7) ul li:nth-child(2),
	#delivery .recruit dd:nth-of-type(9) ul li:nth-child(2) {
		width: calc(100% - 28.5vw);
		line-height: 1.4;
	}

	#delivery .recruit dd:nth-of-type(9) ul li {
		display: inline-block;
	}

	#delivery .recruit dd:nth-of-type(9) ul li:last-child {
		margin: 0 0 0 10px;
		width: calc(100% - 28.5vw - 5px);
		line-height: 1.4;
	}

	#delivery .recruit dd ul li br.sp {
		display: block;
		line-height: 0.1;
	}

	#delivery .shopdata {
		background: rgba(255,255,255,0.8);
		margin-top: 5vw;
		padding: 0;
	}

	#delivery .shopdata ul {
		margin: 5vw 0 0 0;
	}

	#delivery .shopdata ul li {
		background: none;
		padding: 4.5vw 0;
	}

	#delivery .shopdata ul li:nth-child(n+2) {
		margin-left: 0;
	}

	#delivery .shopdata ul li .image img {
		width: 100%;
		max-width: 100%;
	}

	#delivery .shopdata ul li h4 {
		font-size: 3.6vw;
		margin-top: 2vw;
		padding: 0 6vw;
	}

	#delivery .shopdata ul li h4 span {
		font-size: 4.4vw;
	}

	#delivery .shopdata ul li .text {
		font-size: 3.6vw;
	    margin-top: 0.9vw;
	    padding: 0 6vw;
	}

	#delivery .shopdata .bx-wrapper {
		-moz-box-shadow: none;
		-webkit-box-shadow: none;
		box-shadow: none;
		border: none;
		background: none;
	}

	#delivery .shopdata .bx-viewport {
		height: 135vw !important;
	}

	#delivery .shopdata .bx-wrapper .bx-pager.bx-default-pager a {
		background: #e4d8ca !important;
		width: 14vw !important;
		height: 2vw !important;
		margin: 0 1vw !important;
		border-radius: 0 !important;
	}

	#delivery .shopdata .bx-wrapper .bx-pager.bx-default-pager a:hover,
	#delivery .shopdata .bx-wrapper .bx-pager.bx-default-pager a.active,
	#delivery .shopdata .bx-wrapper .bx-pager.bx-default-pager a:focus {
		background: #ff533d !important;
	}

	#delivery .bottom {
	    padding: 6vw 5vw;
	}

	#delivery .bottom .text-02 {
		font-size: 3.6vw;
		padding: 4vw 0;
	}

	#delivery .bottom .btn-contact {
		display: none;
	}
}
/********* delivery *********/

/********* monthly-magazine *********/
#monthly-magazine section .inner {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
}

#monthly-magazine section .image {
	max-width: 1000px;
	margin: 50px 50px 0;
}

#monthly-magazine section .image img {
	width: 100%;
}

#monthly-magazine section .box {
	width: calc(100% - 100px);
	max-width: 1000px;
	margin: 30px 50px 0;
	padding: 0 50px 30px 30px;
	border-bottom: #5f262f 1px dashed;
	display: flex;
}

#monthly-magazine section .box .left div:nth-child(n+2),
#monthly-magazine section .box-other .left div:nth-child(n+2) {
	display: none;
}

#monthly-magazine section .box .left img {
	width: 460px;
	cursor: pointer;
}

#monthly-magazine section .right {
	color: #5f262f;
	margin-left: 20px;
}

#monthly-magazine section .right .date {
	font-size: 24px;
	background: #fbf5ef;
	padding: 8px 30px;
}

#monthly-magazine section .right h3 {
	font-size: 24px;
	margin: 10px 0 0 30px;
	line-height: 1.6;
}

#monthly-magazine section .right .text {
	font-size: 12px;
	margin: 10px 0 0 30px;
	line-height: 1.6;
}

#monthly-magazine section .box-other {
	width: calc(100% - 100px);
	max-width: 1000px;
	margin: 30px auto 0;
	padding: 0 50px 30px 30px;
	border-bottom: #5f262f 1px dashed;
	display: flex;
}

#monthly-magazine section .box-other .left img {
	width: 180px;
	cursor: pointer;
}

#monthly-magazine section .btn {
	width: 100%;
	max-width: 1100px;
	margin: 60px auto;
	padding: 0 50px;
}

#monthly-magazine section .btn::after {
	content: '';
	clear: both;
}

#monthly-magazine section .btn ul {
	border: #5f262f 1px solid;
	overflow: hidden;
}

#monthly-magazine section .btn ul li {
	padding: 5px 0;
}

#monthly-magazine section .btn ul li:first-child {
	float: left;
}

#monthly-magazine section .btn ul li:nth-child(2) {
	float: right;
}

#monthly-magazine section .btn ul li a {
	font-size: 12px;
	color: #5f262f;
	padding: 10px 20px;
	display: block;
}

#monthly-magazine section .btn ul li:first-child a {
	border-right: #5f262f 1px solid;
}

#monthly-magazine section .btn ul li:nth-child(2) a {
	border-left: #5f262f 1px solid;
}

@media screen and (min-width: 641px) and (max-width: 1200px) {
	#monthly-magazine section .box .left img {
		width: 38.333vw;
	}
}

@media screen and (max-width: 640px) {
	#monthly-magazine section .image {
	    margin: 5vw 0 0;
	}

	#monthly-magazine section .box,
	#monthly-magazine section .box-other {
	    width: 100%;
	    margin: 5vw 0 0;
	    padding: 0 0 5vw 0;
	    border-bottom: #5f262f 2px dashed;
	    flex-wrap: wrap;
	}

	#monthly-magazine section .left {
		margin: 0 auto;
	}

	#monthly-magazine section .box .left img {
		width: 81.25vw;
	}

	#monthly-magazine section .box-other .left img {
		width: 50vw;
	}

	#monthly-magazine section .right {
		width: 100%;
		margin: 3.125vw 0 0;
	}

	#monthly-magazine section .right .date {
		font-size: 5vw;
		padding: 1.563vw 10vw;
	}

	#monthly-magazine section .right h3 {
		font-size: 5vw;
		margin: 2vw 0 0 0;
		padding: 0 7.5vw 0 10vw;
	}

	#monthly-magazine section .right .text {
		font-size: 4.375vw;
		margin: 0.5vw 0 0 0;
		padding: 0 7.5vw 0 10vw;
	}

	#monthly-magazine section .btn {
		width: 95%;
		margin: 5vw auto 2vw;
		padding: 0;
	}

	#monthly-magazine section .btn ul li {
		padding: 1vw 0;
	}

	#monthly-magazine section .btn ul li a {
		font-size: 3.8vw;
		padding: 2.7vw 7.8vw;
	}
}
/********* monthly-magazine *********/

/********* news *********/
#news section .inner {
	font-size: 0;
	width: 100%;
	max-width: 1100px;
	margin: 60px auto 0;
	padding: 0 50px;
}

#news section .inner li {
	color: #5f262f;
	display: inline-block;
	vertical-align: top;
}

#news section .inner li:only-child {
	width: 100%;
}

#news section .inner li:first-child:nth-last-child(2),
#news section .inner li:first-child:nth-last-child(2) ~ li {
	width: 50%;
}

#news section .inner li:first-child {
	padding: 0 35px;
}

#news section .inner li:first-child img {
	max-width: 100%;
}

#news section .inner li .title {
	font-size: 18px;
	line-height: 1.6;
}

#news section .inner li .date {
	font-size: 14px;
	margin-top: 20px;
	padding-bottom: 8px;
	border-bottom: #5f262f 1px dashed;
}

#news section .inner li .text {
	font-size: 14px;
	margin-top: 30px;
	line-height: 1.6;
}

#news section .btn {
	width: 100%;
	max-width: 1100px;
	margin: 60px auto;
	padding: 0 50px;
}

#news section .btn::after {
	content: '';
	clear: both;
}

#news section .btn ul {
	border: #5f262f 1px solid;
	overflow: hidden;
}

#news section .btn ul li {
	padding: 5px 0;
}

#news section .btn ul li:first-child {
	float: left;
}

#news section .btn ul li:nth-child(2) {
	float: right;
}

#news section .btn ul li a {
	font-size: 12px;
	color: #5f262f;
	padding: 10px 20px;
	display: block;
}

#news section .btn ul li:first-child a {
	border-right: #5f262f 1px solid;
}

#news section .btn ul li:nth-child(2) a {
	border-left: #5f262f 1px solid;
}

@media screen and (max-width: 640px) {
	#news section {
		padding: 4.4vw 0;
	}

	#news section .inner {
		font-size: 0;
		width: 100%;
		margin: 3.5vw auto 0;
		padding: 0;
	}

	#news section .inner li {
		width: 100%;
		display: block;
	}

	#news section .inner li:first-child {
		padding: 0;
		text-align: center;
	}

	#news section .inner li:first-child img {
		width: 85%;
	}

	#news section .inner li .title {
		font-size: 5vw;
		margin-top: 1vw;
		padding: 0 2.5vw;
		border-bottom: #5f262f 0.5vw dashed;
	}

	#news section .inner li .date {
		font-size: 4.4vw;
		width: 85%;
		margin: 2vw auto 0;
		border: none;
		text-align: left;
	}

	#news section .inner li .text {
		font-size: 4.4vw;
		width: 85%;
		margin: 2vw auto 0;
		text-align: left;
	}

	#news section .btn {
		width: 95%;
		margin: 5vw auto 2vw;
		padding: 0;
	}

	#news section .btn ul li {
		padding: 1vw 0;
	}

	#news section .btn ul li a {
		font-size: 3.8vw;
		padding: 2.7vw 7.8vw;
	}
}
/********* news *********/

/********* newslist *********/
#newslist .inner {
	width: 100%;
	max-width: 1100px;
	margin: 60px auto 0;
	padding: 0 50px;
}

#newslist .inner ul {
	font-size: 0;
	padding: 0 50px;
}

#newslist .inner ul li {
	font-size: 14px;
	display: inline-block;
	vertical-align: middle;
}

#newslist .inner ul li:first-child {
	width: 15%;
}

#newslist .inner ul li:nth-child(2) {
	width: 20%;
}

#newslist .inner ul li:nth-child(2) img {
	width: 110px;
}

#newslist .inner ul li:last-child {
	width: 65%;
	padding: 40px 0;
	border-bottom: #5f262f 1px dashed;
	line-height: 1.6;
}

#newslist .inner ul li a {
	color: #5f262f;
}

#newslist .inner ul li:last-child a:hover {
	text-decoration: underline;
}

#newslist section .btn {
	width: 100%;
	max-width: 1100px;
	margin: 60px auto;
	padding: 0 50px;
}

#newslist section .btn::after {
	content: '';
	clear: both;
}

#newslist section .btn ul {
	border: #5f262f 1px solid;
	overflow: hidden;
}

#newslist section .btn ul li {
	padding: 5px 0;
}

#newslist section .btn ul li:first-child {
	float: left;
}

#newslist section .btn ul li:nth-child(2) {
	float: right;
}

#newslist section .btn ul li a {
	font-size: 12px;
	color: #5f262f;
	padding: 10px 20px;
	display: block;
}

#newslist section .btn ul li:first-child a {
	border-right: #5f262f 1px solid;
}

#newslist section .btn ul li:nth-child(2) a {
	border-left: #5f262f 1px solid;
}

@media screen and (max-width: 900px) {
	#newslist .inner {
		padding: 0;
	}

	#newslist .inner ul {
		padding: 0 20px;
	}
}

@media screen and (max-width: 640px) {
	#newslist .inner {
		margin: 0 auto;
	}

	#newslist .inner ul {
		margin-top: 5vw;
		padding: 0;
	}

	#newslist .inner ul li {
		display: block;
	}

	#newslist .inner ul li:first-child {
		font-size: 4.4vw;
		width: 85%;
		margin: 0 auto;
	}

	#newslist .inner ul li:nth-child(2) {
		width: 85%;
		margin: 2vw auto 0;
	}

	#newslist .inner ul li:last-child {
		font-size: 4.4vw;
		width: 100%;
		padding: 2vw 7.5% 3vw;
		border-bottom: #5f262f 0.5vw dashed;
	}

	#newslist .inner ul li:nth-child(2) img {
		width: 100%;
	}

	#newslist section .btn {
		width: 95%;
		margin: 5vw auto 2vw;
		padding: 0;
	}

	#newslist section .btn ul li {
		padding: 1vw 0;
	}

	#newslist section .btn ul li a {
		font-size: 3.8vw;
		padding: 2.7vw 7.8vw;
	}
}
/********* newslist *********/

/********* qa *********/
#qa .text {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 14px;
	color: #5f262f;
	margin-top: 25px;
	text-align: center;
	line-height: 1.6;
}

#qa .question {
	width: 100%;
	max-width: 1100px;
	margin: 50px auto 0;
	padding: 0 50px;
}

#qa .question a:hover ul {
	color: #fff;
	background: #5f262f;
}

#qa .question a:hover ul li {
	color: #fff;
}

#qa .question a:hover ul li:first-child {
	color: #5f262f;
}

#qa .question a:hover ul li .circle {
	background: #fff
}

#qa .question ul {
	font-size: 0;
	margin-top: 10px;
	padding: 20px 0;
	border: #e4d8ca 1px solid;
}

#qa .question ul li {
	font-size: 12px;
	color: #5f262f;
	width: calc(100% - 120px);
	display: inline-block;
	position: relative;
	vertical-align: middle;
	line-height: 1.4;
}

#qa .question ul li:first-child {
	font-family: 'Montserrat', sans-serif;
	font-size: 18px;
	color: #fff;
	width: 120px;
	padding-left: 50px;
}

#qa .question ul li .circle {
	background: #5f262f;
	width: 30px;
	height: 30px;
	padding-top: 2px;
	border-radius: 100%;
	text-align: center;
}

#qa .answer {
	width: 100%;
	max-width: 1100px;
	margin: 80px auto 0;
	padding: 0 50px 50px;
}

#qa .answer .box {
	margin-top: 50px;
}

#qa .answer .q-text {
	font-size: 12px;
	color: #5f262f;
	padding-left: 110px;
	position: relative;
}

#qa .answer .q-text:before {
	content: "";
	width: 100%;
    border-top: #ff533d 1px solid;
    position: absolute;
    top: 50%;
    left: 0;
}

#qa .answer .q-text span {
    background: #fff;
    display: inline-block;
    padding: 0 0.5em;
    position: relative;
}

#qa .answer ul {
	font-size: 0;
}

#qa .answer ul li {
	font-size: 18px;
	width: calc(100% - 120px);
	padding: 20px 0;
	display: inline-block;
	vertical-align: middle;
	line-height: 1.4;
}

#qa .answer ul li:first-child {
	font-family: 'Montserrat', sans-serif;
	font-size: 26px;
	color: #fff;
	width: 120px;
	padding-left: 45px;
}

#qa .answer ul li .circle2 {
	background: #ff533d;
	width: 40px;
	height: 40px;
	border-radius: 100%;
	text-align: center;
}

@media screen and (max-width: 640px) {
	#qa .text {
		font-size: 3.6vw;
		margin-top: 5vw;
	}

	#qa .question {
		width: 95vw;
		margin: 8vw auto 0;
		padding: 0;
	}

	#qa .question ul {
		margin-top: 1.5vw;
		padding: 3vw 0;
	}

	#qa .question ul li {
		font-size: 4.4vw;
		width: 83%;
	}

	#qa .question ul li:first-child {
		font-size: 5.6vw;
		width: 17%;
		padding-left: 3vw;
	}

	#qa .question ul li .circle {
		width: 9.5vw;
		height: 9.5vw;
		padding-top: 0.5vw;
	}

	#qa .answer {
		width: 95vw;
		margin: 12vw auto 0;
		padding: 0 0 7.8vw;
	}

	#qa .answer .box {
		margin-top: 7.8vw;
	}

	#qa .answer .q-text {
		font-size: 4.4vw;
		padding-left: 5vw;
	}

	#qa .answer ul li {
		font-size: 4.4vw;
		width: 78%;
		padding: 3.2vw 0;
	}

	#qa .answer ul li:first-child {
		font-size: 6.5vw;
		width: 22%;
		padding-left: 3vw;
	}

	#qa .answer ul li .circle2 {
		width: 11vw;
		height: 11vw;
		padding-top: 1vw;
	}
}
/********* qa *********/

/********* soap *********/
#soap section {
	background: url(../images/bg_soap.jpg) no-repeat top center;
	background-attachment: fixed;
}

#soap #breadcrumb {
	background: #fff;
}

.shop-btn {
	font-size: 0;
	width: 100%;
	max-width: 1040px;
	margin: 40px auto;
	padding: 0 50px;
}

.shop-btn li {
	display: inline-block;
	width: calc(100% / 3 - 12px);
}

.shop-btn li:nth-child(n+2) {
	margin-left: 18px;
}

.shop-btn li:nth-child(4) {
	margin-left: 0;
}

.shop-btn li:nth-child(n+4) {
	margin-top: 18px;
}

.shop-btn li a {
	font-size: 14px;
	color: #fff;
	background: #ff533d;
	padding: 40px 20px;
	text-align: center;
	display: block;
	border: #ff533d 1px solid;
	outline: #fff 1px solid;
	outline-offset: -3px;
}

.shop-btn li a:hover {
	color: #ff533d;
	background: #fff;
	outline: none;
}

#soap h3 {
	font-family: 'Montserrat', sans-serif;
	font-size: 16px;
	color: #5f262f;
	margin-top: 50px;
	text-align: center;
}

#soap .text-01 {
	font-size: 14px;
	color: #5f262f;
	width: 100%;
	max-width: 1100px;
	margin: 30px auto 0;
	padding: 0 50px;
	line-height: 1.8;
	text-align: center;
}

#soap .movie {
	width: 100%;
	max-width: 900px;
	margin: 30px auto 0;
	padding: 0 50px;
}

#soap .movie iframe {
	width: 100%;
	height: 450px;
}

#soap .shoplist {
	margin-top: 100px;
}

#soap .shoplist > ul {
	font-size: 0;
	width: 100%;
	max-width: 1100px;
	margin: 120px auto 0;
	padding: 0 50px;
}

#soap .shoplist ul li {
	width: calc(50% - 10px);
	display: inline-block;
	vertical-align: top;
}

#soap .shoplist > ul li:last-child {
	margin-left: 20px;
}

#soap .shoplist ul li .box {
	background: #fff;
	padding: 15px 0 20px;
	box-shadow: 2px 3px 5px 1px rgba(0,0,0,0.2);
}

#soap .shoplist ul li .shopname {
	font-size: 14px;
	color: #5f262f;
	padding: 0 30px;
	line-height: 1.6;
}

#soap .shoplist ul li .shopname br {
	display: none;
}

#soap .shoplist ul li .shopname span {
    font-family: 'Playfair Display', serif;
    font-size: 35px;
}

#soap .shoplist ul li .title {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	font-size: 30px;
	color: #5f262f;
	background: #e4d8ca;
	margin-top: 10px;
	padding: 10px 30px 10px 35px;
	line-height: 1.2;
}

#soap .shoplist ul li h4 {
	font-size: 14px;
	color: #5f262f;
	margin-top: 10px;
	padding: 0 20px;
	line-height: 1.4;
}

#soap .shoplist ul li h4 span {
	font-size: 40px;
	vertical-align: middle;
	line-height: 0.5;
}

#soap .shoplist ul li h4 span.yellow {
	color: #ffd700;
}

#soap .shoplist ul li h4 span.red {
	color: #dc143c;
}

#soap .shoplist ul li h4 span.blue {
	color: #4169e1;
}

#soap .shoplist ul li .text {
	font-size: 12px;
	color: #5f262f;
	margin-top: 5px;
	padding: 0 30px 0 30px;
	line-height: 1.6;
}

#soap .shoplist ul li .btn {
	margin-top: 20px;
}

#soap .shoplist ul li .btn ul li {
	font-size: 14px;
	width: calc(50% - 5px);
	border: #5f262f 1px solid;
}

#soap .shoplist ul li .btn ul li:last-child {
	margin-left: 10px;
}

#soap .shoplist ul li .btn ul li a {
	color: #5f262f;
	background: #fff;
	width: 100%;
	padding: 18px 0;
	text-align: center;
	display: block;
	transition: all 0.5s;
}

#soap .shoplist ul li .btn ul li a:hover {
	color: #fff;
	background: #5f262f;
}

#soap .shoplist ul li .voice {
	margin-top: 60px;
	text-align: center;
}

#soap .shoplist ul li ul.girl {
	margin-top: 20px;
}

#soap .shoplist ul li ul.girl li {
	position: relative;
	transition: all 0.5s;
}

#soap .shoplist ul li ul.girl li:hover {
	opacity: 0.5;
}

#soap .shoplist ul li ul.girl li .yellow {
	background: rgba(255, 215, 0, 0.9);
}

#soap .shoplist ul li ul.girl li .red {
	background: rgba(220, 20, 60, 0.9);
}

#soap .shoplist ul li ul.girl li .blue {
	background: rgba(65, 105, 225, 0.9);
}

#soap .shoplist ul li ul.girl li .name {
	font-size: 12px;
	color: #fff;
	width: 110px;
	height: 110px;
	padding: 28px 11px 0 11px;
	line-height: 1.4;
	border-radius: 100%;
	position: absolute;
	bottom: 10px;
	right: 10px;
}

#soap .shoplist ul li ul.girl li .name span.big {
	font-size: 16px;
}

#soap .shoplist ul li ul.girl li .name span.age {
	display: block;
	text-align: right;
}

#guarantee .bx-wrapper .bx-prev {
	background: url(../images/prev.png) no-repeat 0 0;
}

#guarantee .bx-wrapper .bx-next {
	background: url(../images/next.png) no-repeat 0 0;
}

#guarantee .bx-wrapper .bx-controls-direction a {
	width: 34px;
	height: 48px;
	margin-top: -13px;
}

#guarantee .modal-content {
	width: 100%;
	max-width: 1100px;
	padding: 0 50px;
    position: fixed;
    z-index: 7;
}

#guarantee .bx-wrapper {
	background: url(../images/bg_guarantee.jpg) no-repeat;
	margin: 0;
	-moz-box-shadow: 0;
	-webkit-box-shadow: 0;
	box-shadow: none;
	border: none;
}

#guarantee .bx-viewport {
	height: 630px !important;
}

#guarantee ul.inner {
	font-size: 0;
}

#guarantee ul.inner > li {
	width: 100% !important;
	max-width: 1000px;
	height: 100%;
	padding: 35px 60px;
}

#guarantee ul li ul {
	font-size: 0;
}

#guarantee ul li ul li {
	width: 61.5%;
	display: inline-block;
	vertical-align: top;
}

#guarantee ul li ul li:last-child {
	width: 36.5%;
	margin: 35px 0 0 2%;
}

#guarantee .name {
	font-size: 20px;
	color: #fff;
	text-align: center;
}

#guarantee .name span {
	font-size: 30px;
}

#guarantee .purpose,
#guarantee .time,
#guarantee .day {
	font-size: 18px;
	font-style: italic;
	font-weight: bold;
	color: #5f262f;
	background: #fff;
	margin-top: 10px;
	padding: 20px 40px;
}

#guarantee .purpose span,
#guarantee .time span,
#guarantee .day span {
	font-size: 12px;
}

#guarantee .per-day,
#guarantee .month {
	background: #fff;
	color: #5f262f;
	margin-top: 10px;
	padding-bottom: 10px;
}

#guarantee .per-day .title,
#guarantee .month .title {
	font-size: 14px;
	font-weight: bold;
	padding: 8px 0;
	text-align: center;
	border-bottom: #5f262f 1px solid;
}

#guarantee .per-day .desc,
#guarantee .month .desc {
	font-size: 12px;
	width: 300px;
	margin: 15px auto;
	line-height: 1.6;
}

#guarantee .month .desc {
	text-align: center;
}

#guarantee .per-day .desc span {
	font-weight: bold;
}

#guarantee .per-day .total,
#guarantee .month .total {
	font-size: 20px;
	color: #fff;
	background: #5f262f;
	width: 320px;
	margin: 0 auto;
	padding: 5px 0;
	text-align: center;
}

#guarantee .month .total span {
	font-size: 16px;
}

.modal .modal-content {
	width: 100%;
	max-width: 1000px;
    position: fixed;
    display: none;
    z-index: 7;
}

.modal-overlay {
	background: rgba(255,255,255,0.9);
	width: 100%;
    height: 120%;
    position: fixed;
    top: 0;
    left: 0;
    display: none;
    z-index: 6;
}

.modal .modal-content ul {
	font-size: 0;
	margin-top: 15px;
	box-shadow: 2px 3px 5px 1px rgba(0,0,0,0.5);
	display: table;
}

.modal .modal-content ul li {
	width: 50%;
	display: table-cell;
	vertical-align: middle;
}

.modal .modal-content ul li:last-child {
	background: url(../images/bg_modal.jpg) no-repeat;
	padding: 0 30px;
}

.modal .modal-content ul li img {
	width: 100%;
}

.modal .modal-content .text {
    font-size: 14px;
    color: #fff;
    line-height: 1.4;
}

.modal .modal-content .data-box {
	background: #fff;
	width: 75%;
	margin-top: 70px;
	padding: 25px 30px;
	box-shadow: 2px 3px 5px 1px rgba(0,0,0,0.5);
}

.modal .modal-content .data-box .name {
	font-size: 16px;
	color: #5f262f;
}

.modal .modal-content .data-box .data {
	font-size: 14px;
	color: #5f262f;
	margin-top: 8px;
	padding-bottom: 5px;
	border-bottom: #5f262f 1px dotted;
}

.modal .modal-content .data-box .data:nth-of-type(2) {
	margin-top: 15px;
}

.modal .modal-content .data-box .data span {
	font-size: 10px;
	color: #5f262f;
	width: 80px;
	display: block;
	float: left;
}

.modal-open,
.modal-close {
	cursor: pointer;
}

.modal-close {
	height: 35px;
	position: relative;
	display: block;
	text-align: right;
}

.modal-close::before {
	content: '';
	background: #5f262f;
	width: 3px;
	height: 35px;
	display: block;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	right: 12px;
}

.modal-close::after {
	content: '';
	background: #5f262f;
	width: 3px;
	height: 35px;
	display: block;
	transform: rotate(-45deg);
	position: absolute;
	top: 0;
	right: 12px;
}

#soap .recruit {
	width: 100%;
	max-width: 1100px;
	padding: 0 50px;
	margin: 60px auto 0;
}

#soap .recruit dl {
	border-top: #e4d8ca 1px solid;
	border-right: #e4d8ca 1px solid;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

#soap .recruit dt {
	color: #5f262f;
	background: #e4d8ca;
	width: 20%;
	padding: 30px 0 0 30px;
	border-bottom: #fff 1px solid;
}

#soap .recruit dd {
	color: #5f262f;
	background: #fff;
	width: 80%;
	padding: 30px 30px 30px 80px;
	border-bottom: #e4d8ca 1px solid;
}

#soap .recruit dd:nth-of-type(3),
#soap .recruit dd:nth-of-type(4),
#soap .recruit dd:nth-of-type(7),
#soap .recruit dd:last-of-type {
	padding: 10px 30px 20px 80px;
}

#soap .recruit dd::after {
	content: '';
	clear: both;
}

#soap .recruit dd ul {
	font-size: 0;
	margin-top: 10px;
}

#soap .recruit dd ul li {
	font-size: 14px;
	display: inline-block;
	vertical-align: middle;
}

#soap .recruit dd ul li:first-child {
	font-size: 10px;
	color: #fff;
	width: 120px;
	padding: 5px 0;
	text-align: center;
}

#soap .recruit dd ul.pia li:first-child {
	background: #ffd700;
}

#soap .recruit dd ul.bunny li:first-child {
	background: #dc143c;
}

#soap .recruit dd ul.esperanza li:first-child {
	background: #4169e1;
}

#soap .recruit dd ul li:last-child {
	margin-left: 30px;
}

#soap .recruit dd ul li a {
	color: #5f262f;
}

#soap .shopdata {
	background: url(../images/bg_soap_shopdata.png) no-repeat top center;
	clear: both;
	padding-bottom: 50px;
}

#soap .shopdata ul {
	width: 100%;
	margin: 150px auto 0;
	padding: 0 50px;
}

#soap .shopdata ul li {
	font-size: 14px;
	color: #5f262f;
	background: rgba(255,255,255,0.8);
	width: calc(100% / 3 - 10px);
	padding: 30px 0;
	vertical-align: top;
}

#soap .shopdata ul li:nth-child(n+2) {
	margin-left: 15px;
}

#soap .shopdata ul li .image {
	text-align: center;
}

#soap .shopdata ul li h4 {
	font-family: 'Montserrat', sans-serif;
	font-size: 12px;
	margin-top: 10px;
	padding: 0 40px;
}

#soap .shopdata ul li h4 span {
	font-size: 14px;
	color: #ff3e2d;
}

#soap .shopdata ul li .text {
	margin-top: 5px;
	padding: 0 40px;
	line-height: 1.4;
}

#soap .bottom {
	background: rgba(228, 216, 202, 0.2);
	padding: 80px 50px;
}

#soap .bottom .text-02 {
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
	color: #5f262f;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 50px 0;
	border-top: #5f262f 1px solid;
	border-bottom: #5f262f 1px solid;
	text-align: center;
	line-height: 1.6;
	position: relative;
}

#soap .bottom .text-02::after {
    content: '';
    background: #5f262f;
    width: 80%;
    height: 1px;
    margin: auto;
    display: block;
    position: absolute;
    bottom: -12px;
    left: 0;
    right: 0;
}

#soap .bottom .text-02::before {
    content: '';
    background: #5f262f;
    width: 80%;
    height: 1px;
    margin: auto;
    display: block;
    position: absolute;
    top: -12px;
    left: 0;
    right: 0;
}

#soap .bottom .btn-contact ul {
	font-size: 0;
	width: 100%;
	max-width: 1100px;
	margin: 50px auto 0;
}

#soap .bottom .btn-contact ul li {
	font-size: 14px;
	width: calc((100% - 100px) / 3 - 1px);
	text-align: center;
	display: inline-block;
}

#soap .bottom .btn-contact ul li:nth-child(n+2) {
	margin-left: 50px;
}

#soap .bottom .btn-contact ul li a {
	color: #fff;
	background: #e4d8ca;
	padding: 40px 0;
	display: block;
	transition: all 0.5s;
}

#soap .bottom .btn-contact ul li a:hover {
	background: #ff533d;
}

#soap .bottom .btn-contact ul li:first-child::before {
	width: 0;
	height: 0;
}

#soap .bottom .btn-contact ul li br {
	display: none;
}

@media screen and (max-width: 1400px) {
	#soap .bottom .btn-contact ul {
		padding: 0;
	}

	#soap .bottom .btn-contact ul li {
		width: calc((100% - 6.1vw) / 3);
		margin: 0;
		display: inline-block;
		vertical-align: top;
		line-height: 1.6;
	}

	#soap .bottom .btn-contact ul li br {
		display: block;
	}

	#soap .bottom .btn-contact ul li:nth-child(n+2) {
		margin-left: 3vw;
	}
}

@media screen and (max-width: 1100px) {
	#soap .shoplist ul li .voice img {
		max-width: 100%;
	}

	#soap .shoplist ul li ul.girl li img {
		width: 100%;
	}

	#soap .shopdata ul li .image img {
		max-width: 90%;
	}

	#guarantee ul.inner > li {
		max-width: calc(100vw - 120px);
	}

	#guarantee ul li ul li {
		width: 100%;
	}

	#guarantee ul li ul li:last-child {
		display: none;
	}

	.modal .modal-content ul {
		width: 50%;
		margin: 0 auto;
	}

	.modal .modal-content ul li {
		width: 100%;
		display: block;
	}

	.modal .modal-content ul li:last-child {
		padding-bottom: 30px;
	}

	.modal .modal-content .text {
		padding-top: 30px;
	}

	.modal .modal-content .data-box {
		margin: 30px 0;
		width: 100%;
	}
}

@media screen and (max-width: 850px) {
	#soap .text-01,
	#soap .shoplist > ul,
	#soap .recruit,
	#soap .shopdata ul {
		padding: 0 20px;
	}

	#soap .shoplist ul li {
		width: 100%;
		display: inline-block;
	}

	#soap .shoplist > ul li:last-child {
		margin: 0 0 0 20px;
	}

	#soap .shoplist ul:nth-of-type(2) {
		display: -webkit-box;
		display: -webkit-flex;
		display: -ms-flexbox;
		display: flex;
		-webkit-flex-wrap: wrap;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
	}

	#soap .shoplist ul:nth-of-type(2) li:first-child {
		-webkit-box-ordinal-group: 2;
		-ms-flex-order: 2;
		-webkit-order: 2;
		order: 2;
	}

	#soap .shoplist ul:nth-of-type(2) li:last-child {
		-webkit-box-ordinal-group: 1;
		-ms-flex-order: 1;
		-webkit-order: 1;
		order: 1;
	}

	#soap .shoplist ul li {
		width: 100%;
	}

	#soap .shoplist ul li ul.girl li {
		width: calc(50% - 10px);
	}

	#soap .shoplist ul li:nth-child(2) ul li {
		width: calc(50% - 5px);
	}

	#soap .shoplist ul li ul.girl li {
		width: calc(50% - 10px);
	}

	#soap .shoplist ul li .shopname br {
		display: block;
	}

	#soap .shoplist ul li .btn ul li {
		font-size: 1.8vw;
	}

	#soap .recruit dt {
		padding: 30px 0 0 20px;
	}

	#soap .recruit dd {
		padding: 30px 30px 30px 50px;
	}

	#soap .recruit dd:nth-of-type(3),
	#soap .recruit dd:nth-of-type(4),
	#soap .recruit dd:nth-of-type(7),
	#soap .recruit dd:last-of-type {
	    padding: 10px 30px 20px 50px;
	}

	#soap .bottom {
		padding: 80px 20px;
	}

	#guarantee .purpose,
	#guarantee .time,
	#guarantee .day {
		padding: 20px;
	}
}

@media screen and (min-width: 641px) {
	#soap .shopdata ul {
		max-width: 1100px;
		display: flex;
		flex-direction: row;
		flex-wrap: wrap;
	}
}

@media screen and (max-width: 640px) {
	#soap section {
		background: none;
	}

	#soap section::before {
		content: '';
		background: url(../images/bg_soap_sp.jpg) no-repeat top center;
		width: 100vw;
		height: 100vh;
		position: fixed;
		top: 0;
		left: 0;
	    z-index: -1;
	}

	.shop-btn {
		margin: 7.5vw auto 0;
		padding: 0 2vw;
	}

	.shop-btn li {
		width: 100%;
		vertical-align: top;
	}

	.shop-btn li:nth-child(n+2) {
		margin: 2.5vw 0 0 0;
	}

	.shop-btn li:nth-child(4) {
		margin-left: 0;
	}

	.shop-btn li:nth-child(n+4) {
		margin-top: 1vw;
	}

	.shop-btn li a {
		font-size: 4.375vw;
		height: 15.625vw;
		padding: 5.25vw 0;
	}

	#soap h3 {
		font-size: 3.5vw;
		margin-top: 5vw;
	}

	#soap h3 img {
		width: 36.096vw;
	}

	#soap .movie {
		padding: 0 2vw;
	}

	#soap .movie iframe {
		height: 54.063vw;
	}

	#soap .text-01,
	#soap .shoplist > ul,
	#soap .recruit,
	#soap .shopdata ul {
		padding: 0;
	}

	#soap .shoplist {
		margin-top: 15vw;
	}

	#soap .text-01 {
		font-size: 3.6vw;
	}

	#soap .shoplist > ul {
		margin: 10vw auto 0;
		padding-bottom: 3vw;
		border-bottom: #5f262f 2px solid;
	}

	#soap .shoplist ul li {
		width: 100%;
		display: block;
	}

	#soap .shoplist > ul li:last-child {
		margin: 0;
	}

	#soap .shoplist ul li .box {
		padding: 0 0 1.5vw;
		-moz-box-shadow: 0;
		-webkit-box-shadow: 0;
		box-shadow: none;
	}

	#soap .shoplist ul li .shopname {
		font-size: 3.6vw;
		text-align: center;
		line-height: 1.2;
	}

	#soap .shoplist ul li .shopname span {
		font-size: 7.2vw;
	}

	#soap .shoplist ul li .title {
		font-size: 6.1vw;
		margin-top: 1.5vw;
		padding: 1.5vw 0;
		text-align: center;
	}

	#soap .shoplist ul li h4 {
		font-size: 4.4vw;
		margin-top: 3vw;
		padding: 0 4vw 0 2vw;
	}

	#soap .shoplist ul li h4 span {
		font-size: 8vw;
	}

	#soap .shoplist ul li .text {
		font-size: 3.6vw;
		padding: 0 4vw 0 6vw;
	}

	#soap .shoplist ul li .btn {
		margin-top: 3vw;
	}

	#soap .shoplist ul li .btn ul li {
		font-size: 4.4vw;
		width: 80%;
		margin: 0 auto;
	}

	#soap .shoplist ul li .btn ul li:last-child {
		margin: 2vw auto 0;
	}

	#soap .shoplist ul li .btn ul li a {
		padding: 5vw 0;
	}

	#soap .shoplist ul li .voice {
		margin-top: 5vw;
	}

	#soap .shoplist ul li .voice img {
		width: 100%;
	}

	#soap .shoplist ul li ul.girl {
		margin-top: 2vw;
	}

	#soap .shoplist ul li ul.girl li {
		width: 50%;
		display: inline-block;
	}

	#soap .shoplist ul li ul.girl li .name {
		font-size: 3vw;
		width: 25vw;
		height: 25vw;
		padding: 7vw 2vw 0 2vw;
		left: 3vw;
		bottom: 3vw;
	}

	#soap .shoplist ul li ul.girl li .name span.big {
		font-size: 3.6vw;
	}

	#guarantee .bx-wrapper {
		background: url(../images/bg_guarantee_sp.jpg) no-repeat;
	}

	#guarantee .bx-viewport {
		height: 74vh !important;
		overflow: auto !important;
	}

	#guarantee .modal-content {
		padding: 0;
	}

	#guarantee ul.inner > li {
		width: 100%;
		max-width: 100vw;
		padding: 2.5vw;
	}

	#guarantee .name {
		font-size: 3.2vw;
	}

	#guarantee .name span {
		font-size: 6.3vw;
	}

	#guarantee .purpose,
	#guarantee .time,
	#guarantee .day {
		font-size: 4vw;
		margin-top: 2vw;
		padding: 1vw 3vw;
		line-height: 1.2;
	}

	#guarantee .purpose span,
	#guarantee .time span,
	#guarantee .day span {
		font-size: 3.2vw;
	}

	#guarantee .per-day .title,
	#guarantee .month .title {
		font-size: 3.6vw;
		padding: 1vw 0;
	}

	#guarantee .per-day .desc,
	#guarantee .month .desc {
		font-size: 3.2vw;
		width: 70vw;
		margin: 1vw auto;
	}

	#guarantee .per-day .total,
	#guarantee .month .total {
		font-size: 6.3vw;
		width: 90vw;
		padding: 1vw 0;
	}

	.modal .modal-content {
		width: 100%;
		margin: auto;
		left: 0 !important;
		right: 0;
	}

	.modal-close::before,
	.modal-close::after {
		right: 20px;
	}

	.modal .modal-content ul {
		width: 100%;
		margin-top: 2vw;
	}

	.modal .modal-content ul li:first-child {
		height: 65vw;
		overflow: hidden;
	}

	.modal .modal-content ul li:last-child {
		background: url(../images/bg_modal_sp.jpg) no-repeat;
	}

	.modal .modal-content ul li:last-child {
	    padding: 0 15px 8vw;
	}

	.modal .modal-content .text {
		font-size: 3.6vw;
		padding-top: 11vw;
	}

	.modal .modal-content .data-box {
		width: 75%;
		margin: auto;
		padding: 4vw 5vw;
		position: absolute;
		top: 53vw;
		left: 0;
		right: 0;
	}

	.modal .modal-content .data-box .name {
		font-size: 4.4vw;
	}

	.modal .modal-content .data-box .name span {
		font-size: 3.1vw;
	}

	.modal .modal-content .data-box .data {
	    font-size: 3.6vw;
	    margin-top: 1.2vw;
	    padding-bottom: 0.9vw;
	}

	.modal .modal-content .data-box .data:nth-of-type(2) {
		margin-top: 2.4vw;
	}

	.modal .modal-content .data-box .data span {
		font-size: 3.1vw;
		width: 18vw;
	}

	#soap .recruit {
		margin-top: 7.5vw;
		width: 96%;
	}

	#soap .recruit dt,
	#soap .recruit dd {
		width: 100%;
	}

	#soap .recruit dt {
		font-size: 3.6vw;
		padding: 2.5vw 3vw;
	}

	#soap .recruit dd {
		font-size: 4.4vw;
		padding: 3vw 4vw;
		border-left: #e4d8ca 1px solid;
	}

	#soap .recruit dd:nth-of-type(3),
	#soap .recruit dd:nth-of-type(4),
	#soap .recruit dd:nth-of-type(7),
	#soap .recruit dd:last-of-type {
		padding: 0 1vw 2vw;
	}

	#soap .recruit dd ul {
		margin-top: 2vw;
	}

	#soap .recruit dd ul li:first-child {
		font-size: 2.4vw;
		width: 27vw;
		padding: 1.5vw 0;
	}

	#soap .recruit dd ul li:last-child {
		font-size: 4.4vw;
		margin-left: 1.5vw;
	}

	#soap .shopdata {
		background: rgba(255,255,255,0.8);
		margin-top: 5vw;
		padding: 0;
	}

	#soap .shopdata ul {
		margin: 3vw 0 0 0;
	}

	#soap .shopdata ul li {
		background: none;
		padding: 4.5vw 0;
	}

	#soap .shopdata ul li:nth-child(n+2) {
		margin-left: 0;
	}

	#soap .shopdata ul li .image img {
		width: 100%;
		max-width: 100%;
	}

	#soap .shopdata ul li h4 {
		font-size: 3.6vw;
		margin-top: 2vw;
		padding: 0 6vw;
	}

	#soap .shopdata ul li h4 span {
		font-size: 4.4vw;
	}

	#soap .shopdata ul li .text {
		font-size: 3.6vw;
	    margin-top: 0.9vw;
	    padding: 0 6vw;
	}

	#soap .shopdata .bx-wrapper {
		-moz-box-shadow: none;
		-webkit-box-shadow: none;
		box-shadow: none;
		border: none;
		background: none;
		background-size: contain;
	}

	#soap .shopdata .bx-viewport {
		height: 100% !important;
		padding-bottom: 3vw;
	}

	#soap .shopdata .bx-wrapper .bx-pager.bx-default-pager a {
		background: #e4d8ca !important;
		width: 16vw !important;
		height: 2vw !important;
		margin: 0 1.9vw !important;
		border-radius: 0 !important;
	}

	#soap .shopdata .bx-wrapper .bx-pager.bx-default-pager a:hover,
	#soap .shopdata .bx-wrapper .bx-pager.bx-default-pager a.active,
	#soap .shopdata .bx-wrapper .bx-pager.bx-default-pager a:focus {
		background: #ff533d !important;
	}

	#soap .bottom {
	    padding: 6vw 5vw;
	}

	#soap .bottom .text-02 {
		font-size: 3.6vw;
		padding: 4vw 0;
	}

	#soap .bottom .btn-contact {
		display: none;
	}
}
/********* soap *********/

/********* movie *********/
#movie #box-wrapper {
	width: 100%;
	max-width: 1400px;
	margin: 40px auto 0;
	padding: 0 50px;
	display: flex;
	flex-wrap: wrap;
}

#movie #box-wrapper .box {
	background: #fef3e6;
	padding: 26px;
}

#movie #box-wrapper .box:nth-child(n+2) {
	margin-left: 32px;
}

#movie #box-wrapper .box:nth-child(3n+1) {
	margin-left: 0;
}

#movie #box-wrapper .box:nth-child(n+4) {
	margin-top: 30px;
}

#movie #box-wrapper .box .thumb {
	width: 360px;
	margin: 0 auto;
}

#movie #box-wrapper .box .thumb img {
	width: 100%;
	vertical-align: top;
}

#movie #box-wrapper .box h3 {
	font-size: 20px;
	width: 360px;
	background: #fff;
	text-align: center;
	line-height: 1.6;
}

#movie #box-wrapper .box .btn-movie {
	background: #fff;
	padding-bottom: 15px;
}

#movie #box-wrapper .box .btn-movie a {
	font-size: 20px;
	color: #fff;
	background: #5f262f;
	width: 300px;
	margin: 0 auto;
	text-align: center;
	line-height: 2.5;
	display: block;
}

@media screen and (min-width: 973px) and (max-width: 1417px) {
	#movie #box-wrapper {
		max-width: 956px;
	}
	
	#movie #box-wrapper .box:nth-child(3n+1) {
		margin-left: 32px;
	}

	#movie #box-wrapper .box:nth-child(2n+1) {
		margin-left: 0;
	}

	#movie #box-wrapper .box:nth-child(n+3) {
		margin-top: 30px;
	}
}

@media screen and (min-width: 641px) and (max-width: 972px) {
	#movie #box-wrapper {
		max-width: 512px;
	}
	
	#movie #box-wrapper .box:nth-child(3n+1) {
		margin-left: 0;
	}

	#movie #box-wrapper .box:nth-child(n+2) {
		margin: 30px 0 0 0;
	}
}

@media screen and (max-width: 640px) {
	#movie #box-wrapper {
		margin-top: 7.5vw;
		padding: 0;
	}

	#movie #box-wrapper .box {
		width: 100%;
		padding: 6vw 2vw;
	}

	#movie #box-wrapper .box:nth-child(n+2) {
		margin-left: 0;
	}

	#movie #box-wrapper .box:nth-child(n+2) {
		margin-top: 7.5vw;
	}

	#movie #box-wrapper .box .thumb {
		width: 93.75vw;
	}

	#movie #box-wrapper .box h3 {
		font-size: 4.375vw;
		width: 93.75vw;
		margin: 0 auto;
		line-height: 2.5;
	}

	#movie #box-wrapper .box .btn-movie {
		width: 93.75vw;
		margin: 0 auto;
		padding-bottom: 5vw;
	}

	#movie #box-wrapper .box .btn-movie a {
		font-size: 5vw;
		width: 75vw;
	}
}
/********* movie *********/