@charset "utf-8";
/* --------------------------------------------------
	reset
-------------------------------------------------- */
* { margin: 0; padding: 0; box-sizing: border-box;}

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
form, fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0; padding: 0;
	border: 0;
	font-size: 100%;
	vertical-align: baseline;
}

img{ vertical-align: bottom;}
ol,ul{ list-style: none;}
ol li,
ul li{ list-style-type: none;}
figure { margin: 0;}


/* =============================================================================
   Forms
   ========================================================================== */
form { margin: 0;}
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em;}
legend { border: 0;}
button,
input,
select,
textarea { font-size: 100%; margin: 0; vertical-align: baseline;}
button,
input { line-height: normal;}
button,
input[type="button"], 
input[type="reset"], 
input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"],
input[type="radio"] { box-sizing: border-box; padding: 0;}
input[type="search"] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}


@media (max-width: 481px) {
}


/*		font-style
-------------------------------------------------- */
body { background: #e83d51;
	color: #474747;
	font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;
	font-size: 16px;
	*font-size:small;
	*font:x-small;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
input, textarea {font-family: "Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;}

.min {font-family: 'Noto Serif JP', "游明朝", "Yu Mincho", "YuMincho", serif;}

@font-face {
	font-family: 'Roboto';
	src: url('../font/Roboto-Black.ttf') format('truetype');
}
.eng { font-family: "Roboto";}

::selection{ background: #feffaf; color: #000;}
::-moz-selection{ background: #feffaf; color: #000;}


a { color:#002159; text-decoration: underline;}
a:link   { color:#002159;}
a:visited{ color:#002159;}
a:hover  { color:#002159;}
a:active { color:#002159;}

em{ font-style: normal;}


/*		utility
-------------------------------------------------- */
.cf{ clear: both;}
.cf:after{ content: ''; display: block; clear: both;}

@media (max-width: 641px) {
}
@keyframes showIn {
 100% { opacity: 1;}
}


/* Magnific Popup CSS */
.mfp-bg { position: fixed; top: 0; left: 0; z-index: 1042; width: 100%; height: 100%; overflow: hidden; background: #0b0b0b; opacity: 0.8; }
.mfp-wrap { position: fixed; top: 0; left: 0; z-index: 1043; width: 100%; height: 100%; outline: none !important; -webkit-backface-visibility: hidden; }
.mfp-container { text-align: center; position: absolute; width: 100%; height: 100%; left: 0; top: 0; padding: 0 8px; box-sizing: border-box; }
.mfp-container:before { content: ''; display: inline-block; height: 100%; vertical-align: middle; }
.mfp-align-top .mfp-container:before { display: none; }
.mfp-content { position: relative; display: inline-block; vertical-align: middle; margin: 0 auto; text-align: left; z-index: 1045; }
.mfp-inline-holder .mfp-content,
.mfp-ajax-holder .mfp-content { width: 100%; cursor: auto; }
.mfp-ajax-cur { cursor: progress; }
.mfp-zoom-out-cur, .mfp-zoom-out-cur .mfp-image-holder .mfp-close { cursor: -moz-zoom-out; cursor: -webkit-zoom-out; cursor: zoom-out; }
.mfp-zoom { cursor: pointer; cursor: -webkit-zoom-in; cursor: -moz-zoom-in; cursor: zoom-in; }
.mfp-auto-cursor .mfp-content { cursor: auto; }
.mfp-close,
.mfp-arrow,
.mfp-preloader,
.mfp-counter { -webkit-user-select: none; -moz-user-select: none; user-select: none; }
.mfp-loading.mfp-figure { display: none; }
.mfp-hide { display: none !important; }
.mfp-preloader { color: #CCC; position: absolute; top: 50%; left: 8px; right: 8px; z-index: 1044; width: auto; text-align: center; margin-top: -0.8em; }
.mfp-preloader a { color: #CCC; }
.mfp-preloader a:hover { color: #FFF; }
.mfp-s-ready .mfp-preloader { display: none; }
.mfp-s-error .mfp-content { display: none; }

button.mfp-close,
button.mfp-arrow { overflow: visible; cursor: pointer; background: transparent; border: 0; -webkit-appearance: none; display: block; outline: none; padding: 0; z-index: 1046; box-shadow: none; touch-action: manipulation; }

button::-moz-focus-inner { padding: 0; border: 0; }

.mfp-counter { position: absolute; top: 0; right: 0; color: #CCC; font-size: 12px; line-height: 18px; white-space: nowrap; }
.mfp-arrow { position: absolute; top: 50%; opacity: 0.65; margin: 0; margin-top: -55px; padding: 0; width: 90px; height: 110px; -webkit-tap-highlight-color: transparent; }
.mfp-arrow:active { margin-top: -54px; }
.mfp-arrow:hover,
.mfp-arrow:focus { opacity: 1; }
.mfp-arrow:before,
.mfp-arrow:after { content: ''; display: block; width: 0; height: 0; position: absolute; left: 0; top: 0;
margin-top: 35px; margin-left: 35px; border: medium inset transparent; }
.mfp-arrow:after { border-top-width: 13px; border-bottom-width: 13px; top: 8px; }
.mfp-arrow:before { border-top-width: 21px; border-bottom-width: 21px; opacity: 0.7; }

.mfp-arrow-left { left: 0; }
.mfp-arrow-left:after { border-right: 17px solid #FFF; margin-left: 31px; }
.mfp-arrow-left:before{ margin-left: 25px; border-right: 27px solid #3F3F3F; }

.mfp-arrow-right { right: 0; }
.mfp-arrow-right:after { border-left: 17px solid #FFF; margin-left: 39px; }
.mfp-arrow-right:before{ border-left: 27px solid #3F3F3F; }

.mfp-iframe-holder { padding-top: 40px; padding-bottom: 40px; }
.mfp-iframe-holder .mfp-content { line-height: 0; width: 100%; max-width: 900px; }
.mfp-iframe-holder .mfp-close { top: -40px; }

.mfp-iframe-scaler { width: 100%; height: 0; overflow: hidden; padding-top: 56.25%; }
.mfp-iframe-scaler iframe { position: absolute; top: 0; left: 0; display: block; width: 100%; height: 100%; box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); background: #000; }

/* Main image in popup */
img.mfp-img { width: auto; max-width: 100%; height: auto; display: block; line-height: 0; box-sizing: border-box; padding: 40px 0 40px; margin: 0 auto; }

/* The shadow behind the image */
.mfp-figure { line-height: 0; }
.mfp-figure:after { content: ''; display: block; width: auto; height: auto; box-shadow: 0 0 8px rgba(0, 0, 0, 0.6); background: #444;
	position: absolute; left: 0; top: 40px; bottom: 40px; right: 0; z-index: -1;
}
.mfp-figure small { color: #BDBDBD; display: block; font-size: 12px; line-height: 14px; }
.mfp-figure figure { margin: 0; }
.mfp-bottom-bar { margin-top: -36px; position: absolute; top: 100%; left: 0; width: 100%; cursor: auto; }
.mfp-title { text-align: left; line-height: 18px; color: #F3F3F3; word-wrap: break-word; padding-right: 36px; }
.mfp-image-holder .mfp-content { max-width: 100%; }
.mfp-gallery .mfp-image-holder .mfp-figure { cursor: pointer; }

@media screen and (max-width: 800px) and (orientation: landscape), screen and (max-height: 300px) {
	/** Remove all paddings around the image on small screen */
	.mfp-img-mobile .mfp-image-holder { padding-left: 0; padding-right: 0; }
	.mfp-img-mobile img.mfp-img { padding: 0; }
	.mfp-img-mobile .mfp-figure:after { top: 0; bottom: 0; }
	.mfp-img-mobile .mfp-figure small { display: inline; margin-left: 5px; }
	.mfp-img-mobile .mfp-bottom-bar { background: rgba(0, 0, 0, 0.6); bottom: 0; margin: 0; top: auto; padding: 3px 5px; position: fixed; box-sizing: border-box; }
	.mfp-img-mobile .mfp-bottom-bar:empty { padding: 0; }
	.mfp-img-mobile .mfp-counter { right: 5px; top: 3px; }
	.mfp-img-mobile .mfp-close { top: 0; right: 0; width: 35px; height: 35px; line-height: 35px; background: rgba(0, 0, 0, 0.6); position: fixed; text-align: center; padding: 0; }
}


@media all and (max-width: 900px) {
	.mfp-arrow { -webkit-transform: scale(0.75); transform: scale(0.75); }
	.mfp-arrow-left { -webkit-transform-origin: 0; transform-origin: 0; }
	.mfp-arrow-right { -webkit-transform-origin: 100%; transform-origin: 100%; }
	.mfp-container { padding-left: 6px; padding-right: 6px; }
}



#wrapper { position: relative; height: auto; min-height: 100vh; padding-bottom: 200px;}
@media (max-width: 641px) {
	#wrapper { padding-bottom: 300px;}
}
@media (max-width: 481px) {
	#wrapper { padding-bottom: 250px;}
}

#hd { position: fixed; left: 0; top: 0; width: 100%; z-index: 100;}
#hd .inner-hd { position: relative; width: 96%; height: 50px; margin: 0 auto;}
#hd .hd-cart { position: absolute; right: 45px; top: 15px; width: 32px;}
#hd .hd-cart a { display: block; width: 100%;}
#hd .hd-cart a svg { fill: #464646;}
#hd .hd-cart a.wh svg { fill: #fff;}
#hd .hd-menu { position: absolute; right: 0; top: 15px; width: 32px; height: 38px;}
#hd .hd-menu div { position: relative;width: 100%; height: 100%; cursor: pointer;}
#hd .hd-menu div:after { content: 'MENU'; display: block; width: 100%; position: absolute; bottom: 0;
 color: #464646; font-size: 11px; text-align: center;
}
#hd .hd-menu div span { display: block; width: 100%; height: 2px; background: #464646; position: absolute; left: 50%; opacity: 1;}
#hd .hd-menu div.wh:after { color: #fff;}
#hd .hd-menu div.wh span { background: #fff;}
#hd .hd-menu div span:nth-child(1) { top: 2px; transform: translate(-50%,0);}
#hd .hd-menu div span:nth-child(2) { top: 9px; transform: translate(-50%,0);}
#hd .hd-menu div span:nth-child(3) { top: 16px; transform: translate(-50%,0);}



#gNav { position: fixed; right: 0; top: 0; width: 100%; height: 100vh; background: rgba(0,0,0,0.7); opacity: 0; z-index: -1;
 transition: 0.4s linear;
}
#gNav .inner { width: 100%; max-width: 400px; height: 100%; padding: 50px 0 20px; position: absolute; right: 0; top: 0; background: #e83d51;
 transition: 0.4s linear; transform: translateX(420px);
}
#gNav .logo { width: 50%; max-width: 160px; margin: 0 auto 50px;}
#gNav .logo img { width: 100%;}
#gNav ul { width: 100%;}
#gNav ul li { position: relative; margin: 0 0 30px; padding-left: 65px; overflow: hidden;}
#gNav ul li:last-child { margin: 0px;}
#gNav ul li:before { content: ''; display: block; position: absolute; width: 70px; height: 100%; background: #fff; left: -10px; top: 50%; transform: translateY(-50%) skew(-15deg);}
#gNav ul li a { position: relative; display: block; padding: 12px 0px 12px 25px; color: #fff; font-size: 10px; font-weight: 700; line-height: 1; text-decoration: none;}
#gNav ul li a.insta { padding-left: 70px;}
#gNav ul li a span{ display: inline-block; margin-right: 10px; font-size: 24px; font-weight: 900; letter-spacing: 0.15rem; vertical-align: middle;}
#gNav ul li a em { display: inline-block; font-size: 12px; font-weight: 700; vertical-align: middle;}
#gNav ul li a svg { display: block; width: 30px; fill: #fff; position: absolute; left: 28px; top: 50%; transform: translateY(-50%);}
#gNav ul li a:hover { color: #eee;}
#gNav ul li a:hover svg { fill: #eee;}

#gNav .close { width: 32px; height: 32px; position: absolute; top: 15px; right: 8%;}
#gNav .close:before,
#gNav .close:after { content: ''; display: block; width: 2px; height: 100%; background: #fff; position: absolute; left: 50%; top: 50%;}
#gNav .close:before{ transform: translate(-50%,-50%) rotate(45deg);}
#gNav .close:after { transform: translate(-50%,-50%) rotate(-45deg);}

#gNav.open { opacity: 1; z-index: 100;}
#gNav.open .inner { transform: translateX(0px);}
@media (max-width: 481px) {
	#gNav ul li { margin: 0 0 25px; padding-left: 50px;}
	#gNav ul li:before { width: 62px;}
	#gNav .close { right: 2%;}
}


#ft { width: 100%; position: absolute; left: 0; bottom: 0;}
#ft .inner-ft { padding: 50px 0px 30px;}
#ft h3 { margin-bottom: 30px; text-align: center;}
#ft h3 img { width: 50%; max-width: 180px;}
#ft ul { font-size: 0; text-align: center;}
#ft ul li { display: inline-block; padding: 0 10px; font-size: 12px; letter-spacing: 0.1rem;}
#ft ul li a { color: #fff; text-decoration: none;}
#ft ul li a:hover { text-decoration: underline;}
#ft .copyright { padding: 10px; background: #000;}
#ft .copyright p { color: #fff; font-size: 10px; letter-spacing: 0.1rem; text-align: center;}
@media (max-width: 801px) {
	#ft .inner-ft { padding: 40px 0px;}
}
@media (max-width: 641px) {
	#ft ul { width: 92%; margin: 0 auto;}
	#ft ul li { display: inline-block; width: 50%; padding: 10px;}
	#ft ul li a { display: block; width: 100%; margin: 0 auto; border: solid 1px #fff; padding: 10px 0; text-decoration: none;}
}
@media (max-width: 481px) {
	#ft .inner-ft { padding: 30px 0px 20px;}
	#ft ul li { padding: 8px;}
	#ft ul li a { padding: 6px 0; font-size: 11px;}
}
