header {
  width: 100%;
  position: fixed;
  left: 0px;
  top: 0px;
  height: 90px;
  z-index: 11;
  background-color: rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 767px) {
  header {
    height: 70px;
  }
}
header .header_in {
  position: relative;
}
header .header_in h1 {
  width: 100%;
  max-width: 170px;
  height: auto;
  position: absolute;
  left: 20px;
  top: 10px;
}
@media screen and (max-width: 767px) {
  header .header_in h1 {
    width: 125px;
    left: 10px;
    top: 10px;
  }
}
header .header_in ul {
  position: absolute;
  right: 0px;
  top: 0px;
  width: 180px;
  display: flex;
  flex-wrap: wrap;
  flex-direction: row-reverse;
}
@media screen and (max-width: 767px) {
  header .header_in ul {
    width: 140px;
  }
}
header .header_in ul li {
  width: 90px;
  height: 90px;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
@media screen and (max-width: 767px) {
  header .header_in ul li {
    width: 70px;
    height: 70px;
  }
}
header .header_in ul li a, header .header_in ul li span {
  color: #fff;
  font-size: 14px;
  display: block;
}
@media screen and (max-width: 767px) {
  header .header_in ul li a, header .header_in ul li span {
    width: 70px;
    height: 70px;
    font-size: 11px;
    text-align: center;
  }
}
header .header_in ul li.btn_menu {
  background-color: #261303;
  cursor: pointer;
}
header .header_in ul li.btn_menu span {
  width: 45px;
  position: relative;
  padding-top: 25px;
}
@media screen and (max-width: 767px) {
  header .header_in ul li.btn_menu span {
    width: 40px;
    padding-top: 40px;
  }
}
header .header_in ul li.btn_menu span::before, header .header_in ul li.btn_menu span::after {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #fff;
  position: absolute;
  top: 0px;
  left: 0px;
  transform-origin: center center;
  transition: all 0.3s;
}
header .header_in ul li.btn_menu span::before {
  top: 0px;
}
@media screen and (max-width: 767px) {
  header .header_in ul li.btn_menu span::before {
    top: 20px;
  }
}
header .header_in ul li.btn_menu span::after {
  top: 8px;
}
@media screen and (max-width: 767px) {
  header .header_in ul li.btn_menu span::after {
    top: 30px;
  }
}
header .header_in ul li.btn_menu.btn_menu_on {
  background-color: #fff;
}
header .header_in ul li.btn_menu.btn_menu_on span {
  color: #261303;
}
header .header_in ul li.btn_menu.btn_menu_on span::before, header .header_in ul li.btn_menu.btn_menu_on span::after {
  background-color: #261303;
}
header .header_in ul li.btn_menu.btn_menu_on span::before {
  transform: rotate(15deg);
}
header .header_in ul li.btn_menu.btn_menu_on span::after {
  transform: rotate(-15deg);
  top: 0px;
}
@media screen and (max-width: 767px) {
  header .header_in ul li.btn_menu.btn_menu_on span::after {
    top: 20px;
  }
}
header .header_in ul li.btn_reserve {
  background-color: #E55050;
}
header .header_in ul li.btn_reserve a::before {
  content: "";
  display: block;
  width: 24px;
  height: 27px;
  background: url(../../img/common/icon_reserve.svg) 0px 0px no-repeat;
  background-size: cover;
  margin: 0px auto;
  margin-bottom: 10px;
}
@media screen and (max-width: 767px) {
  header .header_in ul li.btn_reserve a::before {
    margin-top: 10px;
    margin-bottom: 5px;
  }
}

footer {
  background: url(../../img/common/bg_footer.webp) 0px 0px repeat;
  background-size: 50%;
}
footer .footer_in {
  width: 83.33%;
  max-width: 1200px;
  margin: 0px auto;
  padding: 150px 0px;
  color: #fff;
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
  footer .footer_in {
    width: 100%;
    padding: 150px 40px;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 820px) {
  footer .footer_in {
    padding: 80px 20px;
  }
}
@media screen and (max-width: 767px) {
  footer .footer_in {
    display: block;
  }
}
footer .footer_in .btn_gnav_cv_area {
  display: none;
}
@media screen and (max-width: 767px) {
  footer .footer_in .btn_gnav_cv_area {
    display: block;
  }
}
footer .footer_in .address_area {
  width: 28.33%;
  border-right: 1px solid #333;
  box-sizing: border-box;
}
@media screen and (max-width: 1024px) {
  footer .footer_in .address_area {
    padding: 0px 20px 0px 0px;
  }
}
@media screen and (max-width: 820px) {
  footer .footer_in .address_area {
    width: 100%;
    border: none;
    padding: 0px;
    margin-bottom: 40px;
  }
}
footer .footer_in .address_area .logo {
  width: 100%;
  max-width: 240px;
  margin-bottom: 50px;
}
@media screen and (max-width: 820px) {
  footer .footer_in .address_area .logo {
    margin: 0px auto;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 767px) {
  footer .footer_in .address_area .logo {
    width: 48%;
    max-width: 180px;
  }
}
footer .footer_in .address_area .txt01 {
  font-size: 14px;
  margin-bottom: 30px;
}
@media screen and (max-width: 820px) {
  footer .footer_in .address_area .txt01 {
    text-align: center;
  }
}
footer .footer_in .address_area .btn_area .btn_txt_gmap {
  font-family: "Cormorant Garamond", serif;
  font-style: normal;
  font-size: 14px;
  color: #fff;
  margin-bottom: 35px;
}
@media screen and (max-width: 820px) {
  footer .footer_in .address_area .btn_area .btn_txt_gmap {
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  footer .footer_in .address_area .btn_area .btn_txt_gmap {
    margin-bottom: 40px;
    padding-bottom: 40px;
    border-bottom: 1px solid #333;
  }
}
footer .footer_in .address_area .btn_area .btn_txt_gmap::after {
  content: "";
  display: inline-block;
  width: 10px;
  height: 9px;
  background: url(../../img/common/icon_blank.svg) 0px 0px no-repeat;
  background-size: cover;
}
footer .footer_in .address_area .btn_area .btn_cv_area {
  width: 240px;
}
@media screen and (max-width: 1024px) {
  footer .footer_in .address_area .btn_area .btn_cv_area {
    width: 100%;
  }
  footer .footer_in .address_area .btn_area .btn_cv_area li a {
    width: 100%;
  }
}
@media screen and (max-width: 820px) {
  footer .footer_in .address_area .btn_area .btn_cv_area {
    width: 100%;
    max-width: 240px;
    margin: 0px auto;
    display: block;
  }
}
footer .footer_in .address_area .btn_area .btn_cv_area li {
  margin-bottom: 8px;
}

.main_link_area, .main_gnav_area {
  width: 71.66%;
  box-sizing: border-box;
  padding-left: 50px;
  position: relative;
}
@media screen and (max-width: 820px) {
  .main_link_area, .main_gnav_area {
    width: 100%;
    padding: 0px 20px;
    box-sizing: border-box;
  }
}
.main_link_area .main_nav, .main_gnav_area .main_nav {
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .main_link_area .main_nav, .main_gnav_area .main_nav {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #333;
  }
}
.main_link_area .main_nav ul, .main_gnav_area .main_nav ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.main_link_area .main_nav ul li, .main_gnav_area .main_nav ul li {
  width: 22.22%;
}
@media screen and (max-width: 767px) {
  .main_link_area .main_nav ul li, .main_gnav_area .main_nav ul li {
    width: 47.76%;
    margin-bottom: 20px;
  }
  .main_link_area .main_nav ul li:nth-last-child(1), .main_link_area .main_nav ul li:nth-last-child(2), .main_gnav_area .main_nav ul li:nth-last-child(1), .main_gnav_area .main_nav ul li:nth-last-child(2) {
    margin-bottom: 0px;
  }
}
.main_link_area .main_nav ul li a, .main_gnav_area .main_nav ul li a {
  color: #fff;
}
.main_link_area .main_nav ul li a figure, .main_gnav_area .main_nav ul li a figure {
  overflow: hidden;
}
.main_link_area .main_nav ul li a figure img, .main_gnav_area .main_nav ul li a figure img {
  margin-bottom: 20px;
  transition: all 0.6s;
}
@media screen and (max-width: 767px) {
  .main_link_area .main_nav ul li a figure img, .main_gnav_area .main_nav ul li a figure img {
    margin-bottom: 10px;
  }
}
.main_link_area .main_nav ul li a figure figcaption, .main_gnav_area .main_nav ul li a figure figcaption {
  font-size: 13px;
  text-align: center;
}
.main_link_area .main_nav ul li a figure figcaption .-eng, .main_gnav_area .main_nav ul li a figure figcaption .-eng {
  font-size: 16px;
  font-family: "Cormorant Garamond", serif;
  font-style: normal;
  display: block;
}
.main_link_area .main_nav ul li a:hover, .main_gnav_area .main_nav ul li a:hover {
  opacity: 1;
}
.main_link_area .main_nav ul li a:hover figure img, .main_gnav_area .main_nav ul li a:hover figure img {
  transform: scale(1.05);
}
.main_link_area .main_sub_nav, .main_gnav_area .main_sub_nav {
  margin-bottom: 30px;
  padding-bottom: 30px;
  border-bottom: 1px solid #333;
}
@media screen and (max-width: 767px) {
  .main_link_area .main_sub_nav, .main_gnav_area .main_sub_nav {
    margin-bottom: 20px;
    padding-bottom: 20px;
  }
}
.main_link_area .main_sub_nav ul, .main_gnav_area .main_sub_nav ul {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (max-width: 767px) {
  .main_link_area .main_sub_nav ul, .main_gnav_area .main_sub_nav ul {
    justify-content: center;
  }
}
.main_link_area .main_sub_nav ul li, .main_gnav_area .main_sub_nav ul li {
  font-family: "Cormorant Garamond", serif;
  font-style: normal;
  font-size: 14px;
  padding-right: 20px;
  margin-right: 20px;
  border-right: 1px solid #fff;
  line-height: 1;
}
.main_link_area .main_sub_nav ul li a, .main_gnav_area .main_sub_nav ul li a {
  color: #fff;
}
.main_link_area .main_sub_nav ul li:nth-last-child(1), .main_gnav_area .main_sub_nav ul li:nth-last-child(1) {
  padding-right: 0px;
  margin-right: 0px;
  border: none;
}
.main_link_area .main_sns_nav, .main_gnav_area .main_sns_nav {
  position: absolute;
  right: 0px;
  bottom: 0px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: center;
  height: 18px;
}
@media screen and (max-width: 767px) {
  .main_link_area .main_sns_nav, .main_gnav_area .main_sns_nav {
    position: static;
    justify-content: center;
    margin-bottom: 20px;
  }
}
.main_link_area .main_sns_nav li, .main_gnav_area .main_sns_nav li {
  /*&:nth-child(2){
    height: 18px;
  }*/
}
.main_link_area .main_sns_nav li:nth-child(1), .main_gnav_area .main_sns_nav li:nth-child(1) {
  margin-right: 15px;
  height: 14px;
}
@media screen and (max-width: 767px) {
  .main_link_area .main_sns_nav li:nth-child(1), .main_gnav_area .main_sns_nav li:nth-child(1) {
    margin-right: 0px;
  }
}
.main_link_area small, .main_gnav_area small {
  font-family: "Cormorant Garamond", serif;
  font-style: normal;
  font-size: 12px;
}
@media screen and (max-width: 767px) {
  .main_link_area small, .main_gnav_area small {
    font-size: 10px;
    text-align: center;
  }
}

.main_gnav_area {
  background: url(../../img/common/bg_footer.webp) 0px 0px repeat;
  background-size: 50%;
  position: fixed;
  left: 0px;
  top: 0px;
  width: 100%;
  height: 100vh;
  z-index: 10;
  transform: translateY(-100vh);
  transition: all 0.6s;
  opacity: 0;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .main_gnav_area {
    height: 100%;
    overflow-y: scroll;
    box-sizing: border-box;
    padding: 0px 20px;
    display: block;
  }
}
.main_gnav_area .main_gnav_area_in {
  padding: 150px 0px;
  width: 100%;
  max-width: 810px;
  margin: 0px auto;
  color: #fff;
  position: relative;
}
@media screen and (max-width: 767px) {
  .main_gnav_area .main_gnav_area_in {
    padding: 90px 0px 0px;
  }
}
.main_gnav_area .main_gnav_area_in .main_sub_nav {
  border-bottom: none;
}
@media screen and (max-width: 767px) {
  .main_gnav_area .main_gnav_area_in .main_sub_nav {
    border-bottom: 1px solid #333;
  }
}
.main_gnav_area .main_gnav_area_in .main_sub_nav ul {
  justify-content: center;
}
.main_gnav_area .main_gnav_area_in small {
  position: absolute;
  left: 0px;
  bottom: 0px;
}
@media screen and (max-width: 767px) {
  .main_gnav_area .main_gnav_area_in small {
    position: static;
  }
}
.main_gnav_area.main_gnav_area_on {
  transform: translateY(0px);
  opacity: 1;
}

main {
  background: url(../../img/common/bg_com.webp) 0px 0px repeat;
}

.tit_com00 {
  font-family: "Cormorant Garamond", serif;
  font-style: normal;
  font-size: 74px;
  line-height: 1;
}
@media screen and (max-width: 1024px) {
  .tit_com00 {
    font-size: 48px;
  }
}
.tit_com00 span {
  font-size: 22px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-style: normal;
  display: block;
  margin-top: 20px;
}
@media screen and (max-width: 767px) {
  .tit_com00 span {
    font-size: 16px;
  }
}

@media screen and (max-width: 767px) {
  .btn_gnav_cv_area {
    margin-bottom: 20px;
    padding-bottom: 20px;
    border-bottom: 1px solid #333;
  }
}
.btn_gnav_cv_area ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
}
.btn_gnav_cv_area ul li {
  margin: 0px 10px;
}
@media screen and (max-width: 767px) {
  .btn_gnav_cv_area ul li {
    width: 100%;
    margin: 0px;
    margin-bottom: 10px;
  }
  .btn_gnav_cv_area ul li:nth-last-child(1) {
    margin-bottom: 0px;
  }
  .btn_gnav_cv_area ul li a {
    width: 100%;
  }
}

.tit_com01 {
  font-family: "Cormorant Garamond", serif;
  font-style: normal;
  text-align: center;
  font-size: 48px;
}
@media screen and (max-width: 767px) {
  .tit_com01 {
    font-size: 32px;
  }
}

.tit_com02 {
  font-size: 22px;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .tit_com02 {
    font-size: 16px;
    margin-bottom: 25px;
  }
}

.tit_com03 {
  font-size: 32px;
  text-align: center;
  margin-bottom: 90px;
}
@media screen and (max-width: 767px) {
  .tit_com03 {
    font-size: 24px;
    margin-bottom: 40px;
  }
}
.tit_com03 span {
  font-size: 24px;
  display: block;
  margin-top: 30px;
}
@media screen and (max-width: 767px) {
  .tit_com03 span {
    font-size: 16px;
    margin-top: 10px;
  }
}

.tit_com04 {
  font-size: 36px;
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
  font-weight: 500;
  font-style: normal;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .tit_com04 {
    font-size: 26px;
    margin-bottom: 20px;
  }
}
.tit_com04 span {
  font-size: 20px;
  display: block;
}
@media screen and (max-width: 767px) {
  .tit_com04 span {
    font-size: 15px;
  }
}

.txt_com01 {
  font-size: 16px;
  line-height: 2;
}
@media screen and (max-width: 767px) {
  .txt_com01 {
    font-size: 15px;
  }
}
.txt_com01.-tc {
  text-align: center;
}
@media screen and (max-width: 767px) {
  .txt_com01.-tc {
    text-align: left;
  }
}
.txt_com01.-mb {
  margin-bottom: 80px;
}
@media screen and (max-width: 767px) {
  .txt_com01.-mb {
    margin-bottom: 40px;
  }
}

.txt_com02 {
  font-size: 24px;
  line-height: 2;
  margin-bottom: 70px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .txt_com02 {
    font-size: 16px;
    margin-bottom: 30px;
    text-align: left;
  }
}

.tit_com_area {
  width: 100%;
  padding: 150px 0px;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  .tit_com_area {
    padding: 60px 0px;
  }
}
.tit_com_area .tit_com_area_in {
  width: 100%;
  max-width: 1200px;
  margin: 0px auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 1024px) {
  .tit_com_area .tit_com_area_in {
    padding: 0px 40px;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 820px) {
  .tit_com_area .tit_com_area_in {
    padding: 0px 20px;
  }
}
.tit_com_area .tit_com_area_in .tit_com00 {
  width: 29.16%;
}
@media screen and (max-width: 767px) {
  .tit_com_area .tit_com_area_in .tit_com00 {
    width: 100%;
    text-align: center;
    margin-bottom: 30px;
    padding-bottom: 30px;
    border-bottom: 1px solid #261303;
  }
}
.tit_com_area .tit_com_area_in .txt01 {
  width: 66.66%;
  font-size: 26px;
  box-sizing: border-box;
  padding-left: 50px;
  border-left: 1px solid #261303;
  line-height: 1.8;
}
@media screen and (max-width: 820px) {
  .tit_com_area .tit_com_area_in .txt01 {
    font-size: 20px;
  }
}
@media screen and (max-width: 767px) {
  .tit_com_area .tit_com_area_in .txt01 {
    width: 100%;
    padding: 0px;
    box-sizing: border-box;
    border: none;
    font-size: 15px;
  }
}

.tit_flex {
  width: 100%;
  max-width: 1200px;
  margin: 0px auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: baseline;
  margin-bottom: 40px;
  padding-bottom: 40px;
  border-bottom: 1px solid #261303;
}
@media screen and (max-width: 1024px) {
  .tit_flex {
    width: calc(100% - 80px);
  }
}
@media screen and (max-width: 820px) {
  .tit_flex {
    width: calc(100% - 40px);
  }
}
@media screen and (max-width: 767px) {
  .tit_flex {
    line-height: 1;
    margin-bottom: 20px;
    padding-bottom: 20px;
  }
}
.tit_flex .tit01 {
  font-size: 48px;
  font-family: "Cormorant Garamond", serif;
  font-style: normal;
}
@media screen and (max-width: 767px) {
  .tit_flex .tit01 {
    font-size: 32px;
  }
}
.tit_flex span {
  display: block;
  font-size: 22px;
}
@media screen and (max-width: 767px) {
  .tit_flex span {
    font-size: 16px;
  }
}
.tit_flex.-w {
  width: 100%;
}

.iframe_area {
  width: 100%;
  margin-bottom: 20px;
}
.iframe_area iframe {
  width: 100%;
  height: 500px;
  width: 100%;
  border: none;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  .iframe_area iframe {
    height: 300px;
  }
}

.caption {
  font-size: 12px;
}
.caption.-db {
  display: block;
}

.ad_com_area {
  border: 1px solid #261303;
  border-radius: 4px;
  box-sizing: border-box;
  padding: 30px;
  margin-top: 80px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .ad_com_area {
    padding: 20px;
    margin-top: 30px;
  }
}
@media screen and (max-width: 820px) {
  .ad_com_area .txt_com01 {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 820px) {
  .ad_com_area .btn_com01 {
    margin: 0px auto;
  }
}
@media screen and (max-width: 767px) {
  .ad_com_area .btn_com01 {
    width: 100%;
  }
}

.btn_more {
  font-family: "Cormorant Garamond", serif;
  font-weight: 500;
  font-style: normal;
  font-size: 14px;
  position: relative;
  width: 140px;
  color: #261303;
}
@media screen and (max-width: 767px) {
  .btn_more {
    width: 120px;
  }
}
.btn_more::after {
  content: "";
  display: block;
  width: 10px;
  height: 5px;
  background: url(../../img/common/icon_more.svg) right top no-repeat;
  background-size: cover;
  position: absolute;
  right: 0px;
  top: calc(50% - 3px);
  transition: all 0.3s;
}
.btn_more::before {
  content: "";
  display: block;
  width: 100%;
  height: 1px;
  background-color: #261303;
  position: absolute;
  left: 0px;
  bottom: -10px;
}
.btn_more.-w200 {
  width: 200px;
}
.btn_more:hover::after {
  right: -8px;
}

.btn_com01 {
  width: 240px;
  padding: 15px 20px;
  box-sizing: border-box;
  color: #fff;
  font-size: 16px;
  text-align: center;
  position: relative;
  border-radius: 4px;
  background-color: #261303;
  display: block;
}
@media screen and (max-width: 767px) {
  .btn_com01 {
    font-size: 15px;
  }
}
.btn_com01::before {
  content: "";
  display: block;
  position: absolute;
  left: 15px;
}
.btn_com01 span {
  font-size: 12px;
  display: block;
  line-height: 1;
}
.btn_com01.-btn_res {
  background-color: #E55050;
}
.btn_com01.-btn_res::before {
  background: url(../../img/common/icon_reserve.svg) 0px 0px no-repeat;
  background-size: cover;
  width: 18px;
  height: 20px;
  top: calc(50% - 10px);
}
.btn_com01.-btn_tel {
  background-color: #333;
}
.btn_com01.-btn_tel::before {
  background: url(../../img/common/icon_tel.svg) 0px 0px no-repeat;
  background-size: cover;
  width: 18px;
  height: 18px;
  top: calc(50% - 9px);
}
.btn_com01.-btn_gmap {
  background-color: #261303;
}
.btn_com01.-btn_gmap::before {
  background: url(../../img/common/icon_map.svg) 0px 0px no-repeat;
  background-size: cover;
  width: 18px;
  height: 24px;
  top: calc(50% - 12px);
}
.btn_com01.-c_res {
  background-color: #E55050;
}
.btn_com01.-ma {
  margin: 0px auto;
}

.btn_pic {
  color: #fff;
  display: flex;
  flex-wrap: wrap;
  width: 100%;
  height: 170px;
}
@media screen and (max-width: 767px) {
  .btn_pic {
    height: 120px;
  }
}
.btn_pic .img {
  width: 40.81%;
  height: 100%;
}
@media screen and (max-width: 767px) {
  .btn_pic .img {
    width: 30.4%;
  }
}
.btn_pic .txt_area {
  width: 59.18%;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  background-color: #664C6A;
}
@media screen and (max-width: 767px) {
  .btn_pic .txt_area {
    width: 69.59%;
  }
}
.btn_pic .txt_area p {
  font-size: 24px;
}
@media screen and (max-width: 767px) {
  .btn_pic .txt_area p {
    font-size: 15px;
  }
}
.btn_pic .txt_area p span {
  display: block;
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .btn_pic .txt_area p span {
    font-size: 14px;
  }
}

.sec_com {
  padding: 150px 0px;
}
@media screen and (max-width: 767px) {
  .sec_com {
    padding: 70px 0px;
  }
}
.sec_com .sec_com_in {
  width: 100%;
  max-width: 1000px;
  margin: 0px auto;
}
.sec_com .sec_com_in.-w800 {
  width: 100%;
  max-width: 800px;
}
@media screen and (max-width: 1024px) {
  .sec_com .sec_com_in {
    padding: 0px 40px;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 820px) {
  .sec_com .sec_com_in {
    padding: 0px 20px;
  }
}
.sec_com .sec_com_flex {
  width: 100%;
  max-width: 1200px;
  margin: 0px auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
  flex-direction: row-reverse;
}
@media screen and (max-width: 1024px) {
  .sec_com .sec_com_flex {
    padding: 0px 40px;
    box-sizing: border-box;
  }
}
@media screen and (max-width: 820px) {
  .sec_com .sec_com_flex {
    padding: 0px 20px;
  }
}
@media screen and (max-width: 767px) {
  .sec_com .sec_com_flex {
    display: block;
  }
}
.sec_com .sec_com_flex .txt_area {
  width: 37.5%;
}
@media screen and (max-width: 767px) {
  .sec_com .sec_com_flex .txt_area {
    width: 100%;
  }
}
.sec_com .sec_com_flex .txt_area .tit_com00 {
  margin-bottom: 50px;
  padding-bottom: 50px;
  border-bottom: 1px solid #261303;
}
@media screen and (max-width: 767px) {
  .sec_com .sec_com_flex .txt_area .tit_com00 {
    text-align: center;
    margin-bottom: 30px;
    padding-bottom: 20px;
  }
}
.sec_com .sec_com_flex .txt_area .pic_ul {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 20px;
}
.sec_com .sec_com_flex .txt_area .pic_ul.-two li:nth-child(1) {
  width: 62%;
}
.sec_com .sec_com_flex .txt_area .pic_ul.-two li:nth-child(2) {
  width: 38%;
}
.sec_com .sec_com_flex .txt_area .pic_ul.-three li {
  width: 32%;
}
@media screen and (max-width: 767px) {
  .sec_com .sec_com_flex .txt_area .pic_ul.-three li {
    width: 48%;
  }
}
.sec_com .sec_com_flex .txt_area .pic_ul.-three_three li {
  width: 32%;
}
.sec_com .sec_com_flex .txt_area .dl_area {
  margin-bottom: 20px;
}
.sec_com .sec_com_flex .txt_area .dl_area dl dt {
  width: 37.77%;
}
.sec_com .sec_com_flex .txt_area .dl_area dl dd {
  width: 62.22%;
}
.sec_com .sec_com_flex .img_area {
  width: 54.16%;
}
@media screen and (max-width: 767px) {
  .sec_com .sec_com_flex .img_area {
    width: 100%;
    margin-bottom: 40px;
  }
}
.sec_com .sec_com_flex .img_area .img_area_flex {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.sec_com .sec_com_flex .img_area .img_area_flex figure {
  width: 48.46%;
  text-align: center;
}
.sec_com .sec_com_flex .img_area .img_area_flex figure img {
  margin-bottom: 10px;
}
.sec_com .sec_com_flex .img_area .img_area_flex figure figcaption {
  font-size: 24px;
}
@media screen and (max-width: 767px) {
  .sec_com .sec_com_flex .img_area .img_area_flex figure figcaption {
    font-size: 16px;
  }
}
.sec_com .sec_com_flex .img_area .img_area_flex figure figcaption span {
  font-size: 14px;
  display: block;
  font-family: "Cormorant Garamond", serif;
  font-style: normal;
}
@media screen and (max-width: 767px) {
  .sec_com .sec_com_flex .img_area .img_area_flex figure figcaption span {
    font-size: 11px;
  }
}
.sec_com .sec_com_flex.-rev {
  flex-direction: row;
}
.sec_com:nth-child(2n+1) {
  background-color: #fff;
}

.dl_area {
  border-top: 1px solid rgba(38, 19, 3, 0.3);
}
.dl_area dl {
  padding: 25px 10px;
  border-bottom: 1px solid rgba(38, 19, 3, 0.3);
  display: flex;
  flex-wrap: wrap;
  box-sizing: border-box;
  justify-content: space-between;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .dl_area dl {
    padding: 20px 0px;
  }
}
.dl_area dl dt, .dl_area dl dd {
  font-size: 16px;
}
@media screen and (max-width: 767px) {
  .dl_area dl dt, .dl_area dl dd {
    font-size: 13px;
  }
}
.dl_area dl dt {
  width: 23%;
}
@media screen and (max-width: 767px) {
  .dl_area dl dt {
    width: 27%;
  }
}
.dl_area dl dd {
  width: 77%;
}
@media screen and (max-width: 767px) {
  .dl_area dl dd {
    width: 70%;
  }
}
.dl_area dl dd .caption {
  margin-top: 10px;
}

@media screen and (max-width: 767px) {
  .hero_2nd_area {
    height: 100vh;
  }
}

@media screen and (max-width: 767px) {
  .swiper_wrap {
    box-sizing: border-box;
    padding: 0px 20px;
  }
}

.swiper_com {
  position: relative;
}
@media screen and (max-width: 767px) {
  .swiper_com {
    margin-bottom: 50px;
  }
}
.swiper_com .swiper-pagination {
  bottom: 10px;
}
.swiper_com .swiper-pagination .swiper-pagination-bullet {
  background-color: #fff;
  border: 1px solid #261303;
  width: 10px;
  height: 10px;
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .swiper_com .swiper-pagination .swiper-pagination-bullet {
    width: 6px;
    height: 6px;
  }
}
.swiper_com .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
  background-color: #261303;
}

.swiper_thum {
  margin-bottom: 20px;
}

.slider-thumbnail .swiper-slide {
  opacity: 0.5;
  transition: opacity 0.5s;
  width: 20%;
}
.slider-thumbnail .swiper-slide.swiper-slide-thumb-active {
  opacity: 1;
}

#map {
  width: 100%;
  height: 500px;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  #map {
    height: 300px;
  }
}

.shopping_list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.shopping_list ul li {
  width: 32%;
  margin-bottom: 50px;
}
@media screen and (max-width: 767px) {
  .shopping_list ul li {
    margin-bottom: 25px;
  }
}
.shopping_list ul li a {
  color: #261303;
}
.shopping_list ul li a figure img {
  margin-bottom: 10px;
}
.shopping_list ul li a figure figcaption {
  font-size: 16px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .shopping_list ul li a figure figcaption {
    font-size: 12px;
  }
}

.br {
  border-radius: 3px;
}