@charset "utf-8";

/*---------------------------------------------
	body
---------------------------------------------*/
html {
  scroll-behavior: smooth;
  font-size: 62.5%;
  overscroll-behavior-y: contain;
  -webkit-overflow-scrolling: touch;
  scroll-padding-top:100px;
}

body {
  width: 100%;
  font-size: 1.5rem;
  line-height: 1.8;
  text-align: center;
  -webkit-text-size-adjust: 100%;
  font-family: "Noto Serif JP", serif;
  font-weight: 400;
  font-style: normal;
  position: relative;
  color: #595757;
  background: #fff;
  overflow: hidden;
  box-sizing: border-box;
}


*{
  box-sizing: border-box;
  transition: all 0.5s;
}

p {
  text-align: left;
}

img {
  width: 100%;
  height: auto;
}

.mincho {
  font-family: "Noto Serif JP", serif;
  font-optical-sizing: auto;
}
.mincho_hina {
  font-family: "Hina Mincho", serif;
  font-weight: 400;
  letter-spacing: 0.5rem;
}
.mincho_rouge{
  font-family: "Rouge Script", serif;
  font-weight: 400;
}
.mincho_lavi{
  font-family: "Lavishly Yours", serif;
  font-weight: 400;
}
.gothic{
  font-family: "Noto Sans JP", serif;
  font-optical-sizing: auto;
  font-weight: 300!important;
}


/*---------------------------------------------
	Anchor
---------------------------------------------*/
a {
  outline: none;
}

a:link {
  color: #595757;
  text-decoration: none;
}

a:visited {
  color: #595757;
  text-decoration: none;
}

a:hover {
  color: #595757;
  text-decoration: none;
}

a:active {
  color: #595757;
  text-decoration: none;
}

a {
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

#form {
  padding-top: 20px;
  margin-top: -20px;
  display: block;
}

/*---------------------------------------------
	p
---------------------------------------------*/
p {
  margin-bottom: 1.5em;
}

.only_pc_none {
  display: none;
}

.only_sp_none {
  display: block;
}

.sp_br {
  display: none;
}

.pc_br {
  display: inline;
}

/*---------------------------------------------
 ** ON OFF hover
---------------------------------------------*/
.hover {
  -webkit-transition: 0.5s ease-in-out;
  -moz-transition: 0.5s ease-in-out;
  -o-transition: 0.5s ease-in-out;
  transition: 0.5s ease-in-out;
}

.hover:hover {
  opacity: 0.6;
  filter: alpha(opacity=60);
  -ms-filter: "alpha( opacity=60 )";
}

/*=================================================================================================================================*/
/**  共通部分	*/
/*=================================================================================================================================*/

.clearfix::after {
  content: "";
  display: block;
  clear: both;
}

.scroll-up.done,
.scroll-fade.done {
  opacity: 1;
  transform: translate(0, 0);
}

.load-fade {
  opacity: 0;
  transition: all 4s
    /*処理にかかる時間*/
  ;
}

.mb_8 {
  margin-bottom: 8%;
}

.load-up {
  opacity: 0;
  transform: translateY(30px)
    /*スクロールアップする距離*/
  ;
  transition: all 4s
    /*処理にかかる時間*/
  ;
}

.load-up.done,
.load-fade.done {
  opacity: 1;
  transform: translate(0, 0);
}

.btn_gold a{
  display: inline-block;
  margin:0 auto;
  padding:15px 50px 15px 35px;
  text-align: center;
  color:#fff;
  background:#a9a079;
  line-height:1.0;
  font-weight: 500;
}
.btn_gold a span{
  display: inline-block;
  position:relative;
}
.btn_gold a span::before{
  content:'';
  display: block;
  width:10px;
  height:10px;
  background:url(../img/arrow01_w.png) no-repeat left center;
  background-size:100% auto;
  position:absolute;
  right:-20px;
  bottom:0;
  top:0;
  margin:auto 0;
  transition: all 0.5s;
}
.btn_gold a:hover span::before{
  right: -25px;
}

.btn_gold_w a{
  display: inline-block;
  margin:0 auto;
  padding:15px 50px 15px 35px;
  text-align: center;
  color:#a9a079;
  border:1px solid #a9a079;
  background:#fff;
  line-height:1.0;
  font-weight: 500;
}
.btn_gold_w a span{
  display: inline-block;
  position:relative;
}
.btn_gold_w a span::before{
  content:'';
  display: block;
  width:10px;
  height:10px;
  background:url(../img/arrow01_g.png) no-repeat left center;
  background-size:100% auto;
  position:absolute;
  right:-20px;
  bottom:0;
  top:0;
  margin:auto 0;
  transition: all 0.5s;
}
.btn_gold_w a:hover span::before{
  right: -25px;
}

.btn_view{
  text-align: center;
}
.btn_view a{
  color: #a9a079!important;
  font-size:110%;
  display: inline-block;
  border-bottom:1px solid #a9a079;
  padding:0 40px 5px 0; 
  position:relative;
  text-align: center;
  margin:0 auto;
  font-weight: 400!important;
}

.btn_view a::before{
  content:'';
  width:10px;
  height:20px;
  display: block;
  background:url(../img/arrow01_g.png) no-repeat;
  background-size:100% auto;
  pointer-events: none;
  position:absolute;
  right:8px;
  bottom:6px;
  transition: all 0.5s;
}
.btn_view a:hover::before{
  right:0;
}

/*---------------------------------------------
 ** フェードイン
---------------------------------------------*/
.scrollanime {
  opacity: 0;
}

/*一瞬表示されるのを防ぐ*/
.fadeInDown {
  animation-name: fadeInDown;
  animation-duration: 2s;
  animation-fill-mode: forwards;
}

@keyframes fadeInDown {
  0% {
    opacity: 0;
  }

  100% {
    opacity: 1;
    transform: translate(0);
  }
}

/*2.上下の動きを指定*/
.updown {
  transform: translateY(-50px);
}

.downup {
  transform: translateY(50px);
}

/*3.左右の動きを指定*/
.sect02 {
  overflow: hidden;
}

/*横スクロールバーを隠す*/
.slide-right {
  transform: translateX(100px);
}

.slide-left {
  transform: translateX(-100px);
}

/*---------------------------------------------
 ** ローディング
---------------------------------------------*/

.start {
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: 9000;
}

.start p {
  position: fixed;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  display: none;
  z-index: 9999;
  width: 70%;
  max-width: 350px;
}

/* fadeUpをするアイコンの動き */

.fadeIn {
  animation-name: fadeUpAnime;
  animation-duration: 2.5s;
  animation-fill-mode: forwards;
  opacity: 0;
  display: block !important;
}

@keyframes fadeUpAnime {
  from {
    opacity: 0;
    transform: translateY(40px);
  }

  to {
    opacity: 1;
    transform: translateY(0);
  }
}

#curtain {
  z-index: 999;
}

.jump2 {
  opacity: 0;
}

.jump03 {
  opacity: 0;
}

/* ジャンプする動き */
.jump_on {
  animation: poyoyon 1s ease-in-out 1 forwards;
  animation-delay: 1s;
}

.jump_on02 {
  animation: poyoyon 1s ease-in-out 1 forwards;
  animation-delay: 1s;
}

.jump_on03 {
  animation: poyoyon 1s ease-in-out 1 forwards;
  animation-delay: 0s;
}

@keyframes poyoyon {
  0% {
    transform: scale(0.5, 0.5) translate(0, 0);
  }

  15% {
    transform: scale(0.7, 0.7) translate(0, 8px);
  }

  30% {
    transform: scale(1.02, 1) translate(0, 12px);
  }

  50% {
    transform: scale(0.98, 1.05) translate(0, -12px);
  }

  70% {
    transform: scale(1, 0.9) translate(0, 8px);
  }

  100% {
    transform: scale(1, 1) translate(0, 0);
  }

  0%,
  100% {
    opacity: 1;
  }
}

/* フォントが下から順に表示 */
.pro_anime div p {
  display: inline-block;
  transform-origin: center center;
  transform: translate3d(0, 100px, 0);
  margin-bottom: 0 !important;
}

.pro_anime div p span {
  transform-origin: center center;
  transform: scale3d(0.1, 0.1, 1);
  opacity: 0;
  font-size: 100% !important;
}

.pro_anime_on p:nth-child(1) {
  transition: transform 0.8s ease 0.1s;
}
.pro_anime_on p:nth-child(1) span {
  transition: transform 0.8s ease 0.1s, opacity 0.8s ease 0.1s;
}

.pro_anime_on p:nth-child(2) {
  transition: transform 0.8s ease 0.2s;
}
.pro_anime_on p:nth-child(2) span {
  transition: transform 0.8s ease 0.2s, opacity 0.8s ease 0.2s;
}

.pro_anime_on p:nth-child(3) {
  transition: transform 0.8s ease 0.3s;
}
.pro_anime_on p:nth-child(3) span {
  transition: transform 0.8s ease 0.3s, opacity 0.8s ease 0.3s;
}

.pro_anime_on p:nth-child(4) {
  transition: transform 0.8s ease 0.4s;
}
.pro_anime_on p:nth-child(4) span {
  transition: transform 0.8s ease 0.4s, opacity 0.8s ease 0.4s;
}

.pro_anime_on p:nth-child(5) {
  transition: transform 0.8s ease 0.5s;
}
.pro_anime_on p:nth-child(5) span {
  transition: transform 0.8s ease 0.5s, opacity 0.8s ease 0.5s;
}

.pro_anime_on p:nth-child(6) {
  transition: transform 0.8s ease 0.6s;
}
.pro_anime_on p:nth-child(6) span {
  transition: transform 0.8s ease 0.6s, opacity 0.8s ease 0.6s;
}

.pro_anime_on p:nth-child(7) {
  transition: transform 0.8s ease 0.7s;
}
.pro_anime_on p:nth-child(7) span {
  transition: transform 0.8s ease 0.7s, opacity 0.8s ease 0.7s;
}

.pro_anime_on p:nth-child(8) {
  transition: transform 0.8s ease 0.8s;
}
.pro_anime_on p:nth-child(8) span {
  transition: transform 0.8s ease 0.8s, opacity 0.8s ease 0.8s;
}

.pro_anime_on p:nth-child(9) {
  transition: transform 0.8s ease 0.9s;
}
.pro_anime_on p:nth-child(9) span {
  transition: transform 0.8s ease 0.9s, opacity 0.8s ease 0.9s;
}

.pro_anime_on p:nth-child(10) {
  transition: transform 0.8s ease 1.0s;
}
.pro_anime_on p:nth-child(10) span {
  transition: transform 0.8s ease 1.0s, opacity 0.8s ease 1.0s;
}

