@charset "utf-8";

/* ==========================================================
	共通(element)
========================================================== */

/* ==========================================================
	共通(id,class)
========================================================== */
/* ==========================================================
	ビジュアル
========================================================== */
#visual {
  position: relative;
  padding: 0;
  margin: 0 0 50px 0;
}
#visual > .inner {
  margin: 0 auto;
}
#visual > .inner > img {
  width: 100%;
}
/* ==========================================================
	ヘッドライン
========================================================== */
#main-content {
}
#main-content .headline {
  margin: 0 auto 60px;
  width: 1170px;
}
#main-content .headline .title {
  margin: 0 auto 60px;
  width: 700px;
}
#main-content .headline .detail {
  position: relative;
  display: -webkit-box;
  -js-display: flex;
  display: flex;
}
@media screen and (max-width: 1170px) {
  #main-content .headline .detail {
    padding: 0 20px;
  }
}
#main-content .headline .detail::before {
  position: absolute;
  content: url('../images/product/nanairocafe/headline-logo1.png');
  left: 1011px;
  top: 0;
}
#main-content .headline .detail::after {
  position: absolute;
  content: url('../images/product/nanairocafe/headline-logo2.png');
  left: 1014px;
  top: 120px;
}
#main-content .headline .photo {
  margin: 0 30px 50px 0;
}
#main-content .headline .comment {
  font-size: 22px;
  text-align: left;
  background: url('../images/product/nanairocafe/dotline.png') left top no-repeat;
  padding: 0 30px 0 30px;
  width: 721px;
  height: 267px;
}
#main-content .headline .comment > p {
  line-height: 2.34em;
}
/* ==========================================================
	メニュー
========================================================== */
#main-content #product {
  background: #fffbca;
  padding: 90px 0 60px 0;
}
#main-content #product .title {
  font-size: 30px;
  margin: 0 0 7px 0;
}
#main-content #product .sub {
  font-size: 13px;
  color: #0c6639;
  margin: 0 0 30px 0;
}
#main-content #product .special {
  font-size: 30px;
  margin: 0 0 50px 0;
}
#main-content #product .detail {
  margin: 0 auto 60px;
  width: 1170px;
}
@media screen and (max-width: 1170px) {
  #main-content #product .detail {
    margin: 0 auto 60px;
    width: 90%;
  }
}
#main-content #product .detail .menu {
}
#main-content #product .detail .menu .items {
  display: -webkit-box;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
}
#main-content #product .detail .menu .item {
  width: 500px;
  margin: 0px 50px 50px 0;
  text-align: left;
}
#main-content #product .detail .menu .title {
  position: relative;
  background: url('../images/product/nanairocafe/title-back.png') no-repeat;
  height: 65px;
  background-size: contain;
  text-align: left;
  color: #fff;
  font-weight: bold;
  padding: 17px 0 0 20px;
  box-sizing: border-box;
  font-size: 28px;
  margin: 0 0 60px 0;
}
#main-content #product .detail .menu .title .sub {
  position: absolute;
  font-size: 13px;
  font-weight: 200;
  margin: 0 0 10px 10px;
  color: #fff;
}
#main-content #product .detail .menu .item .name {
  position: relative;
  font-size: 25px;
  font-weight: 500;
  margin: 0 0 25px 0;
  padding: 0 0 0 35px;
}
#main-content #product .detail .menu .item .name::before {
  position: absolute;
  content: url('../images/product/nanairocafe/icon-reaf.png');
  width: 32px;
  height: 50px;
  left: -4px;
}
#main-content #product .detail .menu .item .comment {
  padding: 0 0 0 35px;
  font-size: 20px;
  line-height: 1.5em;
}
#main-content #product .detail .menu .item table {
  font-size: 20px;
  line-height: 1.5em;
  width: 100%;
}
#main-content #product .detail .menu .item table td {
  text-indent: 45px;
}
#main-content #product .detail .menu .item table .toast-price {
  text-align: right;
}
#main-content #product .detail .menu .photo {
  margin: 0px 0 40px 0;
  width: 600px;
}
@media screen and (max-width: 1170px) {
  #main-content #product .detail .menu .photo {
    width: 500px;
  }
  #main-content #product .detail .menu .photo > img {
    width: 500px;
  }
}
#main-content #product .detail .food {
}
#main-content #product .detail .food .title .sub {
  left: 200px;
  top: 24px;
}
#main-content #product .detail .food .price {
  position: absolute;
  left: 350px;
  text-align: right;
  width: 120px;
}
#main-content #product .detail .drink .items {
  display: block;
}
#main-content #product .detail .drink .item {
  width: 100%;
}
#main-content #product .detail .drink {
}
#main-content #product .detail .drink .title .sub {
  left: 210px;
  top: 24px;
}
#main-content #product .detail .drink .category {
  position: relative;
  color: #ff8e00;
  font-size: 24px;
  font-weight: bold;
  padding: 0px 0 0 55px;
  margin: 0 0 25px;
}
#main-content #product .detail .drink .category.cold {
  color: #2bb8d8;
}
#main-content #product .detail .drink .category.hot::before {
  position: absolute;
  content: url('../images/product/nanairocafe/icon-cup.png');
  left: 0;
  top: -20px;
}
#main-content #product .detail .drink .category.hot > .sub {
  position: absolute;
  font-weight: normal;
  font-size: 18px;
  left: 125px;
  top: 4px;
  color: #ff8e00;
  font-weight: 500;
}
#main-content #product .detail .drink .category.cold::before {
  position: absolute;
  content: url('../images/product/nanairocafe/icon-glass.png');
  left: 8px;
  top: -17px;
}
#main-content #product .detail .drink .category.cold > .sub {
  position: absolute;
  font-weight: normal;
  font-size: 18px;
  left: 137px;
  top: 4px;
  color: #2bb8d8;
  font-weight: 500;
}
#main-content #product .detail .drink table tr td:nth-child(odd) {
  width: 40%;
}
#main-content #product .detail .drink table tr td:nth-child(even) {
  width: 10%;
}
#main-content #product .detail .desert {
}
#main-content #product .detail .desert .category {
  position: relative;
  color: #f6649a;
  font-size: 24px;
  font-weight: bold;
  padding: 0px 0 0 55px;
  margin: 0 0 25px;
}
#main-content #product .detail .desert .category .sub {
  color: #f6649a;
  font-weight: 500;
  font-size: 18px;
  left: 14px;
  top: -2px;
  position: relative;
}
#main-content #product .detail .desert .category.cake::before {
  position: absolute;
  content: url('../images/product/nanairocafe/icon-cake.png');
  left: 0;
  top: -5px;
}
#main-content #product .detail .desert .category.smoothy::before {
  position: absolute;
  content: url(images/icon-glass2.png);
  left: 10px;
  top: -22px;
}
#main-content #product .detail .desert .title .sub {
  left: 230px;
  top: 24px;
}
#main-content #product .detail .desert table tr td:nth-child(odd) {
  width: 35%;
}
#main-content #product .detail .desert table tr td:nth-child(even) {
  width: 10%;
}
#main-content #product .detail .other {
}
#main-content #product .detail .other .title .sub {
  left: 216px;
  top: 24px;
}
#main-content #product .detail .other .items {
  display: block;
}
#main-content #product .detail .other .items .name {
  text-align: left;
  line-height: 1.5em;
  position: relative;
  font-size: 25px;
  font-weight: 500;
  margin: 0 0 25px 0;
  padding: 0 0 0 35px;
}
#main-content #product .detail .other .items .name::before {
  position: absolute;
  content: url('../images/product/nanairocafe/icon-reaf.png');
  width: 32px;
  height: 50px;
  left: -4px;
}

