@charset "utf-8";
/* CSS Document */
/* カスタマイズ用CSS */
/* =============================================================

	共通

* ============================================================= */
@font-face {
  font-family: "hannari";
  src: url("/font/hannari.woff") format("woff");
}

body {
  background-color: #fff;
font-family:"Hiragino Kaku Gothic ProN", Roboto, Arial, "メイリオ", Meiryo, sans-serif;
}

p, .h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6, dt, dd {
  color: #000;
}
p {
  font-size: 15px;
  line-height: 1.7;
  margin-bottom: 15px;
  text-align: justify;
}
#privacy p {
  font-size: 14px;
}
h2 {
  text-align: center;
  color: #000;
  font-size: 30px;
  font-family: 'Inria Serif',"hannari",游明朝,YuMincho,"Hiragino Kaku Gothic ProN", Roboto, Arial, "メイリオ", Meiryo, sans-serif;
  margin-top: 6px;
  margin-bottom: 30px;
}
h3 {
  font-weight: 700;
}
.br {
  display: inline-block;
}
img {
  width: 100%;
}
.mt80 {
  margin-top: 80px;
}
.mb20 {
  margin-bottom: 20px;
}
.mt30 {
  margin-top: 30px;
}

.br-1024px {
    display: none;
  }

.br-500px {
    display: none;
  }
  
/*ページトップボタン*/
.ec-blockTopBtn {
  bottom: 96px;
}

/*ヘッダーを全幅*/
.ec-headerNaviRole {
  max-width: 100%;
  padding: 0;
}
/*ヘッダーを固定*/
.ec-headerNaviRole {
  background-color: #fff;
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  height: 102px;
  z-index: 30;
}

.ec-headerRole__navSP .ec-headerNavSP, .ec-headerRole__navSP .h-l-logo, .ec-headerRole__navSP .h-r-cart {
  display: block !important;
}
.ec-headerNaviRole .ec-headerNaviRole__left, .ec-headerNaviRole .ec-headerNaviRole__right {
  width: calc(100% / 2);
}

.h2-icon {
  width: 185px !important;
  display: block;
  margin: 0 auto 0;
}

.pc {
    display: block;
  }
.sp {
    display: none;
  }

@media only screen and (max-width: 1200px) {
  .ec-headerRole__navSP .h-l-logo {
    margin: 0 0 0 10px;
  }
  .ec-headerRole__navSP .h-l-logo img {
    width: 60%;
  }
}
@media only screen and (max-width: 1024px) {
.br-1024px {
    display: block;
  }
}
@media only screen and (min-width: 800px) {
  .ec-headerRole__navSP .ec-headerNavSP, .ec-headerRole__navSP .h-l-logo, .ec-headerRole__navSP .h-r-cart {
    display: none !important;
  }
  .ec-headerNavSP {
    position: fixed;
  }
}
@media only screen and (max-width: 767px) {
  h2 {
    font-size: 23px;
  }
  .mt80 {
    margin-top: 40px;
  }
}
@media only screen and (max-width: 540px) {
	.ec-headerRole {
    display: none;
  }
	.ec-headerNaviRole {
    height: 60px;
  }
  .ec-headerNaviRole .ec-headerNaviRole__left, .ec-headerNaviRole .ec-headerNaviRole__right {
    display: none;
  }
  .ec-headerNavSP {
    display: block;
    background-color: #f4ede2;
    border-radius: 0;
    height: 60px;
    top: 0;
    right: 0px !important; /*ハンバーガーメニュー右側に移動*/
    left: auto;
    width: 60px;
  }
  .ec-headerNavSP .fas {
    vertical-align: bottom;
  }
  .ec-headerRole__navSP .h-r-cart {
    position: fixed;
    top: 23px;
    right: 85px;
    width: 35px;
  }
  .ec-headerRole__navSP .h-l-logo {
    margin: 0;
    padding: 10px 0 0 10px;
    display: block;
	  width: 100%;
  }
  .ec-headerRole__navSP .h-l-logo img {
    width: 53%;
  }
	.h2-icon {
    margin: 0 auto 0;
  }
	.pc {
    display: none;
  }
  .sp {
    display: block;
  }
}
@media only screen and (max-width: 500px) {
.br-500px {
    display: block;
  }
}

