@charset "UTF-8";
html{
	scroll-behavior: smooth;
}
body{
	-webkit-font-smoothing: antialiased;
	color: #000;
	height: 100%;
	text-align: left;	
	background: #EDEDEA;
	font-family:"FOT-Cezanne ProN M","A-OTF UD Shin Go Con80 Pr6N","Aptly",'AdobeGaramondW01-Regula',"ヒラギノ明朝 ProN W6","HiraMinProN-W6", "Hiragino Mincho Pro","ＭＳ Ｐ明朝", "YuMincho",'Yu Mincho', "MS PMincho","serif";
    font-size: 16px;
	letter-spacing: 0.09em;
}
p {
    margin: 0;
}
a{
	color: #000;
}
li{
	list-style: none;
}
img{
	width: 100%;
}

li {
  list-style: none;
}

/* FADEIN */
.scroll_up {
  transition: 0.8s ease-in-out;
  transform: translateY(30px);
  opacity: 0;
}
.scroll_up.on {
  transform: translateY(0);
  opacity: 1.0;
}

.top_logo{
	position: fixed;
	width: 100px;
	top: 30px;
	left: 65px;
	z-index: 10;
}
.instagram_logo{
	width: 25px;
	position: fixed;
	bottom: 30px;
	left: 65px;
	z-index: 10;
}

section{
    margin: auto;
    position: relative;
}
.top{
    position: relative;
    height: 100vh;
}
.img_01{
	position: absolute;
	width: 25%;
	top: 22%;
	left: 65px;
	opacity: 0;
}
.img_02{
	position: absolute;
    width: 37%;
    left: 20%;
    top: 32%;
    z-index: -1;
	opacity: 0;
}
.img_03{
	position: absolute;
	width: 22%;
    right: 30%;
	top: 20%;
	opacity: 0;
}
.img_04{
	position: absolute;
	width: 33%;
	top: 15%;
	right: 48px;
	z-index: -2;
	opacity: 0;
}
.img_05{
	position: absolute;
	width: 34%;
	top: 58%;
	left: 40px;	
	opacity: 0;
}
.img_06{
	position: absolute;
    width: 37%;
    top: 60%;
    right: 22%;
    z-index: -2;
	opacity: 0;
}
.img_07{
    width: 27%;
    position: absolute;
    top: 41%;
    right: 17%;
    z-index: -1;
	opacity: 0;
}
.img_08{
    position: absolute;
    width: 15%;
    top: 58%;
    right: 57px;
    z-index: -2;
	opacity: 0;
}
/*IMG ANIMATION*/
.img_01 { animation: slideshow 0.5s forwards; animation-delay: 0s; }
.img_02 { animation: slideshow 0.5s forwards; animation-delay: 0.3s; }
.img_03 { animation: slideshow 0.5s forwards 0.6s ,katakata1 6s infinite ease-in-out 0s }
.img_08 { animation: slideshow 0.5s forwards 1.2s , katakata2 6s infinite ease-in-out  5s; }
.img_05 { animation: slideshow 0.5s forwards 0.9s , katakata2 6s infinite ease-in-out  3s; }
.img_06 { animation: slideshow 0.5s forwards; animation-delay: 1.5s; }
.img_07 { animation: slideshow 0.5s forwards; animation-delay: 1.8s; }
.img_04 { animation: slideshow 0.5s forwards; animation-delay: 2.1s; }
.top_caption { animation: slideshow 0.5s forwards; animation-delay: 2.4s; }
.top_logo, .instagram_logo{animation: slideshow 0.5s forwards; animation-delay: 0s;}
.concept_caption{ animation: slideshow 0.5s forwards; animation-delay: 3.5s; }
@keyframes slideshow {
  0%{ 
	opacity: 0; 
    }

  100%{ 
	opacity: 1;
    }
}
@keyframes katakata1 {
  0% {transform:translate(0, 0) rotate(0deg);}
  21% {transform:translate(0, 0) rotate(0deg);}

  22% {transform:translate(0, 0) rotate(-3deg);}
  23% {transform:translate(0, -1px) rotate(0deg);}
  24% {transform:translate(0, -1px) rotate(3deg);}

  25% {transform:translate(1px, 0) rotate(-2deg);}
  26% {transform:translate(0, 1px) rotate(0deg);}
  27% {transform:translate(0, 0) rotate(3deg);}

  28% {transform:translate(0, 0) rotate(0deg);}
  100% {transform:translate(0, 0) rotate(0deg);}
}

