/*-------------------------------------------------------------------------------------------------------------------------------
* 基本設定
-------------------------------------------------------------------------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css?family=Open+Sans:700');
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+Rounded+1c:wght@500;600;700;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@400;500;800&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@400;600&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Great+Vibes&display=swap');

:root {
  --color1: #E5006E;
  --color1t: rgba(227,0,110,0.8);
  --color1tu: rgba(227,0,110,0.4);
  --color2: #2660AD;
  --color2t: rgba(38,96,173,0.8);
}
.fll {
float: left;
margin: 0 0.75em 0.75em 0;
width: 30%;
height: auto;
border-radius: 1em;
oveflow: hidden;
}
.flr {
float: right;
margin: 0 0 0.75em 0.75em;
width: 30%;
height: auto;
border-radius: 1em;
oveflow: hidden;
}
.ib {
display: inline-block;
}
#header {
position: initial;
}
#eigyo {
display: none;
}
#pagetop {
  display: none;
  position: fixed;
  right: 20px;
  bottom: 20px; 
}
#pagetop a {
display: flex;
justify-content: center;
align-items: center;
color: #FFF;
background-color: var(--color1t);
width: 5em;
height: 5em;
border-radius: 2.5em;
font-size: 1.6em;
font-family: 'YakuHanJP', 'M PLUS 1p', sans-serif;
font-weight: 800;
text-decoration: none;
position: relative;
}
#pagetop a:after {
  content: '';
  width: 1em;
  height: 1em;
  border-top: solid 2px #FFF;
  border-right: solid 2px #FFF;
  position: absolute;
  left: 1.8em;
  top: 0.8em;
  transform: rotate(-45deg);

}
#pagetop img {
width: 100%;
height: auto;
}
  @media screen and (max-width: 767px) {
    #pagetop {
      width: 15%;
      height: auto; 
  bottom: 7vh; 
}
#pagetop a {
width: 50px;
height: 50px;
font-size: 1.2em;
}
#pagetop a:after {
  width: 12px;
  height: 12px;
  left: 19px;
  top: 5px;

}

}
  @media print {
    #pagetop {
      display: none !important; 
} 
}

.nav-PC.show-PC,
.eigyo-PC.show-PC,
.eigyo_box02 {
  display:none;
}
@-moz-document url-prefix() {
  .nav-PC.show-PC + #contents ,
  .eigyo-PC.show-PC + #contents  {
    padding-top: 72px;;
  }
}

.cf:before,
.cf:after {
  content: " ";
  display: table;
}
.cf:after {
  clear: both;
}
.cf {
  *zoom: 1;
}
.container {
position: relative;
}

.fadein {
  opacity: 0;
  transition: all 0.5s ease-in-out 0.1s; }
  @media print {
    .fadein {
      opacity: 1;
      transition: none; } }

.fadeinRate {
  opacity: 0;
  transition: all 2.0s ease-in-out 0.3s; }
  @media print {
    .fadein {
      opacity: 1;
      transform: translate(0);
      transition: none; } }

.fadeinT {
  opacity: 0;
  transform: translate(0, -20px);
  transition: all 0.5s ease-out 0.3s; }
  @media print {
    .fadeinT {
      opacity: 1;
      transform: translate(0);
      transition: none; } }

.fadeinL {
  opacity: 0;
  transform: translate(-20px, 0);
  transition: all 0.5s ease-in-out 0.3s; }
  @media print {
    .fadeinL {
      opacity: 1;
      transform: translate(0);
      transition: none; } }

.fadeinB {
  opacity: 0;
  transform: translate(0, 20px);
  transition: all 0.8s ease-in-out 0.5s; }
  @media print {
    .fadeinB {
      opacity: 1;
      transform: translate(0);
      transition: none; } }

.fadeinR {
  opacity: 0;
  transform: translate(20px, 0);
  transition: all 0.5s ease-in-out 0.3s; }
  @media print {
    .fadeinR {
      opacity: 1;
      transform: translate(0);
      transition: none; } }

.fadein.scrollin,
.fadeinRate.scrollin,
.fadeinT.scrollin,
.fadeinL.scrollin,
.fadeinB.scrollin,
.fadeinR.scrollin {
  opacity: 1;
  transform: translate(0, 0) scale(1); }


.contentWrapper {
width:100%;
text-align: center;
}
@media screen and (min-width: 768px) {
.contentWrapper {
}
}
.contentWrapper a {
-webkit-transition: all 0.3s;
-moz-transition: all 0.3s;
-ms-transition: all 0.3s;
-o-transition: all 0.3s;
transition: all 0.3s;
}
.contentWrapper a:hover {
  opacity:0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
  -moz-opacity:0.7;
  -khtml-opacity: 0.7;
}
.contentWrapper a.test {
  text-decoration: none;
color: inherit!important;
}
@media screen and (max-width:767px) {
.contentWrapper {
padding: 12vw 3vw;
}
}

.content__navi--wapper {
position: sticky;
left: 0;
right: 0;
z-index: 1;
background-color: var(--color2t);
backdrop-filter: blur(12px);
}
@media screen and (min-width: 768px) {
.content__navi--wapper {
top: 0;
}
}
@media screen and (max-width: 767px) {
.content__navi--wapper {
}
.content__navi--wapper.fixed {
position: fixed;
bottom: 0;
}
}
.content__navi {
display: flex;
width: 100%;
max-width: 1080px;
margin: 0 auto;
padding: 0.25em 0;
gap: 3%;
justify-content: center;
}
.content__navi li {
width: fit-content;
padding: 2px 3%;
box-sizing: border-box;
ont-size: 1.6em;
font-feature-settings: "palt";
font-family: "YakuHanJP", "M PLUS 1p";
font-weight: 500;
}
.content__navi li a {
text-decoration: none;
color: #FFF;
}
.content__navi li img {
width: 100%;
height: auto;
}
/* contents
=================================================================== */
#contents {
  max-width:100%;
  box-sizing:border-box;
}
#contents p img {
  max-width:100%;
}
#contents p,
#contents li {
  font-size: 15px;
}
#contents small {
  font-weight: normal;
}
@media screen and (max-width: 480px) {
  #contents p,
  #contents li {
    font-size: 14px;
  }
}
/* ----- header ----- */

