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

  second global

------------------------------------------------------------ */
#container .bg {
  width: 100%;
  height: 100%;
  position: fixed;
}
#container .bg img {
  width: auto;
  max-width: 100%;
  height: auto;
}
#container .bg:before {
  width: 400%;
  height: 400%;
  background-image: url(../img/common/noise.png);
  background-repeat: repeat;
  position: absolute;
  top: -200%;
  left: -200%;
  display: block;
  content: '';
  -webkit-animation: grain 8s steps(10) infinite;
  -moz-animation: grain 8s steps(10) infinite;
  -ms-animation: grain 8s steps(10) infinite;
  animation: grain 8s steps(10) infinite;
  z-index: 9;
}
#container .bg:after {
  width: 100%;
  height: 100%;
  background-image: url(../img/common/container-cover-img.png);
  background-position: center;
  position: fixed;
  top: 0;
  left: 0;
  content: '';
  z-index: 99;
}

/* concept
------------------------------------------------------------ */
.concept #container #content {
  padding-bottom: 300px;
  position: relative;
  z-index: 99;
}
.concept #container #content .conceptSec .inner {
  margin: 0 auto;
  padding-left: 120px;
  padding-right: 120px;
  width: 670px;
  line-height: 2.3;
}
.concept #container #content #conceptArea01 {
  margin-top: 120px;
}
.concept #container #content #conceptArea01 .inner {
  position: relative;
}
.concept #container #content #conceptArea01 .inner h3 {
  text-align: left;
}
.concept #container #content #conceptArea01 .inner p {
  position: absolute;
  top: 60px;
  left: 210px;
  font-size: 1.4em;
  text-align: left;
}
.concept #container #content #conceptArea02 {
  margin-top: 80px;
  position: relative;
}
.concept #container #content #conceptArea02 h3 {
  margin-left: -957px;
  position: absolute;
  left: 50%;
}
.concept #container #content #conceptArea02 .inner {
  padding-top: 125px;
  position: relative;
}
.concept #container #content #conceptArea02 .inner .innerBg {
  margin-left: -400px;
  position: absolute;
  top: 100px;
  left: 50%;
}
.concept #container #content #conceptArea02 .inner h4 {
  position: relative;
  z-index: 999;
  padding-left: 70px;
  text-align: left;
}
.concept #container #content #conceptArea02 .inner .txt {
  margin-top: 75px;
  font-size: 1.4em;
  position: relative;
  z-index: 999;
}
.concept #container #content #conceptArea02 .inner .img {
  position: absolute;
}
.concept #container #content #conceptArea02 .inner .img.left {
  position: absolute;
  top: 170px;
  left: 25px;
}
.concept #container #content #conceptArea02 .inner .img.right {
  position: absolute;
  bottom: -35px;
  right: 65px;
}
.concept #container #content #conceptArea03 {
  margin-top: 80px;
  position: relative;
}
.concept #container #content #conceptArea03 h3 {
  margin-left: -957px;
  position: absolute;
  left: 50%;
}
.concept #container #content #conceptArea03 .inner {
  padding-top: 110px;
}
.concept #container #content #conceptArea03 .inner .innerBg {
  margin-left: -372px;
  position: absolute;
  top: 55px;
  left: 50%;
}
.concept #container #content #conceptArea03 .inner .img {
  position: relative;
  z-index: 999;
}
.concept #container #content #conceptArea03 .inner .txt {
  margin-top: 50px;
  font-size: 1.4em;
}
.concept #container #content #conceptArea04 {
  margin-top: 100px;
  position: relative;
}
.concept #container #content #conceptArea04 h3 {
  margin-left: -957px;
  position: absolute;
  left: 50%;
}
.concept #container #content #conceptArea04 .inner {
  padding-top: 120px;
}
.concept #container #content #conceptArea04 .inner ul {
  width: 100%;
  display: table;
}
.concept #container #content #conceptArea04 .inner ul li {
  width: 50%;
  display: table-cell;
}
.concept #container #content #conceptArea04 .inner ul li dl dd {
  margin-top: 2em;
  font-size: 1.4em;
}
.concept #container #content #conceptArea04 .inner ul li dl dd .name {
  font-weight: 600;
}
.concept #container #content #conceptArea04 .inner ul li dl dd .message {
  margin-top: 1em;
}
.concept #container #content #conceptArea04 .inner ul li dl dd .message span a {
  text-decoration: underline;
}
.concept #container #content #conceptArea05 {
  margin-top: 110px;
  position: relative;
}
.concept #container #content #conceptArea05 h3 {
  margin-left: -957px;
  position: absolute;
  left: 50%;
}
.concept #container #content #conceptArea05 .inner {
  padding-top: 120px;
}
.concept #container #content #conceptArea05 .inner #map_canvas {
  width: 100%;
  height: 340px;
}
.concept #container #content #conceptArea05 .inner table {
  margin-top: 40px;
  width: 100%;
  font-size: 1.4em;
  text-align: left;
}
.concept #container #content #conceptArea05 .inner table thead th {
  font-weight: 500;
}
.concept #container #content #conceptArea05 .inner table tbody th {
  width: 90px;
  font-weight: 500;
}

