/** Shopify CDN: Minification failed

Line 800:0 Unexpected "}"

**/
.mediaRichTextTitle{
	font-size: 5rem;
 	line-height: .875;

}

.footerCredits {
    text-transform: none;
}

@media only screen and (min-width: 1024px){
  .productDetailsMaterialsItems {
  		flex-wrap: wrap;
      max-width: 40vw;
	}
}

.materialCard{
	margin-bottom:40px;
}

.introTextTitle {
     font-size: 3rem;
      text-transform: none;
}

@media only screen and (min-width: 1212px){
	.introTextTitle {
      font-size: 7rem;
    }
}

@media only screen and (max-width: 768px){
  .introTextTitle br{
    display:none;
  }
}

@media only screen and (min-width: 1024px){
  .stickySectionsItem{
    font-size: 1.2rem;
  }
}

@media only screen and (max-width: 1023px){
  .stickySectionsItem{
    font-size: 1.2rem;
  }
}

@media only screen and (min-width: 1024px){
	.stickySectionsItemContent {
  		padding: 6rem 3vw;
	}
}
@media only screen and  (max-width: 768px){
	.stickySectionsItemContent {
  		text-align: center;
	}
}

@media only screen and  (min-width: 769px){
.for-sp{
 display:none; 
}
}

@media only screen and  (max-width: 768px){
.for-pc{
 display:none; 
}
}


.stickySectionsItemCredits {
  margin-top:0;
}

.stickySectionsItemPosition{
  font-size:1rem;
  margin: 6rem 0 0;
}

.stickySectionsItemPositionName{
  font-size: 1.45rem;
  margin: 10px 0 20px;
}

@media only screen and (min-width: 1024px){
.stickySectionsItemSignature {
    max-width: 160px;
    margin-bottom: 70px;
}
}

@media only screen and (max-width: 768px){
.stickySectionsItemSignature{
  max-width: 160px;
  margin: 0 auto 70px;
}
}

.stickySectionsItemLogo{
  margin-left: 80%;
}

@media only screen and (min-width: 1024px){
.stickySectionsItemLogo {
    margin-left: 60%;
  	margin-top:40px;
}
}

@media only screen and (max-width: 768px){
.stickySectionsItemLogo {
  margin-left: 60%;
}
}

@media only screen and (max-width: 768px){
.formInput {
    padding-left: 31vw;
}
}
@media only screen and (min-width: 1280px){
.formInput {
    padding-left: 9.6vw;
}
}

@media only screen and (min-width: 1280px){
  .contactFormContent {
    grid-column: 4/10;
  }
}

.contactFormText.required{
  position:relative;
  display: table;
    margin-right: 0;
    margin-left: auto;
}
.contactFormText.required:after {
    background-color: var(--color-red);
    border-radius: 50%;
    content: "";
    height: 6px;
    position: absolute;
    left: -20px;
    top: 9px;
    width: 6px;
}

.orderFormContainer .contactFormText.required,
.reservationForm .contactFormText.required{
  margin-bottom: 6rem;
    margin-top: 3rem;
}

#g-recaptcha {
  margin-top: 200px;
}

@media only screen and (min-width: 1280px){
.formMultiSelectWrapper {
    margin-left: calc(10.6vw - 3px);
    margin-right: 20px;
}
}
@media only screen and (min-width: 1024px){
.formMultiSelectWrapper {
    margin-right: 20px;
}
}

@media only screen and (min-width: 768px){
.newsItemImageWrapper {
  margin-left: auto;
  margin-right: 2rem;
}
}

.articleHeroTitle {
  line-height: 1.2em;
    text-transform: none;
}

@media only screen and  (max-width: 768px){
	.articleHeroTitle {
  		display: inline-table;
	}
}


/* 以下ホバーボタンアップデート用 */
/* .baseButton:hover{
  border-color: #FDA92A;
  color: var(--color-black);
}
.baseButton:before {
    background-color: #FDA92A;
}
.paginationButton.isActive {
    background-color: #FDA92A;
    color: var(--color-black);
	border-color: #FDA92A;
}
.paginationButton:before {
    background-color: #FDA92A;
}
.paginationButton:hover {
    color: black;
    border-color: #FDA92A;
}
.arrowButton:hover {
    background: #FDA92A;
    border-color: #FDA92A;
}

*/