.contentHeader__Wrapper {
background-color: #3ea3ba;
}
.contentHeader {
width: 100%;
margin: 0 auto;
padding: 1.6% 0 0 ;
aspect-ratio: 1080 / 772;
background-image: url(/base/shinjuku/img/tsunagu2408_title_bg.jpg?2);
background-size: cover;
background-position: center calc(50% - 0px); 
background-attachment: fixed;
box-sizing: border-box;
display: flex;
flex-direction: column;
justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .contentHeader {
        height: 160vw;
        background-position: right -10vw top;
        background-size: 230vw;
  }
}
.contentHeader__logo {
width: 25%;
max-width: 340px;
box-sizing: border-box;
padding: 0;
margin: 0 0 0 11%;
}
.contentHeader__logo img {
width: 100%;
height: auto;
}
.contentHeader__date {
display: flex;
gap: 2em;
align-items: center;
background-color: rgba(253,250,249,0.6);
padding: 1em 6%;
backdrop-filter: blur(12px);
justify-content: center;
}
#contents p.contentHeader__date2 {
font-size: 1.6em;
font-feature-settings: "palt";
font-family: "YakuHanJP", "M PLUS 1p";
font-weight: 500;
color: var(--color2);
line-height: 1.4;
}
#contents p.contentHeader__date2 small {
font-size: 70%;
}
@media screen and (max-width: 767px) {
  .contentHeader__Wrapper {
  }
  .contentHeader {
  }
  .contentHeader__logo{
    width: 40%;
    max-width: 40%;
    margin: 4vw 4vw 0 auto;
  }
  .contentHeader__logo img {
  }
  .contentHeader__date {
    flex-direction: column;
    gap: 2vw;
    padding: 4vw 10vw;
  }
  #contents p.contentHeader__date2 {
    font-size: 6vw;
  }
}




