@charset "utf-8";

.Kinuta-R{
	font-family: kinuta-mincho-stdn, sans-serif;
	font-weight: 400;
	font-style: normal;
}
.Kinuta-L{
	font-family: kinuta-mincho-stdn,sans-serif;
	font-weight: 300;
	font-style: normal;
	}

.sans-serif{
	font-family: 'Yu Gothic','HiraKakuProN-W3',"Hiragino Sans", "arial", "Meiryo", "MS PGothic", sans-serif!important;color: #666;
	}
.eng-el{
	font-family: montserrat, sans-serif;
	font-weight: 200;
	font-style: normal;
}

.eng-r{
	font-family: montserrat,sans-serif;
	font-weight: 400;
	font-style: normal;
}
.eng-b {
	font-family: montserrat,sans-serif;
	font-weight: 700;
	font-style: normal;
}



.lineHoverOn, .globalMenu_item > a:hover:after, .globalMenuChild_item a:hover:after, .globalMenuFooter_item:hover:after {
transform-origin: left top;
transform: scale(1, 1)
}

address, article, aside, figure, footer, header, hgroup, menu, nav, section {
display: block
}

[hidden], command, datalist, menu[type=context], rp, source {
display: none
}

* {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
-o-box-sizing: border-box;
-ms-box-sizing: border-box;
box-sizing: border-box
}

html {
font-size: 62.5%;
height: 100%
}

body {
font-size: 13px;
font-size: 1.3rem;
height: 100%;
line-height: 1;
text-align: left;
background: #fff;
padding: 0;
margin: 0;
color: #000;
-webkit-text-size-adjust: none
}

body {
-webkit-font-smoothing: antialiased;
	font-family: kinuta-mincho-stdn,sans-serif, Hiragino Mincho ProN, 游明朝 ;
/*   font-family: FOT-筑紫明朝 Pr6 R, 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", "Hiragino Mincho Pro", HGS明朝E, メイリオ, Meiryo, serif;*/
}
h2,h3,h4,h5,h6, .Kinuta-B{
font-family: kinuta-mincho-stdn, sans-serif;
font-weight: 700;
font-style: normal;
margin: 0;
padding: 0;
}


ul, ol, dl {
list-style: none;
margin: 0;
padding: 0
}

li {
list-style-type: none;
list-style: none
}

dd {
margin: 0
}

p {
line-height: 1.8;
margin: 0;
padding: 0;
font-size: 1.4rem
}

table {
font-size: inherit;
border-collapse: collapse;
border-spacing: 0
}

table > caption {
text-align: left
}

table th {
text-align: left;
margin: 0;
padding: 0
}

table td {
margin: 0;
padding: 0
}

img {
border: none;
vertical-align: bottom;
max-width: 100%;
height: auto;
backface-visibility: hidden
}

pre {
border: 1px solid #bfbfbf;
padding: 5px
}

a {
text-decoration: none;
outline: 0;
color: #000
}

a.ul{border-bottom: 1px solid #333;}

form {
margin: 0;
padding: 0
}

input[type="text"], button, textarea, select {
outline: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none
}

input:focus, button:focus, textarea:focus, select:focus {
outline: 0
}

.debug {
background: #2d9f00;
position: fixed;
left: 0;
top: 0;
color: #fff;
font-size: 1.2rem;
padding: 7px;
display: block;
z-index: 1000000
}

@media only screen and (max-width: 970px) {
.debug {
  font-size: .9rem;
  padding: 5px
}
}

.inlineDesktop {
display: none !important
}

@media only screen and (min-width: 970px) {
.inlineDesktop {
  display: inline !important
}
}

.inlineMobile {
display: inline !important
}

@media only screen and (min-width: 970px) {
.inlineMobile {
  display: none !important
}
}

.blockDesktop {
display: none !important
}

@media only screen and (min-width: 970px) {
.blockDesktop {
  display: block !important
}
}

.blockMobile {
display: block !important
}

@media only screen and (min-width: 970px) {
.blockMobile {
  display: none !important
}
}

.flexDesktop {
display: none !important
}

@media only screen and (min-width: 970px) {
.flexDesktop {
  display: flex !important
}
}

.flexMobile {
display: flex !important
}

@media only screen and (min-width: 970px) {
.flexMobile {
  display: none !important
}
}

.onlyIE {
display: none
}

.ie .onlyIE {
display: block
}

.is-lock {
pointer-events: none !important
}

.is-noScroll {
-webkit-overflow-scrolling: auto
}

.lock.is-show {
position: fixed;
left: 0;
top: 0;
width: 100vw;
height: 100vh;
z-index: 100000
}

@keyframes fadeIn {
0% {
  opacity: 0
}
100% {
  opacity: 1
}
}
/*
.leftShadow, .contents:before {
background: -moz-linear-gradient(left, #f8f8f8 0%, rgba(248, 248, 248, 0) 100%);
background: -webkit-linear-gradient(left, #f8f8f8 0%, rgba(248, 248, 248, 0) 100%);
background: linear-gradient(to right, #f8f8f8 0%, rgba(248, 248, 248, 0) 100%);
position: absolute;
left: 0;
top: 0;
z-index: 0;
width: 32px;
height: 100%;
content: ''
}
*/
@media only screen and (max-width: 970px) {
.leftShadow, .globalMenu:after, .contents:before {
  display: none
}
}



.icon-search, .config_search > a, .configSearch button, .globalMenuConfigSearch button {
width: 16px;
height: 16px;
display: block;
background-color: #fff;
background-repeat: no-repeat;
background-position: left top;
background-size: cover;
background-image: url("../img/common/icon_search.svg")
}

.js-accordionTrigger.is-opened i {
-webkit-transform: rotate(90deg);
-moz-transfrom: rotate(90deg);
-ms-transform: rotate(90deg);
-o-transform: rotate(90deg);
transform: rotate(90deg)
}

.js-accordionTrigger.is-opened i:after {
-webkit-transform: rotate(90deg);
-moz-transfrom: rotate(90deg);
-ms-transform: rotate(90deg);
-o-transform: rotate(90deg);
transform: rotate(90deg)
}

.js-accordionTrigger.is-opened i:before {
top: 0px;
opacity: 0
}

.methodLabel {
background-color: #4e4e4e;
color: #fff;
padding: 2px 6px 1px;
font-size: 1.3rem;
font-weight: normal
}

@media only screen and (max-width: 970px) {
.productDetailInfo .limitLabel span {
  font-size: 1.3rem
}
}

.globalLogo, .globalSide_logo, .containerEC_logo {
z-index:9000;
  width: 60px;
  height:60px;
  margin-top: 10px;
background-repeat: no-repeat;
background-position: left top;
background-size: cover;
background-image: url("../img/common/logotitle_white.svg");
text-indent: 100%;
white-space: nowrap;
overflow: hidden
}

@media only screen and (max-width: 970px) {
.globalLogo, .globalSide_logo, .containerEC_logo {
  margin-top: 10px;
}
}

.substr {
visibility: hidden
}

@media only screen and (min-width: 970px) {
.is-fixNumber > *:nth-child(4) {
  display: none
}
}

.js-cardValue {
font-style: normal
}

.js-animation.do-fade {
opacity: 0;
-webkit-transition: 1.2s cubic-bezier(0.39, 0.575, 0.565, 1);
-moz-transition: 1.2s cubic-bezier(0.39, 0.575, 0.565, 1);
-o-transition: 1.2s cubic-bezier(0.39, 0.575, 0.565, 1);
transition: 1.2s cubic-bezier(0.39, 0.575, 0.565, 1)
}

.js-animation.do-fade.inView {
opacity: 1
}

.js-animation.do-up {
opacity: 0;
-webkit-transition: 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
transition: 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transform: translate3d(0, 40px, 0);
-moz-transform: translate3d(0, 40px, 0);
-o-transform: translate3d(0, 40px, 0);
transform: translate3d(0, 40px, 0);
will-change: transform
}

.js-animation.do-up.inView {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
will-change: transform
}

.js-animation.do-left {
opacity: 0;
-webkit-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1);
transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transform: translate3d(40px, 0, 0);
-moz-transform: translate3d(40px, 0, 0);
-o-transform: translate3d(40px, 0, 0);
transform: translate3d(40px, 0, 0);
will-change: transform
}

.js-animation.do-left.inView {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
will-change: transform
}

.js-animation.do-right {
opacity: 0;
-webkit-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1);
transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-webkit-transform: translate3d(-40px, 0, 0);
-moz-transform: translate3d(-40px, 0, 0);
-o-transform: translate3d(-40px, 0, 0);
transform: translate3d(-40px, 0, 0);
will-change: transform
}

.js-animation.do-right.inView {
opacity: 1;
-webkit-transform: translate3d(0, 0, 0);
-moz-transform: translate3d(0, 0, 0);
-o-transform: translate3d(0, 0, 0);
transform: translate3d(0, 0, 0);
will-change: transform
}

.js-animation.do-scale {
opacity: 0;
-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-ms-transform: scale(1.1);
-o-transform: scale(1.1);
transform: scale(1.1)
}

.js-animation.do-scale.inView {
opacity: 1;
-webkit-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
-moz-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
-o-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1)
}

.js-animation.do-rotate {
-webkit-transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
-moz-transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
-o-transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
transition: 1s cubic-bezier(0.175, 0.885, 0.32, 1.275) 0s;
-webkit-transform-origin: center center;
-moz-transform-origin: center center;
-ms-transform-origin: center center;
-o-transform-origin: center center;
transform-origin: center center;
-webkit-transform: scaleX(0);
-moz-transform: scaleX(0);
-ms-transform: scaleX(0);
-o-transform: scaleX(0);
transform: scaleX(0)
}

.js-animation.do-rotate.inView {
-webkit-transform: scaleX(1);
-moz-transform: scaleX(1);
-ms-transform: scaleX(1);
-o-transform: scaleX(1);
transform: scaleX(1)
}

.js-animation.is-delay01 {
transition-delay: 0s !important
}

.js-animation.is-delay02 {
transition-delay: 0.1s !important
}

.js-animation.is-delay03 {
transition-delay: 0.2s !important
}

.js-animation.is-delay03 {
transition-delay: 0.3s !important
}

.js-animation.is-delay04 {
transition-delay: 0.4s !important
}

.js-animation.is-delay05 {
transition-delay: 0.5s !important
}

@keyframes triggerHover {
0% {
  -webkit-transform: rotateY(0);
  transform: rotateY(0)
}
100% {
  -webkit-transform: rotateY(180deg);
  transform: rotateY(180deg)
}
}

@media only screen and (min-width: 970px) {
.textLinkArrowHover, .bottomBanner_item:hover .textLinkArrow i, .textLinkArrow:hover a i, .baristaModal_button:hover i, .homeBanner:hover .textLinkArrow i {
  animation-name: textLinkArrow;
  animation-duration: .8s;
  animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1)
}
}

