/* CSS Document */
/*タイトル*/
@keyframes title_deco{
  0%{
    opacity:0;
    transform: translateY(100%);
  }
  100%{
    opacity:1;
    transform: translateY(0);
  }
}
@keyframes title{
  0%{
    opacity:0;
    transform: translateY(100%);
  }
  100%{
    opacity:1;
    transform: translateY(0);
  }
}
@keyframes obi{
  0%{
    opacity:1;
    height: 1px;
    right: 100%;
  }
  50%{
    opacity: 1;
    right: 0;
    height: 1px;
  }
  100%{
    opacity:1;
    height: 100%;
  }
}
@keyframes titleup{
  0%{
    opacity: 0;
    transform: translateY(100%);
  }
  100%{
    transform: translateY(0);
    opacity: 1;
  }
}
@keyframes opa{
  0%{
    opacity: 0;
  }
  100%{
    opacity: 1;
  }
}
@keyframes up02{
  0%{
    opacity: 0;
    transform: translateY(2rem);
  }
  100%{
    opacity: 1;
    transform: translateY(0);
  }
}
@keyframes border{
  0%{
    opacity: 0;
    right: 100%;
  }
  100%{
    opacity: 1;
    right: 0;
  }
}
@keyframes slide{
  0% {
  transform: translateX(0);
  }
  100% {
  transform: translateX(-100%);
  }
}
/*コンテンツタイトル*/
div.title.wcvisible > p span:nth-of-type(1){
  animation: title_deco 800ms ease forwards;
}
div.title.wcvisible > p span:nth-of-type(2){
  animation: title_deco 800ms ease 200ms forwards;
}
div.title.wcvisible > p span:nth-of-type(3){
  animation: title_deco 800ms ease 300ms forwards;
}
div.title.wcvisible > p span:nth-of-type(4){
  animation: title_deco 800ms ease 400ms forwards;
}
div.title.wcvisible > p span:nth-of-type(5){
  animation: title_deco 800ms ease 500ms forwards;
}
div.title.wcvisible > p span:nth-of-type(6){
  animation: title_deco 800ms ease 600ms forwards;
}
div.title.wcvisible > p span:nth-of-type(7){
  animation: title_deco 800ms ease 700ms forwards;
}
div.title.wcvisible > p span:nth-of-type(8){
  animation: title_deco 800ms ease 900ms forwards;
}
div.title.wcvisible > p span:nth-of-type(9){
  animation: title_deco 800ms ease 1100ms forwards;
}
div.title.wcvisible > h1{
  animation: title 800ms ease forwards;
}
/*帯タイトル*/
section.top_area div.top_inner > h1.wcvisible > span::before,
section.concept > dl.wcvisible dt span::before{
  animation: obi 800ms ease forwards;
}
div.b_inner > div.left div.b_text_box p.b_title.wcvisible span.t_wrap span{
  animation: titleup 800ms ease 1s forwards;
}
section.top_area div.top_inner > h1.wcvisible > span span,
section.concept > dl.wcvisible dt span span{
  animation: titleup 800ms ease 600ms forwards;
}
/*商品*/
section.product div.product_inbox article.wcvisible div.flex div.p_img{
  animation: opa 1.2s ease forwards;
}
section.contact > p.wcvisible,
section.company > p.wcvisible{
  animation: opa 1s ease forwards;
}
section.product div.product_inbox article.wcvisible div.flex div.product_text > h1 span,
section.product div.product_inbox article.wcvisible div.flex div.product_text p{
  animation: opa 1.2s ease 1s forwards;
}
div.b_inner > div.left div.b_text_box p.b_text.wcvisible{
  animation: opa 800ms ease 1s forwards;
}
section.product div.product_inbox article.wcvisible div.flex div.product_text::before{
  animation: up02 1s ease forwards;
}
div.b_inner > div.left div.b_text_box p.b_title.wcvisible span.t_wrap::after,
section.product div.product_inbox article.wcvisible div.flex div.product_text > h1::after{
  animation: border 1.6s ease forwards;
}
/*実績紹介*/
#wcwrap{
  background-color: rgba(0,0,0,0) !important;
}
body{
  font-family: "Noto Sans JP";
}

/*タイトル*/
div.title{
  flex-direction: column-reverse;
  display: flex;
  margin-bottom: 1.5rem;
}
section.news div.title{
  flex-direction: row;
  align-items: baseline;
  width: 5.5rem;
}
body[wc-view-type="sp"] section.news div.title{
  padding-left: 1rem;
}
div.title > h1{
  font-size: 1.2rem;
  color: #29221a;
  opacity: 0;
  text-align: center;
}
section.company div.title > h1{
  color: #fff;
}
section.news div.title > h1{
  color: #29221a;
  writing-mode: vertical-rl;
}
div.title > p{
  display: flex;
  justify-content: center;
}
section.news div.title > p{
  flex-direction: column;
  width: 2.8rem;
}
div.title > p span{
  color: #29221a;
  font-size: 2.8rem;
  line-height: 1em;
  padding-bottom: 0.5rem;
  font-family: "Gothic";
  font-weight: 700;
  opacity: 0;
}
body[wc-view-type="tb-l"] div.title > p span,
body[wc-view-type="pc"] div.title > p span{
  font-size: 3.5rem;
}
section.company div.title > p span{
  color: #fff;
}
section.news div.title > p span{
  writing-mode: vertical-rl;
   width: 2.8rem;
}
body[wc-view-type="sp"] section.news div.title > p span{
}
body[wc-view-type="tb-l"] section.news div.title > p span,
body[wc-view-type="pc"] section.news div.title > p span{
  width: 3.5rem;
}

