@charset "UTF-8";	
/* ============================================== */
/* フッターメニュー                                       */
/* ============================================== */

.movie_attention{
	width:800px;
	text-align:center;
	margin: 10px auto 40px auto;
	font-size: 12px;
}

.sp_only{
		display: none;
}
/*ーー１枚目の画像ーー*/
.column.cat22 .info img{
	display: flex;
	width: 25%;
    margin: 10px 0;
}
.column.cat22{
	padding-left: 50px;
	margin: auto;
}

ui, li{
	list-style:none;
}

.kansyuu{
	color:#333;
	font-size:14px;
	font-weight:bold;
	margin-bottom:30px;
	margin-top:10px;
}

video{
	margin:30px auto 10px auto;
	width: 55%;
}


.fs120{
	font-size:125%
}
.mes_text{
	text-align:justify;
	font-size:16px;
	line-height:1.7em
}

.mes_text p{
	font-weight:bold;
	margin:0 0 10px 0
}
.mes_photo{
	width:200px;
	float:left;
	margin:5px 40px 0 0;
	height: 550px;
}

#page-top {
    font-size: 0;
    position: fixed;
    bottom: 160px;
    right: 16px;
    opacity: 0;
	cursor:pointer

}

.point{
	width: 1100px;
	padding:0px 0 0 0;
	display: grid;
	clear:both;
	height: auto;
	margin: 100px auto 0px auto;
}


/* ========================================
FUNCTION
======================================== */

#function{
	background:#f5f8f8;
	min-height:650px;
	clear:both;
	margin-top: 200px;

}

.kansyuu_title{
	font-size:30px;
	text-align:center;
    padding: 90px 0 40px 0;
}

#function_inner{
	width:1000px;
	margin:100px auto;
}

/* ========================================
FOOTER
======================================== */

footer{
	clear:both;
	text-align:center;
}

.copy{
	font-size:11px;
	padding-top:30px;
	clear:both;
}

/* ========================================
 ウエストマイナス10cm　目指せ！憧れのすっきりボディ
======================================== */
body, div, dl, dt, dd, ul, ol, li, h2, h3, h4, h5, h6, pre, code, form, fieldset, legend, input, button, textarea, select, p, blockquote, th, td {
	margin: 0px;
	padding: 0px;
	font-family: 'ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro',sans-serif;
	font-weight:200;
	letter-spacing:0.05em;


}

li, dt, dd, p, h1, h2, h3, h4, h5, h6 {
	text-align: left;

}

body {
	text-align: center;
	font-size: 12px;
	color: #454648;
	background:#fff;
	height: 100%;
}




/* link
----- ----- ----- ----- ----- ----- ----- ----- ----- ----- */
a {
	text-decoration: none;
	color: #ff6eaf;
}

a:hover {
	text-decoration: underline;
}


a:hover img {
	-webkit-transition: 0.3s ease-in-out;
	-moz-transition: 0.3s ease-in-out;
	-o-transition: 0.3s ease-in-out;
	transition: 0.3s ease-in-out;
   	opacity: 0.6;
	filter: alpha(opacity=60);
}








.slick-prev,
.slick-next
{
    font-size: 0;
    line-height: 0;
	position: absolute;
    top: 50%;
	display: block;
	width: 50px;
    height: 50px;
    padding: 0;
    margin-top: -10px\9; /*lte IE 8*/
    -webkit-transform: translate(0, -50%);
    -ms-transform: translate(0, -50%);
    transform: translate(0, -50%);
	cursor: pointer;
	color: transparent;
    border: none;
    outline: none;
    background: transparent;
}