/* sakecake
------------------------------------------------------------ */
.sakecake #container #content {
  padding-bottom: 300px;
  position: relative;
  z-index: 99;
}
.sakecake #container #content .sakecakeSec .inner {
  margin: 0 auto;
  padding-left: 120px;
  padding-right: 120px;
  width: 670px;
}
.sakecake #container #content #sakecakeArea01 {
  margin-top: 120px;
}
.sakecake #container #content #sakecakeArea01 .inner {
  padding-top: 45px;
  background-image: url(../img/sakecake/section-bg01.png);
  background-repeat: no-repeat;
  background-position: 120px 0;
  position: relative;
}
.sakecake #container #content #sakecakeArea01 .inner h4 {
  margin-top: 40px;
}
.sakecake #container #content #sakecakeArea01 .inner .txt {
  margin-top: 35px;
  padding: 0 120px;
  font-size: 1.4em;
  text-align: left;
  line-height: 2.3;
}
.sakecake #container #content #sakecakeArea01 .inner .img {
  position: absolute;
}
.sakecake #container #content #sakecakeArea01 .inner .img.left {
  position: absolute;
  top: 180px;
  left: 100px;
}
.sakecake #container #content #sakecakeArea01 .inner .img.right {
  position: absolute;
  top: 240px;
  right: 100px;
}
.sakecake #container #content #sakecakeArea02 {
  background-image: url(../img/sakecake/section-bg02.png);
  background-repeat: no-repeat;
  background-position: top center;
  margin-top: 120px;
}
.sakecake #container #content #sakecakeArea02 .inner {
  position: relative;
}
.sakecake #container #content #sakecakeArea02 .inner .box {
  padding-top: 120px;
  width: 400px;
  float: right;
  text-align: left;
}
.sakecake #container #content #sakecakeArea02 .inner .box .txt {
  margin-top: 2em;
  font-size: 1.4em;
  line-height: 2.3;
}
.sakecake #container #content #sakecakeArea02 .inner .img {
  padding-left: 120px;
  float: left;
}
.sakecake #container #content #sakecakeArea03 {
  background-image: url(../img/sakecake/section-bg03.png);
  background-repeat: no-repeat;
  background-position: top center;
  margin-top: 120px;
}
.sakecake #container #content #sakecakeArea03 .inner {
  position: relative;
}
.sakecake #container #content #sakecakeArea03 .inner .box {
  padding-top: 30px;
  padding-left: 80px;
  width: 250px;
  float: left;
  text-align: left;
}
.sakecake #container #content #sakecakeArea03 .inner .box .txt {
  margin-top: 2em;
  font-size: 1.4em;
  line-height: 2.3;
}
.sakecake #container #content #sakecakeArea03 .inner .img {
  padding-left: 0;
  float: right;
}
.sakecake #container #content #sakecakeArea04 {
  background-image: url(../img/sakecake/section-bg04.png);
  background-repeat: no-repeat;
  background-position: top -60px center;
  margin-top: 120px;
}
.sakecake #container #content #sakecakeArea04 .inner {
  position: relative;
}
.sakecake #container #content #sakecakeArea04 .inner ul {
  margin-top: 50px;
}
.sakecake #container #content #sakecakeArea04 .inner ul li {
  margin: 0 auto 10px;
  width: 140px;
  border: #373737 solid 1px;
  box-sizing: border-box;
  font-size: 1.4em;
  line-height: 40px;
}
.sakecake #container #content #sakecakeArea04 .inner ul li a {
  display: block;
  text-decoration: none;
  transition: all .3s;
}
.sakecake #container #content #sakecakeArea04 .inner ul li a:hover {
  letter-spacing: 5px;
}