@keyframes katakata2 {
  0% {transform:translate(0, 0) rotate(0deg);}
  21% {transform:translate(0, 0) rotate(0deg);}

  22% {transform:translate(0, 0) rotate(-3deg);}
  23% {transform:translate(0, -1px) rotate(0deg);}
  24% {transform:translate(0, -1px) rotate(3deg);}

  25% {transform:translate(1px, 0) rotate(-2deg);}
  26% {transform:translate(0, 1px) rotate(0deg);}
  27% {transform:translate(0, 0) rotate(3deg);}

  28% {transform:translate(0, 0) rotate(0deg);}
  100% {transform:translate(0, 0) rotate(0deg);}
}

.top_caption{
	position: absolute;
	width: 60%;
	color: #2B9355;
	font-family: "aptly", "sans-serif";
    font-weight: 700;
    font-style: normal;
	top: 67%;
    left: 54%;
    transform: translate(-67%, -54%) rotate(-12deg);
	z-index: 3;
	font-size: 4.3em;
	opacity: 0;
}
section.concept {
    min-height: 100vh;
    margin-bottom: 200px;
}
.concept_caption{
	width: 60%;
    transform:rotate(-12deg);
	opacity: 0;
    top: 40px;
    left: 300px;
    position: relative;
}
.concept_caption p{
	font-family: "a-otf-ud-shin-go-con80-pr6n", "sans-serif";
    font-weight: 300;
    font-style: normal;
	font-size: 23px;
	margin-bottom: 40px;
}
#banner{
	z-index: 20;
	display: none;
}
#banner p{
	padding: 30px 60px;
    font-size: 15px;
    line-height: 1.5em;
}
#banner a{
	display: block;s
    width: 250px;
    height: 190px;
    text-decoration: none;
    border-radius: 10px;
    margin: 0 auto;
}
#banner .tasting_glass{
	width: 50%;
}
.follow-banner {
    position: fixed;
    bottom: 30px;
    right: 80px;
    background-color: #F4997D;
    color: #000;
    text-align: center;
    /* padding: 10px; */
    width: 310px;
    height: 215px;
    border-radius: 70px;
}
.close-btn {
    cursor: pointer;
	background-color: transparent;
    border: none;
}
.batsu {
    display: block;
    position: relative;
    width: 30px;
    height: 30px;
    margin-top: -249px;
    margin-left: 272px;
}
.batsu::before, .batsu::after {
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 1px;
    height: 30px;
    background: #333;
}
.batsu::before {
    transform: translate(-50%,-50%) rotate(45deg);
}
.batsu::after {
    transform: translate(-50%,-50%) rotate(-45deg);
}

/*summary*/
.summary{
	font-family: "fot-cezanne-pron", sans-serif;
    font-weight: 500;
    font-style: normal;
	text-align: center;	
	width: calc(100% - 130px);
	margin: auto 65px;
	position: relative;
}
.summary_title{
	text-align: center;
	width: 95px;
	border: solid 1px #F4997D;
	border-radius: 24px;
	padding: 0;
	color: #F4997D;
	margin: 0 auto 45px;
}
.summary_title p{
	font-size: 16px;
}
.summary table{
	font-size: 17px;
	margin: 0 auto;	
	width: 70%;
}
.summary table th{
	vertical-align: top;
	padding-right: 20px;
	padding-bottom: 30px;
}
.summary table td{
	text-align: left;
	padding-bottom: 30px;
}

