@charset "utf-8";
/*-----------------------------------------------------

    ページ共通CSS

------------------------------------------------------*/

/*--------------------------------------------
   BASE
--------------------------------------------*/
body, html ,input,select,textarea{
  font-family: 'Noto Serif JP', serif;
  font-weight: 500;
}
body, html {
  width: 100%;
  font-size:18px;
}
body {
  width: 100%;
  min-width: 1300px;
  color: #2b1b19;
  line-height: 1.8;
  overflow: auto;
  letter-spacing: 0.03em;
  padding-top:130px;
}
a {
  color: #78965a;
  display: inline-block;
  transition: 0.4s;
  text-decoration: none;
}
h1,h2,h3,h4,h5,h6,strong{
  font-weight: 600;
}
table {
  width: 100%;
}
.over {
  background: #fff;
}
.over img {
  transition: 0.3s ease;
}
.linkBox {
  display: block;
}
.ios .over:hover, .ios .over:active, .ios .over:link, .ios .over:visited, .ios .over::focus {
 opacity:1;
}
.cf:after {
  content: "";
  clear: both;
  display: block;
  height: 0;
}
:root .cf::after { /* IE9 */
  content: ""\9;
  clear: both\9;
  display: block\9;
  height: 0\9;
}
.youtubeBox{
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtubeBox iframe{
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
}
/*select 矢印削除*/
select {
  font-family:'Noto Serif JP',serif;
  font-size:0.8rem;
  line-height:1;
  font-weight:500;
  color:#2b1b19;
  padding: 1em 2.55rem 1em 1em;
  box-sizing: border-box;
  letter-spacing:0.08em;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background:url(../Image/common/select_arrow01.png) no-repeat right 1.2em center;
}
select::-ms-expand {
  display: none;
}
/*=============== PC LAYOUT ===============*/
@media print, screen and (min-width : 768px ) {
.for_sp {
  display: none !important;
}
/*------ HOVER EFFECT ------*/
a:hover {
  color:#57241f;
}
.over:hover img {
  opacity: 0.6;
}
}

/*       FRAMEWORK
================================*/
/*       HEADER
----------------------------*/
#header {
  padding: 30px 0 20px;
  position:absolute;
  top:0;
  left: 0;
  z-index:50;
  width: 100%;
  min-width:1300px;

}
#header .gInner{
  display:flex;
  justify-content:space-between;
}
#header  #hLogo{
  padding-top:2px;
  width: 292px;
}
#header .menuUpper{
  display:flex;
  justify-content:flex-end;
  align-items:center;
  margin-bottom: 18px;
}
#header .menuUpper .shopping_btn .btn{
  min-width:180px;
  font-size:0.875rem;
}
#header .submenu{
  display:flex;
  justify-content:flex-end;
  margin-left:40px;
}
#header .submenu li:nth-child(n+2){
  margin-left:20px;
}
#header .submenu li img{
  transition:.4s;
}
/*======= PC LAYOUT ======*/
@media print, screen and (min-width : 768px) {
/*--- HOVER EFFECT ---*/
#header .submenu li a:hover img{
  transform:rotateY(360deg);
  opacity:0.5;
}
}
/*       G NAVIGATION
----------------------------*/
#header #gNavi ul{
  display:flex;
  justify-content:space-between;
}
#header #gNavi ul li{
  line-height:1;
}
#header #gNavi ul li a{
  color:#2b1b19;
  font-weight:600;
  position:relative;
  padding-bottom:.5em;
  letter-spacing: 0.025em;
  font-size: 0.99rem;
}
#header #gNavi ul li a:after{
  position:absolute;
  content:"";
  width:0;
  height:1px;
  background:#2b1b19;
  right:0;
  left:initial;
  bottom:0;
  transition:.4s;
}
#header #gNavi ul li:nth-child(n+2){
  margin-left:40px;
}
/*======= PC LAYOUT ======*/
@media print, screen and (min-width : 768px) {
/*--- HOVER EFFECT ---*/
#header #gNavi ul li a:hover:after{
  width:100%;
  left:0;
  right:initial;
}
}
/*       FIXED HEADER
----------------------------*/
#header.fixed{
  position:fixed;
  background:rgba(255,255,255,0.8);
  padding:15px 0;
}
#header.fixed #hLogo{
  width:200px;
  transition: .4s;
}
#header.fixed #hLogo img{
  max-width:100%;
  transition: .4s;
}
#header.fixed .hdrR{
  display:flex;
  flex-direction:row-reverse;
  align-items:center;
}
#header.fixed .hdrR .menuUpper{
  margin-bottom:0;
}
#header.fixed .hdrR .menuUpper .shopping_btn .btn{
  min-width:100px;
  font-size: 0.75rem;
}
#header.fixed .hdrR .submenu{
  margin-left:20px;
}
#header.fixed .hdrR .submenu li:nth-child(n+2){
  margin-left:15px;
}
#header.fixed .hdrR .submenu li:last-child{
  display:none;
}
#header.fixed .hdrR #gNavi{
  margin-right: 25px;
}
#header.fixed .hdrR #gNavi ul li:nth-child(n+2){
  margin-left:20px;
}
#header.fixed .hdrR #gNavi ul li:nth-child(n+2){
  margin-left:20px;
}
#header.fixed .hdrR #gNavi ul li a{
  font-size:0.9rem;
  padding:0.5em 0;
}
/*       FOOTER
----------------------------*/
#footer{
  border-top:solid 5px #78965a;
  padding:50px 0 25px;
  background:#f7f7f5;
}
#footer .ftrUpper{
  border-bottom:solid 1px #d4d4d4;
  display:flex;
  padding-bottom:40px;
  margin-bottom:20px;
}
#footer .navBox{
  line-height:1;
}
#footer .navBox a{
  color:#2b1b19;
  vertical-align:middle;
  position:relative;
}
#footer .navBox a:after{
  position:absolute;
  content:"";
  bottom:-0.5em;
  left:0;
  width:0;
  height:1px;
  background:#781414;
  transition:.4s;
}
#footer .navBox .nav-item01:not(:last-child),
#footer .navBox .nav-item02:not(:last-child){
  margin-bottom:0.95rem
}
#footer .navBox .nav-item02:before{
  content:"-";
  display:inline-block;
  vertical-align:middle;
  margin-right:0.4em;
}
#footer .navBox .nav-item02{
  font-size:0.9rem;
}
#footer #fNav01{
  width:300px;
  margin-right:95px;
}
#footer #fNav01 dd{
  display:flex;
}
#footer #fNav01 dd ul{
  width:48%;
}
#footer #fNav01 dd ul:nth-child(n+2){
  margin-left:4%
}
#footer #fNav02{
  margin-right:105px;
}
#footer #fNav03{
  margin-right:90px;
}
#footer #fNav03 li:not(:last-child){
  margin-bottom:0.8em
}
#footer #fNav04{
  padding-left:110px;
  border-left:solid 1px #d4d4d4;
}
#footer #fNav04 li:not(:last-child){
  margin-bottom:0.9rem
}
#footer .ftrBottom{
  display:flex;
  justify-content:space-between;
  align-items:center;
}
#footer #copy{
  font-size:0.8rem;
}
#footer .ftrBottom .snsIcon {
  display: flex;
  margin-left: 30px;
  margin-right: auto;
}
#footer .ftrBottom .snsIcon_item:not(:first-child) {
  margin-left: 10px;
}
/*======= PC LAYOUT ======*/
@media print, screen and (min-width : 768px) {
/*------ HOVER EFFECT ------*/
#footer .navBox a:hover{
  color:#781414;
}
#footer .navBox a:hover:after{
  width:100%;
}
.fixed_header .hdrR .submenu li a:hover img{
  transform:rotateY(360deg);
}
}