.details.modal .modal__toggle-open{
  display:none!important;
}

.password__footer{
  display: none!important;
}

.introTextTitleLast{
  padding-top: 1.8rem;
  display: inline-block;
}

.page{
  overflow: auto;
}

@media only screen and (max-width: 768px){
  .formtextarea textarea{
    padding: 0 1.2rem 4rem 0;
    margin: inherit;
    resize: none;
    height: 110px;
  }
}


@media only screen and (min-width: 769px){
 .formtextarea textarea{
    padding: 2rem 1.2rem 2rem 9vw;
    margin: 0;
    resize: none;
    height: 160px;
  }
}

body:lang(ja) .baseButton {
    font-weight: 500;
}

.heroSliderItemSubtitle{
  text-transform: none;
}

.footerListItem:not(:last-child){
  margin-bottom: 1rem!important;
}

@media only screen and (min-width: 768px){
  .footerList{
    margin-top: 3rem;
  }
}

.articleBodyContent h6{
	color: var(--color-black);
    display: block;
    margin-top: 2rem;
    opacity: .5;
    text-align: center;
  }

.mediaRichTextCaption{
  position: absolute;
  top: 100%;
}
@media only screen and (max-width: 1023px){
.mediaRichTextCaption{
  position: static;
}
}

@media only screen and (max-width: 768px){
.textCircularText textPath{
font-size: 3.4rem;
}
}

/* .footerIcon{
  display:none;
} */


/* 7/27追記分 */

@media only screen and (min-width: 768px){
.section.jsIntroText {
    margin-top: 12rem;
}
}

@media only screen and (min-width: 1212px){
.introTextTitle {
    font-size: 6rem;
}
}
@media only screen and (min-width: 1280px){
.introTextParagraph {
    font-size:2rem;
}
}
@media only screen and (min-width: 1024px){
.heroSlider {
  padding: 12rem 0 0;
}
}

.introTextTitle.brand-title{
  font-family: var(--font-body);
}
@media only screen and (min-width: 768px){
  .introTextTitle.brand-title{
  font-size: 4.2rem;
}
}
.product-link{
  padding: 18rem 0 8rem; 
}

.textSubTitle{
  padding: 1.5rem 0 0;
  font-weight:600;
  font-size:2rem;
}


.textParagraphs {
  padding: 4rem;
}


.leftImage{
  border-radius: 0 35% 35% 0 / 0 50% 50% 0;
}


.mediaMainTitleLeft{
    text-transform: uppercase;
    position: absolute;
    top:-3.3%;
    left: 6%;
    z-index: 1;
    font-family: Bellefair,serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: .875;
}
@media only screen and (min-width: 768px){
.mediaMainTitleLeft{
    font-size: 6rem;
    line-height: .875;
    top: -2.8%;
}
}

@media only screen and (min-width: 768px){
.twoImagesWrapper .mediaTextContent{
  margin-left: -25%;
  margin-bottom: 15%;
}
}

.twoImagesImage{
  position: static;
}


.setTitle{
      position: relative;
}

@media only screen and (min-width: 768px){
.twoImagesContainer{
  margin-top: -8rem;
}
.one-imgages {
    padding: 0 10%;
    height: 800px;
}
}

@media only screen and (min-width: 768px){
.twoImagesWrapper:nth-child(2) {
  width: 130%;
    margin-left: -20%;
}
}
@media only screen and (max-width: 767px){
.twoImagesWrapper .mediaTextContent{
 display: none; 
}
}

.bannerButtons {
    margin-top: 8rem;
}


.mediaMainTitleRight, .mediaMainTitleCenter{
    text-transform: uppercase;
    position: absolute;
    top:-3.3%;
    left: 0;
    z-index: 1;
    font-family: Bellefair,serif;
    font-size: 3rem;
    font-weight: 400;
    line-height: .875;
    width: 100%;
    text-align: center;
}
.mediaMainTitleCenter{
  top: -2%;
}

@media only screen and (min-width: 768px){
  .mediaMainTitleCenter{
    top:-1.6%;
     font-size: 6rem;
    line-height: .875;
  }
}
@media only screen and (min-width: 768px){
.mediaMainTitleRight{
    font-size: 6rem;
    line-height: .875;
    top: -2.8%;
  
}
}