/* =============================================================

	ヘッダー

* ============================================================= */
/* TOPページ用　ヘッダー
--------------------------- */
.top_header {
  margin-top: 25px;
}
.top_header h1 {
  text-align: center;
  font-size: 1.5em;
  font-family: "hannari","Sawarabi Mincho","Hiragino Kaku Gothic ProN", Roboto, Arial, "メイリオ", Meiryo, sans-serif;
}
.top_header img {
  display: block;
  margin: auto;
  width: 400px;
}
.top_header .nav {
  max-width: 1400px;
  margin: 36px auto 0;
}
.top_header .nav ul {
  align-items: center;
  background-color: #f4ede2;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  padding: 0;
  list-style: none;
  text-decoration: none;
}
.top_header .nav a {
    background-color: #f4ede2;
    border-right: solid 2px #fff;
    color: #000;
    font-size: 1.4em;
    letter-spacing: -0.05em;
    font-family: "hannari","Sawarabi Mincho","Hiragino Kaku Gothic ProN", Roboto, Arial, "メイリオ", Meiryo, sans-serif;
    text-align: center;
    padding: 10px 0 15px;
    width: 14.25%;
    transition: 0.3s;
    text-decoration: none;
}
.top_header .nav a:last-child {
  border-right: none;
}
.top_header .nav a:hover {
  background-color: #5cc2cf;
}
.ec-headerRole__navSP {
  display: none;
}
@media only screen and (max-width: 1060px) {
    .top_header .nav a{
        font-size: 1.1em;
    }
}
@media only screen and (max-width: 850px) {
  .top_header h1 {
    font-size: 1.7rem;
  }
  .top_header img {
    width: 300px;
  }
  .top_header .nav {
    margin: 23px auto 0;
  }
  .top_header .nav a {
    font-size: 1.55em;
    width: 25%;
    border-bottom: solid 2px #fff;
  }
  .top_header .nav a:nth-child(n+5) {
    width: 33.3%;
    border-bottom: none;
  }
}
@media only screen and (max-width: 540px) {
  .top_header {
    display: none;
  }
  .ec-headerRole__navSP {
    display: block;
    height: 60px;
    position: fixed;
    z-index: 1000;
    background-color: #fff;
    width: 100%;
  }
  .ec-layoutRole .ec-layoutRole__contentTop {
    padding-top: 0;
  }
}
/* 下層ページ用　ヘッダー
--------------------------- */
.sub_header {
  margin-top: 100px;
}
.sub_header h1 {
  text-align: center;
  font-size: 2rem;
}
.sub_header img {
  display: block;
  margin: auto;
  width: 400px;
}
.sub_header .nav {
  max-width: 1400px;
  margin: 36px auto;
}
.sub_header .nav ul {
  align-items: center;
  background-color: #f4ede2;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  padding: 0;
  list-style: none;
  text-decoration: none;
}
.sub_header .nav a {
  background-color: #f4ede2;
  border-right: solid 2px #fff;
  color: #000;
  font-size: 1.4em;
  letter-spacing: -0.05em;
  font-family: "hannari", "Sawarabi Mincho", "Hiragino Kaku Gothic ProN", Roboto, Arial, "メイリオ", Meiryo, sans-serif;
  text-align: center;
  padding: 10px 0 15px;
  width: 14.25%;
  transition: 0.3s;
  text-decoration: none;
}
.sub_header .nav a:last-child {
  border-right: none;
}
.sub_header .nav a:hover {
  background-color: #5cc2cf;
}
.sub_header .login a {
  width: 12.25%;
}
@media only screen and (max-width: 1060px) {
  .sub_header .nav a {
    font-size: 1.1em;
  }
}
@media only screen and (max-width: 850px) {
  .sub_header .nav a {
    font-size: 1.55em;
    width: 25%;
    border-bottom: solid 2px #fff;
  }
  .sub_header .nav a:nth-child(n+5) {
    width: 33.3%;
    border-bottom: none;
  }
  .sub_header .login a:nth-child(n+5) {
    width: 25%;
    border-bottom: none;
  }
  .sub_header .nav a:nth-child(4) {
    border-right: none;
  }
}
@media only screen and (max-width: 540px) {
  .sub_header {
    display: none;
  }
}
/*ロゴ*/
.h-l-logo {
  margin-left: 30px;
}
.h-l-logo img {
  max-width: 300px;
}
/* ナビゲーション */
.h-r-nav ul {
  display: flex;
  list-style-type: none;
  margin-bottom: 0;
}
.h-r-nav li {
  border-right: solid 1px #cacbcb;
  text-align: center;
  width: 100px;
}
.h-r-nav li:nth-child(1) {
  border-left: none;
}
.h-r-nav li, .h-r-nav li a {
  font-size: 12px;
  text-decoration: none;
}
.h-r-nav img {
  display: block;
  margin: 0 auto 8px;
  width: 25px;
}
/* 電話番号・FAX*/
.h-r-tell {
  background-color: #5cc2cf;
  /*border-bottom-left-radius: 5px;*/
  padding: 17px;
}
.h-r-tell .tell p {
  color: #fff;
  display: block;
  font-size: 22px;
  letter-spacing: 2px;
  line-height: 0.6em;
  margin: auto;
  position: relative;
  padding: 0 0 0 46px;
  text-align: left;
  width: 214px;
}
.h-r-tell .tell p small {
  font-size: 12px;
  line-height: 2em;
  letter-spacing: 1px;
}
.h-r-tell .tell p:before {
  background: url("/html/user_data/assets/img/icon/tell.svg") no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 36px;
  left: 0px;
  top: -5px;
  position: absolute;
  width: 36px;
}
.h-r-tell .fax p {
  background-color: #fff;
  color: #5cc2cf;
  display: block;
  font-size: 13px;
  line-height: 1.5em;
  margin: auto;
  position: relative;
  padding: 6px 6px 6px 37px;
  text-align: left;
  width: 205px;
}
.h-r-tell .fax p:before {
  background: url("/html/user_data/assets/img/icon/fax.svg") no-repeat;
  background-size: contain;
  content: "";
  display: inline-block;
  height: 20px;
  left: 7px;
  position: absolute;
  top: 5px;
  width: 20px;
}
@media only screen and (max-width: 1366px) {
  .h-r-tell .tell p {
    font-size: 20px;
    padding: 0 0 0 40px;
  }
  .h-r-tell .tell p:before {
    height: 30px;
    width: 30px;
  }
}
/*カートボタン*/
.ec-cartNavi {
  background: #fff;
  display: block;
  min-width: 100px;
  padding: 0px 17px 0px;
}
/*カート内スクロール設定*/
.ec-cartNaviIsset.is-active {
  max-height: calc(100vh - 100px);
  overflow-y: scroll;
}
@media only screen and (max-width: 1200px) {
  .ec-cartNavi {
    position: fixed;
    top: 32px;
    right: 250px;
  }
  /*カート内表示*/
  .ec-cartNaviIsset.is-active {
    display: block;
    width: 300px;
    margin: auto;
    position: fixed;
    top: 60px;
    max-height: calc(100vh - 100px);
    overflow-y: scroll;
  }
}
@media only screen and (min-width: 541px) and (max-width: 750px) {
  .ec-cartNavi {
    position: fixed;
    top: 32px;
    right: 224px;
    background: none;
  }
  .ec-cartNaviNull.is-active {
    position: fixed;
    top: 60px;
    right: 0px;
  }
}
@media only screen and (max-width: 540px) {
  .ec-cartNavi {
    position: fixed;
    top: 24px;
    right: 28px;
    background: none;
  }
}
/* =============================================================

	フッター

* ============================================================= */
.ec-footerRole {
  background-color: #f4ede2;
  border: none;
}
.ec-footerRole .ec-footerRole__inner {
  max-width: 1400px;
  margin: 0 auto 80px
}
.ec-footerRole .ec-footerTitle {
  background-color: #5cc2cf;
  padding: 20px;
  margin-bottom: 0px;
}
.ec-footerRole .f-l .logo {
  max-width: 300px;
}
.ec-footerRole .f-l p {
  padding: 20px 0 0;
}
.ec-footerRole .f-r ul {
  list-style-type: none;
  padding-left: 0;
}
.ec-footerRole .f-r a {
  color: #000;
  line-height: 1.6em;
  font-size: 14px;
}
.ec-footerRole .f-r p {
  color: #000;
  font-size: 18px;
  font-weight: bold;
  padding-bottom: 0;
  margin: 0;
  width: 100%;
}
@media screen and (min-width: 1200px) {
  .ec-footerRole .col-lg-4 {
    width: 28% !important;
  }
  .ec-footerRole .col-lg-8 {
    width: 72% !important;
  }
}
@media only screen and (max-width: 1200px) {
  .ec-footerRole .ec-footerRole__inner {
    max-width: 100%;
    width: 100%;
    padding-bottom: 0px;
  }
  #sp_fixed_nav {
    display: block;
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 80px;
    background-color: #f4ede2;
    box-shadow: 0px -2px 4px rgb(0 0 0 / 25%);
    z-index: 2;
  }
  #sp_fixed_nav ul {
    align-items: center;
    display: flex;
    list-style-type: none;
    padding: 0;
    justify-content: center;
  }
  #sp_fixed_nav a {
    align-items: center;
    display: flex;
    height: 80px;
    text-align: center;
    justify-content: center;
    width: 50%;
    color: #000;
  }
  #sp_fixed_nav ul a:nth-child(1) {
    background-color: #fff;
    font-size: 19px;
    font-weight: bold;
    position: relative;
  }
  #sp_fixed_nav ul a:nth-child(2) {
    font-size: 18px;
    font-weight: bold;
  }
}
@media screen and (max-width: 1199px) {
  .ec-footerRole .f-l {
    margin-bottom: 40px;
  }
  .ec-footerRole .f-l .logo {
    max-width: 300px;
    display: block;
    margin: auto;
  }
  .ec-footerRole .f-l p {
    padding: 20px 0 0;
    text-align: center;
  }
}
@media screen and (max-width: 850px) {
  .ec-footerRole .ec-footerRole__inner {
    padding-top: 30px;
    padding-right: 15px;
    padding-left: 15px;
  }
}
@media screen and (max-width: 800px) {
  .ec-footerRole .ec-footerTitle {
    margin-bottom: 80px;
  }
}
@media screen and (min-width:800px) {
  #sp_fixed_nav {
    display: none !important;
  }
}
@media screen and (min-width: 769px) {
  .ec-footerRole {
    padding-top: 80px;
    margin-top: 100px;
  }
}
@media screen and (max-width: 540px) {
  .ec-footerRole .f-r p {
    border-bottom: solid 1px;
    padding-bottom: 16px;
  }
  .ec-footerRole .f-r ul {
    border-bottom: solid 1px;
  }
  .ec-footerRole .f-l .logo {
    margin: 20px auto;
  }
	.ec-footerRole .ec-footerRole__inner {
    margin: auto;
    padding: 0 0 50px;
  }
}
/* スマホ画面　カテゴリー　アコーディオンブロック
--------------------------- */
#faq .accordion-area {
  list-style: none !important;
  width: 100% !important;
  max-width: 900px !important;
  margin: 0 auto !important;
  padding: 0 !important;
}
#faq .accordion-area li {
  margin: 10px 0 !important;
}
#faq .accordion-area section {
  border: 1px solid #ccc !important;
}
/*アコーディオンタイトル*/
.f-n-title {
  position: relative; /*+マークの位置基準とするためrelative指定*/
  cursor: pointer;
  font-size: 1rem;
  font-weight: normal;
  padding: 3%;
  transition: all .5s ease;
}
.close {
  opacity: 1 !important;
}
.close:hover {
  opacity: 1;
}
/*アイコンの＋と×*/
.f-n-title::before, .f-n-title::after {
  position: absolute;
  content: '';
  width: 15px;
  height: 2px;
  background-color: #333;
}
.f-n-title::before {
  top: 48%;
  right: 15px;
  transform: rotate(0deg);
}
.f-n-title::after {
  top: 48%;
  right: 15px;
  transform: rotate(90deg);
}
/*　closeというクラスがついたら形状変化　*/
.f-n-title.close::before {
  transform: rotate(45deg);
}
.f-n-title.close::after {
  transform: rotate(-45deg);
}
/*アコーディオンで現れるエリア*/
.f-n-box {
  display: none; /*はじめは非表示*/
  background: #f3f3f3;
  margin: 0;
  padding: 3%;
}
/* =============================================================

	topページ

* ============================================================= */
/*コンテナ幅*/
.front_page .ec-layoutRole .ec-layoutRole__contents{
  max-width: 100%;
  margin: 0 auto;
}


/* カテゴリー
--------------------------- */
.ec-categoryNaviRole {
  width: 100%;
  margin-top: 0;
  padding: 50px 0 0;
  position: relative;
  display: block;
  max-width: 1400px;
}

.ec-itemNav{
    display: block;
    max-width: 1400px;
    margin: auto;
    width: 100%;
}
.ec-itemNav .nav {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  text-decoration: none;
  list-style: none;
  /*gap: 30px;*/
  margin-bottom: 15px;
}

.ec-itemNav .nav a {
  font-size: 1.5em;
  font-family: "hannari","Sawarabi Mincho","Hiragino Kaku Gothic ProN", Roboto, Arial, "メイリオ", Meiryo, sans-serif;
  color: #000;
  margin: auto;
  width: auto;
}
.ec-itemNav .nav a:hover {
  text-decoration: none;
}
.ec-itemNav .nav li{
display: table-cell;
text-align: center;
vertical-align: middle;
height: 60px;
}