/* products
------------------------------------------------------------ */
.products #container #content {
  padding-bottom: 300px;
  position: relative;
  z-index: 99;
}
.products #container #content #navArea {
  margin: 0 auto;
  width: 960px;
  position: relative;
}
.products #container #content #navArea #categoryNav {
  width: 90px;
  position: fixed;
  top: 280px;
}
.products #container #content #navArea #categoryNav ul {
  margin-top: 10px;
  width: 100%;
}
.products #container #content #navArea #categoryNav ul li {
  margin-bottom: 15px;
  width: 50%;
  display: inline-block;
}
.products #container #content #navArea #categoryNav ul li a {
  display: inline-block;
  position: relative;
  width: 36px;
  height: 36px;
}
.products #container #content #navArea #categoryNav ul li a span {
  position: absolute;
  opacity: 0;
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
  top: -50px;
  left: -20px;
  width: 60px;
  padding: 10px;
  border-radius: 2px;
  background: #9e8653;
  color: #fff;
  font-size: 12px;
  line-height: 1;
  transition: .3s;
  -webkit-transform: rotateX(-90deg);
  transform: rotateX(90deg);
}
.products #container #content #navArea #categoryNav ul li a span:before {
  position: absolute;
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=0);
  top: 100%;
  left: 34px;
  height: 0;
  width: 0;
  border: 6px solid transparent;
  border-top: 6px solid #9e8653;
  content: "";
}
.products #container #content #navArea #categoryNav ul li a:before {
  font-family: 'typicons';
  font-style: normal;
  font-weight: normal;
  display: block;
  width: 36px;
  height: 36px;
  padding: 0;
  margin: 0;
  color: #fff;
  font-size: 30px;
  text-align: center;
  line-height: 1;
}
.products #container #content #navArea #categoryNav ul li a.category1:before {
  content: url(../img/products/category-btn01.png);
}
.products #container #content #navArea #categoryNav ul li a.category2:before {
  content: url(../img/products/category-btn02.png);
}
.products #container #content #navArea #categoryNav ul li a.category3:before {
  content: url(../img/products/category-btn03.png);
}
.products #container #content #navArea #categoryNav ul li a.category4:before {
  content: url(../img/products/category-btn04.png);
}
.products #container #content #navArea #categoryNav ul li a.category5:before {
  content: url(../img/products/category-btn05.png);
}
.products #container #content #navArea #categoryNav ul li a.category6:before {
  content: url(../img/products/category-btn06.png);
}
.products #container #content #navArea #categoryNav ul li a.category7:before {
  content: url(../img/products/category-btn07.png);
}
.products #container #content #navArea #categoryNav ul li a.category8:before {
  content: url(../img/products/category-btn08.png);
}
.products #container #content #navArea #categoryNav ul li a.category9:before {
  content: url(../img/products/category-btn09.png);
}
.products #container #content #navArea #categoryNav ul li a:hover span {
  opacity: 1;
  filter: progid:DXImageTransform.Microsoft.Alpha(opacity=100);
  top: -40px;
  -webkit-transform: rotateX(0deg);
  transform: rotateX(0deg);
}
.products #container #content .note {
  margin: 80px auto 0;
  width: 330px;
  border: #9e8653 solid 1px;
  box-sizing: border-box;
  color: #9e8653;
  font-size: 1.3em;
  line-height: 40px;
}
.products #container #content .productsSec .inner {
  margin: 0 auto;
  padding-left: 120px;
  padding-right: 120px;
  width: 670px;
}
.products #container #content .productsSec .inner .item .img img {
  max-width: 100%;
  height: auto;
}
.products #container #content .productsSec .inner .item .box dl {
  margin-top: 25px;
  text-align: left;
}
.products #container #content .productsSec .inner .item .box dl dt {
  font-size: 1.4em;
  font-weight: 600;
}
.products #container #content .productsSec .inner .item .box dl dd {
  font-size: 1.4em;
  line-height: 1.9;
}
.products #container #content #productsArea01 {
  margin-top: 160px;
}
.products #container #content #productsArea01 .inner {
  margin-top: 50px;
}
.products #container #content #productsArea01 .inner .item .box dl {
  padding: 0 30px;
}
.products #container #content #productsArea02 {
  margin-top: 120px;
}
.products #container #content #productsArea02 .inner {
  margin-top: 50px;
}
.products #container #content #productsArea02 .inner .item .box {
  margin-right: 4%;
  width: 48%;
  float: left;
}
.products #container #content #productsArea02 .inner .item .box .img {
  text-align: left;
}
.products #container #content #productsArea02 .inner .item .box:nth-of-type(2n) {
  margin-right: 0;
}
.products #container #content #productsArea03 {
  margin-top: 120px;
}
.products #container #content #productsArea03 .inner {
  margin-top: 50px;
}
.products #container #content #productsArea03 .inner .item .box dl {
  padding: 0 30px;
}
.products #container #content #productsArea04, .products #container #content #productsArea05, .products #container #content #productsArea07 {
  margin-top: 120px;
}
.products #container #content #productsArea04 .inner, .products #container #content #productsArea05 .inner, .products #container #content #productsArea07 .inner {
  margin-top: 50px;
}
.products #container #content #productsArea04 .inner .item .box, .products #container #content #productsArea05 .inner .item .box, .products #container #content #productsArea07 .inner .item .box {
  width: 320px;
  display: inline-block;
}
.products #container #content #productsArea06, .products #container #content #productsArea08, .products #container #content #productsArea09 {
  margin-top: 120px;
}
.products #container #content #productsArea06 .inner, .products #container #content #productsArea08 .inner, .products #container #content #productsArea09 .inner {
  margin-top: 50px;
}
.products #container #content #productsArea06 .inner .item .box, .products #container #content #productsArea08 .inner .item .box, .products #container #content #productsArea09 .inner .item .box {
  margin-right: 4%;
  margin-bottom: 100px;
  width: 48%;
  float: left;
}
.products #container #content #productsArea06 .inner .item .box .img, .products #container #content #productsArea08 .inner .item .box .img, .products #container #content #productsArea09 .inner .item .box .img {
  text-align: left;
}
.products #container #content #productsArea06 .inner .item .box:nth-of-type(2n), .products #container #content #productsArea09 .inner .item .box:nth-of-type(2n) {
  margin-right: 0;
}
.products #container #content #productsArea06 .inner .item .box:last-of-type, .products #container #content #productsArea06 .inner .item .box:nth-of-type(3n), .products #container #content #productsArea08 .inner .item .box:last-of-type, .products #container #content #productsArea08 .inner .item .box:nth-of-type(3n), .products #container #content #productsArea09 .inner .item .box:last-of-type, .products #container #content #productsArea09 .inner .item .box:nth-of-type(3n) {
  margin-bottom: 0;
}

