@charset "utf-8";
/* CSS Document */

/* base
-----------------------------------------------*/
/* ========== universal reset ========== */
/* ========== base style ========== */

/* common parts
-----------------------------------------------*/
/* ========== text ========== */
/* ========== border ========== */
/* ========== float ========== */
/* ========== display ========== */
/* ========== position ========== */
/* ========== overflow ========== */
/* ========== width ========== */
/* ========== margin ========== */
/* ========== device displaying ========== */
/* ========== animation for ScrollTrigger.min.js  ========== */

/* other style
-----------------------------------------------*/



/* base
-----------------------------------------------*/
/* ========== universal reset ========== */
/**
* html5doctor.com Reset Stylesheet v1.6.1 (http://html5doctor.com/html-5-reset-stylesheet/)
* Richard Clark (http://richclarkdesign.com)
* http://cssreset.com
*/
html, body, div, span, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, address, cite, code,
del, dfn, em, img, ins, kbd, q, samp,
small, strong, sub, sup, var,
b, i,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
button, input, select, textarea,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, figcaption, figure,
footer, header, hgroup, menu, nav, section, summary,
time, mark, audio, video {
margin:0;
padding:0;
border:0;
outline:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}
body { line-height:1; }
article,aside,details,figcaption,figure,
footer,header,hgroup,menu,nav,section {
display:block;
}
nav ul { list-style:none; }
blockquote, q {
quotes:none;
}
blockquote:before, blockquote:after,
q:before, q:after {
content:'';
content:none;
}
a {
margin:0;
padding:0;
font-size:100%;
vertical-align:baseline;
background:transparent;
}


/* ========== base style ========== */
* { box-sizing: border-box; }

html { height: 100%; }

body {
height: 100%;
min-height: 100%;
background: #ffffff;
color: #040000;
font-size: 19px;
font-family: fot-cezanne-pron, sans-serif;
font-style: normal;
font-weight: 500;
font-feature-settings: "palt";
}
@media (min-width:768px){
	body {
	font-size: 13px;
	}
}

a:link,
a:visited {
color: #040000;
text-decoration: none;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}

a:hover,
a:hover img,
button:hover img {
opacity: 0.80;
filter: alpha(opacity=80);
}

div,p,h1,h2,h3,h4,h5,h6,li,dt,dd,th,td {
line-height: 100%;
font-family: fot-cezanne-pron, sans-serif;
font-style: normal;
font-weight: 500;
font-feature-settings: "palt";
letter-spacing: 0.1em;
}

div, article { box-sizing: border-box; }

ol, ul { list-style:none; }

img, video {
width: 100%;
display: block;
margin-left: auto;
margin-right: auto;
-webkit-transition: all 0.3s ease;
-moz-transition: all 0.3s ease;
-o-transition: all 0.3s ease;
transition: all  0.3s ease;
}



/* common parts
-----------------------------------------------*/
/* ========== text ========== */
/* align */
.al_left { text-align: left; }
.al_center { text-align: center; }
.al_right { text-align: right; }

/* size */
.fs9 { font-size: 2.4vw; }
.fs10 { font-size: 2.67vw; }
.fs11 { font-size: 2.93vw; }
.fs12 { font-size: 3.2vw; }
.fs13 { font-size: 3.47vw; }
.fs14 { font-size: 3.73vw; }
.fs15 { font-size: 4vw; }
.fs16 { font-size: 4.27vw; }
.fs17 { font-size: 4.53vw; }
.fs18 { font-size: 4.8vw; }
@media (min-width:768px){
	.fs9 { font-size: 9px; }
	.fs10 { font-size: 10px; }
	.fs11 { font-size: 11px; }
	.fs12 { font-size: 12px; }
	.fs13 { font-size: 13px; }
	.fs14 { font-size: 14px; }
	.fs15 { font-size: 15px; }
	.fs16 { font-size: 16px; }
	.fs17 { font-size: 17px; }
	.fs18 { font-size: 18px; }
}

/* weight */
.fw200 { font-weight: 200 !important; }
.fw400 { font-weight: 400 !important; }
.fw500 { font-weight: 500 !important; }
.fw700 { font-weight: 700 !important; }
.fw900 { font-weight: 900 !important; }