/*5カテゴリーカラー*/
.ec-itemNav .nav .c1,
.ec-itemNav .nav .c2,
.ec-itemNav .nav .c3,
.ec-itemNav .nav .c4,
.ec-itemNav .nav .c5
{
    position: relative;
    padding-left: 30px;
}
.ec-itemNav .nav .c1:before{
content: url(/html/user_data/assets/img/icon/c-1-icon.svg);
position: absolute;
left: 0px;
top: 56%;
transform: translateY(-50%);
height: 28px;
width: 25px;
}
.ec-itemNav .nav .c2:before{
content: url(/html/user_data/assets/img/icon/c-2-icon.svg);
position: absolute;
left: 0px;
top: 56%;
transform: translateY(-50%);
height: 28px;
width: 25px;
}
.ec-itemNav .nav .c3:before{
content: url(/html/user_data/assets/img/icon/c-3-icon.svg);
position: absolute;
left: 0px;
top: 56%;
transform: translateY(-50%);
height: 28px;
width: 25px;
}
.ec-itemNav .nav .c4:before{
content: url(/html/user_data/assets/img/icon/c-4-icon.svg);
position: absolute;
left: 0px;
top: 56%;
transform: translateY(-50%);
height: 28px;
width: 25px;
}
.ec-itemNav .nav .c5:before{
content: url(/html/user_data/assets/img/icon/c-5-icon.svg);
position: absolute;
left: 0px;
top: 56%;
transform: translateY(-50%);
height: 28px;
width: 25px;
}
@media screen and (max-width: 1060px){
    .ec-itemNav .nav a {
    font-size: 1.1em;
}
}
@media screen and (min-width: 541px) and (max-width: 850px){
.ec-itemNav .nav {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    list-style: none;
    overflow-x: auto;
    background: #fff;
    /*border-bottom: 1px solid #ccc;*/
    margin-top: 0;
    margin-bottom: 5px;
    padding-bottom: 15px;
}
.ec-itemNav .nav a {
    font-size: 18px;
    margin: 7px;
    display: flex;
    height: 25px;
}

.ec-itemNav .nav .c1, .ec-itemNav .nav .c2, .ec-itemNav .nav .c3, .ec-itemNav .nav .c4, .ec-itemNav .nav .c5 {
    width: 177px;
}
.ec-itemNav .nav .c5 {
    width: 291px;
	}
    .ec-itemNav .nav li {
    height: 31px;
}
}
@media screen and (max-width: 540px){
.ec-itemNav{
    /*padding-top: 70px;*/
}
.ec-itemNav .nav {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: center;
    width: 100%;
    list-style: none;
    overflow-x: auto;
    background: #fff;
    /*border-bottom: 1px solid #ccc;*/
    margin: 0 0 5px;
    padding: 68px 0 10px;
}
.ec-itemNav .nav a {
    font-size: 14px;
    margin: 7px;
    display: flex;
    height: 25px;
}

.ec-itemNav .nav .c1, .ec-itemNav .nav .c2, .ec-itemNav .nav .c3, .ec-itemNav .nav .c4, .ec-itemNav .nav .c5 {
    width: 142px;
}
.ec-itemNav .nav .c5 {
    width: 256px;
	}
    .ec-itemNav .nav li {
    height: 25px;
}
.ec-categoryNaviRole{
    padding: 50px 0;
}
}

/* メイン画像　スライドブロック
--------------------------- */
.top-slisk-block {
  margin-top: 0;
}
.top-slisk-block .main_visual {
  margin: 0 auto;
  width: 100%;
}
.top-slisk-block .main_visual img {
  height: auto;
  width: 100%; /*スライダー内の画像を横幅100%に*/
}
/*slickのJSで書かれるタグ内、スライド左右の余白調整*/
.top-slisk-block .main_visual .slick-slide {
  margin: 0;
}
/*スライドのドットボタンサイズ*/
.slick-dots li button:before {
  width: 8px; 
  height: 8px; 
}
/*TOPスライド矢印*/
.main_visual .slick-prev {
  position: absolute; /*絶対配置にする*/
  top: 50%;
  left: 21.5%;
  height: 40px;
  width: 40px;
  background-image: url(/html/user_data/assets/img/top_header_slider/arrow_l.png) !important;
  background-size: 40px;
  opacity: 0.5;
}
.main_visual .slick-arrow {
  position: absolute; /*絶対配置にする*/
  top: 50%;
  right: 21.5%;
  height: 40px;
  width: 40px;
  z-index: 1;
  background-image: url(/html/user_data/assets/img/top_header_slider/arrow_r.png);
  background-size: 40px;
  opacity: 0.5;
}
.ec-sliderRole {
    margin-bottom: 0;
  }
@media only screen and (max-width: 1200px) {
  .top-slisk-block {
    margin-top: 0;
  }
}
@media only screen and (max-width: 1024px){
.main_visual .slick-arrow {
    top: 44%;
    right: 12.5%;
}
.main_visual .slick-prev {
    top: 44%;
    left: 12.5%;
}
}
@media only screen and (max-width: 540px) {
  .ec-sliderRole {
    margin-bottom: 0;
  }
  .top-slisk-block {
    margin-top: 0;
  }
  .top-slisk-block .main_visual .slick-slide {
    margin: 0;
  }
  .top-slisk-block .main_visual img {
    border-radius: 0;
  }
  .main_visual .slick-arrow {
   right: 2%;
    height: 30px;
    width: 30px;
    background-size: 30px;
}
.main_visual .slick-prev {
    left: 2%;
     height: 30px;
    width: 30px;
    background-size: 30px;
}
}
/*スライド画像の切り替え*/
/*.sp_800px {
  display: none;
}*/
/*横幅850px以下でスマホ用画像に切り替える*/
/*@media screen and (max-width: 850px) {
  .pc_800px {
    display: none;
  }
  .sp_800px {
    display: block;
  }
}*/
/* LINK
--------------------------- */

.ec-itemNav .link {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  max-width: 1400px;
  margin: 50px auto 0;
  padding: 0;
  justify-content: center;
  gap: 15px;
}
.ec-itemNav .link a {
  max-width: 255px;
  width: 100%;
}
.ec-itemNav .link img {
  width: 100%;
}
/*.ec-itemNav .link .link1 {
  background-color: #fdd100;
  border: solid 2px #fff;
}
.ec-itemNav .link .link2 {
  background-color: #fff;
  border: solid 1px #2c843a;
}
.ec-itemNav .link .link3 {
  background-color: #ff8935;
  border: solid 2px #fff;
}
.ec-itemNav .link .link4 {
  border: solid 2px #fff;
  background-color: rgb(221 246 255);
  background-image: repeating-linear-gradient(45deg, transparent, transparent 10px, rgb(194 243 255) 6px, rgb(185 238 255) 20px);
}*/
@media only screen and (max-width: 1350px) {
  .ec-itemNav .link {
    max-width: 1000px;
  }
}
@media only screen and (max-width: 540px) {
  .ec-itemNav .link a {
    max-width: 167px;
    width: 100%;
  }
}
/* おすすめ商品
--------------------------- */
.pickup {
  background-color: #f4ede2;
  padding: 50px 0;
}
.pickup .wrapper{
    max-width: 1400px;
    margin: auto;
}
.lineup-block {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  align-items: center;
  list-style-type: none;
  margin: 50px auto 0;
  padding: 0;
}

.lineup-block .item {
  width: 268px;
  height: 350px;
}

.lineup-block .item .name {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
  margin: 10px 0 0;
}
.lineup-block .item .price{
font-size: 15px;
    line-height: 1.5;
    margin-bottom: 15px;
}

@media screen and (min-width: 1200px) and (max-width: 1420px) {
  .lineup-block {
    width: 1200px;
  }
  .lineup-block .item {
    width: 228px;
  }
}

