/*
font-size  h1=41.9 h2=30.6 h3=25.9 h4=22.1  67.8  109.7
mobilewide.css 26.25em  420px
tablet.css 37.5em  600px
narrowdesktop.css 60em  960px
desktop.css 80em  1280px
widescreen.css 100em  1600px
**INDEX**
1.RESET
2.Basic
  2-1.Grid Layout
  2-2.SlideShow 横縦切り替え
  2-3.Modal Window
  2-4.Drawer
  2-5.Title
3.Header
4.Front Page
5.News List
6.固定ページ　おしらせ
7.商品 ＆ オンライン抽選販売 & おしらせ
8.取扱店一覧
9.お問い合わせ
10.よくあるご質問
11.個人情報保護基本方針
12.Site Map
13.404 Not Found
14.Footer
/*

/* 2022-11-01追加
----------------------------------------------------------------------------- */
.re-ul-list{
	margin: 1em 0;
	padding-left: 40px;
  list-style-type: disc;
}

/* 2022-08-04追加
----------------------------------------------------------------------------- */

#infomation h4{ /*FrontPage*/
  font-size: 22.1px;
}

#infomation .m-weight{
  font-size: 20px;
}

#infomation .must{ /*FrontPage*/
  color: #f00;
}

/* 2021-03-07追加
----------------------------------------------------------------------------- */

.sub-info-phrase{ /*FrontPage*/
  background-color: #F2F2F2;
  padding: 5vw;
}


/* -----------------------------------------------------------------------------
1.RESET
----------------------------------------------------------------------------- */

body {
  position: relative;
  height: 100%;
}

#main{
  margin-bottom: 10em;
  min-height: 100vh;
}

#site-title{
  position: absolute;
  opacity: 0;
  top: 0;
}

.slider-content,
#header-nav-body,
.flex-control-nav,
#to-link-lottery,
#to-link-cart,
.footer-nav-body,
details{
  display: none;
}

.flexslider .slides .portrait-img,
.flexslider .slides .landscape-img,
.content-banner-img {
  width: 100%;
  object-fit: cover;
}

#landscape-cont,
#portrait-cont,
.content-banner{
  background-color: #222;
  padding-top: 70px;
}

.content-banner2{
  background-color: #222;
  padding-top: 60px;
}

.content-banner2 hr{
  background-color: #222;
  height: 1px;
}

.fa-phone-alt{
  color: #ccc;
}

/* p */

.parag-zero{
  margin-bottom: 0;
}
.parag-one{
  margin-bottom: 1rem;
}

.parag-tow{
  margin-bottom: 2rem;
}

.parag-three{
  margin-bottom: 3rem;
}

.parag-four{
  margin-bottom: 4rem;
}

.parag-five{
  margin-bottom: 5rem;
}

/* List Style */

.list-disc{
  list-style: disc;
  padding-left: 1em;
}

.list-deci{
  list-style: decimal;
  padding-left: 1em;
}

/* 固定ページ */

.text-area h2, .text-area h3, .text-area h4, .text-area h5,
.text-area ul, .text-area ol, .text-area p{
  margin-bottom: 1rem;
}

.text-area ul{
  list-style: disc;
  margin-left: 1.5em;
}

.text-area ol{
  list-style: decimal;
  margin-left: 1.5em;
}

.article-content{
  text-align: center;
}

h2, h3, h4, h5{
  text-align: left;
}

.phrase{
  margin-left: auto;
  margin-right: auto;
  max-width: 741px;
  text-align: left;
}

.lphrase{
  font-size: 22.1px;
  margin-left: auto;
  margin-right: auto;
  max-width: 741px;
  text-align: left;
}

.Citem{
  text-align: center;
}

.Litem{
  text-align: left;
}

/* single page */

.single-page-content{
  margin-left: auto;
  margin-right: auto;
  max-width: 741px;
  text-align: left;
}

.single-page-content .centered{
  text-align: center;
}

.single-page-content .empha{
  background-color: transparent;
  font-weight: bold;
}