/* ----- conent ----- */
.content1 {
background-color: rgba(252,237,237,1);
}
.content1__inner {
max-width: 1080px;
margin: 0 auto;
padding: 1.6% 0 0 ;
aspect-ratio: 1080 / 1450;
position: relative;
}
.content1__comments li {
width: calc(147 / 1080 * 100%);
aspect-ratio: 147 / 140;
position: absolute;
}
.content1__comments--haruka {
top: 19%;
left: 7%;
}
.content1__comments--yurina {
top: 4%;
left: 26%;
}
.content1__comments--naoto {
top: 6%;
left: 56%;
}
.content1__comments--hiroyuki {
top: 28%;
left: 83%;
}
.content1__comments--azusa {
top: 71%;
left: 6%;
}
.content1__comments--rentaro {
top: 85%;
left: 27%;
}
.content1__comments--konatsu {
top: 86%;
left: 58%;
}
.content1__comments--honoka {
top: 78%;
left: 78%;
}
.content1__comments li a {
display: flex;
flex-direction: column;
justify-content: space-between;
cursor: pointer;
}
.content1__comments--icon {
display: block;
position: relative;
overflow: hidden;
}
.content1__comments li a img {
max-width: 100%;
}
.content2 {
background-image: url(/base/shinjuku/img/content1_bg.png);
padding: 4em 0;
background-attachment: fixed;
}
.content2#art {
background-image: url(/base/shinjuku/img/content2_bg.png);
}
.content2#fashion {
background-image: url(/base/shinjuku/img/content3_bg.png);
}
.content2#living {
background-image: url(/base/shinjuku/img/content4_bg.png);
}
.content2#event {
background-image: url(/base/shinjuku/img/tsunagu2408_title_bg.jpg?2);
background-size: cover;
background-position: left top;
background-attachment: inherit;
}

@media screen and (max-width: 767px) {
.content2 {
padding: 4vw;
}
.content2#event {
background-size: cover;
position: relative;
}
}
.block__title {
width: fit-content;
margin: 0 auto 1em;
}

#contents p.block__copy {
font-size: 1.6em;
font-feature-settings: "palt";
font-family: "YakuHanJP", "M PLUS 1p";
font-weight: 500;
color: var(--color2);
text-align: center;
margin: 0 auto 4em;
}
@media screen and (max-width: 767px) {
.block__title {
width: 30%;
}
.block__title img {
width: 100%;
height: auto;
}
#contents p.block__copy {
font-size: 1.2em;
margin: 0 auto 8vw;
}
}
.content2 .items {
max-width: 980px;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
gap: 3em 2em;
}
@media screen and (max-width: 767px) {
.content2 .items {
gap: 4vw;
}
}
.content2 .item {
box-sizing: border-box;
width: calc(50% - 1em);
position: relative;
}
@media screen and (max-width: 767px) {
.content2 .item {
width: calc(50% - 2vw);
}
    .content2#food .item:only-child {
        width: 100%;
    }
}
.content2 .item.izimodal-open > a {
cursor: pointer;
}
.content2#food .sweets .item {
margin-top: 3em;
border-radius: 3em;
background-color: rgba(255, 255, 255, 0.85);
overflow: hidden;
}
@media screen and (min-width: 768px) {
.content2#food .item:only-child {
width: 100%;
}
}
.content2#event .item {
background-color: rgba(255,255,255,0.85);
backdrop-filter: blur(12px);
padding-bottom: 1em;
border-radius: 2em;
overflow: hidden;
}
@media screen and (max-width: 767px) {
.content2#event .item {
border-radius: 4vw;
}
.content2#food .sweets .item {
margin-top: 4vw;
border-radius: 12vw;
}
}
#contents p.item__category,
.item__category {
display: flex;
justify-content: center;
align-items: center;
width: fit-content;
padding: 0.25em 1em;
font-size: 1em;
font-feature-settings: "palt";
font-family: "YakuHanJP", "M PLUS 1p";
font-weight: 500;
box-sizing: border-box;
position: absolute;
top: 2%;
right: 2%;
border-radius: 1em;
line-height: 1;
background-color: rgba(255,255,255,0.85);
color: #7A634D;
border: 1px solid #7A634D;
text-align: center;
}
#contents .content2#food p.item__category,
#contents .cate--food p.item__category,
.cate--food p.item__category {
background-color: #7B961C;
color: #FFF;
border: none;
width: 5em;
height: 5em;
border-radius: 50%;
}
.item__image {
}
.content2:not(#event) .item__image {
border-radius: 3em;
overflow: hidden;
}
@media screen and (max-width: 767px) {
.item__image {
}
#contents p.item__category,
.item__category {
font-size: 0.65em;
border-radius: 1em;
}
.content2:not(#event) .item__image {
border-radius: 4vw;
}

}
.item__image img {
width: 100%;
height: 100%;
object-fit: contain;
}
.item04 .item__image img {
backdrop-filter: blur(24px);
}
.item__text {
width: 100%;
display: block;
padding: 1em 0 0 0;
}
.content2 .item__text {
width: fit-content;
margin: 0 auto;
position: relative;
}
.item__name {
font-size: 1.4em;
font-feature-settings: "palt";
font-family: "YakuHanJP", "M PLUS 1p";
font-weight: 500;
color: var(--color1);
text-align: center;
padding: 0 1.5em;
width: fit-content;
margin: 0 auto;
position: relative;
line-height: 1.5;
}
.item__name a {
text-decoration: none;
color: inherit;
}
.izimodal-open .item__name:before {
    content: "";
    position: absolute;
    right: -.1em;
    bottom: 0em;
    z-index: 1100;
    display: block;
    width: 1.4em;
    height: 1.4em;
    background-color: var(--color1t);
    border-radius: 0.7em;
}
.izimodal-open .item__name:after {
    content: "";
    position: absolute;
    right: 0.32em;
    bottom: 0.35em;
    z-index: 1101;
    display: block;
    width: 0.53em;
    height: 0.53em;
    border-top: 4px solid #FFF;
    border-right: 4px solid #FFF;
    transform: rotate(45deg);
}

