@charset "utf-8";
/* CSS Document */
html,body {
	margin: 0;
	padding: 0;
}
.box_1100 {
	width: 92%;
	max-width: 1100px;
	margin: 0 auto;
}
@media screen and (min-width:768px) {
	.only_sp767 {
		display: none;
	}
}
@media screen and (max-width: 767px) {
	.only_pc768 {
		display: none;
	}
}
.align-c {
	text-align: center;
}
.singleCont table th,
.singleCont table td,
.advisor p,
dt,dd,dd li,dd a,
.text_en,
.lead,
.sec_fv .btn a .texts > span.text_en,
.secHead h2 .text_en,
.recommendList li .text,
.sec_news .newsList li span,
.areaList a,
.searchBlock h4,
.searchBlock a,
.f-gothic {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
}
.imgFitBox,
.imgCoverBox {
    position: relative;
    overflow: hidden;
}

.imgFitBox img,
.imgCoverBox img {
    display: block;
    max-width: none;
}
h1 .text_en,
.secHead h2 .text_en {
	font-weight: 600;
}
.lead .text_jp {
	font-size: 16px;
	line-height: 1.875;
	margin-bottom: 2em;
}
.lead .text_en {
	font-size: 16px;
	line-height: 1.6;
	margin-bottom: 2em;
}
.sec_fv {
	width: 100%;
	height: 100vh;
	min-height: 1060px;
	position: relative;
	overflow: hidden;
}
.sec_fv .bgArea {
    position: absolute;
    inset: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.sec_fv .bgArea video {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: block;
}
.sec_fv .bgArea picture {
	display: block;
	height: 100%;
}
.sec_fv .bgArea picture source,
.sec_fv .bgArea picture img
{
	width: 100%;
	height: auto;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.sec_fv .textBox {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 100%;
}
.sec_fv h1 {
	padding-bottom: 186px;
	background: center bottom / 105px auto url("../img/logo_en_white.png") no-repeat;
	margin-bottom: 110px;
}
.sec_fv h1 > span {
	display: block;
	text-align: center;
	font-size: 90px;
	color: #FFF;
}
.sec_fv h1 > span.text_small {
	font-size: 38px;
	line-height: 1.44;
}
.sec_fv h1 > span.text_big {
	font-size: 90px;
	line-height: 1.44;
}
.sec_fv h1 .smallLetter {
	margin: 0 -0.15em;
}
@media screen and (min-width:1921px) {
	.sec_fv::after {
		content: "";
		display: block;
		width: 100%;
		height: 186px;
		background: center bottom / auto 186px url("../img/fv_wave_white.svg") repeat-x;
		position: absolute;
		left: 0;
		bottom: 0;
	} 
}
@media screen and (min-width: 768px) and (max-width:1921px) {
	.sec_fv::after {
		content: "";
		display: block;
		width: 100%;
		min-width: 1920px;
		height: 186px;
		background: center bottom / auto 186px url("../img/fv_wave_white.svg") no-repeat;
		position: absolute;
		left: 0;
		bottom: 0;
	} 
}
@media screen and (max-width:767px) {
	.sec_fv::after {
		content: "";
		display: block;
		width: 100%;
		height: 26vw;
		background: center bottom / 100% auto url("../img/fv_wave_sp.png") no-repeat;
		position: absolute;
		left: 0;
		bottom: 0;
	} 
}
.recommendList {
	padding-bottom: 10px;
}
.recommendList.slick-dotted.slick-slider {
  margin-bottom: 30px;
}
.recommendList li {
	width: 440px;
	margin: 0 16px;
}
.recommendList li a {
	display: block;
}
.recommendList li a .img {
	display: block;
	width: 440px;
	height: 330px;
	position: relative;
	overflow: hidden;
	border-radius: 20px;
}
.recommendList li .text {
	display: block;
	text-align: center;
	font-size: 20px;
	font-weight: 600;
	line-height: 1.3;
	padding-top: 8px;
}
.recommendList .slick-dots li button {
  width: 12px;
  height: 12px;
  background-color: #d9d9d9;
}
.recommendList .slick-dots li.slick-active button {
  background-color: #dd3149;
}
.secHead {
	padding: 80px 0 50px;
}
.guideTOGO .secHead {
	padding: 100px 0 50px;
}
.sec_recommend .secHead {
	padding: 40px 0 45px;
}
.secHead h2 span {
	display: block;
	text-align: center;
	line-height: 1.5;
}
.secHead h2 .text_jp {
}
.secHead h2 .text_jp .text_small {
	font-size: 22px;
}
.secHead h2 .text_jp .text_big {
	font-size: 42px;
}
.secHead h2 .text_en {
	font-size: 25px;
	font-weight: 600;
}
.sec_recommend {
	position: relative;
	padding-bottom: 90px;
}
.bgp01 {
	position: relative;
}
.bgp01 .bgs {
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.bgp01 .bgs::before {
	content: "";
	display: table-cell;
	width: 885px;
	height: 918px;
	background: center / 100% auto url("../img/kumogata_01.png") no-repeat;
	position: absolute;
	right: 50%;
	top: -90px;
	transform: translateX(-360px);
}
.bgp01 .bgs::after {
	content: "";
	display: table-cell;
	width: 722px;
	height: 748px;
	background: center / 100% auto url("../img/kumogata_02.png") no-repeat;
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(420px);
}
.shopInfoEn.shopInfoArea.bgp01 .bgs::before {
	background: center / 100% auto url("../img/kumogata_01_white.png") no-repeat;
	top:0;
}
.shopInfoEn.shopInfoArea.bgp01 .bgs::after {
	background: center / 100% auto url("../img/kumogata_02_white.png") no-repeat;
}

@media screen and (max-width: 767px) {
	.bgp01 .bgs::before {
	  content: "";
	  display: table-cell;
	  width: 82.5vw;
	  height: 85.4vw;
	  background: center / 100% auto url("../img/kumogata_01.png") no-repeat;
	  position: absolute;
	  right: 50%;
	  top: -17vw;
	  transform: translateX(-8vw);
	}	
}
.sec_recommend .secIn {
	position: relative;
}
.sec .note {
	font-size: 14px;
	line-height: 1.7;
	text-align: center;
	 font-family: "Zen Kaku Gothic New", sans-serif;

}
.sec.sec_recommend .note {
	padding-top: 40px;
	font-weight: 500;
}
.sec_news {
	padding-bottom: 215px;
	position: relative;
}
.bg-koushi {
	background: center top / 112px auto url("../img/sec_news_bg.jpg") repeat;
}
.sec_news .newsList {
	font-size: 0;
	margin-bottom: 35px;
}
.sec_news .newsList li {
	display: inline-block;
	vertical-align: top;
	width: 23.5%;
	margin-right: 2%;
	padding-bottom: 30px;
}
.sec_news .newsList li:nth-child(4n) {
	margin-right: 0;
}
@media screen and (min-width: 768px) and (max-width: 1100px) {
	.sec_news .newsList li {
		width: 32%;
		margin-right: 2%;
	}
	.sec_news .newsList li:nth-child(4n) {
		margin-right: 2%;
	}
	.sec_news .newsList li:nth-child(3n) {
		margin-right: 0;
	}
}
@media screen and (max-width: 767px) {
	.sec_news .newsList li {
		width: 48%;
		margin-right: 4%;
	}
	.sec_news .newsList li:nth-child(2n) {
		margin-right: 0;
	}
}



.sec_news .newsList li a {
	display: block;
}
.sec_news .newsList li .img {
	display: block;
	width: 100%;
	height: auto;
	position: relative;
	border-radius: 10px;
	overflow: hidden;
	margin-bottom: 15px;
}
.sec_news .newsList li .img img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.sec_news .newsList li .img::before {
	content: "";
	display: block;
	padding-top: 67.5%;
}
.sec_news .newsList li .texts {
	display: block;
}
.sec_news .newsList li .texts .info {
	display: table;
}
.sec_news .newsList li .texts .info time {
	display: table-cell;
	vertical-align: middle;
	font-size: 1rem;
	line-height: 24px;
	padding-right: 1em;
}
.sec_news .newsList li .texts .info .cat {
	display: table-cell;
	vertical-align: middle;
	font-size: 1rem;
	line-height: 24px;
}
.sec_news .newsList li .texts .info .cat .catIn {
	display: inline-block;
	font-size: 1rem;
	line-height: 24px;
	padding: 0 0.8em;
	background-color: #535353;
	color: #FFF;
}

.sec_news .newsList li .texts .title {
	display: block;
	font-size: 1.28rem;
	line-height: 1.5;
}
.btn {
	display: block;
	text-align: center;
}
.btn.btn_black a {
	display: inline-block;
	background-color: #000;
	width: 400px;
	height: 80px;
	line-height: 80px;
	position: relative;
	font-size: 20px;
}
.btn.btn_black a .text {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	display: block;
	width: 100%;
}
.btn.btn_black a .text .text_jp,
.btn.btn_black a .text .text_en
{
	display: block;
	text-align: center;
	color: #FFF;
}
.btn.btn_black a .text .text_en {
	font-size: 1.28rem;
	line-height: 1.38;
}
@media screen and (min-width: 1921px) {
	.pageHead::after,
	.pages .contWrap::after,
	.sec_news::before,
	.sec_shop::before {
		content: "";
		display: block;
		background: center bottom / auto 100% url("../img/fv_wave_repeat-x.png") repeat-x;
		position: absolute;
		left: 50%;
		bottom: 0;
		transform: translateX(-50%);
		width: 100%;
		min-width: 1920px;
		height: 183px;
	}
}
@media screen and (min-width: 768px) and (max-width: 1920px) {
	.pageHead::after,
	.pages .contWrap::after,
	.sec_news::before,
	.sec_shop::before {
		content: "";
		display: block;
		background: center bottom / 100% auto url("../img/fv_wave_white.svg") no-repeat;
		position: absolute;
		left: 50%;
		bottom: 0;
		transform: translateX(-50%);
		width: 100%;
		min-width: 1920px;
		height: 185.5px; /* 0.0966% */
	}
}
@media screen and (max-width: 767px) {
	.pageHead::after,
	.pages .contWrap::after,
	 .sec_news::before,
	.sec_shop::before {
		content: "";
		display: block;
		background: center bottom / 100% auto url("../img/fv_wave_sp.png") no-repeat;
		position: absolute;
		left: 0;
		bottom: -1px;
		transform: translateX(0);
		width: 100%;
		min-width: 0;
		height: 25vw;
	  }	
	
}

.sec_news .inner {
	position: relative;
}
.sec_about {
	position: relative;
	padding-bottom: 75px;
	overflow: hidden;
}
.sec_about .inner {
	position: relative;
}
.sec_about .lead {
	font-size: 20px;
	line-height: 1.3;
	text-align: center;
}
.sec_about h2 {
	margin-bottom: 60px;
}
.sec_about .aboutList {
	font-size: 0;
}
.sec_about .aboutList li {
	display: inline-block;
	width: calc((100% - 80px)/3);
	margin-right: 40px;
	position: relative;
	vertical-align: top;
	padding-bottom: 40px;
}
.sec_about .aboutList li:nth-child(3n) {
	margin-right: 0;
}
@media screen and (max-width: 1100px) {
	.sec_about .aboutList li {
		width: 48%;
		margin-right: 4%;
	  padding-bottom: 40px;
	}	
	.sec_about .aboutList li:nth-child(3n) {
	  margin-right: 4%;
	}
	.sec_about .aboutList li:nth-child(2n) {
	  margin-right: 0;
	}
}
.sec_about .aboutList li .img {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	overflow: hidden;
	border-radius: 10px;
}
.sec_about .aboutList li .img::before {
	content: "";
	display: block;
	padding-top: 67.6%;
}
.sec_about .aboutList li .img img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.sec_about .aboutList li .texts {
	position: relative;
	padding-top: 62.35%;
}
.sec_about .aboutList li .texts h3 {
	line-height: 2.2rem;
}
.sec_about .aboutList li .texts h3 .block {
	display: block;
}
.sec_about .aboutList li .texts h3 .block:nth-child(1) {
	margin-bottom: 2px;
}
.sec_about .aboutList li .texts h3 .red {
	font-size: 1.5rem;
	color: #FFF;
	line-height: 1.55;
	padding: 0 0.3em;
	background-color: #b60101;
}
.sec_about .aboutList li .texts .text_en {
	font-size: 1.143rem;
	line-height: 1.5;
	padding-top: 0.6em;
	font-weight: 600;
}
.sectionIn {
	position: relative;
}
.bgp02 {
	position: relative;
}
.sec_about .bgs,
.bgp02 .bgs {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.bgp02 .bgs::before {
	content: "";
	display: table-cell;
	background: top right / 100% auto url("../img/hanagata_left.png") no-repeat;
	width: 398px;
	height: 1444px;
	position: absolute;
	top: 40px;
	right: 50%;
	transform: translateX(-560px);
}
.bgp02 .bgs::after {
	content: "";
	display: table-cell;
	background: top left / 100% auto url("../img/hanagata_right.png") no-repeat;
	width: 399px;
	height: 1428px;
	position: absolute;
	top: 60px;
	left: 50%;
	transform: translateX(560px);
}
.sec_ranking {
	position: relative;
	overflow: hidden;
	background-color: #000;
}
.bg_black {
	position: relative;
}
.bg_black .bgs {
	content:"";
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.bg_black .bgs::before {
	content: "";
	display: table-cell;
	background: left top / 100% auto url("../img/rankingbg_left.png") no-repeat;
	width: 607px;
	height: 890px;
	right: 50%;
	top: -293px;
	transform: translateX(-352px);
	position: absolute;
}
.bg_black .bgs::after {
	content: "";
	display: table-cell;
	background: left top / 100% auto url("../img/rankingbg_right.png") no-repeat;
	width: 471px;
	height: 619px;
	left: 50%;
	bottom: 0;
	transform: translateX(490px);
	position: absolute;
}
.sec_ranking .inner {
	position: relative;
}
.sec_ranking .inner::before {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/rankingbg_circle.png") no-repeat;
	width: 318px;
	height: 311px;
	position: absolute;
	left: 50%;
	top: 173px;
	transform: translateX(-50%);
}
.sec_ranking h2 {
	color:#FFF;
}
.sec_ranking .rankingList {
	position: relative;
	font-size: 0;
	vertical-align: top;
	padding-top: 27px;
}
.sec_ranking .rankingList li {
	width: calc((100% - 80px)/3);
	display: inline-block;
	vertical-align: top;
}
.sec_ranking .rankingList li.rank01 {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
}
.sec_ranking .rankingList li.rank02 {
	margin-right: calc((100% - 80px)/3 + 80px);
}
.sec_ranking .rankingList li.rank03 {
}
.sec_ranking .rankingList li .rank {
	text-align: center;
	font-size: 20px;
	color: #FFF;
}
.sec_ranking .rankingList li .rank .num {
	font-size: 30px;
}
.sec_ranking .rankingList li .img {
	text-align: center;
	padding: 10px 0;
}
.sec_ranking .rankingList li .texts h3 {
	color: #FFF;
	font-size: 1.7rem;
	text-align: center;
	margin-bottom: 1rem;
}
.sec_ranking .rankingList li .texts h3 .price {
	font-size: 0.6em;
	letter-spacing: 0;
}
.sec_ranking .rankingList li .texts .text_en {
	color: #9b9b9b;
	text-align: center;
	font-size: 16px;
	font-weight: 500;
}
.sec_ranking .rankingList li .texts .lead {
	font-size: 20px;
	font-weight: 600;
	line-height: 1.6;
	color: #FFF;
	text-align: center;
	padding-top: 0.6em;
	margin-bottom: 0.6em;
}
.sec_ranking .rankingList li .texts .desc {
	font-size: 16px;
	color: #FFF;
	text-align: center;
	line-height: 1.875;
}
@media screen and (min-width: 768px) and (max-width:1100px) {
	.sec_ranking .rankingList li {
		width: 32%;
		display: inline-block;
		vertical-align: top;
	}
	.sec_ranking .rankingList li.rank01 {
		position: absolute;
		left: 50%;
		top: 0;
		transform: translateX(-50%);
	}
	.sec_ranking .rankingList li.rank02 {
		margin-right: 34%;
	}
	.sec_ranking .rankingList li .texts h3 {
	}
	.sec_ranking .rankingList li .texts h3 .price {
		display: block;
		text-align: center;
		font-size: 0.5em;
		letter-spacing: 0;
		padding-top: 0.5em;
	}
	.sec_ranking .rankingList li .texts .text_en {
		font-size: 14px;
	}
	.sec_ranking .rankingList li .texts .lead {
		font-size: 18px;
	}
	.sec_ranking .rankingList li .texts .desc {
		font-size: 14px;
		color: #FFF;
		text-align: center;
		line-height: 1.875;
	}
}
@media screen and (max-width: 767px) {
	.sec_ranking .inner::before {
	  background: center / 100% auto url("../img/rankingbg_circle.png") no-repeat;
	  width: 65vw;
	  height: 65vw;
	  top: 25vw;
	  transform: translateX(-50%);
	}	
	.bg_black .bgs::before {
	  width: 62.3vw;
	  height: 87.22vw; /* 146% */
	  right: 50%;
	  top: -12vw;
	  transform: translateX(-8.5vw);
	}	
	.bg_black .bgs::after {
	  background: left bottom / 100% auto url("../img/rankingbg_right.png") no-repeat;
	  width: 48vw;
	  height: 63vw; /* 132% */
	  left: auto;
		right: 0;
	  top: auto;
		bottom: 0;
	  transform: translateX(0);
	}	
	.bgp02 .bgs::after {
	  width: 50vw;
	  height: 179vw; /* 358% */
	  top: 4vw;
	  left: 100%;
	  transform: translateX(-40vw);
	}
	.bgp02 .bgs::before {
	  width: 50vw;
	  height: 181.5vw; /* 363%*/
	  top: 4vw;
	  right: 65%;
	  transform: translateX(0);
	}	
	
	.sec_ranking .rankingList li {
		width: 100%;
		display: block;
		margin-bottom: 14.4vw;
	}
	.sec_ranking .rankingList li .rank {
	  font-size: 4vw;
	}	
	.sec_ranking .rankingList li .rank .num {
	  font-size: 5.3vw;
	}
	.sec_ranking .rank01 .num::before {
	  width: 3.6vw;
	  height: 2.8vw;
	  background: center / 100% auto url("../img/crown.png") no-repeat;
	  position: absolute;
	  top: -3.9vw;
	  left: 50%;
	  transform: translateX(-50%);
	}	
	.sec_ranking .rankingList li .img {
	  text-align: center;
	  padding: 2.6vw 0;
	}	
	.sec_ranking .rankingList li .img img {
		width: auto;
		height: 30vw;
	}
	.sec_ranking .rankingList li.rank01 {
		position: static;
		transform: translateX(0);
	}
	.sec_ranking .rankingList li.rank02 {
		margin-right: 0;
	}
	.sec_ranking .rankingList li .texts h3 .name {
		font-size: 4.53vw;
	}
	.sec_ranking .rankingList li .texts h3 .price {
		display: inline-block;
		font-size: 3.8vw;
		padding-top: 0;
	}
	.sec_ranking .rankingList li .texts .text_en {
		font-size: 3.8vw;
	}
	.sec_ranking .rankingList li .texts .lead {
		font-size: 4vw;
	}
	.sec_ranking .rankingList li .texts .desc {
		font-size: 3.8vw;
	}
}

.sec_ranking .notes {
	padding: 50px 0 94px;
}
.sec_ranking .notes p {
	font-size: 14px;
	text-align: center;
	color: #FFF;
	line-height: 1.8;
}
.sec_ranking .rank01 .num {
	position: relative;
}
.sec_ranking .rank01 .num::before {
	content: "";
	display: table-cell;
	width: 18px;
	height: 14px;
	background: center / 100% auto url("../img/crown.png") no-repeat;
	position: absolute;
	top: -14px;
	left: 50%;
	transform: translateX(-50%);
}
.sec_shop {
	background: left top / 1200px auto url("../img/location_bg.jpg") repeat;
	padding-bottom: 215px;
	position: relative;
}
@media screen and (min-width: 1921px) {
	.sec_shop::before {
		background: center bottom / auto 100% url("../img/fv_wave_repeat-x.png") repeat-x;
		position: absolute;
		left: 50%;
		bottom: -1px;
		transform: translateX(-50%);
	}
}
@media screen and (max-width: 1920px) {
	.sec_shop::before {
		content: "";
		display: block;
		width: 100%;
		min-width: 1920px;
		height: 183px;
		background: center bottom / auto 100% url("../img/wave_bg_white.png") no-repeat;
		position: absolute;
		left: 50%;
		bottom: -1px;
		transform: translateX(-50%);
	}
}
.sec_shop .shopSlide {
	margin-bottom: 25px;
}
.sec_shop .shopSlide li {
	width: 325px;
	border-radius: 20px;
	overflow: hidden;
	margin: 0 10px;
}
.shopSlide .slick-track {
    display: flex;
    align-items: center;
}

.shopSlide .slick-slide {
    flex-shrink: 0;
}

.sec_shop .shopSlide li a {
	display: block;
	position: relative;
}
.sec_shop .shopSlide li a::before {
	content: "";
	padding-top: 65%;
	display: block;
}
.sec_shop .shopSlide li a img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.sec_shop .inner {
	padding-top: 70px;
}
.sec_shop .slideBottom {
	text-align: center;
	line-height: 1.5;
}
.searchArea .searchBlock h3 {
	background-color: #000;
	display: block;
	line-height: 30px;
	font-size: 28px;
	color: #FFF;
	padding: 11px 50px 13px;
	position: relative;
	margin-bottom: 35px;
}
.searchArea .searchBlock h3.search_location::before {
	content: "";
	display: table-cell;
	background: center / auto 100% url("../img/icn_location.png") no-repeat;
	width: 32px;
	height: 32px;
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
}
.searchArea .searchBlock h3.search_area::before {
	content: "";
	display: table-cell;
	background: center / auto 100% url("../img/icn_map.png") no-repeat;
	width: 32px;
	height: 32px;
	position: absolute;
	left: 12px;
	top: 50%;
	transform: translateY(-50%);
}
.searchBlock {
	padding-bottom: 90px;
}
.searchBlock .areaList {
	font-size: 0;
}
.searchBlock .areaList li {
	display: inline-block;
	margin-right: 20px;
	margin-bottom: 20px;
}
.searchBlock .areaList li a {
	display: block;
	font-size: 16px;
	line-height: 32px;
	height: 36px;
	border: 1px solid #000;
	padding: 0 0.6em;
	background-color: #FFF;
}
.prefectureList .listWrap {
	margin-bottom: 20px;
	overflow-anchor: none;
}
.prefectureList .listWrap .listBody {
	display: none;
}
.prefectureList .listHead {
	position: relative;
}
.prefectureList .listHead:hover {
	cursor: pointer;
	opacity: 0.8;
}
.prefectureBox h4 .icn,
.prefectureList .listHead .icn {
	display: table-cell;
	width: 20px;
	height: 20px;
	position: absolute;
	right: 30px;
	top: 50%;
	transform: translateY(-50%);
}
.prefectureBox h4 .icn .border,
.prefectureList .listHead .icn .border {
	width: 20px;
	height: 3px;
	background-color: #000;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%) rotate(0);
	transition: 0.3s all ease;
}
.prefectureBox h4 .icn .border:nth-child(2),
.prefectureList .listHead .icn .border:nth-child(2) {
	transform: translateX(-50%) translateY(-50%) rotate(270deg);
}
.prefectureBox.open h4 .icn .border:nth-child(2),
.prefectureList .listWrap.open .listHead .icn .border:nth-child(2) {
	transform: translateX(-50%) translateY(-50%) rotate(0);
}
.prefectureList .listHead h4 {
	background-color: #FFF;
	font-size: 20px;
	color: #000;
	line-height: 20px;
	padding: 14px 100px 14px 53px;
	position: relative;
	border-top-left-radius: 10px;
	border-top-right-radius: 10px;
}
.prefectureList .listHead h4::before {
	content: "";
	display: table-cell;
	width: 13px;
	height: 13px;
	background-color: #000;
	position: absolute;
	top: 50%;
	left: 30px;
	transform: translateY(-50%);
	border-radius: 50%;
}
.prefectureList .listBody {
	background-color: #f3e6c1;
	padding: 26px 24px;
	border-bottom-left-radius: 10px;
	border-bottom-right-radius: 10px;
}
.prefectureList .shopList {
	font-size: 0;
}
.prefectureList .shopList li {
	display: inline-block;
	width: 25%;
	vertical-align: top;
	margin-bottom: 0.8em;
}
.prefectureList .shopList li a {
	display: block;
	padding: 0 1em;
	font-size: 14px;
	position: relative;
	line-height: 1.3;
}
.prefectureList .shopList li a::before {
	content: "・";
	position: absolute;
	left: 0;
	top: 0;
	font-size: inherit;
	line-height: inherit;
}
.sec_guideBnr {
	padding: 77px 0;
	padding-bottom: 120px;
}
.sec_guideBnr .inner a {
	display: block;
	width: 1100px;
	height: 280px;
	border: 1px solid #c2a884;
	border-radius: 20px;
	background-color: #fefae9;
	overflow: visible;
	margin: 0 auto;
	position: relative;
}
.sec_guideBnr .inner a .images {
	position: absolute;
	display: block;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.sec_guideBnr .inner a .images .left {
	display: table-cell;
	width: 353px;
	height: 100%;
	position: absolute;
	left: 0;
	top: 0;
	z-index: 2;
}
.sec_guideBnr .inner a .images .left::before {
	content: "";
	display: table-cell;
	width: 238px;
	height: 125px;
	background: right bottom / 246px auto url("../img/guideBnr_noren.png") no-repeat;
	position: absolute;
	left: -8px;
	top: -4px;
}
.sec_guideBnr .inner a .images .left::after {
	content: "";
	display: table-cell;
	width: 352px;
	height: 142px;
	background: right bottom / 100% auto url("../img/guideBnr_people.png") no-repeat;
	position: absolute;
	left: 0;
	bottom: 19px;
}
.sec_guideBnr .inner a .images .right {
	content: "";
	display: table-cell;
	width: 100%;
	height: 280px;
	background: right bottom / auto 100% url("../img/guideBnr_wave_pc.png") no-repeat;
	position: absolute;
	right: 0;
	top: 0;
	z-index: 1;
	overflow: hidden;
}
.sec_guideBnr .inner a .images .right::before {
	content: "";
	display: table-cell;
	width: 121px;
	height: 130px;
	background: center / 100% auto url("../img/guideBnr_fish.png") no-repeat;
	position: absolute;
	right: 76px;
	bottom: 24px;
}
.sec_guideBnr .texts {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
	height: auto;
	z-index: 3;
}
.sec_guideBnr .texts p {
	text-align: center;
}
.sec_guideBnr .texts p.text_small {
	font-size: 22px;
	margin-bottom: 0.3em;
}
.sec_guideBnr .texts p.text_big {
	font-size: 50px;
}
.sec_guideBnr .texts p.text_en_middle {
	font-size: 24px;
	font-weight: 700;
	padding-top: 0.5em;
	margin-bottom: 0.6em;
}
.sec_guideBnr .texts p.text_en_small {
	font-size: 16px;
	line-height: 1.8;
	font-weight: 500;
	margin-bottom: 0.6em;
}
.sec_guideBnr .texts .btn {
	text-align: center;
}
.sec_guideBnr .texts .btn .text {
	text-align: center;
	display: inline-block;
	font-size: 20px;
	line-height: 34px;
	height: 38px;
	background-color: #000;
	color: #FFF;
	padding: 0 2.2em 0 1em;
	position: relative;
}
.sec_guideBnr .texts .btn .text::before {
	content: "";
	display: table-cell;
	width: 7px;
	height: 16px;
	border-left: 7px solid #FFF;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	position: absolute;
	right: 12px;
	top: 50%;
	transform: translateY(-50%);
	box-sizing: border-box;
}
@media screen and (max-width: 1100px) {
	.sec_guideBnr .inner a {
	  width: 690px;
	  height: 716px;
	  border: 1px solid #c2a884;
	  border-radius: 12px;
	}
	.sec_guideBnr .inner a .images {
	  position: absolute;
	  display: block;
	  left: 0;
	  top: 0;
	  width: 100%;
	  height: 100%;
	}
	.sec_guideBnr .inner a .images .left {
	  display: table-cell;
	  width: 100%;
	  height: 100%;
	  position: absolute;
	  left: 0;
	  top: 0;
	  z-index: 2;
	}
	.sec_guideBnr .inner a .images .left::before {
	  width: 290px;
	  height: 148px;
	  background: right bottom / 290px auto url("../img/guideBnr_noren.png") no-repeat;
	  position: absolute;
	  left: -8px;
	  top: -4px;
	}	
	.sec_guideBnr .inner a .images .left::after {
	  width: 442px;
	  height: 178px;
	  background: right bottom / 100% auto url("../img/guideBnr_people_sp.png") no-repeat;
	  position: absolute;
	  left: auto;
		right: 0;
	  bottom: auto;
		top: 22px;
	}
	.sec_guideBnr .inner a .images .right {
	  height: 100%;
	  background: center bottom / 100% auto url("../img/guideBnr_wave_sp.png") no-repeat;
	  position: absolute;
	  right: 0;
	  top: auto;
		bottom: 0;
	  z-index: 1;
	}
	.sec_guideBnr .inner a .images .right::before {
		display: none;
	}
	.sec_guideBnr .texts {
	  position: absolute;
	  left: 0;
	  top: auto;
		bottom: 0;
	  transform: translateY(-60px);
	  width: 100%;
	  height: auto;
	  z-index: 3;
	}	
	.sec_guideBnr .texts p.text_small {
		font-size: 32px;
		margin-bottom: 0.3em;
	}
	.sec_guideBnr .texts p.text_big {
		font-size: 55px;
	}
	.sec_guideBnr .texts p.text_en_middle {
		font-size: 34px;
		font-weight: 700;
		padding-top: 0.5em;
		margin-bottom: 0.6em;
	}
	.sec_guideBnr .texts p.text_en_small {
		font-size: 28px;
		line-height: 1.8;
		font-weight: 500;
		margin-bottom: 43px;
	}
	.sec_guideBnr .texts .btn {
		text-align: center;
	}
	.sec_guideBnr .texts .btn .text {
		text-align: center;
		display: inline-block;
		font-size: 30px;
		line-height: 70px;
		height: 70px;
		background-color: #000;
		color: #FFF;
		padding: 0 2.2em 0 1em;
		position: relative;
	}
	.sec_guideBnr .texts .btn .text::before {
		width: 11px;
		height: 25px;
		border-left: 11px solid #FFF;
		border-top: 12.5px solid transparent;
		border-bottom: 12.5px solid transparent;
		right: 22px;
	}
}
@media screen and (max-width: 767px) {
	.sec_guideBnr {
	  padding: 10vw 0;
	}	
	
	.sec_guideBnr .inner a {
	  width: 92vw;
	  height: 95.4vw;
	  border-radius: 1.6vw;
	}
	.sec_guideBnr .inner a .images .left::before {
	  width: 38.6vw;
	  height: 19.7vw;
	  background: right bottom / 100% auto url("../img/guideBnr_noren.png") no-repeat;
	  position: absolute;
	  left: -1.5vw;
	  top: -2vw;
	}	
	.sec_guideBnr .inner a .images .left::after {
	  width: 58.9vw;
	  height: 23.7vw;
	  background: right bottom / 100% auto url("../img/guideBnr_people_sp.png") no-repeat;
		top: 3vw;
	}
	.sec_guideBnr .inner a .images .right {
	  height: 100%;
	  background: center bottom / 100% auto url("../img/guideBnr_wave_sp.png") no-repeat;
	  position: absolute;
	  right: 0;
	  top: auto;
		bottom: 0;
	  z-index: 1;
	}
	.sec_guideBnr .inner a .images .right::before {
		display: none;
	}
	.sec_guideBnr .texts {
	  position: absolute;
	  left: 0;
	  top: auto;
		bottom: 0;
	  transform: translateY(-7.7vw);
	  width: 100%;
	  height: auto;
	  z-index: 3;
	}	
	.sec_guideBnr .texts p.text_small {
		font-size: 4.3vw;
		margin-bottom: 0.3em;
	}
	.sec_guideBnr .texts p.text_big {
		font-size: 7.3vw;
	}
	.sec_guideBnr .texts p.text_en_middle {
		font-size: 4.5vw;
	}
	.sec_guideBnr .texts p.text_en_small {
		font-size: 3.7vw;
		margin-bottom: 5.7vw;
	}
	.sec_guideBnr .texts .btn .text {
		font-size: 4vw;
		line-height: 8.6vw;
		height: 9.3vw;
	}
	.sec_guideBnr .texts .btn .text::before {
		width: 1.46vw;
		height: 3.4vw;
		border-left: 1.46vw solid #FFF;
		border-top: 1.7vw solid transparent;
		border-bottom: 1.7vw solid transparent;
		right: 3vw;
	}
}


.sec_sushiSlider {
	position: relative;
}
.sec_sushiSlider::before {
	content: "";
	display: block;
	width: 100%;
	height: 55px;
	background-color: #000;
	position: absolute;
	left: 0;
	bottom: 0;
}
.sec_sushiSlider .sushiSlider {
	position: relative;
}
.sec_sushiSlider .sushiSlider .sushiSliderItem {
	width: 104px;
	vertical-align: bottom;
	position: relative;
	margin: 0 5px;
}
.sec_sushiSlider .sushiSlider .sushiSliderItem::before {
	content: "";
	display: block;
	padding-top: 70px;
}
.sec_sushiSlider .sushiSlider .sushiSliderItem img {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: auto;
}
@media screen and (max-width: 767px) {
	.sec_sushiSlider::before {
		height: 7.3vw;
	}
	.sec_sushiSlider .sushiSlider .sushiSliderItem {
		width: 12.6vw;
		margin: 0 1vw;
	}
	.sec_sushiSlider .sushiSlider .sushiSliderItem::before {
		padding-top: 9.3vw;
	}
}
.sec_sns {
	background: center top / cover url("../img/sec_sns_bg.jpg") no-repeat;
}
.sec_sns .text_jp {
	text-align: center;
	padding: 120px 0 250px;
}
.sec_sns .text_jp p {
  writing-mode: vertical-rl;
	font-size: 32px;
	color: #FFF;
	line-height: 2.0;
	margin: 0 auto;
	display: inline-block;
}
.sec_sns .text_jp p .big {
	font-size: 42px;
}
.sec_sns .text_en p {
	font-size: 22px;
	text-align: center;
	line-height: 1.8;
	color: #FFF;
}
.sec_sns .snsBnr {
	text-align: center;
	padding-top: 255px;
	padding-bottom: 100px;
}
.sec_sns .snsBnr .bnr {
	display: inline-block;
	border: 1px solid #c2a884;
	border-radius: 20px;
	background-color: #FFF;
}
.sec_sns .snsBnr .bnr .bnrIn {
	display: block;
	width: 1100px;
	height: 266px;
	background: center / auto 100% url("../img/snsBnr_bg.png") no-repeat;
}
.sec_sns .snsBnr .bnr h1 {
	font-size: 50px;
	text-align: center;
	margin-bottom: 34px;
	padding-top: 40px;
	line-height: 45px;
}
.sec_sns .snsBnr .bnr p {
	font-size: 16px;
	text-align: center;
	line-height: 1.5;
	margin-bottom: 36px;
}
.sec_sns .snsBnr .bnr .snsList {
	text-align: center;
}
.sec_sns .snsBnr .bnr .snsList li {
	display: inline-block;
	width: 50px;
	margin-right: 38px;
}
.sec_sns .snsBnr .bnr .snsList li:nth-last-child(1) {
	margin-right: 0;
}
.sec_sns .snsBnr .bnr .snsList li a {
	display: block;
}
@media screen and (min-width: 768px) and (max-width: 1100px) {
	.sec_sns .snsBnr .bnr {
		display: inline-block;
		border: 1px solid #c2a884;
		border-radius: 20px;
		background-color: #FFF;
	}
	.sec_sns .snsBnr .bnr .bnrIn {
		display: block;
		width: 92vw;
		height: 266px;
		background: center / auto 100% url("../img/snsBnr_bg.png") no-repeat;
	}
	.sec_sns .snsBnr .bnr h1 {
		font-size: 50px;
		text-align: center;
		margin-bottom: 28px;
		padding-top: 40px;
		line-height: 45px;
	}
	.sec_sns .snsBnr .bnr p {
		font-size: 16px;
		text-align: center;
		line-height: 1.5;
		margin-bottom: 28px;
	}
	.sec_sns .snsBnr .bnr .snsList {
		text-align: center;
	}
	.sec_sns .snsBnr .bnr .snsList li {
		display: inline-block;
		width: 50px;
		margin-right: 38px;
	}
	.sec_sns .snsBnr .bnr .snsList li:nth-last-child(1) {
		margin-right: 0;
	}
	.sec_sns .snsBnr .bnr .snsList li a {
		display: block;
	}
}
@media screen and (max-width: 767px) {
	.sec_sns .snsBnr .bnr {
		display: inline-block;
		border: 1px solid #c2a884;
		border-radius: 20px;
		background-color: #FFF;
	}
	.sec_sns .snsBnr .bnr .bnrIn {
		display: block;
		width: 92vw;
		height: 53vw;
		background: center / auto 100% url("../img/snsBnr_bg.png") no-repeat;
	}
	.sec_sns .snsBnr .bnr h1 {
		font-size: 7.3vw;
		text-align: center;
		margin-bottom: 0.6em;
		padding-top: 1em;
		line-height: 7vw;
	}
	.sec_sns .snsBnr .bnr p {
		font-size: 3.8vw;
		text-align: center;
		line-height: 1.5;
		margin-bottom: 1em;
	}
	.sec_sns .snsBnr .bnr .snsList {
		text-align: center;
	}
	.sec_sns .snsBnr .bnr .snsList li {
		display: inline-block;
		width: 11vw;
		margin-right: 9vw;
	}
	.sec_sns .snsBnr .bnr .snsList li:nth-last-child(1) {
		margin-right: 0;
	}
	.sec_sns .snsBnr .bnr .snsList li a {
		display: block;
	}
	.sec_sns .snsBnr .bnr .snsList li a img {
		width: 11vw;
		height: auto;
	}
}

.sec_recruit {
	position: relative;
}
.sec_recruit .inner {
	position: relative;
}
.sec_recruit .inner::before {
	content: "";
	display: table-cell;
	background: center/ 100% auto url("../img/recruit_img.png") no-repeat;
	width: 544px;
	height: 538px;
	position: absolute;
	right: 0;
	top: 100px;
}
.sec_recruit .inner .texts {
	padding-top: 140px;
	padding-bottom: 290px;
	position: relative;
}
.sec_recruit .inner .text_small {
	font-size: 22px;
	margin-bottom: 0.6em;
}
.sec_recruit .inner h2 {
	font-size: 50px;
	line-height: 1.5;
	margin-bottom: 0.6em;
}
.sec_recruit .inner .desc {
	font-size: 16px;
	line-height: 1.8;
	margin-bottom: 4.6em;
}
.sec_recruit .inner .btn_black {
	text-align: left;
}
.sec_recruit .inner .btn_black a {
	background-color: #000;
	width: 400px;
	height: 80px;
	display: block;
	position: relative;
}
.sec_recruit .inner .btn_black a .text {
	display: block;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
}
.sec_recruit .inner .btn_black a .text_jp {
	font-size: 20px;
	color: #FFF;
	display: block;
	text-align: center;
}
.sec_recruit .inner .btn_black a .text_en {
	font-size: 18px;
	color: #FFF;
	display: block;
	text-align: center;
	padding-top: 0.5em;
}
.sec_recruit .bgs {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}
.sec_recruit .bgs .left {
	content: "";
	display: table-cell;
	position: absolute;
	right: 50%;
	bottom: 0;
	background: center bottom / auto 100% url("../img/recruit_bg_left.jpg") no-repeat;
	transform: translateX(-550px);
	width: 513px;
	height: 649px;
}
.sec_recruit .bgs .right {
	content: "";
	display: table-cell;
	width: 1059px;
	height: 649px;
	position: absolute;
	left: 50%;
	bottom: 0;
	background: center bottom / auto 100% url("../img/recruit_bg_right.jpg") no-repeat;
	transform: translateX(-40px);
}
@media screen and (min-width: 1921px) {
	.sec_recruit .bgs::after {
		content: "";
		display: block;
		width: 100%;
		min-width: 1920px;
		height: 183px;		
		background: center bottom / auto 100% url("../img/fv_wave_repeat-x.png") repeat-x;
		position: absolute;
		left: 50%;
		bottom: -1px;
		transform: translateX(-50%);
	}
}
@media screen and (max-width: 1920px) {
	.sec_recruit .bgs::after {
		content: "";
		display: block;
		width: 100%;
		min-width: 1920px;
		height: 183px;
		background: center bottom / auto 100% url("../img/wave_bg_white.png") no-repeat;
		position: absolute;
		left: 50%;
		bottom: -1px;
		transform: translateX(-50%);
	}
}
.sec_recruit .bgs .right::after {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/guideBnr_fish.png") no-repeat;
	width: 121px;
	height: 130px;
	position: absolute;
	left: 633px;
	bottom: 160px;
}
@media screen and (min-width: 768px) and (max-width: 1100px) {
	.sec_recruit .inner::before {
	  content: "";
	  display: table-cell;
	  background: center/ 100% auto url("../img/recruit_img.png") no-repeat;
	  width: 48vw;
	  height: 48vw;
	  position: absolute;
	  right: 0;
	  top: 100px;
	}
	.sec_recruit .bgs {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
	}
	.sec_recruit .bgs .left {
		right: auto;
		left: 0;
		bottom: 0;
		background: left bottom / auto 100% url("../img/recruit_bg_left.png") no-repeat;
		transform: translateX(-30%);
	}
	.sec_recruit .bgs .right {
		left: auto;
		right: -200px;
		bottom: 0;
		background: right bottom / auto 100% url("../img/recruit_bg_right.png") no-repeat;
		transform: translateX(0);
	}
	.sec_recruit .bgs::after {
		content: "";
		display: block;
		width: 100%;
		height: 186px;
		background: center bottom / auto 100% url("../img/fv_wave.png") no-repeat;
		position: absolute;
		left: 50%;
		bottom: 0;
		transform: translateX(-50%);
	}
	.sec_recruit .bgs .right::after {
		content: "";
		display: table-cell;
		background: center / 100% auto url("../img/guideBnr_fish.png") no-repeat;
		width: 121px;
		height: 130px;
		position: absolute;
		left: 633px;
		bottom: 160px;
	}
}
@media screen and (max-width: 767px) {
	.sec_recruit {
		position: relative;
	}
	.sec_recruit .inner {
		position: relative;
		padding-top: 86.5vw;
	}
	.sec_recruit .inner::before {
		background: center/ 100% auto url("../img/recruit_img.png") no-repeat;
		width: 74vw;
		height: 74vw;
		position: absolute;
		left: 50%;
		top: 10vw;
		transform: translateX(-50%);
	}
	.sec_recruit .inner .texts {
		padding-top: 0;
		position: relative;
	}
	.sec_recruit .inner .text_small {
		font-size: 4.3vw;
		margin-bottom: 0.6em;
	}
	.sec_recruit .inner h2 {
		font-size: 7.0vw;
		line-height: 1.5;
		margin-bottom: 0.6em;
		letter-spacing: 0;
	}
	.sec_recruit .inner .desc {
		font-size: 3.8vw;
		line-height: 1.8;
		margin-bottom: 2em;
		letter-spacing: 0;
	}
	.sec_recruit .inner .btn_black {
		text-align: center;
	}
	.sec_recruit .inner .btn_black a {
		background-color: #000;
		width: 100%;
		height: 14.6vw;
	}
	.sec_recruit .inner .btn_black a .text {
		display: block;
		position: absolute;
		left: 0;
		top: 50%;
		transform: translateY(-50%);
		width: 100%;
	}
	.sec_recruit .inner .btn_black a .text_jp {
		font-size: 4vw;
		color: #FFF;
		display: block;
		text-align: center;
	}
	.sec_recruit .inner .btn_black a .text_en {
		font-size: 3.8vw;
		color: #FFF;
		display: block;
		text-align: center;
		padding-top: 0.2em;
	}
	.sec_recruit .bgs {
		position: absolute;
		left: 0;
		top: 0;
		width: 100%;
		height: 100%;
		background: center bottom / 100% auto url("../img/recruit_bg_sp.jpg") no-repeat;
	}
	.sec_recruit .bgs .left,
	.sec_recruit .bgs .right,
	.sec_recruit .bgs .right::after
	{
		display: none;
	}
	.sec_recruit .bgs::after {
		content: "";
		display: block;
		background: center bottom / 100% auto url("../img/fv_wave_sp.png") repeat;
		position: absolute;
		left: 0;
		bottom: 0;
		transform: translateX(0);
		width: 100%;
		min-width: 0;
		height: 25vw;
	}
}


.sec_bottom {
	background: center top / cover url("../img/bottom_bg.jpg") no-repeat;
	padding-top: 24px;
	padding-bottom: 122px;
	position: relative;
}
.sec_bottom .inner {
	position: relative;
}
@media screen and (min-width: 1921px) {
	.sec_bottom::before {
		content: "";
		display: block;
		background: center / auto 100% url("../img/wave_blackbg_repeatx.png") repeat-x;
		width: 100%;
		height: 75px;
		position: absolute;
		left: 50%;
		bottom: 0;
		transform: translateX(-50%);
	}
}
@media screen and (max-width: 1920px) {
	.sec_bottom::before {
		content: "";
		display: block;
		background: center / auto 100% url("../img/wave_blackbg.png") no-repeat;
		width: 100%;
		height: 75px;
		position: absolute;
		left: 50%;
		bottom: 0;
		transform: translateX(-50%);
	}
}
.sec_bottom .vtext {
	padding-bottom: 115px;
	text-align: center;
	position: relative;
}
.sec_bottom .vtext::before {
	content: "";
	display: table-cell;
	background: center / cover url("../img/logostamp.png") no-repeat;
	width: 115px;
	height: 115px;
	position: absolute;
	left: 50%;
	bottom: 25px;
	transform-origin: 50%;
	transform: translateX(135px) rotate(20deg);
}
.sec_bottom .vtext p {
  writing-mode: vertical-rl;
  font-size: 55px;
  line-height: 1.63;
  margin: 0 auto;
  display: inline-block;
}
.sec_bottom .bottomPart {
}
.sec_bottom .bottomPart p {
	font-size: 16px;
	line-height: 1.5;
	text-align: center;
	margin-bottom: 1.5em;
}
@media screen and (max-width: 767px) {
	.sec_fv {
	  min-height: 0;
	}	
	.sec_fv .bgArea {
	  min-height: 0;
	}	
	.sec_fv h1 > span.text_small {
	  font-size: 5vw;
	}	
	.sec_fv h1 > span.text_big {
	  font-size: 12vw;
	}
	.sec_fv h1 {
	  padding-bottom: 33vw;
	  background: center bottom / 17.7vw auto url("../img/logo_en_white.png") no-repeat;
	  margin-bottom: 25.3vw;
	}
	.sec_fv::after {
		width: 100%;
	  min-width: 0;
	  height: 25.3vw;
	  background: center bottom / 100% auto url("../img/fv_wave_sp.png") no-repeat;
	  position: absolute;
	  left: 0;
	  bottom: 0;
	}
	.sec_recommend {
	  padding-bottom: 12.6vw;
	}	
	.sec_recommend .secHead {
	  padding: 3.5vw 0 4vw;
	}	
	.secHead h2 .text_jp .text_small {
	  font-size: 4.3vw;
	}	
	.secHead h2 .text_jp .text_big {
	  font-size: 6.4vw;
	}	
	.page_guide .guideMessage .secHead h2 .text_jp .text_big {
	  font-size: 6.2vw;
		letter-spacing: 0;
	}	
	.sec_about .secHead h2 .text_jp .text_big {
	  font-size: 7.3vw;
	}	
	.secHead h2 .text_en {
	  font-size: 4.53vw;
	}
	.recommendList li {
	  width: 58vw;
	  margin: 0 4vw;
	}	
	.recommendList li a .img {
	  width: 58vw;
	  height: 44vw;
	  border-radius: 2.6vw;
	}	
	.recommendList li .text {
	  font-size: 4vw;
	  padding-top: 0.4em;
	}
	.recommendList.slick-dotted.slick-slider {
	  margin-bottom: 8.6vw;
	}
	.recommendList .slick-dots {
	  bottom: -8.6vw;
	}	
	.recommendList .slick-dots li {
	  width: 2.6vw;
	  height: 2.6vw;
	  margin: 0 2.6vw;
	}
	.recommendList .slick-dots li button {
	  width: 2.6vw;
	  height: 2.6vw;
	}	
	.sec.sec_recommend .note {
	  padding-top: 5.3vw;
	}	
	.sec .note {
	  font-size: 3.2vw;
	}	
	.secHead {
	  padding: 10vw 0 6.6vw;
	}
	.sec_news .newsList li {
	  padding-bottom: 6.6vw;
	}
	.sec_news .newsList li .img {
	  border-radius: 2.6vw;
	  overflow: hidden;
	  margin-bottom: 2vw;
	}	
	.sec_news .newsList li .texts .info time {
	  font-size: 3.4vw;
	  line-height: 5.5vw;
		padding-right: 0.5em;
	}	
	.sec_news .newsList li .texts .info .cat {
	  font-size: 3.8vw;
	  line-height: 5.5vw;
	}
	.sec_news .newsList li .texts .info .cat .catIn {
	  font-size: 3.4vw;
	  line-height: 5.5vw;
		padding: 0 0.3em;
	}	
	.sec_news .newsList li .texts .title {
	  font-size: 4vw;
	}
	.sec_news .newsList {
	  margin-bottom: 4vw;
	}	
	.btn.btn_black a {
	  width: 92vw;
	  height: 14.6vw;
	  line-height: 10.6vw;
	  font-size: 4vw;
	}
	.btn.btn_black a .text .text_en {
	  font-size: 3.8vw;
	}
	.sec_news {
	  padding-bottom: 38.66vw;
	}	
	.sec_about .aboutList li {
	  display: block;
		width: 100%;
	  margin-right: 0;
	  padding-bottom: 12vw;
	}
	.sec_about h2 {
	  margin-bottom: 4.6vw;
	}	
	.sec_about .lead {
	  font-size: 4vw;
	}
	.sec_about .aboutList li .texts h3 {
	  line-height: 5vw;
	}	
	
	.sec_about .aboutList li .img {
	  border-radius: 2.66vw;
	}	
	.sec_about .aboutList li .texts h3 .red {
	  font-size: 4.3vw;
	}	
	.sec_about .aboutList li .texts {
	  padding-top: 64%;
	}	
	.sec_about .aboutList li .texts .text_en {
	  font-size: 3.8vw;
	}
	.sec_ranking .notes {
	  padding: 0 4vw 12vw;
	}
	.sec_ranking .notes p {
	  font-size: 3.4vw;
	}
	.sec_shop .shopSlide li {
	  width: 74vw;
	  border-radius: 3vw;
	  margin: 0 4vw;
	}
	.sec_shop .shopSlide li a::before {
	  padding-top: 65%;
	}
	.sec_shop .slideBottom {
		font-size: 3.4vw;
		line-height: 1.8;
	}
	.sec_shop {
	  background: center top / 120vw auto url("../img/location_bg.jpg") repeat;
	  padding-bottom: 38vw;
	  position: relative;
	}	
	.sec_shop .shopSlide {
	  margin-bottom: 7vw;
	}
	.sec_shop .inner {
	  padding-top: 11vw;
	}	
	.sec_shop .inner .searchArea {
		width: 100%;
	}
	.searchArea .searchBlock h3 {
	  line-height: 8.5vw;
	  font-size: 5vw;
	  padding: 0 4vw 0.1em 9.8vw;
	  margin-bottom: 2.6vw;
	}	
	.searchArea .searchBlock h3.search_location::before {
	  width: 4.6vw;
	  height: 4.6vw;
	  left: 3vw;
	}
	.searchBlock .areaList li {
	  margin-right: 2.6vw;
	  margin-bottom: 2.6vw;
	}
	.searchBlock .areaList li a {
	  font-size: 3.8vw;
	  line-height: calc(7.2vw - 2px);
	  height:7.2vw;
	}	
	.searchBlock {
	  padding-bottom: 8vw;
	}	
	.searchArea .searchBlock h3.search_area::before {
	  width: 5vw;
	  height: 5vw;
	  position: absolute;
	  left: 3vw;
	  top: 50%;
	  transform: translateY(-50%);
	}
	.prefectureList .listHead h4 {
	  font-size: 4vw;
	  line-height: 3.8vw;
	  padding: 2.5vw 4vw 2.5vw 8vw;
	  position: relative;
	  border-top-left-radius: 1.3vw;
	  border-top-right-radius: 1.3vw;
	}
	.prefectureList .listHead h4::before {
	  width: 1.8vw;
	  height: 1.8vw;
	  left: 4.2vw;
	  transform: translateY(-50%);
	  border-radius: 50%;
	}
	.prefectureBox h4 .icn,
	.prefectureList .listHead .icn {
	  width: 2.6vw;
	  height: 2.6vw;
	  right: 3.5vw;
	  top: 50%;
	  transform: translateY(-50%);
	}	
	.prefectureBox h4 .icn .border,
	.prefectureList .listHead .icn .border {
	  width: 2.6vw;
	  height: 0.4vw;
	}
	.prefectureList .listWrap {
	  margin-bottom: 3vw;
	}
	.prefectureList .listBody {
	  background-color: #f3e6c1;
	  padding: 4vw;
	  border-bottom-left-radius: 1.3vw;
	  border-bottom-right-radius: 1.3vw;
	}
	.prefectureList .shopList li {
	  width: 50%;
	}	
	.prefectureList .shopList li a {
	  padding: 0 1em;
	  font-size: 3.8vw;
	}	
	.sec_shop::before {
		content: "";
		display: block;
		background: center bottom / 100% auto url("../img/fv_wave_sp.png") repeat;
		position: absolute;
		left: 0;
		bottom: 0;
		transform: translateX(0);
		width: 100%;
		min-width: 0;
		height: 25vw;
	}
	.sec_sns .text_jp {
	  text-align: center;
	  padding: 26.4vw 0 36vw;
	}	
	.sec_sns .text_jp p {
	  font-size: 5.3vw;
	}	
	.sec_sns .text_jp p .big {
	  font-size: 6.4vw;
	}	
	.sec_sns .text_en p {
	  font-size: 4.3vw;
	}	
	.sec_sns .snsBnr {
	  padding-top: 28.6vw;
	  padding-bottom: 12.8vw;
	}
	
	.sec_bottom {
		background: center top / cover url("../img/bottom_bg_sp.jpg") no-repeat;
		padding-top: 5.3vw;
		padding-bottom: 24.5vw;
	}
	.sec_bottom .inner {
		position: relative;
	}
	.sec_bottom::before {
		content: "";
		display: block;
		background: center bottom / 100% auto url("../img/bottom_wave_black_sp.png") no-repeat;
		width: 100%;
		height: 9.3vw;
		position: absolute;
		left: 0;
		bottom: 0;
		transform: translateX(0);
	}
	.sec_bottom .vtext {
		padding-bottom: 17vw;
	}
	.sec_bottom .vtext::before {
		content: "";
		display: table-cell;
		background: center / cover url("../img/logostamp.png") no-repeat;
		width: 16vw;
		height: 16vw;
		position: absolute;
		left: 50%;
		bottom: 4vw;
		transform-origin: 50%;
		transform: translateX(17vw) rotate(20deg);
	}
	.sec_bottom .vtext p {
	  font-size: 7.3vw;
	}
	.sec_bottom .bottomPart p {
		font-size: 3.8vw;
	}
}
@media screen and (min-width: 768px) {
	.home.wrap {
		padding-top: 0;
	}
	.wrap {
		padding-top: 80px;
	}
}
@media screen and (max-width: 767px) {
	.wrap {
		padding-top: 13vw;
	}
}
.home.wrap {
	padding-top: 0;
}
.wrap main {
	position: relative;
}
.wrap main .pageHead {
	position: relative;
}
.pageHead {
	width: 100%;
	height: 503px;
}
.pageHead .bg {
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	background-size: auto 100%;
	background-position: right center;
	background-repeat: no-repeat;
	background-color: #555555;
}
.shopPage .pageHead .bg
{
	background-image: url("../img/pageHead_shop.jpg");
	background-color: #FFF;
	left: 50%;
	transform: translateX(-50%);
	background-position: center center;
}
.single .pageHead .bg,
.category .pageHead .bg
{
	background-image: url("../img/pageHead_single.jpg");
	background-color: #f9fafe;
}
.page_about .pageHead .bg {
	background-image: url("../img/pageHead_page_company.jpg");
	background-position: center;
}
.page_guide .pageHead .bg {
	background-image: url("../img/pageHead_guide.jpg");
	background-color: #FFF;
	background-position: right bottom;
}
@media screen and (min-width: 768px) {
	.single .pageHead .bg {
		background-image: url("../img/pageHead_single.jpg");
	}
	.category .pageHead .bg {
		background-image: url("../img/pageHead_single.jpg");
	}
	
}
@media screen and (max-width: 767px) {
	.pageHead {
		width: 100%;
		height: 70vw;
	}
	.single .pageHead .bg {
		background-image: url("../img/pageHead_single_sp.jpg");
	}
	.category .pageHead .bg {
		background-image: url("../img/pageHead_single_sp.jpg");
	}
	.page_about .pageHead .bg {
		background-image: url("../img/pageHead_page_company_sp.jpg");
	}
	.shopPage .pageHead .bg
	{
		background-image: url("../img/pageHead_shop_sp.jpg");
	}
	
}
.pageHead .texts {
	display: block;
	width: 94%;
	max-width: 1400px;
	height: auto;
	position: absolute;
	left: 50%;
	top: 128px;
	transform: translateX(-50%);
}
.pageHead .texts .text_jp {
	font-size: 55px;
	display: block;
}
.pageHead .texts .text_jp.small {
	font-size: 24px;
	display: block;
}
.pageHead .texts .text_en {
	font-size: 24px;
	line-height: 2.0;
	display: block;
	padding-left: 0.15em;
}
@media screen and (max-width: 767px) {
	.pageHead .texts {
		display: block;
		width: 94%;
		max-width: 1400px;
		height: auto;
		position: absolute;
		left: 50%;
		top: 17vw;
		transform: translateX(-50%);
	}
	.pageHead .texts .text_jp {
		font-size: 7.3vw;
	}
	.pageHead .texts .text_en {
		font-size: 4.5vw;
	}
}

.breadCrumbs {
	font-size: 0;
	width: 92vw;
	max-width: 1400px;
	margin: 0 auto;
	transform: translateY(-84px);
}
.breadCrumbs li {
	display: inline-block;
	vertical-align: top;
}
.breadCrumbs li::after {
	content: ">";
	padding: 0 0.3em;
	font-size: 16px;
	line-height: 1.3;
}
.breadCrumbs li:nth-last-child(1)::after {
	display: none;
}
.breadCrumbs li a {
	font-size: 16px;
	line-height: 1.3;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
}
.breadCrumbs li span {
	font-size: 16px;
	line-height: 1.3;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
  font-style: normal;
}
.pages .contWrap {
	position: relative;
	padding-bottom: 250px;
}
.pages.shopPage.shopSingle .contWrap {
	padding-bottom: 0;
}
.pages.shopPage.shopSingle .contWrap {
	padding-top: 60px;
}
.pages.shopPage.archive .contWrap {
	padding-bottom: 250px;
}

.pages.page_about .contWrap {
	padding-bottom: 0;
}
.pages .contWrap::after {
	content: "";
	display: block;
}
.pages .contWrap .contWrapIn {
	width: 92vw;
	max-width: 1100px;
	margin: 0 auto 100px;
	position: relative;
}
.pages.shopPage .contWrap .contWrapIn {
	margin-bottom: 0;
}
@media screen and (min-width: 768px) {
	.pages.category .contWrap .contWrapIn,
	.pages.single .contWrap .contWrapIn {
		padding-right: 400px;
		margin-top: 30px;
	}
	.pages.category .contWrap .contWrapIn .left,
	.pages.single .contWrap .contWrapIn .left {
		min-height: 600px;
		padding-bottom: 280px;
	}
}

.pages.page_about .contWrap .contWrapIn {
	padding-top: 50px;
	margin-bottom: 0;
}
.pages .contWrap .sideBar {
	position: absolute;
	right: 0;
	top: 0;
	display: block;
	width: 355px;
	background-color: #f3efe9;
	border: 1px solid #a0a0a0;
	padding: 0 30px 30px;
}
.sideBar h3 {
	font-size: 24px;
	text-align: center;
	font-weight: 600;
	line-height: 3.0;
}
.sideBar ul {
	border-top: 1px solid #a0a0a0;
}
.sideBar li {
	border-bottom: 1px solid #a0a0a0;
}
.sideBar li a {
	font-size: 20px;
	display: block;
	padding: 0.8em 0;
}
.singleHead .info {
	margin-bottom: 15px;
}
.singleHead .info p {
	vertical-align: top;
}
.singleHead .info p .time {
	font-size: 16px;
	line-height: 26px;
	padding-right: 1em;
	display: inline-block;
}
.singleHead .info p .cat {
	display: inline-block;
}
.singleHead .info p .cat .catIn {
	font-size: 15px;
	line-height: 26px;
	padding: 0 1em;
	color: #FFF;
	display: block;
}
.single .title h1 {
	font-size: 28px;
	font-weight: bold;
	line-height: 1.3;
	border-bottom: 1px solid #a0a0a0;
	padding-bottom: 10px;
}
.singleCont {
	padding: 30px 0 60px;
}
.singleCont h2 {
	font-size: 22px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 1em;
  font-family: "Zen Kaku Gothic New", sans-serif;
	
}
.singleCont h3 {
	font-size: 18px;
	font-weight: bold;
	line-height: 1.5;
	margin-bottom: 1em;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.singleCont p {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.8;
	margin-bottom: 1em;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.singleCont figure {
	padding: 15px 0;
}
.singleCont table {
	border-top: 1px solid #000;
	border-left: 1px solid #000;
}
.singleCont table th {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.3;
	padding: 0.8em 1em;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	background-color: rgba(255,254,187,1.00);
	vertical-align: middle;
}
.singleCont table td {
	font-size: 16px;
	line-height: 1.3;
	padding: 0.8em 1.5em;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	background-color: #FFF;
}
.singleBottomLink {
	text-align: center;
}
.singleBottomLink .btn {
	display: inline-block;
}
.singleBottomLink .btn a {
	display: block;
	width: 400px;
	height: 80px;
	position: relative;
	background-color: #000;
}
.singleBottomLink .btn a .text {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 100%;
}
.singleBottomLink .btn a .text .text_jp {
	display: block;
	text-align: center;
	font-size: 20px;
	color: #FFF;
}
.singleBottomLink .btn a .text .text_en {
	display: block;
	text-align: center;
	font-size: 18px;
	line-height: 1.5;
	color: #FFF;
}
@media screen and (min-width: 767px) and (max-width: 1100px){
	.pages .contWrap .contWrapIn {
		margin: 100px auto;
	}
	.pages.single .contWrap .contWrapIn,
	.pages.category .contWrap .contWrapIn {
		padding-right: 34vw;
	}
	.pages .contWrap .sideBar {
		width: 30vw;
		padding: 0 20px 20px;
	}
	.sideBar h3 {
		font-size: 20px;
	}
	.sideBar li a {
		font-size: 16px;
	}
}
@media screen and (max-width: 767px) {
	.breadCrumbs {
		display: none;
	}
	.pages .contWrap {
	  position: relative;
	  padding-bottom: 34.6vw;
	}	
	.page_guide.pages .contWrap {
	  padding-bottom: 34.6vw;
		padding-top: 6.6vw;
	}	
	.pages .contWrap .contWrapIn {
		margin: 0 auto;
		padding-right: 0;
	}
	.pages.single .contWrap .contWrapIn {
		margin: 0 auto;
		padding-right: 0;
	}
	.pages .contWrap .sideBar {
		width: 100%;
		padding: 0 4vw 4vw;
		position: static;
		margin-top: 10vw;
	}	
	.singleHead .info {
	  margin-bottom: 2vw;
	}	
	.singleHead .info p .time {
	  font-size: 3.8vw;
	  line-height: 5.3vw;
	}	
	.singleHead .info p .cat .catIn {
	  font-size: 3.8vw;
	  line-height: 5.3vw;
	  padding: 0 0.5em;
	}	
	.single .title h1 {
	  font-size: 5vw;
	  padding-bottom: 2vw;
	}	
	.singleCont {
	  padding: 4vw 0 10vw;
	}	
	.singleCont h2 {
	  font-size: 5vw;
	}	
	.singleCont h3 {
	  font-size: 4.4vw;
	}
	.singleCont p {
	  font-size: 3.8vw;
	}	
	.singleBottomLink .btn{
		display: block;
	}
	.singleBottomLink .btn a {
	  width: 100%;
		height: auto;
		display: block;
	}
	.singleBottomLink .btn a .text {
		height: auto;
		display: block;
		text-align: center;
		position: static;
		transform: translateX(0) translateY(0);
		padding: 4vw 0;
	}	
	.singleBottomLink .btn a .text .text_jp {
	  display: block;
	  text-align: center;
	  font-size: 4vw;
	}	
	.singleBottomLink .btn a .text .text_en {
	  display: block;
	  text-align: center;
	  font-size: 3.8vw;
	}
	.sideBar h3 {
	  font-size: 4.5vw;
	}	
	.sideBar li a {
	  font-size: 4vw;
	}
	.singleCont figure {
		padding: 4vw 0;
	}
	
}
.postList {
	border-top: 1px solid #a0a0a0;
}
.postList .postItem {
	border-bottom: 1px solid #a0a0a0;
}
.postList .postItem a {
	display: block;
	padding: 22px 0;
	position: relative;
}
.postList .postItem a::after {
	content: "";
	display: table-cell;
	width: 12px;
	height: 32px;
	border-left : 12px solid #000;
	border-top: 16px solid transparent;
	border-bottom: 16px solid transparent;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateY(-50%);
	box-sizing: border-box;
}
.postList .postItem a .info {
	display: block;
	vertical-align: top;
	margin-bottom: 8px;
}
.postList .postItem a .info time {
	font-size: 16px;
	line-height: 26px;
	vertical-align: top;
	padding-right: 1em;
}
.postList .postItem a .info .cat {
	display: inline-block;
}
.postList .postItem a .info .cat .catIn {
	font-size: 16px;
	line-height: 26px;
	display: block;
	padding: 0 1em;
	color: #FFF;
}
.postList .postItem a .title {
	display: block;
	font-size: 20px;
	line-height: 1.5;
}
.pagenation {
	padding-top: 100px;
}
.pagenation ul {
	text-align: center;
	font-size: 0;
}
.pagenation ul li {
	display: inline-block;
	vertical-align: top;
	margin-right: 20px;
}
.pagenation ul li:nth-last-child(1) {
	margin-right: 0;
}
.pagenation ul li a {
	display: block;
	text-align: center;
	width: 40px;
	height: 40px;
	line-height: 40px;
	background-color: #f2f2f2;
  font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 20px;
}
.pagenation ul li span {
	display: block;
	text-align: center;
	width: 40px;
	height: 40px;
	line-height: 40px;
	background-color: #000;
	color: #FFF;
  font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 20px;
}
@media screen and (max-width: 767px) {
	.postList .postItem a {
		padding: 3vw 0;
	}
	.postList .postItem a::after {
		content: "";
		display: table-cell;
		width: 1.6vw;
		height: 4.4vw;
		border-left : 1.6vw solid #000;
		border-top: 2.2vw solid transparent;
		border-bottom: 2.2vw solid transparent;
		right: 3vw;
	}
	.postList .postItem a .info {
		margin-bottom: 1vw;
	}
	.postList .postItem a .info time {
		font-size: 3.8vw;
		line-height: 5.3vw;
		vertical-align: top;
		padding-right: 1em;
	}
	.postList .postItem a .info .cat .catIn {
		font-size: 3.8vw;
		line-height: 5.3vw;
		padding: 0 1em;
	}
	.postList .postItem a .title {
		font-size: 4vw;
	}
}
.companyNav {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	display: table;
	border-left: 1px solid #000;
	position: relative;
}
.companyNav ul {
	display: table-row;
}
.companyNav ul li {
	display: table-cell;
	width: 33.3%;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	border-top: 1px solid #000;
	vertical-align: top;
	background-color: #FFF;
}
.guideFAQ .companyNav ul li {
	border-top: none;
}
.guideFAQ .companyNav ul:nth-last-child(1) li:nth-last-child(1) {
	border:none;
}
.guideFAQ .companyNav ul:nth-child(1) li {
	border-top: 1px solid #000;
}
.companyNav ul li:hover {
	background-color: #000;
}
.companyNav ul li a {
	display: block;
	vertical-align: middle;
	text-align: center;
}
.companyNav ul li a:hover {
	opacity: 1.0;
}
.companyNav ul li a .text_jp {
	display: block;
	text-align: center;
	font-size: 20px;
	padding: 0.8em 0 0.1em;
}
.companyNav ul li a .text_jp span {
	position: relative;
	padding-right: 25px;
}
.companyNav ul li a .text_jp span::after {
	position: absolute;
	content: "";
	display: table-cell;
	width: 15px;
	height: 12px;
	border-top: 12px solid #000;
	border-left: 7.5px solid transparent;
	border-right: 7.5px solid transparent;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	box-sizing: border-box;
}
.companyNav ul li:hover a .text_jp,
.companyNav ul li:hover a .text_en {
	color: #FFF;
}
.companyNav ul li:hover a .text_jp span::after {
	border-top-color: #FFF;
}
.companyNav ul li a .text_en {
	display: block;
	text-align: center;
	font-size: 18px;
	padding-bottom: 0.8em;
}
@media screen and (max-width:900px) {
	.companyNav ul li a .text_jp {
		font-size: 16px;
	}
	.companyNav ul li a .text_jp span {
		position: relative;
		padding-right: 20px;
	}
	.companyNav ul li a .text_jp span::after {
		right: 0;
		top: 50%;
		transform: translateY(-50%) scale(80%);
		transform-origin: 50%;
	}
	.companyNav ul li a .text_en {
		font-size: 16px;
	}
}
.page_about .companyMessage {
	padding-top: 100px;
	padding-bottom: 90px;
}
.page_about .companyMessage .texts {
	padding-top: 60px;
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
}
.page_about .companyMessage h2 {
	text-align: center;
	font-size: 50px;
	line-height: 1.4;
}
.page_about .companyMessage p {
	font-size: 16px;
	line-height: 1.875;
	margin-bottom: 1em;
}
.page_about .companyMessage p .red {
	color: #b60101;
}
.page_about .companyPolicy {
	position: relative;
}
.page_about .companyPolicy .bg {
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	display: block;
	width: 100vw;
	height: 100%;
}
.page_about .companyPolicy .sectionIn {
	position: relative;
	padding-bottom: 90px;
}
.page_about .companyPolicy .secHead h2 {
	font-size: 50px;
	text-align: center;
	margin-bottom: 0.8em;
}
.page_about .companyPolicy .secHead p {
	font-size: 28px;
	text-align: center;
}
.page_about .companyPolicy .policyImages {
	text-align: center;
	font-size: 0;
	margin-bottom: 30px;
}
.page_about .companyPolicy .policyImages .img {
	display: inline-block;
	width: 23.5%;
	margin-right: 2%;
	border-radius: 20px;
	overflow: hidden;
}
.page_about .companyPolicy .policyImages .img:nth-last-child(1) {
	margin-right: 0;
}
.page_about .companyPolicy .texts {
	width: 750px;
	margin: 0 auto;
}
.page_about .companyPolicy .texts p {
	font-size: 16px;
	line-height: 1.875;
	margin-bottom: 1em;
}
.companyMiyazaki {
	position: relative;
	padding: 100px 0;
}
.companyMiyazaki::before {
	content: "";
	display: block;
	width: 100vw;
	height: 100%;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	background-color: #000;
	position: absolute;
}
.companyMiyazaki .bgs {
	overflow: hidden;
	display: block;
	width: 100vw;
	height: 100%;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
}
.companyMiyazaki .sectionIn {
	position: relative;
}
.companyMiyazaki h2 {
	font-size: 50px;
	color: #FFF;
	text-align: center;
	margin-bottom: 1em;
}
.companyMiyazaki.bgp01 .bgs::before {
  content: "";
  display: table-cell;
  width: 885px;
  height: 918px;
  background: center / 100% auto url("../img/kumogata_01-2.png") no-repeat;
  position: absolute;
  right: 50%;
  top: -90px;
  transform: translateX(-360px);
}
.companyMiyazaki.bgp01 .bgs::after {
  content: "";
  display: table-cell;
  width: 722px;
  height: 748px;
  background: center / 100% auto url("../img/kumogata_02-2.png") no-repeat;
  position: absolute;
  left: 50%;
  bottom: 0;
  transform: translateX(420px);
}
.companyMiyazaki .mainImg {
	overflow: hidden;
	border-radius: 20px;
}
.companyMiyazaki .texts {
	padding-top: 50px;
	width: 750px;
	margin: 0 auto;
}
.companyMiyazaki .texts h3 {
	font-size: 28px;
	margin-bottom: 1em;
	color: #FFF;
}
.companyMiyazaki .texts p {
	font-size: 16px;
	line-height: 1.875;
	margin-bottom: 1em;
	color: #FFF;
}
.companyProfile {
	position: relative;
	padding-bottom: 100px;
}
.companyProfile h2 {
	font-size: 50px;
	text-align: center;
	margin: 1.8em 1em 1em;
}
.companyProfile .profileTable {
	display: table;
	border: 1px solid #000;
	width: 750px;
	margin: 0 auto;
	border-radius: 20px;
	overflow: hidden;
}
.companyProfile .profileTable dl {
	display: table-row;
}
.companyProfile .profileTable dl dt {
	display: table-cell;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	font-size: 16px;
	padding: 1.5em 1em;
	background-color: #fff9e9;
	width: 9.5em;
}
.companyProfile .profileTable dl dd {
	display: table-cell;
	border-bottom: 1px solid #000;
	font-size: 16px;
	padding: 1.5em 1em;
}
.companyProfile .profileTable dl:nth-last-child(1) dt {
	border-bottom: none;
}
.companyProfile .profileTable dl:nth-last-child(1) dd {
	border-bottom: none;
}
.companyProfile .profileTable dl li {
	font-size: 16px;
	line-height: 1.875;
	list-style: disc;
	list-style-position: inside;
}
.companyProfile .profileTable .advisor {
	margin-bottom: 35px;
}
.companyProfile .profileTable .advisor p,
.companyProfile .profileTable .advisor p a
{
	font-size: 16px;
	line-height: 1.875;
}
.companyProfile .profileTable .advisor p .dot {
	display: block;
}
.companyProfile .profileTable .advisor p .dot::before {
	content: "●";
}
.companyRecruit {
	padding: 100px 0 0;
	position: relative;
}
.companyRecruit::before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	width: 100vw;
	height: 100%;
	background: left top / auto url("../img/location_bg.jpg") repeat;
}
.companyRecruit .sectionIn {
	position: relative;
	padding-right: 610px;
	padding-bottom: 310px;
	background: right top / 550px auto url("../img/companyRecruitImg.png") no-repeat;
}
.companyRecruit h2 {
	font-size: 50px;
	margin-bottom: 1em;
}
.companyRecruit h3 {
	font-size: 28px;
	line-height: 1.6;
	margin-bottom: 1em;
}
.companyRecruit p {
	font-size: 16px;
	line-height: 1.875;
	margin-bottom: 1em;
}
.companyRecruit .texts {
	margin-bottom: 60px;
}
.companyRecruit .btn {
	
}
.companyRecruit .btn a {
	display: block;
	width: 400px;
	height: 80px;
	background-color: #000;
	position: relative;
}
.companyRecruit .btn a .text {
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	width: 100%;
}
.companyRecruit .btn a .text .text_jp {
	font-size: 20px;
	color: #FFF;
	text-align: center;
	display: block;
}
.companyRecruit .btn a .text .text_en {
	font-size: 18px;
	color: #FFF;
	text-align: center;
	display: block;
	padding-top: 0.3em;
}
@media screen and (min-width:880px) and (max-width: 1100px) {
	.companyRecruit .sectionIn {
	  padding-right: 50vw;
	  background: right top / 45vw auto url("../img/companyRecruitImg.png") no-repeat;
	}	
}
@media screen and (min-width:768px) and (max-width: 879px) {
	.companyRecruit .sectionIn {
	  padding-right: 0;
		padding-top: 880px;
	  background: center top / auto 880px url("../img/companyRecruitImg.png") no-repeat;
	}	
	.companyRecruit .btn a {
		margin: 0 auto;
	}	
}
@media screen and (max-width: 767px) {
	.pages.page_about .contWrap .contWrapIn {
	  padding-top: 0;
	}
	.companyNav {
		display: block;
	}
	.companyNav ul {
		display: block;
		border-top: 1px solid #000;
	}
	.guideFAQ .companyNav ul {
		border-top: none;
	}
	.guideFAQ .companyNav ul:nth-child(1) {
		border-top: 1px solid #000;
	}
	.companyNav ul li {
		display: block;
		width: 100%;
		border-right: 1px solid #000;
		border-bottom: 1px solid #000;
		border-top: none;
		vertical-align: top;
		background-color: #FFF;
	}
	.companyNav ul li {
		border-top: none;
	}
	.guideFAQ .companyNav ul:nth-child(1) li {
	  border-top: none;
	}	
	.companyNav ul li a .text_jp{
		font-size: 4vw;
	}	
	.companyNav ul li a .text_jp span {
		position: relative;
		padding-right: 4vw;
	}
	.companyNav ul li a .text_jp span::after {
		width: 2.6vw;
		height: 2vw;
		border-top: 2vw solid #000;
		border-left: 1.3vw solid transparent;
		border-right: 1.3vw solid transparent;
	}
	.companyNav ul li a .text_en {
		font-size: 3.8vw;
	}
	.page_about .companyMessage {
	  padding-top: 12vw;
	  padding-bottom: 12vw;
	}
	.page_about .companyMessage h2 {
	  font-size: 6.4vw;
	}	
	.page_about .companyMessage .texts {
	  padding-top: 9vw;
	}	
	.page_about .companyMessage p {
	  font-size: 3.8vw;
	}
	.page_about .companyPolicy .secHead h2 {
	  font-size: 7.3vw;
		line-height: 1.2;
	}	
	.page_about .companyPolicy .secHead p {
	  font-size: 5vw;
		line-height: 1.4;
	}
	.page_about .companyPolicy .policyImages {
	  margin-bottom: 2vw;
	}	
	.page_about .companyPolicy .policyImages .img {
		display: inline-block;
		width: 48%;
		margin-right: 4%;
		border-radius: 2vw;
		margin-bottom: 4vw;
	}
	.page_about .companyPolicy .policyImages .img img {
		width: 100%;
		height: auto;
	}
	.page_about .companyPolicy .policyImages .img:nth-child(2n) {
		margin-right: 0;
	}
	.page_about .companyPolicy .texts {
		width: 100%;
	}
	.page_about .companyPolicy .texts p {
		font-size: 3.8vw;
	}
	.page_about .companyPolicy .sectionIn {
	  padding-bottom: 9vw;
	}	
	.companyMiyazaki {
	  padding: 13vw 0;
	}	
	.companyMiyazaki h2 {
	  font-size: 7.3vw;
	}
	.companyMiyazaki .mainImg {
	  overflow: hidden;
	  border-radius: 2vw;
		position: relative;
	}
	.companyMiyazaki .mainImg::before {
		content: "";
		display: block;
		padding-top: 67%;
	}
	.companyMiyazaki .mainImg img {
		position: absolute;
		left: 50%;
		top: 0;
		transform: translateX(-50%);
		width: auto;
		height: 100%;
	}
	.companyMiyazaki .texts {
	  padding-top: 9vw;
	  width: 100%;
	  margin: 0 auto;
	}	
	.companyMiyazaki .texts h3 {
	  font-size: 4.8vw;
		line-height: 1.5;
		text-align: center;
	}	
	.companyMiyazaki .texts p {
	  font-size: 3.8vw;
	}
	.companyProfile h2 {
	  font-size: 7.3vw;
	}	
	.companyProfile .profileTable {
	  display: block;
	  border: 1px solid #000;
	  width: 100%;
	  border-radius: 2vw;
	}	
	.companyProfile .profileTable dl {
	  display: block;
	}
	.companyProfile .profileTable dl dt {
	  display: block;
	  border-right: none;
	  border-bottom: 1px solid #000;
	  font-size: 3.8vw;
	  padding: 0.8em 4vw;
		width: 100%;
	}
	.companyProfile .profileTable dl dd {
	  display: block;
	  font-size: 3.8vw;
	  padding: 1em 4vw;
	}
	.companyProfile .profileTable dl:nth-last-child(1) dt {
	  border-bottom: 1px solid #000;
	}	
	.companyProfile .profileTable .advisor {
	  margin-bottom: 4vw;
	}	
	.companyProfile .profileTable .advisor p, .companyProfile .profileTable .advisor p a {
	  font-size: 3.8vw;
	}	
	.companyProfile {
	  padding-bottom: 9vw;
	}	
	.companyRecruit {
	  padding: 9vw 0 0;
	  position: relative;
	}
	.companyRecruit .sectionIn {
	  padding-right: 0;
	  padding-bottom: 42vw;
	  background: center top / 72vw auto url("../img/companyRecruitImg.png") no-repeat;
		padding-top: 112vw;
	}	
	.companyRecruit h2 {
	  font-size: 7.4vw;
	}	
	.companyRecruit h3 {
	  font-size: 4.8vw;
	}	
	.companyRecruit p {
	  font-size: 3.8vw;
	}
	.companyRecruit .texts {
	  margin-bottom: 9vw;
	}	
	.companyRecruit .btn a {
	  width: 100%;
	  height: auto;
	}	
	.companyRecruit .btn a .text {
	  position: static;
	  left: 0;
	  top: 50%;
	  transform: translateY(0);
	  width: 100%;
		padding: 4vw 0;
		display: block;
	}
	.companyRecruit .btn a .text .text_jp {
	  font-size: 4vw;
	}	
	.companyRecruit .btn a .text .text_en {
	  font-size: 3.8vw;
	  padding-top: 0.3em;
	}	
	.companyRecruit::before {
		background: left top / 100vw auto url("../img/location_bg.jpg") repeat;
	}
}
.shopPage .shopHead {
	display: block;
	position: relative;
	margin-bottom: 90px;
	padding-right: 50%;
}
.shopPage .shopHead > div {
	display: block;
	vertical-align: top;
}
.shopPage .shopHead > div.info {
	padding-right: 40px;
	min-height: 516px;
}
.shopPage .shopHead > div.info .shopArea {
	margin-bottom: 25px;
}
.shopPage .shopHead > div.info .shopArea ul {
	font-size: 0;
}
.shopPage .shopHead > div.info .shopArea ul li {
	display: inline-block;
	margin-right: 20px;
}
.shopPage .shopHead > div.info .shopArea ul li a {
	display: block;
	font-size: 16px;
	line-height: 1.6;
	border: 2px solid #000;
	padding: 0 1.5em;
	background-color: #FFF;
}
.shopPage .shopHead > div.info .shopName {
	margin-bottom: 50px;
}
.shopPage .shopHead > div.info .shopName .text_jp {
	display: block;
	font-size: 50px;
	font-weight: 600;
}
.shopPage .shopHead > div.info .shopName .text_en {
	display: block;
	font-size: 24px;
	font-weight: 600;
	padding-top: 0.4em;
}
.shopPage .shopHead > div.info .shopOutline {
	
}
.shopPage .shopHead > div.info .shopOutline p {
	font-size: 16px;
	line-height: 1.875;
	margin-bottom: 1.0em;
}
.shopPage .shopHead > div.info .shopOutline p.outline_en {
	line-height: 1.6;
}
.shopLinks {
	padding-top: 50px;
}
.shopLinks ul {
	font-size: 0;
	text-align: left;
}
.shopLinks ul li {
	display: inline-block;
	width: calc((100% - 12px)/2);
}
.shopLinks ul li:nth-child(1) {
	margin-right: 12px;
}
.shopLinks ul li a {
	display: block;
	text-align: center;
	line-height: 58px;
	font-size: 18px;
	font-weight: 600;
	border: 1px solid #000;
}
.shopLinks ul li.anchor_eninfo a {
	background-color: #000;
	color: #FFF;
}
.shopLinks ul li.googlemap .text {
	padding-left: 25px;
	padding-bottom: 0.2em;
	position: relative;
}
.shopLinks ul li.googlemap .text::before {
	content: "";
	display: table-cell;
	width: 14px;
	height: 20px;
	background: center / 100% auto url("../img/icn_googlemap.png") no-repeat;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.shopLinks ul li.anchor_eninfo .text {
	padding-right: 25px;
	position: relative;
	padding-bottom: 0.2em;
}
.shopSingle .shopLinks ul li.anchor_eninfo .text::before {
	content: "";
	display: table-cell;
	width: 15px;
	height: 12px;
	border-top: 12px solid #FFF;
	border-left: 7.5px solid transparent;
	border-right: 7.5px solid transparent;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	box-sizing: border-box;
}
.shopHead .images {
	position: absolute;
	right: 0;
	top: 0;
	width: 50%;
}
.shopHead .images ul {
    display: grid;
    grid-template-columns: repeat(2, minmax(0, 1fr));
    gap: 10px;
}

.shopHead .images li {
    min-width: 0;
    overflow: hidden;
}

.shopHead .images li:first-child {
    grid-column: 1 / -1;
}

.shopHead .images li img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

@media screen and (max-width: 900px) {
	.shopPage .shopHead {
	  display: block;
	  position: relative;
	  margin-bottom: 90px;
		padding-right: 0;
	}
	.shopPage .shopHead > div {
	  display: block;
	  width: 100%;
	}
	.shopPage .shopHead > div.info {
	  padding-right: 0;
		min-height: 0;
	}	
	.shopPage .shopHead > div {
	  display: block;
	  width: 100%;
	  vertical-align: top;
	}
	.shopPage .shopHead > div.images {
	  padding-left: 0;
	  position: static;
		margin-bottom: 40px;
	}	
	.shopPage .shopHead > div.info .shopName {
		margin-bottom: 6vw;
	}
	
}
@media screen and (max-width: 767px) {
	.pages.shopPage .contWrap {
		padding-top: 4vw;
		padding-bottom: 50vw;
	}	
	.pages.shopPage.shopSingle .contWrap {
		padding-top: 4vw;
		padding-bottom: 0;
	}	
  .shopPage .shopHead > div.images {
    margin-bottom: 4.6vw;
  }
	.shopPage .shopHead > div.info .shopArea ul li {
	  margin-right: 3vw;
	}
	.shopPage .shopHead > div.info .shopArea ul li a {
	  font-size: 3.8vw;
	}	
	.shopPage .shopHead > div.info .shopArea {
	  margin-bottom: 4vw;
	}	
	.shopPage .shopHead > div.info .shopName .text_jp {
	  font-size: 7.3vw;
	}
	.shopPage .shopHead > div.info .shopName .text_en {
	  font-size: 4.5vw;
	}
	.shopPage .shopHead > div.info .shopOutline p {
	  font-size: 3.8vw;
	}	
	.shopPage .shopHead > div.info .shopOutline p.outline_jp {
	  font-size: 3.8vw;
		margin-bottom: 1.5em;
	}	
	.shopLinks {
	  padding-top: 6vw;
	}
	.shopLinks ul {
		font-size: 0;
	}	
	.shopLinks ul li:nth-child(1) {
	  margin-right: 2%;
	}	
	.shopLinks ul li {
	  display: inline-block;
	  width: 49%;
		box-sizing: border-box;
	}	
	.shopLinks ul li a {
	  line-height: 9.3vw;
	  font-size: 4vw;
	}
	.shopLinks ul li.googlemap .text {
	  padding-left: 5.3vw;
	}	
	.shopLinks ul li.googlemap .text::before {
	  width: 2.6vw;
	  height: 4vw;
	  background: center / 100% auto url("../img/icn_googlemap.png") no-repeat;
	}	
	.shopLinks ul li.anchor_eninfo .text {
	  padding-right: 5.3vw;
	}	
	.shopLinks ul li.anchor_eninfo .text::before {
	  width: 2.6vw;
	  height: 2.2vw;
	  border-top: 2.2vw solid #FFF;
	  border-left: 1.3vw solid transparent;
	  border-right: 1.3vw solid transparent;
	}
  .shopPage .shopHead {
    margin-bottom: 11vw;
  }	
	
}
.shopInfoArea {
	position: relative;
}
.shopInfoArea h2 {
	font-size: 24px;
	font-weight: 600;
	padding-left: 20px;
	position: relative;
	margin-bottom: 0.8em;
}
.shopInfoArea h2::before {
	content: "";
	display: table-cell;
	width: 12px;
	height: 12px;
	background-color: #000;
	border-radius: 50%;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
}
.shopInfoArea table {
	width: 100%;
	border:1px solid #000;
	border-radius: 20px;
	margin-bottom: 40px;
	border-collapse: separate;
	position: relative;
	border-spacing: 0;
	overflow: hidden;
}
.shopInfoArea table th {
  font-family: "Zen Kaku Gothic New", sans-serif;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	background-color: #fff9e9;
	padding: 14px 20px;
	width: 278px;
	line-height: 1.3;
	vertical-align: middle;
}
.shopInfoArea table th span {
	padding-left: 30px;
	position: relative;
	font-size: 16px;
	line-height: 1.3;
	font-weight: 600;
	display: block;
}
.shopInfoArea .shopPaymentArea table th span {
	padding-left: 0;
}
.shopInfoArea table td {
	font-size: 16px;
	font-weight: 500;
  font-family: "Zen Kaku Gothic New", sans-serif;
	border-bottom: 1px solid #000;
	background-color: #FFF;
	padding: 14px 20px;
	line-height: 1.3;
}
.shopInfoArea .shopPaymentArea table td {
	font-size: 0;
}
.shopInfoArea table tr:nth-last-child(1) th,
.shopInfoArea table tr:nth-last-child(1) td
{
	border-bottom: none;
}
.shopPaymentArea td span {
	display: inline-block;
	vertical-align: top;
	margin-right: 10px;
}
.shopPaymentArea td span::before {
	content: "";
	display: block;
	width: 50px;
	padding-top: 38px;
}
.shopPaymentArea td.qrpay span::before {
	width: 70px;
	padding-top: 38px;
}
.shopPaymentArea span.rakutenedy::before,
.shopPaymentArea td.qrpay span.merucari::before{
	width: 40px;
}
.shopPaymentArea td.qrpay span.paypay::before,
.shopPaymentArea td.qrpay span.alipay::before
{
  width: 100px;
  padding-top: 38px;
}
.shopPaymentArea td.qrpay span.wechatpay::before
{
  width: 90px;
  padding-top: 38px;
}

.shopPaymentArea td {
	font-size: 0;
}
.shopPaymentArea span.cash {
	background: center / contain url("../img/payment_icn/cash.png") no-repeat;
}
.shopPaymentArea span.visa {
	background: center / contain url("../img/payment_icn/visa.png") no-repeat;
}
.shopPaymentArea span.master {
	background: center / contain url("../img/payment_icn/mastercard.png") no-repeat;
}
.shopPaymentArea span.jcb {
	background: center / contain url("../img/payment_icn/jcb-logomark-img-03.gif") no-repeat;
}
.shopPaymentArea span.amex {
	background: center / contain url("../img/payment_icn/american_express_png.jpg") no-repeat;
}
.shopPaymentArea span.diners {
	background: center / contain url("../img/payment_icn/diners_logo_white.gif") no-repeat;
}
.shopPaymentArea span.discover {
	background: center / contain url("../img/payment_icn/discover.jpg") no-repeat;
}
.shopPaymentArea span.suica {
	background: center / contain url("../img/payment_icn/suica.png") no-repeat;
}
.shopPaymentArea span.pasmo {
	background: center / contain url("../img/payment_icn/pasmo.png") no-repeat;
}
.shopPaymentArea span.icoca {
	background: center / contain url("../img/payment_icn/icoca.png") no-repeat;
}
.shopPaymentArea span.kitaca {
	background: center / contain url("../img/payment_icn/kitaca.png") no-repeat;
}
.shopPaymentArea span.tolca {
	background: center / contain url("../img/payment_icn/tolca.png") no-repeat;
}
.shopPaymentArea span.manaca {
	background: center / contain url("../img/payment_icn/manaca.png") no-repeat;
}
.shopPaymentArea span.sugoca {
	background: center / contain url("../img/payment_icn/sugoca.png") no-repeat;
}
.shopPaymentArea span.nimoca {
	background: center / contain url("../img/payment_icn/nimoca.png") no-repeat;
}
.shopPaymentArea span.hayaka {
	background: center / contain url("../img/payment_icn/hayakaken.png") no-repeat;
}

.shopPaymentArea span.id {
	background: center / contain url("../img/payment_icn/ID_Logo.svg.png") no-repeat;
}
.shopPaymentArea span.quickpay {
	background: center / contain url("../img/payment_icn/qp01_png.png") no-repeat;
}
.shopPaymentArea span.rakutenedy {
	background: center / contain url("../img/payment_icn/rakutenedy.png") no-repeat;
}
.shopPaymentArea span.waon {
	background: center / contain url("../img/payment_icn/waon.png") no-repeat;
}
.shopPaymentArea span.nanaco {
	background: center / contain url("../img/payment_icn/nanaco.png") no-repeat;
}
.shopPaymentArea span.paypay {
	background: center / contain url("../img/payment_icn/paypay.png") no-repeat;
}
.shopPaymentArea span.rakutenpay {
	background: center / contain url("../img/payment_icn/R_pay.png") no-repeat;
}
.shopPaymentArea span.docomopay {
	background: center / contain url("../img/payment_icn/d払い.png") no-repeat;
}
.shopPaymentArea span.aupay {
	background: center / contain url("../img/payment_icn/aupay.png") no-repeat;
}
.shopPaymentArea span.merucari {
	background: center / contain url("../img/payment_icn/merpay_service_logo_vertical_rgb.png") no-repeat;
}
.shopPaymentArea span.alipay {
	background: center / contain url("../img/payment_icn/Alipay+_272_112.png") no-repeat;
}
.shopPaymentArea span.wechatpay {
	background: center / contain url("../img/payment_icn/WeCahtPay.png") no-repeat;
}
.shopInfoEn.shopInfoArea {
	padding-top: 100px;
	position: relative;
	padding-bottom: 360px;
}
.shopInfoEn.shopInfoArea::before {
	content: "";
	display: block;
	width: 100vw;
	height: 100%;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	background-color: #f9f9f9;
	
}
.shopInfoEn.shopInfoArea h1 {
	font-size: 50px;
	font-weight: 700;
	text-align: center;
	margin-bottom: 1em;
	position: relative;
}
.shopInfoEn.shopInfoArea .shopPaymentArea.shopPaymentArea_en {
	margin-bottom: 100px;
}
.shopInfoArea th span::before {
	content: "";
	display: table-cell;
	width: 20px;
	height: 20px;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	background-size: contain;
	background-repeat: no-repeat;
	background-position: center;
}
.shopInfoArea th span.time::before {
	background-image: url("../img/shoptable_icn/time.png");
}
.shopInfoArea th span.close::before {
	background-image: url("../img/shoptable_icn/calender.png");
}
.shopInfoArea th span.reserve::before {
	background-image: url("../img/shoptable_icn/reservation.png");
	background-size: 100% 90%;
}
.shopInfoArea th span.trafic::before {
	background-image: url("../img/shoptable_icn/trafic.png");
}
.shopInfoArea th span.address::before {
	background-image: url("../img/shoptable_icn/location.png");
}
.shopInfoArea th span.tel::before {
	background-image: url("../img/shoptable_icn/tel.png");
}
.shopInfoArea th span.seat::before {
	background-image: url("../img/shoptable_icn/seats.png");
}
.shopInfoArea th span.togo::before {
	background-image: url("../img/shoptable_icn/togp.png");
}

.shopInfoArea th span.languagemenu::before {
	background-image: url("../img/shoptable_icn/menu.png");
}
.shopInfoArea th span.alcohol::before {
	background-image: url("../img/shoptable_icn/alcohol.png");
}
.shopInfoArea th span.grandmenu::before {
	background-image: url("../img/shoptable_icn/grandmenu.png");
}
.shopInfoArea th span.sidedish::before {
	background-image: url("../img/shoptable_icn/sidedish.png");
}
.shopInfoArea th span.babydish::before {
	background-image: url("../img/shoptable_icn/babydish.png");
}
.shopInfoArea th span.arrergy::before {
	background-image: url("../img/shoptable_icn/arrergy.png");
}

.shopInfoArea th span.park::before {
	background-image: url("../img/shoptable_icn/park.png");
}
.shopInfoArea th span.bicycle::before {
	background-image: url("../img/shoptable_icn/bicycle.png");
}
.shopInfoArea th span.barrierfree::before {
	background-image: url("../img/shoptable_icn/barrierfree.png");
}
.shopInfoArea th span.suitcase::before {
	background-image: url("../img/shoptable_icn/suitcase.png");
}
.shopInfoArea th span.babycar::before {
	background-image: url("../img/shoptable_icn/babycar.png");
}
.shopInfoArea th span.childchair::before {
	background-image: url("../img/shoptable_icn/babychair.png");
}
.shopInfoArea th span.toilet::before {
	background-image: url("../img/shoptable_icn/toilet.png");
}
.shopInfoArea th span.multitoilet::before {
	background-image: url("../img/shoptable_icn/multitoilet.png");
}
.shopInfoArea th span.smokingarea::before {
	background-image: url("../img/shoptable_icn/smokingarea.png");
}
.shopInfoArea th span.time::before {
	background-image: url("../img/shoptable_icn/time.png");
}
.shopInfoArea table {
	width: 100%;
	table-layout: fixed;
}

.shopInfoArea th,
.shopInfoArea td {
	overflow-wrap: anywhere;
	word-break: break-word;
}
@media screen and (max-width: 767px) {
	.shopInfoArea h2 {
	  font-size: 4.5vw;
	  padding-left: 1em;
	}
	.shopInfoArea h2::before {
	  width: 2.6vw;
	  height: 2.6vw;
		transform: translateX(30%) translateY(-50%);	
	}	
	.shopInfoArea table {
	  border-radius: 2vw;
	  margin-bottom: 6vw;
	}	
	.shopInfoArea table th {
	  padding: 2vw 2vw;
	  width: 37vw;
	}
	.shopInfoArea table th span {
	  padding-left: 5.3vw;
	  font-size: 3.8vw;
	}	
	.shopInfoArea th span::before {
	  width: 3.6vw;
	  height: 3.6vw;
	}	
	.shopInfoArea table td {
	  font-size: 3.8vw;
	  padding: 2vw 3vw;
	}
	.shopPaymentArea td span {
	  margin-right: 1.5vw;
	}
	.shopPaymentArea td span::before {
	  width: 9vw;
	  padding-top: 70%;
	}	
	.shopPaymentArea td.qrpay span::before {
		width: 10vw;
	}
	.shopPaymentArea span.rakutenedy::before,
	.shopPaymentArea td.qrpay span.merucari::before{
		width: 7vw;
	}
	.shopPaymentArea td.qrpay span.paypay::before,
	.shopPaymentArea td.qrpay span.alipay::before
	{
	  width: 15vw;
	}
	.shopPaymentArea td.qrpay span.wechatpay::before
	{
	  width: 11vw;
	}
	.shopInfoEn.shopInfoArea {
	  padding-top: 10vw;
	  padding-bottom: 33vw;
	}	
	.shopInfoEn.shopInfoArea h1 {
	  font-size: 7.3vw;
	}
	.shopInfoArea table {
		display: table;
	  width: 100%;
	  border-radius: 2vw;
	  margin-bottom: 12vw;
	}
	.shopInfoEn.shopInfoArea .shopPaymentArea.shopPaymentArea_en {
	  margin-bottom: 11vw;
	}	
}
.shopSearch {
	position: relative;
}
.archiveWrap {
	min-height: 80vh;
}
.prefectureBox {
	margin-bottom: 50px;
	border-bottom: 1px solid #000;
	overflow-anchor: none;
}
.prefectureBox .prefectureBody {
	display: none;
	transition: 0.3s all ease;
}
.prefectureBox.open .prefectureBody {
	display: block;
}
.prefectureBox .prefectureHead {
	padding-bottom: 25px;
	padding-top: 30px;
	position: relative;
}
.shopPage .searchArea .searchBlock.prefectureArea h3 {
  margin-bottom: 0;
}
.prefectureBox h4 {
	font-size: 24px;
	padding-left: 1em;
	position: relative;
}
.prefectureBox h4::before {
	content: "";
	display: table-cell;
	width: 12px;
	height: 12px;
	border-radius: 50%;
	background-color:#000;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
.prefectureArchiveList .shopList {
	border-top: 1px solid #000;
}
.shopItem {
	padding: 20px 0 35px;
	border-bottom: 1px solid #000;
}
.shopItem:nth-last-child(1) {
	border-bottom: 0;
}
.shopItem .itemHead {
	display: table;
	width: 100%;
	margin-bottom: 24px;
}
.shopItem .itemHead .name {
	display: table-cell;
	vertical-align: middle;
}
.shopItem .itemHead .name_jp {
	display: block;
	font-size: 24px;
	font-weight: 600;
	margin-bottom: 0.4em;
}
.shopItem .itemHead .name_en {
	font-size: 16px;
	font-weight: 600;
	display: block;
}
.shopItem .itemHead .shopLinks {
	display: table-cell;
	width: 406px;
	padding-top: 0;
	font-size: 0;
	text-align: right;
}
.shopItem .itemHead .shopLinks li {
	display: inline-block;
	width: 197px;
}
.shopItem .itemHead .shopLinks li:nth-child(1) {
	margin-right: 10px;
}
.shopItem .itemBody {
	padding-right: 406px; 
	position: relative;
}
.shopItem .itemBody .shopImg {
	position: absolute;
	right: 0;
	top: 0;
	width: 406px;
	height: auto;
	overflow: hidden;
}
.shopItem .itemBody .shopImg::before {
	content: "";
	display: block;
	padding-top: 64%;
}
.shopItem .itemBody .shopImg img {
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
	width: 100%;
	height: auto;
}
.shopItem .itemBody .shopTable {
	padding-right: 20px;
}
.shopItem .itemBody .shopTable table {
    width: 100%;
    border: 1px solid #000;
    border-radius: 20px;
    border-collapse: separate;
    border-spacing: 0;
    overflow: hidden;
}
.shopItem .itemBody .shopTable table th {
	background-color: #fff9e9;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 600;
	padding: 10px 10px 10px 45px;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	vertical-align: middle;
	width: 200px;
	position: relative;
}
.shopItem .itemBody .shopTable table td {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
	padding: 10px 20px;
	border-bottom: 1px solid #000;
	vertical-align: middle;
}
.shopItem .itemBody .shopTable table tr:nth-last-child(1) th,
.shopItem .itemBody .shopTable table tr:nth-last-child(1) td
{
	border-bottom: none;
}
.shopItem .itemBody .shopTable table .text_jp {
	font-size: 16px;
	line-height: 1.3;
	display: block;
}
.shopItem .itemBody .shopTable table .text_en {
	font-size: 16px;
	line-height: 1.375;
	display: block;
}
.shopItem .itemBody .shopTable table tr th::before {
	content: "";
	display: table-cell;
	width: 22px;
	height: 22px;
	background-size: contain;
	background-position: center;
	background-repeat: no-repeat;
	position: absolute;
	top: 50%;
	left: 12px;
	transform: translateY(-50%);
}
.shopItem .itemBody .shopTable table tr.address th::before {
	background-image: url("../img/shoptable_icn/location.png");
}
.shopItem .itemBody .shopTable table tr.closed th::before {
	background-image: url("../img/shoptable_icn/calender.png");
}
.shopItem .itemBody .shopTable table tr.hours th::before {
	background-image: url("../img/shoptable_icn/time.png");
}
.shopItem .itemBody .shopTable table tr.trafic th::before {
	background-image: url("../img/shoptable_icn/trafic.png");
}
.shopItem .shopLinks ul li.anchor_eninfo .text::before {
  content: "";
  display: table-cell;
  width: 12px;
  height: 16px;
	border-left: 12px solid #FFF;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
  position: absolute;
  right: 0;
  top: 50%;
  transform: translateY(-50%);
  box-sizing: border-box;
}
@media screen and (max-width: 1000px) {
	.shopItem .itemBody {
	  padding-right: 0;
	}	
	.shopItem .itemBody .shopImg {
	  position: relative;
		right: auto;
		top: auto;
	  width: 100%;
		margin-bottom: 30px;
	}	
	.shopItem .itemBody .shopTable {
	  padding-right: 0;
	}	
}
@media screen and (max-width: 767px) {
	.prefectureBox h4 {
	  font-size: 4.5vw;
	}
	.prefectureBox h4::before {
	  width: 2.6vw;
	  height: 2.6vw;
	}	
	.prefectureBox .prefectureHead {
	  margin-bottom: 3vw;
	  padding-top: 7vw;
	}	
	.shopItem {
	  padding: 13vw 0 7vw;
	}
	.shopItem .itemHead {
	  display: block;
	  width: 100%;
	  margin-bottom: 4vw;
	}	
	.shopItem .itemHead .name {
	  display: block;
		margin-bottom: 4vw;
	}	
	.shopItem .itemHead .name .name_jp {
		font-size: 4.5vw;
	}
	.shopItem .itemHead .name .name_en {
		font-size: 3.8vw;
	}

	.shopItem .itemHead .shopLinks {
	  display: block;
	  width: 100%;
	  padding-top: 0;
	  font-size: 0;
	  text-align: center;
	}
	.shopItem .itemHead .shopLinks li {
	  display: inline-block;
	  width: 48%;
		box-sizing: border-box;
	}	
	.shopItem .itemHead .shopLinks li:nth-child(1) {
		margin-right: 2%;
	}
	.shopItem .shopLinks ul li.anchor_eninfo .text::before {
	  width: 2.4vw;
	  height: 2.6vw;
	  border-left: 2.4vw solid #FFF;
	  border-top: 1.3vw solid transparent;
	  border-bottom: 1.3vw solid transparent;
	}	
	.shopItem .itemBody .shopTable table th {
	  padding: 2vw 2vw 2vw 8vw;
	  width: 37vw;
	}	
	.shopItem .itemBody .shopTable table .text_jp {
	  font-size: 3.8vw;
	}	
	.shopItem .itemBody .shopTable table .text_en {
	  font-size: 3.8vw;
	}	
	.shopItem .itemBody .shopTable table td {
	  padding: 2vw;
	}	
	.shopItem .itemBody .shopTable table tr th::before {
		width: 4.5vw;
		height: 4.5vw;
		left: 2vw;
	}
	.pages.shopPage.archive .contWrap {
	  padding-bottom: 33vw;
	}	
}
.page_guide .guideMessage {
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
	position: relative;
}
.page_guide .guideMessage::before {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/guide_message_left.png") no-repeat;
	width: 107px;
	height: 225px; /* 210% */
	position: absolute;
	left: 0;
	bottom: 0;
	transform: translateX(-130%);
}
.page_guide .guideMessage::after {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/guide_message_right.png") no-repeat;
	width: 83px;
	height: 213.9px; /* 257.7% */
	position: absolute;
	right: 0;
	bottom: 0;
	transform: translateX(130%);
}
.bgFubuki {
	position: relative;
}
.bgFubuki::before {
	content: "";
	display: block;
	position: absolute;
	left: 50%;
	top: 0;
	transform: translateX(-50%);
	width: 100vw;
	height: 100%;
	background: left top / 1200px auto url("../img/location_bg.jpg") repeat;
}
.bgFubuki > div {
	position: relative;
}
.page_guide .bgp01 {
	padding-bottom: 100px;
}
.guideSteps {
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	padding: 100px 0;
}
.guideSteps .stepBox {
	position: relative;
	z-index: 1;
}
.guideSteps .stepBox .stepBoxIn {
	background-color: #FFF;
	padding: 25px 75px 50px;
	border-radius: 100px;
	width: 900px;
	margin: 0 auto;
	position: relative;
	z-index: 3;
}
.guideSteps .stepBox.step1 .stepBoxIn {
	background-color: #ffd27c;
}
.guideSteps .stepBox .bottomCurve {
	display: block;
	height: 140px;
	position: relative;
	z-index: 1;
}
.guideSteps .stepBox:nth-last-child(1) .bottomCurve {
	display: none;
}
.guideSteps .stepBox .bottomCurve .center {
	width: calc(100% - 350px);
	height: 60px;
	background-color: #ffd27c;
	position: absolute;
	left: 50%;
	top: 50%;
	transform: translateX(-50%) translateY(-50%);
}
.guideSteps .stepBox .bottomCurve .left {
	display: table-cell;
	width: 175px;
	height: 175px;
	background: center / 100% auto url("../img/guidestep/leftcurve.svg") no-repeat;
	position: absolute;
	left: 0;
	bottom: 40px;
}
.guideSteps .stepBox .bottomCurve .right {
	display: table-cell;
	width: 175px;
	height: 175px;
	background: center / 100% auto url("../img/guidestep/rightcurve.svg") no-repeat;
	position: absolute;
	right: 0;
	top: 40px;
}
.guideSteps .stepBox.boxRight .bottomCurve .left {
	background: center / 100% auto url("../img/guidestep/rightcurve.svg") no-repeat;
	position: absolute;
	left: 0;
	bottom: auto;
	top:40px;
	transform: rotate(-90deg);
}
.guideSteps .stepBox.boxRight .bottomCurve .right {
	background: center / 100% auto url("../img/guidestep/leftcurve.svg") no-repeat;
	position: absolute;
	right: 0;
	top: auto;
	bottom: 40px;
	transform: rotate(-90deg);
}
.guideSteps .stepBox.boxLeft .stepBoxIn::before {
	content: "";
	display: table-cell;
	width: 60px;
	height: calc(100% - 150px);
	position: absolute;
	left: -100px;
	top: 50%;
	transform: translateY(-50%);
	background-color: #ffd27c;
	z-index: 1;
}
.guideSteps .stepBox.step1.boxLeft .stepBoxIn::before {
	width: 60px;
	height: calc(100% - 75px);
	position: absolute;
	left: -100px;
	top: 0;
	transform: translateY(0);
	border-top-left-radius: 30px;
	border-top-right-radius: 30px;
}
.guideSteps .stepBox.step9.boxLeft .stepBoxIn::before {
	width: 60px;
	height: calc(100% - 75px);
	position: absolute;
	left: -100px;
	top: auto;
	bottom: 0;
	transform: translateY(0);
	border-bottom-left-radius: 30px;
	border-bottom-right-radius: 30px;
}

.guideSteps .stepBox.boxRight .stepBoxIn::before {
	content: "";
	display: table-cell;
	width: 60px;
	height: calc(100% - 150px);
	position: absolute;
	right: -100px;
	top: 50%;
	transform: translateY(-50%);
	background-color: #ffd27c;
}
.guideSteps .stepBox .sushiParts {
	position: absolute;
	left: 50%;
	top: 0;
	display: block;
	width: 1100px;
	height: 100%;
	transform: translateX(-50%);
	z-index: 2;
}
.guideSteps .stepBox .sushiParts .vertical {
	position: absolute;
	left: -20px;
	top: 0;
	width: 100px;
	height: 100%;
	display: table-cell;
}
.guideSteps .stepBox.boxRight .sushiParts .vertical {
	left: auto;
	right: -20px;
}
.guideSteps .stepBox .sushiParts .horizontal {
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 140px;
	display: table-cell;
	transform: translateY(100%);
	z-index: 2;
}
.guideSteps .stepBox.step1 .sushiParts .vertical {
	background: top center / 100% auto url("../img/guidestep/sushi/01v.png") no-repeat;
	width: 113px;
	left: -26px;
}
.guideSteps .stepBox.step1 .sushiParts .horizontal {
	background: center / auto 100% url("../img/guidestep/sushi/01h.png") no-repeat;
}
.guideSteps .stepBox.step2 .sushiParts .vertical {
	background: top center / 100% auto url("../img/guidestep/sushi/02v.png") no-repeat;
}
.guideSteps .stepBox.step2 .sushiParts .horizontal {
	background: center / auto 100% url("../img/guidestep/sushi/02h.png") no-repeat;
}
.guideSteps .stepBox.step3 .sushiParts .vertical {
	background: top center / 100% auto url("../img/guidestep/sushi/03v.png") no-repeat;
}
.guideSteps .stepBox.step3 .sushiParts .horizontal {
	background: center / auto 100% url("../img/guidestep/sushi/03h.png") no-repeat;
}
.guideSteps .stepBox.step4 .sushiParts .vertical {
	background: top center / 100% auto url("../img/guidestep/sushi/04v.png") no-repeat;
}
.guideSteps .stepBox.step4 .sushiParts .horizontal {
	background: center / auto 100% url("../img/guidestep/sushi/04h.png") no-repeat;
}
.guideSteps .stepBox.step5 .sushiParts .vertical {
	background: top center / 100% auto url("../img/guidestep/sushi/05v.png") no-repeat;
}
.guideSteps .stepBox.step5 .sushiParts .horizontal {
	background: center / auto 100% url("../img/guidestep/sushi/05h.png") no-repeat;
}
.guideSteps .stepBox.step6 .sushiParts .vertical {
	background: top center / 100% auto url("../img/guidestep/sushi/06v.png") no-repeat;
}
.guideSteps .stepBox.step6 .sushiParts .horizontal {
	background: center / auto 100% url("../img/guidestep/sushi/06h.png") no-repeat;
}
.guideSteps .stepBox.step7 .sushiParts .vertical {
	background: top center / 100% auto url("../img/guidestep/sushi/07v.png") no-repeat;
}
.guideSteps .stepBox.step7 .sushiParts .horizontal {
	background: center / auto 100% url("../img/guidestep/sushi/07h.png") no-repeat;
}
.guideSteps .stepBox.step8 .sushiParts .vertical {
	background: top center / 100% auto url("../img/guidestep/sushi/08v.png") no-repeat;
}
.guideSteps .stepBox.step8 .sushiParts .horizontal {
	background: center / auto 100% url("../img/guidestep/sushi/08h.png") no-repeat;
}
.guideSteps .stepBox.step9 .sushiParts .vertical {
	background: top center / 100% auto url("../img/guidestep/sushi/09v.png") no-repeat;
}
.guideSteps .stepBox.step9 .sushiParts .horizontal {
	display: none;
}

.guideSteps .stepHead {
	display: table;
	width: 100%;
	margin-bottom: 35px;
	position: relative;
}
.guideSteps .stepBody {
	position: relative;
	z-index: 3;
}
.guideSteps .stepBtn {
	position: relative;
	z-index: 3;
}
.guideSteps .stepHead .stepMark {
	display: table-cell;
	vertical-align: middle;
	background: center / 100% auto url("../img/guidestep/stepmark.png") no-repeat;
	width: 101px;
	height: 104px;
}
.guideSteps .stepHead .stepMark p {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 600;
  font-style: normal;
}
.guideSteps .stepHead .stepMark p .step {
	display: block;
	text-align: center;
	font-size: 20px;
	color: #FFF;
	line-height: 1.0;
}
.guideSteps .stepHead .stepMark p .num {
	display: block;
	text-align: center;
	font-size: 40px;
	color: #FFF;
	line-height: 1.0;
}
.guideSteps .stepHead .stepMark p .num .small {
	font-size: 0.8em;
}
.guideSteps .stepHead .stepTitle {
	display: table-cell;
	padding-left: 15px;
	vertical-align: middle;
}
.guideSteps .stepHead .stepTitle h3 {
	font-weight: 600;
}
.guideSteps .stepHead .stepTitle h3 .text_jp {
	display: block;
	font-size: 28px;
	font-weight: 600;
	line-height: 1.3;
}
.guideSteps .stepHead .stepTitle h3 .text_en {
	display: block;
	line-height: 1.5;
	font-size: 22px;
	font-weight: 600;
}
.guideSteps .stepBody .box {
	background: left bottom / auto 6px url("../img/guidestep/boxdot.png") repeat-x;
	padding-bottom: 35px;
	margin-bottom: 45px;
	box-sizing: content-box;
	position: relative;
}
.guideSteps .stepBody .box:nth-last-child(1) {
	background: none;
	margin-bottom: 0;
}
.guideSteps .stepBody .box h4,
.guideSteps .stepBody .box p
{
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.guideSteps .stepBody .box h4 {
	font-size: 20px;
	line-height: 1.3;
	font-weight: 600;
	margin-bottom: 1em;
}
.guideSteps .stepBody .box p {
	font-size: 16px;
	line-height: 1.5;
	font-weight: 600;
	margin-bottom: 1em;
}
.guideSteps .stepBody .box .box_jp {
	margin-bottom: 45px;
}
.guideSteps .stepBody .box .box_jp p {
	font-weight: 500;
}
.guideSteps .step7 .stepBody .box .box_jp,
.guideSteps .step8 .stepBody .box .box_jp
{
  margin-bottom: 0;
}
.guideSteps .stepBody .hasImg {
	position: relative;
	padding-right: 50%;
}
.guideSteps .stepBody .hasImg .img {
	position: absolute;
	right: 0;
	top:0;
	width: 50%;
	padding-left: 30px;
}
.guideSteps .stepBody .hasImg .img img,
.guideSteps .stepBody .hasImg .img video {
	width: 100%;
	height: auto;
	border-radius: 20px;
	overflow: hidden;
}
.step2 .box:nth-child(3)::before {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/guidestep/illust/2_tissue.png") no-repeat;
	width: 111px;
	height: 132px;
	position: absolute;
	left: -75px;
	bottom: 35px;
	transform: translateX(-65%);
}
.step2 .box:nth-child(3)::after {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/guidestep/illust/2_hand.png") no-repeat;
	width: 115px;
	height: 110px;
	position: absolute;
	right: 0;
	top: 0;
	transform: translateX(65%) translateY(-30%);
}
.step3 .box:nth-child(1)::before {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/guidestep/illust/3_tea.png") no-repeat;
	width: 77px;
	height: 72px;
	position: absolute;
	right: 20px;
	top: 50%;
	transform: translateX(0) translateY(-50%);
}
.step4 .box:nth-child(2)::before {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/guidestep/illust/4-1_girls.png") no-repeat;
	width: 214px;
	height: 182px;
	position: absolute;
	right: 0;
	bottom: 0;
}
.step7 .box:nth-child(1)::before {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/guidestep/illust/5_girl.png") no-repeat;
	width: 93px;
	height: 160px;
	position: absolute;
	right: 68px;
	bottom: 8px;
}
.step8 .box:nth-child(1)::before {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/guidestep/illust/6_zinger.png") no-repeat;
	width: 98px;
	height: 67px;
	position: absolute;
	right: 68px;
	top: 0;
	transform: translateY(-50%);
}
.step9 .box:nth-child(3)::before {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/guidestep/illust/9_man.png") no-repeat;
	width: 163px;
	height: 191px;
	position: absolute;
	right: 50%;
	bottom: 0;
	transform: translateX(-20px) translateY(45px);
}
.guideTOGO.bg_black {
	position: relative;
}
.guideTOGO.bg_black .bgs {
  content: "";
  position: absolute;
  left: 50%;
  top: 0;
  width: 100vw;
  height: 100%;
	transform: translateX(-50%);
	background-color: #000;
}
.guideTOGO .secHead,
.guideTOGO .secBody {
	position: relative;
}
.guideTOGO .secBody {
	padding-bottom: 100px;
}
.guideTOGO .secHead h2 .text_jp .text_big {
	color: #FFF;
}
.guideTOGO .secHead h2 .text_en {
	color: #FFF;
}
.guideTOGO h3,
.guideTOGO p {
}
.guideTOGO .secBody .text_jp,
.guideTOGO .secBody .text_en {
	width: 100%;
	max-width: 750px;
	margin: 0 auto;
}
.guideTOGO .secBody .text_en {
	margin-bottom: 50px;
}
.guideTOGO .secBody .text_jp {
	margin-bottom: 40px;
}
.guideTOGO .secBody .text_jp h3 {
	font-size: 28px;
	text-align: center;
	color: #FFF;
	margin-bottom: 1em;
}
.guideTOGO .secBody .text_jp p {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.875;
	text-align: left;
	color: #FFF;
  font-family: "Zen Kaku Gothic New", sans-serif;
}
.guideTOGO .secBody .text_en h3 {
	font-size: 22px;
	text-align: center;
	color: #FFF;
	margin-bottom: 1em;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 600;
	
}
.guideTOGO .secBody .text_en p {
	font-size: 16px;
	line-height: 1.5;
	text-align: left;
	color: #FFF;
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 500;
}
.guideTOGO .secBody .tableBox {
	border-radius: 20px;
	overflow: hidden;
	width: 100%;
	max-width: 900px;
	margin: 0 auto;
}
.guideTOGO .secBody .tableBox table {
	background-color: #FFF;
	width: 100%;
}
.guideTOGO .secBody .tableBox th {
	font-size: 16px;
	font-weight: 600;
	line-height: 1.3;
	vertical-align: middle;
	padding: 1em;
	background-color: #fff9e9;
	border-right: 1px solid #000;
	border-bottom: 1px solid #000;
	width: 10em;
}
.guideTOGO .secBody .tableBox td {
	font-size: 16px;
	font-weight: 500;
	line-height: 1.875;
	vertical-align: middle;
	padding: 1em;
	border-bottom: 1px solid #000;
	background-color: #FFF;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
.guideTOGO .secBody .tableBox td p,
.guideTOGO .secBody .tableBox td li
{
	font-size: 16px;
	font-weight: 500;
	line-height: 1.875;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
.faqWrap .faqCatBox .faqCatHead {
	padding: 70px 0 35px;
}
.faqWrap .faqCatBox .faqCatHead h3 {
}
.faqWrap .faqCatBox .faqCatHead h3 .text {
}
.faqWrap .faqCatBox .faqCatHead h3 .text .text_jp {
	display: block;
	font-size: 28px;
	text-align: center;
	margin-bottom: 0.5em;
}
.faqWrap .faqCatBox .faqCatHead h3 .text .text_en {
	display: block;
	font-size: 22px;
	font-weight: 600;
	text-align: center;
}
.faqList {
	
}
.faqList li {
	margin-bottom: 25px;
	border-radius: 20px;
	overflow: hidden;
}
.faqList li .faq_q {
	display: block;
	background-color: #000;
	color: #FFF;
	padding: 20px 75px;
	position: relative;
}
.faqList li .faq_q::before {
	content: "";
	display: table-cell;
	background: center / 100% auto url("../img/Q_.png") no-repeat;
	width: 23px;
	height: 26px;
	position: absolute;
	left: 38px;
	top: 18px;
}
.faqList li .faq_q::after {
	content: "";
	display: table-cell;
	width: 28px;
	height: 12px;
	border-top: 12px solid #FFF;
	border-left: 14px solid transparent;
	border-right: 14px solid transparent;
	position: absolute;
	right: 24px;
	top: 50%;
	transform: translateY(-50%) rotate(0);
	transform-origin: 50%;
	box-sizing: border-box;
	transition: 0.3s all ease;
}
.faqList li.open .faq_q::after {
	transform: translateY(-50%) rotate(180deg);
}
.faqList li .faq_q .text_jp {
	font-size: 18px;
	font-weight: 600;
	display: block;
	font-family: "Zen Kaku Gothic New", sans-serif;
	margin-bottom: 0.5em;
}
.faqList li .faq_q .text_en {
	font-size: 18px;
	font-weight: 600;
	display: block;
	font-family: "Zen Kaku Gothic New", sans-serif;
}
.faqList li .faq_a {
	background-color: #f3e6c1;
	display: block;
	padding: 20px 75px 40px;
}
.faqList li .faq_a .text_jp {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.875;
	display: block;
	margin-bottom: 20px;
}
.faqList li .faq_a .text_en {
	font-family: "Zen Kaku Gothic New", sans-serif;
	font-size: 16px;
	font-weight: 500;
	line-height: 1.6;
	display: block;
}
.guideFAQ .inner {
	position: relative;
}
.faqList li .faq_a {
	display: none;
}
@media screen and (max-width: 1600px) {
	.page_guide .pageHead .bg {
	  background-image: url("../img/pageHead_guide_02.jpg");
	  background-color: #FFF;
	  background-position: right bottom;
	}	
}
@media screen and (max-width: 1100px) {
	.guideSteps .stepBox {
	  position: relative;
	  z-index: 1;
	}	
	.guideSteps .stepBox .stepBoxIn {
	  width: calc(100% - 200px);
	}
	.guideSteps .stepBox .sushiParts {
	  width: calc(100% + 200px) ;
	}	
}
@media screen and (max-width: 1000px) {
	.guideSteps .stepBox .stepBoxIn {
	background-color: #FFF;
	padding: 25px 35px 50px;
	border-radius: 60px;
	width: calc(100% - 200px);
	}
	.guideSteps .stepBody .hasImg {
	padding-right: 0;
	}	
	.guideSteps .stepBody .hasImg .img {
	  padding-left: 0;
		position: static;
		width: 100%;
		margin-bottom: 30px;
	}	
	.guideSteps .step9 .stepBody .box:nth-last-child(1) {
		padding-bottom: 150px;
	}

	.step9 .box:nth-child(3)::before {
	  right: auto;
		left: 0;
	  bottom: 0;
	  transform: translateX(0) translateY(45px);
	}
	.page_guide .guideMessage {
	  width: 100%;
	}
	.page_guide .guideMessage::before {
		display: none;
	}	
	.page_guide .guideMessage::after {
		display: none;
	}	

}
@media screen and (max-width: 767px) {
	.page_guide .pageHead .bg {
	  background-image: url("../img/pageHead_guide_sp.jpg");
	  background-color: #FFF;
	  background-position: right bottom;
	}	
	.page_guide .pageHead .texts .text_jp.small {
	  font-size: 4.5vw;
		margin-bottom: 0.5em;
	}	
	.pageHead .texts {
		top: 10vw;
	}
	.lead .text_jp {
	  font-size: 3.73vw;
		text-align: left;
	}	
	.lead .text_en {
	  font-size: 3.73vw;
	}
	.page_guide .bgp01 {
	  padding-bottom: 0;
	}
	.guideSteps {
	  width: 100%;
	  margin: 0 auto;
	  padding: 13.3vw 0;
	}	
  .guideSteps .stepBox .stepBoxIn {
    padding: 5vw 4vw;
    border-radius: 8vw;
    width: calc(100% - 18vw);
  }	
	.guideSteps .stepBox.boxLeft .stepBoxIn::before {
	  width: 5.3vw;
	  height: calc(100% - 18.6vw);
	  left: -6.6vw;
	  top: 50%;
	  transform: translateX(-50%) translateY(-50%);
	}	
	.guideSteps .stepBox.boxRight .stepBoxIn::before {
	  width: 5.3vw;
	  height: calc(100% - 18.6vw);
	  right: -6.6vw;
	  transform: translateX(50%) translateY(-50%);
	}
	.guideSteps .stepBox .bottomCurve {
	  height: 13vw;
	}	
	.guideSteps .stepBox .bottomCurve .left {
	  display: table-cell;
	  width: 24vw;
	  height: 24vw;
	  background: center / 100% auto url("../img/guidestep/leftcurve_sp.png") no-repeat;
	  position: absolute;
	  left: -4vw;
	  bottom: 0;
	}
	.guideSteps .stepBox .bottomCurve .right {
	  display: table-cell;
	  width: 24vw;
	  height: 24vw;
	  background: center / 100% auto url("../img/guidestep/rightcurve_sp.png") no-repeat;
	  position: absolute;
	  right: -4vw;
	  top: 0;
	}	
	.guideSteps .stepBox.boxRight .bottomCurve .left {
	  background: center / 100% auto url("../img/guidestep/rightcurve_sp.png") no-repeat;
	  top: 0;
	  transform: rotate(-90deg);
		left: -4vw;
	}
	.guideSteps .stepBox.boxRight .bottomCurve .right {
	  background: center / 100% auto url("../img/guidestep/leftcurve_sp.png") no-repeat;
	  right: -4vw;
	  bottom: 0;
	  transform: rotate(-90deg);
	}
	.guideSteps .stepBox.step1.boxLeft .stepBoxIn::before {
	  width: 5.3vw;
	  height: calc(100% - 3vw);
	  left: -4vw;
	  top: -8vw;
	  transform: translateX(-100%) translateY(0);
	  border-top-left-radius: 3vw;
	  border-top-right-radius: 3vw;
	}	
	.guideSteps .stepBox .bottomCurve .center {
	  width: calc(100vw - 48vw);
	  height: 5.3vw;
	}
	
	.guideSteps .stepBox .sushiParts .vertical {
	  left: 0;
	  top: 0;
	  width: 13vw;
	}
	.guideSteps .stepBox.boxRight .sushiParts .vertical {
	  left: auto;
	  right: 0;
	}	
	.guideSteps .stepBox .sushiParts .horizontal {
	  position: absolute;
	  left: 0;
	  bottom: 0;
	  width: 100%;
	  height: 13vw;
	  display: table-cell;
	  transform: translateY(100%);
	  z-index: 2;
	}	
	.guideSteps .stepBox .sushiParts {
	  left: 50%;
	  top: 0;
	  width: 100vw;
	  height: 100%;
	  transform: translateX(-50%);
	}
	.guideSteps .stepBox.step1 .sushiParts .vertical {
	  background: top center / 100% auto url("../img/guidestep/sushi/sp/01v.png") no-repeat;
	  width: 17.3vw;
	  left: 0;
	}	
	.guideSteps .stepBox.step1 .sushiParts .horizontal {
		background: center / auto 100% url("../img/guidestep/sushi/sp/01h.png") no-repeat;
	}
	.guideSteps .stepBox.step2 .sushiParts .vertical {
		background: top center / 100% auto url("../img/guidestep/sushi/sp/02v.png") no-repeat;
	}
	.guideSteps .stepBox.step2 .sushiParts .horizontal {
		background: center / auto 100% url("../img/guidestep/sushi/sp/02h.png") no-repeat;
	}
	.guideSteps .stepBox.step3 .sushiParts .vertical {
		background: top center / 100% auto url("../img/guidestep/sushi/sp/03v.png") no-repeat;
	}
	.guideSteps .stepBox.step3 .sushiParts .horizontal {
		background: center / auto 100% url("../img/guidestep/sushi/sp/03h.png") no-repeat;
	}
	.guideSteps .stepBox.step4 .sushiParts .vertical {
		background: top center / 100% auto url("../img/guidestep/sushi/sp/04v.png") no-repeat;
	}
	.guideSteps .stepBox.step4 .sushiParts .horizontal {
		background: center / auto 100% url("../img/guidestep/sushi/sp/04h.png") no-repeat;
	}
	.guideSteps .stepBox.step5 .sushiParts .vertical {
		background: top center / 100% auto url("../img/guidestep/sushi/sp/05v.png") no-repeat;
	}
	.guideSteps .stepBox.step5 .sushiParts .horizontal {
		background: center / auto 100% url("../img/guidestep/sushi/sp/05h.png") no-repeat;
	}
	.guideSteps .stepBox.step6 .sushiParts .vertical {
		background: top center / 100% auto url("../img/guidestep/sushi/sp/06v.png") no-repeat;
	}
	.guideSteps .stepBox.step6 .sushiParts .horizontal {
		background: center / auto 100% url("../img/guidestep/sushi/sp/06h.png") no-repeat;
	}
	.guideSteps .stepBox.step7 .sushiParts .vertical {
		background: top center / 100% auto url("../img/guidestep/sushi/sp/07v.png") no-repeat;
	}
	.guideSteps .stepBox.step7 .sushiParts .horizontal {
		background: center / auto 100% url("../img/guidestep/sushi/sp/07h.png") no-repeat;
	}
	.guideSteps .stepBox.step8 .sushiParts .vertical {
		background: top center / 100% auto url("../img/guidestep/sushi/sp/08v.png") no-repeat;
	}
	.guideSteps .stepBox.step8 .sushiParts .horizontal {
		background: center / auto 100% url("../img/guidestep/sushi/sp/08h.png") no-repeat;
	}
	.guideSteps .stepBox.step9 .sushiParts .vertical {
		background: top center / 100% auto url("../img/guidestep/sushi/sp/09v.png") no-repeat;
	}
	.guideSteps .stepHead {
	  margin-bottom: 6vw;
	}
	.guideSteps .stepHead .stepMark {
	  width: 14.6vw;
	  height: 15vw;
	}
	.guideSteps .stepHead .stepTitle {
	  padding-left: 3vw;
	}	
	.guideSteps .stepHead .stepMark p .step {
	  font-size: 3.8vw;
	}	
	.guideSteps .stepHead .stepMark p .num {
	  font-size: 6.6vw;
	}
	.guideSteps .stepHead .stepTitle h3 .text_jp {
	  font-size: 5vw;
	}	
	.guideSteps .stepHead .stepTitle h3 .text_en {
	  font-size: 4.3vw;
	}
	.guideSteps .stepBody .box h4 {
		font-size: 4vw;
	}
	.guideSteps .stepBody .box p {
		font-size: 3.8vw;
	}
	.guideSteps .stepBody .box .box_jp {
	  margin-bottom: 6vw;
	}	
	.guideSteps .stepBody .box {
	  padding-bottom: 5vw;
	  margin-bottom: 5vw;
	  background: left bottom / auto 0.8vw url("../img/guidestep/boxdot.png") repeat-x;
	}
	.guideSteps .stepBody .box:nth-last-child(1) {
		padding-bottom: 0;
	}
	.guideSteps .btn.redBtn a {
	  width: 100%;
	  height: 16vw;
	}
	.guideSteps .stepBody .hasImg .img img {
	  border-radius: 2.6vw;
	}	
	.step2 .box:nth-child(3)::after {
	  width: 18.6vw;
	  height: 19.32vw; /* 103.5% */
	  position: absolute;
	  right: 0;
	  top: 0;
	  transform: translateX(30%) translateY(-30%);
	}	
	.step2 .box:nth-child(3)::before {
	  width: 19vw;
	  height: 22.8vw;
	  left: -18vw;
	  bottom: 31vw;
	  transform: translateX(0);
	}
	.guideSteps .step3 .stepBody .box:nth-child(1) .box_en {
		padding-right: 18.4vw;
	}
	.step3 .box:nth-child(1)::before {
	  width: 13.4vw;
	  height: 12.5vw;
	  position: absolute;
	  right: 2vw;
	  top: auto;
		bottom: 0;
	  transform: translateX(0) translateY(-100%);
	}
	  .guideSteps .step4 .stepBody .box:nth-last-child(1) {
			padding-bottom: 22vw;
	  }	
	.step4 .box:nth-last-child(1) {
		padding-bottom: 22vw;
	}	
	.step4 .box:nth-child(2)::before {
	  content: "";
	  display: table-cell;
	  background: center / 100% auto url("../img/guidestep/illust/4-1_girls.png") no-repeat;

	  width: 33vw;
	  height: 31.6vw;
	  right: 8vw;
	  bottom: -8vw;
	}	
	.guideSteps .step7 .stepBody .box:nth-child(1) {
		padding-top: 38.3vw;
	}
	.step7 .box:nth-child(1)::before {
	  content: "";
	  display: block;
	  background: center / auto 100% url("../img/guidestep/illust/5_girl.png") no-repeat;

	  width: 100%;
	  height: 35.7vw;
	  position: absolute;
	  right: 0;
	  bottom: auto;
		top: 0;
	}	
	.step8 .box:nth-child(1) {
		padding-top: 18vw;
	}
	.step8 .box:nth-child(1)::before {
	  content: "";
	  display: block;
	  background: center / auto 100% url("../img/guidestep/illust/6_zinger.png") no-repeat;
	  width: 100%;
	  height: 15vw;
	  position: absolute;
	  right: 0;
	  top: 0;
	  transform: translateY(0);
	}	
	.guideSteps .stepBox.step9.boxLeft .stepBoxIn::before {
	  width: 5.3vw;
	  height: calc(100% - 9.3vw);
	  position: absolute;
	  left: -13vw;
	  top: auto;
	  bottom: 0;
	  transform: translateX(4vw) translateY(0);
	  border-bottom-left-radius: 3vw;
	  border-bottom-right-radius: 3vw;
	}
	.guideSteps .step9 .stepBody .box:nth-last-child(1) {
		padding-bottom: 26vw;
	}	
	.step9 .box:nth-child(3)::before {
	  width: 28.4vw;
	  height: 33.2vw;
	  position: absolute;
	  right: auto;
		left: 0;
	  bottom: -7vw;
	  transform: translateX(-10%) translateY(0);
	}
	.guideTOGO .secHead {
	  padding: 12vw 0 6vw;
	}	
	.guideTOGO .secBody .text_jp h3 {
		font-size: 5vw;
	}
	.guideTOGO .secBody .text_en h3 {
		font-size: 4.3vw;
	}
	.guideTOGO .secBody .tableBox {
		border-radius: 3vw;
	}
	.guideTOGO .secBody .text_jp p,
	.guideTOGO .secBody .text_en p,
	.guideTOGO .secBody .tableBox th,
	.guideTOGO .secBody .tableBox td,
	.guideTOGO .secBody .tableBox td p,
	.guideTOGO .secBody .tableBox td li
	{
		font-size: 3.8vw;
	}
	.guideTOGO .secBody .tableBox table,
	.guideTOGO .secBody .tableBox table tbody,
	.guideTOGO .secBody .tableBox table th,
	.guideTOGO .secBody .tableBox table td
	{
			display: block;
			width: 100%;
	}	
	.guideTOGO .secBody .tableBox th {
		border-right: none;
	}
	.guideTOGO .secBody .text_jp {
	  margin-bottom: 6vw;
	}
	.guideTOGO .secBody .text_en {
	  margin-bottom: 6vw;
	}
	.guideTOGO .secBody {
	  padding-bottom: 9vw;
	}
	.faqWrap .faqCatBox .faqCatHead {
	  padding: 11vw 0 4vw;
	}
	.faqWrap .faqCatBox .faqCatHead h3 .text .text_jp {
	  font-size: 5vw;
	}
	.faqWrap .faqCatBox .faqCatHead h3 .text .text_en {
	  font-size: 4.3vw;
	}
	.faqList li {
	  margin-bottom: 4vw;
	  border-radius: 3vw;
	}
	.faqList li .faq_q {
	  padding: 3vw 8vw;
	}
	.faqList li .faq_q::before {
	  width: 3.8vw;
	  height: 4.2vw;
	  position: absolute;
	  left: 3.2vw;
	  top: 3vw;
	}
	.faqList li .faq_q .text_jp {
	  font-size: 4.3vw;
	}
	.faqList li .faq_q .text_en {
	  font-size: 3.8vw;
	}
	.faqList li .faq_a {
	  padding: 4vw 8vw;
	}
	.faqList li .faq_a .text_jp,
	.faqList li .faq_a .text_en {
		font-size: 3.8vw;
	}
	.faqList li .faq_q::after {
	  width: 5.6vw;
	  height: 2.4vw;
	  border-top: 2.4vw solid #FFF;
	  border-left: 2.8vw solid transparent;
	  border-right: 2.8vw solid transparent;
	  position: absolute;
	  right: 4vw;
	  top: 50%;
	}
	.btn.redBtn a .texts > span.text_jp {
	  font-size: 5vw;
	  line-height: 1.3;
	}
}