/* feel
------------------------------------------------------------ */
.feel #container #content {
  padding-bottom: 300px;
  position: relative;
  z-index: 99;
}
.feel #container #content #feelArea {
  margin-top: 110px;
}
.feel #container #content #feelArea .inner {
  margin: 0 auto;
  padding-left: 120px;
  padding-right: 120px;
  width: 670px;
}
.feel #container #content #feelArea .inner h3 {
  padding-bottom: 25px;
  border-bottom: #4a4a4a double 4px;
  text-align: left;
}
.feel #container #content #feelArea .inner dl {
  margin-top: 30px;
  border-bottom: #ababab dotted 1px;
}
.feel #container #content #feelArea .inner dl dt {
  font-size: 1.3em;
  font-weight: 600;
  text-align: left;
}
.feel #container #content #feelArea .inner dl dd {
  margin-top: 1em;
  padding-bottom: 40px;
  font-size: 1.4em;
  text-align: left;
  line-height: 2.1;
}
.feel #container #content #feelArea .inner dl dd ul {
  margin-top: 20px;
  width: 100%;
  display: table;
}
.feel #container #content #feelArea .inner dl dd ul li {
  width: 25%;
  display: table-cell;
  text-align: center;
}

/* gift
------------------------------------------------------------ */
.gift #container #content {
  padding-bottom: 300px;
  position: relative;
  z-index: 99;
}
.gift #container #content #giftArea {
  margin-top: 160px;
}
.gift #container #content #giftArea .inner {
  margin: 0 auto;
  padding-top: 90px;
  padding-left: 120px;
  padding-right: 120px;
  width: 670px;
  position: relative;
}
.gift #container #content #giftArea .inner h3:before {
  position: absolute;
  top: -20px;
  left: 220px;
  content: url(../img/gift/section-img01.png);
}
.gift #container #content #giftArea .inner h3:after {
  position: absolute;
  top: 220px;
  right: 160px;
  content: url(../img/gift/section-img02.png);
}
.gift #container #content #giftArea .inner .item {
  position: relative;
  width: 100%;
  margin-top: 90px;
}
.gift #container #content #giftArea .inner .item .img {
  position: absolute;
  right: 20px;
  bottom: 20px;
}
.gift #container #content #giftArea .inner .item dl dt img {
  width: 100%;
  height: auto;
}
.gift #container #content #giftArea .inner .item dl dd {
  padding: 1em;
  background-color: #fcfcfc;
  font-size: 1.3em;
  text-align: left;
  line-height: 2.1;
}
.gift #container #content #giftArea .inner .item dl dd span {
  font-weight: 600;
}
.gift #container #content #giftArea .inner .item:first-of-type {
  margin-top: 200px;
}

