@charset "utf-8";




/* ----------------------------------------------------------------------
 * RESET
 * ---------------------------------------------------------------------- */
input,
textarea,
select,
option {
	font-family: 'Roboto', 'Noto Sans JP', sans-serif;
	font-weight: 500;
	margin: 0;
	padding: 0;
}

a {
 cursor: pointer;
}

img {
	vertical-align: top;
	max-width: 100%;
	height: auto;
	/*-ms-interpolation-mode: bicubic;
	-webkit-interpolation-mode: bicubic;
	interpolation-mode: bicubic;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;*/
}



/* ----------------------------------------------------------------------
 * GLOBAL - UTILITY
 * ---------------------------------------------------------------------- */
.u-content {
	margin: 0 0 130px;
	padding: 130px 0 0;
	background-color: transparent;
}

.u-font__serif {
	font-family: 'Noto Serif JP';
}



/* ----------------------------------------------------------------------
 * GLOBAL - Font
 * ---------------------------------------------------------------------- */
.u-font-colorBlue {
	color: #295aa6;
}

.u-font-colorGold2 {
	color: #c4aa65;
}

.u-font-colorGray {
	color: #888;
}

.u-font-small {
 font-size: 78% !important;
}

.u-text-center  {
 text-align: center;
}

.u-text-left  {
 text-align: left;
}

.u-text-right  {
 text-align: right;
}



/* ----------------------------------------------------------------------
 * GLOBAL - Link
 * ---------------------------------------------------------------------- */



/* ----------------------------------------------------------------------
 * GLOBAL - Table
 * ---------------------------------------------------------------------- */



/* ----------------------------------------------------------------------
 * GLOBAL - Icon
 * ---------------------------------------------------------------------- */



/* ----------------------------------------------------------------------
 * GLOBAL - List
 * ---------------------------------------------------------------------- */



/* ----------------------------------------------------------------------
 * Global Title
 * ---------------------------------------------------------------------- */
.u-content-title {
 text-align: center;
 margin-bottom: 40px;
}

.u-content-head {
 font-size: 2.4rem;
 line-height: 1.25;
 margin-bottom: 20px;
}

.u-content-lead {
 font-size: 1.8rem;
 line-height: 2;
 margin-bottom: 20px;
}

.u-content-note {
 font-size: 1.4rem;
 line-height: 1.8;
}



/* ----------------------------------------------------------------------
 * Global Button
 * ---------------------------------------------------------------------- */
.u-button {
 font-size: 2.0rem;
 line-height: 1.3;
 text-align: center;
 border: 1px solid #427abe;
 border-radius: 30px;
 max-width: 500px;
 margin: 40px auto 0;
}
.u-button.is-bgRed {
 background-color: #df2d32 !important;
 border: none;
}

.u-button.is-iconPop span:after {
 background-image: url(../img/icon-arrow-right.png);
 background-size: contain;
 background-repeat: no-repeat;
 content: "";
 display: block;
 height: 15px;
 width: 9px;
 position: absolute;
 right: 30px;
 top: calc(50% - 7px);
}

.u-button.is-iconPop.is-bgRed span:after {
 background-image: url(../img/icon-arrow-right-white.png);
}

.u-button.is-iconPop span {
 padding: 17px 50px 17px 30px;
}

.u-button a,
.u-button span {
 color: #427abe;
 display: block;
 position: relative;
}
.u-button.is-bgRed a,
.u-button.is-bgRed span {
 color: #fff;
}

.u-button.is-iconBlank a,
.u-button.is-iconSerch a {
 padding: 17px 20px;
}

.u-button.is-iconBlank span {
 display: inline-block;
 padding-left: 39px;
}

.u-button.is-iconBlank span:after {
 background: url(../img/icon_blank_blue.png) no-repeat center left / contain;
 content: "";
 display: block;
 height: 19px;
 width: 24px;
 position: absolute;
 left: 0;
 top: calc(50% - 9px);
}

.u-button.is-iconSerch span {
 display: inline-block;
 padding-left: 37px;
}

.u-button.is-iconSerch span:after {
 background: url(../img/icon_serch_blue.png) no-repeat center left / contain;
 content: "";
 display: block;
 height: 26px;
 width: 22px;
 position: absolute;
 left: 0;
 top: calc(50% - 13px);
}



/* ----------------------------------------------------------------------
 * margin
 * ---------------------------------------------------------------------- */



/* ----------------------------------------------------------------------
 * LAYOUT
 * ---------------------------------------------------------------------- */
.g-container {
	font-size: 16px;
	font-size: 1.6rem;
	font-family: 'Roboto', 'Noto Sans JP', sans-serif;
	font-weight: 400;
	-webkit-font-feature-settings: 'pkna';
	-moz-font-feature-settings: 'pkna';
	font-feature-settings: 'pkna';
	line-height: 1;
	letter-spacing: .05em;
 
	background-color: #fff;
	position: relative;
	top: 124px;
	padding-bottom: 124px;
}



/* ----------------------------------------------------------------------
 * Shop Search
 * ---------------------------------------------------------------------- */



/* ----------------------------------------------------------------------
 * Content last line
 * ---------------------------------------------------------------------- */



/* ----------------------------------------------------------------------
 * page menu
 * ---------------------------------------------------------------------- */



/* ----------------------------------------------------------------------
 * KEY VISUAL
 * ---------------------------------------------------------------------- */
.c-kv {
	padding: 41.75% 0 0;
	position: relative;
	overflow: hidden;
}

.c-kv__title {
	text-align: center;
	width: 100%;
	padding: 25px 0 0;
	position: absolute;
	top: 50%;
	left: 0;
	z-index: 10;
	transform: translate(0,-50%);
}

.c-kv__title img {
	margin-left: -360px;
}

.c-kv__image {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.c-kv__image img {
	width: 100%;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%,0);
}