.result{
  line-height: 3em;
  text-align: center;
  width: 100%;
}

.result tr:nth-child(odd){
  background-color: #f2f2f2;
}

/* -----------------------------------------------------------------------------
2.Basic
----------------------------------------------------------------------------- */

/* Current Menu */

.current-menu-item{
  color: #BF6241;
}

/* Gray & Blue Line in Page  */

.article-content{
  border-top: 8px solid #f2f2f2;
  padding-bottom: 4rem;
  padding-top: 4rem;
  position: relative;
}

.article-content::before{
  content:"";
  display:block;
  width:38.2vw;
  max-width: 160px;
  height:8px;
  background-color:#7197B2;
  position:absolute;
  top:-8px;
  left:0;
}

/* Basic ⇒ ANKER */

.to-link,
.to-tel,
.site-map-item ul li a{
  border-bottom: 2px dotted #00f;
}

.to-link:hover,
.to-tel:hover,
.site-map-item ul li a:hover{
  color: #00f;
}

/* Link */

.to-page{
  padding-top: 1em;
  text-align: left;
}

.to-link-button{
  background-color: #09080D;
  border-radius: 5px;
  display: inline-block;
  text-align: center;
}
.to-link-button a{
  color: #fff;
  display: block;
  padding: 0.5em 1em;
}

.pdf-list a{
  border: 1px dotted #333;
  border-radius: 5px;
  display: block;
  padding: 1em;
}

.pdf-list a:hover{
  background-color: #FEF7EA;
}

#company-info a{
  color: #ccc;
  border-bottom: 1px dotted #ccc ;
}

#company-info a:hover{
  color: #fff;
}

.must{
  color: #f00;
}

.breadcrumbs{
  padding: 1em;
}

.index-section,
.archive-section,
.page-section{
  margin-left: 2.5vw;
  margin-right: 2.5vw;
  max-width: 1200px;
}

.form-content{
  background-color: #F2F2F2;
  border: 1px solid #F2F2F2;
  text-align: left;
}

.wpcf7{ /* form */
  background-color: #fff;
  border-radius: 20px;
  margin: 4vw;
  position: relative;
  padding: 0.5vw 2.5vw;
}

.wpcf7-form{
  margin-bottom: 6em;
}

.list-item{
  position: relative;
}

.question{
  border-bottom: 1px solid #d6d6d6;
  padding-bottom: 3px;
}

.notes{
  color:#f00;
  font-size: 1.2rem;
}

/*
2-1.Basic ⇒ Grid Layout
----------------------------------------------------------------------------- */

.index-tow-column{
  display: grid;
  grid-column-gap: 2.5vw;
  grid-template-columns: repeat(2,1fr);
}

#lottery-nav{
  display: grid;
  grid-column-gap: 1em;
  grid-row-gap: 1em;
  grid-template-columns: repeat(1,1fr);
}

.tow-column .list-item{
  display: grid;
  grid-column-gap: 1em;
  grid-template-columns: 1fr 2fr;
  border-bottom: 1px solid #d6d6d6;
  padding-bottom: 0.5em;
  padding-top: 0.5em;
  margin: 0;
}

.modal-ans {
  display: grid;
  grid-template-columns: repeat(auto-fit, minmax(4em, 1fr));
  grid-auto-rows: 1fr;
  grid-gap: 0.8em;
  padding: 0.8em;
}

.privacy-corpo-list{
  display: grid;
  grid-column-gap: 1em;
  grid-template-columns: 5em 1fr;
}

.archive-list-title{
  border-bottom: 1px solid #d6d6d6;
  display: grid;
  grid-template-columns:  5.5em 1fr;
  grid-template-rows: repeat(2, 1fr);
  grid-column-gap: 0px;
  grid-row-gap: 0px; 
  padding: 5px;
}

.archive-list-title:hover{
  background-color: #FEF7EA;
}

.day{
  color: #777;
  grid-area: 1 / 1 / 3 / 2;

}
.category-name{
  grid-area: 2 / 1 / 3 / 2;
}

