
html {
 font-size: 16px;
}

body {
 font-size: 1em;
 line-height: 1.6;
}

#contentInner{
   width: auto;
   margin: 0 auto;
   position: relative;
   padding: 0;
}

.contents{
   width: 900px;
   margin: 0 auto;
   text-align: center;
   display: inline-block;
}

.s_title {
   text-align: center;
}

.taC {
   text-align: center;
}


#lp_main {
   background: url(https://d11w49g8ylcixs.cloudfront.net/resource/20190701/menu_bg-2.png);
   background-size: contain;
   text-align: center;
}

#lp_title {
   background-color: #fff;
   background-size: cover;
   text-align: center;
   border-top: 0;
   background-attachment: fixed;
   -webkit-animation: bgiLoop 20s linear infinite;
   animation: bgiLoop 20s linear infinite;
}
   @-webkit-keyframes bgiLoop {
       0% { background-position: 0 0;}
       100% { background-position: -1903px 0px;}
   }
   @keyframes bgiLoop {
       0% { background-position: 0 0;}
       100% { background-position: -1903px 0px;}
   }

#lp_title img{
   width: 100%;
   max-width: 100%;
}

#lp_title_arrow {
   background-color: #0e1f76;
   height: 47px;
   margin-bottom: 48px;
}

#lp_gnav {
   padding: 40px;
   padding-top: 10px;
}


.bl_wrap {
   padding: 10px 0 50px;

}
.bl {
   background-color: #fff;
   margin: auto;
   padding: 10px;
   text-align: left;
   box-sizing: border-box;
}

.summary {
   font-weight: bold;
}

.item_title {
   font-size: 22px;
   font-weight: bold;
   margin-top: 10px;
}

.maker {
   display: table;
   border-radius: 10px;
   padding: 2px 10px;
   font-size: 10px;
   font-weight: bold;
   margin: 10px 0;
   color: #fff;
}
.label_otoku {
   vertical-align: middle;
}
.pd_strong {
   font-weight: bold;
   font-style: italic;
   list-style-position: -3px;
}

.pr_red {
   color: #CC5246;
   font-weight: bold;
}

.cpr {
   font-size: 12px;
}
.cpr span {
   text-decoration: line-through;
}

.lp_right {
   float: left;
}

.pricedown {
   display: inline-block;
}

.item_title {
   margin-bottom: 10px;
}
a .item_title{
 text-decoration: underline;
}



/* ****************************************************

	layout

***************************************************** */

body { background-color:#fff; color:#333333; font-family: "Noto Sans JP", "Hiragino Sans W3", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN W3", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif; letter-spacing: 0.03em; line-height: 160%; padding: 0 auto; margin:0 auto; width: 100%; overflow:hidden; overflow-y:scroll; box-sizing: border-box; }

a{ color:#fff; text-decoration: none; }
section { padding: 3% 0; margin: 0 auto; }
h2 { font-size: 35px; line-height: 150%; }
h3 { font-size: 25px; line-height: 120%; }
h4 { font-size: 20px; line-height: 120%; }
h5 { font-size: 40px; line-height: 220%; }

a:hover img {
  opacity: 0.7;
  filter: alpha(opacity=70);
  -ms-filter: "alpha(opacity=70)";
}

hr { height: 5px;
 background-color: #161616;
 width: 10%;
 border: none; margin: 2% auto 4% auto; }

.yellow { color:#dbaa49; }
.small { font-size: 0.8rem; line-height: 120%; }
.big { font-size: 1.2rem; font-weight: 600; margin: 3px 0; }
.bold { font-weight: 600; }
.matchH, .matchH2{ display:block; }
.pc { display: block !important; }
.sp { display: none !important; }
a.btn-flat {
  overflow: hidden;
  padding: 1.5rem 6rem;
  color: #fff;
  border-radius: 0;
  background: #000;
}

a.btn-flat span {
  position: relative;
}

a.btn-flat:before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  content: '';
  -webkit-transition: all .5s ease-in-out;
  transition: all .5s ease-in-out;
  -webkit-transform: translateX(-96%);
  transform: translateX(-96%);
  background:#A32426;
}

a.btn-flat:hover:before {
  -webkit-transform: translateX(0%);
  transform: translateX(0%);
}
.btn03,
a.btn03,
button.btn03 {
  font-size: 1.2rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #fff;
  border-radius: 0.5rem;
}

@media screen and (max-width:768px), print {
  body, div, h1, h2, h3, h4, h5, h6, p, ul, li, img, form, dl, dd, dt, section {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
  }
img { width: 100%; padding: 0 1%; box-sizing: border-box; }
section { padding: 6% 0; box-sizing: border-box; }
h2 { font-size: 23px; line-height: 180%; }
h3 { font-size: 20px; line-height: 180%; }
h4 { font-size: 16px; line-height: 180%; }
h5 { font-size: 28px; line-height: 180%; }
.pc { display: none !important; }
.sp { display: block !important; }
}


/* ****************************************************

	section:title

***************************************************** */

#title { background-image: url( "https://d11w49g8ylcixs.cloudfront.net/resource/20201104/bg.png" ) ; width: 100%; text-align: center; padding:0; margin: 0 auto; box-sizing: border-box; -ms-align-items: center; align-items: center; position: relative;  max-width: 1920px;}

#title img { width: 100%; }
#title .btn {
  width: 393px;
  position: absolute;
  left: 50%;
  bottom: 30px;
  text-align: center;
  transform: translate(-50%,0);
}



#title .titleimg {
  position: relative;
  overflow: hidden;
  height: 870px;
}