/* line height */
.lh120 { line-height: 120%; }
.lh130 { line-height: 130%; }
.lh140 { line-height: 140%; }
.lh150 { line-height: 150%; }
.lh160 { line-height: 160%; }
.lh170 { line-height: 170%; }
.lh180 { line-height: 180%; }
.lh190 { line-height: 190%; }
.lh200 { line-height: 200%; }
.lh210 { line-height: 210%; }

/* letter space */
.ltrspace0 { letter-spacing: 0; }
.ltrspace0025 { letter-spacing: 0.025em; }
.ltrspace005 { letter-spacing: 0.05em; }
.ltrspace0075 { letter-spacing: 0.075em; }
.ltrspace01 { letter-spacing: 0.1em; }
.ltrspace015 { letter-spacing: 0.15em; }


/* ========== float ========== */
/* clearfix */
.clearfix:before,
.clearfix:after {
display: table;
content: " ";
}
.clearfix:after { clear: both; }

/* float */
.float_left { float: left; }
.float_right { float: right; }


/* ========== display ========== */
.disp_block { display: block !important;}
.disp_iblock { display: inline-block !important;}
.disp_inline { display: inline !important;}
.disp_none { display: none;}
.disp_flex { display: flex; flex-wrap: wrap; justify-content: space-between; align-items: flex-start; }


/* ========== position ========== */
.posi_relative { position: relative !important; }
.posi_absolute { position: absolute !important; }
.posi_fixed { position: fixed !important; }


/* ========== overflow ========== */
.overflow_hidden { overflow: hidden !important; }


/* ========== margin ========== */
/* margin-auto */
.mx_auto { margin-left: auto; margin-right: auto; }


/* ========== device displaying ========== */
.sp_none{ display: none; }
@media (min-width:900px){.sp_none{display: block;} .tab_none { display: none; }}
.sp_only{ display: block; }
@media (min-width:900px){.sp_only{display: none;}}
.spc_none{ display: block; }
@media (min-width:1099px){.pc_none{display: block;}}
.pc_only{ display: none; }
@media (min-width:1100px){.pc_none{display: none;}
.pc_only{display: block;}
.tab_none{ display: block; }
}


/* ========== animation for ScrollTrigger.min.js  ========== */
.invisible {
transition: opacity 1s ease;
opacity: 0.0;
}
.visible {
transition: opacity 1s ease;
opacity: 1.0;
}



/* other style
-----------------------------------------------*/
body {
	background: #fff;
}
.animated {
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
}