.pro_anime_on p:nth-child(11) {
  transition: transform 0.8s ease 1.1s;
}
.pro_anime_on p:nth-child(11) span {
  transition: transform 0.8s ease 1.1s, opacity 0.8s ease 1.1s;
}

.pro_anime_on p:nth-child(12) {
  transition: transform 0.8s ease 1.2s;
}
.pro_anime_on p:nth-child(12) span {
  transition: transform 0.8s ease 1.2s, opacity 0.8s ease 1.2s;
}

.pro_anime_on p:nth-child(13) {
  transition: transform 0.8s ease 1.3s;
}
.pro_anime_on p:nth-child(13) span {
  transition: transform 0.8s ease 1.3s, opacity 0.8s ease 1.3s;
}

.pro_anime_on p:nth-child(14) {
  transition: transform 0.8s ease 1.4s;
}
.pro_anime_on p:nth-child(14) span {
  transition: transform 0.8s ease 1.4s, opacity 0.8s ease 1.4s;
}

.pro_anime_on p:nth-child(15) {
  transition: transform 0.8s ease 1.5s;
}
.pro_anime_on p:nth-child(15) span {
  transition: transform 0.8s ease 1.5s, opacity 0.8s ease 1.4s;
}


.pro_anime_on p {
  transform: translate3d(0, 0, 0) !important;
}

.pro_anime_on p span {
  display: block !important;
  transform: scale3d(1, 1, 1) !important;
  opacity: 1 !important;
}

.white_slide {
  height: auto;
  overflow: hidden;
  position: relative;
}

.white_slide img {
  opacity: 0;
}

.white_slide.white_slide_on img {
  width: 100%;
  height: auto;
  object-fit: cover;
  z-index: 0;
  opacity: 0;
  animation: apper_img 2s forwards;
  animation-delay: 0;
}


.white_slide.white_slide_on::before {
  animation: apper_right 2s forwards;
  background: #ebe8e4;
  bottom: 0;
  content: '';
  pointer-events: none;
  position: absolute;
  left: 0px;
  right: 0;
  top: 0;
  z-index: 1;
  animation-delay: 0;
  transform: translateX(100%);
}


@keyframes apper_img {
  0% {
    opacity: 0;
  }

  40% {
    opacity: 0;
  }

  45% {
    opacity: 1;
  }

  100% {
    opacity: 1;
  }
}

@keyframes apper_right {
  40% {
    transform: translateX(0);
  }

  50% {
    transform: translateX(0);
  }

  100% {
    transform: translateX(-100%);
  }
}

/*---------------------------------------------
 ** マウスポインター
---------------------------------------------*/

.cursor{
  border-radius: 50%;
  position: absolute;
  pointer-events: none;
  top: 0;
  left: 0;
}


.cursor {
  width: 15px;
  height: 15px;
  background:#dec379ba;
  border-radius: 15px;
  display: block;
  z-index: 10;
  transition: all 1s;
  mix-blend-mode: multiply;
}
.cursor::before {
  content:'';
  width: 0px;
  height: 0px;
  background:none;
  border-radius: 60px;
  position:absolute;
  top:0px;
  left:0px;
  transition: all 1s;
}

.hovering .cursor{
  width: 0px;
  height: 0px;
  background:none;
  mix-blend-mode:unset;
}
.hovering .cursor::before {
  width: 100px;
  height: 100px;
  background:#dec37942;
  top:-45px;
  left:-45px;
}

/*
.navOpen2+.cursor {
  background:#ffffff82;
}

.hovering .navOpen2+.cursor::before{
  background:#ffffff17;
}
  



/*---------------------------------------------
 ** ヘッダー　ナビ
---------------------------------------------*/
header {
  width:100%;
  position:fixed;
  top:0;
  z-index:10;
}

h1 {
  width:230px;
  margin-top:1%;
  margin-left:1%;
}
#head_ig a{
  width:90px;
  height:90px;
  display: block;
  position: fixed;
  top: 0;
  right: 190px;
}
#head_ig a img{
  width:40%;
  padding-top:25px;
  margin:0 auto;
}

body#home.scrolled-fair #head_ig a{
  background:#70707066;
}

body:not(#home).scrolled-fair_icon #head_ig a {
  background:#70707066;
}


nav .mincho_hina{
  font-size:220%;
  margin:0 auto 50px;
  text-align: center;
}

.nav_list{
  text-align: left;
  margin-bottom:30px;
}
.nav_list li{
  margin-bottom:7px;
}
.nav_list2{
  text-align: left;
}
.nav_list2 li{
  margin-bottom:2px;
}
.nav_list2 li::before{
  content:'-';
  display: inline-block;
  padding-right:10px;
}
#sp_menu_ig{
  display: none;
}
nav>div>p{
  margin-bottom:5px;
}
#nav ul li a:hover{
  color:#988c54;

}

#nav2{
  color:#fff;
}
#nav2 a{
  color:#fff!important;
}

#nav2 ul{
  max-width:360px;
  margin:0 auto 40px;
}
#nav2 ul li a{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height:  80px;
  text-align: right;
  background:#fff;
  position:relative;
  margin-bottom:15px;
  overflow: hidden;
  color: #a9a079!important;
  line-height:1.5;
  font-size:110%;
  padding-right:15px;
}
#nav2 ul li a::before{
  content:'';
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  background-color: #fff;
  clip-path: polygon(0% 0%, 100% 0%, 0% 100%); /* 三角形を作成 */
  width: 25px;
  height: 25px;
  border:1px solid #a9a079;
}
#nav2 ul li a::after{
  content:'';
  position: absolute;
  top: 31px;
  left: -5px;
  width: 45px;
  height: 1px;
  display: block;
  background: #a9a079;
  transform: rotate(-45deg);
  transform-origin: top left;
}

#nav2 ul li a span{
  position:relative;
  display: inline-block;
  letter-spacing: 0.1rem;
}
#nav2 ul li a span::after{
  content:'';
  width:12px;
  height:12px;
  display: block;
  background: url(../img/arrow01_g.png) no-repeat center left;
  background-size:100% auto;
  position:absolute;
  right:-20px;
  top:0;
  bottom:0;
  margin:auto 0;
  transition: all 0.5s;
}
#nav2 ul li a:hover span:after{
  right:-30px;
}


#nav2 ul li.li_contact a{
  background:#a9a079;
  color: #fff!important;
  border:1px solid #fff
}

#nav2 ul li.li_contact a::before{
  border:none;
  background-color: #a9a079;
}

#nav2 ul li.li_contact a::after{
  background: #fff;
}

#nav2 ul li.li_contact a span::after{
  background: url(../img/arrow01_w.png) no-repeat center left;
  background-size:100% auto;
}
#nav2 ul li.li_line a{
  background:#00b900;
  color: #fff!important;
  border:1px solid #fff
}
#nav2 ul li.li_line a::before{
  border:none;
  background-color: #00b900;
}
#nav2 ul li.li_line a::after{
  background: #fff;
}

#nav2 ul li.li_line a span::after{
  background: url(../img/arrow01_w.png) no-repeat center left;
  background-size:100% auto;
}
.nav2_tel{
  padding:25px 0 35px;
  border-bottom:1px solid #fff;
}
.nav2_tel p{
  text-align: center;
  margin-bottom:0;
}
.nav2_tel p strong{
  font-weight: 300;
  font-size:240%;
  letter-spacing: 0.1rem;
  line-height:1.4;
}
.nav2_data{
  padding:35px 0;
}
.nav2_data p{
  text-align: center;
}

/*---------------------------------------------
 ** フッター
---------------------------------------------*/

#f_contact{
  padding: 7% 0;
  background:url(../img/bg_contact.jpg) no-repeat center center;
  background-size:cover;
  color:#a67e6f!important;
  position:relative;
  z-index: 1;
}

#f_contact h3{
  font-size:380%;
  color:#a67e6f;
  margin-bottom:30px;
}
.contact_btn{
  width:90%;
  max-width:1400px;
  margin:0 auto;
  display: flex;
  justify-content: space-between;
  align-items:center;
  flex-wrap: wrap;
}
.contact_btn li {
  width:23.5%;
}
.contact_btn li a{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height:  95px;
  text-align: center;
  background:#fff;
  position:relative;
  margin-bottom:15px;
  overflow: hidden;
  color: #a67e6f!important;
  line-height:1.5;
  font-size:110%;
  border:1px solid #a67e6f;
}

.contact_btn li a::after{
  content:'';
  position: absolute;
  top: 31px;
  left: -5px;
  width: 45px;
  height: 1px;
  display: block;
  background: #a67e6f;
  transform: rotate(-45deg);
  transform-origin: top left;
}

.contact_btn li a span{
  position:relative;
  display: inline-block;
  letter-spacing: 0.1rem;
}

.contact_btn li a:hover span:after{
  right:-30px;
}

.contact_btn li.li_contact a{
  background:#f5efea;
}
.contact_btn li.li_line a{
  background:#00b900;
  color: #fff!important;
  border:none
}
.contact_btn li.li_line a::after{
  background:#fff;
}

.foot_tel{
  width:90%;
  max-width:1400px;
  margin:0 auto;
  padding:30px 0 20px;
  border-bottom:1px solid #a67e6f;
  display: flex;
  justify-content: center;
  align-items:flex-end;
  flex-wrap: wrap;
}
.foot_tel p{
  margin:0 10px;
  font-size:90%;
  display: inline-block;
}
.foot_tel p strong{
  font-size:180%;
  font-weight: 300;
  line-height:1.2;
  letter-spacing: 0.1rem;
}

.foot_data{
  width:90%;
  max-width:1400px;
  margin:0 auto;
  padding:20px 0 20px;
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
}
.foot_data p{
  margin:0 10px;
  font-size:90%;
  display: inline-block;
}

@media screen and (max-width: 1000px) {
  .contact_btn li {
    width:48.5%;
  }
  .contact_btn {
    max-width: 630px;
  }
}

footer {
  background:#ada194;
  padding:30px 0 40px;
  color:#fff!important;
  font-size:85%;
  position:relative;
  z-index: 1;
}
footer>div{
  width:90%;
  max-width:1000px;
  margin:0 auto 40px;
  position:relative;
}

footer>div h1{
  width:300px;
  margin-bottom:30px;
}

#foot_ig{
  width:45px;
  position:absolute;
  top:20px;
  right:0;
}
#foot_privacy{
  display: none;
}

#foot_sitemap{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  text-align: left;
}
#foot_sitemap a{
  color:#fff!important;
}
#foot_sitemap p{
  margin-bottom:3px;
}
#foot_sitemap li{
  margin-bottom:2px;
}
#sitemap01{
  width:35%;
}
#sitemap02{
/* 変更 */
  width:45%;
}
#sitemap02>div{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
#sitemap02>div ul:nth-of-type(1){
  width:50%;
}
#sitemap02>div ul:nth-of-type(2){
  width:50%;
}