#title .titleimg img {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 1920px;
  height: 902px;
  margin-top: -450px;
  margin-left: -980px;
}

.link-2019 h2{
  color: white;
  font-size: 23px;
  line-height: 34px;
}
.link-2019{
  background-color: #9d2128;
  border-radius: 50px;
  margin: -105px auto 68px;
  width: 34%;
  padding: 6px 0px;
  display: block;
  position: relative;
  text-decoration: none;
  overflow: hidden;
  transition: 0.2s;
  box-shadow: 0 5px 0 0  #7a191f;/*影の色(rgbaの値を変更)*/
}
.link-2019:hover {
  text-decoration: none;
  color: #fff;
  opacity: 0.7;
  box-shadow: none;
  -webkit-transform: translateY(3px);
}
.link-2019::before {
  position: absolute;
  content: '';
  display: inline-block;
  top: -180px;
  left: 0;
  width: 30px;
  height: 100%;
  background-color: #fff;
  animation: info-btn 3s ease-in-out infinite;
}

span.yajirusi{
  color: #bace01;
  font-size: 15px;
  letter-spacing: 3px;
  margin-left: 9px;
}


@media screen and (max-width:768px), print {
#title .btn {
  width: 200px;
  position: absolute;
  left: 50%;
  bottom: 30px;
  text-align: center;
  transform: translate(-50%,0);
}
.link-2019 h2{
  color: white;
  font-size: 14px;
  line-height: 25px;
  background:none;
}
.link-2019{
  background-color: #9d2128;
  border-radius: 10px;
  margin: -46px auto 68px;
  width: 70%;
  padding: 6px 0px;
  display: block;
  position: relative;
  text-decoration: none;
  overflow: hidden;
  transition: 0.2s;
  box-shadow: 0 5px 0 0  #7a191f;/*影の色(rgbaの値を変更)*/
}
}


/* ****************************************************

	section:about

***************************************************** */

#about { background-image: url( "https://d11w49g8ylcixs.cloudfront.net/resource/20201104/bg2.png" ) ; padding: 8% auto;  margin: 0 auto; box-sizing: border-box; color: #fff; line-height: 250%;}


#about .inner {
  width: 96%;
  max-width: 900px;
  margin: 0 auto ;
  padding: 0 auto;
  text-align: center;
  z-index: -9999;
}

#about .ttl {
  width: 100%;
  margin: 3% auto 0 ;
  padding: 3% auto 0;
  text-align: center;
  box-sizing: border-box;
}
#about p{
  font-size:1.2rem; line-height: 260%;
}
#about .img {
  width: 100%;
  margin: 2% auto 0;
}
#about .img img{
  width: 100%;
}
#about .movie {
  max-width: 640px;
  margin: 5% auto;
}


@media screen and (max-width:768px), print {

}

/* ****************************************************

	section:apply

***************************************************** */
#apply {  background-image: url( "https://d11w49g8ylcixs.cloudfront.net/resource/20201104/bg.png" ) ;  box-sizing: border-box; }

#apply .inner {
  width: 96%;
  max-width: 1100px;
  margin: 0 auto ;
  padding: 0 auto;
  text-align: center;
  z-index: -9999;
}
#apply .box {
	margin: 5% auto ;
	padding: 5% auto;
	width: 96%;
	max-width: 800px;
	background-color: #fff;
	text-align: left;
	border-radius: 10px;
	box-sizing: border-box;
	display: flex;
  }

#apply .ttl {
  max-width: 100%;
  margin: 2% auto ;
  padding: 3% auto;
  box-sizing: border-box;
}

#apply .table_line {
	display: table;
	margin: 3% auto ;
    padding: 3% auto ;
	width: 96%;
	max-width: 800px;
	}