/* スクリーンサイズが767px以下の場合に適用 */
@media screen and (max-width: 767px) {

	body.is-modal-active,
	body.is-concept-active {
		overflow: hidden;
	}

	.agnesb {
		position: absolute;
		top: 18.67vw;
		right: 5.6vw;
		fill: #000;
		z-index:5000;
		width:7.47vw;
		height:6.53vw;
		padding-top:6vw;
	}
	.agnesb.is-fixed {
		position: fixed;
		top: 0;
	}
	.agnesb__wrapper {
		cursor: pointer;
	}

	.online-store {display:none;}

	.concept {
		position:relative;
		transition: all 0.4s cubic-bezier(0.995, 0.005, 0.055, 1);
	    position: fixed;
	    background-color: #111;
	    width: 86.66vw;
	    right: 0;
	    top: 0;
	    bottom: 0;
	    color: #FFF;
	    padding: 9.33vw 10.66vw 13.33vw;
	    transform: translateX(86.66vw);
	    z-index: 6000;
	    overflow: scroll;
	}
	body.is-concept-active .concept {
		transform: translateX(0px);
	}
	.concept .agnesb {
		position: fixed;
		top: 0;
		fill: #fff;
	}
	a.concept-link__link {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 600;
		color:#fff;
		font-size:5.556vw;
		line-height:1;
		letter-spacing: 0.025em;
	}
	.concept-link__item + .concept-link__item {
		margin-top: 5.33vw;
	}
	.concept-contents{
		margin: 10.66vw 0 0;
	}
	.concept-content{
		font-family: fot-cezanne-pron, sans-serif;
		font-style: normal;
		font-weight: 500;
		color:#fff;
		font-size:3.33vw;
		line-height:6.66vw;
		letter-spacing: 0.025em;
	}
	.concept-content + .concept-content{
		margin-top:4vw;
	}
	.concept-footer-logo{
		width:38.93vw;
		margin:16.53vw auto 0;
	}

	.wrapper {
		z-index:1;
    	transition: all 0.4s cubic-bezier(0.995, 0.005, 0.055, 1);
	}
	body.is-concept-active .wrapper {
    	transform: translateX(-86.66vw);
	}

	.nergy-header {
		padding: 6.66vw 21.33vw;
	}

	.item {
		position: relative;
	}
	.item::before {
    	transition: all 0.3s ease-in-out;
		position: absolute;
		top:initial;
		right:initial;
		bottom:initial;
		left:initial;
		display: block;
		content: "";
		width:4vw;
		height:4vw;
		background-image: url('../images/btn_plus_sp.png');
		background-position: left top;
		background-repeat: no-repeat;
		background-size: 4vw 4vw;
	}
	.item:hover::before {
		transform:rotate(90deg); 
	}
	.item-plus--top-right::before {
		top:2.4vw;
		right:2.4vw;
	}
	.item-plus--bottom-right::before {
		bottom:2.4vw;
		right:2.4vw;
	}
	.item-plus--top-left::before {
		top:2.4vw;
		left:2.4vw;
	}
	.item-plus--bottom-left::before {
		bottom:2.4vw;
		left:2.4vw;
	}
	.item01 {width:87.33vw;margin:16vw auto 0 0;}
	.item-wrapper01 {
		display:flex;
		flex-wrap: wrap;
		justify-content: right;
		align-items: flex-start;
		align-content: flex-start;
		margin:13.33vw 0 0;
	}
	.item-wrapper01 .item-wrapper__txt {width:2.93vw;margin:0 2.66vw 0 0;}
	.item02 {width:42.66vw;margin:0 1.33vw 0 0;}
	.item03 {width:42.66vw;margin:0;}
	.item04 {width:100vw;margin:20vw 0 0;}
	.item-wrapper02 {
		display:flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
		align-content: flex-start;
		margin:20vw 0 0;
	}
	.item05 {width:42.66vw;margin:0 3.33vw 0 0;}
	.item06 {width:42.66vw;margin:24vw 0 0 0;}
	.item07 {width:69.33vw;margin:20vw auto 0;}
	.heart {width:18.66vw;margin:10.67vw auto 0 12.8vw;}
	.item08 {width:89.06vw;margin:20vw auto 0;}
	.item-wrapper03 {
		display:flex;
		flex-wrap: wrap;
		justify-content: right;
		align-items: flex-start;
		align-content: flex-start;
		margin:17.33vw 0 0;
	}
	.item09 {width:52vw;margin:0 2.4vw 0 0;}
	.item10 {width:40vw;margin:29.86vw 0 0 0;}
	.item-wrapper04 {
		position: relative;
		margin:20vw 0 0;
	}
	.item11 {width:76vw;margin:0 auto 0 0;}
	.lizard {position:absolute;width:25.33vw;bottom:-24.53vw;right:7.6vw;z-index:3;}
	.item-wrapper05 {
		display:flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
		align-content: flex-start;
		margin:24.53vw 0 0;
	}
	.item12 {width:42.66vw;margin:0 3.73vw 0 0;}
	.item13 {width:42.66vw;margin:36vw 0 0 0;}
	.item14 {width:52vw;margin:20vw auto 0 0;}
	.item15 {width:70.67vw;margin:20vw auto 0;}
	.item16 {width:100vw;margin:16vw auto 0;}
	.middle-logo {width:46.26vw;margin:22.67vw auto 0;}
	.item-wrapper06 {
		display:flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
		align-content: flex-start;
		margin:24.53vw 0 0;
	}
	.item17 {width:68vw;margin:0;}
	.item18 {width:68vw;margin:1.86vw 0 0 0;}
	.item-wrapper07 {
		display:flex;
		flex-wrap: wrap;
		justify-content: left;
		align-items: flex-start;
		align-content: flex-start;
		margin:17.33vw 0 0;
	}
	.item19 {width:56vw;margin:0 2.93vw 0 0;}
	.item-wrapper07 .item-wrapper__txt {width:2.93vw;margin:0;}
	.item-wrapper08 {
		display:flex;
		flex-wrap: wrap;
		justify-content: right;
		align-items: flex-start;
		align-content: flex-start;
    	flex-direction: row-reverse;
		margin:24vw 0 0;
	}
	.item20 {width:40vw;margin:0;}
	.item21 {width:52vw;margin:20.93vw 4vw 0 0;}
	.item22 {width:80vw;margin:20vw auto 0;}

	.footer-role {
		margin:20vw auto 0 11.07vw;
	}
	.footer-role__title,
	.footer-role__role,
	.footer-role__name {
		display: inline-block;
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #000;
		font-size: 3.33vw;
		line-height: 6.11vw;
		letter-spacing: 0.085em;
		
	}
	.footer-role__role::after {
		content: ":";
		margin: 0 1.07vw 0;
	}

	.online-shop-btn {
		text-align: center;
		margin: 18.66vw 0 0;
	}
	a.online-shop-btn__link {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #000;
		display: inline-block;
		font-size: 4.17vw;
		line-height: 8vw;
		letter-spacing: 0.085em;
		width: 88vw;
		border: 2px solid #000;
	}

	.common-footer {
		margin: 21.33vw 0 0;
	}
	.common-footer__wrapper{
		background:#f6f6f6;
		margin: 21.33vw 0 0;
		padding:9.33vw 0;
	}
	.nergy-logo {
		width: 32.67vw;
		margin: 0 auto;
	}
	.sns-list {
		margin: 0 0 0;
	}
	.sns-list__title {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #555;
		font-size: 4.8vw;
		line-height: 4.8vw;
		letter-spacing: 0;
		text-align: center;
	}
	.sns-list__contents {
		display: flex;
		justify-content: center;
		align-items: flex-start;
		margin: 8vw 0 0;
	}
	.sns-list__content {
		width: 8vw;
		margin: 0 2.67vw 0;
	}
	.footer-link {
		margin: 4vw 6.67vw 0;
		text-align: center;
		line-height: 4.67vw;
	}
	.footer-link__item {
		display: inline-block;
		line-height: 2.67vw;
	}
	.footer-link__item:not(:last-child)::after {
		content: "|";
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #5a5a5a;
		font-size: 2.67vw;
		line-height: 2.67vw;
		letter-spacing: 0;
		margin: 0 2.67vw;
	}
	a.footer-link__link {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #5a5a5a;
		font-size: 2.67vw;
		line-height: 2.67vw;
		letter-spacing: 0;
	}
	a.footer-link__link:hover {
		text-decoration: underline;
	}
	.footer-logo {
		width: 42.67vw;
		margin: 10.67vw auto 0;
	}
	.footer-copy {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #5a5a5a;
		font-size: 2.67vw;
		line-height: 2.67vw;
		letter-spacing: 0;
		margin: 3.73vw 0 0;
		padding:0 0 7.6vw;
		text-align: center;
	}
	
	.help,
	.shop {
		display: none;
	}

	.modal__container{
		z-index:9000;
		position: fixed;
		top: -150vh;
		left: 0;
		width: 100%;
		height: 101%;
		text-align: center;
		background: rgba(0,0,0,80%);
		padding: 19.33vw 0 32.27vw;
		overflow: auto;
		opacity: 0;
		visibility: hidden;
	 	box-sizing: border-box;
	}
	.modal__container.is-active{
		visibility: visible;
		top: 0;
	}
	.modal__close-btn{
		position: fixed;
		top: 6vw;
		right: 6vw;
		width: 4vw;
		height: 4vw;
		cursor: pointer;
	}
	.modal__content{
		text-align: left;
		color: #fff;
	}
	.m-item + .m-item {
		margin-top: 20vw;
	}
	.m-item--vertical {
		width: 66.67vw;
		margin-left: auto;
		margin-right: auto;
	}

	.item {
		cursor: pointer;
	}

	.price-list {
		margin:5.33vw 6.66vw 0 0;
	}
	.m-item--vertical .price-list {
		margin-right: 0;
	}
	.price-list__name,
	.price-list__price,
	a.price-list__btn-item {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #fff;
	}
	.price-list__name,
	.price-list__price {
		display: inline-block;
		text-align: right;
		font-size: 3.2vw;
		line-height: 1em;
		letter-spacing: 0.05em;
		vertical-align: top;
	}
	.price-list__name + .price-list__price {
		margin-left: 2.27vw;
	}
	.price-list__detail {
		line-height: 3.2vw;
		text-align: right;
	}
	.price-list__btn {
		text-align: right;
		margin: 2.13vw 0 0;
	}
	a.price-list__btn-item {
		display: inline-block;
		text-align: center;
		font-size: 3.2vw;
		line-height: 4.53vw;
		letter-spacing: 0.1em;
		width: 24vw;
		border: 2px solid #fff;
	}
	.price-list__content + .price-list__content {
		margin-top: 3.33vw;
	}

}/* スクリーンサイズが767px以下の場合に適用 */

