@charset "UTF-8";
/* CSS Document */

/* ---------------------------------------------------------
  全体
----------------------------------------------------------*/
html,
body {
  height: 100%;
  font-size: 62.5%;
}
body {
	width: 100%;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","游ゴシック体","Yu Gothic Medium","Yu Gothic","メイリオ","ＭＳ Ｐゴシック","MS PGothic",sans-serif;
	font-size: 1.3rem;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	line-height: 1;
	color: #808080;
	background-color: #fff;
	-webkit-text-size-adjust: 100%;
}
img {
  vertical-align: bottom;
}
a {
  color: #0c0606;
  text-decoration: none;
}


/*----- フェードインしながら上へスライド -----*/
.inviewfadeInUp {
  opacity: 0;
  transform: translate(0, 10px);
  -webkit-transform: translate(0, 10px);
  transition: 1.5s; }

.fadeInUp {
  opacity: 1.0;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0); }

.inviewfadeInUp_2 {
  opacity: 0;
  transform: translate(0, 10px);
  -webkit-transform: translate(0, 10px);
  transition: 4.0s; }

.fadeInUp_2 {
  opacity: 1.0;
  transform: translate(0, 0);
  -webkit-transform: translate(0, 0); }


/*---------------- sp ----------------*/
@media screen and (max-width:768px) {
  body {
    min-width: 100%;
  }
}

* {
  box-sizing: border-box;
}

/*---------------- 改行 ----------------*/
@media screen and (min-width: 768px){   
  .pcline-break { display:block; }
  .spline-break { display:none; }
}
@media screen and (max-width: 767px){   
  .pcline-break { display:none; }
  .spline-break { display:block; }
}



/* ---------------------------------------------------------
  main
----------------------------------------------------------*/
@media screen and (min-width: 768px) {
	main {
		width: 100%;
		display: block;
		padding: 0;
		margin-top: calc(-30 / 1366 * 100vw);
		margin-bottom: 100px;
	}
	main img {
		max-width: 100%;
	}
}

/*---------------- SP ----------------*/
@media screen and (max-width:767px) {
  main {
    padding: 0; 
    margin-bottom: 60px;
    margin-top: 0;
  }
  main img {
    max-width: 100%;
  }  
}


/* ---------------------------------------------------------
	アイテム
----------------------------------------------------------*/
.item-wapper {
	padding: 0;
	margin-bottom: 120px;
}

.item-wapper-last {
	padding: 0;
	margin-bottom: 60px;
}

.item-contain {
	margin: 0 auto;
	width: 100%;
}

/*---------------- PC ----------------*/
@media screen and (min-width: 768px) {
	.item-wapper {
		margin-bottom: 200px;
	}
	.item-wapper-last {
		margin-bottom: 100px;
	}
    .item-contain {
       max-width: 600px;		
       padding: 0;
    }
}


/* ---------------------------------------------------------
	アイテムメイン
----------------------------------------------------------*/
.item-mainbox {
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
	position: relative;
	padding: 0;
}

.item-mainbox img {
	max-width: 100%;
}


/* ------ スライド ------ */
.img-slides {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0px;
}
.img-slides img {
	z-index: -1;
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}

/* ------ サブスライド ------ */
.threeimg-slides {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 20px;
	padding-right: 20px;
	margin-top: 0px;
	margin-bottom: 30px;
}
.threeimg-slides img {
	max-width: 100%;
	height: auto;
	margin: 0 auto;
}


/* ------ 小見出し ------ */
.subheading-num {
	display: block;
	width: 90%;
	padding:0;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 2em;
}

.subhead__img {
	display: block;
	width: 90%;
	padding:0;
	margin-left: auto;
	margin-right: auto;
	margin-top: 70px;
	margin-bottom: 2em;
}


/* ------------ PC ------------ */
@media screen and (min-width: 768px) {	
	.item-mainimg {
		display: block;
		width: 50%;
		position: relative;
		top: 0;
		left: 35%;
	}	

	/* --- 小見出し --- */
	.subheading-num {
		width: 70%;
	}
	.subhead__img {
		width: 65%;
	}	
	.threeimg-slides {
		width: 70%;
	}

}



/* ---------------------------------------------------------
	スタッフinfo
----------------------------------------------------------*/
.staff_info {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
}

.staff_info img {
	max-width: 100%;
}

.staff__leftside {
	flex-basis: 35%;
}

.staff__rightside {
	flex-basis: 60%;
}

h3 {
	font-family: 'Nunito', sans-serif;
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.8;
	letter-spacing: 0.05em;
}

.staff__rightside p {
	font-family: 'Kosugi Maru', sans-serif;
	font-size: 1.2rem;
	font-weight: 400;
	line-height: 1.6;
	letter-spacing: 0.05em;
}

.staff__rightside a {
	color: #f29d9d;
	text-decoration: underline;
}

.staff__rightside span {
	font-size: 1.15rem;
}

/*-------------- PC --------------*/
@media screen and (min-width: 768px) {
	.staff_info {
		width: 400px;
		margin-left: auto;
		margin-right: auto;
		align-items: center;
	}

	.staff__leftside {
		flex-basis: 35%;
		align-self: center;
		margin-right: 20px;
	}
	.staff__rightside {
		flex-basis: 60%;
		align-self: flex-start;
	}

	h3 {
		font-size: 2rem;
		letter-spacing: 0.05em;
	}

	.staff__rightside p {
		font-size: 1.5rem;
		line-height: 1.6;
		letter-spacing: 0.05em;
	}
}


/* ---------------------------------------------------------
	スタッフinfo3枚画像
----------------------------------------------------------*/
.threeimg_box {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
	display: -webkit-flex;
	display: flex;
}