.slick-prev:before,
.slick-next:before
{
    font-family: 'slick';
    font-size: 50px;
    line-height: 1;
	opacity: .75;
    color:  #A2D4EE;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.slick-prev
{
    left: -150px;
	font-size:200%;
	z-index:2
}

.slick-next
{
    right:-150px;
	font-size:200%;
	z-index:2
}


/*****SiTest対策で追加 20160829******/
.slick-slider .slick-slide{height: initial;}

/* 一瀬　*/
.banner img{
	width:100%;
}
.explain p{
	text-align: center;
	margin: 150px 50px 50px 50px;
	font-size: 20px ;
}
.explain_sns p {
	text-align: center;
	margin: 100px 50px 100px 50px;
	font-size:24px ;
}
/*ーー投稿例ーー*/
.post-example h2{
	font-size: 40px;
	text-align: center;
	margin: 50px 0 50px 0 ;
}

.post-grid-container {
    width: 1060px;
    grid-template-columns: 1fr 1fr;
    margin: auto;
    justify-content: space-evenly;
    display: flex;
    flex-wrap: wrap;
	row-gap: 50px;
	columns-gap: 50px;
}
.annotation p{
	margin: 50px auto;
	text-align: center;
	font-size: 12px;
}
.sub-title h2{
	text-align: center;
	font-size: 30px;
	margin: 20px auto;
}
.sub-title img{
	vertical-align: middle;
	margin: 50px 0 20px 0;
	width: 15%;
}

.test-display-image-container img{
	margin:0 50px;
}
.test-display-image-container {
	width: 1100px;
	margin: 20px auto 100px auto;
	justify-content: center;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	grid-gap: 1px 1px;

}
.test-display-image-container-2 img{
	margin:0 50px;
}

.test-display-image-container-2 {
	width: 1100px;
    margin: 150px auto 100px auto;
    justify-content: center;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 1px 1px;
}
.contents-display-image-container {
	margin: 20px 0 0 0;
	justify-content: center;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 1px 1px;		
}
.contents-display-image-container-logo1 {
	width: 950px;
    margin: 50px auto;
	justify-content: center;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 1px 1px;		
}
.contents-display-image-container-logo {
	width: 950px;
    margin: 100px auto;
	justify-content: center;
	display: grid;
	grid-template-columns: repeat(2, 1fr);
	grid-gap: 1px 1px;	
}

.point-image-container{
    display: flex;
}
.point-image-container-store{
    display: flex;
}
.each-point {
    text-align: center;
    flex: 1;
	margin: 10px;
}
.each-point p {
	margin: 10px;
}

.phone_right_box p{
	margin: 20px 0 0 0 ;
	font-size:20px; 
}
.phone_right{
	float:right;
	margin:0 0 0 60px;
	width:346px
}
.grid-item-underbutton{
	margin: 20px;
}
.grid-item-underbutton p{
	text-align: center;
}

/*----------------------------*/

.d-demo__wrap {
  display: flex;
  overflow: hidden;
}

.d-demo__list {
  display: flex;
  list-style: none;
}

.d-demo__list--left{
animation :infinity-scroll-left 95s infinite linear 0.5s both;
}

.d-demo__item {
  width: calc(100vw / 6);
}
.d-demo__item > img{
   width: 100%;
}
/*
右から左へ
----------------------------*/
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}

/*
IE11対策
----------------------------*/
_:-ms-lang(x)::-ms-backdrop,
.d-demo {
  display: -ms-grid;
  overflow: hidden;
}

.column {
  width: 100%;
  text-align: center;
  align-items: flex-end;
  justify-content: center;
}

.column.recommend{
    width: 100%;
    text-align: center;
	padding: 0px 0px 0px 30px;
}


.column.convini{
	width: 100%;
    text-align: center;
	padding: 0px 30px 0px 0px;

}

h2 {
	font-size: 32px;
  }
  p {
	font-size: 19px;
	margin: 10px 0;
}

.cat1 {
  background-size: cover;
  margin: auto;
}
.cat2 {
  background-size: cover;
  margin: auto 0px auto 30px;
}
.wrapper {
    display: flex;
	width:1300px;
	margin: 200px auto 50px auto;
  }
.wrapper-menu {
    display: flex;
    width: 1300px;
    margin: 150px auto 150px auto;
}
.wrapper-columns {
    display: flex;
	width:1300px;
	margin: 100px auto 100px auto;
 }
.column.cat2 .info img {
	float: left;
	margin: 0 10px 20px 0 ;
	align-items: flex-start;
}
.column.cat2 .info h2,
.column.cat2 .info p {
	clear: both;
}

.youtube {
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}
.btb_logo_top img{
	margin: 10px;
	width: 5%;
}
.btb_logo img{
	width: 150px;
	margin-top:50px;
	margin-bottom:50px;
}
.copy {
  padding: 1rem;
  line-height: 1;
  color: #fff;
  text-align: center;
  background: #E1C662;
}
.pc{
	display:inline
}
.sp{
	display:none
}