.alignRight .mediaTextMediaWrapper{
  margin-top: 6rem;
}
@media only screen and (min-width: 768px){
.alignRight .mediaTextMediaWrapper{
  margin-top: 10rem;
}
}


.rightImageTextWrapper{
  display: flex;
  justify-content: center;
    align-items: center;
  grid-column: 1/14;
    margin-top: 10rem;
}
@media only screen and (max-width: 767px){
  .rightImageTextWrapper{
    display: block;
    margin-top: 5rem;
  }
}

.rightImageTextWrapper-image{
  max-width: 46%;
    height: auto;
    margin-right: 8%;
    margin-left: -4%;
}

@media only screen and (max-width: 767px){
.rightImageTextWrapper-image{
  max-width: none;
    margin: 0;
}
}

@media only screen and (min-width: 1024px){
.alignRight .mediaTextMediaWrapper {
  grid-column: 5/13;
}
}

.centerImageRightTextWrapper{
  display: flex;
  justify-content: center;
    align-items: center;
  grid-column: 4/12;
    margin-top: 6rem;
}
@media only screen and (max-width: 767px){
  .centerImageRightTextWrapper{
    display: block;
    margin-top: 5rem;
     grid-column: 1/12;
  }
}

.centerImageRightTextWrapper-image{
 max-width: 60%;
    height: auto;
    margin-left: 4%;
    margin-right: -10%;
}

@media only screen and (max-width: 767px){
.centerImageRightTextWrapper-image{
  max-width: none;
    margin: 0;
}
}

@media only screen and (min-width: 768px){
.bannerButtons.left {
  justify-content: flex-start;
}
}



.hasMoreItems .plpGridContainer{
  -ms-grid-columns: (1fr)[3];
  grid-template-columns: repeat(3,1fr);
}
.plpGridContainer{
   -ms-grid-columns: (1fr)[2];
  grid-template-columns: repeat(2,1fr);
}
@media only screen and (min-width: 1280px){
.plpGridContainer {
    -ms-grid-columns: (1fr)[3];
    grid-template-columns: repeat(3,1fr);
}
}
@media only screen and (min-width: 1920px){
.plpGridContainer {
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4,1fr);
}
}
@media only screen and (min-width: 1024px){
.hasMoreItems .plpGridContainer {
    -ms-grid-columns: (1fr)[3];
    -moz-column-gap: 7.5vw;
    grid-template-columns: repeat(3,1fr);
    column-gap: 7.5vw;
}}
@media only screen and (min-width: 1280px){
.hasMoreItems .plpGridContainer {
    -ms-grid-columns: (1fr)[4];
    grid-template-columns: repeat(4,1fr);
}}
@media only screen and (min-width: 1920px){
.hasMoreItems .plpGridContainer {
    -ms-grid-columns: (1fr)[5];
    grid-template-columns: repeat(5,1fr);
}}

.section-short{
  margin-top: 8rem;
    margin-bottom: 4rem;
}
@media only screen and (min-width: 768px){
.section-short {
    margin-top: 20rem;
    margin-bottom: -6rem;
}
}

@media only screen and (min-width: 768px){
.twoImagesWrapper.mainProductTwoImagesWrapper:first-child {
    -ms-grid-column: 2;
    -ms-grid-column-span: 8;
    grid-column: 2/8;
    grid-row: unset;
}
}

@media only screen and (min-width: 1280px){
.threeImagesTitle {
  font-size: 7rem;
}
}

.productCard{
  padding-top:20rem;
}
@media only screen and (min-width: 768px){
.threeImagesSlider {
    grid-column: 2/-2;
}
}

.formLabel {
    position: static;
}

.formInput{
  padding-bottom:3rem;
}

.contactFormFields.options{
  display: flex;
  justify-content: center;
}
.contactFormFields.options div{
  margin:0 4rem;
}

.options-option{
  cursor: pointer;
  transform: opacity 0.3s ease;
}
.options-option span{
  display: block;
  text-align:center;
  text-transform: uppercase;
    font-family: Bellefair,serif;
  font-size:3.5rem;
}
.options-option.small span{
  font-size:2rem;
  line-height:1.2em;
  padding-bottom: 8px;
}

.contactFormFields.options input:checked + label{
  opacity:0.4;
}