@keyframes textLinkArrow {
0% {
  -webkit-transform: scale3d(1, 1, 1);
  -moz-transform: scale3d(1, 1, 1);
  -ms-transform: scale3d(1, 1, 1);
  -o-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -webkit-transform-origin: right top;
  -moz-transform-origin: right top;
  -ms-transform-origin: right top;
  -o-transform-origin: right top;
  transform-origin: right top;
  will-change: transform
}
39.9% {
  -webkit-transform: scale3d(0, 1, 1);
  -moz-transform: scale3d(0, 1, 1);
  -ms-transform: scale3d(0, 1, 1);
  -o-transform: scale3d(0, 1, 1);
  transform: scale3d(0, 1, 1);
  -webkit-transform-origin: right top;
  -moz-transform-origin: right top;
  -ms-transform-origin: right top;
  -o-transform-origin: right top;
  transform-origin: right top;
  will-change: transform
}
40% {
  -webkit-transform: scale3d(0, 1, 1);
  -moz-transform: scale3d(0, 1, 1);
  -ms-transform: scale3d(0, 1, 1);
  -o-transform: scale3d(0, 1, 1);
  transform: scale3d(0, 1, 1);
  -webkit-transform-origin: left top;
  -moz-transform-origin: left top;
  -ms-transform-origin: left top;
  -o-transform-origin: left top;
  transform-origin: left top;
  will-change: transform
}
100% {
  -webkit-transform: scale3d(1, 1, 1);
  -moz-transform: scale3d(1, 1, 1);
  -ms-transform: scale3d(1, 1, 1);
  -o-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -webkit-transform-origin: left top;
  -moz-transform-origin: left top;
  -ms-transform-origin: left top;
  -o-transform-origin: left top;
  transform-origin: left top;
  will-change: transform
}
}

@media only screen and (min-width: 970px) {
.textLinkArrowHover--reverse, .textLinkArrow.is-reverse:hover a i {
  animation-name: textLinkArrowReverse;
  animation-duration: .8s;
  animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1)
}
}

@keyframes textLinkArrowReverse {
0% {
  -webkit-transform: scale3d(1, 1, 1);
  -moz-transform: scale3d(1, 1, 1);
  -ms-transform: scale3d(1, 1, 1);
  -o-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -webkit-transform-origin: left top;
  -moz-transform-origin: left top;
  -ms-transform-origin: left top;
  -o-transform-origin: left top;
  transform-origin: left top;
  will-change: transform
}
39.9% {
  -webkit-transform: scale3d(0, 1, 1);
  -moz-transform: scale3d(0, 1, 1);
  -ms-transform: scale3d(0, 1, 1);
  -o-transform: scale3d(0, 1, 1);
  transform: scale3d(0, 1, 1);
  -webkit-transform-origin: left top;
  -moz-transform-origin: left top;
  -ms-transform-origin: left top;
  -o-transform-origin: left top;
  transform-origin: left top;
  will-change: transform
}
40% {
  -webkit-transform: scale3d(0, 1, 1);
  -moz-transform: scale3d(0, 1, 1);
  -ms-transform: scale3d(0, 1, 1);
  -o-transform: scale3d(0, 1, 1);
  transform: scale3d(0, 1, 1);
  -webkit-transform-origin: right top;
  -moz-transform-origin: right top;
  -ms-transform-origin: right top;
  -o-transform-origin: right top;
  transform-origin: right top;
  will-change: transform
}
100% {
  -webkit-transform: scale3d(1, 1, 1);
  -moz-transform: scale3d(1, 1, 1);
  -ms-transform: scale3d(1, 1, 1);
  -o-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -webkit-transform-origin: right top;
  -moz-transform-origin: right top;
  -ms-transform-origin: right top;
  -o-transform-origin: right top;
  transform-origin: right top;
  will-change: transform
}
}

.languageHover, .globalSide_lang a:hover:before {
animation-name: languageHoverLine;
animation-duration: .7s;
animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1)
}

@keyframes languageHoverLine {
0% {
  -webkit-transform: scale3d(1, 1, 1);
  -moz-transform: scale3d(1, 1, 1);
  -ms-transform: scale3d(1, 1, 1);
  -o-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -webkit-transform-origin: right top;
  -moz-transform-origin: right top;
  -ms-transform-origin: right top;
  -o-transform-origin: right top;
  transform-origin: right top;
  will-change: transform
}
49.9% {
  -webkit-transform: scale3d(0, 1, 1);
  -moz-transform: scale3d(0, 1, 1);
  -ms-transform: scale3d(0, 1, 1);
  -o-transform: scale3d(0, 1, 1);
  transform: scale3d(0, 1, 1);
  -webkit-transform-origin: right top;
  -moz-transform-origin: right top;
  -ms-transform-origin: right top;
  -o-transform-origin: right top;
  transform-origin: right top;
  will-change: transform
}
50% {
  -webkit-transform: scale3d(0, 1, 1);
  -moz-transform: scale3d(0, 1, 1);
  -ms-transform: scale3d(0, 1, 1);
  -o-transform: scale3d(0, 1, 1);
  transform: scale3d(0, 1, 1);
  -webkit-transform-origin: left top;
  -moz-transform-origin: left top;
  -ms-transform-origin: left top;
  -o-transform-origin: left top;
  transform-origin: left top;
  will-change: transform
}
100% {
  -webkit-transform: scale3d(1, 1, 1);
  -moz-transform: scale3d(1, 1, 1);
  -ms-transform: scale3d(1, 1, 1);
  -o-transform: scale3d(1, 1, 1);
  transform: scale3d(1, 1, 1);
  -webkit-transform-origin: left top;
  -moz-transform-origin: left top;
  -ms-transform-origin: left top;
  -o-transform-origin: left top;
  transform-origin: left top;
  will-change: transform
}
}

.homeHero_headline, .homeHero_copy, .homeHeroNews, .homeHeroSpecial {
opacity: 0
}

.homeAbout_headline {
opacity: 0;
-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-ms-transform: scale(1.1);
-o-transform: scale(1.1);
transform: scale(1.1)
}

.inView .homeAbout_headline {
opacity: 1;
-webkit-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
-moz-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
-o-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1)
}

.homeAbout_body {
opacity: 0;
-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-ms-transform: scale(1.1);
-o-transform: scale(1.1);
transform: scale(1.1)
}

.inView .homeAbout_body {
opacity: 1;
-webkit-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.9s;
-moz-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.9s;
-o-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.9s;
transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.9s;
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1)
}

.homeAbout_button {
opacity: 0;
-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-ms-transform: scale(1.1);
-o-transform: scale(1.1);
transform: scale(1.1)
}

.inView .homeAbout_button {
opacity: 1;
-webkit-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s;
-moz-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s;
-o-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s;
transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s;
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1)
}

.homeAbout_background div {
opacity: 0;
-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-ms-transform: scale(1.1);
-o-transform: scale(1.1);
transform: scale(1.1)
}

.inView .homeAbout_background div {
opacity: 1;
-webkit-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s;
-moz-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s;
-o-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s;
transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s;
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1)
}

.homeDiscover_content {
opacity: 0;
-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-ms-transform: scale(1.1);
-o-transform: scale(1.1);
transform: scale(1.1)
}

.inView .homeDiscover_content {
opacity: 1;
-webkit-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
-moz-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
-o-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1)
}

.homeDiscover_headline {
opacity: 0;
-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-ms-transform: scale(1.1);
-o-transform: scale(1.1);
transform: scale(1.1)
}

.inView .homeDiscover_headline {
opacity: 1;
-webkit-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s;
-moz-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s;
-o-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s;
transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s;
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1)
}

.homeDiscover_body {
opacity: 0;
-webkit-transform: scale(1.1);
-moz-transform: scale(1.1);
-ms-transform: scale(1.1);
-o-transform: scale(1.1);
transform: scale(1.1)
}

.inView .homeDiscover_body {
opacity: 1;
-webkit-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
-moz-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
-o-transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
transition: 1.4s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
-webkit-transform: scale(1);
-moz-transform: scale(1);
-ms-transform: scale(1);
-o-transform: scale(1);
transform: scale(1)
}



.mfp-bg {
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1042;
overflow: hidden;
position: fixed;
background: #0b0b0b;
opacity: .8
}

.mfp-wrap {
top: 0;
left: 0;
width: 100%;
height: 100%;
z-index: 1043;
position: fixed;
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%;
width: auto;
text-align: center;
margin-top: -0.8em;
left: 8px;
right: 8px;
z-index: 1044
}

.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-close {
width: 44px;
height: 44px;
line-height: 44px;
position: absolute;
right: 0;
top: 0;
text-decoration: none;
text-align: center;
opacity: .65;
padding: 0 0 18px 10px;
color: #fff;
font-style: normal;
font-size: 28px;
font-family: Arial, Baskerville, monospace
}

.mfp-close:hover, .mfp-close:focus {
opacity: 1
}

.mfp-close:active {
top: 1px
}

.mfp-close-btn-in .mfp-close {
color: #333
}

.mfp-image-holder .mfp-close, .mfp-iframe-holder .mfp-close {
color: #fff;
right: -6px;
text-align: right;
padding-right: 6px;
width: 100%
}

.mfp-counter {
position: absolute;
top: 0;
right: 0;
color: #CCC;
font-size: 12px;
line-height: 18px;
white-space: nowrap
}

.mfp-arrow {
position: absolute;
opacity: .65;
margin: 0;
top: 50%;
margin-top: -55px;
padding: 0;
width: 90px;
height: 110px;
-webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

.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;
display: block;
top: 0;
left: 0;
width: 100%;
height: 100%;
box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
background: #000
}

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
}

.mfp-figure {
line-height: 0
}

.mfp-figure:after {
content: '';
position: absolute;
left: 0;
top: 40px;
bottom: 40px;
display: block;
right: 0;
width: auto;
height: auto;
z-index: -1;
box-shadow: 0 0 8px rgba(0, 0, 0, 0.6);
background: #444
}

.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) {
.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
}
}

html.remodal-is-locked {
overflow: hidden
}

.remodal-close {
border: none
}

.remodal, [data-remodal-id] {
display: none;
height: 100%
}

.remodal-overlay {
position: fixed;
z-index: 1003;
top: -5000px;
right: -5000px;
bottom: -5000px;
left: -5000px;
display: none
}

.remodal-wrapper {
position: fixed;
z-index: 1004;
top: 0;
bottom: 0;
left: 0;
right: 0;
display: none;
overflow: auto;
text-align: center;
-webkit-overflow-scrolling: touch;
background: rgba(0, 0, 0, 0.8)
}

.remodal-overlay, .remodal-wrapper {
backface-visibility: hidden
}

.remodal {
position: relative;
text-size-adjust: 100%
}

.remodal-is-initialized {
display: inline-block;
outline: none;
width: 100%
}

remodal, .remodal-wrapper:after {
vertical-align: middle
}

.remodal-overlay.remodal-is-opening, .remodal-overlay.remodal-is-closing {
animation-fill-mode: forwards
}

.remodal-overlay.remodal-is-opening {
animation: remodal-overlay-opening-keyframes 0.5s
}

.remodal-overlay.remodal-is-closing {
animation: remodal-overlay-closing-keyframes 0.3s
}

.remodal.remodal-is-opening, .remodal.remodal-is-closing {
animation-fill-mode: forwards
}

.remodal.remodal-is-opening {
animation: remodal-opening-keyframes 0.5s
}

.remodal.remodal-is-closing {
animation: remodal-closing-keyframes 0.3s
}

.remodal:not([data-remodal-id='modalGift']) {
transform: translate3d(0, 0, 0)
}

@keyframes remodal-opening-keyframes {
from {
  opacity: 0
}
to {
  transform: none;
  opacity: 1
}
}

@keyframes remodal-closing-keyframes {
from {
  opacity: 1
}
to {
  opacity: 0
}
}

@keyframes remodal-overlay-opening-keyframes {
from {
  opacity: 0
}
to {
  opacity: 1
}
}

@keyframes remodal-overlay-closing-keyframes {
from {
  opacity: 1
}
to {
  opacity: 0
}
}





.buttonCart {
width: 90px;
height: 90px;
background-color: #000;
display: flex;
align-items: center;
justify-content: center;
position: absolute;
right: 0;
top: 0;
z-index: 11
}

.page-corporate .buttonCart {
position: fixed;
z-index: 1002
}

@media only screen and (max-width: 970px) {
.page-corporate .globalSide:not(.is-fixed) .buttonCart {
  position: absolute
}
}