/*HOW TO ENJOY*/
.howto{
	font-family: "fot-cezanne-pron", sans-serif; 
    font-weight: 500;
    font-style: normal;
	position: relative;
	width: calc(100% - 130px);
    margin: 90px 65px 150px;
}
.howto_title{
	text-align: center;
	width: 96px;
	border: solid 1px #F4997D;
	border-radius: 24px;
	padding: 0;
	color: #F4997D;
	margin: 0 auto 45px;
	font-family: "a-otf-ud-shin-go-con80-pr6n", "sans-serif";
    font-weight: 300;
    font-style: normal;
}
.howto_caption{
	margin: 0 auto
}
p.how_to_list{
	margin-bottom: 10px!important;
}
.howto_caption p{
	font-size: 17px;
	margin-bottom: 46px;
	text-align: center;
	line-height: 2em;
}
.howto_caption p span{
	 margin-right: 2.1em;
}
.how_to_img{
	width: calc(100% - 400px);
    margin: 33px 200px 70px;
}
/*MAP*/
.map_title{
	text-align: center;
	width: 120px;
	border: solid 1px #F4997D;
	border-radius: 24px;
	padding: 0;
	color: #F4997D;
	margin: 0 auto 45px;
	font-family: "a-otf-ud-shin-go-con80-pr6n", "sans-serif";
    font-weight: 300;
    font-style: normal;
}
.map{
	width: calc(100% - 100px);
    margin: 0 50px;
}
.map_image{
	width: 50%;
    margin: 0 auto;
}
.map_image img{
	width: 100%;
}
.map_caption p{
	font-size: 17px;
	font-family: "a-otf-ud-shin-go-con80-pr6n", "sans-serif";
    font-weight: 300;
    font-style: normal;
	text-align: center;
    margin: 50px auto;
}

/*CONTENT ICON*/
.content{
	font-family: "aptly", "sans-serif";
    font-weight: 300;
    font-style: normal;
	position: relative;
	width: calc(100% - 130px);
	margin: 135px 65px 0px;
}
.content_title{
	text-align: center;
	width: 96px;
	border: solid 1px #F4997D;
	border-radius: 24px;
	padding: 0;
	color: #F4997D;
	margin: 0 auto 45px;
	font-family: "a-otf-ud-shin-go-con80-pr6n", "sans-serif";
    font-weight: 300;
    font-style: normal;
}
.iconWrap{
	display: flex;
	justify-content: center;
    gap: 20px;
    margin: 0 auto 20px;
    width: 80%;
}
.iconWrap div {
	max-width: 150px;
    padding-block: 0px;
    padding-inline: 0px;
    border-width: 0px;
    border: none;
	background-color: transparent;
}
.iconWrap div:nth-of-type(2n) {
    margin-top: 40px;
}
.content_tab{
	margin: 50px 80px 0px;
    width: calc(100% - 160px);
    display: flex;
    justify-content: center;
	padding-left: 25px;
}
.iconWrap a{
	text-decoration: none;
}