.contactFormFields.options input:checked + label span{
  opacity:0.4;
}

.contactFormFields.options input {
  position: absolute;
  white-space: nowrap;
  width: 1px;
  height: 1px;
  overflow: hidden;
  border: 0;
  padding: 0;
  clip: rect(0 0 0 0);
  clip-path: inset(50%); 
  margin: -1px;
}

.cart-item .product-option dt,
.cart-item .product-option dd{
  font-size: 1rem;
}

.cart-item .product-option{
  line-height:1;
}

@media only screen and (max-width: 767px){
  .options-option span{
    font-size:2rem;
  }
  .contactFormFields.options div {
      margin: 0 1.5rem;
  }
  .options-option.small span {
    font-size: 1.5rem;
  }
  .options-option{
    font-size: 1rem;
  }
}

.formGroupTitle {
  font-weight: bold;
  font-size: 2rem;
  margin: 4rem 0;
}

.textParagraphs.textParagraphsWide {
    padding: 4rem 0rem;
}

@media only screen and (min-width: 1024px){
.textContent.textContentWide {
  grid-column: 2/12;
}  
}

@media only screen and (min-width: 1024px){
.reservationHead {
  -ms-grid-column: 1;
    -ms-grid-column-span: 10;
    grid-column: 1/10;
}}



.sectionMovie{
  position: relative;
}
@media only screen and (max-width: 767px){
  .sectionMovie{
  padding: 2rem 0;
}
}



.bagProductsLink:before {
    padding-top: 56.6667%;
}

.bagFallback{
  height: calc(100vh - 17rem);
}
@media only screen and (min-width: 1024px)
.bagFallback {
    height: calc(100vh - 14rem);
}

/* 確認画面全般 */
.formNumberSelectWrapper.onlyShow .formNumberSelect.orderListItemText {
  padding: 0;
  text-align: center;
}
.formNumberSelectWrapper.onlyShow:after {
  content: none;
}

#ContactForm div.formGroup.isButton {
  margin-top: 40px;
  display: flex;
  justify-content: center;
}

.shopify-challenge__container {
  padding: 40px !important;
  margin-top: 130px !important;
}

#g-recaptcha {
  margin-top: 100px;
}

.shopify-challenge__container .shopify-challenge__button {
    background-color: transparent;
    cursor: pointer;
    margin-top: 40px !important;
    font-family: var(--font-body);
    z-index: 1;
    min-width: 15rem;
    color: var(--color-black);
    border: 1px solid var(--color-black);
    white-space: nowrap;
    border-radius: 8rem;
    justify-content: center;
    padding: 1.65rem 4rem;
    font-size: 1.4rem;
    font-weight: 700;
    line-height: 1.714;
    transition: color .25s;
    display: flex;
    position: relative;
    overflow: hidden;
}


/* reservation 確認画面 */
.reservationForm.confirmation {
      grid-column: 4/10;
}
@media (max-width: 767px) {
  .reservationForm.confirmation {
    grid-column: 1/-1;
  }
}

/* my-order フォームトップ */

  #ContactForm > section > div > div.orderHead > h1.orderText {
    margin: 0 auto;
  }
}

/* ページネーションのアニメーション不具合調整 */
.paginationButton:before {
    display: none;
}
.paginationButton:after {
    content: "";
    z-index: -1;
    width: 100%;
    height: 100%;
    background-color: var(--color-black);
    transition: transform .25s var(--ease-circInOut);
    position: absolute;
    top: 0;
    left: 0;
    transform: translateY(100%);
}
.paginationButton:hover:after {
    transform: translate(0);
}
.paginationButton {
    z-index: 1;
}

/* バッグ内テキストのスタイル */
.bagBottomText {
  text-align: left;
}
@media only screen and (min-width: 1024px) {
  .bagBottom {
    top: calc(100vh - 36rem);
  }
  .bagBottom-en {
    top: calc(100vh - 40rem);
  }
  .bagBottomText {
    margin-top: 40px;
    padding-bottom: 100%;
    font-size: 11px;
    background-color: #fcfaf9;
  }
  .bagBottom-en .bagBottomText {
    margin-top: 36px;
  }
}
@media only screen and (max-width: 1023px) {
  .bagBottomText {
    margin-top: 40px;
  }
}