/* ----------------------------------------------------------------------
 * MENU
 * ---------------------------------------------------------------------- */
.c-menu {
	text-align: center;
	background: #c4aa65;
}

.c-menu-items {
	letter-spacing: -.5em;
	margin: 0 -3px;
}

.c-menu-item {
	letter-spacing: 0;
	display: inline-block;
	padding: 20px 3px;
	width: 25%;
	position: relative;
}

.c-menu-item a {
	color: #c4aa65;
	font-weight: bold;
	line-height: 1.5;
	min-height: 5.25em;
	background: #fff;
	border-radius: 5px;
	display: block;
	padding: 12px 0;
}

.c-menu-item a:after {
	border-left: 9px solid transparent;
	border-right: 9px solid transparent;
	border-top: 9px solid #c4aa65;
	content: "";
	display: block;
	height: 0;
	width: 0;
	margin: .3em auto 0;
	position: absolute;
	bottom: 20px;
	left: 50%;
	transform: translate(-50%,-100%);
}

.c-menu-item a span {
	width: 100%;
	display: block;
	position: absolute;
	top: calc(50% - 10px);
	left: 0;
	transform: translate(0,-50%);
}

.c-menu-item:nth-child(1) a span,
.c-menu-item:nth-child(2) a span {
	letter-spacing: -.05em;
}


/* ----------------------------------------------------------------------
 * COMENT
 * ---------------------------------------------------------------------- */
.l-coment {
 color: #427abe;
 background: url(../img/coment-bg.png) no-repeat top center / cover;
 padding: 40px 0;
}

.l-coment-inner {
 background: #fff;
 padding: 50px 5%;
}

.l-coment-img {
 position: absolute;
 bottom: -40px;
 right: 70%;
 width: 20%;
}

.l-coment-text {
 font-size: 2.4rem;
 font-weight: bold;
 line-height: 1.8;
 text-align: center;
 padding-left: 30%;
}

.l-coment-text small {
 font-size: 70%;
 vertical-align: text-bottom;
}



/* ----------------------------------------------------------------------
 * OTHER
 * ---------------------------------------------------------------------- */
.l-other-block {
 margin-top: 80px
}

.l-other-head {
 font-size: 3.0rem;
 letter-spacing: 0.1em;
 position: relative;
 margin-bottom: 50px;
}

.l-other-head:before {
 background: #c4aa65;
 content: "";
 height: 3px;
 width: 80px;
 position: absolute;
 left: -100px;
 top: 50%;
}

.l-other-menu {
 font-weight: bold;
 text-align: center;
 display: table;
 table-layout: fixed;
 border-collapse: separate;
 border-spacing: 30px 0;
 width: 60%;
 margin: 0 auto;
}

.l-other-menu.is-fotter {
 margin-top: 60px;
}

.l-other-menu li {
 background: url(../img/other-arrow-down.png) no-repeat center left 30px / 18px auto;
 display: table-cell;
 vertical-align: middle;
}

.l-other-menu.is-fotter li {
 background-image: url(../img/other-arrow-up.png);
}

.l-other-menu li .e-link {
 line-height: 60px;
 border: 2px solid #ddd;
 border-radius: 10px;
 display: block;
}

 
/*VOICE*/
.l-voice-block {
	overflow: hidden;
}

.l-voice-items {
 letter-spacing: -.5em;
 margin: 0 -20px;
}

.l-voice-item {
 letter-spacing: 0;
 display: inline-block;
 width: 50%;
 padding: 0 20px 30px;
}

.l-voice-item-inner {
 background: url(../img/voice-bg-fotter.png) no-repeat bottom center / contain;
 padding-bottom: 108px;
}

.l-voice-item .e-number {
 font-family: 'Roboto';
 font-size: 4.0rem;
 font-weight: 900;
 border: 1px solid #cb9e68;
 border-bottom: none;
 padding: 40px 40px 15px;
 border-radius: 20px 20px 0 0;
}

.l-voice-item .e-number span {
 display: block;
 height: 32px;
}

.l-voice-item .e-number span:before {
 content: "";
 display: inline-block;
 background: url(../img/voice-icon.png) no-repeat left 0 center / 100% auto;
 height: 32px;
 width: 138px;
 margin-right: 10px;
}

.l-voice-item .e-text {
 font-size: 1.8rem;
 line-height: 2.55;
 background: url(../img/voice-bg-line.png) repeat-y top;
 border: 1px solid #cb9e68;
 border-bottom: none;
 border-top: none;
 padding: 0 40px 5px;
}

.l-voice-item .e-text b {
 text-align: right;
 display: block;
}

.l-voice-item .e-text span {
 background: #ffd9e4;
 margin: 0 0.2em;
 padding: 0 0.2em;
}

.l-voice-item .e-text b i {
	color: #fff;
	font-size: 1.3rem;
	line-height: 1;
	margin: 0 .5em 0 0;
	padding: .5em 1em;
	border-radius: 1em;
	display: inline-block;
	background: #c4aa65;
	transform: translate(0,.75em);
}


/*FAQ*/
.l-other-head + .l-faq-block {
 margin-top: 10px;
}
.l-faq-block {
 margin-top: 80px;
}

.l-faq-block {
 margin-top: 80px;
}

.l-faq-title {
 border-left: 10px solid #427abe;
 font-size: 2.4rem;
 font-weight: bold;
 letter-spacing: 0.1em;
 line-height: 1.5;
 padding: 0.3em 0 0.3em 30px;
}

.l-faq-qa .e-title {
 font-weight: bold;
 line-height: 1.5;
 border-bottom: 1px solid #eee;
 padding: 40px 30px;
 position: relative;
 cursor: pointer;
}

.l-faq-qa .e-title p {
 padding-left: 60px;
 position: relative;
}