@media screen and (max-width: 767px) {
.item__name {
font-size: calc(1.2em * 0.7);
}
.item__text {
padding: 2vw 0 0 0;
}
.content2#food .item:nth-child(odd):last-child .item__text {
padding: 4vw ;
}
.izimodal-open .item__name:after {
    border-top: 2px solid #FFF;
    border-right: 2px solid #FFF;
}
}
.item__num {
font-size: 180%;
font-family: "Great Vibes", cursive;
font-weight: 400;
font-style: normal;
display: inline-block;
margin: 0 0.5em 0 0;
line-height: 1;
}
.item__copy {
font-size: 1.2em;
font-feature-settings: "palt";
font-family: "YakuHanMP", 'Noto Serif JP', serif;
font-weight: 400;
margin-bottom: 0.25em;
}
.content2 .item__copy {
padding: 1.5em;
}
.iziModal_group2 .item__copy {
color: var(--color2);
margin-bottom: 1em;
}
.item__copy u {
text-decoration: none;
background: linear-gradient(transparent 70%, var(--color1tu) 70%);
}
@media screen and (max-width: 767px) {
.item__copy {
font-size: calc(1.0em * 0.7);
}
}
.item__spec {
font-size: 1.2em;
font-feature-settings: "palt";
font-family: "YakuHanJP", "M PLUS 1p";
font-weight: 400;
}
.content2 .item__spec {
padding: 0 1.5em 1.5em 1.5em;
}

@media screen and (max-width: 767px) {
.item__spec {
font-size: calc(1.0em * 0.7);
}
}
.item__catch {
font-size: 1.2em;
font-feature-settings: "palt";
font-family: "YakuHanJP", "M PLUS 1p";
font-weight: 400;
width: fit-content;
box-sizing: border-box;
padding: 0.2em 0.5em;
background: var(--color2);
color: #FFEA00;
line-height: 1.2;
}
.iziModal.iziModal_group2 .item__catch {
margin-bottom: 1em;
}
.content2 .item__catch {
margin: 0 auto;
}
@media screen and (min-width: 768px) {
.content2 .item__catch {
}
}
@media screen and (max-width: 767px) {
.item__catch {
font-size: calc(1.0em * 0.7);
}
}

