@charset "utf-8";


/*****************************************************

    基本設定、リンクカラーなど

*****************************************************/
body {
     font-family: 'Noto Sans JP', sans-serif;
}

a {
  color: #555;
  text-decoration: none;
}

a :hover{
    cursor: pointer;
    opacity: 0.6;
}



.cls1205{
  aspect-ratio: 12/5;
}


.cls {
    height: auto;
    width: 100%;
}


/*****************************************************

    基本設定、リンクカラーなどend

*****************************************************/



.t-center{
  text-align: center;
}

.t-left{
  text-align: left;
}

.t-right{
  text-align: right;
}

.va-middle{
  vertical-align: middle;
}

.va-top{
  vertical-align: top;
}

.va-btm{
  vertical-align: bottom;
}

.posi_r{
  position: relative;
}

.dis-tbl{
  display: table;
}

.dis-blc{
  display: block;
}

.flex-center{
  align-items: center;
  display: flex;
  justify-content: center;
}

.flex{
  display: flex;
}


.line-h0{
  line-height: 0;
}


.line-h14{
  line-height: 1.4;
}


.line-h18{
  line-height: 1.8;
}


/*** 三角図形 ****/

.triangle{
  border-left: 20px solid transparent;
  border-right: 20px solid transparent;
  border-bottom: 20px solid #667895;
  height: 0;
  width: 0;
}


/*** レビューやカートボタンの説明BOX ****/

.btn-copy{
  background-color: #667895;
  color: white;
  padding: 10px;
  width: 100%;
}



.hr-border{
  border-style: dashed;
}










/*********** title-bar ***********/


.title-bar{
  box-sizing:border-box;
  border-left: solid 5px #222;
  background-color: #eee;
  border-radius: 2px;
  font-weight: normal;
  margin: 10% 0 5%;
  padding: 12px 10px;
  text-align: left;
  width: 100%;
}


/********* title-bar end *********/












/*********** copy-bar ***********/



.copy-bar{
  display: grid;
}

.copy-bar .g1 p{
  border-radius: 50%;
  background-color: aliceblue;
  font-weight: bold;
  text-align: center;
  vertical-align: middle;
}

.copy-bar .g2{
  align-items: center;
  display: flex;
  font-weight: bold;
  justify-content: center;
  padding: 10px;
  text-align: center;
}



/********* copy-bar end *********/













/********** menu-btn **********/



.menu-btn-pink > div {
  background-color: #F7A4A5;
}

.menu-btn-orange > div {
  background-color: #F5A634;
}

.menu-btn {
  display: grid;
  grid-template-columns: repeat(3,1fr);
}

.menu-btn div {
  display: table;
  min-width: 0;
  width: 100%;
}

.menu-btn a {
  color: #fff;
  display: table-cell;
  padding: 10% 0;
  text-decoration: none;
  vertical-align: middle;
}


/******** menu-btn end ********/













/******* 404ページ ボタン *******/

.er-404-btn{
  background-color: black;
  border-radius: 30px;
  color: white;
  padding: 10px 40px;
}

/***** 404ページ ボタン end *****/









/******* 離島注意書き *******/

.ritou-box{
  background-color: #c0c0c0;
  padding: 20px;
}

.ritou-box span{
  color: #b5272d;
}


/******* 離島注意書き end ****/








/******* 会員ログアウトボタン *******/

.logout-btn{
  background-color: #444444;
  padding: 15px;
  width: 45%;
}
.logout-btn a{
  color: white;
  text-decolation: none;
}


/**** 会員ログアウトボタン end ****/









/*********** position ***********/


.posi-r {
  position: relative;
}

.posi-a {
  position: absolute;
}


/********* position end *********/













/*********** margin ***********/




.mg-auto {
  margin: 0 auto;
}

.mgtop-10{
  margin-top:10px;
}

.mgtop-15{
  margin-top:15px;
}

.mgtop-30{
  margin-top:30px;
}

.mgtop-50{
  margin-top: 50px;
}

.mgtop-60{
  margin-top: 60px;
}

.mgtop-100{
  margin-top: 100px;
}
	
.mgtop-005{
  margin-top: 5%;
}
	
.mgtop-010{
  margin-top: 10%;
}

.mgtop-017{
  margin-top: 17%;
}

.mgtop-025{
  margin-top: 25%;
}

.mgbtm-5{
  margin-bottom: 5px;
}

.mgbtm-10{
  margin-bottom: 10px;
}

.mgbtm-20{
  margin-bottom: 20px;
}

.mgbtm-40{
  margin-bottom: 40px;
}

.mgbtm-60{
  margin-bottom: 60px;
}
	
.mgbtm-005{
  margin-bottom: 5%;
}



/********* margin end *********/









/*********** padding ***********/



.pdtop-20{
  padding-top: 20px;
}


.pdtop-017{
  padding-top: 17%;
}


/********* padding end *********/












/*********** font ***********/



.f-bold{
  font-weight: bold;
}


.f-red {
  color: crimson;
}


.f-white {
  color: white;
}

    
.f-brown {
  color: #a37b51;
}


/*** 

★★calc + vwの公式 ★★

font-size: calc(A + B * (100vw - C)/D);

A・・・最小文字サイズ
B・・・最大文字サイズ – 最小文字サイズ
C・・・最小画面幅
D・・・最大画面幅 – 最小画面幅

***/





.font-9{
  font-size:calc(9px + 3 * (100vw - 320px)/880);
}

.font-10{
  font-size:calc(10px + 3 * (100vw - 320px)/880);
}

.font-12{
  font-size:calc(12px + 3 * (100vw - 320px)/880);
}

.font-14{
  font-size:calc(14px + 3 * (100vw - 320px)/880);
}