.l-faq-qa .e-title p:before {
 color: #c4aa65;
 font-size: 1.8rem;
 line-height: 38px;
 text-align: center;
 border: 1px solid #c4aa65;
 border-radius: 40px;
 content: "Q";
 display: block;
 height: 40px;
 width: 40px;
 position: absolute;
 left: 0;
 top: -0.5em;
}

.l-faq-qa .e-title span:before {
 background: #ccc;
 content: "";
 width: 16px;
 height: 2px;
 position: absolute;
 top: 0.5em;
 right: 0;
 transition: all .3s ease-in-out;
 transform: rotate(90deg);
}

.l-faq-qa .e-title span:after {
 background: #ccc;
 content: "";
 width: 16px;
 height: 2px;
 position: absolute;
 top: 0.5em;
 right: 0;
 transition: all .2s ease-in-out;
}

.l-faq-qa .e-title.open span:before {
 transform: rotate(180deg);
}

.l-faq-qa .e-title.open span:after {
 opacity: 0;
}

.l-faq-qa .e-content {
 line-height: 2;
 background: #ffefc3;
 position: relative;
 margin-top: -1px;
 padding: 40px 30px;
}

.l-faq-qa .e-content p {
 padding-left: 60px;
 position: relative;
}

.l-faq-qa .e-content p:before {
 color: #fff;
 font-size: 1.8rem;
 line-height: 40px;
 text-align: center;
 background: #c4aa65;
 border-radius: 40px;
 content: "A";
 display: block;
 height: 40px;
 width: 40px;
 position: absolute;
 left: 0;
 top: -0.5em;
}

.l-faq-qa .e-content p.iconNone:before {
	display: none;
}

.l-faq-qa .e-content p > b {
	margin: 2em 0 0;
	display: block;
}

.l-faq__year {
	padding: 20px 0 20px 60px;
}

.l-faq__yearTitle {
	font-weight: 700;
	padding: 0 !important;
}

.l-faq__yearList {
	margin: 5px -3px 0;
	display: flex;
	flex-wrap: wrap;
}

.l-faq__yearItem {
	width: calc((100% / 5) - 6px);
	margin: 0 3px;
	padding: 20% 0 0;
	background: #fff;
	position: relative;
}

.l-faq__yearItem span {
	line-height: 1.35;
	text-align: center;
	width: 100%;
	display: block;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
}

.l-faq__yearItem em {
	display: block;
}

.l-faq__yearItem b {
	color: #c4aa65;
	font-size: 2.8rem;
	font-weight: 700;
	display: block;
}

.l-faq__yearItem b:after {
	content: '年';
	font-size: 2.2rem;
	font-weight: 700;
}






.c-userVoice {
	margin: 60px 0 0;
}

.c-userVoice__title {
	text-align: center;
}

.c-userVoice__text {
	font-size: 1.8rem;
	line-height: 2;
	margin: 20px 0 0;
}

.c-userVoice__text b {
	color: #df2d32;
	font-weight: 700;
}

.c-userVoice__data {
	margin: 60px 0 0;
	display: flex;
	justify-content: center;
}

.c-userVoice__data figure:nth-child(1) {
	width: 320px;
	padding: 0 20px 0 0;
}

.c-userVoice__data figure:nth-child(2) {
	width: 315px;
	padding: 0 0 0 20px;
}





.u-checkTitle {
	text-align: center;
	margin-top: 120px;
}

.u-checkTitle__text {
	margin: 30px 0 0;
	display: block;
}

.c-suiminBanner {
	text-align: center;
	margin: 30px 0 0;
}

.c-suiminBanner a {
	display: flex;
	align-items: center;
	justify-content: center;
}

.c-suiminBanner img {
	border: 1px solid #ddd;
}

.c-suiminBanner em {
	font-size: 1.8rem;
	padding: 0 0 0 15px;
}

.c-prologue {
	margin: 50px 0 -80px;
	position: relative;
}

.c-prologue__inner {
	position: relative;
}