@media screen and (min-width: 900px) and (max-width: 1199px) {
  .lineup-block {
    width: 900px;
  }
  .lineup-block .item {
    width: 168px;
    height: 246px;
  }
}
@media screen and (max-width: 899px){
.lineup-block .item .name {
    font-size: 14px;
}
}
@media screen and (min-width: 768px) and (max-width: 899px) {
  .lineup-block {
    width: 750px;
  }
  .lineup-block .item {
    width: 176px;
    height: 251px;
  }
}
@media only screen and (max-width: 767px) {
.pickup .wrapper {
    margin: 0 15px 0;
  }
  .lineup-block .item .price{
font-size: 14px;
}
}
@media screen and (min-width: 441px) and (max-width: 767px) {
	 .lineup-block {
    width: 100%;
  }
	.lineup-block .item {
    width: 48%;
    height: auto;
  }
}
@media screen and (max-width: 440px) {
	.lineup-block .item {
    width: 47.5%;
    height: 230px;
  }
}
/* 新着情報
--------------------------- */
#page_homepage .ec-role {
  max-width: 100%;
  background-color: #f4ede2;
}
.ec-newsRole {
  background-color: #f4ede2;
  margin: 0 auto;
  padding: 50px 0;
}
.ec-newsRole .wrapper{
  max-width: 1200px;
  margin: auto;
}
.ec-newsRole h2 {}
.ec-newsRole .ec-newsRole__news {
  border: none;
  padding: 0;
}
.ec-inlineBtn--top {
  display: block;
  margin: 30px auto;
  width: 20%;
  background-color: #fff;
  border: solid 1px #734628;
  border-radius: 0;
  color: #734628;
  padding: 10px 0;
  font-size: 1.2em;
}
.ec-inlineBtn--top:hover {
  background-color: #5cc2cf;
  border: solid 1px #5cc2cf;
}
.ec-newsRole .ec-newsRole__newsCloseBtn {
  background: #5cc2cf;
}
@media only screen and (min-width: 768px){
.ec-newsRole .ec-newsRole__newsItem {
    padding: 10px 0;
}}
@media only screen and (max-width: 700px) {
  .ec-newsRole h2 {
    padding-top: 0px;
  }
  .ec-inlineBtn--top {
    width: 80%;
  }
}
@media only screen and (max-width: 500px) {
  .ec-newsRole {
    margin-bottom: 30px;
  }
}

/* 売上ランキング
--------------------------- */
.ranking{
    max-width: 1400px;
    margin: 50px auto;
}

.ranking .item .icon {
    width: 40px;
    display: block;
    margin: 0 auto 10px;
}

.ranking-block {
  display: flex;
  flex-wrap: wrap;
  gap: 15px;
  align-items: center;
  list-style-type: none;
  margin: 50px auto 0;
  padding: 0;
}

.ranking-block .item {
  width: 268px;
  /*height: 350px;*/
}

.ranking-block .item .name {
  font-size: 15px;
  font-weight: 500;
  line-height: 1.5;
  margin: 10px 0 0;
}
.ranking-block .item .price{
font-size: 15px;
    line-height: 1.5;
    margin-bottom: 15px;
}

@media screen and (min-width: 1200px) and (max-width: 1420px) {
  .ranking-block {
    width: 1200px;
  }
  .ranking-block .item {
    width: 228px;
  }
}

@media screen and (min-width: 900px) and (max-width: 1199px) {
  .ranking-block {
    width: 900px;
  }
  .ranking-block .item {
    width: 168px;
    /*height: 246px;*/
  }
}
@media screen and (max-width: 899px){
.ranking-block .item .name {
    font-size: 14px;
}
}
@media screen and (min-width: 768px) and (max-width: 899px) {
  .ranking-block {
    width: 768px;
  }
  .ranking-block .item {
    width: 180px;
    height: 305px;
  }
}
@media only screen and (max-width: 767px) {
  .ranking {
    margin: 50px 15px;
  }
  .ranking-block .item .price{
font-size: 14px;
}
}
@media screen and (min-width: 441px) and (max-width: 767px) {
	 .ranking-block {
    width: 100%;
  }
	.ranking-block .item {
    width: 48%;
    height: auto;
  }
}
@media screen and (max-width: 440px) {
	.ranking-block .item {
    width: 47%;
    height: 282px;
  }
}
/* =============================================================

	下層ページ

* ============================================================= */
/* 共通
--------------------------- */
/*下層ページの上部にマージン*/
.other_page .ec-layoutRole .ec-layoutRole__contents {
    max-width: 1400px;
    margin: 30px auto 0;
}
@media only screen and (max-width: 540px) {
.other_page .ec-layoutRole .ec-layoutRole__contents {
    margin-top: 60px;
  }
}

.ec-layoutRole .ec-layoutRole__contents {
    max-width: 1400px;
    margin: 30px auto 0;
}
@media only screen and (max-width: 540px) {
.ec-layoutRole .ec-layoutRole__contents {
    margin: 59px auto 0;
  }
}


/* 検索窓 */
#search-wrap {
  display: none;
}
#search-wrap.panelactive {
  display: block;
  position: absolute;
  right: 252px;
  top: 81px;
}

/* タイトル */
.main {
  position: relative;
  background: #fff;
  height: 220px;
  margin: 0 0 40px 0;
  padding: 100px 0 0 0;
  width: 100%;
}
.main .block {
  display: flex;
  justify-content: center;
  align-content: center;
}
.main h1 {
  font-size: 35px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1;
  text-align: center;
  color: #000;
  margin: 0;
}
.main h1:after {
  content: "";
  display: block;
  width: 50px;
  margin: 16px auto 0;
  border: solid 1px #89b13f;
}
.main img {
  width: 192px;
  margin-left: 20px;
}
@media only screen and (max-width: 1024px) {
  .main h1 {
    font-size: 30px;
    line-height: 1.2em;
  }
}
@media only screen and (max-width: 850px) {
  .main {
    height: 200px;
    padding: 75px 0 0 0;
  }
}
@media only screen and (max-width: 500px) {
  .main {
    height: 200px;
    padding: 26px 0 0 0;
  }
  .main h1 {
    margin-top: 58px;
    line-height: 1.2em;
    font-size: 25px;
  }
}
/*
サイドナビゲーション
-------------------------------*/
.ec-layoutRole .ec-layoutRole__left {
  max-width: 250px;
  width: 100%;
  margin-left: 15px;
}
.ec-layoutRole__left h2 {
  background-image: linear-gradient(rgba(0 0 0/0)65%, #f4ede2 65%);
  margin: 0px 0 10px;
  padding: 10px 10px 4px;
  font-size: 20px;
  letter-spacing: 1px;
  text-align: left;
  font-family: Roboto, "游ゴシック", YuGothic, "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
}
.ec-layoutRole__left ul {
  list-style: none;
  padding: 0;
}
.ec-layoutRole .ec-layoutRole__left ul li {
  margin-bottom: 7px;
}
@media only screen and (max-width: 1200px) {
  .ec-layoutRole .ec-layoutRole__left {
    max-width: 200px;
  }
}
@media only screen and (max-width: 600px) {
  .ec-layoutRole .ec-layoutRole__left {
    display: none !important;
  }
}
/*商品検索*/
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {
  background: #fff;
  color: #000;
  border: solid 1px;
  border-top-right-radius: inherit;
  border-top-left-radius: 0px;
  border-bottom-left-radius: 0px;
}
.ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search::before {
  border-top: 6px solid #000;
  top: 1em;
}
.ec-headerSearch .ec-headerSearch__category .ec-select select {
  max-width: 100%;
  height: 36px;
  color: #000;
}
.ec-headerSearch .ec-headerSearch__category {
  float: none;
  width: 100%;
  margin-bottom: 7px;
  /*display: none;*/
}
.ec-headerSearch .ec-headerSearch__keyword {
  float: none;
  width: 100%;
  margin-bottom: 10px;
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
  color: #000;
  border: 1px solid #000;
  background-color: #fff;
}
@media only screen and (min-width: 800px) {
  .ec-headerSearch .ec-headerSearch__category {
    float: none;
    width: 100%;
  }
  .ec-headerSearch .ec-headerSearch__keyword {
    float: none;
    width: 100%;
  }
  .ec-headerSearch .ec-headerSearch__category .ec-select.ec-select_search {
    background: #fff;
    color: #000;
    border: solid 1px;
    border-top-right-radius: inherit;
    border-top-left-radius: 0px;
    border-bottom-left-radius: 0px;
  }
  .ec-headerSearch .ec-headerSearch__category .ec-select select {
    max-width: 100%;
    height: 36px;
    color: #000;
  }
}
/*ランキング*/
.ec-layoutRole__left .ranking{
    margin-bottom: 0 !important;
}

.ec-layoutRole__left .ranking ul li {
  margin-bottom: 0 !important;
}
/*インフォメーション*/
.ec-layoutRole__left ul.information a {
  font-size: 1em;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 16px;
  border-bottom: 1px dashed #e0e0e0;
  color: #000;
  text-decoration: none;
  height: 80px;
}
.ec-layoutRole__left ul.information a:after {
  content: '';
  transform: rotate(45deg);
  width: 8px;
  height: 8px;
  border-top: 2px solid #ccc;
  border-right: 2px solid #ccc;
}
@media screen and (max-width:1200px) {
  .ec-layoutRole__left ul.information a {
    font-size: 0.9em;
    height: 60px;
    padding: 12px;
  }
}

/*
右側ブロック
-------------------------------*/
.ec-layoutRole .ec-layoutRole__mainWithColumn {
  width: 80% !important;
  margin-left: 15px;
}
@media only screen and (min-width: 1025px) and (max-width: 1366px) {
  .ec-layoutRole .ec-layoutRole__mainWithColumn {
    width: 78% !important;
    margin-left: 15px;
    margin-right: 15px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .ec-layoutRole .ec-layoutRole__mainWithColumn {
    width: 70% !important;
    margin-left: 15px;
    margin-right: 15px;
  }
}
@media only screen and (max-width: 767px) {
  .ec-layoutRole .ec-layoutRole__mainWithColumn {
    margin-left: 0;
    margin-right: 0;
    width: 100% !important;
  }
}

/*
ハンバーガーメニュー
------------------------*/
.ec-categoryNaviRole *, .ec-categoryNaviRole *::before, .ec-categoryNaviRole *::after {
  content: none;
}

.left_navi .lcategory {
  border: 1px solid #e0dbd4;
  margin-bottom: 15px;
}
.left_navi .lcategory h3 {
  background-color: #c25d46;
}
/*キーワード*/
.ec-drawerRole .ec-headerSearch {
  padding: 19px 8px 11px;
}
/*カテゴリー一覧*/
.ec-drawerRole .ec-headerCategoryArea .ec-headerCategoryArea__heading {
  background: #fff;
}
.ec-drawerRole .ec-headerCategoryArea .ec-itemNav__nav li a {
  background: #fff;
}
.ec-drawerRole {
  background: #5cc2cf;
}
.ec-drawerRole .ec-headerLinkArea {
  background: #5cc2cf;
}
.ec-drawerRole .ec-headerLinkArea .ec-headerLink__list {
  border-top: 1px solid #5cc2cf;
}
.ec-drawerRole .ec-headerLinkArea .ec-headerLink__item {
  border-bottom: 1px solid #fff;
}
@media only screen and (min-width: 1200px) {

}
@media only screen and (max-width: 1199px) and (min-width: 769px) {

}
@media only screen and (max-width: 768px) and (min-width: 540px) {

}
/*@media only screen and (min-width: 769px){
 .ec-itemNav .nav{
   gap: 33px;  
 }
     .ec-itemNav .nav img {
    width: 100px;
}
}*/
@media only screen and (max-width: 850px) and (min-width: 540px) {

}
@media only screen and (max-width: 540px) {

}


/*右サイドブロック コンテナ*/
.container {
  width: 100% !important;
}
/* =============================================================

	土佐のあさいち便とは

* ============================================================= */
.about .block {
  margin-bottom: 50px;
}
#about h2 {
  background: url("/html/user_data/assets/img/subpage/about/img01.png") no-repeat center center;
  background-size: contain;
  height: 300px;
  position: relative;
  max-width: 1200px;
}
#about h2 p {
  position: absolute;
  top: 14%;
  left: 15%;
  font-size: 1.2em;
  letter-spacing: 3px;
  text-align: left;
}
#about img {
  width: 100%;
}
.about ul li {
  color: #000;
  line-height: 2em;
}