/*ボタン*/
div.btn{
  display: table;
  margin: 0 auto;
}
div.btn a{
  display: table;
  padding: 0.75rem 3.5rem 0.75rem 2rem;
  box-sizing: border-box;
  background-color: #753815;
  color: #fff;
  font-size: 1rem;
  text-decoration: none;
  border-radius: 2rem;
  position: relative;
  z-index: 1
}
div.btn a::after{
  content: "";
  position: absolute;
  right: 0.5rem;
  top: 50%;
  transform: translateY(-50%);
  -webkit-mask-image: url("../img/arrow/link_arrow_right.png");
  mask-image: url("../img/arrow/link_arrow_right.png");
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  background-color: #fff;
  width: 2.5rem;
  height: 2.5rem;
}
div.btn_wrap{
  display: table;
  margin: 0 auto;
}
body:not([wc-view-type="sp"]) div.btn_flex{
  display: flex;
}
div.btn_flex div.btn{
  margin: 0 1rem;
}
body[wc-view-type="tb"] div.btn_flex div.btn{
  margin: 0 0.5rem;
}
section.wrap{
  position: relative;
  z-index: 1;
}
section.wrap::before{
  content: "";
  position: fixed;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100vh;
  background-image:url("../img/top/top_background.webp");
  background-size: cover;
  background-position: center;
  background-repeat: no-repeat;
}
body.safari section.wrap::before{
  background-image: url("../img/top/top_background.png");
}
/*スライダー*/
section.top_area{
  background-color: #f2ece0;
  box-sizing: border-box;
  margin-top: 0 !important;
}
body[wc-view-type="sp"] section.top_area{
  box-sizing: border-box;
  height: calc(var(--fixdvh) * 70);
}
body[wc-view-type="tb-l"] section.top_area,
body[wc-view-type="tb"] section.top_area{
  height: calc(500px + 4rem);
  padding-top: 2rem;
}
body[wc-view-type="pc"] section.top_area{
  height: calc(600px + 4rem);
  padding-top: 2rem;
}
section.top_area div.top_inner{
  position: relative;
  z-index: 1;
}
section.top_area div.top_inner > h1{
  position: absolute;
  z-index: 2;
}
body[wc-view-type="sp"] section.top_area div.top_inner > h1{
  left: 1rem;
  top: 2rem;
}
body[wc-view-type="tb"] section.top_area div.top_inner > h1{
  left: 13vw;
  top: 1.2rem;
}
body[wc-view-type="tb-l"] section.top_area div.top_inner > h1{
  left: 20vw;
  top: 1.2rem;
}
body[wc-view-type="pc"] section.top_area div.top_inner > h1{
  left: calc((100vw - 1100px + 2rem) / 2);
  top: 1rem;
}
section.top_area div.top_inner > h1 > span{
  padding: 0 0.75rem 0 0.75rem;
  position: relative;
  z-index: 1;
  display: table;
  font-size: 2.3rem;
  height: 2.8rem;
}
body[wc-view-type="pc"] section.top_area div.top_inner > h1 > span{
  height: 3.5rem;
}
section.top_area div.top_inner > h1 > span::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background-color: #fff;
  z-index: -1;
  opacity: 0;
}
section.top_area div.top_inner > h1 > span span{
  color: #29221a;
  font-size: 1.5rem;
  opacity: 0;
  display: block;
  line-height: 2.8rem;
}
body[wc-view-type="pc"] section.top_area div.top_inner > h1 > span span{
  font-size: 2.3rem;
  line-height: 3.5rem;
}
section.top_area div.top_inner > h1 span:nth-of-type(1){
}
section.top_area div.top_inner > h1 span:nth-of-type(2){
  margin-top: 0.5rem;
}
section.top_area div.top_inner div.slider_box{
}
body[wc-view-type="sp"] section.top_area div.cs_wrap.comboslider-slide{
  height: calc(var(--fixdvh) * 70) !important;
}
body[wc-view-type="tb"] section.top_area div.cs_wrap.comboslider-slide{
  height: 500px !important;
}
body[wc-view-type="tb-l"] section.top_area div.cs_wrap.comboslider-slide{
  height: 500px !important;
}
body[wc-view-type="pc"] section.top_area div.cs_wrap.comboslider-slide{
  height: 600px;
}
body[wc-view-type="sp"] div.topslider > div{
  width: 100vw;
}
body[wc-view-type="tb"] div.topslider > div{
  width: calc((100vw / 1.2) - 2rem);
  margin: 0 1rem;
}
body[wc-view-type="tb-l"] div.topslider > div{
  width: calc((100vw / 1.5) - 2rem);
  margin: 0 1rem;
}
body[wc-view-type="pc"] div.topslider > div{
  width: 1100px;
  margin: 0 1rem;
}
div.topslider > div figure > picture{
  width: 100%;
  display: block;
}
body[wc-view-type="pc"] div.topslider > div figure > picture{
  height: 600px;
}
div.topslider > div figure img{
  width: 100% !important;
  object-fit: cover;
}
body[wc-view-type="sp"] div.topslider > div figure img{
  height: calc(var(--fixdvh) * 70) !important;
}
body[wc-view-type="tb"] div.topslider > div figure img{
  height: 500px !important;
}
body[wc-view-type="tb-l"] div.topslider > div figure img{
  height: 500px !important;
}
body[wc-view-type="pc"] div.topslider > div figure img{
  height: 600px !important;
}
section.top_area div.schedule_banner{
}
section.top_area div.schedule_banner{
  position: absolute;
  z-index: 2;
}
body[wc-view-type="sp"] section.top_area div.schedule_banner{
  width: calc(100vw - 4rem);
  bottom: 1rem;
  left: 50%;
  transform: translateX(-50%);
}
body[wc-view-type="tb"] section.top_area div.schedule_banner{
  width: 300px;
  bottom: 1.2rem;
  right: 13vw;
}
body[wc-view-type="tb-l"] section.top_area div.schedule_banner{
  width: 350px;
  bottom: 1.2rem;
  right: 20vw;
}
body[wc-view-type="pc"] section.top_area div.schedule_banner{
  right: calc((100vw - 1100px + 2rem) / 2);
  bottom: 1rem;
  width: 400px;
}
section.top_area div.schedule_banner a{
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
}
section.top_area div.schedule_banner a span{
  width: 0;
  height: 0;
  opacity: 0;
}
section.top_area div.schedule_banner figure{
}
section.top_area div.schedule_banner figure picture{
  width: 100%;
  height: 100%;
  display: block;
}
section.top_area div.schedule_banner figure img{
  width: 100%;
  height: 100%;
  object-fit: cover;
} 
.cs_pagerwrap.cs-pager-dots .cs_item.wcactive{
  background-color: #753815 !important;
}
/*お知らせ*/
section.news{
  padding: calc(var(--headerHeight) / 2) 0;
  background-color: #fff;
  background-image: linear-gradient(0deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px)), linear-gradient(90deg, transparent calc(100% - 1px), #f0f0f0 calc(100% - 1px));
  background-size: 20px 20px;
  background-repeat: repeat;
  background-position: center center;
}
body[wc-view-type="sp"] section.news{
  padding: var(--headerHeight) 0 calc(var(--headerHeight) * 1.5) 0;
}
body[wc-view-type="tb"] section.news{
  padding: var(--headerHeight) 0 calc(var(--headerHeight) + 10vw) 2rem;
}
body[wc-view-type="tb-l"] section.news{
  padding: var(--headerHeight) 0 calc(var(--headerHeight) + 40px) 2rem;
}
body[wc-view-type="pc"] section.news{
  padding: var(--headerHeight) 0 calc(var(--headerHeight) + 45px) 0;
}
section.news div.news_inner{
  display: flex;
  align-items: flex-start;
  overflow: hidden;
}
body[wc-view-type="pc"] section.news div.news_inner{
  width: 1100px;
  margin: 0 auto;
}
section.news div.news_inner section.news div.title {
  font-size: 1.5rem;
  position: relative;
  z-index: 1;
  padding-bottom: 1rem;
  color: #29221a;
  margin-top: 1rem;
}
body[wc-view-type="sp"] section.news div.news_inner > h1{
  padding-left: 1.5rem;
  font-size: 1.3rem;
}
body[wc-view-type="tb-l"] section.news div.news_inner > h1{
  padding-left: 6rem;
}
section.news div.news_inner > div.news_block{
  margin: 0 auto;
  padding: 1rem;
  box-sizing: border-box;
  border-radius: 2rem;
}
body[wc-view-type="sp"] section.news div.news_inner > div.news_block{
  width: calc(100vw - 6rem);
  margin-left: auto;
  margin-right: 0;
  padding-right: 0;
}
body[wc-view-type="tb"] section.news div.news_inner > div.news_block{
  padding-left: 4rem;
  width: 100vw;
}
body[wc-view-type="tb-l"] section.news div.news_inner > div.news_block{
  width: calc(100vw - 9rem);
  margin-left: auto;
  margin-right: 0;
  padding-right: 0;
}
body[wc-view-type="pc"] section.news div.news_inner > div.news_block{
  width: 950px;
}
section.news div.news_inner > div.news_block div.flex{
  display: flex;
}
body[wc-view-type="tb-l"] section.news div.news_inner > div.news_block div.flex,
body[wc-view-type="tb"] section.news div.news_inner > div.news_block div.flex,
body[wc-view-type="sp"] section.news div.news_inner > div.news_block div.flex{
  -ms-overflow-style: none;
  scrollbar-width: none;
  overflow-x: auto;
  padding-left: 1rem;
  box-sizing: border-box;
}
section.news div.news_inner > div.news_block div.flex article{
  position: relative;
  z-index: 1;
  margin-bottom: 0.5rem;
  background-color: #f2ece0;
  border-radius: 2rem;
  padding-bottom: 1rem;
}
body[wc-view-type="sp"] section.news div.news_inner > div.news_block div.flex article{
  padding-top: 40vw;
  width: calc((100vw / 1.8) - 1rem);
  margin-right: 1rem;
}
body[wc-view-type="tb"] section.news div.news_inner > div.news_block div.flex article{
  padding-top: 23vw;
  width: calc((100vw / 3) - 1.5rem);
  margin-right: 1.5rem;
}
body[wc-view-type="tb-l"] section.news div.news_inner > div.news_block div.flex article{
  width: calc(((100vw - 9rem) / 3) - 1.5rem);
  margin-right: 1.5rem;
}
body[wc-view-type="tb-l"] section.news div.news_inner > div.news_block div.flex article{
  padding-top: 200px;
}
body[wc-view-type="pc"] section.news div.news_inner > div.news_block div.flex article{
  width: calc((100% / 4) - 1rem);
  margin: 0 0.5rem;
  padding-top:155px;
}
section.news div.news_inner > div.news_block div.flex article a{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
  display: block;
}
section.news div.news_inner > div.news_block div.flex article a span{
  width: 0;
  height: 0;
  opacity: 0;
}
section.news div.news_inner > div.news_block div.flex article figure{
  width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  z-index: 2;
}
section.news div.news_inner > div.news_block div.flex article figure picture{
  width: 100%;
  height: 100%;
  display: block;
}
section.news div.news_inner > div.news_block div.flex article figure img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 2rem 2rem 0 0;
}
body[wc-view-type="sp"] section.news div.news_inner > div.news_block div.flex article figure img{
  height: 40vw;
  width: calc((100vw / 1.8) - 1rem);
}
body[wc-view-type="tb"] section.news div.news_inner > div.news_block div.flex article figure img{
  height: 23vw;
  width: calc((100vw / 3) - 1.5rem);
}
body[wc-view-type="tb-l"] section.news div.news_inner > div.news_block div.flex article figure img{
  height: 200px;
  width: calc(((100vw - 9rem) / 3) - 1.5rem);
}
body[wc-view-type="pc"] section.news div.news_inner > div.news_block div.flex article figure img{
  height: 155px;
}
section.news div.news_inner > div.news_block div.flex article div.news_text{
  box-sizing: border-box;
  position: relative;
  z-index: 1;
}
body[wc-view-type="sp"] section.news div.news_inner > div.news_block div.flex article div.news_text{
  width: calc((100vw / 1.8) - 1rem);
}
body[wc-view-type="tb"] section.news div.news_inner > div.news_block div.flex article div.news_text{
  width: calc((100vw / 3) - 1.5rem);
}
body[wc-view-type="tb-l"] section.news div.news_inner > div.news_block div.flex article div.news_text{
  width: calc(((100vw - 9rem) / 3) - 1.5rem);
}
section.news div.news_inner > div.news_block div.flex article div.news_text h1{
  padding-top: 2rem;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  padding-right: 2rem;
  position: relative;
  z-index: 1;
  padding-left: 1rem;
  box-sizing: border-box;
}
section.news div.news_inner > div.news_block div.flex article div.news_text h1::after{
  content: "";
  width: 1.5rem;
  height: 1.5rem;
  background-color: #29221a;
  -webkit-mask-image: url("../img/arrow/link_arrow_right.png");
  mask-image: url("../img/arrow/link_arrow_right.png");
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
  position: absolute;
  right: 0.75rem;
}
section.news div.news_inner > div.news_block div.flex article div.news_text time{
  position: absolute;
  top: 0.5rem;
  right: 0.5rem;
  z-index: 2;
  text-align: right;
  font-size: 0.95rem;
  font-family: 'Numbber';
}
body[wc-view-type="sp"] section.news div.news_inner > div.news_block div.flex article div.news_text time{
  left: 0.5rem;
}
section.news div.btn{
  margin: 1rem auto 0;
}
/*コンセプト*/
section.concept{
  padding: calc(var(--headerHeight) * 1.5) 0;
  background-color: #f2ece0;
  position: relative;
  z-index: 1;
}
body[wc-view-type="sp"] section.concept{
  padding: calc(var(--headerHeight) - 10vw) 0 var(--headerHeight) 0;
}
body[wc-view-type="tb"] section.concept{
  padding: calc(var(--headerHeight) - 10vw) 0 var(--headerHeight) 0;
}
section.concept::before,
section.concept::after{
  content: "";
  position: absolute;
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  background-color: #f2ece0;
  left: 0;
  right: 0;
  height: 2rem;
  width: 100vw;
}
body[wc-view-type="sp"] section.concept::before{
  -webkit-mask-image: url("../img/svg/sp_contenst_top.svg");
  mask-image: url("../img/svg/sp_contenst_top.svg");
  width: 100vw;
  height: 10vw;
  top: -9.5vw;
}
body[wc-view-type="sp"] section.concept::after{
  -webkit-mask-image: url("../img/svg/sp_contents_bottom.svg");
  mask-image: url("../img/svg/sp_contents_bottom.svg");
  width: 100vw;
  height: 10vw;
  bottom: -9.5vw;
}
body[wc-view-type="tb"] section.concept::before{
  -webkit-mask-image: url("../img/svg/pc_contents_top.svg");
  mask-image: url("../img/svg/pc_contents_top.svg");
  width: 100vw;
  height: 10vw;
  top: -10vw;
}
body[wc-view-type="tb"] section.concept::after{
  -webkit-mask-image: url("../img/svg/tb_concept_bottom.svg");
  mask-image: url("../img/svg/tb_concept_bottom.svg");
  width: 100vw;
  height: 10vw;
  bottom: -10vw;
}
body[wc-view-type="tb-l"] section.concept::before{
  -webkit-mask-image: url("../img/svg/pc_contents_top.svg");
  mask-image: url("../img/svg/pc_contents_top.svg");
  width: 450px;
  height: 40px;
  top: -40px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}