#sitemap03{
/* 変更 */
  width:20%;
  position:relative;
}
#sitemap03>a{
  display: inline-block;
  position:absolute;
  bottom:0;
  left:0;
}
#sitemap02>div ul li::before,
#sitemap03 ul li::before{
  content:'- ';
}

#copyright{
  font-size:90%;
  padding:5px 10px 0;
  margin-bottom:0;
  text-align: center;
  border-top:1px solid #fff;
}

#icon_tel_sp a, #icon_ig_sp a{
  display: none;
}
#pageTop {
  position: fixed;
  bottom: 10px;
  right: 10px;
  z-index: 9;
  transition: all 0.5s;
  opacity: 0;
}
body#home.scrolled-fair_icon #pageTop, 
body#home.scrolled-fair_icon #pageTop{
  opacity: 1;
}
body:not(#home).scrolled-fair_icon #pageTop {
  opacity: 1;
}


#pageTop a {
  display: block;
  width: 50px;
  height: 50px;
  background: url(../img/pagetop.png) no-repeat bottom left;
  background-size: 100% auto;
}

#pageTop a:hover {
  text-decoration: none;
  opacity: 0.7;
}

@media screen and (max-width: 900px) {

  #sitemap01{
    width:42%;
  }
  #sitemap02{
    width:30%;
  }
  #sitemap02>div ul:nth-of-type(1){
    width:100%;
  }
  #sitemap02>div ul:nth-of-type(2){
    width:100%;
  }
  #sitemap03{
    width:28%;
  }
}

/*---------------------------------------------
 ** TopPage
---------------------------------------------*/

body#home main{
  z-index:-1;
}

body#home main>div{
  overflow: hidden;
  max-height: 100svh;
  transition: max-height .3s,transform .3s;
  z-index:0;
}
#top_mv{
  width:100%;
  min-height: 100svh;
  position: fixed;  
  top:0;
  left:0;
  z-index:1;
}
#top_mv::before{
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: #381f1096;
  z-index: 2;
  pointer-events: none;
}
#top_mv video{
  width:100%;
  object-fit: cover;
  object-position: center;
  min-height: 100svh;
}
body.scrolled-fair #top_mv video{
  display: none;
}

h3{
  font-size:400%;
  color:#a67e6f;
  margin-bottom:30px;
  text-align: center;
  line-height:1.0;
}
h3+p{
  text-align: center;
  letter-spacing: 0.2rem;
}

#top_logo{
  height: 100%;
  position:relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  z-index:3;
  pointer-events: none;
}
#top_logo>div{
  padding-bottom:10%;
}
#top_logo>div>div>img{
  width:40%;
  max-width:500px;
}
#top_logo>div>a{
  width:10%; 
  max-width:50px;
  display: block;
  margin:0 auto;
  pointer-events:all;
  position:absolute;
  bottom:5%;
  right:0;
  left:0;
  transition: all 0.5s;
  opacity: 1;
}
body.scrolled-fair_icon #top_logo>div>a{
  opacity: 0;
  pointer-events: none;
}

#home section{
  padding:7% 0;
}

#top_message{
  background:#fff9;
  padding:3% 0!important;
  text-align: center;
  color:#000!important;
  margin-bottom:15%;
}
#top_message h2{
  font-size:160%;
  letter-spacing: 0.5rem;
  margin-bottom:1%;
  line-height:1.2;
}
#top_message h2 span{
  font-size:160%;
  letter-spacing: 0.1rem;
  display: block;
  margin-bottom:1%;
}
#top_message p{
  text-align: center;
}
#top_message .btn_view a{
  color:#000!important;
  border-bottom:1px solid #000;
}
#top_message .btn_view a::before {
  background: url(../img/arrow01_b.png) no-repeat;
  background-size: 100% auto;
}

#top_fair{
  background:#fff;
}

#top_local_access{
  background:#fff;
}
#top_local_access>div>a{
  width:90%;
  max-width:1000px;
  margin:0 auto 30px;
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  background:#a9a079;
  position:relative;
  z-index:0;
}
#top_local_access>div>a::before{
  content:'';
  width:calc(50% - 20px);
  height:calc(100% - 20px);
  border:1px solid #fff;
  display: block;
  z-index:1;
  position:absolute;
  top:10px;
  right:10px;
}
#top_local_access>div:nth-child(2n)>a{
  flex-direction: row-reverse;
}
#top_local_access>div:nth-child(2n)>a::before{
  top:10px;
  right:auto;
  left:10px;
}

#top_local_access a>div{
  width:50%;
  overflow: hidden;
}
#top_local_access a>div>img{
  object-fit: cover;
  transform: scale(1);
}
#top_local_access a:hover>div>img{
  transform: scale(1.05);
  filter: brightness(1.15);
}

#top_local_access a>dl{
  width:50%;
  height:100%;
  position:relative;
  display: block;
  color:#fff;
  padding:2% 2.5%;
}


#top_local_access a>dl dt{
  width:90%;
  max-width:350px;
  text-align: center;
  display: inline-block;
  margin:0 auto 10px;
  font-size:110%;
}
#top_local_access a>dl dt span{
  font-size:280%;
  line-height:1.4;
  font-weight: 300;
  border-bottom:1px solid #fff;
  display: block;
  margin-bottom:10px;
}

#top_local_access a>dl dd{
  text-align: center;
  font-size:110%;
  line-height:1.6;
}

@media screen and (max-width: 1000px) {
  #top_local_access a>dl dt span {
    font-size: 240%;
  }
  #top_local_access a>dl dd{
    font-size:100%;
  }
}
@media screen and (max-width: 900px) {
  #top_local_access>div{
    max-width:640px;
    margin:0 auto;
  }
  #top_local_access a>div{
    width:100%;
  }
  #top_local_access a>dl {
    width: 100%;
    min-height:190px;
  }
  #top_local_access>div>a::before {
    width: calc(100% - 20px);
    height: 170px;
    top: auto;
    right: 10px;
    bottom:10px;
  }
  #top_local_access>div:nth-child(2n) a>dl{
    min-height:220px;
  }
  #top_local_access>div:nth-child(2n)>a::before{
    height: 200px;
    top:auto;
    right:auto;
    left:10px;
  }
}

#top_chapel{
  background:#f5f3f287;
  padding-bottom:2%!important;
}

#top_chapel>div{
  width:90%;
  max-width:1200px;
  margin:0 auto 3%;
}
#top_chapel h3+p{
  text-align: center;
}
#top_chapel > img{
  margin-bottom:2%;
}
#top_chapel .chapel_img{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
#top_chapel .chapel_img li{
  width:23.5%;
  display: block;
}

@media screen and (max-width: 1020px) {
  #top_chapel h3+p{
    text-align: left;
  }
}
#top_banquet{
  background:#f5f3f287;
  padding-bottom:3%!important;
}
#top_banquet>div{
  width:90%;
  max-width:1800px;
  margin:0 auto;
}

.top_banquet_data{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin:3% auto 0;
}
.top_banquet_data>dl{
  width:48%;
  margin-bottom:3%;
  background:#fff;
}
.top_banquet_data>dl dt{
  overflow: hidden;
}
.top_banquet_data>dl dt img{
  object-fit: cover;
  transform: scale(1);
}
.top_banquet_data>dl a:hover dt img{
  transform: scale(1.05);
  filter: brightness(1.15);
}

.top_banquet_data>dl dd{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content:center;
  padding:5% 3%;
}
.top_banquet_data>dl dd h4{
  width:160px;
  color:#a67e6f;
  display: inline-block;
}
.top_banquet_data>dl dd h4 span{
  font-size:150%;
  display: inline-block;
  padding-right:10px;
  letter-spacing: 0.05rem;
}
.top_banquet_data>dl dd p{
  margin-bottom:0;
  display: inline-block;
}

#top_garden{
  background:#f5f3f287;
  padding-bottom:2%!important;
}
#top_garden>div{
  width:90%;
  max-width:1400px;
  margin:0 auto;
  position:relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: row-reverse;
  padding-bottom:500px;
}

#top_garden>div>img{
  width:55%;
}
#top_garden .top_text_data{
  width:45%;
  text-align: left;
}
#top_garden h3 div{
  display: inline;
}

#top_garden .top_photo_img{
  width:65%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  position:absolute;
  bottom: 0;
  left:0;
}
#top_garden .top_photo_img img:nth-of-type(1){
  width:55%;
  z-index:2;
}
#top_garden .top_photo_img img:nth-of-type(2){
  width:65%;
  margin-top:150px;
  margin-left:-60px;
  z-index:1;
}



#top_dress{
  background:#f5f3f287;
  padding-bottom:2%!important;
}
#top_dress>div{
  width:90%;
  max-width:1400px;
  margin:0 auto;
  position:relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  padding-bottom:200px;
}
#top_dress>div>img{
  width:45%;
}
#top_dress .top_text_data{
  width:48%;
  text-align: left;
  padding-top:5%;
}
.top_text_data h3{
  text-align: left;
}
.top_text_data p{
  text-align: left;
}
.top_text_data .btn_view{
  text-align: left;
}

#top_dress h3 div{
  display: inline-block;
}
#top_dress .top_photo_img{
  width:70%;
  display: flex;
  justify-content: space-between;
  position:absolute;
  bottom: 0;
  right:0;
}
#top_dress .top_photo_img img{
  width:49%;
}

#top_cuisine{
  background:#f5f3f287;
}
#top_cuisine>div{
  width:90%;
  max-width:1400px;
  margin:0 auto;
  position:relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  flex-direction: row-reverse;
  padding-bottom:350px;
}

#top_cuisine>div>img{
  width:55%;
}
#top_cuisine .top_text_data{
  width:40%;
  text-align: left;
}
#top_cuisine .top_photo_img{
  width:65%;
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  position:absolute;
  bottom: 0;
  left:0;
}
#top_cuisine .top_photo_img img:nth-of-type(1){
  width:60%;
}
#top_cuisine .top_photo_img img:nth-of-type(2){
  width:34%;
  margin-top:120px;
}
.less1000{
  display: none;
}

@media screen and (max-width: 1200px) {
  #top_garden h3 div{
    display: block;
    margin-bottom:10px;
  }
}