.item__floor {
font-size: 0.86em;
font-feature-settings: "palt";
font-family: "YakuHanJP", "M PLUS 1p";
font-weight: 400;
}
@media screen and (max-width: 767px) {
.item__floor {
font-size: calc(0.86em * 0.7);
}
}

.footerNotes {
  text-align: left;
  margin: 0 auto ;
  width: 100%;
  padding: 2em 0;
}
.footerNotes ul {
  margin: 0 auto ;
max-width: 980px;
}
#contents .footerNotes ul li{
display: inline-block;
}

@media screen and (max-width: 768px) {
  .footerNotes {
    padding: 12px;
  }
  #contents .footerNotes ul li{
  font-size: 0.7em;
  }
}
.iziModal.iziModal_group .iziModal-content dd.iziModal_detail {
color: var(--color2);
}
.iziModal .iziModal-header-title {
    color: rgba(229, 0, 110, 1);
    font-size: 2.4em;
    font-weight: 600;
    line-height: 1.3;
}
.iziModal .iziModal-header.iziModal-noSubtitle .iziModal-header-title {
    font-size: 1.6em;
    margin: 0 0 0;
    font-weight: 600;
}
.iziModal .iziModal-header-subtitle {
    color: rgba(229, 0, 110, 1);
    font-size: 1.2em;
    line-height: 1.45;
}

.iziModal .iziModal-content  dd.iziModal_detail {
    font-size: 1.2em;
    padding: 0 1em 1em 1em;
}
.iziModal-navigate > button {
    top: 30%;
    height: 60%;
}
@media screen and (max-width: 767px) {
.iziModal-navigate > button {
    width: 5%;
}
}

.reserveBtn  {
display: block;
width: 100%;
max-width: 80%;
margin: 0 auto 2em;
padding: 0.75em 2em;
background-color: var(--color2);;
color: #FFF;
text-align: center;
font-family: 'YakuHanJP', 'M PLUS 1p', sans-serif;
font-weight: 600;
font-size: 1em;
text-decoration: none;
position: relative;
line-height: 1;
}
.reserveBtn:after {
display: block;
content: "";
transform: rotate(45deg);
border-top: 2px solid #FFF;
border-right: 2px solid #FFF;
width: 0.8em;
height: 0.8em;
position: absolute;
top: calc(50% - 0.4em);
right: 1em;
}

@media print {
  #header,
  #eigyo,
  .nav-PC,
  #footer {
    display:none;
  }
  #storeWrapper {
    margin: 0 auto;
    padding: 0 0;
  }
.content1 {
page-break-before: always;
background-attachment: inherit;
}
.contentHeader,
.content2 {
background-attachment: inherit;
}
.content__navi--wapper {
position: relative;
}
}
.map__link {
padding: 4em 0; 
}
.map__link a {
background-color: var(--color1t);
display: flex;
width: fit-content;
box-sizing: border-box;
padding: 0.25em 2em;
color:#FFF;
font-size: 1.4em;
font-feature-settings: "palt";
font-family: "YakuHanJP", "M PLUS 1p";
font-weight: 500;
margin: 0 auto;
position: relative;
text-decoration: none;
line-height: 1;
border-radius: 0.25em;
}
.map__link a:before {
content: "";
position: absolute;
right: 0.25em;
top: calc(50% - 0.5em);
z-index: 1100;
display: block;
width: 1em;
height: 1em;
background-color: #FFF;
border-radius: 0.7em;
}

.map__link a:after {
content: "";
    position: absolute;
    right: 0.5em;
    top: calc(50% - 0.275em);
    z-index: 1101;
    display: block;
    width: 0.4em;
    height: 0.4em;
    border-top: 4px solid var(--color1t);
    border-right: 4px solid var(--color1t);
    transform: rotate(45deg);
}
@media print {
  body {
    zoom: 0.68;
    -webkit-print-color-adjust: exact; } }

/* IE10以上 */
@media print and (-ms-high-contrast: none) {
  /* @pageの指定いらないかも */
  @page {
    size: A4;
    margin: 12.7mm 9.7mm; }
  body {
    zoom: 1.8;
    width: 1200px;
    transform: scale(0.5);
    transform-origin: 0 0; } }