@media only screen and (max-width: 970px) {
.buttonCart {
  width: 60px;
  height: 60px;
  display: none
}
}

@media only screen and (min-width: 970px) {
.buttonCart {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.buttonCart:hover {
  background-color: #333
}

.buttonCart:hover > div {
  border-color: #333
}
}

.buttonCart:before {
content: '';
width: 27px;
height: 27px;
display: block;
background-repeat: no-repeat;
background-position: left top;
background-size: contain;
background-image: url("../img/common/icon_cart.svg")
}

@media only screen and (max-width: 970px) {
.buttonCart:before {
  width: 19px;
  height: 19px
}
}

.buttonCart > div {
position: absolute;
right: 19px;
top: 15px;
color: #fff;
display: flex;
justify-content: center;
align-items: center;
width: 25px;
height: 25px;
background-color: #b71818;
border: 1px solid #000;
position: absolute;
-moz-border-radius: 50%;
-webkit-border-radius: 50%;
-o-border-radius: 50%;
-ms-border-radius: 50%;
-khtml-border-radius: 50%;
border-radius: 50%
}

.page-corporate .buttonCart > div {
display: none
}

.page-corporate .buttonCart > div.is-show {
display: flex
}

@media only screen and (max-width: 970px) {
.buttonCart > div {
  width: 18px;
  height: 18px;
  right: 10px;
  top: 8px
}
}

.buttonCart > div p {
font-size: .9rem;
font-weight: bold;
position: absolute;
width: 100%;
height: 100%;
display: flex;
justify-content: center;
align-items: center;
line-height: 1;
z-index: 1;
left: 0;
top: 0;
padding-bottom: 1px
}

@media only screen and (max-width: 970px) {
.buttonCart > div p {
  font-size: .7rem
}
}

.buttonMore {
width: 437px;
margin-left: auto;
margin-right: auto
}

@media only screen and (max-width: 970px) {
.buttonMore {
  width: 260px
}
}

.buttonMore a {
background-color: #fff;
border: 1px solid #000;
height: 60px;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.6rem
}

@media only screen and (max-width: 970px) {
.buttonMore a {
  font-size: 1.5rem;
  height: 50px
}
}

.buttonMore a i {
margin-left: 20px;
width: 19px;
height: 19px;
display: block;
position: relative
}

.buttonMore a i:before, .buttonMore a i:after {
background-color: #000;
display: block;
position: absolute;
content: ''
}

.buttonMore a i:before {
width: 100%;
height: 1px;
top: calc(50% - 1px);
left: 0
}

.buttonMore a i:after {
width: 1px;
height: 100%;
left: calc(50% - 1px);
top: 0
}

.buttonFrame {
width: 437px;
margin-left: auto;
margin-right: auto
}

@media only screen and (max-width: 970px) {
.buttonFrame {
  width: 260px
}
}

.buttonFrame a {
background-color: #fff;
border: 1px solid #000;
height: 60px;
display: flex;
align-items: center;
justify-content: center;
font-size: 1.6rem
}

@media only screen and (max-width: 970px) {
.buttonFrame a {
  font-size: 1.5rem;
  height: 50px
}
}

.buttonFrame--next i {
width: 28px;
height: 1px;
background-color: #000;
position: relative;
display: block;
margin-left: 5px
}

.buttonFrame--next i:before {
width: 0;
height: 0;
border-style: solid;
display: block;
position: absolute;
content: '';
top: -2px;
border-color: transparent transparent transparent #000;
border-width: 2.5px 0 2.5px 4px;
right: 0
}

.buttonFill, .myPageModal_button {
height: 60px;
display: flex;
justify-content: center;
align-items: center;
color: #fff;
font-size: 1.6rem;
font-weight: bold;
background-color: #000;
cursor: pointer
}

@media only screen and (max-width: 970px) {
.buttonFill, .myPageModal_button {
  height: 50px;
  font-size: 1.4rem
}
}

@media only screen and (min-width: 970px) {
.buttonFill, .myPageModal_button {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.buttonFill:hover, .myPageModal_button:hover {
  background-color: #333
}
}

.buttonFill--gray {
background-color: #787878
}

@media only screen and (min-width: 970px) {
.buttonFill--gray {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.buttonFill--gray:hover {
  background-color: #b1b1b1
}
}

.buttonFill--next i {
width: 28px;
height: 1px;
background-color: #fff;
position: relative;
display: block;
margin-left: 5px
}

.buttonFill--next i:before {
width: 0;
height: 0;
border-style: solid;
display: block;
position: absolute;
content: '';
top: -2px;
border-color: transparent transparent transparent #fff;
border-width: 2.5px 0 2.5px 4px;
right: 0
}

.buttonAdd {
height: 30px;
display: flex;
justify-content: center;
align-items: center;
color: #fff;
font-size: 1.4rem;
font-weight: bold;
background-color: #000;
cursor: pointer
}

@media only screen and (min-width: 970px) {
.buttonAdd {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.buttonAdd:hover {
  background-color: #333
}
}

.buttonAdd.is-hidden {
pointer-events: none;
background-color: #787878
}

.buttonAdd.is-hidden i {
margin-left: 10px
}

.buttonAdd--plus i {
margin-left: 10px;
position: absolute;
width: 12px;
height: 12px;
-webkit-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
position: relative
}

.buttonAdd--plus i:before, .buttonAdd--plus i:after {
background-color: #fff;
display: block;
position: absolute;
content: ''
}

.buttonAdd--plus i:before {
width: 1px;
height: 100%;
left: calc(50% - 1px);
top: 0;
-webkit-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media only screen and (max-width: 970px) {
.buttonAdd--plus i:before {
  left: calc(50% - 1px)
}
}

.buttonAdd--plus i:after {
width: 100%;
height: 1px;
top: calc(50% - 1px);
left: 0
}

@media only screen and (max-width: 970px) {
.buttonAdd--plus i:after {
  top: calc(50% - 1px)
}
}

.buttonAdd--arrow i {
width: 28px;
height: 1px;
background-color: #fff;
position: relative;
display: block;
margin-left: 5px
}

.buttonAdd--arrow i:before {
width: 0;
height: 0;
border-style: solid;
display: block;
position: absolute;
content: '';
top: -2px;
border-color: transparent transparent transparent #fff;
border-width: 2.5px 0 2.5px 4px;
right: 0
}

.config {
display: flex;
align-items: center;
height: 90px;
position: relative;
opacity: 0;
padding-right: 90px;
-webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
-moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
-o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}


.config.inView {
opacity: 1
}

[lang=en] .config {
display: none
}

.config.is-fixed, .homeHero .config {
width: 100%;
justify-content: flex-end;
pointer-events: none
}

@media only screen and (max-width: 970px) {
.config {
  display: none
}
}

.config_menu {
display: flex;
align-items: center
}

.config_item {
margin-right: 25px;
padding: 10px 0
}

.config_item > a {
font-size: 1.2rem;
padding: 30px 0;
line-height: 1.4
}

.is-fixed .config_item > a {
color: #fff;
pointer-events: auto
}

.ie .is-fixed .config_item > a, .ie11 .is-fixed .config_item > a, .edge .is-fixed .config_item > a {
color: #000
}

@media only screen and (min-width: 970px) {
.config_item > a:hover {
  opacity: .7
}
}

.config_item > a span {
font-size: 1.1rem
}

.is-fixed .config_item:nth-child(1) > a {
position: fixed;
mix-blend-mode: exclusion;
z-index: 1002;
top: 10px;
right: 242px
}

.is-fixed .config_item:nth-child(2) > a {
position: fixed;
mix-blend-mode: exclusion;
z-index: 1002;
top: 10px;
right: 177px
}

.config .has-child {
position: relative
}

.config .has-child:hover .configChild {
opacity: 1;
pointer-events: auto
}

.config .has-child:hover .configChild > a {
pointer-events: auto
}

.config_search > a {
margin-right: 45px;
position: relative;
background-color: transparent;
background-image: url("../img/common/icon_search.svg");
pointer-events: auto
}

.is-fixed .config_search > a {
position: fixed;
mix-blend-mode: exclusion;
z-index: 1002;
top: 38px;
right: 89px;
background-image: url("../img/common/icon_search_white.svg")
}

.ie .is-fixed .config_search > a, .ie11 .is-fixed .config_search > a, .edge .is-fixed .config_search > a {
background-image: url("../img/common/icon_search.svg")
}

@media only screen and (min-width: 970px) {
.config_search > a {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.config_search > a:hover {
  opacity: .7
}
}
.field {
margin-top: 45px;
max-width: 696px
}

@media screen and (max-width: 1260px) {
.field {
  max-width: none
}
}

@media only screen and (max-width: 970px) {
.field {
  margin-top: 30px
}
}

.field_input {
margin-bottom: 15px
}

@media only screen and (max-width: 970px) {
.field_input {
  margin-bottom: 10px
}
}

.field_input input[type="tel"] {
width: 90px
}

@media only screen and (max-width: 970px) {
.field_input input[type="tel"] {
  width: 24%
}
}

.field_input input[type="text"], .field_input input[type="email"], .field_input input[type="password"], .field_input textarea {
width: 100%
}

.field_input input[type="text"].is-credit, .field_input input[type="email"].is-credit, .field_input input[type="password"].is-credit, .field_input textarea.is-credit {
width: 340px
}

@media only screen and (max-width: 970px) {
.field_input input[type="text"].is-credit, .field_input input[type="email"].is-credit, .field_input input[type="password"].is-credit, .field_input textarea.is-credit {
  width: 100%
}
}

.field_input input[type="text"].is-code, .field_input input[type="email"].is-code, .field_input input[type="password"].is-code, .field_input textarea.is-code {
width: 135px
}

@media only screen and (max-width: 970px) {
.field_input input[type="text"].is-code, .field_input input[type="email"].is-code, .field_input input[type="password"].is-code, .field_input textarea.is-code {
  width: 100%
}
}

.field_input textarea {
height: 250px
}

@media only screen and (max-width: 970px) {
.field_input textarea {
  height: 150px
}
}

.field_label {
margin-bottom: 5px
}

.field_label p {
font-size: 1.4rem
}

@media only screen and (max-width: 970px) {
.field_label p {
  font-size: 1.2rem
}
}

.field_text {
margin-bottom: 25px
}

@media only screen and (max-width: 970px) {
.field_text {
  margin-bottom: 15px
}
}

.field_text p {
font-size: 1.8rem;
font-weight: bold
}

@media only screen and (max-width: 970px) {
.field_text p {
  font-size: 1.4rem
}
}

.field_confirm {
margin-bottom: 10px
}

.field_confirm .p_old {
font-size: 1.6rem;
background-color: #f1f1f1;
padding: 11px 20px
}

.field_confirm p {
font-size: 1.8rem;
font-weight: bold
}

@media only screen and (max-width: 970px) {
.field_confirm p {
  font-size: 1.6rem
}
}

.field_gender {
display: flex;
margin-top: 10px
}

.field_gender > div:first-child {
margin-right: 20px
}

.field_gender label {
font-size: 1.6rem !important
}

@media only screen and (max-width: 970px) {
.field_gender label {
  font-size: 1.4rem !important
}
}

.field_attention {
margin-top: 3px;
font-size: 1.2rem
}

@media only screen and (max-width: 970px) {
.field_attention {
  font-size: 1.1rem
}
}

.field_error, .field .error {
margin-top: 3px;
font-size: 1.2rem;
color: #d00000
}

@media only screen and (max-width: 970px) {
.field_error, .field .error {
  font-size: 1.1rem
}
}

.field_column2 {
display: flex;
justify-content: space-between
}

.field_column2 > div {
width: 48.5%
}

.field_column4 {
display: flex;
justify-content: space-between;
align-items: center
}

@media only screen and (max-width: 970px) {
.field_column4 {
  flex-wrap: wrap
}
}

.field_column4 > *:nth-child(odd) {
width: 100px
}

@media only screen and (max-width: 970px) {
.field_column4 > *:nth-child(odd) {
  width: 100px
}
}

.field_column4 > *:nth-child(even) {
width: calc(50% - 100px)
}

@media only screen and (max-width: 970px) {
.field_column4 > *:nth-child(even) {
  width: calc(100% - 100px)
}
}

.field_column4 > *:nth-child(2) {
margin-right: 3%
}

@media only screen and (max-width: 970px) {
.field_column4 > *:nth-child(2) {
  margin-right: 0
}
}

@media only screen and (max-width: 970px) {
.field_column4 > *:nth-child(1), .field_column4 > *:nth-child(2) {
  margin-bottom: 10px
}
}

.field .has-marginTop {
margin-top: 40px
}

@media only screen and (max-width: 970px) {
.field .has-marginTop {
  margin-top: 20px
}
}

.field_body {
margin: 10px 0;
line-height: 2
}

.fieldZip_content {
display: flex;
align-items: center
}

.fieldZip_head {
font-size: 1.6rem;
margin-right: 15px
}

@media only screen and (max-width: 970px) {
.fieldZip_head {
  font-size: 1.4rem;
  margin-right: 10px
}
}

.fieldZip #zip01 {
width: 74px !important
}

@media only screen and (max-width: 970px) {
.fieldZip #zip01 {
  width: 70px !important
}
}

.fieldZip #zip02 {
width: 89px !important
}

@media only screen and (max-width: 970px) {
.fieldZip #zip02 {
  width: 85px !important
}
}

.fieldZip_select select, .fieldZip_select label {
height: 50px
}

.fieldZip_button {
width: 200px;
height: 100%;
height: 44px;
margin-left: 10px
}

@media only screen and (max-width: 970px) {
.fieldZip_button {
  height: 38px;
  font-size: 1.1rem
}
}

.fieldZipSearch {
display: flex;
align-items: center;
margin-left: 25px
}

@media only screen and (max-width: 970px) {
.fieldZipSearch {
  margin: 5px 0 0 0
}
}

.fieldZipSearch_icon {
width: 20px;
height: 20px;
display: block;
background-color: #000;
margin-right: 5px;
color: #fff;
display: flex;
justify-content: center;
align-items: center;
font-style: normal;
font-weight: bold;
-moz-border-radius: 50%;
-webkit-border-radius: 50%;
-o-border-radius: 50%;
-ms-border-radius: 50%;
-khtml-border-radius: 50%;
border-radius: 50%
}

@media only screen and (max-width: 970px) {
.fieldZipSearch_icon {
  width: 15px;
  height: 15px
}
}

.fieldZipSearch_text {
font-size: 1.6rem;
text-decoration: underline
}

@media only screen and (max-width: 970px) {
.fieldZipSearch_text {
  font-size: 1.2rem
}
}

.fieldZipSearch_blank {
margin-left: 5px;
position: relative;
width: 12px;
height: 12px
}

@media only screen and (max-width: 970px) {
.fieldZipSearch_blank {
  width: 10px;
  height: 10px
}
}

.fieldZipSearch_blank i {
left: 0;
bottom: 0;
border: 1px solid #000;
background-color: #fff;
position: absolute;
display: block;
width: 10px;
height: 10px
}

@media only screen and (max-width: 970px) {
.fieldZipSearch_blank i {
  width: 8px;
  height: 8px
}
}

.fieldZipSearch_blank:before, .fieldZipSearch_blank:after {
position: absolute;
display: block;
content: '';
background-color: #000;
right: 0;
top: 0
}

.fieldZipSearch_blank:before {
width: 10px;
height: 1px
}

@media only screen and (max-width: 970px) {
.fieldZipSearch_blank:before {
  width: 8px
}
}

.fieldZipSearch_blank:after {
width: 1px;
height: 10px
}

@media only screen and (max-width: 970px) {
.fieldZipSearch_blank:after {
  height: 8px
}
}

.fieldZip_attention {
margin: 7px 0 0 30px
}

@media only screen and (max-width: 970px) {
.fieldZip_attention {
  margin: 3px 0 0 25px
}
}

@media only screen and (max-width: 970px) {
.fieldZip_attention p {
  font-size: 1.2rem
}
}

.fieldZip_attention span {
font-size: 1.4rem
}

@media only screen and (max-width: 970px) {
.fieldZip_attention span {
  font-size: 1.2rem
}
}

.fieldBirthday {
display: flex
}

.fieldBirthday_text {
font-size: 1.6rem;
margin: 12px 30px 0 10px
}

@media only screen and (max-width: 970px) {
.fieldBirthday_text {
  margin: 0 10px 0 5px
}
}

.fieldBirthday_text:last-child {
margin-right: 0
}

.fieldCard {
margin-top: 60px
}

.fieldCardEntry_body {
font-size: 1.4rem;
line-height: 2;
margin: 10px 0 0 25px
}

.fieldCard_content {
background-color: #f1f1f1;
padding: 20px;
margin-top: 20px;
animation: fadeIn ease-out 1.2s forwards
}

.fieldCard_content.is-hidden {
display: none
}

.fieldCard_content .formCheckbox p::before {
background-color: #fff
}

.fieldCard_content .formCheckbox p::after {
border-color: #cdcdcd
}

.fieldCard_item {
margin-bottom: 20px
}

.fieldCard_headline {
font-size: 1.8rem;
font-weight: bold;
margin-bottom: 20px
}

@media only screen and (max-width: 970px) {
.fieldCard_headline {
  font-size: 1.6rem
}
}

.fieldCard_title {
font-size: 1.4rem
}

@media only screen and (max-width: 970px) {
.fieldCard_title {
  font-size: 1.3rem
}
}

.fieldCard_input input {
width: 100%
}

.fieldCard_attention {
font-size: 1.4rem
}

@media only screen and (max-width: 970px) {
.fieldCard_attention {
  font-size: 1.2rem
}
}

.fieldCard_shop {
margin-bottom: 40px;
display: flex;
justify-content: space-between
}

@media only screen and (max-width: 970px) {
.fieldCard_shop {
  margin-bottom: 30px
}
}

.fieldCard_shop > div {
width: 48%
}

.fieldCard_pulldown select {
width: 100%
}

.fieldCard_text {
font-size: 1.8rem;
font-weight: bold
}

@media only screen and (max-width: 970px) {
.fieldCard_text {
  font-size: 1.6rem
}
}

.fieldCardTerm_body {
font-size: 1.4rem;
margin-bottom: 10px
}

@media only screen and (max-width: 970px) {
.fieldCardTerm_body {
  font-size: 1.2rem
}
}

.fieldCardTerm_body a {
text-decoration: underline
}

.fieldTerm {
margin-top: 60px
}

@media only screen and (max-width: 970px) {
.fieldTerm {
  margin-top: 40px
}
}

.fieldTerm_body {
font-size: 1.4rem;
line-height: 2;
margin-bottom: 20px
}

@media only screen and (max-width: 970px) {
.fieldTerm_body {
  font-size: 1.2rem;
  margin-bottom: 15px
}
}

.fieldTerm_note {
font-size: 1.4rem;
margin-bottom: 10px
}

@media only screen and (max-width: 970px) {
.fieldTerm_note {
  font-size: 1.2rem
}
}

.fieldTerm_note a {
text-decoration: underline
}

.test {
font-size: 3rem;
color: red;
color: #fff;
mix-blend-mode: exclusion;
position: fixed;
left: 0;
top: 0;
z-index: 100
}

.toCART {
	opacity: 0.9;
	position: fixed;
	right: 15px;
	bottom: 30px;
	z-index: 14;
	pointer-events: cursor;
	mix-blend-mode: multiply;
	right:10px;
	z-index:9990;
}


@media only screen and (max-width: 970px) {
.followUs {
  display: none
}
}

.followUs_title {
font-size: 1.0rem;
letter-spacing: .3em;
color: #fff;
-webkit-transform: rotate(90deg);
-moz-transfrom: rotate(90deg);
-ms-transform: rotate(90deg);
-o-transform: rotate(90deg);
transform: rotate(90deg)
}

.followUs_list {
position: relative;
margin-top: 90px
}

.followUs_list:before {
position: absolute;
content: '';
clear: both;
width: 1px;
height: 35px;
display: block;
background-color: #fff;
left: 50%;
top: -50px
}

.followUs_item {
margin: 0 auto 20px;
display: block;
pointer-events: auto;
mix-blend-mode: exclusion;
background-repeat: no-repeat;
background-position: left top;
background-size: cover
}

@media only screen and (min-width: 970px) {
.followUs_item {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.followUs_item:hover {
  opacity: .5
}
}

.followUs_item:last-child {
margin-bottom: 0
}

.followUs_item.is-instagram {
width: 19px;
height: 19px;
background-image: url("../img/common/icon_instagram_white.svg")
}

.followUs_item.is-facebook {
width: 12px;
height: 21px;
background-image: url("../img/common/icon_facebook_white.svg")
}

.followUs_item.is-twitter {
width: 19px;
height: 15px;
background-image: url("../img/common/icon_twitter_white.svg")
}

.followUs_item.is-youtube {
width: 19px;
height: 15px;
background-image: url("../img/common/icon_youtube_white.svg")
}

.form_error {
font-size: 1.4rem;
color: #b71818;
margin-top: 10px
}

@media only screen and (max-width: 970px) {
.form_error {
  font-size: 1.2rem
}
}

input[type="text"], input[type="password"], input[type="email"], input[type="tel"], button, textarea, select {
margin: 0;
padding: 0;
background: none;
border: none;
border-radius: 0;
outline: none;
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
outline: 0;
}

input[type="text"], input[type="email"], input[type="password"], input[type="tel"], textarea {
border: 1px solid #7f7f7f;
background-color: #fff;
font-size: 1.6rem;
padding: 12px 20px
}

@media only screen and (max-width: 970px) {
input[type="text"], input[type="email"], input[type="password"], input[type="tel"], textarea {
  border-width: 1px;
  font-size: 1.4rem;
  padding: 10px 10px
}
}

input[type="text"].is-gray, input[type="email"].is-gray, input[type="password"].is-gray, input[type="tel"].is-gray, textarea.is-gray {
border: none;
background-color: #f1f1f1
}

textarea {
height: 150px
}

input[type="submit"] {
border: none;
outline: 0
}

select, input {
outline: 0
}

::-webkit-input-placeholder {
color: #888
}

::-moz-placeholder {
color: #888;
opacity: 1
}

:-ms-input-placeholder {
color: #888
}

.formSelect label {
position: relative
}

.formSelect label:before {
content: '';
top: calc(50% - 7px);
right: 20px;
display: block;
position: absolute;
z-index: 10;
width: 7px;
height: 7px;
border-top: 2px solid #000;
border-right: 2px solid #000;
-webkit-transform: rotate(135deg);
transform: rotate(135deg);
pointer-events: none
}

@media only screen and (max-width: 970px) {
.formSelect label:before {
  right: 10px;
  border-top-width: 1px;
  border-right-width: 1px
}
}

.ie .formSelect label:before, .ie11 .formSelect label:before, .edge .formSelect label:before {
display: none
}

.formSelect label select {
background-color: #fff;
border: 1px solid #7f7f7f;
padding: 12px 40px 12px 20px;
text-align: left;
position: relative;
cursor: pointer;
font-size: 1.6rem;
-moz-border-radius: 0;
-webkit-border-radius: 0;
-o-border-radius: 0;
-ms-border-radius: 0;
-khtml-border-radius: 0;
border-radius: 0
}

@media only screen and (max-width: 970px) {
.formSelect label select {
  font-size: 1.4rem;
  padding: 12px 40px 12px 10px
}
}

.formRadio > div {
display: flex;
align-items: center
}

.formRadio > div > input[type="radio"] {
display: none
}

.formRadio > div > input[type="radio"] + label {
padding-left: 30px;
position: relative;
cursor: pointer;
font-size: 1.4rem
}

.formRadio > div > input[type="radio"] + label::before {
content: "";
display: block;
position: absolute;
top: -3px;
left: 0;
width: 17px;
height: 17px;
background: #fff;
border: 1px solid #000
}

.formRadio > div > input[type="radio"]:checked + label::after {
content: "";
display: block;
position: absolute;
top: 1px;
left: 4px;
width: 11px;
height: 11px;
background-color: #000
}

.formCheckbox label {
display: block;
cursor: pointer;
margin-bottom: 20px
}

.formCheckbox label:last-child {
margin-bottom: 0
}

.formCheckbox input {
display: none
}

.formCheckbox p {
padding-left: 25px;
position: relative;
margin-right: 20px;
box-sizing: border-box;
display: inline-block;
font-size: 1.6rem;
line-height: 1.4
}

@media only screen and (max-width: 970px) {
.formCheckbox p {
  font-size: 1.4rem
}
}

.formCheckbox p::before {
content: "";
display: block;
position: absolute;
top: 3px;
left: 0;
width: 17px;
height: 17px;
background: #e4e4e4;
margin-right: 10px;
-webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
-moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
-o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

@media only screen and (max-width: 970px) {
.formCheckbox p::before {
  top: 1px
}
}

.formCheckbox p .is-small {
font-size: 1.4rem
}

.formCheckbox input + p::after {
content: "";
display: block;
position: absolute;
top: 4px;
left: 5px;
width: 5px;
height: 10px;
transform: rotate(40deg);
border-bottom: 2px solid #fff;
border-right: 2px solid #fff
}

@media only screen and (max-width: 970px) {
.formCheckbox input + p::after {
  top: 2px
}
}

.formCheckbox input:checked + p::before {
background-color: #000
}

.headlineLv1 span {
display: block
}

.headlineLv1 span.is-en {
font-size: 1.0rem;
margin-bottom: 9px;
letter-spacing: .25em
}

@media only screen and (max-width: 970px) {
.headlineLv1 span.is-en {
  font-size: .9rem;
  margin-bottom: 6px
}
}

.headlineLv1 span.is-jp {
font-weight: bold;
line-height: 1.5
}

.headlineLv1 span.is-jp .is-attention {
font-size: 1.2rem;
font-style: normal;
font-weight: normal;
margin-left: 20px
}

@media only screen and (max-width: 970px) {
.headlineLv1 span.is-jp .is-attention {
  display: block;
  margin: 10px 0 0
}
}
.headlineLv1 span.is-lead {
font-size: 1.6rem;
margin-top: 30px;
letter-spacing: .05em;
line-height: 2
}

@media only screen and (max-width: 970px) {
.headlineLv1 span.is-lead {
  font-size: 1.5rem;
  line-height: 1.4666666667;
  margin-top: 15px
}
}

.headlineLv1.is-size20 .is-jp {
font-size: 2.0rem;
letter-spacing: .02em
}

@media only screen and (max-width: 970px) {
.headlineLv1.is-size20 .is-jp {
  font-size: 1.8rem
}
}


.headlineLv1.is-size22 .is-jp {
font-size: 2.2rem;
letter-spacing: .04em
}

@media only screen and (max-width: 970px) {
.headlineLv1.is-size22 .is-jp {
  font-size: 1.7rem
}
}

.headlineLv1.is-size26 .is-en {
margin-bottom: 5px
}

.headlineLv1.is-size26 .is-jp {
font-size: 2.6rem;
letter-spacing: -.05em
}

@media only screen and (max-width: 970px) {
.headlineLv1.is-size26 .is-jp {
  font-size: 1.8rem
}
}

.headlineLv2 {
font-size: 2.4rem;
margin-top: 75px;
font-weight: bold
}

@media only screen and (max-width: 970px) {
.headlineLv2 {
  font-size: 1.8rem;
  margin-top: 0
}
}

.headlineLv2 span {
font-weight: normal;
font-size: 1.6rem
}

.headlineLv3 {
font-size: 1.8rem;
font-weight: bold;
margin-bottom: 10px
}

@media only screen and (max-width: 970px) {
.headlineLv3 {
  font-size: 1.5rem
}
}

.headlineLv3 span {
font-weight: normal;
font-size: 1.4rem
}

@media only screen and (max-width: 970px) {
.headlineLv3 span {
  font-size: 1.2rem
}
}

.headlineEC_title {
font-size: 2.1rem;
font-weight: bold;
margin-bottom: 35px
}

@media only screen and (max-width: 970px) {
.headlineEC_title {
  font-size: 1.8rem;
  margin-bottom: 25px
}
}

.headlineEC_title span {
font-size: 1.6rem;
font-weight: normal
}

@media only screen and (max-width: 970px) {
.headlineEC_title span {
  font-size: 1.4rem
}
}

.headlineEC_body {
font-size: 1.5rem;
line-height: 1.8666666667
}

@media only screen and (max-width: 970px) {
.headlineEC_body {
  font-size: 1.4rem
}
}

.headlineEC_body a {
text-decoration: underline
}

.headlineEC_lead {
font-size: 1.8rem;
font-weight: bold;
margin-bottom: 10px
}

@media only screen and (max-width: 970px) {
.headlineEC_lead {
  font-size: 1.6rem
}
}

.headlineEC_image {
margin-top: 10px
}

.headlineEC_wrap {
display: flex;
justify-content: space-between;
align-items: center
}

@media only screen and (max-width: 970px) {
.headlineEC_wrap {
  display: block
}
}

.headlineEC_edit {
font-size: 1.5rem;
text-decoration: underline;
display: block
}

@media only screen and (max-width: 970px) {
.headlineEC_edit {
  font-size: 1.4rem;
  margin-top: 15px
}
}

.headlineEC_addButton .buttonAdd {
padding: 0 15px
}

@media only screen and (max-width: 970px) {
.headlineEC_addButton .buttonAdd {
  padding: 10px;
  height: auto;
  line-height: 1.2;
  margin-top: 10px
}
}

.headlineEC .is-error {
color: #b71818;
font-weight: bold
}

.listColumn3 {
display: flex
}

.listColumn3_item {
width: 30.8270676692%
}

@media only screen and (min-width: 970px) {
.listColumn3_item {
  margin-right: 3.7%;
  margin-bottom: 2%;
}
}

@media only screen and (min-width: 970px) {
.listColumn3_item:nth-child(3n) {
  margin-right: 0
}
}

@media only screen and (max-width: 970px) {
.listColumn3_item {
  width: 49%;/*270px*/
  /*margin-right: 20px;*/
  margin-right: 1%;
  margin-bottom: 10px;
}
}

@media only screen and (min-width: 970px) {
.listColumn3_item {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.listColumn3_item:hover {
  opacity: .7
}
}

.listColumn3_image {
padding-top: 66.7682926829%;
background-repeat: no-repeat;
background-position: center center;
background-size: cover
}

.listColumn3_title {
font-size: 1.6rem;
margin-top: 10px;
line-height: 1.5714285714
}

@media only screen and (max-width: 970px) {
.listColumn3_title {
  font-size: 1.4rem;
  margin-top: 5px
}
}

.listCarousel_item {
width: 188px;
margin-right: 30px
}

@media only screen and (max-width: 970px) {
.listCarousel_item {
  width: 120px;
  margin-right: 20px
}
}

@media only screen and (min-width: 970px) {
.listCarousel_item {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.listCarousel_item:hover {
  opacity: .7
}
}

.listCarousel_image {
padding-top: 100%;
margin-bottom: 15px;
background-repeat: no-repeat;
background-position: center center;
background-size: cover
}

.listCarousel_title {
font-size: 1.4rem;
margin-bottom: 8px;
line-height: 1.4
}

.trigger {
cursor: pointer;
justify-content: center;
align-items: center;
display: flex;
width: 50px;
height: 42px;
pointer-events: auto
}

@media only screen and (max-width: 970px) {
.trigger {
  width: 35px;
  height: 11px
}
}

@media only screen and (min-width: 970px) {
body:not(.is-menuOpened) .trigger:hover .trigger_inner span {
  animation-name: triggerHover;
  animation-duration: 1.5s;
  animation-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
  -webkit-transform-origin: center center;
  -moz-transform-origin: center center;
  -ms-transform-origin: center center;
  -o-transform-origin: center center;
  transform-origin: center center
}

.trigger:hover .trigger_inner span:nth-child(1) {
  animation-delay: 0s
}

.trigger:hover .trigger_inner span:nth-child(2) {
  animation-delay: .1s
}

.trigger:hover .trigger_inner span:nth-child(3) {
  animation-delay: .2s
}
}

.trigger:before {
width: calc(100% + 20px);
height: calc(100% + 20px);
cursor: pointer;
position: absolute;
left: -10px;
top: -10px;
content: ''
}

.trigger_text {
position: relative;
bottom:-35px;
left: 0;
font-size: .7rem;
color: #fff;
text-align: center;
width: 100%;
letter-spacing: .3em;
overflow: visible;
}

.trigger_inner {
position: relative;
width: 100%;
height: 36px;
display: block;
transition: all .4s;
box-sizing: border-box
}

@media only screen and (max-width: 970px) {
.trigger_inner {
  height: 50px
}
}
.is-menuOpened .trigger_inner span {
}
.trigger_inner span {
display: block;
transition: all .4s;
box-sizing: border-box;
position: absolute;
width: 100%;
height: 1px;
background-color: #fff;s
-webkit-transition: 0.7s cubic-bezier(0.19, 1, 0.22, 1);
-moz-transition: 0.7s cubic-bezier(0.19, 1, 0.22, 1);
-o-transition: 0.7s cubic-bezier(0.19, 1, 0.22, 1);
transition: 0.7s cubic-bezier(0.19, 1, 0.22, 1)
}

.trigger_inner span:nth-child(1) {
top: 0;
left: 0
}

.trigger_inner span:nth-child(2), .trigger_inner span:nth-child(3) {
height: 1px
}

.trigger_inner span:nth-child(2) {
top: 7px;
opacity: 1
}

@media only screen and (max-width: 970px) {
.trigger_inner span:nth-child(2) {
  top: 5px
}
}

.trigger_inner span:nth-child(3) {
top: 14px
}

@media only screen and (max-width: 970px) {
.trigger_inner span:nth-child(3) {
  top: 10px
}
}

.is-menuOpened .trigger_inner span {
animation-delay: 0s
}

.is-menuOpened .trigger_inner span:nth-child(1) {
top: 8px;
-webkit-transform: rotate(-45deg);
-moz-transfrom: rotate(-45deg);
-ms-transform: rotate(-45deg);
-o-transform: rotate(-45deg);
transform: rotate(-45deg)
}

.is-menuOpened .trigger_inner span:nth-child(2) {
opacity: 0
}

.is-menuOpened .trigger_inner span:nth-child(3) {
top: 8px;
width: 100%;
-webkit-transform: rotate(45deg);
-moz-transfrom: rotate(45deg);
-ms-transform: rotate(45deg);
-o-transform: rotate(45deg);
transform: rotate(45deg)
}

.wysiwyg > p {
margin-bottom: 25px;
font-size: 1.4rem;
line-height: 1.8571428571
}

@media only screen and (max-width: 970px) {
.wysiwyg > p {
  margin-bottom: 20px;
  font-size: 1.4rem;
  line-height: 1.9285714286
}
}

.wysiwyg > p:last-child {
margin-bottom: 0
}

.newsDetail .wysiwyg > p {
font-size: 1.6rem;
line-height: 2
}

@media only screen and (max-width: 970px) {
.newsDetail .wysiwyg > p {
  font-size: 1.5rem;
  line-height: 2
}
}

.footer {
	position: relative;
	text-align: center;
	padding: 0px;
	margin: 0;
}

.footer_wrap {
	padding: 40px 0 0px;
	width: 100%;
	text-align: center;
	margin-left: 0;
	margin-right: 0;
}


.footer_logo{
margin-bottom: 10px;
}


.footer_name {
font-weight: bold;
}

.footer_address {
font-size: 1.2rem;
opacity: .6;
margin-bottom: 20px
}

@media only screen and (max-width: 970px) {
.footer_address {
  font-size: 1.0rem
}
}

.footer_copyright {
font-size: 1.1rem;
/*    position: absolute;*/
/*    bottom: 50px;*/
letter-spacing: .08em;
width: 100%;
}
.footer_copyright p {
text-align: center;
}
@media only screen and (max-width: 970px) {
.footer_copyright {
  position: static;
  font-size: .8rem;
  margin-left: auto;
  margin-right: auto
}
}


@media only screen and (max-width: 970px) {
.footer .footerSocial_title {
  margin-right: 0;
  margin-bottom: 15px;
  font-size: 1.0rem
}
}

@media only screen and (max-width: 970px) {
.globalMenu .footerSocial_title {
  font-weight: normal;
  margin-right: 15px;
  font-size: 1.3rem
}
}

.footerSocial_wrap {
display: flex;
align-items: center
}

@media only screen and (max-width: 970px) {
.footerSocial_wrap {
  justify-content: center
}
}

.SideSocial_item {
display: inline;
margin-right: 15px;
pointer-events: auto;
background-repeat: no-repeat;
background-position: left top;
background-size: cover
}

.footerSocial_item {
display: inline-block;
margin-right: 15px;
pointer-events: auto;
background-repeat: no-repeat;
background-position: left top;
background-size: cover
}

@media only screen and (max-width: 970px) {
.footerSocial_item {
  margin: 0 15px
}
}

.footerSocial_item:last-child {
margin-right: 0
}

@media only screen and (max-width: 970px) {
.footerSocial_item:last-child {
  margin-right: 15px
}
}

@media only screen and (min-width: 970px) {
.footerSocial_item {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.footerSocial_item:hover {
  opacity: .5
}
}

.is-instagram {
width: 19px;
height: 19px;
background-image: url("../img/common/icon_instagram.svg")
}
.is-instagram.white {
background-image: url("../img/common/icon_instagram_white.svg")
}

@media only screen and (max-width: 970px) {
.globalMenu .footerSocial_item.is-instagram {
  background-image: url("../img/common/icon_instagram.svg");
  width: 21px;
  height: 21px
}
.globalMenu .footerSocial_item.is-instagram.white {
  background-image: url("../img/common/icon_instagram_white.svg");
}
}
.is-facebook {
width: 10px;
height: 19px;
background-image: url("../img/common/icon_facebook.svg")
}
.is-facebook.white {
background-image: url("../img/common/icon_facebook_white.svg")
}

@media only screen and (max-width: 970px) {
.globalMenu .footerSocial_item.is-facebook {
  background-image: url("../img/common/icon_facebook_white.svg");
  width: 14px;
  height: 24px
}
}

.is-twitter {
width: 16px;
height: 13px;
background-image: url("../img/common/icon_twitter.svg")
}
.is-twitter.white {
background-image: url("../img/common/icon_twitter_white.svg")
}

@media only screen and (max-width: 970px) {
.globalMenu .footerSocial_item.is-twitter {
  background-image: url("../img/common/icon_twitter_white.svg");
  width: 22.5px;
  height: 25px
}
}

.footerSocial_item.is-youtube {
width: 16px;
height: 13px;
background-image: url("../img/common/icon_youtube_white.svg")
}

@media only screen and (max-width: 970px) {
.globalMenu .footerSocial_item.is-youtube {
  background-image: url("../img/common/icon_youtube_white.svg");
  width: 22.5px;
  height: 20px
}
}

.footerMenu {
width: 65.7894736842%;
display: flex
}

@media only screen and (max-width: 970px) {
.footerMenu {
  display: none
}
}

.footerMenu_column:nth-child(1) {
margin-right: 10%
}

.footerMenu_column:nth-child(2) {
margin-right: 10%
}

.footerMenu_column > li {
margin-bottom: 23px;
overflow: hidden
}

.footerMenu_column > li:first-child > * {
float: none
}

.footerMenu_column > li > * {
float: left
}

.footerMenu_column > li span {
font-size: 1.2rem;
line-height: 1.4;
font-weight: bold;
padding: 0 5px
}

.footerMenu_column > li > a { 
font-size: 1.2rem;
font-weight: bold;
color: #fff;
display: block;
line-height: 1.4
}

.footer_copyright a {
font-size: 1.2rem;
font-weight: bold;
line-height: 1.4
}
.footer_copyright a:hover {
}

@media only screen and (min-width: 970px) {
.footerMenu_column > li > a {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.footerMenu_column > li > a:hover {
  opacity: .7
}
}

.footerMenu_column > li > ul {
margin-top: 18px
}

.footerMenu_column > li > ul > li {
margin-bottom: 15px
}

.footerMenu_column > li > ul > li > a {
font-size: 1.2rem;
opacity: .9;
color: #fff;
display: block
}

@media only screen and (min-width: 970px) {
.footerMenu_column > li > ul > li > a {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.footerMenu_column > li > ul > li > a:hover {
  opacity: .7
}
}

.footerMenu .footerMenuContact {
margin-bottom: 30px
}

@media only screen and (max-width: 970px) {
.footerMenuContact {
  margin-bottom: 15px
}
}

.footerMenuContact > a {
border: 1px solid rgba(255, 255, 255, 0.8);
width: 230px;
height: 52px;
display: flex !important;
align-items: center;
justify-content: center;
text-align: center;
line-height: 1.6;
font-size: 1.2rem;
font-weight: bold;
color: #fff
}

@media only screen and (max-width: 970px) {
.footerMenuContact > a {
  width: 255px;
  height: 46px;
  margin: 0 auto;
  font-size: 1.3rem
}
}

@media only screen and (min-width: 970px) {
.footerMenuContact > a {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.footerMenuContact > a:hover {
  background-color: #fff;
  color: #000
}
}




.globalMenu {
z-index: 90;
position: fixed;
left: 0px;
top: 0;
	padding-top:25px;
  display: block;
height: 100vh;
/*    width: calc(100% - 120px);*/
  width: 100%;
pointer-events: none;
visibility: hidden
}


.is-menuOpened .globalMenu {
visibility: visible;
z-index:900;
pointer-events: auto
}

.is-menuOpened .globalMenu .globalMenu_core {
opacity: 1;
-webkit-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
-moz-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
-o-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s
}

.is-menuOpened .globalMenu .config {
opacity: 1;
-webkit-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
-moz-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
-o-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s
}

.is-menuOpened .globalMenu .globalMenuFooter {
opacity: 1;
-webkit-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s;
-moz-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s;
-o-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s;
transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s
}

.is-menuOpened .globalMenu .globalMenuConfig {
opacity: 1;
-webkit-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s;
-moz-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s;
-o-transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s;
transition: 1s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s
}

.globalMenu .config {
position: absolute;
right: 0;
top: 0;
opacity: 0.5
  display: none
}

.globalMenu:before {
height: 100%;
width: 0;
background: #000;
opacity: 0.8;
position: absolute;
left: 0;
top: 0;
content: '';
z-index: 10;
-webkit-transition: 1s cubic-bezier(0.19, 1, 0.22, 1);
-moz-transition: 1s cubic-bezier(0.19, 1, 0.22, 1);
-o-transition: 1s cubic-bezier(0.19, 1, 0.22, 1);
transition: 1s cubic-bezier(0.19, 1, 0.22, 1)
}

@media only screen and (max-width: 970px) {
.globalMenu:before {
  height: 0;
  width: 100%
}
}

.is-menuOpened .globalMenu:before {
width: 100%;
visibility: visible
}

@media only screen and (max-width: 970px) {
.is-menuOpened .globalMenu:before {
  height: 100%
}
}

.globalMenu_container {
/*    align-items: center;*/
justify-content: center;
position: relative;
height: 100%
}
@media only screen and (min-width: 970px) {
.globalMenu_container {
	top:10px;
	left: 50px;
	position: relative;
	height: 100%
}
}

@media only screen and (max-width: 970px) {
.globalMenu_container {
  display: block;
/*        overflow-y: scroll;*/
  -webkit-overflow-scrolling: touch
}
}

.globalMenu_core {
display: flex;
align-items: center;
position: relative;
z-index: 15;
margin: 15px 0 0 0;
/*    margin: -10.4% 0 0 -22%;*/
opacity: 0
}

.globalMenu_core {
  margin: 0;
  display: block;
  width: 89.3333333333%;
  margin-left: auto;
  margin-right: auto;
}


.globalMenu_core {
  width: 89.3333333333%;
}

.globalMenu_content:nth-child(1) {
/*    margin-right: 30px*/
}

.globalMenu_content:nth-child(1) {
  margin: 35px 0 40px
}

.globalMenu_content > * {
white-space: nowrap
}

.globalMenu_headline {
margin-bottom: 29px;
position: relative
}

.globalMenu_headline {
  border-bottom: 1px solid #000;
  padding-bottom: 15px;
  margin-bottom: 2px
}

.globalMenu_headline span {
display: block;
color: #191919
}

.globalMenu_headline span.is-en {
font-size: .9rem;
margin-bottom: 10px;
letter-spacing: .2em
}

@media only screen and (max-width: 970px) {
.globalMenu_headline span.is-en {
  font-size: .8rem;
  margin-bottom: 5px
}
}

.globalMenu_headline span.is-jp {
font-size: 1.8rem;
font-weight: bold;
letter-spacing: .1em
}

@media only screen and (max-width: 970px) {
.globalMenu_headline span.is-jp {
  font-size: 1.7rem
}
}

.globalMenu_accordion {
right: 5px;
top: calc(50% - 10px);
position: absolute;
width: 16px;
height: 16px;
-webkit-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.globalMenu_accordion:before, .globalMenu_accordion:after {
background-color: #000;
display: block;
position: absolute;
content: ''
}

.globalMenu_accordion:before {
width: 1px;
height: 100%;
left: calc(50% - 1px);
top: 0;
-webkit-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media only screen and (max-width: 970px) {
.globalMenu_accordion:before {
  left: calc(50% - 1px)
}
}

.globalMenu_accordion:after {
width: 100%;
height: 1px;
top: calc(50% - 1px);
left: 0
}
.globalMenu_list{margin-bottom: 50px;
margin-left: -15px;
}


@media only screen and (max-width: 970px) {
.globalMenu_accordion:after {
  top: calc(50% - 1px)
}
}

@media only screen and (min-width: 970px) {
.globalMenu_accordion {
  display: none
}
}

@media only screen and (min-width: 970px) {
.globalMenu_list {
  display: block !important
}
}

@media only screen and (max-width: 970px) {
.globalMenu_list {
/*       display: none;*/
}
}

.globalMenu_item {
margin-bottom: 35px
}

.globalMenu_item {
text-align: center;
}


.globalMenu_item a {
color: #fff;
}
.lang-jp .globalMenu_item a {
font-size: 1.3rem;
letter-spacing: 0.08em
}
.lang-eng .globalMenu_item a  {
font-size: 1.2rem;
letter-spacing: -0.05em
}


.globalMenu_item.has-child > a {
position: relative
}

html:not(.page-corporate) .globalMenu_item.is-column2 {
display: flex
}

@media only screen and (max-width: 970px) {
.globalMenu_item.is-column2 {
  border-bottom: 1px solid #b2b2b2
}
}

@media only screen and (max-width: 970px) {
.globalMenu_item.is-column2 > a {
  width: 50%;
  border-bottom: none;
  margin: 5px 0;
  padding: 10px 0
}
}

@media only screen and (max-width: 970px) {
.globalMenu_item.is-column2 > a:last-child {
  padding-left: 20px;
  border-left: 1px solid #b2b2b2
}
}

@media only screen and (max-width: 970px) {
.globalMenu_item.is-column2 em {
  display: none
}
}

.globalMenu_item > a {
font-size: 1.5rem;
color: #fff;
letter-spacing: .0.8em
}

.globalMenu_item > a {
  position: relative
}

.globalMenu_item > a:after {
  display: block;
  content: '';
  height: 1px;
  width: calc(100% - 3px);
  background: #fff;
  position: absolute;
  left: 1px;
  bottom: -4px;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1)
}

a.trans:after{
  transform: scale(0, 1);
  transition: transform .3s;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1)
}



}

@media only screen and (max-width: 970px) {
.globalMenu_item > a {
  font-size: 1.5rem;
  padding: 15px 0;
  display: block;
  border-bottom: 1px solid #b2b2b2
}
}

.globalMenu_item em {
font-style: normal;
padding: 0 5px;
display: inline-block
}

.globalMenu_en li {
margin-bottom: 20px
}

.globalMenu_en li a {
font-size: 2.0rem;
line-height: 1.6;
font-weight: bold;
font-family: 'Montserrat', sans-serif
}

.globalMenuChild {
margin-top: 20px
}

@media only screen and (max-width: 970px) {
.globalMenuChild {
  display: none;
  border-bottom: 1px solid #b2b2b2;
  margin-top: 10px;
  padding-bottom: 20px
}
}

.globalMenuChild_item {
margin-bottom: 20px
}

@media only screen and (max-width: 970px) {
.globalMenuChild_item {
  margin-bottom: 0
}
}

.globalMenuChild_item a {
font-size: 1.2rem;
color: #333
}

@media only screen and (min-width: 970px) {
.globalMenuChild_item a {
  position: relative
}

.globalMenuChild_item a:after {
  display: block;
  content: '';
  height: 1px;
  width: calc(100% - 3px);
  background: #000;
  position: absolute;
  left: 1px;
  bottom: -4px;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1)
}
}

@media only screen and (min-width: 970px) {
.globalMenuChild_item a:before {
  content: '―';
  margin-right: 3px
}
}

@media only screen and (max-width: 970px) {
.globalMenuChild_item a {
  font-size: 1.3rem;
  padding: 15px 0;
  display: block
}
}

.globalMenuFooter {
position: absolute;
padding-left: 7.2231139647%;
bottom: 40px;
display: flex;
align-items: flex-end;
justify-content: space-between;
width: 100%;
opacity: 0;
z-index: 12
}

@media only screen and (max-width: 970px) {
.globalMenuFooter {
  position: relative;
  padding-left: 0;
  bottom: auto;
  display: block;
  margin-top: 40px;
  max-width: 1246px;
  width: 85.393258427%;
  margin-left: auto;
  margin-right: auto
}
}

@media only screen and (max-width: 970px) and (max-width: 970px) {
.globalMenuFooter {
  width: 89.3333333333%;
  margin-left: auto;
  margin-right: auto
}
}

.globalMenuFooter_item {
color: #333;
font-size: 1.2rem;
margin-right: 30px;
float: left;
line-height: 1.6
}

@media only screen and (min-width: 970px) {
.globalMenuFooter_item {
  position: relative
}

.globalMenuFooter_item:after {
  display: block;
  content: '';
  height: 1px;
  width: calc(100% - 3px);
  background: #000;
  position: absolute;
  left: 1px;
  bottom: 0;
  transform: scale(0, 1);
  transform-origin: right top;
  transition: transform .3s;
  transition-timing-function: cubic-bezier(0.165, 0.84, 0.44, 1)
}
}

@media only screen and (max-width: 970px) {
.globalMenuFooter_item {
  display: block;
  float: none;
  font-size: 1.3rem;
  margin-bottom: 25px
}
}

.globalMenuFooter_item:last-child {
margin-right: 0
}

.globalMenuFooter_right {
padding-right: 3.2102728732%;
text-align: right
}

@media only screen and (max-width: 970px) {
.globalMenuFooter_right {
  text-align: left;
  padding-left: 0;
  margin-top: 30px
}
}

.globalMenuFooter_order {
width: 320px;
display: inline-block;
margin-bottom: 20px
}

@media only screen and (max-width: 970px) {
.globalMenuFooter_order {
  display: block;
  width: 100%
}
}

.globalMenuFooter_order .buttonFill, .globalMenuFooter_order .myPageModal_button {
height: 28px;
font-size: 1.4rem;
width: auto
}

[lang=en] .globalMenuFooter_order .buttonFill, [lang=en] .globalMenuFooter_order .myPageModal_button {
display: none
}

@media only screen and (max-width: 970px) {
.globalMenuFooter_order .buttonFill, .globalMenuFooter_order .myPageModal_button {
  font-size: 1.3rem
}
}

.globalMenuFooter_copyright {
color: #333;
font-size: 1.1rem;
white-space: nowrap;
letter-spacing: .07em;
padding-bottom: 5px
}

@media only screen and (max-width: 970px) {
.globalMenuFooter_copyright {
  font-size: .9rem
}
}

.globalMenuFooter_menu {
margin-bottom: 5px;
overflow: hidden
}

@media only screen and (max-width: 970px) {
.globalMenuFooter_menu {
  margin-bottom: 20px
}
}

.globalMenuConfig {
position: relative;
z-index: 11;
background-color: #262626;
padding: 30px 0 10px;
opacity: 0;
box-sizing: border-box;
padding-right: 7.2231139647%;
padding-left: 7.2231139647%
}

@media only screen and (max-width: 970px) {
.globalMenuConfig {
  padding-right: 5.3333333333%;
  padding-left: 5.3333333333%
}
}

@media only screen and (min-width: 970px) {
.globalMenuConfig {
  display: none
}
}

[lang=en] .globalMenuConfig {
display: none
}

.globalMenuConfig_item {
border-bottom: 1px solid #686868
}

.globalMenuConfig_item:last-child {
border-bottom: none
}

.globalMenuConfig_item a {
color: #fff;
font-size: 1.5rem;
padding: 15px 0;
display: block;
position: relative
}

.globalMenuConfig_item a.js-accordionTrigger {
line-height: 1.8
}

.globalMenuConfig_accordion {
right: 5px;
top: calc(50% - 10px);
position: absolute;
width: 16px;
height: 16px;
-webkit-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1)
}

.globalMenuConfig_accordion:before, .globalMenuConfig_accordion:after {
background-color: #fff;
display: block;
position: absolute;
content: ''
}

.globalMenuConfig_accordion:before {
width: 1px;
height: 100%;
left: calc(50% - 1px);
top: 0;
-webkit-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-moz-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
-o-transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1);
transition: 0.4s cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media only screen and (max-width: 970px) {
.globalMenuConfig_accordion:before {
  left: calc(50% - 1px)
}
}

.globalMenuConfig_accordion:after {
width: 100%;
height: 1px;
top: calc(50% - 1px);
left: 0
}

@media only screen and (max-width: 970px) {
.globalMenuConfig_accordion:after {
  top: calc(50% - 1px)
}
}

.globalMenuConfigSearch {
position: relative;
margin-bottom: 10px
}

.globalMenuConfigSearch_form {
display: flex;
align-items: center
}

.globalMenuConfigSearch button {
border: none;
position: absolute;
left: 15px;
top: calc(50% - 8px)
}

.globalMenuConfigSearch input {
font-size: 1.5rem;
border: none;
width: 100%;
padding: 11px 10px 11px 45px;
-moz-border-radius: 3px;
-webkit-border-radius: 3px;
-o-border-radius: 3px;
-ms-border-radius: 3px;
-khtml-border-radius: 3px;
border-radius: 3px
}

.globalMenuConfigChild {
display: none;
border-top: 1px solid #686868
}

.globalMenuConfigChild_item {
border-bottom: 1px solid #686868
}

.globalMenuConfigChild_item:last-child {
border-bottom: none
}

.onlineStoreTopBanner {
text-align: center;
font-size: 1.2rem !important;
}




@media only screen and (max-width: 970px) {
.onlineStoreBanner {
  width: 100%;/*70px*/
  height: 70px
}
}

@media only screen and (min-width: 970px) {
.onlineStoreBanner {
  -webkit-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -moz-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  -o-transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
  transition: 0.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.onlineStoreBanner:hover {
  background-color: #333;
  -moz-transition-delay: 0;
  -webkit-transition-delay: 0;
  -o-transition-delay: 0;
  -ms-transition-delay: 0;
  transition-delay: 0
}
}

.onlineStoreBanner.is-fixed {
position: fixed;
right: 0;
bottom: 0;
z-index: 100;
transform: translateY(100%)
}

.onlineStoreBanner.is-fixed.inView {
transform: translateY(0)
}

.page-home .onlineStoreBanner.is-fixed {
display: none
}

/* add */
.onlineStoreBanner_global {
width: 90px !important;
}

.globalMenuMobile {
position: fixed;
left: 0;
top: 0;
width: 100vw;
height: 100vh;
z-index: 100;
pointer-events: none;
visibility: hidden
}

.is-menuOpened .globalMenuMobile {
visibility: visible;
pointer-events: auto
}

.globalMenuMobile:before {
height: 0;
width: 100%;
background: #fff;
position: absolute;
left: 0;
top: 0;
content: '';
z-index: 0;
-webkit-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1);
-moz-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1);
-o-transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1);
transition: 0.8s cubic-bezier(0.19, 1, 0.22, 1)
}

.is-menuOpened .globalMenuMobile:before {
height: 100%;
visibility: visible
}

.globalMenuMobile_content {
width: 100%;
height: 100%;
padding: 100px 6.6666666667%;
overflow-y: scroll;
-webkit-overflow-scrolling: touch;
position: relative;
z-index: 1;
opacity: 0;
visibility: hidden;
-webkit-transition: 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
-moz-transition: 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
-o-transition: 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
transition: 0s cubic-bezier(0.165, 0.84, 0.44, 1) 0s
}

.is-menuOpened .globalMenuMobile_content {
opacity: 1;
visibility: visible;
-webkit-transition: 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
-moz-transition: 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
-o-transition: 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
transition: 1.3s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s
}

.globalMenuMobile_main a {
display: block;
font-size: 2.5rem;
margin-bottom: 30px;
font-weight: 600;
letter-spacing: -.02em
}

.globalMenuMobile_main a span {
font-size: 1.2rem
}

.globalMenuMobile_sub a {
display: block;
font-size: 1.6rem;
margin-bottom: 30px;
font-weight: 600
}

.globalMenuMobile_blank {
margin-top: 50px
}

.globalMenuMobile_blank a {
display: flex;
align-items: center;
font-size: 1.4rem;
margin-bottom: 20px
}

.globalMenuMobile_blank a i {
display: block;
width: 13px;
height: 13px;
margin-left: 5px;
background-repeat: no-repeat;
background-position: left top;
background-size: cover;
background-image: url("../../cdn/assets/img/common/icon_blank_black.svg.html")
}

.globalMenuMobile_blank a:first-child {
font-size: 1.6rem;
font-weight: 600;
margin-bottom: 20px
}

.globalMenuMobileSummerStation_logo {
margin: 40px auto 15px;
width: 91px;
height: 90px;
background-repeat: no-repeat;
background-position: left top;
background-size: cover;
background-image: url("../../cdn/assets/img/common/logo_matsuri.svg.html")
}

.globalMenuMobileSummerStation_title {
display: flex;
align-items: center;
justify-content: center
}

.globalMenuMobileSummerStation_title span {
font-size: 1.6rem;
display: block;
font-weight: 600
}

.globalMenuMobileSummerStation_title i {
display: block;
width: 13px;
height: 13px;
margin-left: 7px;
background-repeat: no-repeat;
background-position: left top;
background-size: cover;
background-image: url("../../cdn/assets/img/common/icon_blank_black.svg.html")
}

.globalSide {
padding: 0px 0 0;
position: relative
}

.globalSide_logo {
margin: 0 auto;
display: block
}

.globalSide_logo{
}
@media only screen and (max-width: 970px) {
.globalSide_logo {
margin: 10px auto 0;

}
}

.globalSide_trigger {
position: absolute;
left:0;
margin: 0 auto;
width: 90px;
height: 80px;
padding: 0 20px;
overflow: hidden;
top: 80px
}

.globalSide_lang {
position: absolute;
bottom: 30px;
left: 0;
width: 100%;
text-align: center
}

@media only screen and (max-width: 970px) {
.globalSide .globalSide_lang {
  display: none
}
}

.globalMenu .globalSide_lang {
display: none
}

@media only screen and (max-width: 970px) {
.globalMenu .globalSide_lang {
  position: static;
  margin: 50px 0;
  text-align: left;
  display: block
}
}

.globalSide_lang a {
font-size: 1.1rem;
color: #000;
position: relative
}

.globalSide_lang a:before {
content: '';
width: 100%;
height: 1px;
background-color: #000;
left: 0;
bottom: -2px;
display: block;
position: absolute;
transform-origin: right top
}

@media only screen and (max-width: 970px) {
.globalMenu .globalSide_lang a {
  font-size: 1.6rem
}
}

.globalSide_lang_ {
position: absolute;
bottom: 30px;
left: 0;
width: 100%;
text-align: center
}

@media only screen and (max-width: 970px) {
.globalSide .globalSide_lang_ {
  display: none
}
}

.globalMenu .globalSide_lang_ {
display: none
}

@media only screen and (max-width: 970px) {
.globalMenu .globalSide_lang_ {
  position: static;
  margin: 50px 0;
  text-align: left;
  display: block
}
}

.globalSide_lang_ a {
font-size: 1.1rem;
color: #4c4c4c
}

@media only screen and (max-width: 970px) {
.globalMenu .globalSide_lang_ a {
  font-size: 1.6rem
}
}

.globalSide_lang_ a.is-jp {
border-right: 1px solid #4c4c4c;
padding-right: 10px
}

@media only screen and (max-width: 970px) {
.globalSide_lang_ a.is-jp {
  padding-right: 15px
}
}

.globalSide_lang_ a.is-en {
padding-left: 10px
}

@media only screen and (max-width: 970px) {
.globalSide_lang_ a.is-en {
  padding-left: 15px
}
}

.globalSide_lang_ a.is-active {
color: #000;
font-weight: bold
}

.globalSide_cart {
display: none
}

@media only screen and (max-width: 970px) {
.globalSide_cart {
  display: flex;
  position: absolute;
  right: 0;
  top: 0
}
}

.header {
display: flex;
justify-content: space-between;
height: 90px;
position: relative;
width: 100%;
box-sizing: border-box;
padding-left: 7.2231139647%
}

@media only screen and (max-width: 970px) {
.header {
  padding-left: 5.3333333333%
}
}


@media only screen and (max-width: 970px) {
.header {
  height: auto;
  display: none
}
}

.header--company {
height: 522px
}


.is-scrolled .headerFix.is-show {
transform: translateY(0)
}

.headerFix .headerSearch--fix {
box-sizing: border-box;
padding-left: 7.2231139647%
}

@media only screen and (max-width: 970px) {
.headerFix .headerSearch--fix {
  padding-left: 5.3333333333%
}
}


body.is-menuOpened {
/*    overflow: hidden*/
}

.container {
overflow-x: hidden
}


.globalSide {
box-sizing:border-box;
  width: 90px;
  height: 160px;
  left: 0;
  top: 0;
position: fixed;
z-index: 9999;
overflow-y: auto;
background-color: #000;
opacity: 0.4;
}
body.is-menuOpened .globalSide {
background-color: transparent;
opacity: 1;
}

@media only screen and (min-width: 970px) {
.globalSide.is-fixed {
  display: none
}
}

@media only screen and (max-width: 970px) {
.globalSide.is-fixed {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  position: fixed;
  opacity: 0;
  transform: translateY(-100%);
  -webkit-transition: 0.9s cubic-bezier(0.19, 1, 0.22, 1);
  -moz-transition: 0.9s cubic-bezier(0.19, 1, 0.22, 1);
  -o-transition: 0.9s cubic-bezier(0.19, 1, 0.22, 1);
  transition: 0.9s cubic-bezier(0.19, 1, 0.22, 1)
}

.is-scrolled .globalSide.is-fixed {
  opacity: 1
}

.globalSide.is-fixed.is-show {
  transform: translateY(0)
height: 100%;
}
}

.contents {
/*    margin-left: 120px;*/
background: #fff;
position: relative
width: auto;
margin: 0;
}

@media only screen and (max-width: 970px) {
.contents {
  margin-left: 0;
  overflow-x: hidden
}
}

@media only screen and (max-width: 970px) {
.contents:before {
  display: none
}
}

.homeHero {
height: 900px;
position: relative;
background-repeat: no-repeat;
background-position: center center;
background-size: cover
}

@media screen and (max-width: 1600px) {
.homeHero {
  height: 100vh
}
}

@media only screen and (max-width: 970px) {
.homeHero {
  height: 100vh
}
}

.homeHero_list {
height: 100%;
width: 100%;
position: absolute;
left: 0;
top: 0
}

.homeHero_list li > div {
position: absolute;
left: 0;
top: 0;
width: 100%;
height: 100%;
background-repeat: no-repeat;
background-position: center center;
background-size: cover
}

.homeHero_list .slick-list, .homeHero_list .slick-track {
width: 100%;
height: 100%;
}

.homeHero_core {
	position: relative;
	width: 100%;
	height: 300px;
	display: flex;
	justify-content: center;
	align-items: flex-end;
	padding-bottom: 80px;
	margin-bottom: 30px;
}

body.sp.page-home .homeHero_core{
	height: 100%;
}


.homeAbout {
height: 100vh;
position: relative;
x    overflow: hidden;
}



.footer_wrap{
	padding-top: 25px;
}

.footer_name{
	text-align: center;
	padding: 5px;
	margin-bottom: 20px;
	color: #333;
	font-size: 1.2em !important;
}

.footer_inq{
	text-align: center;
	color: #333;
	margin-bottom: 15px;
}
.footer_inq p{
	line-height: 1.3;
	font-size: 1.4rem;
}
.text_bg_green{
	background-color: #5E773B;
	color: #fff;
	padding: 5px 15px 5px;
}

.footer_inq .icon img {
	display: inline-block;
	vertical-align: -1px !important;
}
.footer_menu{
	text-align: center;
	padding: 5px;
	margin: 0px 0 20px;
	color: #fff;
	font-size: 1rem;
}
.footer_menu p{
	font-size: 1.2em !important;
	line-height: 1.5;
}


.footer_copyright{
	width: 100%;
	padding: 8px 0;
	font-weight: 400;
	font-style: normal;
	background-color: #5E773B;
	margin: 0;
	color: #fff;
	font-size: 1px;
	letter-spacing:0em;
}
.footer_copyright p{
	margin-bottom: 0px;
}


.uline a{
	color: #fff;
	padding-bottom: 3px;
	border-bottom: 2px solid #fff;
}

.switch-jp,.switch-eng{
	cursor:pointer;
}
.no-display{
	display: none !important;
}
.on-display{
	display: block !important;
}

h1.on-display{
	display:flex  !important;
}
.mb100{
	margin-bottom: 50px !important;
}
.mb50{
	margin-bottom: 50px !important;
}

.mb30{
	margin-bottom: 30px;
}

.mb20{
	margin-bottom: 20px;
}
.mb10{
	margin-bottom: 10px;
}

.mb5{
	margin-bottom: 5px;
}
.centering{
	text-align: center;
}
.t-right{text-align: right;}

.globalSide {
    z-index: 999;
}

.globalMenu_item a:nth-child(2){
	margin-left: 12px;
}
.vh100 {
	height: 100vh;
	overflow: hidden;
	position: relative;
	}
	
	
.iconCart:after {
	margin-left: 4px;
	display: inline-block;
	width: 15px;
	height: 12px;
	content: '';
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
	background-image: url("../img/common/icon_cart_white.svg")
}
.newWindow:after {
	margin-left: 4px;
	display: inline-block;
	width: 14px;
	height: 12px;
	content: '';
	background-repeat: no-repeat;
	background-position: left top;
	background-size: cover;
	background-image: url("../img/common/icon_newwindow.svg")
}
.newWindow.white:after {
	background-image: url("../img/common/icon_newwindow_white.svg")
}

.youtube:after {
	margin-left: 4px;
	display: inline-block;
	width: 17px;
	height: 16px;
	content: '';
	background-repeat: no-repeat;
	background-position: left 2px;
	background-size: contain;
	background-image: url("../img/common/icon_youtube.svg")
}
.instagram:after {
	margin-left: 4px;
	display: inline-block;
	width: 11px;
	height: 12px;
	content: '';
	background-repeat: no-repeat;
	background-position: left 1px;
	background-size: contain;
	background-image: url("../img/common/icon_instagram.svg")
}

.newsBanner{
    font-size: 1.3rem;
    color: #fff;
/*    display: flex;
	justify-content: center;
	align-items: center;*/
	background-size: cover;
	background-image: url("../img/home/green.jpg");
	font-weight: bold;
	width: 100%;/*90px*/
	height: auto;
	text-align: center;
	line-height: 1.6;
	padding: 10px 0;
}


.newsBanner a{
	color: #fff;
}


.separater{
	width: 1px;
	display:inline-block;
	height: 1em;
	vertical-align: -1px;
	background-color: #FFF;
	margin: 0 10px;
}
footer .separater{
	width: 1px;
	display:inline-block;
	height: 1em;
	vertical-align:  -1px;
	background-color: #333;
	margin: 0 0.8em;
}
img.fit{width: 100%;height: auto;}


.h1title{
	position: absolute;
	bottom:70px;
	height: auto;
	text-align: center;
	font-family: kinuta-mincho-stdn, sans-serif;
	font-weight: 700;
	font-style: normal;
	line-height: 24px;
	color: #121212;
}
.h1title .jp{
	opacity: 0.8;
	font-size: 37px;
	font-weight: 600;
	line-height: 38px;
}
.h1title .eng{
	font-family: montserrat,sans-serif;
	font-weight: 400;
	font-style: normal;
	opacity: 0.8;
	font-size: 16px;
}

.privacy .textArea .text-container{
	width: 90%;
	flex-grow:10;
	font-family: kinuta-mincho-stdn,sans-serif;
	font-weight: 300;
	font-style: normal;
}

.textArea{
	width: calc(100% - 10%);
	margin: 0 5% 0 5%;
}

.iconInstagram:after {
	vertical-align: middle;
	margin-left: 5px;
	display: inline-block;
	width: 10px;
	height: 10px;
	padding: 2px;
	content: '';
	background: url("/assets/img/common/icon_instagram_white.svg");
	background-repeat: no-repeat;
	background-size: cover;
}