#apply .block_l {
	display: table-cell;
	width: 130px;
	padding: 1% 0 1% 3%;
	}

#apply p {
	padding: 0 auto 0;
	margin: 0 auto 20px;
	}

#apply .item {
	background-color: #9A090B;
	width: 100px;
	padding: 3% auto ;
	color: #fff;
	border-radius: 5px;
	font-size: 0.8rem;
	text-align: center;
	}
#apply .date {
	font-size: 1.2rem;
	font-weight: 600;
	}
#apply .block_r {
		display: table-cell;
		max-width: 650px;
	}
#apply img{
	margin: 30px auto 0 ;
    padding: 20px auto 0 ;
	}

#apply .share{
	width: 120px;
	margin: 0 auto ;
    padding: 0 auto ;
	text-align: center;
	}

#apply .sns-icon{
	max-width: 38%;
	padding: 1% ;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto ;
    padding: 0 auto ;
	}



@media screen and (max-width:768px), print {
#apply .box {
	display:block;
  }
#apply .table_line {
	display: block;
	margin: 3% auto ;
    padding: 3% ;
	width: 96%;
	max-width: 800px;
	}

#apply .block_l {
	display: block;
	width: 100%;
	padding: 1% auto;
	}
#apply .block_r {
	display: block;
	width: 100%;
	padding: 3%;
	}
#apply .item {
	background-color: #9A090B;
	width: 100%;
	padding: 1% auto ;
	color: #fff;
	border-radius: 5px;
	font-size: 0.8rem;
	text-align: center;
	}

#apply .sns-icon{
	width: 80%;
	max-width: 300px;
	padding: 1% ;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto ;
    padding: 0 auto ;
	}
}



/* ****************************************************

	section:sale

***************************************************** */

#sale {
  background-image: url( "https://d11w49g8ylcixs.cloudfront.net/resource/20201104/bg2.png" ) ;
  margin: 0px auto;
  box-sizing:
  border-box;
  color: #fff;
padding-top: 60px;
padding-bottom: 80px;}

.inner{width: 80%;}
  /*----- 商品一覧 -----*/
  .item-list1
   {  /*-- 親要素 --*/
    display: flex;
    flex-direction: row;  /*-- 子要素の並ぶ向き --*/
    flex-wrap: wrap;  /*-- 子要素の折り返し --*/
    justify-content: space-around;  /*-- 垂直方向の揃え・均等に --*/
    align-content: space-between;  /*-- 複数行にした時の揃え--*/
  }
  /*----- 全てへの指示 -----*/
 #spgbtn_01{
  margin-top: 30px; width: 100%;}
 #spgbtn_01 a{
  text-decoration:none; white-space: normal;line-height: 21px;color: black;}
 #spgbtn_01 span{
  font-size:14px; color: black;  white-space: normal; }
 #spgbtn_01 p{
  margin: 18px 4px 0px 4px; }
 li.back99{
  background-color: white;
  border-radius: 10px;
  color: black;
  width: 40%;
  padding: 10px;
  position: relative;}
 #spgbtn_01 li { border: none; list-style: none;}
 .sale_price{ margin-top: 10px;}
 .procdbtn {
   background: #bb872a;
   border-radius:50px;
   width: 75%;
   display: block;
   margin: 10px auto 20px;
   padding: 10px;
   box-sizing:border-box;
   color: white!important;
   font-size:13px;}
   .procdbtn a{
     color: white;}
 .procdbtn:hover { background: #e8ab3d;}
 .fa-shopping-cart:before { padding-right: 5px; color: white}
 img.picture { padding: 5px;}
 #icon50 img {  width: 30px;}
 /*----- New商品への指示 -----*/
 #spgbtn_01_104265:after{
   background: url(https://d11w49g8ylcixs.cloudfront.net/resource/20200824/icon_new.png);
   content: "";
   position: absolute;
   top: -4px; right: -4px; width: 97px; height: 97px;
   background-size: contain;
   background-repeat: no-repeat;}
  /*----- 在庫限り商品への指示 -----*/
  #spgbtn_01_104265:before{
   background: url(https://d11w49g8ylcixs.cloudfront.net/resource/20200824/zaiko.png);
   content: "";
   position: absolute;
   top: 8px; left: 8px; width: 97px; height: 97px;
   background-size: contain;
   background-repeat: no-repeat;}

@media screen and (max-width:768px), print {
  li.back99{
   background-color: white;
   border-radius: 10px;
   color: black;
   width: 100%;
   padding: 10px;
   position: relative;
   margin-bottom: 20px;}
}


/* ****************************************************

	section:gallery

***************************************************** */
#gallery { background-image: url( "https://d11w49g8ylcixs.cloudfront.net/resource/20201104/bg.png" ) ; box-sizing: border-box; font-size:0.8rem; }

#gallery .inner {
  width: 96%;
  max-width: 1100px;
  margin: 0 auto ;
  padding: 0 auto;
  text-align: center;
}