.c-prologue__message {
	padding: 15% 0 0;
	background: linear-gradient(to bottom, #f9f6ef 0%, #eae1c8 100%);
	position: relative;
}

.c-prologue__message em {
	font-size: 2.6rem;
	white-space: nowrap;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 10;
}

.c-prologue__message em:nth-child(1) {
	text-indent: -12em;
	margin-top: -.85em;
}

.c-prologue__message em:nth-child(1):after {
	content: '';
	width: 140px;
	height: 1px;
	display: block;
	background: #000;
	position: absolute;
	top: 50%;
	right: -.5em;
	transform: translate(100%,0);
}

.c-prologue__message em:nth-child(2) {
	text-indent: 5em;
	margin-top: .85em;
}

.c-prologue__title {
	color: #fff;
	text-shadow: 0 0 3px rgba(0,0,0,.5);
	text-align: center;
	width: 20%;
	padding: 19% 0 0;
	border-radius: 50%;
	border: 6px solid #fff;
	background: #c4aa65;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.c-prologue__titleInner {
	width: 100%;
	display: block;
	position: absolute;
	top: calc(50% - 10px);
	left: 0;
	transform: translate(0,-50%);
}

.c-prologue__title * {
	vertical-align: bottom;
}

.c-prologue__title b {
	font-size: 1.6vw;
	line-height: 1.5;
	letter-spacing: -.05em;
	display: block;
}

.c-prologue__title em {
	font-size: 3.4vw;
	letter-spacing: -.025em;
	margin: 8px 0 0;
	display: block;
}

.c-prologue__title em i {
	margin-left: -.2em;
	display: inline-block;
}

.c-prologue__title small {
	font-size: 2vw;
	margin: 0 0 0 .05em;
	display: inline-block;
	transform: translate(0,-.05em);
}

.c-prologue__title small small {
	font-size: 1vw;
	margin: 0 0 0 -.4em;
	display: inline-block;
}

.c-prologue__image {
	display: flex;
	border-bottom: 10px solid #c4aa66;
}

.c-prologue__image img {
	width: 100%;
}

.c-pointCorner {
	margin: 120px 0 0;
}

.c-pointCorner__title {
	color: #c4aa65;
	display: flex;
	align-items: center;
}

.c-pointCorner__title span {
	font-size: 9rem;
	padding: 0 0 0 27px;
	position: relative;
}

.c-pointCorner__title span:before {
	content: attr(data-title)'';
	font-size: 1.7rem;
	letter-spacing: .2em;
	position: absolute;
	top: -.25em;
	left: 0;
	transform-origin: bottom left;
	transform: rotate(90deg);
}

.c-pointCorner__title em {
	font-size: 3rem;
	letter-spacing: .05em;
	padding: 0 .75em;
}

.c-pointCorner__title em sub {
	font-size: 1.3rem;
	vertical-align: bottom;
	opacity: .75;
}

.c-pointCorner__title a > img {
	border: 1px solid #ddd;
}

.c-pointCorner__imageItems {
	margin: 30px 0 50px;
	display: flex;
}

.c-pointCorner__imageItem {
	width: calc(100% / 3);
}

.c-pointCorner__imageItem img {
	width: 100%;
	max-width: none;
}

.c-pointCorner--1 .c-pointCorner__titleSub {
	font-size: 2.2rem;
	letter-spacing: 0.1em;
	line-height: 1.5;
}

.c-pointCorner--1 .c-pointCorner__titleSub small {
	font-size: 1.6rem;
	font-weight: 400;
	letter-spacing: 0;
	display: block;
}

.c-pointCorner--1 .c-pointCorner__text {
	font-size: 1.8rem;
	line-height: 2;
	margin: 15px 0 0;
}

.c-aboutSleepMaster {
	margin: 45px 0 0;
	border: 1px solid #ddd;
	position: relative;
	overflow: hidden;
}

.c-aboutSleepMaster:after {
	content: '';
	width: 100%;
	height: 200px;
	background: linear-gradient(to bottom, #fcf8e8 0%, #ffffff 100%);
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
}

.c-aboutSleepMaster__title {
	padding: 30px 40px;
	position: relative;
	z-index: 10;
	cursor: pointer;
	transition: .2s;
}

.c-aboutSleepMaster__title:hover {
	opacity: .8;
}

.c-aboutSleepMaster__title.is-open:after {
	content: '';
	width: calc(100% - 80px);
	height: 1px;
	background: #ddd;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%,0);
}

.c-aboutSleepMaster__title em {
	color: #c4aa65;
	font-size: 2rem;
	font-weight: 700;
}

.c-aboutSleepMaster__title i {
	width: 40px;
	height: 40px;
	display: block;
	border-radius: 50%;
	background: #d4d4d4;
	position: absolute;
	top: 50%;
	right: 40px;
	transform: translate(0,-50%);
}

.c-aboutSleepMaster__title i:before,
.c-aboutSleepMaster__title i:after {
	content: '';
	width: 50%;
	height: 4px;
	display: block;
	background: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	transition: .4s;
}

.c-aboutSleepMaster__title i:before {
	margin-top: -4px;
}

.c-aboutSleepMaster__title i:after {
	margin-top: 4px;
}

.c-aboutSleepMaster__title.is-open i:before {
	margin-top: 0;
	transform: translate(-50%,-50%) rotate(45deg);
}

.c-aboutSleepMaster__title.is-open i:after {
	margin-top: 0;
	transform: translate(-50%,-50%) rotate(-45deg);
}

.c-aboutSleepMaster__inner {
	position: relative;
	z-index: 10;
	display: none;
}

.c-aboutSleepMaster__innerBox {
	padding: 20px 40px 30px;
}

.c-aboutSleepMaster__inner span {
	line-height: 2;
}

.c-aboutSleepMaster__inner b {
	color: #c4aa65;
	font-weight: 700;
}

.c-aboutSleepMaster__inner figure {
	width: 320px;
	padding: .5em 0 30px 30px;
	float: right;
}

.c-aboutSleepMaster__inner figcaption {
	font-size: 1.3rem;
	text-align: center;
	margin: 1em 0 0;
	display: block;
}

.c-masterTips {
	margin: 60px 0 0;
}

.c-masterTips__inner {
	padding: 60px 60px 40px;
	background: url("../img/bg-01.png");
}

.c-masterTips__title {
	text-align: center;
	padding: 0 0 0 110px;
	position: relative;
}

.c-masterTips__title em:nth-child(2) {
	margin: 20px 80px 0 0;
	display: block;
}

.c-masterTips__title figure {
	width: 130px;
	position: absolute;
	top: -35px;
	left: 0;
}

.c-masterTips__innerBox {
	margin: 30px 0 0;
}

.c-masterTips--1 .c-masterTips__innerBox {
	display: flex;
	align-items: center;
}

.c-masterTips--1 .c-masterTips__innerBox p {
	line-height: 1.75;
	width: 50%;
}

.c-masterTips--1 .c-masterTips__innerBox figure {
	width: 50%;
	padding: 0 0 0 20px;
}

.c-masterTips--2 .c-masterTips__text {
	line-height: 1.75;
	margin: 80px 0 0;
}

.c-masterTipsDetail {
	margin: 50px 0 0;
}

.c-masterTipsDetail h3 {
	text-align: center;
}

.c-masterTipsDetail p {
	text-align: center;
	margin: 25px 0 0;
}

.c-masterTipsIllustrate {
	margin: 30px 0 20px;
	padding: 10px;
	background: #fff;
}

.c-masterTipsIllustrate__point {
	margin: 20px 0 0;
	display: flex;
}

.c-masterTipsIllustrate__pointImage {
	width: 46%;
	padding: 0 20px 0 0;
}

.c-masterTipsIllustrate__pointImage img {
	border: 1px solid #1b1b1b;
}

.c-masterTipsIllustrate__pointText {
	text-align: left !important;
	width: calc(100% - 46%);
	margin: 0 !important;
	padding: 20px 60px 20px 20px;
	background: #efefef;
}

.c-masterTipsIllustrate__pointText img {
	width: 90%;
}

.c-actionButton {
	margin: 80px 0 0;
	padding: 60px 0 40px;
	background: #c4aa65;
}

.c-actionButton__text {
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
	letter-spacing: .1em;
}

.c-actionButton__text b {
	color: #c4aa65;
	margin: 0 .25em;
	padding: .5em 1em;
	background: #fff;
	display: inline-block;
	transform: translate(0,-.5em);
}

.c-actionButton__button {
	color: #c4aa65;
	font-size: 2.2rem;
	font-weight: 700;
	text-align: center;
	margin: 20px 0 0;
}

.c-actionButton__button a {
	color: #c19a33;
	min-width: 610px;
	padding: 30px 0;
	display: inline-block;
	background: #fff;
	border-radius: 100px;
}

.c-actionButton__button a em {
	padding: 0 0 0 60px;
	display: inline-block;
	position: relative;
}

.c-actionButton__button a em:before {
	content: '';
	width: 36px;
	height: 36px;
	display: inline-block;
	background: url("../img/icon-calender.png") no-repeat center / 100% 100%;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
}

.c-prevention {
	padding: 50px 0 40px;
	background: #d9f1db;
}

.c-prevention__text {
	color: #525252;
	font-size: 1.6rem;
	font-weight: 700;
	text-align: center;
	letter-spacing: .15em;
}

.c-prevention__items {
	margin: 20px 0 0;
	padding: 0 100px;
	display: flex;
}

.c-prevention__item {
	width: calc(100% / 3);
	display: flex;
	align-items: center;
}

.c-prevention__item figure {
	width: 80px;
}

.c-prevention__item em {
	color: #48974e;
	font-size: 1.8rem;
	font-weight: 700;
	white-space: nowrap;
	padding: 0 0 0 20px;
	display: inline-block;
}



.c-pointCorner--2 .c-pointCorner__inner {
	margin: 30px 0 0;
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
}

.c-pointCorner--2 .c-pointCorner__inner p {
	font-size: 1.8rem;
	line-height: 2;
	width: 50%;
	padding: 0 20px 0 0;
}

.c-pointCorner--2 .c-pointCorner__inner figure {
	width: 50%;
	padding: 0 0 0 20px;
}



.c-flowCorner {
	margin: 50px 0 0;
}

.c-flowCorner__title {
	text-align: center;
}

.c-flowCorner__inner {
	margin: 40px 0 0;
	display: flex;
}

.c-flowCorner__image {
	width: 50%;
	padding: 0 20px 0 0;
}

.c-flowCorner__text {
	font-size: 1.8rem;
	line-height: 2;
	width: 50%;
	margin: -.5em 0 0;
	padding: 0 0 0 20px;
}



.c-stepCorner {
	margin: 60px 0 0;
}

.c-stepCorner__title {
	text-align: center;
}

.c-stepCorner__items {
	margin: 10px -30px 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.c-stepCorner__item {
	width: calc(100% / 3);
	margin: 40px 0 0;
	padding: 0 30px;
	position: relative;
}

.c-stepCorner__item:before {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 15px 0 15px 15px;
	border-color: transparent transparent transparent #c4aa65;
	position: absolute;
	top: 25%;
	left: -5px;
}

.c-stepCorner__item:first-child:before {
	display: none;
}

.c-stepCorner__item:after {
	content: attr(data-num)'';
	color: #c4aa65;
	font-size: 2.6rem;
	font-weight: 700;
	line-height: 1;
	text-align: center;
	width: 40px;
	height: 40px;
	padding: .175em 0 0;
	background: #fff;
	border-radius: 50%;
	border: 2px solid #c4aa65;
	transform: translate(0,-50%);
	position: absolute;
	top: 5px;
	left: 15px;
	box-sizing: border-box;
}

.c-stepCorner__image img {
	border: 2px solid #c4aa65;
}

.c-stepCorner__title {
	font-size: 1.8rem;
	padding: 20px 0;
}

.c-stepCorner__text {
	font-size: 1.4rem;
	line-height: 1.5;
}

.c-movieCorner {
	margin: 80px 0 0;
	padding: 100px 0 60px;
	background: #f3eee0;
}

.c-movieCorner__title {
	text-align: center;
}

.c-movieCornerPlayer {
	margin: 30px 0 0;
	padding: 56.25% 0 0;
	position: relative;
}

.c-movieCornerPlayer iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

.c-aftercare {
	color: #fff;
	margin: 95px 0 0;
}

.c-aftercare__inner {
	padding: 0 0 50px;
	background: #c4aa65;
}

.c-aftercare__title {
	display: flex;
	flex-direction: row-reverse;
	align-items: flex-end;
}

.c-aftercare__text {
	width: 50%;
	padding: 0 50px;
}

.c-aftercare__text h2 {
	font-size: 3rem;
	line-height: 1.5;
	letter-spacing: .1em;
}

.c-aftercare__text p {
	font-weight: 700;
	line-height: 2;
	margin: 20px 0 0;
}

.c-aftercare__titleImage {
	width: 50%;
}

.c-aftercare__box {
	margin: 50px 50px 0;
	padding: 30px 0 0;
	border-top: 1px solid #dbceab;
}

.c-aftercare__box h3 {
	font-size: 2.6rem;
	text-align: center;
}

.c-aftercare__boxInner {
	margin: 5px -10px 0;
	display: flex;
	flex-wrap: wrap;
}

.c-aftercare__boxChild {
	color: #000;
	width: calc((100% / 2) - 20px);
	margin: 20px 10px 0;
	padding: 30px;
	border-radius: 20px;
	box-shadow: 0 0 10px 0 rgba(0,0,0,.15);
}

.c-aftercare__boxChild--1 {
	background: #fff url("../img/aftercare-01.png") no-repeat right -5% bottom -300% / 40% auto;
}

.c-aftercare__boxChild--2 {
	background: #fff url("../img/aftercare-02.png") no-repeat right -5% bottom 100% / 40% auto;
}

.c-aftercare__boxChild--3 {
	background: #fff url("../img/aftercare-03.png") no-repeat right -5% bottom 30% / 42.5% auto;
}

.c-aftercare__boxChild--4 {
	background: #fff url("../img/aftercare-04.png") no-repeat right -5% bottom -30% / 42.5% auto;
}

.c-aftercare__boxChild h4 {
	color: #c4aa65;
	font-size: 1.8rem;
	position: relative;
}

.c-aftercare__boxChild h4 b {
	color: #427abe;
}

.c-aftercare__boxChild h4 em {
	line-height: 1.35;
	padding: 0 0 0 50px;
	display: block;
}

.c-aftercare__boxChild h4 i {
	color: #fff;
	font-size: 2.2rem;
	text-align: center;
	width: 40px;
	height: 40px;
	padding: .425em 0 0;
	border-radius: 50%;
	background: #c4aa65;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
}

.c-aftercare__boxChild p {
	line-height: 1.75;
	margin: 25px 0 0;
}

.c-aftercare_note {
	margin: 20px 0 0;
}

.c-aftercare_note li {
	font-size: 1.1rem;
	margin: 5px 0 0;
}

.c-lineup {
	margin: 0 0 -80px;
	padding: 0 0 100px;
	background: #f0f5fa;
}

.c-lineup__title > * {
	position: relative;
	z-index: 10;
}

.c-lineup__title:after {
	content: 'LINEUP';
	color: #dce5f2;
	font-size: 22.5rem;
	font-weight: 700;
	position: absolute;
	top: calc(50% - 15px);
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 0;
}

.c-lineup__title {
	padding: 120px 0 0;
	display: block;
	position: relative;
}

.c-lineup__title h2 {
	text-align: center;
}

.c-lineup__title h3 {
	text-align: center;
	margin: 60px 0 0;
}

.c-lineup__title p {
	font-size: 2rem;
	text-align: center;
	margin: 30px 0 0;
}

.c-lineup__title p small {
	font-size: 1.3rem;
	text-align: center;
	margin: 10px 0 0;
	display: block;
}

.c-lineup__inner {
	margin: 60px 0 0;
	padding: 0 0 40px;
	background: #fff;
	border-radius: 20px;
	box-shadow: 0 0 30px 0 rgba(0,0,0,.1);
	overflow: hidden;
}

.c-lineup__inner h3 {
	color: #fff;
	font-size: 2rem;
	font-weight: 700;
	text-align: center;
	letter-spacing: .05em;
	padding: 25px 0;
}

.c-lineup__list {
	margin: 0 -15px;
	padding: 0 60px;
	display: flex;
	flex-wrap: wrap;
}

.c-lineup__items {
	width: calc(100% / 3);
	margin: 40px 0 0;
	padding: 0 15px;
}

.c-lineup__items--3 {
	width: 100%;
}

.c-lineup__items--2 {
	width: calc((100% / 3) * 2);
}

.c-lineup__itemsChild {
	display: flex;
	flex-wrap: wrap;
}

.c-lineup__item {
	text-align: center;
	width: 100%;
	margin: 30px 0 0;
}

.c-lineup__items--3 .c-lineup__item {
	width: calc(100% / 3);
}

.c-lineup__items--2 .c-lineup__item {
	width: calc(100% / 2);
}

.c-lineup__list h4 {
	padding: 0 0 .75em;
	border-bottom: 1px solid #000;
}

.c-lineup__item h5 {
	font-size: 1.8rem;
	line-height: 1.35;
	margin: 20px 0 0;
	display: block;
}

.c-lineup__item p {
	font-size: 1.4rem;
	line-height: 1.75;
	margin: 15px 0 0;
}

.c-lineup__mainRead {
	font-weight: 700;
	line-height: 1.75;
	text-align: center;
	margin: 30px 0 0;
}

.c-lineup__planBCorner {
	margin: 30px 0 0;
	padding: 0 60px
}

.c-lineup__planBCorner h4 {
	font-size: 2rem;
	font-weight: 400;
	padding: 0 0 10px;
	border-bottom: 2px solid #c4aa65;
	position: relative;
}

.c-lineup__planBCorner h4 em {
	color: #fff;
	font-size: 1.5rem;
	font-weight: 700;
	letter-spacing: 0;
	padding: .5em 1em;
	display: inline-block;
	background: #BD0003;
	border-radius: 10em;
	transform: translate(1em,-.4em);
}

.c-lineup__planA h3 {
	background: #427abe;
}

.c-lineup__planB h3 {
	background: #c4aa65;
}

.c-lineup__planA .c-lineup__list h4 {
	border-bottom: 1px solid #427abe;
}

.c-lineup__planBCornerInner {
	margin: 30px 0 0;
	display: flex;
}

.c-lineup__planBCornerInner > div:nth-child(1) {
	width: 57.65%;
	padding: 0 30px 0 40px;
}

.c-lineup__planBCornerInner > div:nth-child(1) p {
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	margin: 20px 0 0;
}

.c-lineup__planBCornerInner > div:nth-child(2) {
	width: calc(100% - 57.65%);
	padding: 0 30px 0 0;
}

.c-lineup__planBCornerInner > div:nth-child(2) > div {
	margin: 0 0 20px;
	display: flex;
	align-items: center;
}

.c-lineup__planBCornerInner > div:nth-child(2) > div figure {
	width: 100px;
}

.c-lineup__planBCornerInner > div:nth-child(2) > div p {
	font-size: 1.4rem;
	line-height: 1.75;
	width: calc(100% - 100px);
	padding: 0 0 0 20px;
}

.c-lineup__planBCorner--seiatsu {
	margin-top: 60px;
}

.c-lineup__planBCorner--seiatsuInner {
	margin: 30px 0 0;
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
}

.c-lineup__planBCorner--seiatsuInner p {
	width: 50%;
}

.c-lineup__planBCorner--seiatsuInner figure {
	width: 50%;
}

.c-lineup__planBCorner--seiatsuInnerA p {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.75;
	padding: 0 0 0 80px;
}

.c-lineup__planBCorner--seiatsuInnerA p small {
	font-size: 1.4rem;
	font-weight: 400;
	display: block;
}

.c-lineup__planBCorner--seiatsuInnerB {
	flex-direction: row;
}

.c-lineup__planBCorner--seiatsuInnerB p {
	font-size: 1.4rem;
	line-height: 1.5;
}

.c-lineup__planBCorner--seiatsuInnerB p {
	width: calc(100% - 65.85%);
}

.c-lineup__planBCorner--seiatsuInnerB figure {
	width: 65.85%;
	padding: 0 0 0 30px;
}

.c-lineup__planBCorner--newmine {
	margin-top: 60px;
}

.c-lineup__planBCorner--newmineInner {
	margin: 30px 0 0;
	display: flex;
	align-items: center;
	flex-direction: row-reverse;
}

.c-lineup__planBCorner--newmineInner p {
	width: 50%;
}

.c-lineup__planBCorner--newmineInner figure {
	width: 50%;
}

.c-lineup__planBCorner--newmineInnerA p {
	font-size: 1.8rem;
	font-weight: 700;
	line-height: 1.75;
	padding: 0 40px 0 80px;
}

.c-lineup__planBCorner--newmineInnerA p small {
	font-size: 1.4rem;
	font-weight: 400;
	display: block;
}

.c-lineup__planBCorner--newmineInnerB {
	flex-direction: row;
}

.c-lineup__planBCorner--newmineInnerB figure {
	width: 100%;
	padding: 0 30px
}

.c-lineup__note {
	font-size: 1.3rem;
	margin: 2em 0 0 1em;
	opacity: .75
}

/* SHOP LP */
.g-header--shop,
.g-footer--shop {
	display: none;
}

.g-footer {
	position: relative;
}

.c-shoplpHeader__name {
	color: #765b3b;
	font-size: 3.4rem;
	font-weight: 700;
	text-align: center;
	letter-spacing: .1em;
	width: 100%;
	padding: 0 260px;
	display: none;
	position: absolute;
	top: calc(50% - .1em);
	left: 0;
	transform: translate(0,-50%);
}

.is-scroll .c-shoplpHeader__name {
	font-size: 2.4rem;
	padding: 0 210px;
}

.c-shoplpHeader__name small {
	font-size: 1.6rem;
	letter-spacing: .1em;
	margin: .75em 0 0;
	display: block;
}

.is-scroll .c-shoplpHeader__name small {
	font-size: 1.3rem;
}

.c-shoplpHeader__tel {
	font-size: 2.8rem;
	font-weight: 700;
	letter-spacing: 0;
	display: none;
	position: absolute;
	top: 50%;
	right: 30px;
	transform: translate(0,-47.5%);
}

.is-scroll .c-shoplpHeader__tel {
	font-size: 2.2rem;
	right: 20px;
}

.c-shoplpHeader__tel:before {
	content: '';
	width: 1.25em;
	height: 1.25em;
	display: inline-block;
	border-radius: 3px;
	background: #c4aa65 url("/contents/nishikawa-chain/shops/icon-tel.png") no-repeat center / 65% auto;
	transform: translate(0,-.15em);
}

.c-actionButton__buttonShop {
	color: #c4aa65;
	font-size: 2.2rem;
	font-weight: 700;
	text-align: center;
	margin: 20px 0 0;
	display: none;
}

.is-shoplp_url .c-actionButton__buttonShop {
	display: block;
}

.c-actionButton__buttonShop a {
	color: #c19a33;
	min-width: 710px;
	padding: 30px 0;
	display: inline-block;
	background: #fff;
	border-radius: 100px;
}

.c-actionButton__buttonShop a em {
	padding: 0 0 0 60px;
	display: inline-block;
	position: relative;
}

.c-actionButton__buttonShop a em:before {
	content: '';
	width: 36px;
	height: 36px;
	display: inline-block;
	background: url(../img/icon-calender.png) no-repeat center / 100% 100%;
	position: absolute;
	top: 50%;
	left: 0;
	transform: translate(0,-50%);
}

.c-actionButton__buttonShop.js-tel {
	color: #fff;
	font-size: 3rem;
	font-weight: 700;
	text-align: center;
}

.c-actionButton__buttonShop.js-tel:before {
	content: 'ご予約はこちらの電話番号まで：';
	color: #c19a33;
	font-size: 1.8rem;
}

.c-shoplpFooter {
	padding: 60px 0;
	display: flex;
	justify-content: center;
	position: relative;
	align-items: center;
	z-index: 10;
}

.c-shoplpFooter .c-shoplpHeader__tel {
	color: #000;
}

.c-shoplpFooter .c-shoplpHeader__name {
	font-size: 3rem;
}

.c-actionButton__buttonShopTel {
	color: #fff;
	font-size: 5rem;
	font-weight: 700;
	text-align: center;
	margin: 20px 0 0;
	display: none;
}

.c-actionButton__buttonShopTel a {
	color: #fff;
}

.c-actionButton__buttonShopTel:before {
	content: 'ご予約はこちらの電話番号まで：';
	color: #fff;
	font-size: 2rem;
}

.is-shoplp_name .g-header.inc-header,
.is-shoplp_name .g-footer.inc-footer,
.is-shoplp_name .g-header .g-header-button,
.is-shoplp_name .g-footer-logo,
.is-shoplp_name .g-footer-nav,
.is-shoplp_name .l-copyright,
.is-shoplp_name .c-actionButton__button {
	display: none;
}

.is-shoplp_name .g-header.g-header--shop,
.is-shoplp_name .g-footer.g-footer--shop,
.is-shoplp_name .c-shoplpHeader__name,
.is-shoplp_name .c-shoplpHeader__tel,
.is-shoplp_name .c-actionButton__buttonShopTel {
	display: block;
}

.is-shoplp_name.is-shoplp_url .c-actionButton__buttonShopTel {
	display: none;
}

.is-color--1 .g-footer {
	background-color: #f4e3b4;
}

/* 2022.03 */
.l-relationEntry {
	margin: 60px 0 -20px;
	position: relative;
}

.l-relationEntry .u-inner {
	padding: 0 0 60px;
	border-bottom: 1px solid #ddd;
}

.l-relationEntry__title {
	font-size: 2.4rem;
	font-weight: 700;
	text-align: center;
	margin: 0 0 30px;
	padding: 0 1em 0 0;
}

.l-relationEntry__title:before {
	content: '';
	vertical-align: -.25em;
	width: 38px;
	height: 32px;
	margin: 0 10px 0 0;
	display: inline-block;
	background: url(/contents/nishikawa-chain/img/icon-02.png) no-repeat center / 100% auto;
}

.l-relationEntry ul li {
	font-size: 18px;
	text-align: center;
}

.l-relationEntry ul li a {
	text-decoration: underline;
}


/* ----------------------------------------------------------------------
 * NEWS
 * ---------------------------------------------------------------------- */
.newsSec {
	margin-top: 60px;
	font-size: 1.4rem;
	line-height: 1.5;
}

.newsSec__inner {
	padding: 30px;
	border: 1px solid #ef9698;
}

.newsSec .dsplay-ib {
	display: inline-block;
}

.newsSec .bold {
	font-weight: bold;
}

.newsSec .underline {
	text-decoration: underline;
}

.newsSec dl {
	margin-bottom: 2em;
}

.newsSec dl:last-child {
	margin-bottom: 0;
}

.newsSec dl dt {
	margin-bottom: .5em;
	color: #df2d32;
	font-weight: bold;
}

.newsSec dl dd {
}

.newsSec p {
	margin-bottom: 2em;
}

.newsSec p:last-child {
	margin-bottom: 0;
}


/* ----------------------------------------------------------------------
 * VOICE
 * ---------------------------------------------------------------------- */
.l-voice-page {
	font-family: 'Roboto', 'Yu Gothic', YuGothic, sans-serif;
	font-size: 1.5rem;
	margin-bottom: 120px;
}

.l-voice-page .u-content {
	margin-bottom: 0;
	padding-top: 120px;
}

.l-voice-page .l-kv {
	height: 241px;
	margin-bottom: 0;
	padding-top: 106px;
	background-color: #fff7e2;
	background-image: url("/contents/nishikawa-chain/about/specialty002/voice/kv-01.jpg");
}

.l-voice-page .l-kv-title:before {
	background-image: url(/contents/nishikawa-chain/global/img/icon-voice-01.png);
}

.l-voice-page-corner {
	margin: 40px 0 0;
	display: flex;
	align-items: center;
}

.l-voice-page-corner--reverse {
	flex-direction: row-reverse;
}

.l-voice-page-corner > *:nth-child(1) {
	width: 37.5%;
}

.l-voice-page-corner > *:nth-child(2) {
	width: calc(100% - 37.5%);
}

.l-voice-page-corner p {
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.9;
	padding: 0 40px 0 0;
}

.l-voice-page-corner p:not(:first-child) {
	margin-top: 2em;
}

.l-voice-page-corner--reverse p {
	padding-right: 0;
	padding-left: 40px;
}

/* 扉ページ */
.l-voice-banner {
	margin: 0 0 80px;
	position: relative;
}

.l-voice-banner a {
	color: #fff;
}

.l-voice-banner span {
	text-align: center;
	width: 360px;
	padding: 1.25em 0;
	background: #df2d32;
	border-radius: 10px;
	display: block;
	border: 2px solid #fff;
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translate(-50%,50%);
	z-index: 10;
}

.l-voice-banner span:before {
	content: '';
	width: 24px;
	height: 24px;
	display: block;
	background: url("../voice/icon-01.png") no-repeat center / 100% 100%;
	position: absolute;
	top: 50%;
	left: 20px;
	transform: translate(0,-50%);
}

.l-voice-banner span:after {
	content: '';
	width: .5em;
	height: .5em;
	border-right: 2px solid #fff;
	border-top: 2px solid #fff;
	position: absolute;
	top: 50%;
	right: 20px;
	transform: translate(0,-50%) rotate(45deg);
}

.l-voice-banner em {
	font-size: 2rem;
	font-weight: 700;
}

/* 22.05.12 */
.c-kv {
	z-index: 0;
	background: #c4aa65;
}

.c-kv-slider {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	transition: .5s;
}

.c-kv-slider.slick-initialized {
	opacity: 1;
}

.c-kv-slider .slick-list {
	height: 100%;
}

.c-kv-slider .slick-track {
	height: 100%;
}

.c-kv-slider .slick-slide {
	width: 100vw !important;
	height: 100% !important;
	position: absolute !important;
	top: 0 !important;
	left: 0 !important;
}

.c-kv-slider-voice .c-kv__title {
	margin-top: 158px;
}