@media screen and (max-width: 1140px) {
  #top_garden>div,
  #top_dress>div,
  #top_cuisine>div{
    padding-bottom:3%!important;
  }
  #top_garden h3 div{
    display: block;
    margin-bottom:10px;
  }
  .top_photo_img {
    width: 100%!important;
    position: relative!important;
    margin-top:30px!important;
  }
  .top_photo_img img {
    width: 48%!important;
    margin: 0!important;
  }
  #top_cuisine .top_photo_img img:nth-of-type(1) {
    width: 56%!important;
  }
  #top_cuisine .top_photo_img img:nth-of-type(2) {
    width: 41%!important;
  }
}
@media screen and (max-width: 1000px) {
  .less1000{
    display: block;
  }
  #home .less1000{
    text-align: left;
    position:absolute;
    top:30px;
    left:0;
  }
  #home #top_dress .less1000{
    right:0;
    left:auto
  }

  #top_dress h3 div{
    display: block;
    margin-bottom:10px;
  }
  .top_text_data{
    width:100%!important;
  }
  .top_text_data h3{
    display: none;
  }
  #top_garden>div>img{
    width:80%;
  }
  #top_dress>div>img{
    width:70%;
  }
  #top_cuisine>div>img{
    width:80%;
  }
  
  .top_text_data{
    margin:30px auto 0;
    padding-top:0!important;
  }
  .top_text_data p {
    text-align: center;
  }

  .top_text_data .btn_view{
    text-align: center;
  }
}

#top_plan{
  background:#fff;
}

#top_plan>div{
  width:90%;
  margin:0 auto;
}

#top_report{
  background:#f5f3f287;
}
#top_report>div{
  width:90%;
  max-width:1100px;
  margin:0 auto;
}
.top_report_data{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  margin:3% auto 6%;
}
.top_report_data dl{
  width:33%;
  text-align: left;
}

.top_report_data dl a{
  display: block;
  padding:4%;
}
.top_report_data dl a:hover{
  background:#fff;
}
.top_report_data dl a dt{
  overflow: hidden;
  margin-bottom:5px;
}
.top_report_data dl a dt img{
  object-fit: cover;
  transform: scale(1);
}
.top_report_data dl a:hover dt img{
  transform: scale(1.05);
  filter: brightness(1.15);
}
.top_report_data dl dd{
  font-size:90%;
  line-height:1.6;
}

@media screen and (max-width: 840px) {
  #top_report h3+p{
    text-align: left;
  }
}

#top_gallery{
  background:#e4c7bd57;
  padding:5% 0!important;
}
#top_gallery>div{
  width:90%;
  max-width:1400px;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}

.top_gallery_text{
  width:43%;
}

.top_gallery_text h3,
.top_gallery_text p,
.top_gallery_text .btn_view {
  text-align: left;
}
.top_gallery_text h3{
  padding-bottom:3%;
}
.top_gallery_img{
  width:55%;
  height:100%;
  min-height:420px;
  position:relative;
}
.top_gallery01{
  width:40%;
  aspect-ratio: 641 / 361;
  position:absolute;
  top:0;
  left:35%;
}
.top_gallery02{
  width:40%;
  aspect-ratio: 641 / 361;
  position:absolute;
  top:100px;
  left:5%;
}
.top_gallery03{
  width:35%;
  aspect-ratio: 641 / 361;
  position:absolute;
  top:200px;
  right:10%;
}
.top_gallery04{
  width:30%;
  aspect-ratio: 641 / 361;
  position:absolute;
  top:300px;
  right:38%;
}

.top_gallery_img>div>div {
  position: relative;
  width: 100%;
  height: 100%;
  text-align: center;
  transition: transform 1.5s;
  transform-style: preserve-3d;
  text-align: center;
}

.top_gallery_front,
.top_gallery_back {
  position: absolute;
  width: 100%;
  height: 100%;
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: flex;
  align-items: center;
}
.top_gallery_front{
  background:#fff;
}
.top_gallery_front img{
  width: 40%;
  margin:0 auto;
  display: block;
}
.top_gallery_back img{
  width: 100%;
  display: block;
  margin:0 auto;
}

.top_gallery_back{
  transform: rotateY(180deg);
}

.top_gallery_img_on >div {
  animation: gal_rotate 1s ease 1 forwards;
  animation-delay: 1s;
}
@keyframes gal_rotate {
  0% {
    transform: rotateY(0);
  }
  100% {
    transform: rotateY(-180deg);
  }
}

@media screen and (max-width: 1200px) {
  .top_gallery01{
    width:260px;
  }
  .top_gallery02{
    width:260px;
  }
  .top_gallery03{
    width:230px;
  }
  .top_gallery04{
    width:200px;
  }
}
@media screen and (max-width: 1100px) {
  .top_gallery_text{
    width:100%;
    margin-bottom:30px;
  }
  .top_gallery_img{
    width:95%;
    max-width:750px;
    margin:0 auto;
    min-height:420px;
  }
  .top_gallery_text h3, .top_gallery_text p, .top_gallery_text .btn_view{
    text-align: center;
  }
  .top_gallery_text h3 {
    padding-bottom: 1%;
  }
  .top_gallery01{
    width:40%;
  }
  .top_gallery02{
    width:40%;
    left:0;
  }
  .top_gallery03{
    width:40%;
    top:180px;
    right:0;
  }
  .top_gallery04{
    width:35%;
    top:280px;
  }
}

#top_insta{
  padding:6% 0!important;
  background:#fff;
}

#top_news{
  background:url(../img/top_news_bg.jpg) no-repeat bottom left;
  background-size:cover;
  padding:5% 0!important;
}

#top_news>div{
  width:90%;
  max-width:1480px;
  background:#ffffffc9;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  padding:5%;
}
.top_news_text{
  width:30%;
}
.top_news_text h3{
  color:#595757;
  text-align: left;
}
.top_news_text .btn_view{
  text-align: left;
}
.top_news_text .btn_view a{
  color:#595757!important;
}
.top_news_text .btn_view a::before{
  background:url(../img/arrow01_b.png) no-repeat;
  background-size:100% auto;
}
.top_news_data{
  width:70%;
  border-top:1px solid #595757;
}
.top_news_data dl a{
  border-bottom:1px solid #595757;
  padding:25px 10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  text-align: left;
}
.top_news_data dl a:hover{
  background:#ffffff73;
}
.top_news_data dl dt{
  width:130px;
}
.top_news_data dl dd{
  width:calc(100% - 130px);
}

#top_info{
  background:#fff;
}
#top_info>div{
  width:90%;
  max-width:1400px;
  margin:0 auto;
}
.top_info_ul01{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding:3% 0;
  border-bottom:1px solid #a9a079;
}
.top_info_ul01 li{
  width:30.33%;
  margin:0 1.5% 2%;
}
.top_info_ul01 li a{
  width:100%;
  aspect-ratio: 43 / 12;
  display: flex;
  justify-content: center;
  align-items: center;
  color:#fff;
  font-size:150%;
  text-align: center;
  position:relative;
  background:#a9a079;
}
.top_info_ul01 li a::before{
  content:'';
  width:calc(100% - 4%);
  aspect-ratio: 43 / 12;
  background:url(../img/info_btn.png) no-repeat center center;
  background-size:100% auto;
  display: block;
  position:absolute;
  top:0;
  bottom:0;
  left:0;
  right:0;
  margin:auto;
  pointer-events: none;
}

.top_info_ul02{
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding:3% 0;
  border-bottom:1px solid #a9a079;
}
.top_info_ul02 li{
  width:23%;
  margin:0 1% 0.5%;
}

.top_info_ul02 li a{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height:  95px;
  text-align: center;
  background:#fff;
  position:relative;
  margin-bottom:15px;
  overflow: hidden;
  color: #a9a079!important;
  line-height:1.5;
  font-size:110%;
  border:1px solid #a9a079;
}
.top_info_ul02 li a::after{
  content:'';
  position: absolute;
  top: 31px;
  left: -5px;
  width: 45px;
  height: 1px;
  display: block;
  background: #a67e6f;
  transform: rotate(-45deg);
  transform-origin: top left;
}

.top_info_ul02 li a span{
  position:relative;
  display: inline-block;
  letter-spacing: 0.1rem;
}

@media screen and (max-width: 1000px) {
  .top_info_ul02 li {
    width: 31%;
  }
}



/*---------------------------------------------
 ** メイン
---------------------------------------------*/

main{
  position:relative;
  z-index: 1;
}

body:not(#home) main{
  aspect-ratio: 16 / 9;
  display: flex;
  align-items: center;
}
body:not(#home) main h2{
  font-size:140%;
  display: inline-block;
  color:#fff;
  margin-left:7%;
  line-height:1.4;
}
body:not(#home) main h2 span{
  font-size:300%;
}
body:not(#home) main h2 small{
  letter-spacing: -0.1rem;
  padding-left:10px;
}
body#photo_wedding main h2{
  text-align: left;
}

#home #contents{
  background:none!important;
}
#contents{
  min-height:500px;
  position:relative;
  background:#dedbda;
  z-index:0;
}
#home.scrolled-fair #contents{
  background:#dedbda!important;
}


#contents::before{
  content:'';
  width:100vw;
  height:100vh;
  display: block;
  background:url(../img/fix_bg01.jpg) no-repeat center center;
  background-size:cover;
  position:fixed;
  top:0;
  left:0;
  z-index:0;
  pointer-events: none;
  transition: all 0.5s;
  opacity: 0.3;
}
#home #contents::before{
  opacity: 0;
  transition: all 0.5s;
}
#home.scrolled-fair #contents::before{
  opacity: 0.3;
}

#contents section{
  z-index:1;
  position:relative;
}
body:not(#home) #contents section{
  padding:50px 0;
}
#chapel #contents section{
  padding:8% 0!important;
}

/*---------------------------------------------
 ** チャペル
---------------------------------------------*/
#chapel main{
  background:url(../img/chapel/main_chapel.jpg) no-repeat center center;
  background-size:cover;
}
#chapel_chapel h3, #garden_chapel h3 {
  font-size:120%!important;
  color:#a67e6f;
  margin-bottom:3%;
  letter-spacing: 0.5rem;
}

#chapel_chapel h3 span, #garden_chapel h3 span{
  letter-spacing: 0rem;
  font-size:380%!important;
  color:#a67e6f;
  display: block;
  margin-bottom:2.5%;
}
#chapel_chapel h3+p, #garden_chapel h3+p{
  text-align: center;
  margin-bottom:3%;
}