.font-16{
  font-size:calc(16px + 3 * (100vw - 320px)/880);
}

.font-18{
  font-size:calc(18px + 3 * (100vw - 320px)/880);
}

.font-20{
  font-size:calc(20px + 3 * (100vw - 320px)/880);
}

.font-22{
  font-size:calc(22px + 3 * (100vw - 320px)/880);
}

.font-24{
  font-size:calc(24px + 3 * (100vw - 320px)/880);
}

.font-27{
  font-size:calc(27px + 3 * (100vw - 320px)/880);
}

.font-32{
  font-size:calc(32px + 3 * (100vw - 320px)/880);
}

.font-37{
  font-size:calc(37px + 3 * (100vw - 320px)/880);
}


/********* font end *********/





/*********** grid ***********/



.grid-p4s2,.grid-p3s2,.grid-p2s1,.grid-p1s2,.grid-p6s3 {
  display: grid;
}




.grid-p4s2 div,.grid-p3s2 div,.grid-p2s1 div,.grid-p1s2,.grid-p6s3 div {
  min-width: 0;
}





/********* grid end *********/









/********* TOP *********/



.review-all{
  border: 1px solid black;
  height: 250px;
  margin: 0;
  overflow: hidden;
}

.review-all iframe{
  border: 0;
  overflow: hidden;
}


.soryo-hojin {
  display: grid;
  grid-template-columns: repeat(auto-fit,minmax(300px,1fr));
  grid-auto-rows:1fr;
  grid-gap:40px;
  margin : 60px 0;
}



.news{
  color: #555;
  border: 1px solid #555;
  box-sizing: border-box;
  background-color: #F8F8F8;
  border-radius: 2px;
  height: 200px;
  overflow: scroll;
  padding-bottom: 20px;
  padding-top: 20px;
}



/********* TOP end *********/












/********* 販促・ノベルティ・名入れ *********/








.jouon{
  background-color: #F7A113;
  border-radius: 3px;
  box-sizing: border-box;
  color: #fff;
  padding: 3px 20px;
  width: 85px;
}


.nove-item-btn{
  background-color: #292929;
  border-radius: 3px;
  color: #fff;
  margin-left: auto;
  padding: 5px 20px;
  width: 115px;
}






/********* 販促・ノベルティ・名入れ end *****/












/********* お買い物ガイド *********/






.guide-wpg{
  background-color: #efefef;
  padding: 10px;
}

.guide-wpg p{
  background-color: #727171;
  color: white;
}






/********* お買い物ガイド end *****/












/********* mc-noshi *********/








.mc-noshi-blue{
  background-color: #00A99D;
}

.mc-noshi-brown{
  background-color: #42210B;
}

.mc-noshi-btn,.mc-noshi-title{
  border-radius: 50px;
  color: white;
  font-weight: bold;
  padding: 10px 0;
  width:40%;
}

.mc-noshi-btn a,.mc-noshi-title a{
  color: white;
}

.mc-noshi-tmpl{
  background-color: #f4ebe2;
  padding: 10px 5px 20px;
  text-align: center;
}

.mc-noshi-tmpl > div > div > p{
  padding-top: 15px;
}

.mc-noshi-tmpl img{
  padding: 0 10px;
}

.mc-noshi-step img{
  border: 1px solid #b3b3b3;
  width: 100%;
}






/********* mc-noshi end *****/












/********* ギフトシーン *********/


.g-scene p {
  padding:5px 0 15px;
}

.scene_h2 {
  font-size: 18px;
  font-weight: bold;
  padding-top:5px;
}



/********* ギフトシーン end *****/









/********* 商品検索 *********/



.trend-title {
  vertical-align: middle;
}

.trend-title img {
  vertical-align: middle;
}


.search-window  {
  background-color: #e6e6e6;
  padding: 32px;
}



.search_all_btn {
  background-color: #4d4d4d;
  border-radius: 30px;
  color: white;
  padding: 10px 20px;
}

.ranking {
  overflow: hidden;
}




/********* 商品検索 end *****/









/********* 送料とお支払いについて *********/






.soryo-table {
  border-collapse: collapse;
  border: 1px solid black;
  margin: 30px 0 50px 0;
}

.soryo-table *{
  border: 1px solid black;
}

.soryo-table > tbody > tr > td{
  padding: 10px 20px;
}







/********* 送料とお支払いについて end *****/









/********* 特定商取引法に基づく表示 *********/






.tokusyo-title {
  background: #7c8790;
  color: white;
  margin-bottom: 10px;
  padding: 8px;
}







/********* 特定商取引法に基づく表示 end *****/




/*****************************************************

    フッター

*****************************************************/


footer{
  background-color: #e1dbd6;
  text-align: center;
}

.footer {
  box-sizing: border-box;
  clear: both;
  display: inline-block;
  max-width: 960px;
  margin: 0px;
  /* [disabled]min-width: 400px;*/
  padding: 10px;
}

#ftr2212 .main .nav > li {
  border-bottom: 1px solid #555;
  display: inline-block;
  font-size: 13px;
  margin: 0 1% 0 2%;
  position: relative;
  width: 47%;
}

#ftr2212 .main .f-bnr img {
  width: 96%;
  margin: 3% 2% 0 2%;
}

#ftr2212 .main .nav {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
  padding-left: 0;
}

#ftr2212 .main .nav a {
  padding: 5px 15px;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
  -ms-flex-align: center;
  align-items: center;
  height: 50px;
}

#ftr2212 .main .nav a::before {
  content: '>';
  position: absolute;
  height: 3px;
  right: 10%;
  top: 30%;
  width: 5px;
  font-size: 16px;
}


/*****************************************************

    フッターend

*****************************************************/