/* スクリーンサイズが768px以上の場合に適用 */
@media screen and (min-width: 768px) {

	body.is-modal-active,
	body.is-concept-active {
		overflow: hidden;
	}

	.agnesb {
		position: absolute;
		top: 75px;
		right: 30px;
		fill: #000;
		z-index:5000;
		width:50px;
		height:44px;
		padding-top:30px;
	}
	.agnesb.is-fixed {
		position: fixed;
		top: 0;
	}
	.agnesb__wrapper {
		cursor: pointer;
	}

	a.online-store__link {
		position: fixed;
		bottom: 40px;
		right: 30px;
		z-index:5000;
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 600;
		color:#000;
		font-size:30px;
		line-height:1;
		letter-spacing:0.025em;
		text-decoration:underline;
	}
	a.online-store__link:hover{
		text-decoration:none;
	}

	.concept {
		position:relative;
		transition: all 0.4s cubic-bezier(0.995, 0.005, 0.055, 1);
	    position: fixed;
	    background-color: #111;
	    width: 325px;
	    right: 0;
	    top: 0;
	    bottom: 0;
	    color: #FFF;
	    padding: 63px 35px 73px 40px;
	    transform: translateX(325px);
	    z-index: 6000;
	    overflow: scroll;
	}
	body.is-concept-active .concept {
		transform: translateX(0px);
	}
	.concept .agnesb {
		position: fixed;
		top: 0;
		fill: #fff;
	}
	a.concept-link__link {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 600;
		color:#fff;
		font-size:20.835px;
		line-height:1;
		letter-spacing: 0.025em;
	}
	.concept-link__item + .concept-link__item {
		margin-top: 20px;
	}
	.concept-contents{
		margin: 43.5px 0 0;
	}
	.concept-content{
		font-family: fot-cezanne-pron, sans-serif;
		font-style: normal;
		font-weight: 500;
		color:#fff;
		font-size:12.5px;
		line-height:25px;
		letter-spacing: 0.025em;
	}
	.concept-content + .concept-content{
		margin-top:25px;
	}
	.concept-footer-logo{
		width:146px;
		margin:157.5px auto 0;
	}

	.wrapper {
		z-index:1;
    	transition: all 0.4s cubic-bezier(0.995, 0.005, 0.055, 1);
	}
	body.is-concept-active .wrapper {
    	transform: translateX(-325px);
	}

	.wrapper__wrapper {
		width:750px;
		margin:0 auto;
	}

	.nergy-header {
		width:215px;
		margin:26.5px auto 28.5px;
	}

	.item {
		position: relative;
	}
	.item::before {
    	transition: all 0.3s ease-in-out;
		position: absolute;
		top:initial;
		right:initial;
		bottom:initial;
		left:initial;
		display: block;
		content: "";
		width:30px;
		height:30px;
		background-image: url('../images/btn_plus.png');
		background-position: left top;
		background-repeat: no-repeat;
		background-size: 30px 30px;
	}
	.item:hover::before {
		transform:rotate(90deg); 
	}
	.item-plus--top-right::before {
		top:17px;
		right:17px;
	}
	.item-plus--bottom-right::before {
		bottom:17px;
		right:17px;
	}
	.item-plus--top-left::before {
		top:17px;
		left:17px;
	}
	.item-plus--bottom-left::before {
		bottom:17px;
		left:17px;
	}
	.item01 {width:655px;margin:75px auto 0 0;}
	.item-wrapper01 {
		display:flex;
		flex-wrap: wrap;
		justify-content: right;
		align-items: flex-start;
		align-content: flex-start;
		margin:100px 0 0;
	}
	.item-wrapper01 .item-wrapper__txt {width:17px;margin:0 17px 0 0;}
	.item02 {width:320px;margin:0 10px 0 0;}
	.item03 {width:320px;margin:0;}
	.item04 {width:750px;margin:150px 0 0;}
	.item-wrapper02 {
		display:flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
		align-content: flex-start;
		margin:150px 0 0;
	}
	.item05 {width:320px;margin:0 25px 0 0;}
	.item06 {width:320px;margin:180px 0 0 0;}
	.item07 {width:520px;margin:150px auto 0;}
	.heart {width:106.5px;margin:100px auto 0 113px;}
	.item08 {width:668px;margin:100px auto 0;}
	.item-wrapper03 {
		display:flex;
		flex-wrap: wrap;
		justify-content: right;
		align-items: flex-start;
		align-content: flex-start;
		margin:130px 0 0;
	}
	.item09 {width:390px;margin:0 18px 0 0;}
	.item10 {width:300px;margin:224px 0 0 0;}
	.item-wrapper04 {
		position: relative;
		margin:150px 0 0;
	}
	.item11 {width:570px;margin:0 auto 0 0;}
	.lizard {position:absolute;width:133.5px;bottom:-100px;right:112px;z-index:3;}
	.item-wrapper05 {
		display:flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
		align-content: flex-start;
		margin:184px 0 0;
	}
	.item12 {width:320px;margin:0 28px 0 0;}
	.item13 {width:320px;margin:270px 0 0 0;}
	.item14 {width:390px;margin:150px auto 0 0;}
	.item15 {width:530px;margin:150px auto 0;}
	.item16 {width:750px;margin:120px auto 0;}
	.middle-logo {width:260px;margin:193px auto 0;}
	.item-wrapper06 {
		display:flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: flex-start;
		align-content: flex-start;
		margin:193px 0 0;
	}
	.item17 {width:510px;margin:0;}
	.item18 {width:510px;margin:14px 0 0 0;}
	.item-wrapper07 {
		display:flex;
		flex-wrap: wrap;
		justify-content: left;
		align-items: flex-start;
		align-content: flex-start;
		margin:130px 0 0;
	}
	.item19 {width:420px;margin:0 15px 0 0;}
	.item-wrapper07 .item-wrapper__txt {width:17px;margin:0;}
	.item-wrapper08 {
		display:flex;
		flex-wrap: wrap;
		justify-content: right;
		align-items: flex-start;
		align-content: flex-start;
    	flex-direction: row-reverse;
		margin:180px 0 0;
	}
	.item20 {width:300px;margin:0;}
	.item21 {width:390px;margin:157px 30px 0 0;}
	.item22 {width:600px;margin:150px auto 0;}

	.footer-role {
		margin:130px 0 0;
		text-align:center;
	}
	.footer-role__wrapper{
		display:inline-block;
		text-align:left;
	}
	.footer-role__title,
	.footer-role__role,
	.footer-role__name {
		display: inline-block;
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #000;
		font-size: 12.5px;
		line-height: 22.915px;
		letter-spacing: 0.085em;
		
	}
	.footer-role__role::after {
		content: ":";
		margin: 0 6.5px 0;
	}

	.online-shop-btn {
		text-align: center;
		margin: 120px 0 0;
	}
	a.online-shop-btn__link {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #000;
		display: inline-block;
		font-size: 23.44px;
		line-height: 45px;
		letter-spacing: 0.085em;
		width: 495px;
		border: 2px solid #000;
	}

	.common-footer {
		margin: 4.5vw 0 0;
	}
	.nergy-logo {
		width: 11.57vw;
		margin: 0 auto;
	}
	.common-footer__wrapper {
		background: #ececec;
		margin: 4.27vw 0 0;
	}
	.common-footer__wrapper-wrapper {
		display: flex;
		justify-content: space-between;
		align-items: flex-start;
		border-bottom: 2px solid #ddd;
		padding-bottom: 5.67vw;
	}
	.sns-list {
		width: 50vw;
		margin: 6.93vw 0 0 15.5vw;
		display: flex;
		justify-content: flex-start;
		align-items: center;
	}
	.sns-list__title {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #999;
		font-size: 20px;
		line-height: 20px;
		letter-spacing: 0;
		text-align: center;
	}
	.sns-list__contents {
		display: flex;
		justify-content: center;
		align-items: flex-start;
		margin: 0 0 0 3vw;
	}
	.sns-list__content {
		width: 3.33vw;
		margin: 0 0.67vw 0;
	}
	.help {
		width: 50vw;
		margin: 6.67vw 0 0 5.43vw;
	}
	.help__title {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #999;
		font-size: 25px;
		line-height: 25px;
		letter-spacing: 0;
	}
	.help__sub-title {
		display: inline-block;
		vertical-align: top;
		font-size: 12px;
		line-height: 12px;
		margin: 5px 0 0 1.86vw;
	}
	.help__link {
		margin: 2vw 0 0;
	}
	.help-link__list-item {
		display: inline-block;
		line-height: 12px;
	}
	.help-link__list-item:not(:last-child)::after {
		content: "|";
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #999;
		font-size: 12px;
		line-height: 12px;
		letter-spacing: 0;
		margin: 0 1.33vw;
	}
	a.help-link__link {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #999;
		font-size: 12px;
		line-height: 12px;
		letter-spacing: 0;
		text-align: center;
	}
	a.help-link__link:hover {
		text-decoration: underline;
	}
	.shop {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		padding: 2.67vw 10vw;
	}
	.shop__title {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #999;
		font-size: 20px;
		line-height: 20px;
		letter-spacing: 0;
		text-align: center;
		width: 16.33vw;
		flex-shrink: 0;
		margin: 0 3vw 0 0;
	}
	.shop__link {
		margin: 0;
	}
	.shop-link__list-item {
		display: inline-block;
		line-height: 12px;
	}
	.shop-link__list-item:not(:last-child)::after {
		content: "|";
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #999;
		font-size: 12px;
		line-height: 24px;
		letter-spacing: 0;
		margin: 0 1vw;
	}
	a.shop-link__link {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #999;
		font-size: 12px;
		line-height: 12px;
		letter-spacing: 0;
		text-align: center;
	}
	a.shop-link__link:hover {
		text-decoration: underline;
	}
	.footer-link {
		margin: 3.5vw 0 0;
		text-align: center;
		line-height: 13px;
	}
	.footer-link__item {
		display: inline-block;
		line-height: 13px;
	}
	.footer-link__item:not(:last-child)::after {
		content: "|";
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #999;
		font-size: 13px;
		line-height: 13px;
		letter-spacing: 0;
		margin: 0 1.33vw;
	}
	a.footer-link__link {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #999;
		font-size: 13px;
		line-height: 13px;
		letter-spacing: 0;
	}
	a.footer-link__link:hover {
		text-decoration: underline;
	}
	.footer-logo {
		width: 14.53vw;
		margin: 3.83vw auto 0;
	}
	.footer-copy {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #999;
		font-size: 12px;
		line-height: 12px;
		letter-spacing: 0;
		margin: 3vw 0 0;
		padding:0 0 5.2vw;
		text-align: center;
	}

	.modal__container{
		z-index:9000;
		position: fixed;
		top: -150vh;
		left: 0;
		width: 100%;
		height: 101%;
		text-align: center;
		background: rgba(0,0,0,80%);
		padding: 75px 0 446.5px;
		overflow: auto;
		opacity: 0;
		visibility: hidden;
	 	box-sizing: border-box;
	}
	.modal__container.is-active{
		visibility: visible;
		top: 0;
	}
	.modal__close-btn{
		position: fixed;
		top: 25px;
		right: 30px;
		width: 22px;
		height: 22px;
		cursor: pointer;
	}
	.modal__content{
		text-align: left;
		color: #fff;
	}
	.m-item + .m-item {
		margin-top: 100px;
	}
	.m-item {
		width:750px;
		margin-left: auto;
		margin-right: auto;
	}
	.m-item--vertical {
		width: 500px;
		margin-left: auto;
		margin-right: auto;
	}

	.item {
		cursor: pointer;
	}

	.price-list {
		margin:20px 0 0 0;
	}
	.price-list__name,
	.price-list__price,
	a.price-list__btn-item {
		font-family: futura-pt, sans-serif;
		font-style: normal;
		font-weight: 400;
		color: #fff;
	}
	.price-list__name,
	.price-list__price {
		display: inline-block;
		text-align: right;
		font-size: 12px;
		line-height: 1em;
		letter-spacing: 0.05em;
		vertical-align: top;
	}
	.price-list__name + .price-list__price {
		margin-left: 10px;
	}
	.price-list__detail {
		line-height: 12px;
		text-align: right;
	}
	.price-list__btn {
		text-align: right;
		margin: 8px 0 0;
	}
	a.price-list__btn-item {
		display: inline-block;
		text-align: center;
		font-size: 12px;
		line-height: 15px;
		letter-spacing: 0.1em;
		width: 90px;
		border: 2px solid #fff;
	}
	.price-list__content + .price-list__content {
		margin-top: 12px;
	}
	
}/* スクリーンサイズが768px以上の場合に適用 */