#about .block, #about .block2 {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  padding: 0;
  gap: 15px;
  margin-bottom: 60px;
}
#about .block li {
  width: 49%;
}
#about .block2 li:nth-child(1) {
  width: 63%;
}
#about .block2 li:nth-child(2) {
  width: 38%;
}
#about .block .t, #about .block2 .t {
  display: table;
  line-height: 2.2em;
}
#about .block .t .inner, #about .block2 .t .inner {
  display: table-cell;
  vertical-align: middle;
}

/*関連ページリンクボタン*/
.about .related {
  background-color: #f4ede2;
  border-radius: 1rem;
  margin-top: 3em;
}
.about .related2 {
  background-color: #fff;
  display: block;
  border: solid 1px #cec6bd;
  color: #000;
  font-size: 1.3em;
  margin-top: 10px;
  text-align: center;
  text-decoration: none;
  padding: 20px 0;
  border-radius: 10px;
  width: 350px;
}
#about .related .link {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  max-width: 1200px;
  margin: 30px auto;
  padding: 20px 0;
  justify-content: center;
  gap: 20px;
  background-color: #f4ede2;
}
#about .related .link a {
  background-color: #fff;
  border: solid 1px #cec6bd;
  color: #000;
  font-size: 1.3em;
  text-align: center;
  text-decoration: none;
  padding: 20px 0;
  border-radius: 10px;
  width: 20%;
}
#about .related .link a:hover, #about .related2:hover {
  background-color: #5cc2cf;
  border: solid 1px #5cc2cf;
}
@media screen and (max-width: 1200px) {
  .about .related .link {
    display: block;
  }
  .about .related .link a {
    display: block;
    margin: 0 auto 10px;
    padding: 10px 0;
    width: 100%;
  }
}
@media only screen and (max-width: 1180px) {
  #about .related .link a {
    width: 210px;
  }
}
@media only screen and (max-width: 850px) {
  #about .main {
    position: relative;
    background: #fff;
    height: 280px;
    margin: 0 0 40px 0;
    padding: 76px 0 0 0;
    width: 100%;
  }
  #about .main h1 {
    font-size: 30px;
  }
  #about .main h1 img {
    margin: 0 0 26px 0;
    width: 103px;
  }
  #about .related .link {
    display: block;
  }
  #about .related .link a {
    display: block;
    margin: 0 auto 10px;
    padding: 10px 0;
    width: 80%;
  }
  #about .related .link a:last-child {
    margin: 0 auto;
  }
}

@media screen and (max-width:1199px) {
  #about .block, #about .block2 {
    display: block;
    margin: 0 15px;
  }
}
@media screen and (min-width:541px) and (max-width:1200px) {
  #about h2 {
    background: url("/html/user_data/assets/img/subpage/about/img03.png") no-repeat center center;
    background-size: contain;
    height: 234px;
  }
  #about h2 p {
    position: absolute;
    top: 8%;
    left: 21%;
    font-size: 0.96em;
    letter-spacing: 1.5px;
    line-height: 1.3em;
  }
  #about .block li {
    width: 100%;
    margin-bottom: 30px;
  }
  #about .block2 li:nth-child(1), #about .block2 li:nth-child(2) {
    width: 100%;
  }
}