body[wc-view-type="pc"] section.concept::before{
  -webkit-mask-image:url("../img/svg/pc_contents_top.svg");
  mask-image:url("../img/svg/pc_contents_top.svg");
  width: 500px;
  height: 48px;
  top: -45px;
  left: 50%;
  transform: translateX(-50%);
  z-index: 2;
}
section.concept > dl{
  line-height: 1.8rem;
  box-sizing: border-box;
}
body[wc-view-type="sp"] section.concept > dl{
  padding: 0 2rem;
}
body[wc-view-type="tb"] section.concept > dl,
body[wc-view-type="tb-l"] section.concept > dl,
body[wc-view-type="pc"] section.concept > dl{
  display: flex;
}
body[wc-view-type="tb-l"] section.concept > dl{
  width: calc(100vw - 12rem);
  margin: 0 auto;
}
body[wc-view-type="pc"] section.concept > dl{
  width: 780px;
  margin: 1rem auto 0 auto;
}
section.concept > dl dt{
  margin-bottom: 1.5rem;
  line-height: 2.3rem;
  text-align: center;
  margin-top: 1rem;
  position: relative;
  z-index: 1;
}
body[wc-view-type="tb"] section.concept > dl dt{
  padding-left: 5rem;
  width: 330px;
}
body[wc-view-type="tb-l"] section.concept > dl dt{
  width:350px;
}
body[wc-view-type="pc"] section.concept > dl dt{
  width:340px;
}
section.concept > dl dt::before{
  content: "";
}
section.concept > dl dt > span{
  position: relative;
  z-index: 1;
  color: #29221a;
  display: table;
  padding: 0.5rem 1rem;
}
section.concept > dl dt > span span{
  opacity: 0;
  color: #29221a;
}
section.concept > dl dt > span::before{
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  height: 1px;
  background-color: #fff;
  z-index: -1;
  opacity: 0;
}
body[wc-view-type="sp"] section.concept > dl dt > span span,
body[wc-view-type="tb"] section.concept > dl dt > span span{
  font-size: 1.7rem;
}
body[wc-view-type="tb-l"] section.concept > dl dt > span span,
body[wc-view-type="pc"] section.concept > dl dt > span span{
  font-size: 1.8rem;
}
section.concept > dl dt > span:nth-of-type(1){
  margin-bottom: 0.5rem;
}
body[wc-view-type="pc"] section.concept > dl dt{
  margin-top: 0;
}
section.concept > dl dd{
  position: relative;
  z-index: 1;
  box-sizing: border-box;
  opacity: 0;
  transition-duration: 1s;
  transition-delay: 800ms;
  transition-timing-function: ease;
}
section.concept > dl.wcvisible dd{
  opacity: 1;
}
body[wc-view-type="sp"] section.concept > dl dd{
  padding: 0 1rem;
}
body[wc-view-type="tb"] section.concept > dl dd{
  width: calc(100vw - (5rem + 330px));
  padding-right: 5rem;
  padding-top: var(--headerHeight);
  padding-left: 0rem;
}
body[wc-view-type="tb-l"] section.concept > dl dd{
  width: calc(100% - 350px);
  padding-top: var(--headerHeight);
}
body[wc-view-type="pc"] section.concept > dl dd{
  width: 440px;
  padding-top: var(--headerHeight);
}
section.concept > dl dd div.concept_text{
}
section.concept > dl dd div.concept_text p{
  margin-bottom: 1.5rem;
  line-height: 2rem;
  color: #29221a;
}
section.concept figure{
  opacity: 0;
  transition-duration: 800ms;
  transition-timing-function: ease;
}
section.concept figure.wcvisible{
  opacity: 1;
}
body[wc-view-type="sp"] section.concept figure{
  width: calc(100vw - 7rem);
  margin: 0 auto;
}
body[wc-view-type="tb"] section.concept figure{
  width: calc(100vw - 12rem);
  margin: 0 auto;
  margin-top: 1.5rem;
}
body[wc-view-type="tb-l"] section.concept figure{
  width: calc(100vw - (350px + 12rem));
  margin: 0 6rem 0 auto;
}
body[wc-view-type="pc"] section.concept figure{
  width: 440px;
  margin-left: auto;
  margin-right: calc((100vw - 780px) / 2);
}
section.concept figure picture{
  width: 100%;
  height: 100%;
  display: block;
}
section.concept figure img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 2rem;
}
body[wc-view-type="tb"] section.concept figure img{
  height: 350px;
}
body[wc-view-type="tb-l"] section.concept figure img{
  height: 320px;
}
body[wc-view-type="pc"] section.concept figure img{
  height: 290px;
}
/*商品紹介*/
section.product{
  padding: var(--headerHeight) 0;
  background-color: #fff;
}
body[wc-view-type="sp"] section.product{
  padding: calc(var(--headerHeight) * 1.5) 0 var(--headerHeight) 0;
}
body[wc-view-type="tb"] section.product{
  padding: calc(var(--headerHeight) + 10vw) 0 var(--headerHeight) 0;
}
section.product > p{
  padding: 0 3.5rem;
  box-sizing: border-box;
  color: #29221a;
  line-height: 1.8rem;
  margin-bottom: 2rem;
  opacity: 0;
  transition-duration: 1s;
transition-delay: 300ms;
transition-timing-function: ease;
}
section.product > p.wcvisible{
  opacity: 1;
}
body[wc-view-type="tb"] section.product > p,
body[wc-view-type="tb-l"] section.product > p,
body[wc-view-type="pc"] section.product > p{
  text-align: center;
  margin-bottom: 5rem;
  margin-top: 1rem;
}
section.product div.product_inbox{
}
section.product div.product_inbox article{
  margin-bottom: calc(var(--headerHeight) * 1.5);
}
body[wc-view-type="sp"] section.product div.product_inbox article:last-of-type{
  margin-bottom: 0;
}
body[wc-view-type="tb"] section.product div.product_inbox article div.flex,
body[wc-view-type="tb-l"] section.product div.product_inbox article div.flex,
body[wc-view-type="pc"] section.product div.product_inbox article div.flex{
  display: flex;
}
body[wc-view-type="tb"] section.product div.product_inbox article:nth-of-type(odd) div.flex,
body[wc-view-type="tb-l"] section.product div.product_inbox article:nth-of-type(odd) div.flex,
body[wc-view-type="pc"] section.product div.product_inbox article:nth-of-type(odd) div.flex{
  flex-direction: row-reverse;
}
section.product div.product_inbox article div.flex div.product_text{
  position: relative;
z-index: 1;
display: flex;
flex-direction: column;
justify-content: center;
}
body[wc-view-type="tb-l"] section.product div.product_inbox article div.flex div.product_text{
  width: 50vw;
}
section.product div.product_inbox article div.flex div.product_text > h1{
  margin-bottom: 0.5rem;
  padding: 0 1rem 0.5rem 1rem;
  box-sizing: border-box;
  transition-property: all;
  position: relative;
  z-index: 1;
}
section.product div.product_inbox article div.flex div.product_text > h1::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  background-color: #29221a;
  z-index: 2;
  height: 1px;
}
section.product div.product_inbox article div.flex div.product_text > h1 span{
  font-size: 1.3rem;
  color: #29221a;
  opacity: 0;
}
body[wc-view-type="tb"] section.product div.product_inbox article:nth-of-type(odd) div.flex div.product_text > h1{
  width: calc(100% - 4rem);
  margin-left: auto;
}
body[wc-view-type="tb"] section.product div.product_inbox article:nth-of-type(even) div.flex div.product_text > h1{
  width: calc(100% - 4rem);
  margin-right: auto;
}
body[wc-view-type="tb-l"] section.product div.product_inbox article:nth-of-type(odd) div.flex div.product_text > h1{
  width: calc(100% - 4.5rem);
  margin-left: auto;
}
body[wc-view-type="tb-l"] section.product div.product_inbox article:nth-of-type(even) div.flex div.product_text > h1{
  width: calc(100% - 4.5rem);
  margin-right: auto;
}
body[wc-view-type="pc"] section.product div.product_inbox article div.flex div.product_text > h1{
  font-size: 1.5rem;
  padding-bottom: 0.75rem;
}
body[wc-view-type="sp"] section.product div.product_inbox article div.flex div.product_text{
  padding: 1.5rem 1rem 1.5rem 6rem;
}
section.product div.product_inbox article div.flex div.product_text::before{
  position: absolute;
  white-space: nowrap;
  font-size: 3rem;
  color: #f2ece0;
  writing-mode: vertical-rl;
  top: -50vw;
  letter-spacing: 0.5rem;
  opacity: 0;
  transition-property: all;
transition-duration:1s;
transition-timing-function: ease;
}
section.product div.product_inbox article.wcvisible div.flex div.product_text::before{
  opacity: 1;
}
body[wc-view-type="tb"] section.product div.product_inbox article div.flex div.product_text::before{
  font-size: 2.5rem;
  top: 0;
}
body[wc-view-type="tb-l"] section.product div.product_inbox article div.flex div.product_text::before{
  font-size: 3.2rem;
  top: 0;
}
body[wc-view-type="pc"] section.product div.product_inbox article div.flex div.product_text::before{
  font-size: 3.5rem;
}
section.product div.product_inbox article:nth-of-type(1) div.flex div.product_text::before{
  content: "Baby castella";
  left: 0;
}
body[wc-view-type="sp"] section.product div.product_inbox article:nth-of-type(1) div.flex div.product_text::before{
  left: 0;
}
body[wc-view-type="pc"] section.product div.product_inbox article:nth-of-type(1) div.flex div.product_text::before{
  left: calc((100vw - 1100px) / 2);
  line-height: 1em;
  top: 0;
}
section.product div.product_inbox article:nth-of-type(2) div.flex div.product_text::before{
  content: "Warabimochi";
  right: 0;
}
body[wc-view-type="sp"] section.product div.product_inbox article:nth-of-type(2) div.flex div.product_text::before{
  left: 0;
  right: auto;
}
body[wc-view-type="pc"] section.product div.product_inbox article:nth-of-type(2) div.flex div.product_text::before{
  right: calc((100vw - 1100px) / 2);
  line-height: 1em;
  top: 0;
}
section.product div.product_inbox article:nth-of-type(3) div.flex div.product_text::before{
  content: "Shaved ice";
  left: 0;
}
body[wc-view-type="sp"] section.product div.product_inbox article:nth-of-type(3) div.flex div.product_text::before{
  left: 0;
}
body[wc-view-type="pc"] section.product div.product_inbox article:nth-of-type(3) div.flex div.product_text::before{
  left: calc((100vw - 1100px) / 2);
  line-height: 1em;
  top: 0;
}
body[wc-view-type="pc"] section.product div.product_inbox article div.flex div.product_text{
  width: 50vw;
  box-sizing: border-box;
}
body[wc-view-type="pc"] section.product div.product_inbox article:nth-of-type(odd) div.flex div.product_text{
  padding-left: calc((100vw - 1100px + 8rem) / 2);
  padding-right: 2rem;
}
body[wc-view-type="pc"] section.product div.product_inbox article:nth-of-type(even) div.flex div.product_text{
  padding-right: calc((100vw - 1100px + 8rem) / 2);
  padding-left: 2rem;
}
div.flex div.product_text p{
  color: #29221a;
  box-sizing: border-box;
  opacity: 0;
}
body[wc-view-type="sp"] div.flex div.product_text p{
  margin-bottom: 1.5rem;
  line-height: 1.8rem;
  padding: 0 1rem;
}
body[wc-view-type="tb"] section.product div.product_inbox article:nth-of-type(odd) div.flex div.product_text p{
  padding: 0 1rem 0 5rem;
}
body[wc-view-type="tb"] section.product div.product_inbox article:nth-of-type(even) div.flex div.product_text p{
  padding: 0 5rem 0 1rem;
}
body[wc-view-type="tb-l"] section.product div.product_inbox article:nth-of-type(odd) div.flex div.product_text p{
  padding: 0 1rem 0 5.5rem;
}
body[wc-view-type="tb-l"] section.product div.product_inbox article:nth-of-type(even) div.flex div.product_text p{
  padding: 0 5.5rem 0 1rem;
}
body[wc-view-type="pc"] div.flex div.product_text p{
  padding: 0.5rem 1.5rem;
}
section.product div.product_inbox article div.btn{
  margin-right: 1rem;
}
body[wc-view-type="tb"] section.product div.product_inbox article:nth-of-type(odd) div.btn{
  margin-right: 1rem;
}
body[wc-view-type="tb"] section.product div.product_inbox article:nth-of-type(even) div.btn{
  margin-right: 4rem;
}
body[wc-view-type="tb-l"] section.product div.product_inbox article:nth-of-type(odd) div.btn{
  margin-right: 1rem;
}
body[wc-view-type="tb-l"] section.product div.product_inbox article:nth-of-type(even) div.btn{
  margin-right: 5.5rem;
}
section.product div.product_inbox article div.flex div.p_img{
  width: 85vw;
  opacity: 0;
}
body[wc-view-type="tb-l"] section.product div.product_inbox article div.flex div.p_img{
  width: 50vw;
}
section.product div.product_inbox article:nth-of-type(odd) div.flex div.p_img{
  margin-left: auto;
  margin-right: 0;
}
section.product div.product_inbox article:nth-of-type(even) div.flex div.p_img{
  margin-right: auto;
  margin-left: 0;
}
body[wc-view-type="sp"] section.product div.product_inbox article div.flex div.p_img{
  margin-left: auto;
  margin-right: 0;
}
body[wc-view-type="pc"] section.product div.product_inbox article div.flex div.p_img{
  width: 50vw;
}
section.product div.product_inbox article div.flex div.p_img figure{
}
body[wc-view-type="pc"] section.product div.product_inbox article div.flex div.p_img figure{
  box-sizing: border-box;
  width: 100%;
}
section.product div.product_inbox article:nth-of-type(odd) div.flex div.p_img figure{
  border-radius: 5rem 0 0 5rem;
}
section.product div.product_inbox article:nth-of-type(even) div.flex div.p_img figure{
  border-radius: 0 5rem 5rem 0;
}
body[wc-view-type="sp"] section.product div.product_inbox article div.flex div.p_img figure{
  border-radius: 5rem 0 0 5rem;
}
section.product div.product_inbox article div.flex div.p_img figure picture{
  width: 100%;
  height: 100%;
  display: block;
}
section.product div.product_inbox article div.flex div.p_img figure img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
body[wc-view-type="sp"] section.product div.product_inbox article div.flex div.p_img figure img{
  height: 50vw;
}
body[wc-view-type="pc"] section.product div.product_inbox article div.flex div.p_img figure img{
  height: 500px;
}
section.product div.product_inbox article:nth-of-type(odd) div.flex div.p_img figure img{
  border-radius: 5rem 0 0 5rem;
}
section.product div.product_inbox article:nth-of-type(even) div.flex div.p_img figure img{
  border-radius: 0 5rem 5rem 0;
}
body[wc-view-type="sp"] section.product div.product_inbox article div.flex div.p_img figure img{
  border-radius: 5rem 0 0 5rem;
}
section.product div.btn{
  margin-top: 1rem;
}
div.delivery_banner{
  display: table;
  margin: var(--headerHeight) auto 0 auto;
  position: relative;
  z-index: 1;
}
div.delivery_banner{
  width: calc(100vw - 4rem);
}
body:not([wc-view-type="sp"]) div.delivery_banner{
  width: 400px;
}
div.delivery_banner a{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  display: block;
  z-index: 2;
}
div.delivery_banner a span{
  display: block;
  width: 0;
  height: 0;
  opacity: 0;
}
div.delivery_banner figure{
}
div.delivery_banner figure picture{
  width: 100%;
  height: 100%;
  display: block;
}
div.delivery_banner figure img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
/*実績紹介*/
section.business{
  padding: var(--headerHeight) 0;
  background-color: #f2ece0;
  position: relative;
  z-index: 1;
}
div.b_inner{
  margin: 0 auto;
  box-sizing: border-box;
  border-radius: 3rem;
  background-color: #fff;
}