.anker-text{
  grid-area: 1 / 2 / 3 / 3;
}

.shops-list .list-item{
  display: grid;
  grid-template-columns: 25% 75%;
  padding-bottom: 0.5em;
  padding-top: 0.5em;
}

.shops-list .area{
  grid-row: 1 / 4;
  grid-column: 1 / 2;
  display: inline-block;
}

/*
2-2.Basic ⇒ SlideShow 横縦切り替え
----------------------------------------------------------------------------- */

@media screen and (orientation: landscape){ /* 横向き */
  .index-portrait-slider{
    display: none;
  }
  .modal {
    top: 5vh;
  }

  .modal-desc{
    margin: 0 auto;
  }
  .flexslider .slides .landscape-img{
    height: calc(100vh - 70px);
  }
  .content-banner-img{
    height: 140px;
  }
}

@media screen and (orientation: portrait){ /* 縦向き */
  .index-landscape-slider{
    display: none;
  }

  .modal {
    top: 15vh;
  }

  .modal-desc{
    margin: 1em auto;
  }

  .flexslider .slides .portrait-img{
    height: calc(100vh - 70px);
  }

  .content-banner-img{
    height: 140px;
  }
}

/*
2-3.Basic ⇒ Modal Window
----------------------------------------------------------------------------- */

.modal {
  background: #E2DAAC;
  position: fixed;
  display: none;
  z-index: 99999;
  left: 50%;
  width: 95%;
  margin: 0 0 0 -47.5%;
  padding: 20px;
  text-align: center;
}

.modal a {
  cursor: pointer;
}

.modal-title{
  font-size: 25.9px;
}

.modal-desc{
  color: red;
  font-size: 18px;
}

.modal-ques{
  font-size: 17px;
}

.modal-ans > div a{
  background: #fff;
  border-radius: 10px;
  font-size: 22.1px;
  display: block;
  margin: 0;
  min-width: 0;
  overflow: auto;
  padding: 1.25em 0;
}

.modal-ans > div .modal-list-desc{
  font-size: 13px;
}

/*
2-4.Basic ⇒ Drawer
----------------------------------------------------------------------------- */

.drawer--top.drawer-open .drawer-nav {
  padding: 4em 20vw 4em 5vw;
}

.drawer--top.drawer-open .drawer-nav .drawer-menu{
  height: 100%;
  overflow: auto;
  text-align: left;
}

.drawer--top.drawer-open .drawer-nav .drawer-menu .menu-item{
  border-bottom: 1px solid #777;
}

.drawer--top.drawer-open .drawer-nav .drawer-menu .menu-item:last-child{
  border-bottom: none;
}

.drawer--top.drawer-open .drawer-nav .drawer-menu .menu-item a{
  color: #fff ;
  display: block;
  line-height: 3em;
}

#drawer-to-link-cart, #drawer-to-link-lottery {
  text-align: left;
}

 #drawer-to-link-cart a, #drawer-to-link-lottery a{
  border-bottom: 1px solid #777;
  color: chocolate;
  display: block;
  line-height: 3em;
}

/*
2-5.Basic ⇒ title 
----------------------------------------------------------------------------- */

/* 固定ページ */

.text-area h2{
  font-size: 30.6px;
}
.text-area h3{
  font-size: 25.9px;
}
.text-area h4{
  font-size: 22.1px;
}
.text-area h5{
  font-size: 16px;
}

h3, h4, h5{
  color: #333;
}

.archive-list-title .anker-text{
  color: #333;
}

/* h1 = 41.9 */

.index-title,
#archive-title, 
#page-title{
  font-size: 41.9px;
  text-align: center;
}

/* h2 = 30.6 */

.article-title { /* h2 */
  font-size: 30.6px;
}

/* h3 = 25.9 */

.article-title2 { /* h2 */
  font-size: 25.9px;
}

.article-lottery h3{
  font-size: 25.9px;
}