@media screen and (max-width:540px) {
	  #about h2 {
    background: url("/html/user_data/assets/img/subpage/about/img04.png") no-repeat center center;
    background-size: contain;
    height: 150px;
  }
  #about h2 p {
    position: absolute;
    top: 0%;
    left: 21%;
    font-size: 1em;
    letter-spacing: 2px;
    line-height: 1.5em;
  }
  #about .block li {
    width: 100%;
    margin-bottom: 15px;
  }
  #about .block2 li:nth-child(1), #about .block2 li:nth-child(2) {
    width: 100%;
  }
}
@media screen and (max-width: 500px) {
	.about h2 {
    font-size: 23px;
  }
  .about .related2 {
    width: 250px;
    margin: 10px auto;
  }
	#about .main {
    height: 227px;
    padding: 22px 0 0 0;
  }
  #about .main .block {
    display: block;
  }
  #about .main img {
    width: 133px;
    margin: auto;
    display: block;
  }
}
/* =============================================================

	よくある質問

* ============================================================= */
#faq .f-n-title {
  background-color: #f5f1eb;
  font-size: 18px;
  font-weight: 700;
  line-height: 1.5em;
  margin: 0;
  padding: 24px 40px 24px 22px;
  width: 100%;
}
#faq .f-n-box {
  background-color: #fff;
  font-size: 14px;
  line-height: 1.8em;
  margin-top: 75px;
  padding: 3% 3% 3% 9%;
  position: relative;
}
#faq .f-n-box:before {
  content: "A.";
  position: absolute;
  top: 26px;
  left: 24px;
}
.ec-drawerRole, .ec-drawerRole.is_active, .ec-drawerRoleClose.is_active {
  display: block;
  z-index: 1002;
}
.have_curtain .ec-overlayRole {
  z-index: 1001;
}
@media only screen and (min-width: 1200px) {
  .ec-drawerRole, .ec-drawerRole.is_active, .ec-drawerRoleClose, .ec-drawerRoleClose.is_active {
    display: none;
  }
  .ec-itemNav__nav li a {
    text-align: center;
    border-bottom: none;
  }
}
@media only screen and (min-width: 800px) {
  .have_curtain .ec-overlayRole {
    display: block;
  }
  .ec-itemNav__nav li {
    width: 100%;
  }
}
@media only screen and (max-width: 500px) {
  #faq .f-n-title {
    font-size: 15px;
  }
  #faq .f-n-box {
    padding: 3% 3% 3% 14%;
    margin-top: 95px;
  }
  #faq .f-n-box:before {
    top: 12px;
  }
}
/* =============================================================

	商品一覧

* ============================================================= */
.ec-shelfGrid .ec-select select {
  border-radius: 0;
  width: 100%;
}
/*商品名*/
.ec-shelfGrid__item-image + p {
  font-size: 18px;
  font-weight: 700;
}
.ec-shelfGrid__item-image ~ p {
  margin-bottom: 0;
}
/*3列横並*/
@media only screen and (min-width: 1216px) {
  .ec-shelfGrid .ec-shelfGrid__item-image {
    height: 300px;
  }
  .ec-shelfGrid .ec-shelfGrid__item {
    width: 32.25%;
  }
  .ec-shelfGrid .ec-shelfGrid__item:nth-child(odd) {
    padding: 0;
  }
  .ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {
    padding: 0;
  }
  .ec-shelfGrid {
    gap: 15px;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1215px) {
  .ec-shelfGrid .ec-shelfGrid__item-image {
    height: 215px;
  }
  .ec-shelfGrid .ec-shelfGrid__item {
    width: 31%;
  }
  .ec-shelfGrid .ec-shelfGrid__item:nth-child(odd) {
    padding: 0;
  }
  .ec-shelfGrid .ec-shelfGrid__item:nth-child(even) {
    padding: 0;
  }
  .ec-shelfGrid {
    gap: 15px;
  }
}
@media only screen and (min-width: 800px) {
  .ec-topicpath {
    padding: 0 0 10px;
    border: 0;
    font-size: 16px;
  }
}
@media only screen and (max-width: 500px) {
  .ec-shelfGrid__item-image + p {
    font-size: 15px !important;
  }
  .ec-shelfGrid__item-image ~ p {
    font-size: 14px;
  }
}
/* =============================================================

	商品詳細ページ

* ============================================================= */
.ec-productRole .ec-productRole__description {
font-size: 15px;
color: #000;
line-height: 1.7;
text-align: justify;
}


.ec-productRole__description strong.strong{
font-weight:normal;
}
/*--商品詳細リスト--*/
.product-detail-list dt {
  float: left;
  font-weight: 600;
  padding: 16px 8px;
  width: 100px;
  font-size: 15px;
}
.product-detail-list dd {
  border-top: 1px dashed #e0e0e0;
  font-size: 15px;
  padding: 10px 8px 16px 100px;
  line-height: 2;
}
.ec-productRole__category {
  margin-bottom: 15px;
}
.ec-productRole .ec-productRole__title .ec-headingTitle {
  color: #000;
  text-align: left;
  font-weight: 700;
  line-height: 1.5em;
  width: 87%;
  font-family: Roboto, "游ゴシック", YuGothic, "Yu Gothic", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", Arial, "メイリオ", Meiryo, sans-serif;
}
.ec-productRole .ec-productRole__price {
  color: #000;
  border-bottom: 1px dashed #e0e0e0;
}
@media only screen and (min-width: 1200px) {
  .ec-productRole .ec-productRole__title .ec-headingTitle {
    font-size: 24px;
    margin-bottom: 0;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1200px) {
  .ec-productRole .ec-productRole__title .ec-headingTitle {
    font-size: 22px;
  }
}
@media only screen and (max-width: 540px) {
  .ec-productRole .ec-productRole__title .ec-headingTitle {
    font-size: 17px;
  }
}
.ec-productRole .ec-productRole__priceRegular {
  padding-top: 0;
}
.ec-productRole__description h3 {
  font-size: 22px;
  line-height: 1.5em;
}
@media only screen and (max-width: 540px) {
  .ec-productRole__description h3 {
    font-size: 19px;
  }
}
/*ボタン幅*/
@media only screen and (min-width: 768px) {
  .ec-productRole .ec-productRole__btn {
    width: 60%;
    margin-bottom: 16px;
    min-width: 100% !important;
  }
  .ec-productRole .ec-productRole__actions .ec-select select {
    min-width: 100%;
    max-width: 100%;
    border-radius: 0;
  }
}
/*購入ボタン*/
.ec-blockBtn--action {
  border-radius: 0;
}
/*カートに入れるボタン*/
.ec-numberInput input[type='number'] {
    border-radius: 0;
}
/*キャンセルボタン*/
.ec-blockBtn--cancel {
  background-color: #fff;
  border: 1px solid #ccc;
  border-radius: 0;
  color: #525263 !important;
  width: 100%;
}
.ec-blockBtn--cancel:hover {
  color: #fff !important;
}
/*生産者インタビュー*/
.sub_area h3 {
  background-color: #f4ede2;
  padding: 12px 20px;
  margin-bottom: 20px;
  font-size: 16px;
  font-weight: 700;
}
.sub_area .name {
  color: #000;
  display: block;
  padding: 0px 0 10px;
  font-size: 18px;
  margin: 0;
}

.ec-productRole__title .ec-headingTitle_img {
  margin-top: -40px;
}
/*タグ*/
.ec-productRole .ec-productRole__tags {
  margin-top: 0;
  padding: 0;
  padding-bottom: 0;
  border-bottom: none;
}
/*新商品*/
.ec-productRole__tag.tag_1{
    background: #F4D500;
    color: #fff;
    border: none;
}
/*販売開始*/
.ec-productRole__tag.tag_2{
    background: #00802F;
    color: #fff;
    border: none;
}
/*価格*/
@media only screen and (min-width: 768px) {
  .ec-price .ec-price__price {
    font-size: 0.87em;
  }
}
/*関連カテゴリ*/
.ec-productRole .ec-productRole__category {
  border-bottom: 1px dashed #e0e0e0;
}
/*商品コード*/
.ec-productRole .ec-productRole__code {
  border-bottom: 1px dashed #e0e0e0;
}
/*セット内容*/
.set {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  text-decoration: none;
  list-style: none;
  gap: 30px;
}
.set .list {
  width: 130px;
  text-align: center;
  line-height: 1.5em;
}
.set img {
  width: 130px;
  margin-right: 20px;
}
@media only screen and (max-width: 850px) and (min-width: 501px) {
  .set img {
    width: 104px;
    margin-right: 20px;
  }
  .set .list {
    width: 104px;
  }
}
@media only screen and (max-width: 500px) {
  .set img {
    width: 80px;
    margin-right: 10px;
  }
  .set .list {
    width: 80px;
  }
}

/*原材料表記*/

.product-detail-box-tab_detailTable{
    border: solid 1px #e0e0e0;
    border-width: 1px 0 0 1px;
    border-collapse: collapse;
    width: 100%;
}

.product-detail-box-tab_detailTable th{
    width: 155px;
    padding: 15px;
    border: solid 1px #e0e0e0;
    border-width: 0 1px 1px 0;
    color: #000;
    font-size: 15px;
    text-align: center;
    line-height: 1.6;
    vertical-align: middle;
}

.product-detail-box-tab_detailTable td{
    width: 375px;
    padding: 15px 20px;
    border: solid 1px #e0e0e0;
    border-width: 0 1px 1px 0;
    color: #000;
    font-size: 15px;
    line-height: 1.6;
    vertical-align: middle;
}


/* =============================================================

	特定商取引

* ============================================================= */

/* =============================================================

	代表あいさつ

* ============================================================= */
#greeting .name {
  text-align: center;
  font-weight: 700;
  margin-top: 10px;
}

/* =============================================================

	キャラクタ使用申請

* ============================================================= */

/*トップ画像*/
#permission .top-img {
  max-width: 800px;
  display: block;
  margin: 0 auto 30px;
  width: 100%;
}
/*キャラクター一覧*/
.c-list a .img {
  overflow: hidden;
  height: 272px;
}
.c-list a img {
  width: 65%;
  margin: 15px auto 0;
  display: block;
  transition-duration: 0.3s;
}
.c-list ul {
  display: flex;
  flex-wrap: wrap;
  list-style-type: none;
  padding: 0;
  gap: 28.5px;
}
.c-list ul a {
  width: 31.5%;
  text-decoration: none;
}
.c-list ul a img:hover {
  transform: scale(1.2, 1.2);
  transition-duration: 0.3s;
}
.c-list .t-block {
  background-color: #f4ede2;
  padding: 15px;
}
.c-list .t-block .name {
  font-size: 1.7em;
  line-height: 1.4em;
  text-align: center;
}
.c-list .t-block .name small {
  font-size: 0.6em;
}
.c-list .t-block .tag {
  background: #5cc2cf;
  display: block;
  color: #fff;
  height: 24px;
  letter-spacing: 0.2em;
  line-height: 1.6em;
  margin: 5px auto 8px;
  max-width: 100px;
  padding: 0 5px;
  text-align: center;
}
.c-list .t-block .t {
  background-color: #fff;
  font-size: 13px;
  height: 165px;
  line-height: 1.8em;
  margin: 0;
  padding: 10px;
  text-align: justify;
}


#permission .related{
    background-color: #f4ede2;
    border-radius: 1rem;
    margin: 0;
}


/*ボタン*/
#permission .about .related .link {
    align-items: center;
    display: flex;
    flex-wrap: wrap;
    list-style-type: none;
    max-width: 1200px;
    margin: 0 auto 30px;
    padding: 20px 0;
    justify-content: center;
    gap: 20px;
    background-color: #f4ede2;
}