#chapel_chapel{
  background: linear-gradient(#f5f3f2, #f5f3f200);
}
#chapel_chapel>div{
  width:90%;
  max-width:1200px;
  margin:0 auto;
}
#chapel_chapel h4{
  text-align: left;
  display: flex;
  flex-wrap: wrap;
  align-items:baseline;
}
#chapel_chapel h4>div{
  display: inline-block;
}
#chapel_chapel h4>div:nth-of-type(2){
  padding-left:20px;
  font-size:30%;
}
#chapel_chapel>div>div{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-top:5%;
  position:relative;
}
#chapel_chapel>div>div::before{
  content:'Cross virgin road';
  color: #a9a079;
  display: inline-block;
  font-family: "Rouge Script", serif;
  line-height:1.0;
  font-size:600%;
  filter: blur(100px);
  transform: scale(0.5) translateX(-600px);
  position:absolute;
  bottom:-20px;
  right:20%;
  opacity: 0;
  transition: all 2s ease;
  transition-duration: 3s;
  transition-timing-function: ease-in-out;
  z-index:3;
}
.chapel_giji_on::before{
  filter: blur(0px)!important;
  transform: scale(1) translateX(0px)!important;
  opacity: 1!important;
}
.chapel_left{
  width:53%;
  max-width:550px;
  z-index:2;
}
.chapel_left>div{
  text-align: left;
  margin-bottom:70px;
}
#chapel h4.mincho_hina{
  font-size:340%;
  color:#a67e6f;
  margin-bottom:30px;
}
#chapel_chapel h5{
  font-size:160%;
  letter-spacing: 0.7rem;
  color:#a67e6f;
  line-height:1.8;
  margin-bottom:40px;
}

.chapel_right{
  width:45%;
  z-index:1;
}

@media screen and (max-width: 1400px) {
  #chapel_chapel>div>div::before{
    right:10%;
  }
}
@media screen and (max-width: 1200px) {
  #chapel_chapel>div>div::before{
    right:7%;
  }
}

@media screen and (max-width: 1050px) {
  .chapel_left{
    width:100%;
    max-width:unset;
    text-align: left;
  }
  #chapel_chapel h4 {
    text-align: center;
    justify-content: center;
  }
  #chapel_chapel h5{
    text-align: center;
  }
  #chapel_chapel p{
    text-align: center;
  }
  .chapel_left>div{
    margin-bottom:40px;
  }
  .chapel_left img{
    width:55%;
    margin-left:0;
    padding-bottom:80px;
  }
  .chapel_right{
    width:52%;
    overflow: hidden;
    position:absolute;
    bottom:0;
    right:0;
  }
  .chapel_right img{
    height:400px;
    object-fit: cover;
    object-position: center;
  }
  #chapel_chapel>div>div::before{
    font-size:500%;
    bottom:-15px;
    right:auto;
    left:0;
    padding-left:5px;
  }
} 
@media screen and (max-width: 900px) {
  .chapel_right img{
    height:350px;
    object-fit: cover;
    object-position: center;
  }
}


.ul_col2{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-top:6%;
}
.ul_col2 li{
  width:48%;
  display: block;
}

#garden_chapel{
  background: #c7ddc761;
  padding-bottom:30px!important;
}
#garden_chapel>div{
  width:90%;
  max-width:1200px;
  margin:0 auto;
}

#chapel #contents section#chapel_style{
  margin-top:8%;
  background:#f5f3f287;
  position:relative;
  padding-top:60px!important;
  padding-bottom:3%!important;
}
#chapel_style h3{
  font-size:400%;
  line-height:1.0;
  color:#a67e6f;
  position:absolute;
  top:-40px;
  right:0;
  left:0;
  margin:0 auto;
}

#chapel_style>div{
  width:93%;
  max-width:1220px;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
}
#chapel_style>div>dl{
  width:25%;
  padding:0 1.5%;
  margin-bottom:2%;
}
#chapel_style>div>dl dt{
  margin-bottom:10px;
}
#chapel_style>div>dl dd{
  text-align: left;
  font-size:90%;
}
#chapel_style>div>dl dd h4{
  text-align: center;
  font-size:120%;
  margin-bottom:10px;
}
#chapel_style+.btn_gold{
  background:#fff!important;
  padding:2% 0 3%;
  position:relative;
  z-index:1;
}

@media screen and (max-width: 1200px) {
  #chapel #contents section#chapel_style{
    margin-top:120px;
  }
  #chapel_style>div{
    justify-content: space-between;
  }
  #chapel_style>div>dl{
    width:48%;
    padding:0;
    margin-bottom:40px;
  }
  #chapel_style>div>dl dt {
    margin-bottom: 15px;
  }
  #chapel_style+.btn_gold {
    padding: 40px 0 70px;
  }

}

/*---------------------------------------------
 ** ドレス
---------------------------------------------*/
#dress main{
  background:url(../img/dress/main_dress.jpg) no-repeat center center;
  background-size:cover;
}

#dress_krone{
  background: linear-gradient(#f5f3f2, #f5f3f200);
}
#dress_krone h3{
  text-align: left;
}
#dress_krone>div{
  width:95%;
  margin-left:5%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
#dress_krone>div>div{
  width:38%;
}
#dress_krone>div>div>div{
  width:410px;
  margin-left:calc(100% - 410px);
  text-align: left;
  margin-bottom:70px;
}
#dress h3.mincho_hina{
  font-size:340%;
  color:#a67e6f;
  margin-bottom:30px;
}
#dress_krone h4{
  font-size:160%;
  letter-spacing: 0.7rem;
  color:#a67e6f;
  line-height:1.8;
  margin-bottom:40px;
}

#dress_krone>div>img{
  width:57%;
  margin-top:30px;
}

#dress_commit{
  width:90%;
  max-width:1400px;
  background:#fff;
  margin:3% auto 0;
  position:relative;
  padding:8% 0 5%!important;
}
#dress_commit h3{
  font-size:600%;
  color:#a9a079;
  display: inline-block;
  line-height: 1;
  position:absolute;
  top:-40px;
  right:0;
  filter: blur(100px);
  transform: scale(0.5) translateX(-300px);
  transition: all 1s ease;
  transition-duration: 2s;
  transition-timing-function: ease-in-out;
  opacity: 0;
}
.dress_commit_on{
  filter: blur(0px)!important;
  transform: scale(1) translateX(0px)!important;
  opacity: 1!important;
}

#dress_commit>div{
  width:90%;
  max-width:1000px;
  margin:0 auto 5%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
}
#dress_commit>div:nth-of-type(2n){
  flex-direction: row-reverse;
}
#dress_commit>div>div{
  width:55%;
}
#dress_commit>div>dl{
  width:40%;
  text-align: left;
}
#dress_commit>div>dl dt{
  color:#a9a079;
  font-size:140%;
  letter-spacing: 0.6rem;
  margin-bottom:15px;
}

#dress_lineup>div{
  padding:3% 0 5%;
  background:#f6f0dd80;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items:flex-end;
  margin-bottom:2%;
}
#dress_lineup>div>img{
  width:45%;
}
#dress_lineup>div>div{
  width:54%;
}

#dress_lineup .lineup_text{
  width:80%;
  max-width:740px;
  margin-left:10%;
  text-align: left;
  margin-bottom:50px;
}
#dress_lineup .lineup_text h3{
  font-size:480%;
  color: #a67e6f;
  margin-bottom:3%;
  line-height:1.6;
}
#dress_lineup .lineup_text h4{
  font-size:160%;
  color: #a67e6f;
  margin-bottom:3%;
  letter-spacing: 0.2rem;
}

.slick-slider div{
  transition: none;
}

#dress_lineup .slick-slide img{
  padding:0 8px;
  box-sizing: border-box;
}

.dress_lineup>div>div ul{
  position:relative;
}
#dress_lineup .slick-list{
  padding-left:0!important;
}
#dress_lineup .slick-dotted.slick-slider{
  margin-bottom:0px!important;
}
#dress_lineup .slick-dots{
  bottom:-30px!important;
}

#dress_lineup .slick-dots li button:before{
  font-size:13px!important;
  opacity: 1!important;
  color:#fff!important;
}
#dress_lineup .slick-dots{
  text-align:left!important;
}
#dress_lineup .slick-dots li button{
  color:#fff!important;
}
#dress_lineup .slick-dots li button:hover:before{
  opacity: 0.6!important;
  color:#a67e6f!important;
}
#dress_lineup .slick-dots li.slick-active button:before{
  opacity: 1!important;
  color: #a67e6f!important;
}

#dress_lineup>div:nth-child(2n){
  flex-direction: row-reverse;
  background:#e5d39a80;
}
#dress_lineup>div:nth-child(2n) .lineup_text{
  width:78%;
  margin-left:15%;
}
#dress_lineup>div:nth-child(2n) .slick-list{
  padding-left:80px!important;
  padding-right:0px!important;
}
#dress_lineup>div:nth-child(2n) .slick-dots{
  text-align:right!important;
}

#dress_brand{
  background:#fff;
  padding:7% 0 5%;
}
@keyframes infinity-scroll-left {
  from {
    transform: translateX(0);
  }
  to {
    transform: translateX(-100%);
  }
}
.logo__wrap {
  display: flex;
  overflow: hidden;
}

.logo__list {
  display: flex;
  list-style: none;
  height:50px;
  align-items: center;
}

.logo__list--left{
animation :infinity-scroll-left 60s infinite linear 0.5s both;
}

.logo__item > img{
  width:auto!important;
  height:100%!important;
  max-width:unset!important;
  padding:0 20px;
}
#dress_brand .btn_gold{
  margin:3% auto 0;
}

@media screen and (max-width: 1170px) {
  #dress_krone>div>div{
    width:422px;
  }
  #dress_krone>div>img{
    width:calc(95% - 422px);
  }
  #dress_lineup .lineup_text h3{
    font-size:360%;
  }
}

@media screen and (max-width: 1000px) {
  #dress_krone>div{
    width:100%;
    margin-left:0;
  }
  #dress_krone>div>div{
    width:90%;
    margin:0 auto;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-end;
    position:relative;
  }
  #dress_krone>div>div h4{
    position:absolute;
    left:200px;
    top:20px;
    font-size:130%;
  }
  #dress_krone>div>div>div{
    width:422px;
    margin-left:0;
    margin-bottom:30px;
  }
  #dress_krone>div>div>img{
    width:calc(98% - 422px);
    max-width:380px;
    margin-bottom:30px;
  }
  #dress_krone>div>img{
    width:100%;
  }
}

/*---------------------------------------------
 ** フォトウエディング
---------------------------------------------*/
#photo_wedding main{
  background:url(../img/photo_wedding/main_photo.jpg) no-repeat 5% bottom;
  background-size:cover;
}

#photo_photo{
  background: linear-gradient(#f5f3f2, #f5f3f200);
  display: flex;
  flex-wrap: wrap;
  justify-content:right;
  align-items: flex-start;
  padding-top:80px!important;
}
.photo_photo_text{
  width:35%;
  margin-left:12%;
  margin-right:5%;
  display: flex;
  flex-wrap: wrap;
  justify-content: right;
}
.photo_photo_text p{
  display: inline-block;
  margin-bottom:100px;
}
.photo_photo_text img{
  width:100%;
}
.photo_photo_img{
  width:48%;
}

#photo_plan h3{
  font-size:120%!important;
  color:#a67e6f;
  margin-bottom:1%;
  letter-spacing: 0.5rem;
}