/* h4 = 22.1 */

.article-system,
.article-lottery h4{
  font-size: 22.1px;
}

.form-sub-title, /* h3 */
.privacy-title, /* h2 */
.tlfour{
  font-size: 22.1px;
  margin-bottom: 1rem;
}

.re-tlfour{
  font-size: 16px;
}

/* h5 = 16 */

.article-lottery h5{
  font-size: 16px;
}

.privacy-corpo-name{
  font-size: 16px;
}

/* Pagination */

.paginavi{
  text-align: center;
}

.wp-pagenavi{
  display: inline-block;
  margin: 2em auto;
  padding: 1em;
  text-align: center;
}

.wp-pagenavi a:hover{
  background-color: #FDE6E7;
}

.page-numbers{
  background-color: #D9BD89;
  border-radius: 50%;
  display: inline-block;
  line-height: 3rem;
  height: 3rem;
  margin: 10px;
  width: 3rem;
}

.next, .prev{
  background-color: #E8D7B8;
  font-family: 'ヒラギノ角ゴ ProN', 'Hiragino Kaku Gothic ProN', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', serif;
  font-size: 18px;
}

.current{
  background-color: #E6E6E8;
}

.dots{
  background: none;
}

/* Basic ⇒ submit */

.to_form input[type=submit],
.wpcf7 input[type=submit]{
  border: none;
  font-size: 16px;
	padding: 16px 30px 16px 30px;
	background: #f00;
	color: #fff;
	box-shadow: 1px 1px 4px #DADADA;
	border-radius: 10px;
  margin: 2em auto 2em;
  width: 61.8%;
}

.to_form input[type=submit]:hover,
.wpcf7 input[type=submit]:hover{
	background: #EA7B00;
	color: #fff;
}

/* -----------------------------------------------------------------------------
3.Header
----------------------------------------------------------------------------- */

/* ヘッダースクロール */

.site-header{
  background: rgba(0,0,0,0.8);
  padding-top: 5px;
  height: 70px;
  position: fixed;
  text-align: center;
  top: 0;
  transition: 0.5s;
  width: 100%;
  z-index: 9999;
}

.site-header.hide{
  transform: translateY( -70px );
}

.site-header.hide #site-title {
  display: none;
}

figure{
  display: inline;
  margin: auto;
}

.header-logo{
  height: 60px;
  margin-bottom: 15px;
  width: auto;
}

.one-character-blank::first-letter{
  margin-right: 1em;
}

/* -----------------------------------------------------------------------------
4.Front Page
----------------------------------------------------------------------------- */

#infomation{
  padding-top: 4em;
}

#portrait-cont,
#landscape-cont{
  position: relative;
  text-align: center;
}

#portrait-cont a,
#landscape-cont a{
  color: #fff;
}

.index-to-down-box{
  font-size: 20.1px;
  display: block;
  position: absolute;
  bottom: 50px;
  left: calc(50% - 50px);
  width: 100px;
  z-index: 999;
}

.fa-chevron-down{
  font-size: 30px;
}

.index-to-down{
  animation: index-to-down 2s cubic-bezier(0.250, 0.460, 0.450, 0.940) 1s infinite ;
}

@keyframes index-to-down {
  0% {
    transform: translateY(0);
  }
  100% {
    transform: translateY(10px);
  }
}

.to-information{
  margin-top: 1em;
  text-align: right;
}