#gallery .ttl {
  width: 96%;
  max-width: 380px;
  margin: 5% auto 0 ;
  box-sizing: border-box;
}

#gallery .award {
  margin:1% auto 0;
  max-width: 100%;
  }

#gallery .award-ttl {
  max-width: 100%;
  margin: 0 auto;
  box-sizing: border-box;
}
#gallery .year {
  max-width: 100%;
  margin: 3% auto 0;
  box-sizing: border-box;
}

#gallery img{
  max-width: 90%;
  margin: 0 auto;
}

@media screen and (max-width:768px), print {}






/* フレックスボックスの基本設定 等間隔（両端揃え）折返しあり */
[class^="flex-col"] {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

/* コンテンツ下のマージン */
.flex-child { margin-bottom: 30px; font-size: 1.0em;}

/* 各カラム毎のコンテンツと疑似要素の横幅 */
.flex-col2 .flex-child { width: calc( (100% - 10px) / 2 ); }

.flex-col3::after,
.flex-col3 .flex-child { width: calc( (100% - 20px) / 3 ); }

.flex-col4::before,
.flex-col4::after,
.flex-col4 .flex-child { width: calc( (100% - 30px) / 4 ); }

/* 最終行は両端揃えにしない */
.flex-col3::after,
.flex-col4::before,
.flex-col4::after { content: ""; }

.flex-col4::before { order: 1; }

/* レスポンシブ対応 */

/* 991px以下で4列 → 3列
@media screen and (max-width: 991px) {
	.flex-col4::after,
	.flex-col4 .flex-child { width: calc( (100% - 20px) / 3 ); }
}*/

/* 767px以下で4列・3列 → 2列 */
@media screen and (max-width: 800px) {
	.flex-col3 .flex-child,
	.flex-col4 .flex-child { width: calc( (100% - 10px) / 2 ); }
}

/* 575px以下で全て1列 */
@media screen and (max-width: 767px) {
	.flex-col2 .flex-child,
	.flex-col3 .flex-child,
	.flex-col4 .flex-child { width: 100%; }
}




/* ****************************************************

	main

***************************************************** */
.tuiju	{
  background: #fff;
  z-index: 9999;
  height: auto;
  position: fixed;
  right: 0;
  bottom: 0;}

.tuiju img { width:100%; float: left;}

.btn01{
  width:150px;
  height: auto;
  position: fixed;
  right: 50px;
  bottom: 50px;
}

/* フェードイン関係　画面外にいる状態 */
.fadein {
    opacity : 0.1;
    transform : translate(0, 50px);
    transition : all 500ms;
    }
.fadeinleft {
    opacity : 0.1;
    transform : translate(-50px, 0);
    transition : all 500ms;
    }
.fadeinright {
    opacity : 0.1;
    transform : translate(50px, 0);
    transition : all 500ms;
    }
/* 画面内に入った状態 */
.fadein.scrollin {
    opacity : 1;
    transform : translate(0, 0);
    }
.fadeinleft.scrollin {
    opacity : 1;
    transform : translate(0, 0);
    }
.fadeinright.scrollin {
    opacity : 1;
    transform : translate(0, 0);
    }

/* ****************************************************

	footer

***************************************************** */
.footer{ background-color:#fff; padding-top:5%; padding-bottom:2%; text-align:center; }

.footer-nav { display: flex; justify-content: center; font-size: 0.8rem; max-width: 1000px; margin: 0 auto;}
.footer-sk { padding: 1%; border-right: 1px solid #5B3E22; width: 30%;}
.footer-ss { padding: 1%; border-right: 1px solid #5B3E22; width: 30%;}
.footer-tokai { padding: 1%; width: 30%;}
.company-logo img { max-width: 100%; }
.footer-nav p { padding: 8px 0;}
.company-name { padding:0 0 1%; font-size:1.1rem;  font-weight:600;}
.footer .copy{ padding:2% 0 6%;}

@media screen and (max-width:768px), print {
.footer-nav { display: block; }
.footer-sk { margin: 3% auto; border-bottom: 1px solid #5B3E22; border-right: none; width: 100%;}
.footer-ss { margin: 3% auto; border-bottom: 1px solid #5B3E22; border-right: none; width: 100%;}
.footer-tokai { margin: 3% auto; width: 100%; border:none;}
.company-logo img { max-width: 140px; }
.footer-nav p { padding: 2px 0;}
}