/* メディアクエリ */
@media screen and (max-width: 812px) {
	.sp_only{
		display: block;
	}
	.btb_logo_top img{
		margin: 10px;
		width: 10%;
	}	
	.wrapper {
		max-width: 100%;
		display: flex;
		flex-direction: column;
		margin: 0 auto;
  }
	.wrapper-menu {
		max-width: 100%;
		display: flex;
		flex-direction: column;
		margin: 0 auto;
}
	.wrapper-columns {
		max-width: 100%;
		display: flex;
		flex-direction: column;
		margin: 20px auto;
}
	.column {
		margin:0px 0px 20px 0px ;
	}
	.column.cat2{
    margin: 0 auto;
	}
	
	.column.cat22 .info h2{
		font-size: 30px;
    	margin: 0 auto;
	}
	.column.cat22 {
		padding: 0;
		margin: 0;
}
	
  .info img {
	margin: auto;
    display: block;
    width: 70%;
    height: auto;
  }
	.point-image-container-store .each-point img{
		width: 100%;		
	}
	.post-example h2{
		font-size: 30px;
		margin: 50px 0 20px 0 ;
	}
	
	.post-grid-container img {
		width: 80%;
		margin: 0 auto;
	}
	.sub-title img{
		width: 25%;
		margin: 50px 0 0 0 ;
	}
	.sub-title h2{
		font-size: 23px;
		margin: 10px auto -10px auto;
		padding: 0;
	}
	.explain_sns p{
		margin: 20px 20px 50px 20px;
		font-size: 16px;
	}
	.d-demo__wrap {
	  display: flex;
	  overflow: hidden;
	}

	.d-demo__list {
	  display: flex;
	  list-style: none;
	}

	.d-demo__list--left{
	animation :infinity-scroll-left 30s infinite linear 0.5s both;
	}

	.d-demo__item {
	  width: calc(100vw / 3);
	}
	.d-demo__item > img{
	   width: 100%;
	}	
	#function{
		background:#f5f8f8;
		min-height:auto;
		clear:both;
		margin: 20px auto;
	}

	.info h2{
		font-size: 20px;
		margin: 10px 30px 10px 30px;
		text-align: center;
		
	}
	.point-image-container{
		flex: none;
		flex-flow: column;
		margin: 20px;
	}
	.column.recommend{
		padding: 0;
		margin: 0;
}
	.wrapper p{
		margin: 10px auto;
		font-size: 15px;
		text-align: center;
	}
	.wrapper-menu p{
		margin: 20px;
		font-size: 12px;
		text-align: center;
		
	}
	.wrapper-columns p{
		margin: 20px;
		font-size: 12px;
		text-align: center;
		
	}
	.each-point{
		margin: 1em;
		display: flex;
	}
	.point-image-container .each-point img{
		margin: 5px;
		float: none;
		width: 30%;
		margin: auto 0;
	}
	.point-image-container .each-point p{
		margin: 0px 10px ;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: left;
		font-size: 15px;
	}
	.point-image-container-magagine{
		display: flex;
		flex-wrap: wrap;
		margin: 10px auto;
		width: 90%;
	}
	.point-image-container-magagine .each-point{
		margin: auto;
		width: 100%; /* 2列にするために各要素の幅を50%に設定 */
	}
	.point-image-container-magagine .each-point img{
		width: 100%;
		height: auto;
 	}
	.column.convini {
		padding: 0;
		margin: 0;
}
	.point-image-container-store{
		margin: 0 auto;
	}
	.column.cat22 .info img{
    	width: 25%;
		text-align:left;
		margin: 0 auto;
		align-items: flex-start;

	}
	.column.cat2 .info .each-point img{
		margin: auto;
		display: block;
		width: 95%;
		height: auto;
		float: none;		
	}
	.column.cat2 .info img{
		margin: auto;
		display: block;
		width: 70%;
		height: auto;
		float: none;
	}
	#function_inner{
		width:100%;
		margin:50px auto;
	}
	.kansyuu_title{
		font-size:20px;
		text-align:center;
		margin:0 auto ;
		padding: 30px 0 0 0 ;
	}
	.mes_photo {
		width: 200px;
		float: none;
		margin: 25px auto 10px auto;
		height: auto;
	}
	.mes_text {
		width: 90%;
		text-align: justify;
		font-size: 16px;
		margin: 0 auto;
		line-height: 1.7em;
	}
	.movie_attention {
		font-size: 11px;
		width: 95%;
		margin: 0 auto;
	}

	.post-grid-container {
    	grid-template-columns: 2fr;
		width: 95%;
		height: 95%;
  }
	.contents-display-image-container{
		margin: 20px auto;
	}
	.contents-display-image-container-logo1 .grid-item img {
		max-width: 80%;
		height: auto;
		margin: 5px 0px;
	}
	.contents-display-image-container-logo.grid-item img {
		max-width: 80%;
		height: auto;
		margin: 5px 0px;
	}
	.test-display-image-container {
    	grid-template-columns: 2fr;
		width: 95%;
		height: 95%;
  }

	.point{
		width: 100%;
		height: auto;
		margin: 50px auto;
	}
	.test-display-image-container .grid-item img{
		max-width: 70%;
		height: auto;
		margin: 10px 0px;
	}
	.contents-display-image-container {
		width: auto;
		height: auto;
	}
	.contents-display-image-container .grid-item img {
		width: 80%;
		height: auto;
		margin: 10px 0px;
	}
	.test-display-image-container{
		width: auto;
		margin: auto;
	}

	.contents-display-image-container-logo1{
		max-width: 90%;
		margin: 0px auto 50px auto;
	}
	.contents-display-image-container-logo{
		max-width: 90%;
		margin: 0px auto 50px auto;
	}

	.explain p{
	 margin: 50px 30px 20px 30px;
	font-size: 12px;
	}

	.annotation p{
		font-size: 11px;
		margin: 20px auto;
	}
    .small-image {
        width: 50%; /* 幅を100pxに指定 */
        height: auto; /* 高さは自動調整 */
	}
	.btb_logo img{
		width: 100px;
		margin-top: 50px;
		margin-bottom: 50px;
	}	
	.youtube iframe{
		width:80%;
		height:80%;
		margin-top: -20px;
	}
	.mes_photo img{
		width:80%;
		margin-top: 10px;
	}
	video {
    margin: 30px auto 10px auto;
    width: 90%;
	}
	.contents-display-image-container-logo1 .grid-item img {
    max-width: 80%;
    height: auto;
    margin: 15px 0px;
	}
	.contents-display-image-container-logo .grid-item img {
		max-width: 80%;
		height: auto;
		margin: 50px 0 0 0;
	}
	footer{
		clear:both;
		text-align:center;
	}
	html {
		height: 100%;
	}
}