.main-phrase{
  background-image: url(../img/mono.jpg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: cover;
  padding-top: 5vw;
  text-align: center;
  width: 100%;
}

.vertical-phrase{
  -ms-writing-mode: tb-rl;
  color: #fff;
  display: inline-block;
  height: 35em;
  line-height: 2em;
  margin: 2.5vw 0;
  text-align: left;
  writing-mode: vertical-rl;
}

.index-products{
  text-align: center;
}

.index-tow-column{
  margin-left: auto;
  margin-right: auto;
  max-width: 880px;
}

.index-tow-column a:hover{
  opacity: 70%;
}

/* -----------------------------------------------------------------------------
5.News List
----------------------------------------------------------------------------- */

.category-name .category-name-in{
  border: 1px solid;
  border-radius: 3px;
  font-size: 12px;
  margin: 3px 10px 3px 0px;
  padding: 0px 3px 2px 3px;
}

.results > .category-name-in{
  border-color: #FF0000;
  color: #FF0000;
}

.news  > .category-name-in{
  border-color: #00B22D;
  color: #00B22D;
}

.update  > .category-name-in{
  border-color: #350DFF;
  color: #350DFF;
}

.new_iconBox{
  color: red;
  font-size: 10px;
}

/* -----------------------------------------------------------------------------
6.固定ページ　おしらせ
----------------------------------------------------------------------------- */

.announce-list-item{
  color: #E53C00;
}

.announce-list-item::after{
  content: "・";
}

.announce-list-item:last-child::after{
  content: none;
}

/* info-factory */

.p-list{
  display: block;
}

.p-title::after{
  content: "：";
}
.p-unit::after{
  content: "本　";
}
.p-price::after{
  content: "円（税込）";
}

.content-img{
  text-align: center;
}

.content-img img{
  margin: auto;
}

.pdf-list-icon{
  height: 30px;
  margin-right: 1em;
  
}

.empha{
  background-color: #f2f2f2;
  display: inline-block;
  padding: 1em;
}

/* -----------------------------------------------------------------------------
7.商品 ＆ オンライン抽選販売 & おしらせ
----------------------------------------------------------------------------- */

/* Page Nav */

.to-down{
  background-color: #f2f2f2;
  padding: 1em 0.5em;
  text-align: center;
}

.to-down:hover{
  background-color: #FEF7EA;
}

/* 共通 */

figcaption{
  font-size: 25.9px;
  line-height: 4em;
  text-align: center;
}

.products_desc{
  font-size: 18px;
  text-align: left;
}

.ar-tow-column-item{
  background-color: #f2f2f2;
  padding: 5vw;
}

/* オンライン抽選販売 & 取扱店一覧 */

.announce{
  background-color: #F2F2F2;
  padding: 5vw;
}

.announce .title{
  color: #8C300F;
  text-align: center;
}

.announce p:first-child{
  display: block;
}

.announce p{
  display: inline-block;
  margin: 0 auto;
}

.announce .list-title{
font-weight: bold;
}

.announce .list-title,
.announce .list-phrase{
  display: inline-block;
  margin: 0;
}

.phrase-list h3,
.phrase-list p{
  margin-left: 8.1px;
}

.announce .list-title::after{
  content: "：";
}

.announce .list-phrase::after{
  content: "　";
}

.to_form{
  text-align: center;
}

.no-cart-url{
  border: none;
  font-size: 16px;
	padding: 16px 30px 16px 30px;
	background: #12527F;
	color: #fff;
	box-shadow: 1px 1px 4px #DADADA;
	border-radius: 10px;
  margin: 2em auto 2em;
  text-align: center;
  width: 61.8%;
}

/* -----------------------------------------------------------------------------
8.取扱店一覧
----------------------------------------------------------------------------- */

.shops-list li{
  border-bottom: 1px solid #d6d6d6;
}

.shops-list li:first-child{
  display: none;
}

.shops-list .area:empty::after{
  content: "　";
}
.shops-list .name{
  display: inline-block;
  font-weight: 900;
}

.shops-list .address{
  display: inline-block;
}

.shops-list .phone{
  display: inline-block;
}

.shops-list li:first-child a{
  text-decoration: none;
}

.shops-list li:first-child a::after{
  content: '電話番号 　　';
}

/* -----------------------------------------------------------------------------
9.お問い合わせ
----------------------------------------------------------------------------- */

.catch-content p{
  font-size: 22.1px;
  margin-bottom: 1em;
}

.contact-phrase{
  font-size: 22.1px;
  margin: auto;
  max-width: 16em;
}

.contct-sub-title,
.contct-sub-phone,
.contct-sub-fax,
.contct-sub-time{
  display: block;
  margin-left: 1em;
}

.contct-sub-title::after{
  content: " ";
}

/* form */

.l-block,
.l-block-box{ /* div */
  display: block;
  margin: 1em auto;
}

.l-block .title,
.l-inblock .title{
  display: block;
}

.l-inblock .wpcf7-select{
  display: inline;
}

.l-block .wpcf7-select{
  display: block;
}

.l-inblock .wpcf7-select,
.l-block .wpcf7-select{
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	border: 1px solid #C2C2C2;
	box-shadow: 1px 1px 4px #EBEBEB;
	-moz-box-shadow: 1px 1px 4px #EBEBEB;
	-webkit-box-shadow: 1px 1px 4px #EBEBEB;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	padding: 7px;
	outline: none;
}

.l-block .wpcf7-text,
.l-block .wpcf7-textarea {
  display: block;
	box-sizing: border-box;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	border: 1px solid #C2C2C2;
	box-shadow: 1px 1px 4px #EBEBEB;
	border-radius: 5px;
	padding: 7px;
	outline: none;
  width: 100%;
}

.l-block .wpcf7-select:focus,
.l-block-box .wpcf7-select:focus,
.l-block .wpcf7-text:focus,
.l-block .wpcf7-textarea:focus{
  background-color: #FEF7EA;
  border-radius: 5px;
}

.submit-blok{
  display: block;
  text-align: center;
}

.inv-recaptcha-holder{
  bottom: 20px;
  position: absolute;
  right: 20px;
}

.wpcf7-response-output{
  border-radius: 5px;
}

/* -----------------------------------------------------------------------------
10.よくあるご質問
----------------------------------------------------------------------------- */

.question::before{
  color: #A51F24;
  content: "Ｑ.";
}

.answer::before{
content: "Ａ.";
}

.question::before,
.answer::first-letter{
  font-size: 22.1px;
}

/* -----------------------------------------------------------------------------
11.個人情報保護基本方針
----------------------------------------------------------------------------- */

.privacy-corpo-list dt{
  font-weight: 400;
}

.privacy-corpo-list dt,
.privacy-corpo-list dd{ /* Reset */
  margin: 0;
}

/* -----------------------------------------------------------------------------
12.Site Map
----------------------------------------------------------------------------- */

.site-map-item{
  text-align: left;
  width: 100%;
}

.site-map-item .sub-menu{
  margin-bottom: 5vw;
}

.site-map-item > li > a{
  border-bottom: 1px solid #333;
  display: block;
  font-size: 22.1px;
}

.site-map-item ul li a{
  color: #333;
}

.menu-item-1071{
  right: 2.5vw;
  position: absolute;
  top: 2.5vw;
}

/* -----------------------------------------------------------------------------
13.404 Not Found
----------------------------------------------------------------------------- */

.not-found-logo{
  height: 35vh;
  margin: 0 auto;
}

/* -----------------------------------------------------------------------------
14.Footer
----------------------------------------------------------------------------- */

footer{
  background-color: #09080D;
  border-top: 1px solid #09080D;
  padding-bottom: 4vw;
  text-align: center;
}

.footer-inner{
  margin: 2.5vw;
  text-align: center;
}

.attention{
  max-width: 880px;
}

.attention-list{
  background-color: #222;
  border-radius: 10px;
  text-align: left;
  color: #fff;
  padding: 4vw;
}

#company-info{
  margin: 2.5vw 0 0;
}

#company-info-inner{
  color: #ccc;
  margin: auto;
  max-width: 320px;
  text-align: center;
}

#company-info .company-info-item-name{
  color: #fff;
  font-size: 1.2em;
}

.footer-logo-mobile{
  height: 60px;
  margin: 1em auto;
}

#copyright{
  color: #fff;
  font-size: 14px;
  padding: 1em 0 0;
  text-align: center;
}

#copyright a{
  color: #ccc;
}