.threeimg__item {
	flex: 0 1 calc(100% / 3);
}

.threeimg__item:nth-child(2) {
	margin-left: 10px;
	margin-right: 10px;
}


/*-------------- PC --------------*/
@media screen and (min-width: 768px) {
	.threeimg_box {
		width: 400px;
		margin-bottom: 40px;
	}
}

/* ---------------------------------------------------------
	アイテムプライス
----------------------------------------------------------*/
.items-price {
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 30px;
	display: -webkit-flex;
	display: flex;
	flex-wrap: wrap;
	justify-content: center; 
	font-family: 'Kosugi Maru', sans-serif;
	font-size: 1.3rem;
	font-weight: 400;
	line-height: 2.5;
	letter-spacing: 0.05em;
	text-decoration: underline;
	color: #808080;
}
ul {
	list-style: none;
}

.items-price li:not(:last-child) {
	margin-right: 1em;
}

.items-price li:first-child {
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 1em;
	line-height: 1;
}

.items-price a {
	text-decoration: underline;
	color: #808080;
}

.items-price img {
	max-width: 100%;
}

/*----- PC -----*/
@media screen and (min-width: 768px) {
	.items-price {
		width: 70%;
		margin-bottom: 2em;
		justify-content: center;
		font-size: 1.5rem;
	}
}



/* ---------------------------------------------------------
	ALL ITEMボタン
----------------------------------------------------------*/
.allitem_wapper {
	text-align: center;
	margin: 0px auto 60px;
}

.allitem {
  display: inline-block;
  padding: 1.5em 3.5em;
  margin: 0 auto;
  border: 1px #b2b2b2 solid;
  text-decoration: none;
  font-size: 1.4rem;
  transition: .4s;
  font-family: 'Kosugi Maru', sans-serif;
  font-weight: 400;
  letter-spacing: 0.1em;
}

.allitem a {
  color: #b2b2b2;
  font-weight: normal;
}

.allitem:hover {
	color: #FFFFFF;
    background-color: #b2b2b2;
}

.allitem:hover a {
	color: #FFFFFF;
	font-weight: normal;
}

/*----- PC -----*/
@media screen and (min-width: 768px) {
	.allitem_wapper {
		margin-top: 80px;
		margin-bottom: 100px;
	}
	.allitem {
		font-size: 1.5rem;
		padding: 1.5em 5em;
	}
}


/* ---------------------------------------------------------
　フッター
----------------------------------------------------------*/

footer {
	background: linear-gradient(-135deg, #ffdde1, #ee9ca7) fixed;	
	/*-- background-color: #f29d9d;
	background-image: url("../images/footer_bg_img.jpg");
	background-repeat:  no-repeat; 
	background-size: cover; --*/
	margin: 0 auto;
	max-width: 9999px;
	font-size:13px;
	padding: 20px 0;
}
  footer #footer_box {
    margin: 0 auto; }
	@media screen and (min-width: 768px) {
	  footer #footer_box {
		width: 50%;
		padding: 50px 0; } }
	@media screen and (max-width: 970px) {
	  footer #footer_box {
		width: 70%;
		padding: 50px 0; } }
	@media screen and (min-width: 768px) {
	footer ul {
		padding-bottom: 40px;
		list-style: none;} }
	@media screen and (max-width: 970px) {
	footer ul {
		padding-bottom: 40px;
		list-style: none;} }
	footer #nice_logo {
		margin: 0 auto; }
	@media screen and (min-width: 768px) {
	  footer #nice_logo {
		width: 22%; } }
	@media screen and (max-width: 970px) {
	  footer #nice_logo {
		width: 43%; } }
	footer .footer_p {
		margin: 0 auto;
		display: block;
		text-align: center;
		color: #fff;
		font-weight: bold;
		font-size: 1.5rem;
		font-family: 'Noto Sans JP', sans-serif;}
	footer .footer_r {
		margin: 0 auto;
		display: block;
		text-align: center;
		color: #fff;
		font-weight: 400;
		font-size: 0.65rem;
		padding-top: 2em;
		line-height: 2;
		font-family: 'Noto Sans JP', sans-serif;}
	footer .footer_p a {
		margin: 0 auto;
		display: block;
		text-align: center;
		text-decoration: underline;  
		font-weight: normal;
		font-size: 1.35rem;
		color: #fff; }
    @media screen and (min-width: 768px) {
      footer .footer_p {
        padding: 0 0 1.5em;
        letter-spacing: 2px; } }
    @media screen and (max-width: 970px) {
      footer .footer_p {
        padding: 0 0 1.5em; } }
	footer #sns_flex {
		display: flex;
		justify-content: space-between;
		margin: 0 auto; }
    @media screen and (min-width: 768px) {
      footer #sns_flex {
        width: 45%; } }
    @media screen and (max-width: 970px) {
      footer #sns_flex {
        width: 90%; } }
    @media screen and (min-width: 768px) {
      footer #sns_flex li {
        width: 9%; } }
    @media screen and (max-width: 970px) {
      footer #sns_flex li {
        width: 10%; } }
    footer #sns_flex a {
      text-decoration: none; }
  footer #online_link {
    display: flex;
    justify-content: space-between;
    margin: 0 auto; }
    @media screen and (min-width: 768px) {
      footer #online_link {
        width: 50%; 
        padding-left: 150px;} }
    @media screen and (max-width: 970px) {
      footer #online_link {
        width: 100%; 
        margin-right: 0px;
        margin-left: 70px;} }
    footer #online_link a {
      color: #fff; }