@charset "utf-8";
/* CSS Document */

body {
	padding:0;
	margin:0;
}

.ktr_wrap{
	font-family: "Zen Kaku Gothic New", sans-serif;
	background: #cdf6ee;
}

.ktr_wrap a:hover{
    opacity: 0.8;
	transition: 0.3s;
}

.ktr_wrap img{
    width: 100%;
	vertical-align: bottom;
}

.ktr_wrap .inner{
	width: 100%;
	max-width: 600px;
	margin: 0 auto;
	background: #cdf6ee;
	position: relative;
	z-index: 100;
}

.head_wrap{
	position: relative;
	overflow: hidden;
}

.head_wrap .head{
	margin: 0;
}

.ktr_wrap .lead{
	margin: 10% 0;
	font-size: 30px;
	font-weight: 500;
	text-align: center;
	color: #757171;
	position: relative;
    line-height: 55px;
}

.ktr_wrap .lead span.banzai::before {
    position: absolute;
    left: 4em;
    top: 17px;
    content: '';
    width: 2px;
    height: 30%;
    background-color: #757171;
    border-radius: 3px;
    transform: rotate(-30deg);
}
.ktr_wrap .lead span.banzai::after {
    position: absolute;
    right: 4em;
    top: 17px;
    content: '';
    width: 2px;
    height: 30%;
    background-color: #757171;
    border-radius: 3px;
    transform: rotate(30deg);
}

.ktr_wrap .lead span.big{
	font-size: 35px;
}

.ktr_wrap .lead span.big5{
	font-size: 50px;
}

.section_wrap{
	margin-bottom: 10%;
}

.section{
	border: 1px solid #d65897;
	padding: 0 0 5%;
	width: 100%;
    margin: 0 auto;
	box-sizing: border-box;
}

.no{
	font-family:  montserrat, sans-serif;
	font-weight: 600;
	font-size: 35px;
	text-align: center;
	background: #d65897;
	color: #ffffff;
	border-top-left-radius: 100vh;
	border-top-right-radius: 100vh;
	padding: 5px 0;
}

.no span{
	font-size: 25px;
	margin-right: 3px;
}

.section .main_img{
	width: 100%;
	margin: 0 auto 2%;
}

.item_credit{
	font-size: 16px;
	text-align: center;
	margin: 2% auto 5%;
}

.item_credit .name{
}

.item_credit .price{
	font-family: "futura-pt", sans-serif;
}

.item_credit .price span{
	font-size: 80%;
}

.item_credit .buy{
	font-family:  montserrat, sans-serif;
	width: 35%;
	margin: 3% auto;
	font-size: 14px;
}

.item_credit .buy a{
	display: flex;
	justify-content: center;
	background: #d65897;
	color: #ffffff;
	text-decoration: none;
	padding: 4.5% 0;
	letter-spacing: 1px;
	font-weight: 600;
}

.item_wrap{
	width: 95%;
	margin: 0 auto;
	display: flex;
    justify-content: center;
    column-gap: 2%;
}

.item_wrap .style{
	width: 33%;
}

.detail_box{
	font-family: "futura-pt", sans-serif;
	text-align: center;
	font-size: 13px;
	margin: 5% 0;
	display: flex;
    justify-content: center;
    column-gap: 3%;
}

.detail_box span{
	border: 1px solid #d65897;
	border-radius: 100vh;
	padding: 3px 8px;
	background: #ffffff;
	line-height: 1;
}

.btn_sb{
	width: 80%;
	text-align: center;
	font-size: 14px;
	padding: 0;
    margin: 0 auto;
}

.btn_sb a{
	background-color: #ffffff;
    color: #ffffff;
    text-align: center;
    font-weight: 600;
    width: 90%;
    letter-spacing: 1px;
    margin: 10% auto 5%;
    display: inline-block;
    padding: 3% 0;
    text-decoration: none;
	border: 1px solid #000000;
}

.btn_sb a img{
	width: 45%;
}


.btn_all{
	font-family:  montserrat, sans-serif;
	width: 80%;
	text-align: center;
	font-size: 14px;
	padding: 0 0 15%;
    margin: 0 auto;
}

.btn_all a{
	background-color: #ffffff;
    color: #d65897;
    text-align: center;
    font-weight: 600;
    width: 90%;
    letter-spacing: 1px;
    margin: 0 auto;
    display: inline-block;
    padding: 4.5% 0;
    text-decoration: none;
    border: 1px solid #d65897;
	font-size: 15px;
}

.montserrat{
	letter-spacing: 2px;
	font-family:  montserrat, sans-serif;
	font-weight: 600;
}

.sp {
	display:none;
}
.pc{
    display: block;
}

@media only screen and (max-width: 750px) {
	
	
	.pc {
		display:none;
	}
	.sp {
		display:block;
		width: 100%;
	}
	
    .obi {
        font-size: 18px;
    }

	.ktr_wrap .lead {
        font-size: 18px;
    }
	
    .ktr_wrap .lead span.banzai::before {
        top: 19px;
        height: 25%;
		left: 5em;
    }	
	
    .ktr_wrap .lead span.banzai::after {
        top: 19px;
        height: 25%;
		right: 5em;
    }
	
    .ktr_wrap .lead span.big5 {
        font-size: 40px;
    }
	
      .ktr_wrap .lead span.big {
          font-size: 30px;
      }	

    .section_wrap {
        width: 95%;
        margin: 0 auto 10%;
    }	
	
    .section_wrap {
        border-top-left-radius: 50px;
        border-top-right-radius: 50px;
    }	
	
    .no {
        font-size: 30px;
		padding: 10px 0;
        line-height: 1;
    }	
	
    .item_credit {
        font-size: 14px;
		margin: 2% auto 8%;
    }	

    .item_credit .buy a {
        font-size: 13px;
    }
	
    .detail_box {
        column-gap: 3%;
        flex-wrap: wrap;
        row-gap: 5px;
    }	
	
	.obi{
		font-size: 20px;
	}
	
    .btn_sb a{
        padding: 3.5% 0;
    }
	
	.btn_sb a img{
		width: 60%;
    }

}

/************************************************************
               アニメーションcss
************************************************************/

.img_box1 {
	position: relative;
	aspect-ratio: 5 / 9;
}

.fade_img1 {
    width: 100%;
    margin: 0 auto;
    height: auto;
    position: absolute;
    background: center center no-repeat;
    animation: anime 8s 0s infinite;
    z-index: 0;
}

.fade_img1:nth-of-type(2) {
    animation-delay: 2s;
}

.fade_img1:nth-of-type(3) {
    animation-delay: 4s;
}

.fade_img1:nth-of-type(4) {
    animation-delay: 6s;
}

@keyframes anime {
    0% {
        opacity: 1;
    }
    50% {
        opacity: 1;
    }
    60% {
        opacity: 0;
        z-index: 10;
    }
    100% {
        opacity: 0;
    }
}

.obi {
	font-size: 23px;
	font-family: montserrat, sans-serif;
    font-weight: 100;
    font-style: normal;
	letter-spacing: 1px;
    color: #d65897;
}

.obi_inner {
    display: flex;
    width: max-content;
}

.obi_inner.looping {
    animation: loop-infinite 30s linear infinite;
}

.obi .txt {
    padding-right: 20px;
}

.obi .txt2 {
    padding-right: 20px;
	transform: scaleY(-1);
}

@keyframes loop-infinite {
    0% {
        transform: translateX(0);
    }
    100% {
        transform: translateX(-50%);
    }
}