#photo_plan h3 span{
  font-size:380%!important;
  color:#a67e6f;
  display: block;
  margin-bottom:2.5%;
}

.plan_menu{
  width:90%;
  max-width:1300px;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding:30px 0 40px;
}
.plan_menu li{
  width:21%;
  margin:0 1% 0.5%;
}
.plan_menu li:nth-of-type(4){
  width:29%;
  margin:0 1% 0.5%;
}

.plan_menu li a{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height:  65px;
  text-align: center;
  background:#fff;
  position:relative;
  margin-bottom:15px;
  overflow: hidden;
  color: #a67e6f!important;
  line-height:1.5;
  font-size:110%;
  border:1px solid #a67e6f;
}
.plan_menu li a::after{
  content:'';
  position: absolute;
  top: 21px;
  left: -7px;
  width: 45px;
  height: 1px;
  display: block;
  background: #a67e6f;
  transform: rotate(-45deg);
  transform-origin: top left;
}

.plan_menu li a span{
  position:relative;
  display: inline-block;
  letter-spacing: 0.1rem;
  padding-right:10px;
}
.plan_menu li a span::before{
  content:'';
  width:9px;
  height:10px;
  display: block;
  background:url(http://www.brownokapi29.sakura.ne.jp/web/wp-content/themes/sara/img/arrow01_br.png) no-repeat center center;
  background-size:100% auto;
  transform: rotate(90deg);
  position:absolute;
  right:-10px;
  top:0;
  bottom:0;
  margin:auto 0;
  transition: all 0.5s;
}
.plan_menu li a:hover span::before{
  bottom:-10px;
}

.plan_data{
  width:90%;
  max-width:1200px;
  margin:0 auto 5%;
  padding:5% 5% 3%;
  background:#fff;
}
.plan_data h4{
  font-size:200%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items:baseline;
  color:#a67e6f;
  position:relative;
  margin-bottom:40px;
  padding:30px 3% 0 0;
}
.plan_data h4:after{
  content:'';
  width:70%;
  max-width:300px;
  height:1px;
  display: block;
  background:#a67e6f;
  position:absolute;
  bottom:-10px;
  right:0;
  left:0;
  margin:0 auto;
}
.plan_data h4 span{
  padding-right:3%;
}
.plan_data h4 small{
  font-size:70%;
  padding-bottom:3px;
  padding-left:3px;
  display: inline-block;
}

.plan_detail{
  max-width:620px;
  border-top:1px solid #a67e6f;
  border-bottom:1px solid #a67e6f;
  padding:2% 2% 1%;
  margin:40px auto 50px;
}
.plan_detail dl{
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  justify-content: space-between;
  line-height:1.4;
  margin:2px auto 10px;
}
.plan_detail dl dt{
  width:9rem;
  font-size:90%;
  background:#a9a079;
  color:#fff;
  text-align: center;
  padding:2px 0;
}
.plan_detail dl dd{
  width:calc(98% - 9rem);
  text-align: left;
}
.dd_flex>p{
  margin-bottom:3px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.dd_flex>p span:nth-of-type(1){
  width:9rem;
}
.dd_flex>p span:nth-of-type(2){
  width:calc(100% - 9rem);
}  
.plan_detail dl dd>span{
  text-decoration: underline;
}
.plan_img{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.plan_img li{
  width:31%;
  margin-bottom:2%;
  display: block;
}

#photo_step{
  padding: 60px 0 60px!important;
  background: #e4c7bd57;
}
#photo_step>div{
  width:90%;
  max-width:780px;
  margin:0 auto;
}
#photo_step h3{
  font-size:120%!important;
  color:#a67e6f;
  margin-bottom:30px;
  letter-spacing: 0.5rem;
}

#photo_step h3 span{
  font-size:380%!important;
  color:#a67e6f;
  display: block;
  margin-bottom:2.5%;
}


#photo_step>div>div dl{
  margin-bottom:50px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position:relative;
}
#photo_step>div>div dl::after{
  content:'';
  width:16px;
  height:50px;
  background:url(../img/photo_wedding/arrow_plan.png) no-repeat top center;
  background-size:100% auto;
  position:absolute;
  bottom:-60px;
  left:0;
  right:0;
  margin:0 auto; 
}
#photo_step>div>div dl:last-child::after{
  width:0;
  display:none;
}

#photo_step>div>div dl dt{
  width:60px;
  color:#a67e6f;
  text-align: center;
  line-height:1.2;
  letter-spacing: 0.1rem;
  padding-top:15px;
}
#photo_step>div>div dl dt span{
  color:#a67e6f;
  font-size:220%;
  display: block;
}
#photo_step>div>div dl dd{
  width:calc(95% - 60px);
  text-align: left;
}
#photo_step>div>div dl dd span{
  color:#a67e6f;
  font-size:130%;
  display: block;
  margin-bottom:5px;
}
#photo_step+.btn_gold{
  background:#fff!important;
  padding:2% 0 3%;
  position:relative;
  z-index:1;
}

@media screen and (max-width: 1150px) {
  .plan_menu li {
    width: 48%!important;
    max-width:360px;
    margin: 0 1% 0.5%;
  }
  #photo_step+.btn_gold {
    padding: 40px 0 70px;
  }
}
@media screen and (max-width: 1000px) {
  .photo_photo_text{
    width:45%;
    margin-left:5%;
  }
  .photo_photo_text p{
    margin-bottom:50px;
  }
  .photo_photo_img{
    width:45%;
  }
}

/*---------------------------------------------
 ** 宴会
---------------------------------------------*/
#party main{
  background:url(../img/party/main_party.jpg) no-repeat 65% center;
  background-size:cover;
}
body#party main h2{
  text-shadow: 2px 2px 10px #ac8d5d ,
    -2px 2px 10px #ac8d5d ,
    2px -2px 10px #ac8d5d ,
    -2px -2px 10px #ac8d5d;
}
body#party main h2 small{
  letter-spacing: 0.2rem;
  padding-left:10px;
}

#party_read{

  background: linear-gradient(#f5f3f2, #f5f3f200);
  padding-top:80px!important;
  padding:5% 0 2%!important;
}
#party_read p:nth-of-type(1){
  width:90%;
  max-width:1200px;
  font-size:150%;
  text-align: center;
  line-height:1.8;
  margin:0 auto 30px;
  color: #a67e6f;
  letter-spacing: 0.2rem;
}
#party_read p:nth-of-type(2){
  width:90%;
  max-width:1200px;
  text-align: center;
  margin:0 auto;
}
#party_plan h3{
  font-size:120%!important;
  color:#a67e6f;
  margin-bottom:1%;
  letter-spacing: 0.5rem;
}

#party_plan h3 span{
  font-size:380%!important;
  color:#a67e6f;
  display: block;
  margin-bottom:2.5%;
}
.party_menu{
  width:90%;
  max-width:1000px;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding:30px 0 40px;
}
.party_menu li{
  width:31%;
  margin:0 1% 0.5%;
}

.party_menu li a{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height:  65px;
  text-align: center;
  background:#fff;
  position:relative;
  margin-bottom:15px;
  overflow: hidden;
  color: #a67e6f!important;
  line-height:1.5;
  font-size:110%;
  border:1px solid #a67e6f;
}
.party_menu li a::after{
  content:'';
  position: absolute;
  top: 21px;
  left: -7px;
  width: 45px;
  height: 1px;
  display: block;
  background: #a67e6f;
  transform: rotate(-45deg);
  transform-origin: top left;
}

.party_menu li a span{
  position:relative;
  display: inline-block;
  letter-spacing: 0.1rem;
  padding-right:10px;
}
.party_menu li a span::before{
  content:'';
  width:9px;
  height:10px;
  display: block;
  background:url(http://www.brownokapi29.sakura.ne.jp/web/wp-content/themes/sara/img/arrow01_br.png) no-repeat center center;
  background-size:100% auto;
  transform: rotate(90deg);
  position:absolute;
  right:-10px;
  top:0;
  bottom:0;
  margin:auto 0;
  transition: all 0.5s;
}
.party_menu li a:hover span::before{
  bottom:-10px;
}
@media screen and (max-width: 900px) {
  .party_menu{
    max-width:620px;
  }
  .party_menu li{
    width:48%;
    margin:0 1% 0.5%;
  }
  .party_menu li a{
    margin-bottom:10px;
  }
}

.party_data{
  width:90%;
  max-width:1200px;
  margin:0 auto 5%;
  padding:5% 5% 3%;
  background:#fff;
}
.party_data h4{
  font-size:200%;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items:baseline;
  color:#a67e6f;
  position:relative;
  margin-bottom:40px;
  padding:30px 0 0 0;
}
.party_data h4:after{
  content:'';
  width:70%;
  max-width:300px;
  height:1px;
  display: block;
  background:#a67e6f;
  position:absolute;
  bottom:-10px;
  right:0;
  left:0;
  margin:0 auto;
}
#plan02.party_data h4+p{
  text-align: center;
}

.party_food {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
  margin-top:40px;
}
.party_food >img{
  width:50%;
}
.party_food >div{
  width: 46%;
}
.party_food >div h5{
  text-align: left;
  margin-bottom:20px;
}
.party_food >div h5 span{
  background-color: #a9a079;
  color:#fff;
  padding:8px 20px;
  font-size:130%;
}
.party_food_menu{
  font-size:90%;
  line-height:1.6;
  text-indent: -7px;
}
.party_food_notice{
  font-size:90%;
  line-height:1.4;
  padding:10px 0 15px;
  margin:15px auto 0;
  border-top:1px solid #a9a079;
  border-bottom:1px solid #a9a079;
}
.party_food_notice_center{
  width:100%;
  max-width:530px;
  display: inline-block;
  margin:30px auto 10px;
  padding:15px 10px 15px;
}
.party_food_notice_center .br_none{
  display: none;
}
.party_choice{
  margin-top:50px;
  border: 1px solid #a9a079;
  padding:30px;
  position:relative;
  text-align: center;
}
.party_choice h6{
  width:280px;
  position:absolute;
  top:-25px;
  right:0;
  left:0;
  margin:0 auto;
  display: inline-block;
  font-size:110%;
  font-weight: 500;
  color:#a9a079;
  background:#fff;
  padding:10px 20px;
}
.party_choice ul{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.party_choice li{
  width:32%;
  padding:10px;
  background:#e6e6e6;
  text-align: center;
}
@media screen and (max-width: 1080px) {
  .party_choice{
    padding-bottom:10px;
  }
  .party_choice li{
    width:49%;
    margin-bottom:2%;
  }
}
.party_drink{
  margin-bottom:30px;
}
.party_drink h5{
  text-align: left;
  margin-bottom:10px;
}
.party_drink h5 span{
  background-color: #a9a079;
  color:#fff;
  padding:8px 20px;
  font-size:140%;
}
#party #plan03 .party_food_notice_center{
  text-align: center;
}