body[wc-view-type="tb-l"] div.b_inner,
body[wc-view-type="pc"] div.b_inner{
  display: flex;
  flex-direction: row-reverse;
  padding: 2rem;
  margin-top: 1rem;
  align-items: center;
}
body[wc-view-type="sp"] div.b_inner{
   width: calc(100vw - 4rem);
}
body[wc-view-type="tb-l"] div.b_inner,
body[wc-view-type="tb"] div.b_inner{
   width: calc(100vw - 12rem);
}
body[wc-view-type="pc"] div.b_inner{
   width: 1100px;
}
div.b_inner > div.left,
div.b_inner > div.right{
  width: 100%;
}
body[wc-view-type="tb-l"] div.b_inner > div.left,
body[wc-view-type="tb-l"] div.b_inner > div.right,
body[wc-view-type="pc"] div.b_inner > div.left,
body[wc-view-type="pc"] div.b_inner > div.right{
  width: 50%;
}
div.b_inner > div.left{
}
body[wc-view-type="tb"] div.b_inner > div.left,
body[wc-view-type="sp"] div.b_inner > div.left{
  padding: 2rem 2rem 0 2rem;
  box-sizing: border-box;
}
div.b_inner > div.left div.b_text_box{
  box-sizing: border-box;
  height: 100%;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
body[wc-view-type="tb"] div.b_inner > div.left div.b_text_box,
body[wc-view-type="sp"] div.b_inner > div.left div.b_text_box{
  margin-bottom: 2rem;
}
body[wc-view-type="tb-l"] div.b_inner > div.left div.b_text_box{
  padding-left: 2rem;
}
body[wc-view-type="pc"] div.b_inner > div.left div.b_text_box{
  padding-left: 2rem;
  padding-top: 2rem;
}
div.b_inner > div.left div.b_text_box p.b_title{
}
div.b_inner > div.left div.b_text_box p.b_title span.t_wrap{
  position: relative;
  z-index: 1;
  display: table;
}
div.b_inner > div.left div.b_text_box p.b_title span.t_wrap span{
  font-size: 1.8rem;
  color: #29221a;
  opacity: 0;
}
body[wc-view-type="tb"] div.b_inner > div.left div.b_text_box p.b_title span.t_wrap,
body[wc-view-type="sp"] div.b_inner > div.left div.b_text_box p.b_title span.t_wrap{
  margin: 0 auto;
}
div.b_inner > div.left div.b_text_box p.b_title span.t_wrap:nth-of-type(1){
  margin-bottom: 0.5rem;
}
body[wc-view-type="sp"] div.b_inner > div.left div.b_text_box p.b_title span.t_wrap span{
  font-size: 1.6rem;
}
div.b_inner > div.left div.b_text_box p.b_title span.t_wrap::after{
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  height: 1px;
  background-color: #29221a;
  z-index: 2;
}
div.b_inner > div.left div.b_text_box p.b_text{
  font-size: 0.97rem;
  line-height: 1.8rem;
  color: #29221a;
  padding: 1rem;
  box-sizing: border-box;
  opacity: 0;
}
body[wc-view-type="sp"] div.b_inner > div.left div.b_text_box p.b_text{
  padding: 1rem 0.5rem;
}
body[wc-view-type="tb-l"] div.b_inner > div.left div.b_text_box p.b_text,
body[wc-view-type="pc"] div.b_inner > div.left div.b_text_box p.b_text{
  padding: 2rem 1rem;
}
div.b_inner > div.left div.btn{
  margin-top: auto;
  margin-bottom: 0;
}
body[wc-view-type="tb"] div.b_inner > div.right,
body[wc-view-type="sp"] div.b_inner > div.right{
  padding-bottom: 2rem;
}
div.slid_block{
}
div.slid_block div.b_slider{
}
body[wc-view-type="sp"] div.slid_block div.b_slider div.cs_item{
  width: calc(100vw - 8rem);
  margin: 0 0.5rem;
}
body[wc-view-type="tb"] div.slid_block div.b_slider div.cs_item{
  width: calc(((100vw - 12rem) / 2) - 1rem);
  margin: 0 1rem;
}
body[wc-view-type="tb-l"] div.slid_block div.b_slider div.cs_item{
  width: calc(((100vw - 12rem) / 2) / 1.5);
  margin: 0 0.75rem;
}
body[wc-view-type="pc"] div.slid_block div.b_slider div.cs_item{
  width: calc(518px / 1.5);
  margin: 0 1rem;
}
div.slid_block div.b_slider figure{
}
div.slid_block div.b_slider figure picture{
  width: 100%;
  height: 100%;
  display: block;
}
div.slid_block div.b_slider figure img{
  width: 100% !important;
  height: 100% !important;
  object-fit: cover;
  border-radius: 3rem;
}
body[wc-view-type="tb-l"] div.slid_block div.b_slider figure img{
  height: 230px !important;
}
body[wc-view-type="pc"] div.slid_block div.b_slider figure img{
  height: 280px !important;
}


/*
div.b_inner > div.right{
}
div.b_inner > div.right div.slid_block{
  display: flex;
  overflow: hidden;
  width: 100%;
}
div.b_inner > div.right div.slid_block div.slid_box{
  max-width: max-content;
  width: calc((100vw - 8rem) * 3);
  display: flex;
}
div.b_inner > div.right div.slid_block div.slid_box figure{
}
body[wc-view-type="sp"] div.b_inner > div.right div.slid_block div.slid_box figure{
  width: calc(100vw - 8rem);
  margin: 0 1rem;
}
body[wc-view-type="tb"] div.b_inner > div.right div.slid_block div.slid_box figure,
body[wc-view-type="tb-l"] div.b_inner > div.right div.slid_block div.slid_box figure{
  width: calc((100vw - 12rem) / 1.5);
  margin: 0 1rem;
}
body[wc-view-type="pc"] div.b_inner > div.right div.slid_block div.slid_box figure{
  width: calc((518px / 2) - 1rem);
  margin: 0 0.5rem;
}
div.right div.slid_block div.slid_box figure picture{
  width: 100%;
  height: 100%;
  display: block;
}
div.right div.slid_block div.slid_box figure img{
  width: 100%;
  height: 100%;
  object-fit: cover;
  border-radius: 3rem;
}
body[wc-view-type="sp"] div.right div.slid_block div.slid_box figure img{
  width: calc(100vw - 8rem);
}
body[wc-view-type="tb"] div.right div.slid_block div.slid_box figure img,
body[wc-view-type="tb-l"] div.right div.slid_block div.slid_box figure img{
  width: calc(((100vw - 12rem) / 1.5) - 2rem);
}
body[wc-view-type="pc"] div.right div.slid_block div.slid_box figure img{
  height: 250px;
  width: calc((518px / 2) - 1rem);
}*/

/*SNS*/
div.sns{
  padding: var(--headerHeight) 0;
  background-color: #fff;
}
body:not([wc-view-type="sp"]) div.sns div.sns_inner{
  display: flex;
}
body[wc-view-type="sp"] div.sns div.sns_inner{
  padding: 0 2rem;
  width: 100vw;
  box-sizing: border-box;
}
body[wc-view-type="tb"] div.sns div.sns_inner{
  padding: 0 5rem;
  width: 100vw;
  box-sizing: border-box;
}
body[wc-view-type="tb-l"] div.sns div.sns_inner{
  padding: 0 6rem;
  width: 100vw;
  box-sizing: border-box;
}
body[wc-view-type="pc"] div.sns div.sns_inner{
  width: 1100px;
  margin: 0 auto;
}
body[wc-view-type="tb"] div.sns div.sns_inner > section{
  width: calc((100% / 2) - 2.5rem);
}
body[wc-view-type="tb-l"] div.sns div.sns_inner > section{
  width: calc((100% / 2) - 3rem);
}
body[wc-view-type="pc"] div.sns div.sns_inner > section{
  width: calc((100% / 2) - 6rem);
}
body[wc-view-type="sp"] div.sns div.sns_inner > section.insta{
  margin-bottom: var(--headerHeight);
}
body[wc-view-type="tb"] div.sns div.sns_inner > section.insta{
  margin-right: 2.5rem;
  margin-left: 0;
}
body[wc-view-type="tb"] div.sns div.sns_inner > section.twitter{
  margin-left: 2.5rem;
  margin-right: 0;
}
body[wc-view-type="tb-l"] div.sns div.sns_inner > section.insta{
  margin-right: 3rem;
  margin-left: 0;
}
body[wc-view-type="tb-l"] div.sns div.sns_inner > section.twitter{
  margin-left: 3rem;
  margin-right: 0;
}
body[wc-view-type="pc"] div.sns div.sns_inner > section.insta{
  margin-right: 6rem;
  margin-left: 0;
}
body[wc-view-type="pc"] div.sns div.sns_inner > section.twitter{
  margin-left: 6rem;
  margin-right: 0;
}
div.sns div.sns_inner > section.insta div.insta_box{
  display: flex;
  flex-wrap: wrap;
}
body[wc-view-type="sp"] div.sns div.sns_inner > section.insta div.insta_box{
  height:calc(100vw - 4rem);
}
body[wc-view-type="tb"] div.sns div.sns_inner > section.insta div.insta_box{
  height: calc((100vw - 15rem) / 2);
}
body[wc-view-type="tb-l"] div.sns div.sns_inner > section.insta div.insta_box{
  height: calc((100vw - 18rem) / 2);
}
body[wc-view-type="pc"] div.sns div.sns_inner > section.insta div.insta_box{
  height: 454px;
}
div.sns div.sns_inner > section.insta div.insta_box figure{
  width: calc((100% / 3) - 2px);
  margin: 0 1px 2px 1px;
  height: calc((100% / 3) - 2px);
}
body[wc-view-type="sp"] div.sns div.sns_inner > section.insta div.insta_box figure{
  width: calc(((100vw - 4rem) / 3) - 2px);
  height: calc(((100vw - 4rem) / 3) - 2px);
}
div.sns div.sns_inner > section.insta div.insta_box figure picture{
  width: 100%;
  height: 100%;
  display: block;
}
div.sns div.sns_inner > section.insta div.insta_box figure img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
div.sns div.sns_inner > section.twitter > div.twitter_box{
  width: 100%;
  background-color: #F9C183;
}
body[wc-view-type="tb"] div.sns div.sns_inner > section.twitter > div.twitter_box{
  height: calc((100vw - 15rem) / 2);
}
body[wc-view-type="tb-l"] div.sns div.sns_inner > section.twitter > div.twitter_box{
  height: calc((100vw - 18rem) / 2);
}
body[wc-view-type="pc"] div.sns div.sns_inner > section.twitter > div.twitter_box{
  height: 454px;
}
div.sns div.sns_inner > section > div.btn{
  margin-top: 2rem;
}
/*会社案内*/
section.company{
  padding: var(--headerHeight) 0;
  background-color: rgba(117,56,21,0.5);
}
section.company > p{
  color: #fff;
  line-height: 1.8rem;
  padding: 0 3.5rem;
  box-sizing: border-box;
  opacity: 0;
}
body[wc-view-type="tb-l"] section.company > p,
body[wc-view-type="tb"] section.company > p{
  display: table;
  margin: 0 auto;
  text-align: center;
  width: 50vw;
  padding: 0;
}
body[wc-view-type="pc"] section.company > p{
  display: table;
  margin: 0 auto;
  text-align: center;
}
section.company div.btn{
  margin-top: 2rem;
}
section.company div.btn a{
  background-color: #fff;
  color: #29221a; 
}
section.company div.btn a::after{
  background-color: #29221a;
}
/*募集*/
div.big_btn_area{
  padding: var(--headerHeight) 0;
  background-color: #fff;
}
body[wc-view-type="sp"] div.big_btn_area{
  padding: var(--headerHeight) 2rem;
}
body[wc-view-type="tb"] div.big_btn_area{
  padding: var(--headerHeight) 2rem;
  box-sizing: border-box;
}
body[wc-view-type="tb-l"] div.big_btn_area{
  padding: var(--headerHeight) 4rem;
  box-sizing: border-box;
}
body:not([wc-view-type="sp"]) div.big_btn_area div.b_btn_box{
  display: flex;
}
body[wc-view-type="pc"] div.big_btn_area div.b_btn_box{
  width: 1100px;
  margin: 0 auto;
}
div.big_btn_area div.b_btn_box div.big_btn{
  position: relative;
  z-index: 1;
}
div.big_btn_area div.b_btn_box div.big_btn::before,
div.big_btn_area div.b_btn_box div.big_btn::after{
  content: "";
  position: absolute;
}
div.big_btn_area div.b_btn_box div.big_btn::before{
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 2;
  background-color: rgba(117,56,21,0.5);
}
div.big_btn_area div.b_btn_box div.big_btn::after{
  top: 1rem;
  left: 1rem;
  right: 1rem;
  bottom: 1rem;
  border: solid 1px #fff;
  z-index: 3;
}
body[wc-view-type="sp"] div.big_btn_area div.b_btn_box div.big_btn::after{
  top: 0.5rem;
  left: 0.5rem;
  right: 0.5rem;
  bottom: 0.5rem;
}
body:not([wc-view-type="sp"]) div.big_btn_area div.b_btn_box div.big_btn{
  width: calc((100% / 2) - 1rem);
}
body:not([wc-view-type="sp"]) div.big_btn_area div.b_btn_box div.big_btn:nth-of-type(1){
  margin-right: 1rem;
}
body:not([wc-view-type="sp"]) div.big_btn_area div.b_btn_box div.big_btn:nth-of-type(2){
  margin-left: 1rem;
}
body[wc-view-type="sp"] div.big_btn_area div.b_btn_box div.big_btn:nth-of-type(1){
  margin-bottom: 2rem;
}
body[wc-view-type="sp"] div.big_btn_area div.b_btn_box div.big_btn{
  height: 130px;
}
body[wc-view-type="tb"] div.big_btn_area div.b_btn_box div.big_btn{
  height: 200px;
}
body[wc-view-type="tb-l"] div.big_btn_area div.b_btn_box div.big_btn{
  height: 230px;
}
body[wc-view-type="pc"] div.big_btn_area div.b_btn_box div.big_btn{
  height: 230px;
}
div.big_btn_area div.b_btn_box div.big_btn p{
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  z-index: 4;
  color: #fff;
  font-size: 1.5rem;
  text-align: center;
}
body[wc-view-type="sp"] div.big_btn_area div.b_btn_box div.big_btn p,
body[wc-view-type="tb"] div.big_btn_area div.b_btn_box div.big_btn p{
  font-size: 1.2rem;
}
div.big_btn_area div.b_btn_box div.big_btn p::before{
  display: block;
  color: #fff;
  font-weight: 700;
  font-size: 2.8rem;
}
body[wc-view-type="sp"] div.big_btn_area div.b_btn_box div.big_btn p::before{
  font-size: 1.8rem;
}
body[wc-view-type="tb"] div.big_btn_area div.b_btn_box div.big_btn p::before{
  font-size: 2.3rem;
}
div.big_btn_area div.b_btn_box div.big_btn:nth-of-type(1) p::before{
  content: "Request";
}
div.big_btn_area div.b_btn_box div.big_btn:nth-of-type(2) p::before{
  content: "Recruitment";
}
div.big_btn_area div.b_btn_box div.big_btn figure{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 1;
}
div.big_btn_area div.b_btn_box div.big_btn figure picture{
  width: 100%;
  height: 100%;
  display: block;
}
div.big_btn_area div.b_btn_box div.big_btn figure img{
  width: 100%;
  height: 100%;
  object-fit: cover;
}
div.big_btn_area div.b_btn_box div.big_btn a{
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  z-index: 5;
  display: block;
}
div.big_btn_area div.b_btn_box div.big_btn a span{
  display: block;
  width: 0;
  height: 0;
  opacity: 0;
}
/*お問い合わせ*/
section.contact{
  padding: var(--headerHeight) 0;
  background-color: #f2ece0;
  border-bottom: 1px solid #753815;
}
section.contact > p{
  padding: 0 3.5rem;
  box-sizing: border-box;
  margin-bottom: 1rem;
  line-height: 1.8rem;
  color: #29221a;
  opacity: 0;
}
section.contact > p.wcvisible{
  opacity: 1;
}
body[wc-view-type="tb-l"] section.contact > p,
body[wc-view-type="tb"] section.contact > p{
  width: 50vw;
  margin: 0 auto;
  padding: 0;
  margin-bottom: 1.5rem;
}
body[wc-view-type="tb-l"] section.contact > p{
  text-align: center;
}
body[wc-view-type="pc"] section.contact > p{
  display: table;
  margin: 0 auto;
  text-align: center;
  margin-bottom: 1.5rem;
}
section.contact div.contact_box{
  background-color: #fff;
  width: calc(100vw - 4rem);
  border-radius: 3rem;
  margin: 0 auto;
  padding-top: 2rem;
  padding-bottom: 2rem;
  box-sizing: border-box;
}
body[wc-view-type="tb-l"] section.contact div.contact_box,
body[wc-view-type="tb"] section.contact div.contact_box{
  width: calc(100vw - 12rem);
}
body:not([wc-view-type="sp"]) section.contact div.contact_box{
  display: flex;
}
body[wc-view-type="tb-l"] section.contact div.contact_box{
  width: calc(100vw - 12rem);
}
body[wc-view-type="tb"] section.contact div.contact_box{
  padding: var(--headerHeight) 2rem;
}
body[wc-view-type="tb-l"] section.contact div.contact_box{
  padding: var(--headerHeight);
}
body[wc-view-type="pc"] section.contact div.contact_box{
  width: 1100px;
  margin: 0 auto;
  padding: var(--headerHeight) calc(var(--headerHeight) * 2);
  box-sizing: border-box;
}
body[wc-view-type="tb"] section.contact div.contact_box > div{
  width: calc(100% - (var(--headerHeight) * 2) / 2);
}
body[wc-view-type="pc"] section.contact div.contact_box > div,
body[wc-view-type="tb-l"] section.contact div.contact_box > div{
  width: calc(100% - (var(--headerHeight) * 4) / 2);
}
section.contact div.contact_box > div.tel span,
section.contact div.contact_box > div.mail span{
  display: table;
  margin: 0 auto 1rem auto;
  padding: 0.5rem 2rem;
  border-top: 1px solid #29221a;
  border-bottom: 1px solid #29221a;
}
body[wc-view-type="pc"] section.contact div.contact_box > div.tel span,
body[wc-view-type="pc"] section.contact div.contact_box > div.mail span{
  padding: 0.5rem 3rem;
}
section.contact div.contact_box > div.tel{
  display: table;
  margin: 0 auto 1rem auto;
}
section.contact div.contact_box > div.tel a{
  display: table;
  padding: 0 0rem 0 2.5rem;
  color: #29221a;
  font-family:"Number";
  font-size: 2rem;
  text-decoration: none;
  position: relative;
  z-index: 1;
  font-weight: 700;
}
body[wc-view-type="tb-l"] section.contact div.contact_box > div.tel a,
body[wc-view-type="pc"] section.contact div.contact_box > div.tel a{
  margin: 0 auto;
}
section.contact div.contact_box > div.tel a::before{
  content: "";
  position: absolute;
  top: 50%;
  left: 0;
  transform: translateY(-50%);
  z-index: 1;
  background-color: #29221a;
  width: 2.5rem;
  height: 2.5rem;
  -webkit-mask-image: var(--wciconsrc);
  mask-image: var(--wciconsrc);
  -webkit-mask-position: center center;
  mask-position: center center;
  -webkit-mask-repeat: no-repeat;
  mask-repeat: no-repeat;
  -webkit-mask-size: cover;
  mask-size: cover;
}
section.contact div.contact_box > div.mail a{
  margin: 0 auto;
}