/*CATEGORY TAB*/
.tabWrap{
    position: sticky;
    top: 0;
    height: 552px;
	width: 29px;
	margin-top: -3.5px;
	margin-left: 3px;
	font-size: 15px;
}
ul.mark-del {
    list-style: none;
    display: flex;
	transform: rotate(90deg);
	margin-block-start: 0em;
    margin-block-end: 0em;
    padding-inline-start: 0px;
}
ul.mark-padding-del {
  list-style: none;
  padding-left: 0px;  
}
.mark-del a {
  display: block;
  width: 100%;
  text-decoration: none;
  color: black;
}
.mark-del li.coffee{
   text-align: center;
   line-height: 35px;
   padding: 0px 15px;
   background-color: #fff;
   border-top-left-radius: 10px;
   border-top-right-radius: 10px;
   margin-right: 3px;
}
p.coffee, .mark-del li.coffee a{
   color: #625443;
}
li.coffee.active{
   background: #625443;
   color: #fff;
}
.mark-del li.tea{
   text-align: center;
   line-height: 35px;
   padding: 0px 15px;
   background-color: #fff;
   border-top-left-radius: 10px;
   border-top-right-radius: 10px;
   margin-right: 3px;
}
p.tea, .mark-del li.tea a{
   color: #698E64;
}
li.tea.active{
   background: #698E64;
   color: #fff;
}
.mark-del li.sake{
   text-align: center;
   line-height: 35px;
   padding: 0px 15px;
   background-color: #fff;
   border-top-left-radius: 10px;
   border-top-right-radius: 10px;
   margin-right: 3px;
}
p.sake, .mark-del li.sake a{
   color: #AFB7B6;
}
li.sake.active{
   background: #AFB7B6;
   color: #fff;
}
.mark-del li.wine {
   text-align: center;
   line-height: 35px;
   padding: 0px 15px;
   background-color: #fff;
   border-top-left-radius: 10px;
   border-top-right-radius: 10px;
   margin-right: 3px;
}
p.wine, .mark-del li.wine a{
   color: #7D587F;
}
li.wine.active{
   background: #7D587F;
   color: #fff;
}
.mark-del li.beer{
   text-align: center;
   line-height: 35px;
   padding: 0px 15px;
   background-color: #fff;
   border-top-left-radius: 10px;
   border-top-right-radius: 10px;
   margin-right: 3px;
}
p.beer, .mark-del li.beer a{
   color: #efc825;
}
li.beer.active{
   background: #efc825;
   color: #fff;
}
.mark-del li.food{
   text-align: center;
   line-height: 35px;
   padding: 0px 15px;
   background-color: #fff;
   border-top-left-radius: 10px;
   border-top-right-radius: 10px;
   margin-right: 3px;
}
p.food, .mark-del li.food a{
   color: #CC8752;
}
li.food.active{
   background: #CC8752;
   color: #fff;
}
.mark-del li.craft{
   text-align: center;
   line-height: 35px;
   padding: 0px 15px;
   background-color: #fff;
   border-top-left-radius: 10px;
   border-top-right-radius: 10px;
   margin-right: 3px;
    font-family: "aptly", "sans-serif";
    font-weight: 300;
    font-style: normal;
}
p.craft, .mark-del li.craft a{
   color: #597796;
}
li.craft.active{
   background: #597796;
   color: #fff;
}
.mark-del li.vintage{
   text-align: center;
   line-height: 35px;
   padding: 0px 15px;
   background-color: #fff;
   border-top-left-radius: 10px;
   border-top-right-radius: 10px;
   margin-right: 3px;
}
p.vintage, .mark-del li.vintage a{
   color: #D4B964;
}
li.vintage.active{
   background: #D4B964;
   color: #fff;
}
.mark-del li.other{
   text-align: center;
   line-height: 35px;
   padding: 0px 15px;
   background-color: #fff;
   border-top-left-radius: 10px;
   border-top-right-radius: 10px;
   margin-right: 3px;
}
p.other, .mark-del li.other a{
   color: #606060;
}
li.vintage.other.active{
   background: #606060;
   color: #fff;
}
.mark-del li.coffee.active a, .mark-del li.tea.active a,.mark-del li.sake.active a, .mark-del li.wine.active a, .mark-del li.food.active a,.mark-del li.craft.active a, .mark-del li.vintage.active a, 
.mark-del li.other.active a,.mark-del li.beer.active a{
   color: #fff;
}
.categoryWrap{
	margin-bottom: 105px;
}
.content_detail{
	background-color: #fff;
	width: 80%;
}
.tabWrap {
	font-family: "aptly", "sans-serif";
    font-weight: 300;
    font-style: normal;
}
.detail_title{
	margin: 40px auto 60px;
    display: flex;
    justify-content: center;
	font-size: 20px;
	font-family: "aptly", "sans-serif";
    font-weight: 300;
    font-style: normal;
}
.category_list ul{
	display: grid;
    grid-template-columns: 1fr 1fr;
	font-size: 16px;
	margin-left: 2%;
}
.category_list li{
	margin-bottom: 20px;
	font-family: "fot-cezanne-pron", sans-serif;
    font-weight: 500;
    font-style: normal;
}