#party_venue{
  background:#e8d8ba91;
  padding:6% 0 3%!important;
}
#party_venue .party_menu li a {
  background:#f6ecea;
}
#party_venue h3+p{
  width:90%;
  margin:0 auto 20px;
}

.venue_info{
  display: flex;
  flex-wrap: wrap;
  justify-content: left;
  align-items:flex-end;
  margin-bottom:5%;
}
.venue_info>div:nth-of-type(1){
  width:50%;
  margin-right:5%;
}
.venue_info>div:nth-of-type(2){
  width:40%;
  max-width:450px;
  text-align: left;
}
.venue_cate{
  display: inline-block;
  background:#a9a079;
  padding:5px 25px;
  color:#fff;
  font-size:110%;
  line-height:1.4;
  text-align: left;
  margin-bottom:5px;
  font-weight:400!important;
}
.venue_info h4{
  color:#a67e6f;
  display: flex;
  align-items: baseline;
  flex-wrap: wrap;
  line-height:1.4;
}
.venue_info h4 span{
  display: inline-block;
  font-size:360%;
}
.venue_info h4 small{
  display: inline-block;
  padding-left:10px;
}
.venue_info h4+p{
  font-size:90%;
}
.venue_data{
  border-top:1px solid #a67e6f;
  border-bottom:1px solid #a67e6f;
  padding:20px 0 10px;
  line-height:1.6;
}
.venue_data dl{
  margin-bottom:10px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.venue_data dl dt{
  width:9rem;
  text-align: center;
  color:#fff;
  padding:2px 5px;
  background-color: #a67e6f;
  font-size:90%;
}
.venue_data dl dd{
  width:calc(97% - 9rem);
}
#venue02{
  flex-direction: row-reverse;
  justify-content: right;
}
#venue02.venue_info>div:nth-of-type(1){
  margin-right:0;
  margin-left:5%;
}
@media screen and (max-width: 1000px) {
  #party_venue h3+p{
    text-align: left;
  }
}

#party_event{
  background:#fff;
  padding:6% 0 6%!important;
}
#party_event>div{
  width:90%;
  max-width:1050px;
  margin:0 auto;
}

#party_event h3{
  font-size:120%!important;
  color:#a67e6f;
  margin-bottom:3%;
  letter-spacing: 0.5rem;
}

#party_event h3 span{
  font-size:380%!important;
  color:#a67e6f;
  display: block;
  margin-bottom:2.5%;
}

.party_tag{
  max-width:640px;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: flex-start;
  margin:2% auto 3%;
}
.party_tag li{
  display: inline-block;
  font-size:110%;
  padding:7px 20px;
  line-height:1.6;
  margin:0 5px 10px;
  color:#a67e6f;
  border:1px solid #a67e6f;
}

.party_event_dl{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.party_event_dl>dl{
  width:31%;
  margin-bottom:3%;
}
.party_event_dl>dl dt{
  margin-bottom:12px;
}
.party_event_dl>dl dd{
  text-align: left;
}
.party_event_dl>dl dd h4{
  color: #a67e6f;
  font-size:130%;
  text-align: center;
  line-height:1.6;
  margin-bottom:5px;
}
#party_event .btn_gold_w{
  font-size:110%;
}


@media screen and (max-width: 1100px) {
  .party_food{
    max-width:600px;
    margin:0 auto 30px;
  }
  .party_food>img{
    width:100%;
    margin-bottom:20px;
  }
  .party_food>div{
    width:100%;
  }
  #party_venue {
    background: #e8d8ba91;
    padding: 70px 0px!important;
  }
  .party_menu {
    padding: 20px 0 30px;
  }
  .venue_info{
    width:90%;
    max-width:900px;
    margin:0 auto 5%;
  }
  .venue_info>div:nth-of-type(1){
    width:100%;
    margin-bottom:20px;
    margin-right:0!important;
    margin-left:0!important;
  }
  .venue_info>div:nth-of-type(2){
    width:95%;
    max-width:unset;
    margin:0 auto;
  }
  .venue_data{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
  }
  .venue_data dl{
    width:48%;
  }
}

@media screen and (max-width: 1000px) {
  .party_event_dl{
    max-width:850px;
    margin:0 auto 20px;
  }
  .party_event_dl>dl{
    width:48%;
    margin-bottom:40px;
  }
}

/*---------------------------------------------
 ** パーティ会場
---------------------------------------------*/
#banquet main{
  background:url(../img/banquet/main_banquet.jpg) no-repeat 20% center;
  background-size:cover;
}
body#banquet main h2{
  text-shadow: 2px 2px 10px #ac8d5d ,
    -2px 2px 10px #ac8d5d ,
    2px -2px 10px #ac8d5d ,
    -2px -2px 10px #ac8d5d;
}
body#banquet main h2 small{
  letter-spacing: 0.2rem;
  padding-left:10px;
}

#banq_select{
  padding:5% 0 2%!important;
  background:#e4c7bd57;
}
#banq_select>div{
  width:90%;
  max-width:1200px;
  margin:0 auto;
}
#banq_select h3{
  font-size:360%;
  color:#a67e6f;
  margin-bottom:2.5%;
  line-height:1.6;
}
#banq_select p{
  text-align: center;
  font-size:90%;
}
.banq_menu{
  width:90%;
  max-width:1000px;
  margin:0 auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  align-items: center;
  padding:30px 0 40px;
}
.banq_menu li{
  width:21%;
  margin:0 2% 0.5%;
}

.banq_menu li a{
  display: flex;
  align-items: center;
  justify-content: center;
  min-height:  65px;
  text-align: center;
  background:#fff;
  position:relative;
  margin-bottom:15px;
  overflow: hidden;
  color: #a67e6f!important;
  line-height:1.5;
  font-size:110%;
  border:1px solid #a67e6f;
}
.banq_menu li a::after{
  content:'';
  position: absolute;
  top: 21px;
  left: -7px;
  width: 45px;
  height: 1px;
  display: block;
  background: #a67e6f;
  transform: rotate(-45deg);
  transform-origin: top left;
}

.banq_menu li a span{
  position:relative;
  display: inline-block;
  letter-spacing: 0.1rem;
  padding-right:10px;
}
.banq_menu li a span::before{
  content:'';
  width:9px;
  height:10px;
  display: block;
  background:url(http://www.brownokapi29.sakura.ne.jp/web/wp-content/themes/sara/img/arrow01_br.png) no-repeat center center;
  background-size:100% auto;
  transform: rotate(90deg);
  position:absolute;
  right:-10px;
  top:0;
  bottom:0;
  margin:auto 0;
  transition: all 0.5s;
}
.banq_menu li a:hover span::before{
  bottom:-10px;
}

.banq_section{
  padding:6% 0 5%!important;
}

.banq_section > div{
  width:90%;
  max-width:1400px;
  margin:0 auto;
  font-size:90%;
}
.banq_section h3{
  font-size:120%!important;
  color:#a67e6f;
  margin-bottom:3%;
  letter-spacing: 0.5rem;
}

.banq_section h3 span{
  letter-spacing: 0rem;
  font-size:480%!important;
  color:#a67e6f;
  display: block;
  margin-bottom:2.5%;
}
.banq_section h3+p{
  text-align: center;
  margin-bottom:3%;
}
.banq_top_img+p{
  text-align: center;
  padding:3% 0;
}
.banq_block{
  margin:3% auto 70px;
  position:relative;
}
.banq_block dl{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items:center;
}
.banq_block dl:nth-of-type(1){
  position:relative;
  z-index:1;
  align-items:flex-start;
}
.banq_block dl:nth-of-type(2){
  position:relative;
  z-index:2;
  flex-direction: row-reverse;
  margin-top:-150px;
  align-items:flex-end;
}
.banq_block dl:nth-of-type(1) dt{
  width:58%;
}
.banq_block dl:nth-of-type(1) dd{
  width:34%;
  text-align: left;
  padding-top:100px;
  margin-right:3%
}

.banq_block dl:nth-of-type(2) dt{
  width:52%;
}
.banq_block dl:nth-of-type(2) dd{
  width:42%;
  text-align: left;
  padding-bottom:60px;
  margin-left:4%;
}
.banq_block::before{
  content:'Cross Step';
  color: #f8f5ee;
  display: inline-block;
  font-family: "Rouge Script", serif;
  line-height:1.0;
  font-size:600%;
  filter: blur(100px);
  transform: scale(0.5) translateX(-600px);
  position:absolute;
  bottom:-30px;
  right:0;
  opacity: 0;
  transition: all 2s ease;
  transition-duration: 3s;
  transition-timing-function: ease-in-out;
  z-index:3;
}
.banq_giji_on::before{
  filter: blur(0px)!important;
  transform: scale(1) translateX(0px)!important;
  opacity: 1!important;
}

.banq_block2{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
}
.banq_block2>dl{
  width:48%;
  margin-bottom:5%;
}
.banq_block2>dl dt{
  display: block;
  position:relative;
  margin-bottom:40px;
}

.banq_block2>dl:nth-of-type(1) dt::before{
  content:'Design';
}
.banq_block2>dl:nth-of-type(2) dt::before{
  content:'Wall';
}
.banq_block2>dl:nth-of-type(3) dt::before{
  content:'Open kitchen';
}
.banq_block2>dl:nth-of-type(4) dt::before{
  content:'Screen';
}
.banq_block2>dl dt::before{
  color: #a9a079;
  display: inline-block;
  font-family: "Rouge Script", serif;
  line-height:1.0;
  font-size:600%;
  filter: blur(100px);
  transform: scale(0.5) translateX(400px);
  position:absolute;
  bottom:-30px;
  left:0;
  opacity: 0;
  transition: all 2s ease;
  transition-duration: 3s;
  transition-timing-function: ease-in-out;
  z-index:3;
}

.banq_giji_on2::before{
  filter: blur(0px)!important;
  transform: scale(1) translateX(0px)!important;
  opacity: 1!important;
}
.banq_block2>dl dd{
  text-align: left;
}

#banq02 {
  background:#fff;
}
#banq02 .banq_block dl:nth-of-type(1){
  position:relative;
  flex-direction: row-reverse;
  z-index:2;
  align-items:flex-start;
}
#banq02 .banq_block dl:nth-of-type(2){
  position:relative;
  z-index:1;
  flex-direction:unset;
  margin-top:-150px;
  align-items:flex-end;
}

#banq02 .banq_block::before{
  content:'Wood terrace';
  bottom:-30px;
  left:-300px;
  color: #a9a079;
}

#banq02 .banq_block2>dl:nth-of-type(1) dt::before{
  content:'Kitchen';
}
#banq02 .banq_block2>dl:nth-of-type(2) dt::before{
  content:'Open Bar';
}