/* 予約画面（tokyo-flagship-store-reservation） */
.reservationConfirmationDetails .formGroup {
  display: flex;
}
.reservationConfirmationDetails .formGroup label {
  width: 40%;
}
.reservationConfirmationDetails .formGroup input {
    border: none;
    padding: 0;
    width: 60%;
}

.reservationConfirmationContent .formGroup.isButton {
   display: flex;
   padding: 3rem 0;
}
@media only screen and (max-width: 1023px) {
  .reservationConfirmationDetails .formGroup label{
      display: block;
  }
  .reservationConfirmationDetails .formGroup {
    display: block;
  }
  div.reservationConfirmationHead > div {
    text-align: center;
  }
   #ContactForm > section > div > div.\|.jsPageHead.reservationHead > div {
    text-align: center;
   }
}

/* .formInput */
@media only screen and (max-width: 1023px) {
    .formInput {
        font-size: max(1.4rem, 16px);
    }
    .formInput:disabled {
        font-size: 1.4rem;
    }
}

/* Order Form */
.shopify-challenge__container {
  max-width: 600px!important;
}

@media only screen and (min-width: 1024px) {
  .reservationConfirmationText {
      max-width: 620px;
  }
}

/* Footer Info */
.footerInfo {
  min-width: 240px;
  margin-top: 4rem;
  font-size:1.4rem;
}

.footerInfo2 {
  min-width: 100%;
  margin-top: 4rem;
  font-size:1.4rem;
}

@media only screen and (min-width: 1200px){
  .footerLogoContainer {
    grid-column: 11/12;
  }
}

@media only screen and (min-width: 768px) and  (max-width: 1199px){
  .footerCol {
    grid-column: span 3;
  }
  .footerLogoContainer {
    grid-column: 9/13;
  }
}

@media only screen and (min-width: 501px){
  .footerInfo {
    display: block;
  }
  .footerInfo2 {
    display: none;
  }
}

@media only screen and (max-width: 500px){
  .footerInfo {
    display: none;
  }
  .footerInfo2 {
    width: 100%;
    display: block;
    order: 3;
    grid-column: span 4;
    text-align: right;
  }
}

/* heroSlider loading*/
@media only screen and (max-width: 767px){
  .heroSliderItem {
    opacity: 0;
    transition: opacity 1s;
  }
  .flickity-slider .heroSliderItem {
    opacity: 1;
  }
  .heroSliderTrack::after {
    content: "";
    display: block;
    padding-top: 72%;
  }
}

/*store reservation select style*/
select.formSelect {
  -webkit-appearance: none;
  appearance: none; /* デフォルトの矢印を非表示 */
}
select.formSelect::-ms-expand {
  display: none; /* デフォルトの矢印を非表示(IE用) */
}
.formSelectOuter{
    position:relative;
}
.formSelectOuter:before{
  content: "";
  position: absolute;
  right: -11px;
  top: 23px;
  width: 4px;
  height: 4px;
  border-top: solid 2px #080808;
  border-right: solid 2px #080808;
  transform: rotate(135deg);
}
@media only screen and (min-width: 1024px){
  .formSelectOuter:before{
    right: -9px;
    top: 9px;
  }
}
.formSelectOuterTime{
  margin-right:20px;
}
@media only screen and (min-width: 1024px){
 .formSelectOuterTime{
  margin-right:0;
} 
}
.formSelectOuterTime:before{
  right: -15px;
}

@media only screen and (min-width: 1280px){
.formMultiSelectWrapper {
    margin-left: calc(13vw - 3px);
    margin-right: 20px;
}
}
@media only screen and (min-width: 1024px){
.formMultiSelectWrapper {
  margin-left: calc(9vw - 3px);
    margin-right: 30px;
}
}
@media only screen and (min-width: 1024px){
.reservationForm {
  grid-column: 7/13;
  margin-left: 5%;
}
}
@media only screen and (min-width: 1024px){
#shopify-section-header-en~main .formMultiSelectWrapper {
    margin-left: calc(13vw - 3px);
}}

#page.suffix-no-js,
#page.suffix-en-no-js{
  inset:auto!important;
}

@media screen and (min-width: 320px) and (max-width: 1024px) {
  /* タブレット向けのスタイル */
  .header {
    background: #f0ecea80;
  }
}