#permission .about .related .link a {
        background-color: #fff;
    border: solid 1px #cec6bd;
    color: #000;
    font-size: 1.3em;
    text-align: center;
    text-decoration: none;
    padding: 20px 0;
  width: 268px;
}
@media screen and (max-width: 1200px) {
   #permission .about .related .link a {
    display: block;
    margin: 0 auto 10px;
    padding: 10px 0;
    width: 80%;
  }
  #permission .about .related .link a:last-child{
      margin: 0 auto;
  }
}
@media only screen and (max-width: 1000px) {
  #permission .about .related .link {
    display: block;
  }
}
/*ページ内移動ずれ修正*/
.anchor {
  display: block;
  padding-top: 150px !important;
  margin-top: -150px !important;
}
@media screen and (min-width:1200px) and (max-width:1300px) {
  .c-list ul a {
    width: 30.5%;
    text-decoration: none;
  }
}
@media screen and (min-width:900px) and (max-width:1200px) {
  .c-list ul a {
    width: 48%;
    text-decoration: none;
  }
  .c-list ul {
    gap: 25px;
  }
}
@media screen and (min-width:768px) and (max-width:900px) {
  .c-list ul a {
    width: 48%;
    text-decoration: none;
  }
  .c-list ul {
    gap: 17px;
  }
}
@media screen and (min-width:500px) and (max-width:800px) {
  .c-list .t-block .name {
    font-size: 1.5em;
  }
  .c-list a .img {
    overflow: hidden;
    height: 197px;
  }
  .c-list .t-block .t {
    height: 115px;
  }
}
@media screen and (min-width:500px) and (max-width:767px) {
  .c-list ul a {
    width: 100%;
    text-decoration: none;
  }
  .c-list ul {
    gap: 21px;
  }
}
@media screen and (max-width:500px) {
  .c-list ul a {
    width: 100%;
    text-decoration: none;
  }
}
/*使用の流れ*/
ol {
  list-style: none;
  margin: 0;
  padding: 0;
}
.step-detail .item {
  display: flex;
}
.step-detail .number {
  position: relative;
  font-weight: 700;
  font-size: 1.95rem;
  color: #4d747d;
  line-height: 1.25;
  top: -2px;
  width: 148px;
  margin-top: 9px;
}
.step-detail .content {
  -webkit-box-flex: 1;
  flex: 1;
  padding: 0 0 43px;
}
.step-detail .number:before {
  position: absolute;
  top: 0;
  left: 94px;
  content: '';
  width: 10px;
  height: 10px;
  border-radius: 50%;
  background-color: #87d1e1;
  z-index: 1;
}
.step-detail .number:after {
  content: '';
  position: absolute;
  top: calc(0 + 5px);
  left: 98px;
  width: 2px;
  height: calc(42% + 64px);
  background-color: #c2cfc9;
}
.step-detail #section-8 .number:after {
  content: none;
  background-color: #fff;
}
/*キャラクター使用の流れ*/
.step-detail .item {
  display: flex;
  height: 100px;
}
@media only screen and (max-width: 500px) {
  .step-detail .item {
    height: auto;
    display: block;
    margin-bottom: 30px;
  }
  .step-detail .content {
    padding: 0;
  }
  .step-detail .number:before {
    display: none;
  }
  .step-detail .number:after {
    display: none;
  }
}

/*提出先／お問い合わせ先*/

.permission_contact h5 {
    text-align: center;
    font-weight: bold;
    font-size: 20px;
    margin-bottom: 20px;
}

.permission_contact p {
    margin-bottom: 0
    
}

.permission_contact {
    padding: 16px;
    border: 2px solid #87d1e1;
    margin-bottom: 32px;
}

.permission_contact .btn-primary {
    background-color: #87d1e1;
    border-color: #87d1e1;
    border-radius: 0;
    font-size: 18px;
    font-weight: bold;
}


.permission_contact .row {
    display: flex;
}
.permission_contact .col-md-6 {
    display: flex;
    align-items: center;
    justify-content: center;
}

.permission_contact .col-md-6:first-child {
    border-right: 1px solid #c2cfc9;
}

@media only screen and (max-width: 767px) {
.permission_contact .row {
    display: block;
}
.permission_contact .col-md-6:first-child {
    border-right:none;
}
.permission_contact .btn-primary {
    margin: 8px 0;
}
}

@media (min-width: 768px) {
.permission_contact .col-md-6 {
        width: 50%;
    }
}

/* =============================================================

	キャラクター著作物使用に関する規定

* ============================================================= */
#dl_kitei .list {
  border: solid 1px #ccc;
  margin-bottom: 20px;
  padding: 15px;
}
#dl_kitei .about h3 {
  color: #fff;
  font-size: 1em;
  line-height: 1;
  background-color: #b3b3b3;
  display: inline-block;
  margin: 6px;
  padding: 0.45em 0.6em 0.3em;
}
#dl_kitei .about ol {
  color: #000;
  font-size: 1.15em;
  line-height: 1.5em;
  list-style: auto;
  padding-left: 37px;
}
#dl_kitei .main h1 {
  line-height: 1.3em;
}
#dl_kitei .main {
  padding: 61px 0 0 0;
}


/* =============================================================

	キャラクター一覧ページ

* ============================================================= */
.list-b a {
  text-decoration: none;
}
.list-b ul {
  align-items: center;
  border: solid 10px #f4ede2;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  list-style: none;
  padding: 20px 0;
  text-decoration: none;
  margin: 0 0 30px 0;
}
.list-b li:nth-child(1) {
  width: 40%;
}
.list-b li:nth-child(2) {
  width: 60%;
}
.list-b .img img {
  display: list-b;
  margin: auto;
}
.list-b .name {
  font-size: 2.5em;
  margin: 0;
  line-height: 1.3em;
}
.list-b .name small {
  font-size: 0.6em;
}
.list-b .t {
  border-top: dotted 1px #8b8b8b;
  font-size: 1.15em;
  padding: 10px 0 0 0;
  margin-right: 33px;
  text-align: justify;
}
.list-b .tag {
  background: #5cc2cf;
  color: #fff;
  display: block;
  letter-spacing: 0.2em;
  margin: 8px 0 16px;
  max-width: 124px;
  padding: 2px 5px;
  text-align: center;
}
@media only screen and (max-width: 800px) {
  .list-b .name {
    font-size: 2.3em;
  }
  .list-b .name small {
    font-size: 0.5em;
  }
}
@media only screen and (max-width: 540px) {
  .list-b li:nth-child(1) {
    width: 100%;
  }
  .list-b li:nth-child(2) {
    width: 100%;
  }
  .list-b .t {
    margin: 0 1em;
  }
  .list-b .name {
    text-align: center;
  }
  .list-b .tag {
    margin: 8px auto 16px;
  }
}

/* =============================================================

	キャラクター使用上の注意

* ============================================================= */
#c-caution .inner-b {
  border: solid 1px #ccc;
  margin-bottom: 20px;
  padding: 20px;
}

#c-caution h2{
    text-align: left;
    font-family: "Hiragino Kaku Gothic ProN", Roboto, Arial, "メイリオ", Meiryo, sans-serif;
    font-size: 20px;
    color: #525151;
    background-color: #f4ede2;
    padding: 10px;
    margin-bottom: 30px;
}

#c-caution .inner-b p {
  margin: 0;
  text-align: center;
}
#c-caution .inner-b strong {
  font-size: 1.3em;
  margin-left: 30px;
}
#c-caution .inner-b ul {
  list-style: none;
  text-align: center;
  margin-top: 20px;
}
#c-caution .inner-b li {
  margin-bottom: 10px;
}
#c-caution .inner-b .box {
  width: 250px;
  margin: auto;
}
#c-caution .inner-b .box p {
  text-align: left;
}
#c-caution tbody {
  border: solid 1px #ccc;
}
#c-caution tbody img {
  display: block;
  margin: 20px auto;
  width: 80%;
}
#c-caution tbody td {
  border-bottom: solid 1px #ccc;
}
#c-caution tbody tr td:nth-child(1) {
  border-right: solid 1px #ccc;
  width: 40%;
}
#c-caution tbody tr td:nth-child(2) {
  padding: 20px;
}
@media only screen and (max-width: 540px) {
    #c-caution .inner-b {
  padding: 1em;
}
  #c-caution .inner-b strong {
    font-size: 1.2em;
    margin-left: 0;
  }
  #c-caution .inner-b ul {
    padding: 0;
  }
  #c-caution .inner-b .box {
    width: 50%;
    margin: auto;
  }
  #c-caution tbody tr td:nth-child(2){
      padding: 1em;
  }
}