#banq_garden_h3{
  padding:5% 0 2%!important;
  background:#e4c7bd57;
}
#banq_garden_h3>div{
  width:90%;
  max-width:1200px;
  margin:0 auto;
}
#banq_garden_h3 h3{
  font-size:360%;
  color:#a67e6f;
  margin-bottom:2.5%;
  line-height:1.6;
}
#banq03 .banq_block dl:nth-of-type(2) dd {
  padding-bottom: 140px;
}
.garden_img{
  margin-top:-120px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom:30px;
}
#banq03 .garden_img>img{
  width:40%;
}
#banq03 .garden_img>div{
  width:55%;
}
#banq03 .garden_img>div>img:nth-of-type(1){
  width:65%;
  margin: 100px 0 45px 35%;
}

#banq04 {
  background-color: #fff;
}
#banq04 .garden_img{
  margin-top:0px;
}
#banq04 .garden_img>img{
  width:64%;
}
#banq04 .garden_img>div{
  width:32%;
}
#banq04 .garden_img>div>img:nth-of-type(1){
  margin: 100px 0 45px 0;
}

#banq03 .banq_block::before,
#banq04 .banq_block::before{
  content:'';
  display: none;
}

@media screen and (max-width: 1340px) {
  .banq_section {
    padding: 90px 0 70px!important;
  }
  .banq_block dl:nth-of-type(1) dd {
    width: 38%;
    margin-right: 0%;
  }
  #banq02 .banq_block dl:nth-of-type(1) dd {
    padding-top: 50px;
  }

  .banq_block dl:nth-of-type(2),
  #banq02 .banq_block dl:nth-of-type(2) {
    margin-top: -40px;
  }
  .banq_block dl:nth-of-type(2) dd {
    width: 43%;
    margin-left: 0%;
  }
  #banq03 .banq_block dl:nth-of-type(2) dd {
    padding-bottom: 180px;
  }
  #banq04 .banq_block dl:nth-of-type(2) dd {
    padding-bottom: 130px;
  }
}
@media screen and (max-width: 1200px) {
  #banq02 .br_none{
    display: none;
  }
}

@media screen and (max-width: 1000px) {
  .banq_menu li {
    width: 23%;
    margin: 0 1% 0.5%;
  }
  .banq_block {
    margin: 3% auto 50px;
  }
  .banq_block dl:nth-of-type(1) dt {
    width: 53%;
  }
  .banq_block dl:nth-of-type(1) dd {
    width: 43%;
    padding-top:30px;
  }
  #banq01 .br_none{
    display: none;
  }
  #banq02 .banq_block dl:nth-of-type(1) dd {
    padding-top: 10px;
  }
  #banq03 .banq_block dl:nth-of-type(2) dd {
    padding-bottom: 90px;
  }
  #banq03 .banq_block .br_none{
    display: none;
  }
  #banq03 .garden_img {
    margin-top: -70px;
  }
  #banq04 .banq_block dl:nth-of-type(2) dd {
    padding-bottom: 70px;
  }
  #banq04 .banq_block .br_none{
    display: none;
  }
}

/*---------------------------------------------
 ** 婚礼料理
---------------------------------------------*/
#cuisine main{
  background:url(http://www.brownokapi29.sakura.ne.jp/web/wp-content/themes/sara/img/cuisine/main_cuisine.jpg) no-repeat center center;
  background-size:cover;
}
body#cuisine main h2 small{
  letter-spacing: 0.2rem;
  padding-left:10px;
}

#cuisine_hosp{
  background: linear-gradient(#f5f3f2, #f5f3f200);
  display: flex;
  flex-wrap: wrap;
  align-items: flex-start;
  flex-direction: row-reverse;
  justify-content: left;
  padding-bottom:150px!important;
}

.hosp_text{
  width:40%;
  max-width:600px;
  margin:0 5% 3% 5%;
  text-align: left;
}
.hosp_text h3{
  font-size:360%;
  color:#a67e6f;
  letter-spacing: 0.3rem;
  text-align: left;
}
.hosp_text h4{
  font-size:170%;
  color:#a67e6f;
  margin:30px 0 20px;
  letter-spacing: 0.4rem;
}
.hosp_text p{
  font-size:90%;
}
.hosp_text img{
  margin-top:60px;
}
.hosp_img{
  width:48%;
}


.cuisine_point{
  width:90%;
  max-width:1200px;
  margin:60px auto 0;
  background:#fff;
  box-shadow: 7px 7px 0 #a67e6fd6;
  padding:60px 4% 4% 6%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  position:relative;
}
.cuisine_point_text{
  width:40%;
}
.cuisine_point_text h3{
  font-size:500%;
  color: #a67e6f;
  text-align: left;
  position:absolute;
  top:-45px;
  left:6%;
}
.cuisine_point_text h4{
  font-size:170%;
  color:#a67e6f;
  margin:0 0 15px;
  letter-spacing: 0.4rem;
  text-align: left;
}
.cuisine_point_text p{
  font-size:90%;
}
.cuisine_point_img{
  width:53%;
}

#cuisine_message{
  padding:60px 0 0!important;
  background:#f6f0dd80;
  margin-top:70px;
}
#cuisine_message h3{
  font-size:500%;
  color: #a67e6f;
  text-align: center;
  position:absolute;
  top:-35px;
  left:0;
  right:0;
  margin:0 auto;
}
#cuisine_message h4{
  font-size:170%;
  color:#a67e6f;
  margin:40px 0 40px;
  letter-spacing: 0.4rem;
  text-align: center;
}

.cuisine_chef{
  width:90%;
  max-width:1040px;
  margin:0 auto 100px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-end;
}
.cuisine_chef>img{
  width:45%;
}
.cuisine_chef>div{
  width:55%;
}
.cuisine_chef>div h5{
  color:#a67e6f;
  font-size:120%;
  text-align: left;
  border-bottom:1px solid #a67e6f;
  padding:15px 0 10px 75px;
}
.cuisine_chef>div>div{
  margin:20px 0 0 80px;
}
.cuisine_chef>div>div p{
  margin-bottom:50px;
  font-size:90%;
}


.cuisine_mesbox>div{
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: left;
  margin-top:60px;
}
.cuisine_mesbox>div:nth-child(2n){
  flex-direction: row-reverse;
  justify-content: right;

}

.cuisine_mesbox_img{
  width:48%;
}
.cuisine_mesbox_text{
  width:40%;
  max-width:600px;
  margin:0 5% 3% 5%;
  text-align: left;
}
.cuisine_mesbox_text h5{
  font-size:320%;
  color:#a67e6f;
  letter-spacing: 0.3rem;
  text-align: left;
  line-height:1.6;
}
.cuisine_mesbox_text h6{
  font-size:160%;
  color:#a67e6f;
  margin:10px 0 20px;
  letter-spacing: 0.4rem;
}
.cuisine_mesbox_text p{
  font-size:90%;
}

#cuisine_cake {
  background:#f5f3f287;
  padding:120px 0 70px!important;
}
#cuisine_cake>div{
  width:90%;
  max-width:1400px;
  margin:0 auto;
}
#cuisine_cake h3 {
  font-size: 120%!important;
  color: #a67e6f;
  margin-bottom: 3%;
  letter-spacing: 0.5rem;
}
#cuisine_cake h3 span{
  letter-spacing: 0rem;
  font-size: 380%!important;
  color: #a67e6f;
  display: block;
  margin-bottom: 2.5%;
}
.cuisine_original{
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: flex-start;
  margin-top:80px;
}
.cuisine_original>div{
  width:42%;
  position:relative;
  z-index:2;
  padding-bottom:400px;
  margin-left:3%;
}
.cuisine_original>div h4{
  font-size:320%;
  color:#a67e6f;
  letter-spacing: 0.3rem;
  text-align: left;
  line-height:1.6;
}
.cuisine_original>div h5{
  font-size:160%;
  color:#a67e6f;
  margin:10px 0 20px;
  letter-spacing: 0.4rem;
  text-align: left;
}
.cuisine_original>div p{
  font-size:90%;
}
.cuisine_original>div img{
  width:90%;
  position:absolute;
  top:300px;
  right:-200px;
}

.cuisine_original>img{
  width:48%;
  position:relative;
  z-index:1;
}

#cuisine_gallery {
  padding:70px 0!important;
  background:#a9a079
}
#cuisine_gallery h3{
  font-size:400%;
  color:#fff; 
  margin-bottom:40px; 
}
.slide_cuisine .slick-slide{
  height:auto;
  margin-bottom:15px;
}
.slide_cuisine .slick-slide img{
  padding:0 15px;
  box-sizing: border-box;
}

.slide_cuisine .slick-dots{
  bottom:-30px!important;
}

.slide_cuisine .slick-dots li button:before{
  font-size:13px!important;
  opacity: 1!important;
  color:#fff!important;
}
.slide_cuisine .slick-dots{
  text-align:center!important;
}
.slide_cuisine .slick-dots li button{
  color:#fff!important;
}
.slide_cuisine .slick-dots li button:hover:before{
  opacity: 0.6!important;
  color:#a67e6f!important;
}
.slide_cuisine .slick-dots li.slick-active button:before{
  opacity: 1!important;
  color: #a67e6f!important;
}

@media screen and (max-width: 1200px) {
  .hosp_text h3 {
    font-size: 300%;
  }
  .hosp_text h4 {
    font-size: 130%;
  }
  .cuisine_point_text h4 {
    font-size: 140%;
  }
  #cuisine_message h4 {
    font-size: 150%;
  }
  .cuisine_mesbox_text h5{
    font-size:280%;
  }
  .cuisine_mesbox_text h6{
    font-size:120%;
  }
  .cuisine_mesbox_text p{
    font-size:90%;
  }
  .cuisine_original>div h4{
    font-size:240%;
  }
  .cuisine_original>div h5{
    font-size:140%;
  }
  #cuisine_gallery h3 {
    font-size: 320%;
  }
}

@media screen and (max-width: 1000px) {
  .cuisine_original>div img {
    width: 100%;
    top: 320px;
    right: -100px;
  }
}
@media screen and (max-width: 900px) {
  .hosp_img {
    width: 80%;
  }
  .hosp_text {
    width: 95%;
    max-width: unset;
    margin: 0 0 3% 5%;
    position:relative;
  }
  .hosp_text img{
    width:45%;
    margin-top:0;
    position:absolute;
    right:0;
    top:0;
  }
  .cuisine_point {
    width: 90%;
    max-width: 1200px;
    margin: 90px auto 0;
  }
  .cuisine_point_text {
    width: 46%;
  }
  .cuisine_point_img {
    width: 48%;
  }
  #cuisine_hosp{
    padding-bottom:50px!important;
  }
}