/*LOOP IMGS*/
.slide_loop{
	width: calc(100% - 130px);
	margin: 150px 65px 0px;
	padding-bottom: 50px;
	position: relative;
}
.slide_loop_workshop{
	width: calc(100% - 130px);
	margin: 100px 65px 0px;
	padding-bottom: 150px;
	position: relative;
}
.slide_title{
	text-align: center;
	width: 130px;
	border: solid 1px #F4997D;
	border-radius: 24px;
	padding: 0;
	color: #F4997D;
	margin: 0 auto 45px;
	font-family: "a-otf-ud-shin-go-con80-pr6n", "sans-serif";
    font-weight: 300;
    font-style: normal;
}
@keyframes infinity-scroll-left {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}
.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 80s infinite linear 0.5s both;
}
.scroll-infinity__item {
  width: calc(100vw / 6);
}
.scroll-infinity__item>img {
  width: 100%;
}
@keyframes infinity-scroll-left_work {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}
.scroll-infinity__wrap_work {
  display: flex;
  overflow: hidden;
}
.scroll-infinity__list_work {
  display: flex;
  list-style: none;
  padding: 0
}
.scroll-infinity__list--left_work {
  animation: infinity-scroll-left_work 25s infinite linear 0.1s both;
}
.scroll-infinity__item_work {
  width: calc(100vw / 6);
}
.scroll-infinity__item_work>img {
  width: 100%;
}
.talk_title{
	font-size: 17px;
	margin: 80px auto -25px
}
.speaker_list{
	font-family: "fot-cezanne-pron", sans-serif;
	font-weight: 500;
    font-style: normal;
	font-size: 16px;
	text-align: center;
	padding: 10px 0px 100px;
    background-color: #fff;
    width: 70%;
    margin: 50px auto 0px;
}
.speakerWrap{
	margin: 0px auto 0px;
}
.workshop_list{
	font-family: "fot-cezanne-pron", sans-serif;
	font-weight: 500;
    font-style: normal;
	font-size: 16px;
	text-align: center;
	padding: 100px 0px;
    background-color: #fff;
    width: 70%;
    margin: 50px auto 0px;
}
.workshopWrap{
	margin: 0px auto 60px;
}