/* =============================================================

	ショッピングカート

* ============================================================= */
@media only screen and (max-width: 850px) {
  .ec-cartRole .ec-cartRole__actions {
    width: 100% !important;
  }
}
/* =============================================================

	ログイン

* ============================================================= */
@media only screen and (max-width: 850px) {
  .ec-grid3 {
    display: block !important;
  }
  .ec-grid3 .ec-grid3__cell2 {
    width: 100%;
  }
  .ec-grid3 .ec-grid3__cell {
    width: 100%;
    margin-top: 20px;
  }
}
/* =============================================================

	ご注文手続き

* ============================================================= */
@media only screen and (max-width: 850px) {
  .ec-orderRole {
    display: block !important;
  }
  .ec-orderRole .ec-orderRole__detail {
    width: 100%;
  }
  .ec-orderRole .ec-orderRole__summary {
    margin-top: 0 !important;
    width: 100%;
  }
  .ec-input textarea, .ec-halfInput textarea, .ec-numberInput textarea, .ec-zipInput textarea, .ec-telInput textarea, .ec-select textarea, .ec-birth textarea {
    width: 100%;
  }
}
/*お届け先追加ボタン*/
.btn2 {
  width: 100%;
  background-color: #DE5D50;
  color: #fff;
  border: none;
  border-radius: 5px;
}
/*お届け先の複数指定*/
@media only screen and (min-width: 800px) and (min-width: 800px) {
  .ec-off4Grid .ec-off4Grid__cell {
    width: 50%;
  }
}
/* =============================================================

	初めての方へ

* ============================================================= */
#beginner p {
  text-align: justify;
}


/* =============================================================

	ご利用ガイド

* ============================================================= */
#guide section {
  margin-bottom: 60px;
}
#guide h2 {
  text-align: left;
  font-family: "Hiragino Kaku Gothic ProN", Roboto, Arial, "メイリオ", Meiryo, sans-serif;
  font-size: 20px;
  color: #525151;
  background-color: #f4ede2;
  padding: 10px;
  margin-bottom: 30px;
}
#guide h2 span {
  font-weight: normal;
  padding-right: 10px;
}
#guide h3 {
  font-size: 18px;
    font-weight: normal;
    margin-bottom: 20px;
}

#guide h4{
    font-size: 18px;
}

#guide p{
font-size: 14px;
    line-height: 1.6;
}

#guide .blank {
    margin-top: 2em;
}

#guide .h4 {
    font-weight: bold;
    color: #454545;
}

#guide p{
    font-size: 14px;
}

#guide ul {
  padding-left: 16px;
  margin-top: 20px;
  /*list-style: none;*/
}

#guide hr{
	border-top: 1px dotted #b3b3b3;
}

#guide mt15 {
  margin-top: 15px;
}

#guide table{
    margin-top: 20px;
}

#guide th,
#guide td{
    color: #000;
    padding-bottom: 5px;
}

#guide th{
width: 20%;
}

#guide .btn{
display: inline-block;
font-size: 13px;
color: #fff;
line-height: 1.42857;
border-color: #5cc2cf;
background-color: #5cc2cf;
padding: 6px 17px;
margin-top: 15px;
max-width: 100%;
border-radius: 0;
}
/*送料*/
#guide .fee_list{
    display: flex;
    justify-content: left;
    text-align: center;
    height: inherit;
    gap: 17px;
    list-style-type: none;
    padding: 0;
}

#guide .fee_list li{
border: solid 1px #ccc;
    padding: 0 20px;
}

#guide .fee_list strong{
    padding-left: 10px;
}

@media only screen and (max-width: 1240px){
#guide .fee_list{
    display: block;
    text-align: left;
    height: inherit;
}
#guide .fee_list li {
    padding: 5px 20px;
    margin-bottom: 5px;
}
}

/* =============================================================

	ログインページ

* ============================================================= */

@media only screen and (min-width: 768px){
.ec-login {
    margin: 0;
    padding: 30px 13% 60px;
    width: 100%;
}}
@media only screen and (min-width: 768px) and (min-width: 768px){
.mypage .ec-off2Grid .ec-off2Grid__cell {
    width: 80%;
    margin: auto;
}}

/* =============================================================

	プライバシーポリシー

* ============================================================= */
#privacy section{
    margin-bottom: 60px;
}
#privacy h3{
    text-align: left;
    font-family: "Hiragino Kaku Gothic ProN", Roboto, Arial, "メイリオ", Meiryo, sans-serif;
    font-size: 20px;
    font-weight: normal;
    color: #525151;
    background-color: #f4ede2;
    padding: 10px;
    margin-bottom: 30px;
}

#privacy h3 span {
    font-weight: normal;
    padding-right: 10px;
}

#privacy ol{
    font-size: 14px;
    color: #000;
    list-style: auto;
    padding-left: 20px;
    line-height: 1.6;
}

/* =============================================================

	特定商取引に関する法律に基づく表記

* ============================================================= */
#transaction h3{
    font-size: 14px;
    font-weight: bold;
    color: #454545;
}

#transaction p,
#transaction li,
#transaction strong{
font-size: 14px;
text-align: justify;
    line-height: 1.6;
}

#transaction strong{
    color: red;
    font-weight: normal;
}

#transaction ul{
    padding-left: 20px;
    
}
#transaction .fee_list{
    display: flex;
    justify-content: left;
    text-align: center;
    height: inherit;
    gap: 7px;
    list-style-type: none;
    padding: 0;
}
#transaction .fee_list li {
    border: solid 1px #ccc;
    padding: 10px 5px;
    line-height: 1.5em;
}
#transaction .fee_list li strong{
    color: #000;
}
.ec-borderedDefs p {
  line-height: 2em;
}
.ec-borderedDefs dd {
  line-height: 2em;
}
/*会社概要*/
.ec-borderedDefs dd {
  font-size: 15px;
}
.ec-borderedDefs dt {
  font-size: 18px;
}
.left_navi .lprofile {
  margin-bottom: 15px;
}
.left_navi .lprofile h3 {
  background-color: #6c8025;
  margin-bottom: 10px;
}

#transaction .tbl{
    margin-bottom: 20px;
}

#transaction th {
    width: 15%;
}
@media only screen and (min-width: 800px) and (min-width: 800px) {
  .ec-off1Grid .ec-off1Grid__cell {
    width: 100%;
    margin-left: 0;
  }
}
@media only screen and (min-width: 800px) {
  .ec-borderedDefs dt {
    display: flex;
    align-items: center;
    padding-right: 10px;
  }
  .ec-borderedDefs dt, .ec-borderedDefs dd {
    padding-top: 0px;
  }
  .ec-borderedDefs dl {
    flex-wrap: nowrap;
    padding: 16px 0;
  }
}
@media only screen and (max-width: 1240px){
#transaction .fee_list {
    display: block;
    text-align: left;
    height: inherit;
}
#transaction .fee_list li {
    padding: 5px 20px;
    margin-bottom: 5px;
}
#transaction th,
#transaction td{
    display: block;
    width: 100%;
}
}

/* =============================================================

	休業日お知らせ

* ============================================================= */
.top-news{
margin: 45px 1em;
}

.top-news h2{
    text-align: center;
    margin: 0 0 25px;
    color: #5cc2cf;
}

.top-news p{
text-align: center;
    margin: 0;
}
.top-news img {
  width: 100%; 
 
 
 } 
/* =============================================================

	商品詳細
* ============================================================= */
/*画像の上の画像切替の矢印（＜＞）*/
#page_product_detail .slick-prev {
    position: absolute;
    top: 40%;
    left: 3%;
    z-index: 20;
    text-indent: 150%;
    white-space: nowrap;
    overflow: hidden;
    border: none;
    background: transparent;
     width: 30px;
    height: 50px;
    opacity: 0.6;
    font-size: 0;
   }

#page_product_detail .slick-next {
    position: absolute;
    top: 40%;
    right: 3%;
    z-index: 20;
    text-indent: 150%;
    white-space: nowrap;
    overflow: hidden;
    border: none;
    background: transparent;
    width: 30px;
    height: 50px;
    opacity: 0.6;
    font-size: 0;
}

#page_product_detail .slick-prev::before {
    content: '';
    display: block;
    position: absolute;
    width: 16px;
    height: 2px;
    border-radius: 5px;
    background: #666666;
    top: 22px;
    left: 6px;
    transform: rotate(130deg);
}

#page_product_detail .slick-prev::after {
    content: '';
    display: block;
    position: absolute;
    width: 16px;
    height: 2px;
    border-radius: 5px;
    background: #666666;
    top: 33px;
    left: 6px;
    transform: rotate(-130deg);
}

#page_product_detail .slick-next::before {
    content: '';
    display: block;
    position: absolute;
    width: 16px;
    height: 2px;
    border-radius: 5px;
    background: #666666;
    top: 22px;
    right: 6px;
    transform: rotate(50deg);
}
#page_product_detail .slick-next::after {
    content: '';
    display: block;
    position: absolute;
    width: 16px;
    height: 2px;
    border-radius: 5px;
    background: #666666;
    top: 33px;
    right: 6px;
    transform: rotate(-50deg);
    
}
#page_product_detail .slick-slider {
    position: relative;
}