#main-content #product .detail .other .items .photo {
  display: -webkit-box;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  width: 100%;
}
#main-content #product .detail .other .items .photo li {
}

/* ==========================================================
	その他の製品
========================================================== */
#main-content #other-product {
  padding: 90px 0 60px 0;
}
#main-content #other-product .special {
  font-size: 28px;
  color: #fff;
  margin: 0 0 100px 0;
}
#main-content #other-product .detail {
  text-align: left;
  margin: 0 auto;
  width: 1170px;
  position: relative;
}
#main-content #other-product .detail::before {
  position: absolute;
  content: url('../images/product/nanairocafe/bubble1.png');
  right: 207px;
  top: -91px;
}
#main-content #other-product .detail::after {
  position: absolute;
  content: url('../images/product/nanairocafe/bubble2.png');
  left: 210px;
  top: 234px;
}
#main-content #other-product .detail .items {
  display: -webkit-box;
  -js-display: flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
}
#main-content #other-product .detail .item {
  position: relative;
  margin: 0 25px 100px;
}
#main-content #other-product .detail .item .photo {
  border-radius: 50% 50% 50% 50%;
  border: #9e5e32 2px solid;
  overflow: hidden;
}
#main-content #other-product .detail .item .name {
  background: #ffffff69;
  position: absolute;
  left: 30px;
  top: 161px;
  width: 140px;
  padding: 5px 0 7px 31px;
}
#main-content #other-product .detail .item .name::before {
  position: absolute;
  content: url('../images/product/nanairocafe/icon-flag.png');
  left: -2px;
  top: -5px;
}
/* ==========================================================
	アクセス
========================================================== */
#main-content #access {
  padding: 90px 0 60px 0;
  background: #fffbca;
}
#main-content #access .title {
  font-size: 30px;
  margin: 0 0 10px 0;
}
#main-content #access .sub {
  font-size: 13px;
  color: #0c6639;
  margin: 0 0 60px 0;
}
#main-content #access .detail {
  display: -webkit-box;
  -js-display: flex;
  display: flex;
  justify-content: space-between;
  width: 1170px;
  margin: 0 auto;
}
@media screen and (max-width: 1170px) {
  #main-content #access .detail {
    width: 90%;
  }
}
#main-content #access .detail .items {
  text-align: left;
}
#main-content #access .detail .item {
  margin: 0 0 25px 0;
  font-size: 20px;
  display: -webkit-box;
  -js-display: flex;
  display: flex;
  position: relative;
  padding: 0 0 0 45px;
  line-height: 1.5em;
}
#main-content #access .detail .item::before {
  position: absolute;
  left: 0;
  top: 0;
}
#main-content #access .detail .name {
  font-size: 26px;
  padding: 0;
}
#main-content #access .detail .address::before {
  content: url('../images/access-address-logo.png');
}
#main-content #access .detail .time::before {
  content: url('../images/access-hours-logo.png');
}
#main-content #access .detail .tell::before {
  content: url('../images/access-phone-logo.png');
}
#main-content #access .detail .fax::before {
  content: url('../images/access-fax-logo.png');
}
#main-content #access .detail .public::before {
  content: url('../images/access-traffic-logo.png');
}
#main-content #access .detail .item p {
  margin: 0 20px 0 0;
}
#main-content #access .detail .item p:nth-child(odd) {
  width: 120px;
}
#main-content #access .detail .map {
}
/* ==========================================================
	お問い合わせ
========================================================== */
#main-content #direct {
  padding: 90px 0 60px 0;
}
#main-content #direct .title {
  font-size: 30px;
  margin: 0 0 10px 0;
}
#main-content #direct .sub {
  font-size: 13px;
  color: #0c6639;
  margin: 0 0 60px 0;
}
#main-content #direct .detail {
  display: -webkit-box;
  -js-display: flex;
  display: flex;
  justify-content: space-between;
  width: 1170px;
  margin: 0 auto;
}
@media screen and (max-width: 1170px) {
  #main-content #direct .detail {
    width: 90%;
  }
}
#main-content #direct .detail .tell {
  background: url('../images/contact-tell-back.png') no-repeat;
  position: relative;
  width: 510px;
  height: 260px;
  padding: 90px 0 0 0;
  box-sizing: content-box;
}
#main-content #direct .detail a {
  display: block;
  height: 100%;
}
#main-content #direct .detail .tell .title {
  position: absolute;
  background: #45883a;
  padding: 17px 35px;
  font-size: 25px;
  border-radius: 5px;
  color: #fff;
  left: 68px;
  top: -15px;
}
#main-content #direct .detail .tell .text {
  padding: 0 0 0 37px;
  font-size: 45px;
  margin: 0 0 20px 0;
}
#main-content #direct .detail .tell .comment {
  font-size: 24px;
  padding: 0px 0 0 30px;
}
#main-content #direct .detail .mail {
  background: url('../images/contact-mail-back.png') no-repeat;
  position: relative;
  width: 510px;
  height: 260px;
  padding: 80px 0 0 0;
  box-sizing: border-box;
}
#main-content #direct .detail .mail .title {
  position: absolute;
  background: #24bde0;
  padding: 17px 35px;
  font-size: 25px;
  border-radius: 5px;
  color: #fff;
  left: 54px;
  top: -15px;
}
#main-content #direct .detail .mail .text {
  font-size: 35px;
  margin: 0 0 20px 0;
}
#main-content #direct .detail .mail .comment {
  font-size: 22px;
  line-height: 1.5em;
}