/* topics
------------------------------------------------------------ */
.topics #container #content {
  padding-bottom: 500px;
  position: relative;
  z-index: 99;
}
.topics #container #content #topicsListArea {
  margin-top: 60px;
  padding-top: 120px;
}
.topics #container #content #topicsListArea .inner {
  margin: 0 auto;
  padding-left: 120px;
  padding-right: 120px;
  width: 670px;
}
.topics #container #content #topicsListArea .inner ul li {
  margin-bottom: 1em;
  font-size: 1.4em;
  text-align: left;
  line-height: 1;
}
.topics #container #content #topicsListArea .inner ul li .date {
  margin-right: 2em;
}
.topics #container #content #topicsListArea .inner ul li .category {
  margin-right: 1em;
  padding: 0.5em 0;
  width: 115px;
  background-color: #9e8653;
  display: inline-block;
  color: #fff;
  text-align: center;
}
.topics #container #content #topicsMainArea {
  margin-top: 60px;
  padding-top: 120px;
}
.topics #container #content #topicsMainArea .inner {
  margin: 0 auto;
  padding-left: 120px;
  padding-right: 120px;
  width: 670px;
}
.topics #container #content #topicsMainArea .inner article h3 {
  position: relative;
}
.topics #container #content #topicsMainArea .inner article h3 .date {
  padding-top: 15px;
  width: 75px;
  height: 60px;
  background-color: #9e8653;
  border-radius: 50%;
  display: block;
  position: absolute;
  color: #eeeeec;
  font-weight: 500;
  line-height: 1.4;
}
.topics #container #content #topicsMainArea .inner article h3 .date .small {
  font-size: 1.1em;
}
.topics #container #content #topicsMainArea .inner article h3 .date .large {
  font-size: 1.6em;
}
.topics #container #content #topicsMainArea .inner article h3 .ttl {
  margin-left: 10%;
  padding-top: 20px;
  padding-left: 1em;
  border-bottom: #373737 solid 1px;
  display: block;
  font-size: 2em;
  text-align: left;
}
.topics #container #content #topicsMainArea .inner article .body {
  margin-top: 30px;
  padding-bottom: 2em;
  border-bottom: #373737 solid 1px;
  font-size: 1.4em;
  text-align: left;
}
.topics #container #content #topicsMainArea .inner article .body img {
  max-width: 100%;
  height: auto;
}
.topics #container #content #topicsMainArea .inner article .btn {
  margin: 20px auto 0;
  width: 130px;
  border: #373737 solid 1px;
  box-sizing: border-box;
  font-size: 1.3em;
  line-height: 35px;
}
.topics #container #content #topicsMainArea .inner article .btn a {
  display: block;
  text-decoration: none;
  transition: all .3s;
}
.topics #container #content #topicsMainArea .inner article .btn a:hover {
  letter-spacing: 5px;
}

