@charset "UTF-8";
/* CSS Document */

@import url('https://fonts.googleapis.com/css2?family=Libre+Baskerville:ital,wght@0,400;0,700;1,400&family=Noto+Sans+JP:wght@100..900&display=swap');

html,
body {
	padding: 0;
	margin: 0
}

img {
	width: 100%;
	border: none;
}
ul,li {
	padding: 0;
	margin: 0;
	list-style: none;
}
a {
	text-decoration: none;
	color: #000;
}

#bl {
	width: 100%;
}
#bl .en {
	font-family: "Libre Baskerville", serif;
}
#main_visual {
	position: relative;
	width: 100%;
}
@keyframes infinity-scroll-left {
from {
  transform: translateX(0);
}
  to {
  transform: translateX(-100%);
}
}
@keyframes infinity-scroll-right {
from {
  transform: translateX(-100%);
}
  to {
  transform: translateX(0%);
}
}

.scroll-infinity__wrap {
  display: flex;
  overflow: hidden;
	opacity: 0;
	transition: 1.5s all 0.5s ease;
}
.ac .scroll-infinity__wrap {
	opacity: 1;
}

.scroll-infinity__list {
  display: flex;
  list-style: none;
  padding: 0
}
.scroll-infinity__list--left {
  animation: infinity-scroll-left 80s infinite linear 0.1s both;
}
.scroll-infinity__list--right{
  animation :infinity-scroll-right 80s infinite linear 0.1s both;
}
.scroll-infinity__item {
  width: calc(100vw / 5);
}
.scroll-infinity__item>img {
  width: 100%;
}


#main_visual .title {
	width: 26%;
	margin: 3% auto;
	opacity: 0;
	transition: 1.5s all 0s ease;
}
#main_visual .navi ul {
	width: 60%;
    display: grid;
    grid-template-columns: 1fr 1fr 1fr 1fr;
    grid-gap: 50px 5%;
	margin: 10% auto;
	opacity: 0;
	transition: 1.5s all 0s ease;
}
#main_visual .navi ul li {
    padding: 5px;
	text-align: center;
    border-bottom: 1px solid #000;
	font-family: "ivymode", sans-serif;
	letter-spacing: 2px;
}
#main_visual.ac .title,#main_visual.ac .navi ul {
	opacity: 1;
}

@media only screen and (max-width: 768px)  {
	#main_visual .title {
		width: 60%;
		margin: 10% auto;
	}
	.scroll-infinity__list--left {
	  animation: infinity-scroll-left 40s infinite linear 0.1s both;
	}
	.scroll-infinity__list--right{
	  animation :infinity-scroll-right 40s infinite linear 0.1s both;
	}
	.scroll-infinity__item {
	  width: calc(100vw / 3);
	}
	#main_visual .navi ul {
		width: 80%;
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-gap: 50px 10%;
		margin: 10% auto
	}
}

#main_contents {
	margin: 5% auto;
}
#main_contents .section {
	position: relative;
	margin: 0% auto;
	max-width: 1250px;
	padding: 5% 5%;
	box-sizing: border-box;
	border-bottom: 1px solid #000;
	/*background: #e7f2ea;*/
}
/*#main_contents .section:nth-of-type(2) {
	background:#f7f2e4;
}
#main_contents .section:nth-of-type(3) {
	background:#e7ecf2;
}
#main_contents .section:nth-of-type(4) {
	background:#f2e7e9;
}
*/

#main_contents .section .title {
	font-size: 36px;
	letter-spacing: 2px;
	text-align: center;
	margin-bottom: 5%;
	font-family: "ivymode", sans-serif;
}
#main_contents .section .item {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	grid-gap: 15px;
	margin-bottom: 8%;
}
@media only screen and (max-width: 768px)  {
	#main_contents {
		margin: 20% auto;
	}
	#main_contents .section {
		padding: 10% 5%;
	}
	#main_contents .section .item {
		display: block;
		grid-template-columns:auto;
		grid-gap: 0;
		margin-bottom: 15%;
	}
	#main_contents .section .item div {
		margin-bottom: 10%;
	}
}


#main_contents .section .no {
	font-size: 24px;
	text-align: center;
	margin: 0 auto 5%;
	font-family: "ivymode", sans-serif;
	letter-spacing: 2px;
}
#main_contents .section .img {
	line-height: 0;
	position: relative;
}
#main_contents .section .img .point {
    position: absolute;
	bottom: -10%;
    right: 6px;
    border: 1px solid #ed9411;
	background: rgba(255,255,255,0.8);
    border-radius: 100px;
    width: 80px;
    height: 80px;
	display: none;
}
#main_contents .section .img .point span {
    position: absolute;
	z-index: 2;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    text-align: center;
	font-size: 12px;
    line-height: 1.4;
    font-weight: 600;
    color: #ed9411;
	
}
#main_contents .section .data {
	position: relative;
	margin: 15px auto;
	width: 90%;
	line-height: 2.0;
	font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}
#main_contents .section .data .name {
	font-size: 14px;
	font-weight: 600;
	width: 75%;
	margin-bottom: 5px;
}
#main_contents .section .data .price{
	font-size: 12px;
	font-weight: 600;
}
#main_contents .section .data .txt{
	margin: 15px auto;
	font-size: 12px;
	display: none;
}
#main_contents .section .data .txt .review_title {
    font-size: 12px;
    color: #ed9411;
    font-weight: 400;
    font-family: "ivymode", sans-serif;
	letter-spacing: 2px;
    margin: 0 0 10px;
	display: flex;
	align-items: center;
}
#main_contents .section .data .txt .review_title::after {
    content: "";
	flex-grow: 1;
	height: 1px;
	background: #ed9411;
	display: block;
	margin-left: .4em;
}
#main_contents .section .data .btn  {
    margin: 5% 0 0;
}
#main_contents .section .data .btn a {
    display: inline-block;
    margin: 5px 0 0;
    padding-bottom: 5px;
    border-bottom: 1px solid #000;
    font-family: "ivymode", sans-serif;
    font-size: 16px;
    letter-spacing: 2px;
    line-height: 1.3;
}

#main_contents .section .staff .read {
	font-family: "ivymode", sans-serif;
	font-size: 18px;
	letter-spacing: 2px;
	margin-bottom: 2%;
	text-align:center
}
#main_contents .section .staff .look {
	display: grid;
	grid-template-columns: 1fr 1fr 1fr 1fr 1fr 1fr;
	grid-gap: 5px;
}
#main_contents .section .staff .staff_data {
	font-size: 12px;
	margin: 5px 0;
}
#main_contents .section .staff .btn {
	text-align: center;
	margin: 35px 0 0
}
#main_contents .section .staff .btn a {
    display: inline-block;
    padding-bottom: 5px;
    border-bottom: 1px solid #000;
    font-size: 14px;
    font-weight: 400;
}
@media only screen and (max-width: 768px)  {
	#main_contents .section .staff .look {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		grid-gap: 5px;
	}
}

#main_contents li {
	opacity: 0;
	transition: 1.5s all 0s ease;
}
#main_contents li.ac {
	opacity: 1;
}

