@charset "UTF-8";
/* CSS Document */
body{
	margin: 0px !important;
	overscroll-behavior: none;
}
h1,h2,h3,h4,h5,h6{margin: 0;}
ul {
    display: block;
    list-stslideyle-type: disc;
    margin-block-start: 0;
    margin-block-end: 0;
    margin-inline-start: 0;
    margin-inline-end: 0;
    padding-inline-start: 0;
}
*{
    min-height: 0;
    min-width : 0;
	margin: 0px;
	padding: 0px;
	box-sizing: border-box;
	scroll-behavior: smooth;
}
#bl{
    padding: 0;
	margin: 0 auto;
    font-family: yu-gothic-pr6n, sans-serif;
	font-style: normal;
	font-weight: 400;
    line-height: 2.0;
    font-size: 11px;
    letter-spacing: 1px;
	width: 100%;
    box-sizing: border-box;
    color: #111;
	background: #fff;
    -webkit-text-size-adjust: 100%;
}
#bl a {
	text-decoration: none;
	color: #2b2b2b;
}
#bl p {
    margin: 0;
}
#bl　a:hover {
	opacity: 1;
}
#bl .clear{
	clear: both;
}
#bl img{
    width: 100%;
    line-height: 0;
}
#bl ul,#bl li {
	list-style: none;
	padding: 0;
	margin: 0;
}
#bl .f-en {
	font-family: "Georgia", serif;
	font-optical-sizing: auto;
	font-style: normal;
}


#bl .main_visual{
	position: relative;
	width: 100%;
}

#bl .main_visual .ttl{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: 63%;
}

#bl .read{
	padding: 20px;
	margin-bottom: 15%;
}

#bl .read p{
	text-align: center;
}

@media only screen and (min-width: 768px) {
	#bl{
    font-size: 14px;
	}
   #bl .main_visual .ttl {
     width: 32%;
	}
	#bl .read p {
    width: 650px;
    margin: 5% auto;
	}
	#bl .read{
	margin-bottom: 0;
	}
}

#bl .item_area{
	position: relative;
	width: 100%;
	margin: 0 auto;
}
#bl .item_area .item{
	margin: 0 auto;
}
#bl .item_area .credit{
	position: absolute;
	top: -8%;
	left: 5%;
}
#bl .item_area .credit .item_name{
	font-size: 18px;
    line-height: 1.6em;
}
#bl .point .credit .item_name{
	font-size: 18px;
    line-height: 1.6em;
}
#bl .item_area .credit .price{
	margin: 3% 0 ;
}
#bl .point .credit .price{
	margin: 3% 0 ;
}
#bl .item_area .credit .col{
	width: 12%;
}
#bl .point .credit .col{
	width: 5%;
}
#bl .point{
	margin: 5% auto 10%;
}
#bl .point .p_child{
	display: flex;
	margin: 0 auto;
    width: 80%;
}
#bl .point .p_child .tick{
	width: 4%;
}
#bl .point .p_child .p_txt{
	margin-left: 3%;
}
#bl .sub{
	display: flex;
    margin: 0 auto 10%;
    justify-content: space-between;
    align-items: center;
	flex-wrap: wrap;
    flex-direction: row;
	row-gap: 18px;
}
#bl .sub a{
	display: contents;
}
#bl .sub .sub_child{
	width: 48%;
}
#bl .buy{
	display: flex;
    justify-content: center;
    align-items: center;
    width: 250px;
    margin:0 auto 10%;
    padding: .9em 2em;
    border: 1px solid #000000;
    /*border-radius: 5px;*/
    background-color: #fff;
    color: #000000;
    font-size: 1em;	
}
@media only screen and (min-width: 768px) {
	#bl .flex{
		display: flex;
        max-width: 1600px;
        width: 72%;
        margin: 0 auto;
		justify-content: space-between;
	}
	#bl .item_area{
	width: 52%;
	}
	#bl .point{
		margin: 0 0 0 5%;
		width: 40%;
		
	}
	#bl .point .credit{
	margin: 0 auto 6%;
	}
	#bl .point .p_child {
    width: 100%;
	margin-bottom: 5%;
	}
	#bl .item_area .item{
	
	}
	#bl .point .line{
	border-bottom: solid 1px #000;
	margin-bottom: 10%;
	}
	#bl .sub{
	margin: 5% auto;
	width: 70%;
	row-gap: 35px;
	}
	#bl .point .credit .item_name {
    font-size: 28px;
	}
	#bl .point .p_child .tick{
	
	}
	#bl .buy{
	display: flex;
    justify-content: center;
    align-items: center;
    width: 450px;
    margin:0 auto 10%;
    padding: .9em 2em;
    border: 1px solid #000000;
    /*border-radius: 5px;*/
    background-color: #fff;
    color: #000000;
    font-size: 1em;	
	}
}