/* contact
------------------------------------------------------------ */
.contact #container #content {
  padding-bottom: 300px;
  position: relative;
  z-index: 99;
}
.contact #container #content #contactArea {
  margin-top: 160px;
}
.contact #container #content #contactArea .inner {
  margin: 0 auto;
  padding-left: 120px;
  padding-right: 120px;
  width: 670px;
  position: relative;
}
.contact #container #content #contactArea .inner h3 {
  padding: 0 0.5em;
  border-bottom: #4a4a4a solid 5px;
  display: inline;
  font-size: 2em;
  font-weight: 500;
}
.contact #container #content #contactArea .inner .txt {
  margin-top: 30px;
  padding: 1em;
  border: #4a4a4a solid 1px;
  font-size: 1.4em;
  text-align: left;
}
.contact #container #content #contactArea .inner .txt span {
  color: #c93030;
}
.contact #container #content #contactArea .inner table {
  margin-top: 50px;
  width: 100%;
  border-collapse: collapse;
}
.contact #container #content #contactArea .inner table th {
  padding-right: 15px;
  padding-bottom: 15px;
  width: 135px;
  vertical-align: top;
}
.contact #container #content #contactArea .inner table th span {
  padding: 0;
  border: #4a4a4a solid 1px;
  background-color: #4a4a4a;
  display: block;
  color: #fcfcfc;
  font-size: 1.4em;
  font-weight: 500;
  line-height: 26px;
}
.contact #container #content #contactArea .inner table td {
  padding-bottom: 15px;
  text-align: left;
  vertical-align: middle;
}
.contact #container #content #contactArea .inner table td input[type=text], .contact #container #content #contactArea .inner table td input[type=email] {
  padding: 0 2%;
  width: 100%;
  background: none;
  border: #4a4a4a solid 1px;
  box-sizing: border-box;
  font-size: 1.4em;
  line-height: 26px;
}
.contact #container #content #contactArea .inner table td label {
  margin-right: 30px;
  font-size: 1.4em;
}
.contact #container #content #contactArea .inner table td label input[type=checkbox] {
  margin-right: 10px;
  background: none;
  border: #4a4a4a solid 1px;
  vertical-align: middle;
}
.contact #container #content #contactArea .inner table td textarea {
  padding: 2%;
  width: 96% !important;
  height: 200px !important;
  background: none;
  border: #4a4a4a solid 1px;
  font-size: 1.4em;
}
.contact #container #content #contactArea .inner button {
  margin: 30px auto 0;
  width: 130px;
  background: none;
  border: #9e8653 solid 1px;
  box-sizing: border-box;
  color: #9e8653;
  font-size: 1.3em;
  line-height: 40px;
  cursor: pointer;
}

/* 160408 追加 */
.products_bnr{
	display:table;
	width:700px;
	margin:50px auto 0;
}
.products_bnr li{
	padding:0 15px;
	display:table-cell;
}


/* 161117追記
------------------------------------------------------------ */
.season-catch{
    text-align: left;
    margin-bottom:10px;
}

.products #container #content #productsArea08 .inner .item .ma0{
    margin-right:0px;
}


/* 171005追記
------------------------------------------------------------ */

.cake_bnr{
	margin-top: 20px;
	
	display: table;
}

.cake_bnr a{
	display: flex;
	display: -webkit-flex;
	-webkit-justify-content: center;
	-webkit-align-items: center;
	width: 670px;
	height: 120px;
	background: url(../img/products/sake_cake_bnr-bg.png) right center no-repeat , url(../img/products/sake_cake_bnr-bg02.png);
	-webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease;
}

.cake_bnr a img{
}

.cake_bnr a:hover{
	opacity: 0.6;
}