/*LINE*/
.summary:before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 50%;
    right: 0%;
    bottom: 0;
    border-top: 1px solid #F4997D;
    border-right: 1px solid #F4997D;
    border-bottom: 1px solid #F4997D;
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
    pointer-events: none;
	margin-top: -50px;
	margin-bottom: -41px;
}
.summary:after {
	content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: -20%;
    right: 50%;
    bottom: 0;
    border-top: 1px solid #F4997D;
    pointer-events: none;
	margin-top: -50px;
}
.howto:before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0%;
    right: 50%;
    bottom: 0;
    border-top: 1px solid #F4997D;
    border-left: 1px solid #F4997D;
    border-bottom: 1px solid #F4997D;
    border-top-left-radius: 50px;
    border-bottom-left-radius: 50px;
    pointer-events: none;
    margin-top: -50px;
	margin-bottom: -86px;
}
.map:before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 50%;
    right: 0%;
    bottom: 0;
    border-top: 1px solid #F4997D;
    border-right: 1px solid #F4997D;
    border-bottom: 1px solid #F4997D;
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
    pointer-events: none;
    margin-top: -65px;
    margin-bottom: -86px;
}
.content:before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0%;
    right: 50%;
    bottom: 0;
    border-top: 1px solid #F4997D;
    border-left: 1px solid #F4997D;
	border-bottom: 1px solid #F4997D;
	border-bottom-left-radius: 50px;
    border-top-left-radius: 50px;
    pointer-events: none;
	margin-top: -50px;
	margin-bottom: -85px;
}
.slide_loop:before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 50%;
    right: 0%;
    bottom: 0;
    border-top: 1px solid #F4997D;
    border-right: 1px solid #F4997D;
    border-bottom: 1px solid #F4997D;
    border-top-right-radius: 50px;
    border-bottom-right-radius: 50px;
    pointer-events: none;
    margin-top: -66px;
	margin-bottom: -35px;
}
.slide_loop_workshop:before {
    content: "";
    position: absolute;
    z-index: 1;
    top: 0;
    left: 0%;
    right: 50%;
    bottom: 0;
    border-top: 1px solid #F4997D;
    border-left: 1px solid #F4997D;
    border-top-left-radius: 50px;
    pointer-events: none;
    margin-top: -66px;
	margin-bottom: -85px;
}
@media screen and (max-width: 1024px) {
    .img_01 {
    width: 400px;
}
    .img_02 {
    width: 500px;
}
    .img_03 {
    width: 300px;
}
    .img_04 {
    width: 450px;
}
    .img_05 {
    width: 400px;
}
    .img_06 {
    width: 580px;
}
    .img_07 {
    width: 400px;
}
    .img_08 {
    width: 300px;
}
.top_caption {
    top: 55%;
}
section.concept {
    min-height: auto;
    padding-bottom: 130px;
}
.concept_caption {
    top: 0;
    left: 250px; 
}
.iconWrap div {
    max-width: 100px;
}
}
@media screen and (max-width: 820px) {
.img_01 {
    width: 300px;
}
.img_02 {
    width: 400px;
}
.img_03 {
    width: 200px;
    top: 25%;
}
.img_04 {
    width: 350px;
}
.img_05 {
    width: 300px;
    top: 50%;
}
.img_06 {
    width: 480px;
    top: 52%;
}
.img_07 {
    width: 300px;
    right: 10%;
}
.img_08 {
    width: 200px;
}
.summary table td {
    width: 95%;
    padding-right: 5%;
}
section.concept {
    padding-bottom: 0;
    margin-bottom: 100px;
}
.concept_caption {
    top: -100px;
    left: 180px;
}
}
@media screen and (max-width: 768px) {
.img_01 {
    top: 15%;
    left: 20px;
}
.img_02 {
    left: 100px;
}
.img_04 {
    width: 350px;
    left: 50%;
}
.img_06 {
    top: 65%;
    left: 17%;
}
.img_07 {
    top: 56%;
}
.img_08 {
    top: 73%;
}
.top_caption {
    top: 60%;
}
.concept_caption {
    top: -50px;
}
	.tabWrap{
		    height: 552px;
	}	
    
    /*LINE*/
	.summary:before {
        display:none;
    }
    .summary:after {
	    display:none;
    }
	.howto:before{
		display: none;
	}
	.map:before {
        display:none;
    }
    .content:before {
        display:none;
    }
    .slide_loop:before {
        display:none;
    }
	.slide_loop_workshop:before {
        display:none;
    }
	.top_logo{
		width: 50px;
		left: 25px;
		top: 30px;
	}
	.instagram_logo{
	    left: 25px;
	}
    .top_caption {
        width: 90%;
        left: 66%;
    }
    .summary{
		width: calc(100% - 50px);
		margin: auto 25px;
	}
	.summary table{
		font-size: 15px;
		width: 100%;
	}
    .summary table td {
        width: 100%;
        padding-right: 0;
    }
	.howto{
		width: calc(100% - 50px);
		margin: 60px 25px auto;
	}
	.how_to_img{
		width: 100%;
        margin: 25px 0px 40px;
	}
	.howto_caption p{
		font-size: 15px;
        margin-bottom: 14px;
	}
	.map{
		width: calc(100% - 50px);
        margin: 100px 25px;
	}
	.map_image{
		width: 100%;
	}
	.map_caption p{
		font-size: 15px;
        margin: 30px auto;
	}
	.content{
		width: calc(100% - 50px);
        margin: 103px 25px 0px
	}
	.content_tab{
	    margin: 50px auto;
        width: 100%;
		padding-left: 15px;
	}
	div.coffee{
		font-size: 15px;
	}
	h2.tab-label-heading {
	    margin-top: -17.7px;
        margin-bottom: 68px;
	}
	.detail_title{
		font-size: 18px;
		margin: 40px auto;
	}
	.content_detail{
		width: 92%;
	}
	.category_list ul{
		display: block;
	}
	.category_list li {
		font-size: 13px;
	}
	.slide_title{
		margin: 0 auto 25px;
	}
	.slide_loop {
        width: 100%;
        margin: 100px auto 0px;
        padding-bottom: 90px;
    }
	.slide_loop_workshop {
        width: 100%;
        margin: 20px auto 0px;
        padding-bottom: 90px;
    }
	.scroll-infinity__item,  .scroll-infinity__item_work{
         width: calc(100vw / 3);
    }
	.follow-banner{
		width: 185px;
		height: 195px;
		right: 25px;
	}
	.follow_banner a{
		width: 185px;
		height: 195px;
	}
	#banner p{
		font-size: 12px;
	    width: 129px;
        padding: 28px
	}
	.batsu::before, .batsu::after{
		top: 36%;
        left: 83%;
		height: 15px;
	}
	.batsu{
		width: 15px;
        height: 15px;
        margin-top: -242px;
        margin-left: 148px;
	}	
    .iconWrap {
        width: 100%;
		margin-left: 2.7px;
    }
	.speaker_list, .workshop_list {
		width: calc(100% - 50px);
		font-size: 13px;
	}
	.talk_title{
		font-size: 13px;
	}
}
/*iPhone14*/
@media screen and (max-width: 520px) {
    .iconWrap div {
        max-width: 70px;
    }
.iconWrap div:nth-of-type(2n) {
    margin-top: 20px;
}
	.pc-only{
		display: none;
	}	
.img_01{
    width: 35%;
    left: 0px;
    top: 12%;
}
    .img_02 {
    top: 22.7%;
    width: 75%;
    left: 25px;
}
.img_03 {
    right: 27%;
    width: 44%;
    top: 22.5%;
	z-index: 2;
}
    .img_04 {
        width: 60%;
        right: 0;
        z-index: 1;
        top: 12%;
        left: auto;
    }
    .img_05 {
        width: 53%;
        top: 38%;
        left: 0px;
    }
    .img_06 {
        width: 60%;
        top: 57%;
        left: auto;
    }
    .img_07 {
        width: 53%;
        z-index: 1;
        right: 25px;
        top: 45%;
    }
    .img_08 {
        right: 25px;
        width: 31%;
        top: 57.8%;
    }
.follow-banner {
    border-radius: 45px;
}
.top_caption {
    transform: translate(-60%, -70%) rotate(-12deg);
    font-size: 3em;
    left: 58%;
    width: auto;
}
section.concept {
    margin-bottom: -100px;
}
.concept_caption {
    width: 65%;
    transform: rotate(-9deg);
    top: -180px;
    left: 80px;
}
	.content_tab{
		padding-left: 0px;
	}
	.concept_caption p{
		font-size: 16px;
		margin-bottom: 20px;
	}
	h2.tab-label-heading {
	    margin-top: -17.7px;
        margin-bottom: 68px;
	}
}
@media screen and (max-width: 390px) {
	.iconWrap{
		gap: 18px
}
.top_caption{
	    font-size: 2.7em;
}	
    .concept_caption {
        width: 60%;
		top: -110px;
}
.summary_title{
		margin: 70px auto 45px;
}
	
}