#bl section{
	margin-bottom: 30%;
}
#bl section:nth-of-type(n+2) .item_area .credit .col{
	display: flex;
	width: 40%;
    justify-content: space-between;
}
#bl section:nth-of-type(3) .item_area .credit .col {
    width: 36%;
}
#bl section:nth-of-type(4) .item_area .credit .col{
	width: 41%;
}
#bl section:nth-of-type(5) .item_area .credit .col {
    width: 40%;
}
#bl section:nth-of-type(n+2) .item_area .credit .col div{
    width: 14%;
}
#bl section:nth-of-type(3) .item_area .credit .col div {
    width: 37%;
}
#bl section:nth-of-type(4) .item_area .credit .col div {
    width: 18%;
}
#bl section:nth-of-type(5) .item_area .credit .col div {
    width: 24%;
}
@media only screen and (min-width: 768px) {
	#bl section{
	margin-bottom: 12%;
	}
	#bl section:nth-of-type(n+2) .flex .point .credit .col{
	display: flex;
    width: 38%;
    justify-content: space-between;
	}
	#bl section:nth-of-type(3) .flex .point .credit .col{
	width: 11%;
	}
	#bl section:nth-of-type(4) .flex .point .credit .col{
	width: 26%;
	}
	#bl section:nth-of-type(5) .flex .point .credit .col{
	width: 18%;
	}
	#bl section:nth-of-type(n+2) .flex .point .credit .col div{
	width: 13%;
	}
	#bl section:nth-of-type(3) .flex .point .credit .col div{
	width: 40%;
	}
	#bl section:nth-of-type(4) .flex .point .credit .col div{
	width: 18%;
	}
	#bl section:nth-of-type(5) .flex .point .credit .col div{
	width: 25%;
	}
	
}



@media only screen and (min-width: 768px) {
	
	
}

/*********************************************
                slide01
*********************************************/

  /*=== 画像の表示エリア ================================= */
.slide {
  position   : relative;
  overflow   : hidden;
                    /* 画像のサイズに合わせて変更ください */
  width      : 100%;
  height     : 68vw;
 /*  margin     : auto;      サンプルは中央寄せの背景：白 */
  background : #fff;
}
 
 /*=== 画像の設定 ======================================= */
.slide img {
  display    : block;
  position   : absolute;
                      /* 画像のサイズを表示エリアに合せる */
  width      : inherit;
  height     : inherit;
  opacity    : 0;
  animation  : slideAnime 6s ease infinite;
}
 
 /*=== スライドのアニメーションを段差で開始する ========= */
.slide img:nth-of-type(1) { animation-delay: 0s }
.slide img:nth-of-type(2) { animation-delay: 3s }
 
 /*=== スライドのアニメーション ========================= */
@keyframes slideAnime{
   0% { opacity: 0 }
   25% { opacity: 1 }
  50% { opacity: 1 }
  75% { opacity: 0 }
 100% { opacity: 0 }
}
@media only screen and (min-width: 768px) {
.slide {
  height     : 48vw;
}
	
}
/*********************************************
                slide02
*********************************************/

  /*=== 画像の表示エリア ================================= */
.slide02 {
  position   : relative;
  overflow   : hidden;
                    /* 画像のサイズに合わせて変更ください */
  width      : 100%;
  height     : 68vw;
 /*  margin     : auto;      サンプルは中央寄せの背景：白 */
  background : #fff;
}
 
 /*=== 画像の設定 ======================================= */
.slide02 img {
  display    : block;
  position   : absolute;
                      /* 画像のサイズを表示エリアに合せる */
  width      : inherit;
  height     : inherit;
  opacity    : 0;
  animation  : slideAnime02 8s ease infinite;
}
 
 /*=== スライドのアニメーションを段差で開始する ========= */
.slide02 img:nth-of-type(1) { animation-delay: 0s }
.slide02 img:nth-of-type(2) { animation-delay: 4s }
 
 /*=== スライドのアニメーション ========================= */
@keyframes slideAnime02{
   0% { opacity: 0 }
   25% { opacity: 1 }
  50% { opacity: 1 }
  75% { opacity: 0 }
 100% { opacity: 0 }
}
	
@media only screen and (min-width: 768px) {
.slide02 {
  height     : 48vw;
}	
	
}
/*********************************************
                js
*********************************************/
#bl .anim {
	opacity: 0;
	transition: 1.5s all 0s;
}
#bl .anim.ac {
	opacity: 1;
	transform: translate(0);
}
/*********************************************
                view
*********************************************/
.spview {
	display: block;
}
.pcview {
	display: none;
}
@media only screen and (min-width: 768px)  {
    .spview {
		display: none;
	}	
	.pcview {
		display: block;
	}
}	
