@charset "UTF-8";
/*   
Theme Name: XeoryExtension
Theme URI: http://xeory.jp/extension
Description: Xeory拡張テーマ
Author: バズ部
Author URI: http://bazubu.com/
Version: 0.1.9
*/

/* SSY */

/* all display
-------------------------------------------------- */
.wrap {
  width: 1200px;
  box-sizing: border-box;
  margin: 0 auto;
  *zoom: 1;
}

.wrap:before {
  display: inline-table;
}

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

#main {
  width: 100%;
  float: left;
}

/*.main-inner {
  margin-right: 358px;
}*/

#side {
  width: 310px;
  float: left;
  margin-left: -310px;
}

.left-content #main {
  width: 100%;
  float: left;
}

.left-content .main-inner {
  margin-right: 358px;
  margin-left: 0;
}

.left-content #side {
  width: 310px;
  float: left;
  margin-left: -310px;
}

.right-content #main {
  width: 100%;
  float: left;
}

.right-content .main-inner {
  margin-left: 358px;
  margin-right: 0;
}

.right-content #side {
  width: 310px;
  float: left;
  margin-left: -100%;
}

.one-column #content .wrap {
  width: 1000px;
}

.one-column #content .wrap #main {
  width: 100%;
  float: none;
}

.one-column #content .wrap #main .main-inner {
  width: 100%;
  margin: 0;
}

.one-column #content .wrap #side {
  display: none;
}

/* ----------------------------------------
* レスポンシブ
* ~ / 1200px / 991px / 767px 
* desctop / laptop / tablet / phone
---------------------------------------- */
@media screen and (max-width: 1200px) {

  /* laptop */
  .wrap,
  .one-column #content .wrap {
    margin-left: 36px;
    margin-right: 36px;
    width: auto;
  }

  .main-inner {
    /*margin-right: 346px;*/
    box-sizing: border-box;
  }

  /* laptop end */
}

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

  /* tablet */
  .wrap,
  .one-column #content .wrap {
    margin-left: 24px;
    margin-right: 24px;
  }

  #main,
  .main-inner,
  #side {
    float: none;
    width: 100%;
    margin-left: 0;
    margin-right: 0;
  }

  .left-content #main,
  .right-content #main {
    float: none;
  }

  .left-content .main-inner,
  .right-content .main-inner {
    margin-right: 0;
    margin-left: 0;
    width: 100%;
  }

  .left-content #side,
  .right-content #side {
    width: 100%;
    float: none;
    margin: 0;
  }

  #side {
    padding-top: 42px;
  }

  /* tablet end */
}

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

  /* phone */
  .wrap,
  .one-column #content .wrap {
    margin-left: 12px;
    margin-right: 12px;
  }

  /* phone end */
}

/* ----------------------------------------
* フォント設定
---------------------------------------- */
/* ----------------------------------------
* all
---------------------------------------- */
body {
  /*background: url("./lib/images/bg.png");*/
  color: #241913;
}

a {
  text-decoration: none;
  color: #202059;
}

a:hover {
  text-decoration: underline;
}

/* form
---------------------------------------- */
form input[type="submit"],
form button {
  background: #1D417A;
  color: #fff;
  border: 1px solid #1D417A;
}

form input[type="submit"]:hover,
form button:hover {
  cursor: pointer;
  background: #fff;
  color: #1D417A;
  border: 1px solid #1D417A;
}

/* ----------------------------------------
* header
---------------------------------------- */
/* TOP */
.home #header,
.top-en #header {
  background-color: rgba(255, 255, 255, 1);
  padding: 0;
  overflow: visible;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 999999999999;
}

/* 下層page */
#header {
  /*background-color: rgba(0,0,0,0.6);*/
  /*background:#fff;*/
  background-color: rgba(255, 255, 255, 1);
  padding: 0;
  overflow: visible;
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  z-index: 9999;
}

#header #logo {
  float: left;
  /*font-size: 24px;*/
  padding: 19px 0 0;
  width: 140px;
}

#header a {
  color: #fff;
}

#header .header-nav-wed-request a img {
  width: 35px;
}

#content-01 {
  padding-top: 100px;
  margin-top: -100px;
}

#header .hd-lang {
  position: absolute;
  bottom: -2px;
}

#header .hd-lang ul {
  display: flex;
  padding-top: 7px;
  padding-bottom: 4px;
}

#header .hd-lang ul li:first-child {
  padding-right: 10px;
}

#header .hd-lang ul a {
  color: #241913;
  font-size: 10px;
  text-decoration: none;
}

@media screen and (max-width: 991px) {
  #header .hd-lang {
    position: absolute;
    bottom: -4px;
  }

  #header .hd-lang ul a {
    font-size: 9px;
    font-weight: 600;
  }

  #header #logo {
    float: left;
    /* font-size: 24px; */
    padding: 22px 0 !important;
  }

  #header-nav-btn {
    line-height: 79px !important;
  }

  #header .hd-lang ul {
    padding-top: 0 !important;
  }
}

/* ----------------------------------------
* breadcrumb
---------------------------------------- */
.breadcrumb-area {
  background: #f9f9f9;
  border-top: 1px solid #e5e5e5;
  margin-top: 92px;

  display: none;
}

.breadcrumb-area .wrap {
  padding: 10px 0;
}

.breadcrumb {
  margin: 0;
  margin-left: -10px;
  overflow: hidden;
  font-size: 13px;
  padding: 0;
  line-height: 22px;
}

.breadcrumb li {
  float: left;
  margin-left: 10px;
}

.breadcrumb li a {
  text-decoration: none;
  color: #5B5B5B !important;
}

.breadcrumb li a:hover {
  text-decoration: underline;
  color: #A8A8A8;
}

.breadcrumb li i {
  font-size: 16px;
}

.breadcrumb li:not(:first-child) i {
  display: none;
}

.breadcrumb li span {
  margin-right: 5px;
}

/* ----------------------------------------
* gloval nav & primary nav
---------------------------------------- */
#gnav {
  margin: 0 0 0 auto;
  float: right;
  text-align: right;
}

#gnav .sub-menu {
  z-index: 10;
}

#gnav ul li {
  display: inline-block;
  position: relative;
  font-size: 13px;
}

#gnav ul li:hover a {
  background: #F2F2F2;
}

/*#gnav ul li.current-menu-item a {
  background: #F2F2F2;
}*/
#gnav ul li a {
  display: block;
  padding: 32px 12px;
  line-height: 28px;
  color: #241913;
  /*background: #fff;*/
  text-decoration: none;
  -webkit-transition: background .3s ease-in-out;
  transition: background .3s ease-in-out;
}

#gnav ul li a:hover {
  color: #241913;
  background: #f0f0f0;
}

#gnav ul li a:hover .sub-menu {
  display: block;
}

#gnav ul li .sub-menu {
  font-size: 14px;
  text-align: left;
  display: none;
  position: absolute;
  width: 200px;
  background: #fff;
  border-left: 1px #e5e5e5 solid;
  border-right: 1px #e5e5e5 solid;
}

#gnav ul li .sub-menu li {
  float: none;
  margin-left: 0;
  border-bottom: 1px #e5e5e5 solid;
  display: block;
}

#gnav ul li .sub-menu li:list-child {
  border-bottom: none;
}

#gnav ul li .sub-menu li a {
  color: #3B4552;
  background: #F2F2F2;
  padding: 10px 15px;
}

#gnav ul li .sub-menu li a:hover {
  background: #E2E2E2;
  color: #3B4552;
}

#gnav ul li .sub-menu .sub-menu {
  left: 100%;
  top: -1px;
}

.header-tel {
  float: right;
  padding: 32px 12px;
  font-size: 13px;
  line-height: 28px;
  background: #D1D9E4;
}

.header-tel a,
.header-tel a:hover {
  text-decoration: none;
  color: #000 !important;
}

#header-right {
  /*height: 92px;*/
  float: right;
}

#header-fnav-area,
#header-gnav-area {
  float: right;
}

#header-fnav-area {
  width: 150px;
  position: relative;
}

#header-fnav-area #header-fnav-btn a {
  display: block;
  padding: 22px 12px;
  line-height: 24px;
  font-size: 23px;
  height: auto;
  text-align: center;
  background: #57bca8;
}

#header-fnav-area #header-fnav-btn a:hover {
  text-decoration: none;
}

#header-fnav-area #header-fnav {
  z-index: 10;
  font-size: 14px;
  text-align: left;
  display: none;
  position: absolute;
  right: 0;
  width: 200px;
  background: #fff;
  border: 1px #e5e5e5 solid;
}

#header-fnav-area #header-fnav li {
  float: none;
  margin-left: 0;
  border-bottom: 1px #e5e5e5 solid;
  display: block;
}

#header-fnav-area #header-fnav li:list-child {
  border-bottom: none !important;
}

#header-fnav-area #header-fnav li a {
  color: #3B4552;
  background: #fff;
  padding: 10px 15px;
  display: block;
}

#header-fnav-area #header-fnav li a:hover {
  background: #fafafa;
  color: #3B4552;
  text-decoration: none;
}

/* ----------------------------------------
* content
---------------------------------------- */
/*#content {
  padding: 0px 0 80px;
}*/
#content .wrap {
  overflow: visible;
}

#content .wp-caption {
  max-width: 100%;
  border: 1px solid #e5e5e5;
  text-align: center;
  padding: 5px;
  margin-bottom: 12px;
}

#content .wp-caption-text {
  padding: 12px 16px;
  margin-bottom: 0;
  text-align: center;
}

/* mainvisualがowl-calouselのとき */
/*#content-after-slider{
	padding: 0px 0 80px;
	margin-top:-288px;
}*/


/* ----------------------------------------
* frontpage
---------------------------------------- */
body.home #content {
  padding-bottom: 0;
  /*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
}

body.home #main {
  width: 100%;
  margin: 0;
  float: none;
  /*font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
}

body.home .main-inner {
  margin: 0;
}

body.home .wrap {
  width: 1200px;
  margin: 0 auto;
}

body.home #main_visual {
  /*background: #41BAA4;
  background-image: -webkit-linear-gradient(bottom right, #41baa4, #42a994);
  background-image: linear-gradient(to top left, #41baa4, #42a994);
  color: #fff;
  text-align: center;*/
  /*background:url(common/img/top/mainvisual.jpg) top center;*/
  background-size: cover;
  /*height:500px !important;*/
  /*margin-top: 92px;*/
  /* height:830px !important;*/
  /*margin-top: 92px;*/
}

/*#main_copy{
	position:absolute;
	left:28%;
	top:33%;
	z-index:99;	
}*/

#main_copy {
  position: relative;
  /*	padding:400px 0;*/
  width: 100%;
  text-align: center;
  position: relative;
  height: 100vh;
}

#main_copy h1 {
  position: absolute;
  top: 50%;
  left: 50%;
  margin: auto;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  width: 100%;
}

#main_visual_second {
  background-size: cover;
  height: 625px !important;
}


body.home #main_visual h2 {
  font-size: 48px;
  line-height: 70px;
  margin-bottom: 24px;
}

body.home #main_visual p {
  font-size: 15px;
  width: 600px;
  margin: 0 auto;
}

body.home .front-loop {
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  background: #fff;
  overflow: hidden;
  padding: 0;
  margin-left: -2.2%;
  margin-bottom: 40px;
}

body.home .front-loop h2 {
  text-align: center;
  padding: 24px 0;
  margin: 0;
  border-bottom: 1px solid #e5e5e5;
  font-size: 24px;
}

body.home .front-loop .popular_post_box {
  width: 17.64%;
  margin-left: 2.2%;
  float: left;
  display: inline-block;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  position: relative;
}

body.home .front-loop .popular_post_box img,
body.home .front-loop .popular_post_box h3,
body.home .front-loop .popular_post_box .p_category,
body.home .front-loop .popular_post_box ul {
  margin-bottom: 12px;
  margin-top: 0;
}

body.home .front-loop .popular_post_box h3 {
  color: #241913;
  font-weight: normal;
  font-size: 16px;
}

body.home .front-loop .popular_post_box h3 a {
  color: #241913;
}

body.home .front-loop .popular_post_box h3 a:hover {
  color: #FF6C00;
  text-decoration: underline;
}

body.home .front-loop .popular_post_box img {
  max-width: 100%;
  height: auto;
}

body.home .front-loop .popular_post_box ul {
  overflow: hidden;
}

body.home .front-loop .popular_post_box ul li {
  float: left;
  width: 25%;
  text-align: left;
}

body.home .front-loop .popular_post_box ul li .fa {
  margin-right: 8px;
}

body.home .front-loop .popular_post_box ul li .share {
  display: none;
}

body.home .front-loop .popular_post_box ul a {
  color: #241913;
}

body.home .front-loop .popular_post_box ul a:hover {
  color: #FF6C00;
  text-decoration: underline;
}

body.home .front-loop .popular_post_box .p_category {
  background: #1D417A;
  color: #fff;
  display: inline-block;
  padding: 8px 24px;
  font-size: 12px;
  color: #fff;
}

body.home .front-loop .popular_post_box .p_rank {
  position: absolute;
  top: 0;
  left: 0;
  background: #900;
  width: 48px;
  height: 48px;
  line-height: 48px;
  text-align: center;
  font-size: 12px;
  color: #fff;
  opacity: .7;
}

body.home .front-loop .popular_post_box .p_rank span {
  font-size: 16px;
}

body.home .front-loop .popular_post_box .p_date {
  position: absolute;
  top: 0;
  left: 0;
  background: #3B4552;
  width: 48px;
  height: 48px;
  text-align: center;
  font-size: 12px;
  color: #fff;
  opacity: .7;
}

body.home .front-loop .popular_post_box .p_date span {
  display: block;
  line-height: 18px;
}

body.home .front-loop .popular_post_box .p_date .date-y {
  font-size: 12px;
  padding-top: 6px;
}

body.home .front-loop .popular_post_box .p_date .date-mj {
  font-size: 14px;
  padding-bottom: 6px;
}

body.home .front-loop .front-loop-cont {
  padding: 40px 0;
  overflow: hidden;
}

body.home .front-loop article.post {
  border: none;
  margin-bottom: 20px;
}

body.home .front-loop article.post.rank-1 .p_rank {
  background: #D6B038;
}

body.home .front-loop article.post.rank-2 .p_rank {
  background: #BFC4C9;
}

body.home .front-loop article.post.rank-3 .p_rank {
  background: #B9704E;
}

body.home .front-loop article.post.rank-4 .p_rank,
body.home .front-loop article.post.rank-5 .p_rank {
  background: #47442F;
}

body.home .front-main-cont .front-cont-header {
  position: relative;
  padding: 16px 0 24px;
  background: #3B4552;
  color: #fff;
  text-align: center;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

body.home .front-main-cont .front-cont-header .cont-icon {
  font-size: 28px;
}

body.home .front-main-cont .front-cont-header .cont-title {
  font-size: 28px;
  margin: 0;
}

body.home .front-main-cont .front-cont-header .cont-ruby {
  font-size: 13px;
  margin: 0;
}

body.home .front-main-cont .tri-border {
  position: absolute;
  bottom: -18px;
  width: 100%;
  z-index: 20;
}

body.home .front-main-cont .tri-border span {
  display: block;
  margin: 0 auto;
  width: 0;
  height: 0;
  border-left: 28px solid transparent;
  border-left: 56px solid transparent;
  border-right: 56px solid transparent;
  border-top: 18px solid #3B4552;
}

body.home #front-contents .c_box {
  position: relative;
  border-bottom: 1px solid #e5e5e5;
}

body.home #front-contents .c_box_inner {
  width: 54%;
  padding-bottom: 32px;
}

body.home #front-contents .c_img_box {
  position: absolute;
  top: 0;
  width: 40%;
  height: 100%;
  z-index: 0;
  background-size: cover;
  background-repeat: no-repeat;
}

body.home #front-contents .c_box.c_box_left {
  background-color: #fff;
}

body.home #front-contents .c_box.c_box_left .c_box_inner {
  float: left;
  z-index: 10;
}

body.home #front-contents .c_box.c_box_left .c_img_box {
  right: 0;
  background-position: center top;
}

body.home #front-contents .c_box.c_box_right {
  background-color: #fafafa;
}

body.home #front-contents .c_box.c_box_right .c_box_inner {
  float: right;
}

body.home #front-contents .c_box.c_box_right .c_img_box {
  left: 0;
  background-position: center top;
}

body.home #front-contents .c_number {
  background: #1D417A;
  color: #fff;
  display: inline-block;
  padding: 40px 12px 8px;
  margin-bottom: 32px;
  margin-top: 0;
}

body.home #front-contents h3 {
  color: #1D417A;
  font-size: 36px;
  margin-top: 0;
  margin-bottom: 8px;
  line-height: 1.4;
}

body.home #front-contents .c_english {
  color: #1D417A;
  font-size: 13px;
  margin-bottom: 32px;
  margin-top: 0;
}

body.home #front-contents h4 {
  font-size: 24px;
  margin-bottom: 28px;
  margin-top: 0;
  font-weight: normal;
}

body.home #front-contents .c_text p {
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  margin-bottom: 48px;
}

body.home #front-contents .c_text .c_btn a {
  border-radius: 5px;
  background: #FF6C00;
  color: #fff;
  font-size: 14px;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
  -webkit-transition: all ease-in-out .3s;
  transition: all ease-in-out .3s;
  opacity: 1;
  display: block;
  width: 30%;
  padding: 12px;
  text-align: center;
}

body.home #front-contents .c_text .c_btn a:hover {
  opacity: 0.8;
  text-decoration: none;
}

body.home #front-service {
  background: url(./lib/images/border_e5.png) repeat-y top center #fff;
  padding-bottom: 56px;
  border-bottom: 1px solid #e5e5e5;
}

body.home #front-service .front-service-inner {
  margin-left: -10%;
  overflow: hidden;
}

body.home #front-service .front-service-inner .c_box {
  width: 40%;
  padding-top: 96px;
  margin-left: 10%;
  margin-bottom: 20px;
  float: left;
}

body.home #front-service .front-service-inner .c_title {
  text-align: center;
}

body.home #front-service .front-service-inner h3 {
  color: #1D417A;
  font-size: 40px;
  margin-bottom: 8px;
}

body.home #front-service .front-service-inner .c_english {
  color: #1D417A;
  font-size: 13px;
  margin-bottom: 32px;
}

body.home #front-service .front-service-inner h4 {
  font-size: 24px;
  margin-bottom: 28px;
  text-align: center;
}

body.home #front-service .front-service-inner .c_text p {
  margin-bottom: 28px;
}

body.home #front-service .front-service-inner .c_text .c_btn a {
  border-radius: 5px;
  background: #1D417A;
  color: #fff;
  margin: 0 auto;
  text-shadow: 0 0 3px rgba(0, 0, 0, 0.5);
  -webkit-transition: all ease-in-out .3s;
  transition: all ease-in-out .3s;
  opacity: 1;
  display: block;
  width: 50%;
  padding: 16px 20px;
  text-align: center;
}

body.home #front-service .front-service-inner .c_text .c_btn a:hover {
  opacity: 0.8;
  text-decoration: none;
}

body.home #front-company {
  background: #fff;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

body.home #front-company .c_box {
  position: relative;
  border-bottom: 1px solid #e5e5e5;
  min-height: 450px;
}

body.home #front-company .c_box_inner {
  width: 684px;
  padding: 96px 0;
}

body.home #front-company .c_img_box {
  position: absolute;
  top: 0;
  right: 0;
  width: 40%;
  height: 100%;
  z-index: 0;
}

body.home #front-company .c_img_box iframe {
  width: 100% !important;
  height: 100% !important;
}

body.home #front-company .no-company-map .c_img_box {
  display: none;
}

body.home #front-company .no-company-map .c_box_inner {
  margin-left: auto;
  margin-right: auto;
}

body.home #front-company dl {
  overflow: hidden;
  border-bottom: 1px solid #e5e5e5;
  margin: 0;
}

body.home #front-company dl dt span,
body.home #front-company dl dd span {
  padding: 20px 32px;
  display: block;
}

body.home #front-company dl dt {
  float: left;
  width: 20%;
  margin: 0;
}

body.home #front-company dl dd {
  float: left;
  width: 80%;
  margin: 0;
}

body.home #front-company dl#front-company-1 dt {
  border-top: 2px solid #1D417A;
}

body.home #front-company dl#front-company-1 dt span {
  padding-top: 19px;
}

body.home #front-company dl#front-company-1 dd {
  border-top: 1px solid #e5e5e5;
}

body.home #front-contact {
  background: #1D417A;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

body.home #front-contact .c_box_inner {
  padding: 60px 0;
  width: 100%;
  max-width: 632px;
  margin: 0 auto;
}

body.home #front-contact .c_box_inner input[type=text],
body.home #front-contact .c_box_inner input[type=tel],
body.home #front-contact .c_box_inner input[type=email],
body.home #front-contact .c_box_inner input[type=url],
body.home #front-contact .c_box_inner textarea {
  width: 95%;
}

body.home #front-contact .c_box_inner input[type=submit],
body.home #front-contact .c_box_inner button {
  width: 30%;
  display: block;
  background: #131D2A;
  border-radius: 3px;
  margin: 0 auto;
}

body.home #front-contact .c_box_inner p {
  margin-bottom: 1.4em;
}

/* ----------------------------------------
* main
---------------------------------------- */
.cat-content,
article.post,
article.page {
  margin-bottom: 60px;
  background: #fff;
  border: 1px #e5e5e5 solid;
}

.post-header {
  /*padding: 56px 64px 46px;*/
  padding: 0;
  position: relative;
  border-bottom: 1px solid #e5e5e5;
}

.post-header .cat-name {
  margin-bottom: 20px;
}

.post-header .cat-name span {
  /*border: 1px solid #1D417A;
  color: #1D417A;*/
  display: inline-block;
  padding: 4px 16px;
  font-size: 12px;

  background-color: #F7F5EC;
  color: #917E3A;
  border: 1px solid #917E3A;
}

.post-header .cat-name span a,
.post-header .cat-name span a:hover {
  color: #917E3A;
}

.post-header .cat-name span.date {
  border: none;
  color: #222;
  display: inline-block;
  padding: 4px 16px;
  font-size: 12px;
  background-color: #f9f9f9;
}

.post-title {
  font-size: 20px;
  line-height: 1.5;
  margin-bottom: 30px;
  /*font-weight: bold;*/
}

/*body.page .post-title {
  margin-bottom: 0;
}*/
.post-title a {
  color: #222;
}

.post-title a:hover {
  color: #606060;
  text-decoration: none;
}

.post-content h2.post-title {
  font-weight: normal;
}

/*.post-title a {
  color: #3B4552;
}
.post-title a:hover {
  color: #FF6C00;
  text-decoration: none;
}*/

.cat-content .post-header,
article.page .post-header {
  padding: 56px 64px 30px;
  margin-bottom: 20px;
  background: #fff;
}

.post-meta-area {
  margin: 0;
  border-bottom: 1px solid #e5e5e5;
  overflow: hidden;
}

.post-meta-area ul {
  margin: 0;
}

.post-meta-area .post-meta {
  width: 50%;
  float: left;
}

.post-meta-area .post-meta .date {
  padding: 12px 40px;
}

.post-meta-area .post-meta .date .datetime {
  font-size: 1.1em;
}

.post-meta-area .post-meta-comment {
  text-align: center;
  width: auto;
  float: right;
}

.post-meta-area .post-meta-comment li {
  padding: 12px 24px;
  display: inline-block;
  border-left: 1px solid #e5e5e5;
}

.post-thumbnail img {
  width: 100%;
  height: auto;
}

.post-content {
  /*padding: 30px 64px 10px;*/
  padding: 20px 0 0
}

.post-content hr {
  border-bottom: 1px solid #eee;
  margin: 20px 0;
  clear: both;
}

.post-content p,
.post-content ul,
.post-content ol,
.post-content dl,
.post-content blockquote,
.post-content pre,
.post-content table {
  margin-bottom: 2em;
}

.post-content ul {
  list-style: disc;
}

.post-content ol {
  list-style: decimal;
}

.post-content ul,
.post-content ol {
  margin-left: 30px;
}

.post-content ul>ul,
.post-content ul>ol,
.post-content ol>ol,
.post-content ol>ul {
  margin-bottom: 0px;
}

.post-content dl dt {
  font-weight: bold;
}

.post-content dl dd {
  margin-left: 30px;
}

.post-content pre {
  padding: 20px;
  overflow: scroll;
  font-family: 'Courier', monospace;
}

.post-content h1,
.post-content h2,
.post-content h3,
.post-content h4,
.post-content h5,
.post-content h6 {
  font-weight: bold;
}

.post-content h1 {
  margin: 32px 0;
  font-size: 36px;
  clear: both;
  font-weight: normal;
}

.post-content h2 {
  margin: 40px 0 40px 0;
  padding: 10px 16px;
  font-size: 1.6em;
  clear: both;
  font-weight: normal;
  border-left: 4px solid #999999;
  background: #f7f7f7;
  color: #352b24;
  border-bottom: 1px solid #e5e5e5;
}

.post-content h3 {
  font-size: 1.3em;
  margin: 48px 0 24px;
  padding: 20px 0;
  clear: both;
  font-weight: normal;
  border-bottom: 1px solid #999999;
  line-height: 1;
}

.post-content h4 {
  font-size: 20px;
  margin: 30px 0 16px;
  padding: 0 0 0 8px;
  border-left: 5px solid #999999;
  clear: both;
  font-weight: normal;
}

.post-content h5 {
  font-size: 16px;
  margin: 30px 0 16px;
  clear: both;
}

.post-content h6 {
  font-size: 16px;
  margin: 30px 0 16px;
  clear: both;
}

.post-content blockquote {
  clear: both;
  margin: 0 0 28px;
  padding: 30px 20px 35px 55px;
  position: relative;
  border: 1px #e5e5e5 solid;
  background: #fafafa;
}

.post-content blockquote:before {
  content: '';
  font-family: 'FontAwesome';
  font-size: 36px;
  color: #e7e7e7;
  position: absolute;
  top: 20px;
  left: 10px;
}

.post-content blockquote cite {
  position: absolute;
  right: 20px;
  bottom: 10px;
  font-size: 12px;
  color: #808080;
}

.post-content table {
  border: 1px #ddd solid;
  max-width: 100%;
}

.post-content table th,
.post-content table td {
  padding: 8px 10px;
  border: #ddd solid 1px;
}

.post-content table th {
  color: #fff;
}

.post-content table thead th {
  background: #5e6265;
}

.post-content table tbody th {
  background: #919598;
}

.post-content table.table-line table,
.post-content table.table-line th,
.post-content table.table-line td {
  border-color: #fff;
}

.post-content table.table-line th {
  background: transparent;
  color: #241913;
  font-weight: bold;
}

.post-content table.table-line thead th {
  background: #5e6265;
  color: #fff;
}

.post-content table.table-line tr {
  background: #eee;
}

.post-content table.table-line tr:nth-child(2n+1) {
  background: #ddd;
}

.post-content img.alignleft {
  float: left;
  margin-right: 15px;
  margin-bottom: 15px;
}

.post-content img.alignright {
  float: right;
  margin-left: 15px;
  margin-bottom: 15px;
}

.post-content h2:first-child {
  margin-top: 0;
}

.post-content a {
  text-decoration: underline;
  color: #241913;
}

.post-content a:hover {
  text-decoration: none;
}

.post-cta {
  margin: 0 0 28px;
  background: #131D2A;
  color: #fff;
}

.post-cta .post-cta-inner {
  padding: 30px 45px;
}

.post-cta .cta-post-title {
  padding: 30px 45px;
  font-size: 36px;
  margin-bottom: 14px;
  text-align: center;
  border-bottom: 1px solid #eee;
}

.post-cta .post-cta-img {
  float: right;
  width: 230px;
  margin: 0 0 20px 20px;
}

.post-cta .post-cta-cont {
  overflow: hidden;
}

.post-cta .post-cta-btn {
  margin: 10px 0;
}

.post-cta .post-cta-btn a {
  background: #F86222;
  color: #fff;
  border-radius: 8px;
  display: block;
  padding: 20px;
  text-align: center;
  text-decoration: none;
  width: 60%;
  margin: 0 auto 20px;
}

.post-cta .post-cta-btn a:hover {
  background: #fa8553;
}

.post-cta p {
  margin-bottom: 1em;
}

.post-cta .btn {
  width: 100%;
  display: block;
  border-radius: 3px;
  text-align: center;
  color: #fff;
  padding: 14px 0;
  -webkit-transition: background .3s ease-in-out;
  transition: background .3s ease-in-out;
  background: #3B4552;
}

.post-cta .btn:hover {
  text-decoration: none;
  background: #FF6C00;
}

.post-share {
  padding: 30px 45px;
}

.post-share .post-share-list1,
.post-share .post-share-list2,
.post-share .post-share-list3,
.post-share .post-share-list4 {
  overflow: hidden;
  padding: 30px 0;
  margin-left: -2.08%;
}

.post-share .post-share-list1 a,
.post-share .post-share-list2 a,
.post-share .post-share-list3 a,
.post-share .post-share-list4 a {
  text-decoration: none;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
  display: block;
  border: 1px #eee solid;
  border-radius: 3px;
  padding: 20px 0;
}

.post-share .post-share-list1 a:hover,
.post-share .post-share-list2 a:hover,
.post-share .post-share-list3 a:hover,
.post-share .post-share-list4 a:hover {
  text-decoration: none;
  background: #f7f7f7;
}

.post-share .post-share-list1 li,
.post-share .post-share-list2 li,
.post-share .post-share-list3 li,
.post-share .post-share-list4 li {
  text-align: center;
  float: left;
  margin-left: 2.08%;
}

.post-share .post-share-list1 i,
.post-share .post-share-list1 .big,
.post-share .post-share-list2 i,
.post-share .post-share-list2 .big,
.post-share .post-share-list3 i,
.post-share .post-share-list3 .big,
.post-share .post-share-list4 i,
.post-share .post-share-list4 .big {
  font-size: 2em;
}

.post-share .post-share-list1 li {
  width: 97.92%;
}

.post-share .post-share-list2 li {
  width: 47.92%;
}

.post-share .post-share-list3 li {
  width: 31.25%;
  font-size: .8em;
}

.post-share .post-share-list4 li {
  width: 22.92%;
}

.post-share .post-share-list4 {
  text-align: center;
}

.post-share .post-share-list4 i,
.post-share .post-share-list4 .big {
  display: block;
}

.post-share .post-share-list4 .big {
  font-size: 1.2em;
}

.post-share .post-share-facebook a:hover {
  color: #305097;
}

.post-share .post-share-twitter a:hover {
  color: #00aced;
}

.post-share .post-share-google a:hover {
  color: #db4a39;
}

.post-share .post-share-feedly a:hover {
  color: #2bb24c;
}

.post-footer {
  border-radius: 0;
  padding: 20px 64px;
  overflow: hidden;
  clear: both;
}

.post-footer ul {
  overflow: hidden;
}

.post-footer ul li a:hover {
  text-decoration: underline;
}

.post-footer .bzb-sns-btn {
  padding: 30px 0;
}

.post-footer .bzb-sns-btn li {
  vertical-align: top;
}

.post-footer .bzb-sns-btn li .fb_iframe_widget span {
  vertical-align: top !important;
}

.post-footer-list {
  padding: 20px 0;
}

.post-author {
  margin-bottom: 40px;
  padding: 40px 45px;
  border: 1px solid #e5e5e5;
  color: #241913;
  background: #fff;
}

.post-author .post-author-img {
  height: 100%;
  float: left;
}

.post-author .post-author-img img {
  width: 100px;
  height: auto;
  border: 1px solid #e5e5e5;
}

.post-author .post-author-img .inner {
  padding: 0;
}

.post-author .row {
  margin-right: -10px;
  margin-left: -10px;
}

.post-author .row .gr1,
.post-author .row .gr2,
.post-author .row .gr3,
.post-author .row .gr4,
.post-author .row .gr5,
.post-author .row .gr6,
.post-author .row .gr7,
.post-author .row .gr8,
.post-author .row .gr9,
.post-author .row .gr10,
.post-author .row .gr11,
.post-author .row .gr12 {
  padding-left: 10px;
  padding-right: 10px;
}

.post-author a {
  color: #3B4552;
}

.post-author .post-author-meta {
  color: #241913;
  margin-left: 120px;
}

.post-author .post-author-meta h4 {
  margin: 0 40px 10px 0;
}

.post-author .post-author-meta p {
  margin: 0 40px 20px 0;
}

.post-header-meta {
  overflow: hidden;
  margin-bottom: 26px;
}

.post-header-meta .bzb-sns-btn {
  padding: 20px 0 10px;
  float: left;
  width: 400px;
  overflow: hidden;
}

.post-header-meta .post-header-category {
  float: right;
  width: 300px;
  text-align: right;
  padding: 20px 0 10px;
}

.bzb-sns-btn {
  padding: 0;
  margin: 0;
  font-size: 0;
}

.bzb-sns-btn li {
  display: inline-block;
  vertical-align: top;
  font-size: 16px;
  margin: 4px;
}

/*
.bzb-sns-btn li.bzb-facebook {
  width: 98px;
}
.bzb-sns-btn li.bzb-facebook span {
  vertical-align: top !important;
}
.bzb-sns-btn li.bzb-twitter {
  width: 93px;
}
.bzb-sns-btn li.bzb-googleplus {
  width: 65px;
}
*/
.post-autot #comments {
  padding: 40px;
  box-sizing: border-box;
  border: 1px solid #e5e5e5;
  background: #fff;
}

.post-autot #comments h4,
.post-autot #comments h3 {
  margin: 0 0 24px;
  border-bottom: 5px solid #3B4552;
  font-size: 18px;
  padding: 8px 0;
}

.post-autot #comments h4 i,
.post-autot #comments h3 i {
  color: #3B4552;
}

.comment-list>.comment {
  margin-bottom: 40px;
  border-bottom: 1px #eee solid;
}

.comment-list>.comment>.comment-body {
  padding: 0 20px;
  margin-bottom: 20px;
}

.comment-list .children {
  margin-left: 45px;
}

.comment-list .children .comment-body {
  padding: 20px 30px;
  margin-bottom: 20px;
  background: #f7f7f7;
}

.comment-author {
  float: left;
  vertical-align: top;
  font-size: 12px;
  margin-left: 10px;
}

.comment-author img {
  vertical-align: top;
}

.comment-meta {
  font-size: 12px;
  margin-bottom: 12px;
}

.reply a {
  border-radius: 3px;
  padding: 3px 5px;
  font-size: 12px;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.reply a:before {
  content: ' ';
  font-family: 'FontAwesome';
}

.reply a:hover {
  text-decoration: none;
}

.comment-form-comment label {
  display: none;
}

.comment-form-comment textarea {
  width: 80%;
  margin: 20px 0;
  border-radius: 3px;
}

.form-allowed-tags {
  font-size: 12px;
  margin-bottom: 20px;
  display: none;
}

.comment-meta:after {
  content: ' ';
  display: block;
  clear: both;
}

.comments-title {
  font-size: 24px;
  padding: 20px 0;
  margin-bottom: 30px;
}

.comment-form-author,
.comment-form-email,
.comment-form-url {
  overflow: hidden;
  margin: 10px 0;
}

.comment-form-author label,
.comment-form-email label,
.comment-form-url label {
  width: 15%;
  float: left;
  font-size: 12px;
}

.comment-form-author input,
.comment-form-email input,
.comment-form-url input {
  width: 40%;
  float: left;
  margin-left: 5%;
  border-radius: 3px;
  padding: 5px;
}

.form-submit #submit {
  width: 240px;
  line-height: 24px;
  border: none;
  border-radius: 3px;
  -webkit-transition: all .3s ease-in-out;
  transition: all .3s ease-in-out;
}

.form-submit #submit:hover {
  cursor: pointer;
}

.comment-form-comment textarea {
  width: 95%;
  padding-left: 2%;
  padding-right: 2%;
}

.comment-form {
  overflow: hidden;
}

.comment-form-author,
.comment-form-email {
  width: 49%;
  margin: 0;
}

.comment-form-author label,
.comment-form-author input,
.comment-form-email label,
.comment-form-email input {
  width: 90%;
  float: none;
  margin: 0 0 10px;
}

.comment-form-author {
  float: left;
}

.comment-form-email {
  float: right;
}

/* loop
---------------------------------------- */
.cat-content {
  background: #fff;
  padding: 40px;
  margin-bottom: 30px;
}

.post-loop-wrap article {
  /*width: 100%;*/
  margin: 0 0 60px;
  float: left;
  width: 48%;
  padding: 30px 20px;
  background: #f9f9f9;
}

.post-loop-wrap article:nth-child(odd) {
  margin-right: 4%;
}

.post-loop-wrap article p {
  margin-top: 0;
}

.post-loop-wrap .post-title {
  margin-bottom: 20px;
}

.post-loop-wrap .post-thumbnail {
  width: 100%;
}

.post-loop-wrap .post-thumbnail img {
  max-width: 100%;
  height: auto;
}

.post-loop-wrap .more-link {
  border: 1px #3B4552 solid;
  padding: 8px 20px;
  margin-bottom: 64px;
  color: #3B4552;
}

.post-loop-wrap .more-link:hover {
  background: #3B4552;
  color: #fff;
  text-decoration: none;
}

.post-loop-wrap .post-footer {
  /*border-top: 1px #eee solid;*/
  padding: 0;
  overflow: hidden;
  text-align: center;
}

/*.post-loop-wrap .post-footer a.morelink {
  display: block;
  background: #1D417A;
  color: #fff;
  text-align: center;
  padding: 12px;
}*/

/* pager */
.pagination {
  clear: both;
  padding: 20px 0;
  position: relative;
  font-size: 16px;
  line-height: 22px;
  overflow: hidden;
}

.pagination a {
  background: #fff;
  border: 1px solid #1D417A;
}

.pagination span,
.pagination a {
  display: block;
  float: left;
  /*margin: 2px 2px 2px 0;
  padding: 6px 9px 5px 9px;*/
  margin: 2px 4px 4px 0;
  padding: 6px 13px 5px 13px;
  text-decoration: none;
  width: auto;
  color: #1D417A;
}

.pagination a:hover {
  background: #1D417A;
  color: #fff;
  border: 1px solid #1D417A;
}

.pagination .current {
  /*padding: 6px 9px 5px 9px;*/
  padding: 6px 13px 5px 13px;
  background: #1D417A;
  color: #fff;
  border: 1px solid #1D417A;
}

/* ----------------------------------------
* side
---------------------------------------- */
.side-widget-area {
  padding: 0;
}

.side-widget {
  margin-bottom: 40px;
  padding-bottom: 40px;
  line-height: 1.6;
  font-size: 14px;
}

.side-widget .side-title {
  margin: 0 0 32px;
  font-size: 14px;
  background: #f4f4f4;
  /*border: 1px solid #e4e4e4;*/
}

.side-widget .side-title .side-title-inner {
  font-family: 'Lato', sans-serif;
}

.side-widget a {
  color: #222;
  /*text-decoration: underline;*/
  display: block;
  padding-left: 7px;
}

.side-widget a:hover {
  color: #606060;
  text-decoration: none;
}

.side-widget a:before {
  font-family: 'FontAwesome';
  content: '\f105';
  margin-right: 7px;
}


.side-widget ul li {
  padding: 16px 0;
  border-bottom: 1px solid #e5e5e5;
}

.side-widget .side-title {
  margin: 0 0 13px;
  padding: 8px;
  font-size: 16px;
}

.side-widget.widget_recent_comments a {
  background: none;
}

.side-widget .post-date {
  margin: 0 0 0 36px;
  font-size: 13px;
  color: #999999;
}

.side-widget .post-share-fb .pas {
  display: none;
}

/* widget_views */
.widget_views a {
  display: inline;
}

/* search */
.widget_search {
  overflow: hidden;
  background: #fff;
  border: 1px solid #e5e5e5;
  padding-bottom: 0;
  border-radius: 2px;
}

.widget_search form div {
  position: relative;
  padding-right: 40px;
}

.widget_search label {
  display: none;
}

.widget_search input[type=text] {
  line-height: 18px;
  padding: 8px 13px;
  font-size: 14px;
  width: 100%;
  box-sizing: border-box;
  border: none;
  float: left;
}

.widget_search button {
  float: right;
  position: absolute;
  top: 0;
  right: 0;
  vertical-align: top;
  line-height: 18px;
  border: none;
  border-radius: 3px;
  width: 40px;
  padding: 8px 5px;
  -webkit-transition: background .3s ease-in-out;
  transition: background .3s ease-in-out;
  background: transparent;
  font-family: 'FontAwesome';
  font-size: 21px;
  color: #5e6265;
}

.widget_search button:hover {
  cursor: pointer;
}

#searchform form input[type="text"],
#searchform form input[type="email"],
#searchform form input[type="url"],
#searchform form input[type="tel"],
#searchform form input[type="number"],
#searchform form input[type="date"],
#searchform form textarea {
  border-radius: 3px;
  padding: 12px;
  max-width: 100%;
  font-size: 16px;
}

#searchform form textarea {
  width: 80%;
}

#searchform form input[type="submit"] {
  padding: 12px 20px;
}

/* comment */
.recentcomments {
  color: #808080;
  font-size: 12px;
}

.recentcomments a {
  color: #241913;
  font-size: 14px;
}

/* 実装中止----------- */
/* calendar */
.widget_calendar {
  border-radius: 3px;
  font-size: 16px;
}

.widget_calendar .side-widget-inner {
  border-radius: 3px;
  padding: 0 20px 20px;
}

.widget_calendar table {
  width: 100%;
}

.widget_calendar caption {
  border-radius: 3px 3px 0 0;
  padding: 14px 20px;
  margin: 0 -20px 20px;
  font-size: 18px;
  text-align: center;
}

.widget_calendar a {
  color: #666;
}

.widget_calendar li {
  margin-bottom: 1em;
}

.widget_calendar thead,
.widget_calendar tfoot,
.widget_calendar tbody {
  margin: 0 20px;
}

.widget_calendar th,
.widget_calendar td {
  text-align: center;
}

.widget_calendar tbody a {
  display: block;
}

.widget_calendar tbody a:hover {
  text-decoration: none;
}

/* follow */
#side .share-list-wrap {
  margin: 0 -20px 20px;
  background: #fff;
  padding: 20px;
}

#side .share-list-wrap .post-share-list1,
#side .share-list-wrap .post-share-list2,
#side .share-list-wrap .post-share-list3,
#side .share-list-wrap .post-share-list4 {
  overflow: hidden;
  margin-left: -1%;
}

#side .share-list-wrap .post-share-list1 li,
#side .share-list-wrap .post-share-list2 li,
#side .share-list-wrap .post-share-list3 li,
#side .share-list-wrap .post-share-list4 li {
  float: left;
  width: 24%;
  margin-left: 1%;
}

#side .share-list-wrap .post-share-list1 li a,
#side .share-list-wrap .post-share-list2 li a,
#side .share-list-wrap .post-share-list3 li a,
#side .share-list-wrap .post-share-list4 li a {
  border-radius: 100%;
  background: #fff;
  display: table-cell;
  text-align: center;
  vertical-align: middle;
  width: 60px;
  height: 60px;
  font-size: 32px;
  color: #5e6265;
}

#side .share-list-wrap .post-share-list1 li a .follow-on,
#side .share-list-wrap .post-share-list1 li a .big,
#side .share-list-wrap .post-share-list2 li a .follow-on,
#side .share-list-wrap .post-share-list2 li a .big,
#side .share-list-wrap .post-share-list3 li a .follow-on,
#side .share-list-wrap .post-share-list3 li a .big,
#side .share-list-wrap .post-share-list4 li a .follow-on,
#side .share-list-wrap .post-share-list4 li a .big {
  display: none;
}

#side .share-list-wrap .post-share-list1 li.post-share-facebook a:hover,
#side .share-list-wrap .post-share-list2 li.post-share-facebook a:hover,
#side .share-list-wrap .post-share-list3 li.post-share-facebook a:hover,
#side .share-list-wrap .post-share-list4 li.post-share-facebook a:hover {
  color: #305097;
}

#side .share-list-wrap .post-share-list1 li.post-share-twitter a:hover,
#side .share-list-wrap .post-share-list2 li.post-share-twitter a:hover,
#side .share-list-wrap .post-share-list3 li.post-share-twitter a:hover,
#side .share-list-wrap .post-share-list4 li.post-share-twitter a:hover {
  color: #00aced;
}

#side .share-list-wrap .post-share-list1 li.post-share-google a:hover,
#side .share-list-wrap .post-share-list2 li.post-share-google a:hover,
#side .share-list-wrap .post-share-list3 li.post-share-google a:hover,
#side .share-list-wrap .post-share-list4 li.post-share-google a:hover {
  color: #db4a39;
}

#side .share-list-wrap .post-share-list1 li.post-share-feedly a:hover,
#side .share-list-wrap .post-share-list2 li.post-share-feedly a:hover,
#side .share-list-wrap .post-share-list3 li.post-share-feedly a:hover,
#side .share-list-wrap .post-share-list4 li.post-share-feedly a:hover {
  color: #2bb24c;
}

/* author */
#side-author {
  overflow: hidden;
  font-size: 12px;
}

#side-author h4 {
  padding: 12px 0;
  margin-bottom: 20px;
  font-size: 16px;
}

#side-author .side-author-img {
  float: left;
  width: 100px;
}

#side-author .side-author-meta {
  float: right;
  width: 180px;
}

/* ----------------------------------------
* footer
---------------------------------------- */
/* Facebook Like Box width: 100% */
.post-share-fb.side-widget {
  text-align: center;
}

div.post-share-fb .fbcomments,
div.post-share-fb .fb_iframe_widget,
div.post-share-fb .fb_iframe_widget[style],
div.post-share-fb .fb_iframe_widget iframe[style],
div.post-share-fb .fbcomments iframe[style] *,
div.post-share-fb .fb_iframe_widget span {
  max-width: 100% !important;
}

#footer .fbcomments,
#footer .fb_iframe_widget,
#footer .fb_iframe_widget[style],
#footer .fb_iframe_widget iframe[style],
#footer .fbcomments iframe[style] *,
#footer .fb_iframe_widget span {
  max-width: 100% !important;
}

/*#footer {
  color: #fff;
}*/
#footer .fb-like-box,
#footer .fb-like-box>span,
#footer iframe {
  width: 100% !important;
  box-sizing: border-box;
}

#footer .footer-logo {
  font-size: 24px;
}

#footer .footer-logo img {
  margin-top: 5px;
  vertical-align: top;
}

/*#footer a {
  color: #fff;
}
#footer a:hover {
  color: #ccc;
}*/

body:not(.home) #footer {
  padding-top: 80px;
}

#footer .wrap {
  padding: 20px 0;
}

#footer .post-share {
  padding-right: 0;
  padding-left: 0;
}

#footer .row {
  margin-left: -15px;
  margin-right: -15px;
}

#footer .row .gr1,
#footer .row .gr2,
#footer .row .gr3,
#footer .row .gr4,
#footer .row .gr5,
#footer .row .gr6,
#footer .row .gr7,
#footer .row .gr8,
#footer .row .gr9,
#footer .row .gr10,
#footer .row .gr11,
#footer .row .gr12 {
  padding-left: 15px;
  padding-right: 15px;
}

/*#footer-brand-area {
  padding-bottom: 32px;
  margin-bottom: 32px;
  border-bottom: 1px solid #3B4552;
}*/

#footer-content-area {
  font-size: 14px;
}

#footer-content-area h4 {
  font-size: 16px;
}

#footer-content-area i.fa {
  margin-right: 12px;
}

#footer-content-area #footer-cont-about li,
#footer-content-area #footer-cont-content li {
  position: relative;
}

#footer-content-area #footer-cont-about li:before,
#footer-content-area #footer-cont-content li:before {
  content: '';
  font-family: FontAwesome;
  position: absolute;
  top: 7px;
  left: 0;
}

#footer-content-area #footer-cont-about li a,
#footer-content-area #footer-cont-content li a {
  padding: 8px 12px 8px 14px;
  display: inline-block;
}

#footer-content-area #footer-cont-about li a:hover,
#footer-content-area #footer-cont-content li a:hover {
  text-decoration: none;
}

#footer-content-area #footer-cont-sns a {
  display: block;
  padding: 8px 12px 8px 0;
}

#footer-content-area #footer-cont-sns a:hover {
  text-decoration: none;
}

@media screen and (max-width:767px) {
  #footer {
    padding-bottom: 70px;
  }
}

/* footer 01 */
.footer-01 {
  padding: 50px 0 30px;
  background: url(common/img/bg_ft.jpg);
  text-align: center;
}

.ft-logo img {
  width: 230px;
  margin-bottom: 20px;
}

.ft-address {
  font-size: 12px;
}

dl.ft-tel {
  width: 70%;
  margin: 30px auto 0;
  padding: 30px 20px;
  border: 7px solid #E8E8E8;
  background: #f4f4f4;
}

dl.ft-tel dt {
  float: left;
  width: 50%;
  font-size: 30px;
}

dl.ft-tel dt span {
  font-size: 22px;
  margin-right: 10px;
}

dl.ft-tel dd {
  margin-left: 50%;
  padding-top: 5px;
}

/* footer 02 */
.footer-02 {
  background: #f5f5f5;
}

ul.nav-related li {
  font-size: 12px;
  float: left;
  padding-top: 12px;
}

ul.nav-related li a {
  color: #4F4F4F !important;
  padding: 0 14px;
  border-right: 1px solid #4f4f4f;
}

ul.nav-related li:first-child a {
  padding-left: 0;
}

ul.nav-related li:last-child a {
  border-right: none;
}

.ft-sns {
  text-align: right;
  font-size: 16px;
  margin-top: 10px;
}

.ft-sns a {
  display: inline-block;
  color: #1D417A;
}

/* copyright */
.copyright {
  background: #2e2e2e;
  color: #fff;
  font-size: 12px;
}

.txt-copyright {
  text-align: right;
}

.txt-copyright a {
  color: #fff;
}

/* footer hotels */
.figcap-hotel h2 {
  font-size: 20px;
}

.figcap-hotel p {
  font-size: 14px !important;
}

#ft-hotel .grid-hover figure {
  margin: 0px 1% 7px;
  height: 220px;
}

/* lang */
ul.lang {
  display: inline-block;
  margin: 0 !important;
}

ul.lang li {
  display: inline-block;
  margin: 0 1px 0 0 !important;
}

ul.lang li a {
  display: block;
  background: #6D6D6D;
  text-decoration: none;
  font-size: 11px;
  padding: 5px;
  margin: 0 !important;
  color: #fff;
}

/* footer vm list */
.tit-group {
  font-size: 16px;
  margin-bottom: 20px !important;
}

.footer-group {
  background-color: #EDEDED;
  padding: 40px 0;
}

.footer-group .hotels ul {
  display: flex;
  display: -ms-flexbox;
  flex-wrap: wrap;
  -ms-flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: flex-start;
  row-gap: 50px;
  column-gap: 50px;
}

.footer-group .hotels ul li {
  margin-bottom: 3%;
}

.footer-group .hotels ul li a,
.footer-group .hotels ul li a p {
  color: #fff;
}

.footer-group .hotels ul li a img {
  margin-bottom: 5%;
}

.footer-group .hotels ul li a:hover,
.footer-group .hotels ul li a p:hover {
  opacity: .8;
}

.footer-group .tit-group {
  font-size: 1.3em;
}

.footer-group:first-of-type:not(:only-of-type) {
  background-color: rgba(0, 0, 0, .9);
  padding: 40px 0;
  border-bottom: 2px solid #fff;
  z-index: 2;
  position: relative;
}

.footer-group:first-of-type:not(:only-of-type) h2 {
  color: #fff;
}

.footer-group .wrap {
  max-width: 1250px;
  margin: 0 auto;
}

@media only screen and (min-width: 768px) {
  .footer-group .hotels ul li {
    width: 21%;
  }
}

/* @media only screen and (max-width: 767px) {
    .footer-group .hotels ul li {
        width: 29%;
    }
} */
@media only screen and (max-width: 680px) {
  footer div.footer_wrap p.copyright span {
    font-size: 10px
  }

  .footer-group .hotels ul li {
    width: 40%;
  }
}

table.vm-list {
  font-size: 12px;
  margin-bottom: 0;
}

table.vm-list {
  border: none;
}

table.vm-list th {
  width: 60px;
  vertical-align: top;
  border: none;
  border-top: 1px solid #ddd;
}

table.vm-list td {
  border: none;
  border-top: 1px solid #ddd;
}

table.vm-list td a {
  color: #4C4C4C;
}

table.vm-list td a:hover {
  text-decoration: none;
  color: #7C7C7C;
}

section.vmg-logo {
  width: 70%;
  /*    max-width: 800px;*/
  margin: 30px auto 0;
}

section.vmg-logo:hover {
  opacity: 0.7;
}

section.vmg-logo img {
  width: 100%;
}

@media screen and (max-width: 991px) {
  section.vmg-logo {
    width: 85%;
  }
}

@media only screen and (min-width: 768px) {
  .hidden-xs {
    display: block !important;
  }

  .visible-xs {
    display: none !important;
  }

  .ftr-bnrs {
    width: calc(70% + 30px);
    min-width: 300px;
    margin-left: auto !important;
    margin-right: auto !important;
  }
}

@media only screen and (max-width: 767px) {
  .hidden-xs {
    display: none !important;
  }

  .visible-xs {
    display: block !important;
  }

  section.vmg-logo {
    width: 90%;
  }
}



/** footer cv button **/
.footer-cv {
  padding: 80px 0;
}

.tit-ftcv {
  font-size: 20px;
  line-height: 2;
  font-weight: 700;
  text-align: center;
  margin-bottom: 40px;
}

.tit-ftcv span {
  display: block;
  font-size: 12px;
  letter-spacing: 1px;
}

/* ftcv-01 */
ul.ftcv-01 {
  width: 60%;
  margin: 0 auto 30px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

ul.ftcv-01 li {
  width: 47%;
  line-height: 1;
}

ul.ftcv-01 li a {
  font-size: 21px;
  width: 100%;
  padding: 20px 0;
  display: block;
  color: #fff;
  background: #000;
  letter-spacing: 2px;
  text-align: center;
  position: relative;
}

ul.ftcv-01 li a span {
  font-size: 11px;
  letter-spacing: 0;
  display: inline-block;
  border-radius: 10px;
  padding: 3px 14px;
}

ul.ftcv-01 li a img {
  width: 20px;
  position: absolute;
  top: 20px;
  left: 50px;
}

ul.ftcv-01 li:nth-child(2) a {
  background: #AB4A2D;
  letter-spacing: -0.5px;
}

ul.ftcv-01 li:nth-child(2) a span {
  background: #fff;
  color: #AB4A2D;
}

ul.ftcv-01 li:nth-child(2) a:after {
  content: ">";
  transform: scaleX(0.6);
  position: absolute;
  right: 23px;
  top: 20px;
}

/* ftcv-02 */
ul.ftcv-02 {
  width: 50%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center;
}

ul.ftcv-02 li {
  width: 47%;
  line-height: 1;
}

ul.ftcv-02 li a {
  font-size: 17px;
  width: 100%;
  padding: 20px 0;
  display: block;
  color: #000;
  background: #fff;
  border: 1px solid #707070;
  text-align: center;
  position: relative;
}

ul.ftcv-02 li a span {
  font-size: 13px;
  letter-spacing: 0;
}

ul.ftcv-02 li a img {
  width: 20px;
  position: absolute;
  top: 20px;
  left: 40px;
}

ul.ftcv-02 li a:after {
  content: ">";
  transform: scaleX(0.6);
  position: absolute;
  right: 23px;
  top: 20px;
}

ul.ftcv-01 li a:hover,
ul.ftcv-02 li a:hover {
  text-decoration: none;
}

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

  /** footer cv button **/
  ul.ftcv-01 {
    width: 94%;
  }

  ul.ftcv-02 {
    width: 84%;
  }

}


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

  /** footer cv button **/
  .footer-cv .wrap {
    margin: 0 12px;
  }

  ul.ftcv-01,
  ul.ftcv-02,
  ul.ftcv-01 li,
  ul.ftcv-02 li {
    width: 100%;
  }

  ul.ftcv-01 li a {
    font-size: 17px;
    line-height: 1.4;
  }

  ul.ftcv-02 {
    flex-direction: column;
  }

  ul.ftcv-01,
  ul.ftcv-02 li {
    margin-bottom: 15px;
  }

  ul.ftcv-02 li a img {
    left: 50px;
  }



}

/* ----------------------------------------
* LP
---------------------------------------- */
.single-lp {
  padding: 40px 0;
}

.single-lp .lp-wrap {
  width: 1157px;
  border: 1px solid #eee;
  margin: 0 auto;
  background: #fff;
  padding: 0;
}

.single-lp .lp-thumbnail {
  border: 1px #ccc solid;
  float: right;
  margin: 0 0 13px 13px;
  border: 1px #ccc solid;
}

.single-lp .lp-thumbnail img {
  vertical-align: top;
}

.single-lp .post-content {
  padding: 0;
}

.single-lp #lp-header {
  background: #1D417A;
  padding: 56px;
  color: #fff;
}

.single-lp #lp-header h1 {
  font-size: 32px;
  color: #fff;
  text-align: center;
}

.single-lp dt,
.single-lp dd {
  padding: 0;
  margin-left: 0;
  margin-right: 0;
}

.single-lp #content {
  padding: 40px 56px;
}

.single-lp #main {
  width: 100%;
  float: left;
  overflow: hidden;
}

.single-lp .main-inner {
  margin-right: 350px;
}

.single-lp #side {
  width: 320px;
  float: left;
  margin-left: -320px;
}

.single-lp .post-footer {
  padding: 20px 0;
}

.single-lp .post-footer .bzb-sns-btn {
  padding: 0;
}

.single-lp .lp-form {
  background: #494c4e;
  color: #fff;
  padding: 30px;
  width: 100%;
  max-width: 500px;
  margin-left: auto;
  margin-right: auto;
}

.single-lp .lp-form h3 {
  font-size: 18px;
  margin-bottom: 12px;
  font-weight: bold;
}

.single-lp .lp-form input[type=text],
.single-lp .lp-form input[type=email] {
  width: 90%;
  padding: 10px 5%;
  border: none;
}

.single-lp .lp-form input[type=submit],
.single-lp .lp-form button {
  width: 100%;
  padding: 10px 0;
  background: #F86222;
  color: #fff;
  border-bottom: 5px solid #e04807;
  -webkit-transition: all ease-in-out 0.3s;
  transition: all ease-in-out 0.3s;
  border-radius: 3px;
}

.single-lp .lp-form input[type=submit]:hover,
.single-lp .lp-form button:hover {
  background: #f9743b;
}

.single-lp .lp-form dl {
  margin-bottom: 13px;
}

/* one-column */
.one-column.single-lp #main {
  float: none;
}

.one-column.single-lp .main-inner {
  margin-left: 0;
  margin-right: 0;
}

.one-column.single-lp #side {
  float: none;
  width: 100%;
  margin-left: 0;
  margin-right: 0;
}

.single-lp #side {
  width: 320px;
  margin-left: -320px;
}

.single-lp.right-content #side {
  width: 320px;
  margin-left: -100%;
}

.single-lp.right-content .main-inner {
  margin-left: 350px;
  margin-right: 0;
}

@media screen and (max-width: 1200px) {
  .single-lp.right-content #side {
    width: 100%;
    margin: 0;
    float: none;
  }

  .single-lp.right-content .main-inner {
    margin: 0 0 40px;
    width: 100%;
  }
}

/* ----------------------------------------
* pagetop
---------------------------------------- */
.pagetop {
  display: none;
  position: fixed;
  bottom: 50px;
  right: 50px;
  color: #fff;
  z-index: 999;
}

.pagetop span {
  display: block;
  border-radius: 25px;
  background: #888;
  width: 50px;
  height: 50px;
  text-align: center;
  line-height: 40px;
  font-size: 36px;
  opacity: .8;
}

/* ----------------------------------------
* youtube
---------------------------------------- */
.iframe_wrap_movie {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
  margin-bottom: 20px;
  border: 3px solid #fff;
}

.iframe_wrap_movie iframe {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

/* ----------------------------------------
* photo gallery : /wedding/location
---------------------------------------- */

/*ギャラリー全体*/
#photogallery-wrap {
  position: relative;
  margin-bottom: 30px;
}

/*全サムネイル*/
#photogallery-wrap #thumbs {
  text-align: center;
  display: table;
}

#photogallery-wrap #thumbs label {
  display: table-cell;
}

/*サムネイルの幅*/
#photogallery-wrap #thumbs label img {
  width: 100%;
  cursor: pointer;
  margin: 5px 0 0 0;
  margin: 1px;
}

/*#photogallery-wrap #thumbs label img:hover{
	opacity:0.8;
}*/

/*ラジオボタンを非表示に*/
#r1,
#r2,
#r3,
#r4,
#r5,
#r6,
#r7,
#r8,
#r9,
#r10,
#r11,
#r12,
#r13,
#r14,
#r15,
#r16,
#r17,
#r18,
#r19,
#r20,
#r21,
#r22,
#r23,
#r24,
#r25 {
  display: none;
}

/*表示写真の初期配置（全部透明に）とtransition設定*/
#photogallery-wrap .photo {
  position: absolute;
  left: 0;
  top: 0;
}

#photogallery-wrap .photo img {
  width: 100%;
  opacity: 0;
  -webkit-transition: opacity 1s ease;
  transition: opacity 1s ease;
}



/*チェックされたサムネイルに相当する写真だけを表示*/
#r1:checked~#photo1 img,
#r2:checked~#photo2 img,
#r3:checked~#photo3 img,
#r4:checked~#photo4 img,
#r5:checked~#photo5 img,
#r6:checked~#photo6 img,
#r7:checked~#photo7 img,
#r8:checked~#photo8 img,
#r9:checked~#photo9 img,
#r10:checked~#photo10 img,
#r11:checked~#photo11 img,
#r12:checked~#photo12 img,
#r13:checked~#photo13 img,
#r14:checked~#photo14 img,
#r15:checked~#photo15 img,
#r16:checked~#photo16 img,
#r17:checked~#photo17 img,
#r18:checked~#photo18 img,
#r19:checked~#photo19 img,
#r20:checked~#photo20 img,
#r21:checked~#photo21 img,
#r22:checked~#photo22 img,
#r23:checked~#photo23 img,
#r24:checked~#photo24 img,
#r25:checked~#photo25 img {
  opacity: 1;
}




/* ----------------------------------------
* TEL link
---------------------------------------- */
a[href^="tel:"] {
  cursor: default;
  text-decoration: none;
}

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

  a[href^="tel:"] {
    cursor: pointer;
  }

}

/* ----------------------------------------
* link-box
---------------------------------------- */
.link-box {
  width: 100%;
  display: table;
  border-top: 1px solid #f0f0f0;
  background-color: rgba(254, 245, 219, 0.3);
}

.link-box div {
  display: table-cell;
}

.link-box-title {
  width: 50%;
  padding: 50px 5%;
}

.link-box-photo {
  width: 40%;
  height: 300px;
  background-size: cover;
}

.link-box-last {
  border-bottom: 1px solid #f0f0f0;
}

/* ----------------------------------------
* 内部リンク
---------------------------------------- */

/*#link-01,
#link-02,
#link-03{
	margin-top:-140px;
	padding-top:140px;
}

@media screen and (max-width: 767px) {
	
	#link-01,
	#link-02,
	#link-03{
		margin-top:-120px;
		padding-top:120px;
	}
	
}*/
/* ----------------------------------------
* 右フローティングボタン
---------------------------------------- */

#online {
  background: #000;
  opacity: .85;
  /*    padding: 20px 30px;*/
  position: fixed;
  margin-top: -120px;
  /*    height: 240px;*/
  color: #FFF;
  text-align: center;
  z-index: 998;
  transition-duration: .5s;
}

@media screen and (min-width:768px) {
  #online {
    right: 0;
    top: 50%;
    width: 150px;
    padding-top: 10px;
    padding-bottom: 10px;
  }

  .button-1 {
    line-height: 33px;
  }
}

@media screen and (max-width:767px) {
  #online {
    left: 0;
    bottom: 0;
    width: 100%;
    display: flex;
    display: -ms-flexbox;
    opacity: 1;
  }

  #online>div {
    width: 25% !important;
  }

  .copyright {
    background-color: #333;
    height: 110px;
  }

  #experience .else p {
    font-size: 1em !important;
  }

  .button-1 a {
    font-size: calc(.5em + .8vw) !important;
  }

  #online .button-1:before {
    display: block;
    width: 24%;
    margin: 4px auto 0;
    max-width: 30px;
  }

  #online .button-1:nth-child(1):before {
    content: url(/wpweb/wp-content/themes/xeory_extension/common/img/hotel.svg);
  }

  #online .button-1:nth-child(2):before {
    content: url(/wpweb/wp-content/themes/xeory_extension/common/img/dining.svg);
  }

  #online .button-1:nth-child(3):before {
    content: url(/wpweb/wp-content/themes/xeory_extension/common/img/activity.svg);
  }

  #online .button-1:nth-child(4):before {
    content: url(/wpweb/wp-content/themes/xeory_extension/common/img/inquiry.svg);
  }

  .eff-1 {
    display: none !important;
  }

  #online>div {
    /*        border-top: 1px solid #969696;*/
  }

  #online>div+div {
    /*        border-left: 1px solid #969696;*/
  }

  #online .mt10 {
    position: absolute;
    top: -550%;
    right: 0;
    background-color: rgba(0, 0, 0, .7);
    border: 1px solid #969696;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
    width: auto !important;
    height: auto !important;
    display: none;
  }

  #online [class^="sidebar_"] {
    display: block;
    padding: 8px 2px 8px 4px;
  }

  #online [class^="sidebar_"]+[class^="sidebar_"] {
    border-top: 1px solid #969696;
  }

  #online .button-1 {
    padding: 0 0 5px 0;
    text-align: center;
    height: auto;
    width: 90px;
  }

  /*
    #online .fa-28 {
        font-size: 7vw;
    }
*/
}

#online a.reserve,
span.reserve,
#online a.inquiry,
span.inquiry {
  width: 100%;
  display: block;
  padding: 18px 24px;
  border: 1px solid #fff;
  font-family: "brandon-grotesque";
  letter-spacing: 3px;
  color: #fff;
  -moz-transition: all 300ms ease-in-out;
  -o-transition: all 300ms ease-in-out;
  -webkit-transition: all 300ms ease-in-out;
  transition: all 300ms ease-in-out;
}

#online .fa-28 {
  font-size: 28px;
  color: #fff;
}

.button-1 {
  width: 150px;
  height: 33px;
  /*  float:left;*/
  text-align: left;
  cursor: pointer;
  position: relative;
  box-sizing: border-box;
  overflow: hidden;
  padding-left: 10px;
  white-space: nowrap;
  /*  margin:0 0 40px 0;*/
}

.button-1 a {
  font-family: arial;
  font-size: 1em;
  color: #fff;
  text-decoration: none;
  transition: all .5s ease;
  z-index: 2;
  position: relative;
}

.eff-1 {
  width: 150px;
  height: 35px;
  top: -2px;
  right: -144px;
  position: absolute;
  transition: all .5s ease;
  z-index: 1;
}

/*
.inquiry .eff-1 {
    background:#919191;
}
*/
.eff-1 {
  background: #505050;
}

.button-1:hover .eff-1 {
  right: 0;
}

.button-1:hover a {
  color: #fff;
}

.fa-fw {
  width: 1.28571429em;
  text-align: center;
}

.fab {
  display: inline-block;
  font: normal normal normal 14px/1 FontAwesome;
  font-size: inherit;
  text-rendering: auto;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}

/** online-parts/ **/
#online-parts {
  z-index: 998;
  position: fixed;
  right: 0;
  bottom: 0;
  width: 70px;
  background: #fff;
  text-align: center;
}

.wrap-fixcv {
  border: 1px solid #000;
}

.wrap-fixcv .btn-room a {
  display: block;
  background: #AB4A2D;
  color: #fff;
}

.wrap-fixcv .btn-room a div {
  font-size: 15px;
  width: 15px;
  line-height: 1.3;
  color: #fff;
  padding-top: 15px;
  padding-bottom: 15px;
  margin: 0 auto;
}

.wrap-fixcv .btn-room a div img {
  margin-bottom: 5px;
}

ul.fixcv {
  margin: 0 auto;
}

ul.fixcv li a {
  display: block;
  font-size: 6px;
  padding: 15px 0;
  text-align: center;
  color: #000;
  border-top: 1px solid #000;
}

ul.fixcv li a img {
  width: 20px;
  margin-bottom: 5px;
}

.wrap-fixcv .btn-room a:hover,
ul.fixcv li a:hover {
  text-decoration: none;
}

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

  #online-parts {
    right: 0;
    bottom: 0;
    width: 100%;
  }

  .accordion-fixcv {
    max-width: 100%;
    background-color: #fefffa;
  }

  .accordion-fixcv:not([open]) {
    margin-bottom: 0;
  }

  .accordion-fixcv summary {
    display: flex;
    justify-content: space-between;
    align-items: center;
    position: relative;
    padding: 15px 15px;
    background-color: #AB4A2D;
    color: #fff;
    font-weight: 600;
    cursor: pointer;
  }

  .accordion-fixcv summary::-webkit-details-marker {
    display: none;
  }

  .accordion-fixcv summary::after {
    content: ">";
    transform: rotate(-90deg) scaleX(0.5);
    font-size: 24px;
  }

  .accordion-fixcv[open] summary::after {
    transform: rotate(90deg) scaleX(0.5);
    font-size: 24px;
  }

  .accordion-fixcv .fixcv-sp-inner {
    transform: translateY(-10px);
    opacity: 0;
    margin: 0;
    padding: 15px 10px 10px 10px;
  }

  .accordion-fixcv[open] .fixcv-sp-inner {
    transform: none;
    opacity: 1;
  }

  dl.fixcv-sp-tit {
    display: flex;
    justify-content: space-around;
    align-items: center;
    margin: 0;
  }

  dl.fixcv-sp-tit dt {
    border-radius: 23px;
    background: #fff;
    padding: 5px 13px;
    font-size: 12px;
    color: #AB4A2D;
    margin: 0 15px 0 0;
  }

  dl.fixcv-sp-tit dt span {
    font-size: 9px;
    display: block;
  }

  dl.fixcv-sp-tit dd {
    color: #fff;
    font-size: 17px;
  }

  ul.fixcv-sp {
    margin: 0 auto 10px;
    width: 100%;
    display: flex;
    justify-content: space-around;
    align-items: flex-end;
  }

  ul.fixcv-sp li {
    width: calc(100% / 3);
  }

  ul.fixcv-sp li:nth-child(2) {
    border-left: 1px solid #ccc;
    border-right: 1px solid #ccc;
  }

  ul.fixcv-sp li a {
    text-align: center;
    font-size: 11px;
    display: block;
    position: relative;
  }

  ul.fixcv-sp li a:after {
    content: ">";
    transform: scaleX(0.6);
    font-size: 24px;
    position: absolute;
    top: 4px;
    right: 10px;
  }

  ul.fixcv-sp li a img {
    width: 40px;
    margin-bottom: 7px;
  }

  ul.fixcv-sp li a:hover {
    text-decoration: none;
  }

  .wrap-fixcv-sp .btn-tel {
    color: #000;
    font-size: 16px;
    border-top: 1px solid #ccc;
    padding-top: 10px;
  }

  .wrap-fixcv-sp .btn-tel img {
    width: 20px;
    margin: 0 15px 0 0;
  }


}


/* ----------------------------------------
* title
---------------------------------------- */

/* hero title */
#main-visual-2 {
  background-size: cover;
  height: 600px !important;
  padding: 180px 0 200px;
  /*margin-top:92px;*/
  background-position: center top;
}

.hero-title {
  background: url(common/img/bg_tit_hero.png) 0 0 no-repeat;
  background: url(common/img/bg_tit_hero_w.png) 0 0 no-repeat;
  background-size: cover;
  width: 261px;
  height: 261px;
  margin: 0 auto;
  padding-top: 90px;
}

.hero-title h2 {
  margin: 0;
  color: #fff;
  /*color:#000;*/
  text-align: center;
  font-size: 22px;
}

.hero-title h2 span {
  display: block;
  letter-spacing: 2px;
  font-size: 15px;
  margin-bottom: 10px;
}

/* hero title : concept top */
.hero-title-concept-top {
  text-align: center;
  padding-top: 70px;
}

.hero-title-concept-top h2 {
  font-size: 65px;
  letter-spacing: 2px;
  color: #fff;
  text-shadow: 1px 1px 2px #000;
}

/* hero title : guesthouse */
.hero-title-guesthouse {
  text-align: center;
  padding-top: 50px;
  color: #fff;
}

.hero-title-guesthouse h2 img {
  margin-bottom: 10px;
}

.hero-title-guesthouse h2 span {
  font-size: 65px;
  letter-spacing: 2px;
}

.hero-title-guesthouse h2,
.hero-title-guesthouse p {
  font-size: 18px;
  text-shadow: 1px 1px 2px #000;
}

/* hero title : access */
#main-visual-access iframe {
  height: 500px;
}


/*.title-white h2,
.title-white p{
	color:#fff !important;
	text-shadow: 1px 1px 2px #000;	
}

.title-black h2,
.title-black p{
	color:#000 !important;
	text-shadow: 1px 1px 2px #fff;	
}*/


/* title-lined */
.title-lined {
  border-bottom: 1px solid #dbdbdb;
  padding-bottom: 7px;
  font-weight: bold;
}

.title-lined-02 {
  border-bottom: 3px double #dbdbdb;
  padding-bottom: 7px;
}

/* title-bg */
.title-bg {
  /*background:#F2F2F2;*/
  background: #F7F5EC;
  padding: 10px 13px;
  font-weight: bold;
  color: #917E3A;
}

.title-bg-02 {
  background: #E9E9E9;
  padding: 10px 13px;
  font-weight: bold;
}

/* divider */
.divider {
  background: url("common/img/hr.png") no-repeat scroll center center rgba(0, 0, 0, 0);
  background-size: 100%;
  display: block;
  height: 9px;
  margin: 10px auto 40px;
  padding: 0;
  position: relative;
  width: 48px;
}

/* ----------------------------------------
* main caption
---------------------------------------- */
.main-caption {
  /*background:#f7f7f7;*/
  background: #efefef;
  padding: 60px 0;
}


/* ----------------------------------------
* tab panel
---------------------------------------- */
#tab_container {
  width: 100%;
}

ul.tab {
  padding: 0;
}

ul.tab li {
  list-style-type: none;
  /* width:24.6%; 4つ */
  width: 33%;
  height: 42px;
  float: left;
  background: #F2F2F2;
  margin: 0 0.5% 0 0;
  display: inline-block;
}

ul.tab li:last-child {
  margin: 0;
}

ul.tab li a {
  outline: none;
  display: block;
  color: blue;
  line-height: 42px;
  text-align: center;
  text-decoration: none;
  color: #241913;
}

ul.tab li a:hover {
  color: #fff;
  background: #1D417A;
}

ul.tab li a.selected {
  cursor: default;
  color: #fff;
  background: #1D417A;
}

ul.panel {
  clear: both;
  padding: 30px 0 0;
}

/* news */
.news-thum {
  display: table;
  border-bottom: 1px solid #f0f0f0;
  width: 100%;
  margin-bottom: 20px;
  padding-bottom: 20px;
}

.news-thum div {
  display: table-cell;
  vertical-align: top;
}

.news-thum .news-thum-photo {
  width: 20%;
}

.news-thum .news-thum-photo img {
  padding-right: 20px;
}

.news-thum-txt p.day {
  font-size: 12px;
  color: #686868;
  margin-bottom: 10px;
}

.news-thum-txt dl dt {
  font-weight: bold;
}

.news-thum-txt dl dd {
  margin: 0;
}

ul.piclist li dl {
  padding: 0 15px;
}

ul.piclist li dl dt {
  margin-bottom: 12px;
}

div.sa_pic div.pic_wrap {
  position: absolute;
  width: 100%;
  height: 100%;
  top: 0%;
  left: 0;
}

div.sa_pic {
  width: 100%;
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  background-color: #ffffffa8;
  background-image: url(https://www.sasayamastay.jp/wpweb/wp-content/uploads/2018/05/logo-300x51.png);
  background-repeat: no-repeat;
  background-size: 120px;
  background-position: center;
}

ul.piclist li dl dt a {
  display: block;
  overflow: hidden;
  position: relative;
  background-repeat: no-repeat;
  background-size: cover;
  background-color: #fff;
  background-position: center;
  width: 100%;
  height: 100%;
  z-index: 1;
}

/*
ul.piclist li dl dt a [style="background-image: url();"]:before {
    content: '';
    background-image: url(https://sasayamastay.jp/wpweb/wp-content/uploads/2018/05/logo-300x51.png);
    background-size: 180px;
    background-position: center;
    background-repeat: no-repeat;
    height: 100%;
    width: 100%;
    display: block;
    z-index: -1;
}
*/
ul.piclist li dl dt img {
  height: auto;
  width: 100%;
}

@media screen and (max-width:767px) {
  ul.piclist li:first-child {
    border-top: 1px solid #eee;
  }

  ul.piclist li {
    border-bottom: 1px solid #eee;
  }
}

/* ----------------------------------------
* box photo + text
---------------------------------------- */
/* box-01 */
.box-01 {
  width: 92%;
  margin: 0 4%;
  display: table;
}

.box-01 div {
  display: table-cell;
  vertical-align: top;
}

.box-01-text {
  width: 40%;
  padding: 0 5%;
}

.box-01-photo {
  width: 50%;
}

/* box-02 */
.box-02 {
  width: 100%;
  display: table;
}

.box-02 div {
  display: table-cell;
  vertical-align: top;
}

.box-02-text-r {
  width: 55%;
  padding: 0 0 0 5%;
}

.box-02-text-l {
  width: 55%;
  padding: 0 5% 0 0;
}

.box-02-photo {
  width: 40%;
}

/* box-03 */
.box-03 {
  width: 100%;
  display: table;
}

.box-03 div {
  display: table-cell;
  vertical-align: top;
}

.box-03-text-r {
  width: 40%;
  padding: 0 0 0 5%;
}

.box-03-photo {
  width: 55%;
}

/* box-half */
.gr6:nth-child(1) .box-half {
  margin: 0 20px 0 0;
}

.gr6:nth-child(2) .box-half {
  margin: 0 0 0 20px;
}

/* ----------------------------------------
* box:side-by-side photoの下にtext
---------------------------------------- */

.box-sbs {
  margin: 0 10px 60px;
}

.box-sbs .box-sbs-photo {
  margin-bottom: 20px;
}

.box-sbs .box-sbs-text h2 {
  font-size: 14px;
  font-weight: bold;
}

.page-template-page-wedding-fair .box-sbs .box-sbs-photo img {
  border-radius: 50%;
  -webkit-border-radius: 50%;
  -moz-border-radius: 50%;
}

.page-template-page-wedding-fair .box-sbs .box-sbs-photo {
  text-align: center;
}

.page-template-page-wedding-fair .box-sbs .box-sbs-text h3 {
  font-size: 1.5em;
  letter-spacing: 1px;
  position: relative;
  padding-bottom: 10px;
}

.page-template-page-wedding-fair .box-sbs .box-sbs-text h3::after {
  content: '';
  height: 1px;
  display: inline-block;
  width: 30px;
  position: absolute;
  bottom: 0;
  right: 0;
  left: 0;
  margin: auto;
  background-color: #000;
}

.single-wed_fair .present_box {
  border: 1px solid #cea889;
}

.single-wed_fair .present_box h3 {
  background-color: #cea889;
  padding: 5px;
  text-align: center;
  color: #fff;
  letter-spacing: .15em;
}

.single-wed_fair .present_box p {
  padding: 0 15px;
}

.single-wed_fair .fair_ttl {
  background-color: #fff;
  padding: 3px 15px;
  text-align: center;
  color: #cea889;
  border: 1px solid #cea889;
  letter-spacing: .15em;
  display: inline-block;
}


.btn-style-fair-01 {
  background-color: #cea889;
  text-align: center;
  color: #fff;
  letter-spacing: .05em;
  border-radius: 8px;
}


.fair-time {
  list-style: circle;
  padding-left: 1.5rem;
}

/* .fair-time li:before{
  counter-increment: number 1;
  content: counter(number)" )";
  margin-right:15px;
} */

@media screen and (min-width:768px) {
  .single-wed_fair .title-lined {
    font-size: calc(0.85em + .75vw);
  }

  .single-wed_fair h3 {
    font-size: calc(0.55em + .75vw);
  }

  .btn-style-fair-01 .hidden-xs {
    display: inline-block !important;
  }
}

@media screen and (max-width:767px) {
  .btn-style-fair-01 {
    display: block;
  }

  .btn-style-fair-01 .visible-xs {
    display: inline-block !important;
  }
}


/* ----------------------------------------
* box plan
---------------------------------------- */
.box-plan {
  padding: 30px;
  position: relative;
  z-index: 1;
  display: table;
  width: 100%;
  margin-bottom: 60px;
  /*border: 1px solid #dbdbdb;*/
  /*background: #F7F5EC;*/
}

/*.section-01 .box-plan:last-child{
	margin-bottom:0;
}*/

.box-plan::before,
.box-plan::after {
  content: "";
  height: 100%;
  position: absolute;
  width: 100%;
  border: 1px solid #dbdbdb;
}

.box-plan::before {
  left: 0;
  top: 0;
  z-index: -1;
}

.box-plan::after {
  top: 7px;
  left: 7px;
  z-index: -2;
}

.box-plan div {
  display: table-cell;
  vertical-align: top;
  width: 100%;
}

.box-plan .box-plan-photo {
  width: 30%;
  padding-right: 30px;
}

.box-plan .box-plan-text .title {
  font-weight: bold;
  /*color:#917E3A;*/
}

.box-plan .box-plan-text ul.list-style-01 li {
  color: #4F3F0B;
}

.box-plan .box-plan-text .price {
  color: #666;
  font-size: 16px;
}

.box-plan .box-plan-text p:last-child,
.box-plan .box-plan-text ul:last-child {
  margin-bottom: 0 !important;
}

.plan_bnr {
  position: relative;
}

.plan_bnr>a {
  position: absolute;
  max-width: 282px;
  width: 47%;
  left: 13.5%;
  bottom: 8%;
}

/* border none */
/*.box-plan-noline::before{
    	content: "" !important;
    	height: 100% !important;
    	position: absolute !important;
    	width: 100% !important;
		border:none !important;
	}
	
.box-plan-noline::after {
    	content: "" !important;
    	height: 100% !important;
    	position: absolute !important;
    	width: 100% !important;
		border:none !important;
}*/

/* wedding fair/plan detail */
.photo-plan-detail {
  padding-right: 40px;
  margin-bottom: 60px;
}

ul.photo-wed-style {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin: 10px 0 0;
}

ul.photo-wed-style li {
  width: calc(100% / 4);
}

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

  ul.photo-wed-style {
    margin: 10px 0 30px;
  }

}

/* wedding fair */
table.fair-day,
table.fair-day th,
table.fair-day td {
  border: none;
  background: #f9f9f9;
}

table.fair-day th {
  border-right: 1px solid #e5e5e5;
}

.icon-fair {
  display: inline-block;
  padding: 10px 15px;
  font-size: 12px;
  color: #fff;
  font-weight: bold;
  margin-right: 15px;
  white-space: nowrap;
}

.icon-p {
  background: #A2C40B;
}

.icon-w {
  background: #E5D716;
}

.icon-c {
  background: #C8BEE3;
}

ul.fair-time li span {
  width: 70px;
  display: inline-block;
}

.box-contact-fair {
  border: 1px solid #917E3A;
  background: #F7F5EC;
  color: #917E3A;
  padding: 30px 20px 20px;
  margin: 20px 0 0;
}

dl.contact-fair dt {
  float: left;
  width: 20%;
  font-size: 32px;
  text-align: center;
}

dl.contact-fair dd {
  margin-left: 20%;
  text-align: center;
}

.contact-fair-tel {
  font-size: 24px;
  margin-bottom: 0px;
}

table.flow-fair,
table.flow-fair td {
  vertical-align: middle;
  background-color: transparent !important;
  border: transparent !important;
}

table.flow-fair td:nth-of-type(2n-1) {
  width: 25%;
}

table.flow-fair td:nth-of-type(2n) {
  text-align: center;
  font-size: 2em;
}

.btn-color-03:hover {
  color: #000;
  background-color: #fff;
  border-color: #000;
}

.btn-color-03 {
  color: #fff;
  background-color: #000;
  border-color: #000;
}


/* ----------------------------------------
bootstrap追記
---------------------------------------- */
.col-xs-1-5,
.col-sm-1-5,
.col-md-1-5,
.col-lg-1-5,
.col-xs-2-5,
.col-sm-2-5,
.col-md-2-5,
.col-lg-2-5,
.col-xs-3-5,
.col-sm-3-5,
.col-md-3-5,
.col-lg-3-5,
.col-xs-4-5,
.col-sm-4-5,
.col-md-4-5,
.col-lg-4-5 {
  position: relative;
  min-height: 1px;
  padding-right: 15px;
  padding-left: 15px;
}

.col-xs-1-5 {
  width: 20%;
  float: left;
}

.col-xs-2-5 {
  width: 40%;
  float: left;
}

.col-xs-3-5 {
  width: 60%;
  float: left;
}

.col-xs-4-5 {
  width: 80%;
  float: left;
}

@media (min-width: 768px) {
  .col-sm-1-5 {
    width: 20%;
    float: left;
  }

  .col-sm-2-5 {
    width: 40%;
    float: left;
  }

  .col-sm-3-5 {
    width: 60%;
    float: left;
  }

  .col-sm-4-5 {
    width: 80%;
    float: left;
  }
}

@media (min-width: 992px) {
  .col-md-1-5 {
    width: 20%;
    float: left;
  }

  .col-md-2-5 {
    width: 40%;
    float: left;
  }

  .col-md-3-5 {
    width: 60%;
    float: left;
  }

  .col-md-4-5 {
    width: 80%;
    float: left;
  }
}

@media (min-width: 1200px) {
  .col-lg-1-5 {
    width: 20%;
    float: left;
  }

  .col-lg-2-5 {
    width: 40%;
    float: left;
  }

  .col-lg-3-5 {
    width: 60%;
    float: left;
  }

  .col-lg-4-5 {
    width: 80%;
    float: left;
  }
}

/* ----------------------------------------
* bg-photo
---------------------------------------- */

.bg-photo-01 {
  /*background:url(common/img/concept/bg_photo_01.jpg) left top no-repeat fixed;*/
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center top;
  margin: 0 auto;
  width: 100%;
  color: #fff;
  /*height:500px !important; */
  padding: 180px 0 180px;
}

.bg-photo-res-01 {
  background: url(common/img/restaurant/bg_photo_01.jpg) center top no-repeat fixed;
  background-size: cover;
  margin: 60px auto 0;
  width: 96%;
  height: auto;
  padding: 0;
}

.bg-photo-res-02 {
  background: url(common/img/restaurant/bg_photo_02.jpg) center top no-repeat fixed;
  background-size: cover;
  margin: 0 auto;
  width: 96%;
  height: auto;
  padding: 0;
}

.bg-photo-res-03 {
  background: url(common/img/restaurant/bg_photo_03.jpg) center top no-repeat fixed;
  background-size: cover;
  margin: 0 auto;
  width: 96%;
  height: auto;
  padding: 0;
}

.bg-photo-res-04 {
  background: url(common/img/restaurant/bg_photo_04.jpg) center top no-repeat fixed;
  background-size: cover;
  margin: 0 auto;
  width: 96%;
  height: auto;
  padding: 0;
}


/* ----------------------------------------
* TOP
---------------------------------------- */

/* news */
/*#news{
	padding-top:220px !important;
}*/

#news dl.list-news-top:nth-child(1) {
  border-top: 1px solid #eee;
  /*padding-top:20px;*/
}

dl.list-news-top {
  border-bottom: 1px solid #eee;
  padding: 20px 10px;
  margin-bottom: 0;
}

dl.list-news-top dt {
  float: left;
  width: 25%;
}

dl.list-news-top dd {
  margin-left: 25%;
}

dl.list-news-top dt .cat-name span,
.piclist .cat-name span {
  display: inline-block;
  padding: 4px 16px;
  font-size: 12px;
  background-color: #F7F5EC;
  color: #917E3A;
  border: 1px solid #917E3A;
}

dl.list-news-top dt .cat-name span a,
dl.list-news-top dt .cat-name span a:hover,
.piclist .cat-name span a,
.piclist .cat-name span a:hover {
  color: #917E3A;
}

dl.list-news-top dt .cat-name span.date,
.piclist .cat-name span.date {
  border: none;
  background-color: #f9f9f9;
  color: #222;
}

div.sa_pic:before {
  content: "";
  width: 100%;
  display: block;
  padding-top: 66.66%;
}

/* link */
.tit-top-link {
  text-align: center;
  margin-bottom: 40px;
}

.tit-top-link img {
  width: 300px;
}

.figcap-top-link {
  text-align: center;
}

.figcap-top-link h2 {
  font-size: 20px;
  /*	margin-top:200px !important;*/
  margin-top: 0 !important;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
}

.figcap-top-link h2 span {
  display: block;
  font-size: 16px;
}

#top-link .grid-hover figure {
  height: 563px;
}

.top-pickup h2,
.top-pickup h3,
.top-pickup p {
  line-height: 2.5;
  letter-spacing: .25em;
  font-feature-settings: "palt";
}

/* FORM */
.c-reserve {
  background: #f9f9f9;
  border: 1px solid #e8e8e8;
  padding: 1em;
}

.c-form,
.c-form__row {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}

.c-form__rightCol {
  margin-left: 10px;
}

.c-form__text {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  box-sizing: border-box;
  border: 1px solid #e9e9e9;
  border-radius: 0;
  width: 54px;
  height: 34px;
  text-align: center;
  background-color: #fff;
  padding: 0 !important;
}

.c-form__checkbox>.c-form__label {
  position: relative;
  display: inline-flex;
  align-items: center;
}

.c-form__children,
.c-form__select>select {
  box-sizing: border-box;
  border: 1px solid #e9e9e9;
  padding: 0 30px 0 13px !important;
  width: 100%;
  height: 34px;
  text-align: left;
  background-color: #fff;
  color: #333;
}

.c-form__select--adult,
.c-form__select--children {
  width: 90px;
}

.c-form__children:disabled,
.c-form__select>select:disabled {
  background-color: #e9e9e9;
}

.c-form__text:disabled {
  background-color: #e9e9e9;
}

.c-form__select {
  position: relative;
}

.c-form__select::after {
  position: absolute;
  top: 50%;
  right: 12px;
  transform: translateY(-50%);
  content: '';
  border-top: 4px solid #1e1e1e;
  border-right: 3px solid transparent;
  border-left: 3px solid transparent;
  pointer-events: none;
}

.c-form__note {
  margin-bottom: 0;
  font-size: .8em;
  color: #989898;
}

.c-form__stayAndRoom {
  display: flex;
  align-items: center;
}

.c-form__number {
  display: flex;
  justify-content: space-between;
  align-items: center;
  /*    margin-bottom: 12px;*/
}

.c-form__select--children {
  margin-left: 5px;
}

.c-childrenMenu[aria-hidden=false] {
  visibility: visible;
  opacity: 1;
  transition: opacity .5s ease-out;
}

.c-childrenMenu[aria-hidden=true] {
  visibility: hidden;
  opacity: 0;
  transition: opacity .5s ease-out, visibility 0s .5s;
}

.c-childrenMenu {
  position: absolute;
  top: calc(100% + 10px);
  right: 0;
  z-index: 1;
  box-sizing: border-box;
  border: 1px solid #e9e9e9;
  padding: 25px;
  width: 354px;
  background-color: #fff;
}

[type=button],
[type=reset],
[type=submit],
button {
  -webkit-appearance: button;
}

.c-childrenMenu__label {
  padding-left: 1em;
  text-indent: -1em;
  font-family: serif;
  line-height: 1.5;
  letter-spacing: .075em;
}

.c-childrenMenu__row {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.c-childrenMenu[aria-hidden=true] {
  visibility: hidden;
  opacity: 0;
  transition: opacity .5s ease-out, visibility 0s .5s;
}

.c-form__unkbown {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.c-form__cancel {
  text-decoration: underline;
  font-family: serif;
  font-size: .65rem;
  letter-spacing: .075em;
  color: #b1b1b1;
  background: transparent !important;
  border: 0 !important;
  padding: 10px !important;
  display: inline-block;
}

.c-form__label--room {
  margin: 0 10px;
  margin-left: auto;
}

#frmplanseek select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0;
}

@media screen and (min-width: 768px) {
  .top-pickup .wrap-box-onecol {
    position: relative;
  }

  .top-pickup .wrap-box-onecol .gr6:last-child {
    position: absolute;
    top: 50%;
    right: 0;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
  }

  .c-form__row {
    padding: 18px;
    height: 96px;
  }

  .c-form__row:nth-child(2) {
    padding-left: 0;
  }

  .c-form__row:not(:last-child):not(:nth-child(5)) {
    border-right: 1px solid #e8e8e8;
  }
}

@media screen and (max-width: 767px) {
  .c-form__row {
    padding-bottom: 20px;
    width: 100%;
  }

  .c-form__row:nth-child(3):nth-child(4) {
    border-bottom: 1px solid #e8e8e8;
  }

  .c-form__submit {
    width: 100%;
    max-width: 360px;
  }

  .c-form__cancelWrapper {
    width: 100%;
    text-align: center;
  }
}

/* ----------------------------------------
* 2nd
---------------------------------------- */

/* ● Conmmon
---------------------------------------- */

/* navgation : at the bottom of the page */

ul.nav-ft-default li {
  /* float:left;
	width:32%; */
  /* margin-bottom:10px; */
  text-align: center;
  font-size: 16px;
  outline: 4px solid #f9f9f9;
  outline-offset: -4px;
}

ul.nav-ft-default-02 li {
  float: left;
  width: 49%;
  margin-bottom: 20px;
  text-align: center;
  font-size: 16px;
}

/* ul.nav-ft-default li:nth-child(2),
ul.nav-ft-default li:nth-child(5),
ul.nav-ft-default li:nth-child(8){
	margin:0 2% 20px;	
}

ul.nav-ft-default-02 li:nth-child(1){
	margin-right:2%;	
} */

ul.nav-ft-default li span,
ul.nav-ft-default-02 li span {
  display: block;
}

ul.nav-ft-default li span:after,
ul.nav-ft-default-02 li span:after {
  display: block;
  content: "\002500";
}

ul.nav-ft-default li a,
ul.nav-ft-default-02 li a {
  text-decoration: none;
  color: #fff;
  display: block;
  padding: 50px 0;
}

ul.nav-ft-default li a:hover,
ul.nav-ft-default-02 li a:hover {
  background-color: rgba(0, 0, 0, 0.4);
  opacity: 0.8;
  /*background-color:rgba(255,255,255,0.9);*/
}

/* wedding */
ul.nav-ft-default li a {
  padding: 30px 0;
}

ul.nav-ft-default li span:after {
  display: none;
}

ul.nav-ft2-wedding li .box {
  font-size: 12px;
  letter-spacing: 0.5px;
  text-shadow: 1px 1px 2px #000;
  font-weight: normal !important;
}

ul.nav-ft2-wedding li .box span {
  font-size: 22px;
  /*font-family: 'Parisienne', cursive;*/
  font-family: 'EB Garamond', serif;
}

/* 3 ----- */
/* concept */
ul.nav-ft-concept li:nth-child(1) {
  background: url(common/img/concept/bg_ft_nav_01.jpg) center center no-repeat;
}

ul.nav-ft-concept li:nth-child(2) {
  background: url(common/img/concept/bg_ft_nav_02.jpg) center center no-repeat;
}

ul.nav-ft-concept li:nth-child(3) {
  background: url(common/img/concept/bg_ft_nav_03.jpg) center center no-repeat;
}

ul.nav-ft-concept li:nth-child(4) {
  background: url(common/img/concept/bg_ft_nav_04.jpg) center center no-repeat;
}

ul.nav-ft-concept li:nth-child(5) {
  background: url(common/img/concept/bg_ft_nav_05.jpg) center center no-repeat;
}

ul.nav-ft-concept li:nth-child(6) {
  background: url(common/img/concept/bg_ft_nav_06.jpg) center center no-repeat;
}

/* wedding */
ul.nav-ft-wedding li:nth-child(1) {
  background: url(common/img/wedding/bg_ft_nav_01.jpg) center center no-repeat;
}

ul.nav-ft-wedding li:nth-child(2) {
  background: url(common/img/wedding/bg_ft_nav_02.jpg) center center no-repeat;
}

ul.nav-ft-wedding li:nth-child(3) {
  background: url(common/img/wedding/bg_ft_nav_03.jpg) center center no-repeat;
}

/*ul.nav-ft-wedding li:nth-child(4){
	background:url(common/img/wedding/bg_ft_nav_04.jpg) center center no-repeat;
}
ul.nav-ft-wedding li:nth-child(5){
	background:url(common/img/wedding/bg_ft_nav_05.jpg) center center no-repeat;
}
ul.nav-ft-wedding li:nth-child(6){
	background:url(common/img/wedding/bg_ft_nav_06.jpg) center center no-repeat;
}
ul.nav-ft-wedding li:nth-child(7){
	background:url(common/img/wedding/bg_ft_nav_07.jpg) center center no-repeat;
}
ul.nav-ft-wedding li:nth-child(8){
	background:url(common/img/wedding/bg_ft_nav_08.jpg) center center no-repeat;
}
ul.nav-ft-wedding li:nth-child(9){
	background:url(common/img/wedding/bg_ft_nav_09.jpg) center center no-repeat;
}*/

/* wedding */
ul.nav-ft2-wedding li:nth-child(1) {
  background: url(common/img/wedding/bg_ft2_nav_01.jpg) center center no-repeat;
}

ul.nav-ft2-wedding li:nth-child(2) {
  background: url(common/img/wedding/bg_ft2_nav_02.jpg) center center no-repeat;
}

ul.nav-ft2-wedding li:nth-child(3) {
  background: url(common/img/wedding/bg_ft2_nav_03.jpg) center center no-repeat;
}

ul.nav-ft2-wedding li:nth-child(4) {
  background: url(common/img/wedding/bg_ft2_nav_04.jpg) center center no-repeat;
}

ul.nav-ft2-wedding li:nth-child(5) {
  background: url(common/img/wedding/bg_ft2_nav_05.jpg) center center no-repeat;
}

ul.nav-ft2-wedding li:nth-child(6) {
  background: url(common/img/wedding/bg_ft2_nav_06.jpg) center center no-repeat;
}



/* contact */
ul.nav-ft-contact li:nth-child(1) {
  background: url(common/img/contact/bg_nav_01.jpg) center center no-repeat;
}

ul.nav-ft-contact li:nth-child(2) {
  background: url(common/img/contact/bg_nav_02.jpg) center center no-repeat;
}

/*
ul.nav-ft-contact li:nth-child(3){
	background:url(common/img/contact/bg_nav_wed_02.jpg) center center no-repeat;
}
*/
ul.nav-ft-contact li:nth-child(3) {
  background: url(common/img/contact/bg_nav_03.jpg) center center no-repeat;
}

ul.nav-ft-contact li:nth-child(4) {
  background: url(common/img/contact/bg_nav_04.jpg) center center no-repeat;
}

ul.nav-ft-contact li:nth-child(5) {
  background: url(common/img/contact/bg_nav_05.jpg) center center no-repeat;
}

ul.nav-ft-contact li:nth-child(6) {
  background: url(common/img/contact/bg_nav_06.jpg) center center no-repeat;
}

/* 2 ----- */
/* stay */
ul.nav-ft-stay li:nth-child(1) {
  background: url(common/img/stay/bg_ft_nav_01.jpg) center center no-repeat;
}

ul.nav-ft-stay li:nth-child(2) {
  background: url(common/img/stay/bg_ft_nav_02.jpg) center center no-repeat;
}



/* ● Stay
---------------------------------------- */

/* stay top */
.box-notice-01 {
  /*background-color:rgba(0,0,0,0.8);
	padding:10px;*/
  color: #bbb;
  margin: 80px 0 20px;
}

.nav-guesthouse .grid-hover figure {
  margin: 1px;
}

.figcap-room h2 {
  text-align: center;
  font-size: 34px;
  padding: 50px 0 20px !important;
}

.figcap-room p {
  text-align: center;
  font-size: 14px !important;
  margin-top: 20px !important;
}

.figcap-room:hover table {
  opacity: 1;
  -webkit-transform: translate3d(0, 0, 0);
  transform: translate3d(0, 0, 0);
}

.figcap-room table {
  opacity: 0;
  -webkit-transition: opacity 0.35s, -webkit-transform 0.35s;
  transition: opacity 0.35s, transform 0.35s;
  -webkit-transform: translate3d(100%, 0, 0);
  transform: translate3d(100%, 0, 0);
  width: auto;
  border: none;
  margin: 0 auto;
}

.figcap-room table th,
.figcap-room table td {
  border: none;
  font-size: 14px;
  text-align: center;
  padding: 10px 10px 0;
}

/* guest house : top */
.box-recommend {
  border: 1px solid #917E3A;
  background: #F7F5EC;
  padding: 20px;
}

.box-recommend h3 {
  color: #917E3A;
  margin-bottom: 10px;
}

ul.list-recommend {
  margin: 0 0 0 20px;
}

ul.list-recommend li {
  list-style-type: disc;
  color: #4F3F0B;
}

ul.nav-room li {
  float: left;
  width: 49%;
  margin: 0 0 60px;
  text-align: center;
}

ul.nav-room li:nth-child(odd) {
  margin-right: 2%;
}

ul.nav-room li h4 {
  background-color: rgba(234, 233, 231, 1);
  padding: 60px 20px;
  font-weight: bold;
  width: 35%;
  margin: 0 auto;
  font-size: 20px;
}

ul.nav-room li h4 span {
  display: block;
  font-size: 16px;
}

ul.nav-room li p {
  margin: 20px 0 0;
}

ul.nav-room li a {
  display: block;
  height: 450px;
  color: #222;
  background-position: bottom;
  background-repeat: no-repeat;
  background-size: contain;
}

ul.nav-room li a:hover {
  text-decoration: none;
  opacity: 0.8;
}

.wrap-btn-ft-guesthouse {
  display: table;
  margin: 0 auto;
  border-collapse: separate;
  border-spacing: 15px 0;
}

.wrap-btn-ft-guesthouse a {
  display: table-cell;
}

/* guest house : top 2 */
.txt-spec {
  font-size: 12px;
  color: #666;
  font-weight: normal;
}

.txt-spec strong {
  font-weight: normal !important;
  font-size: 1.17em;
  margin-top: 1rem;
  padding-bottom: .4rem;
  display: inline-block;
}

.room-info {
  display: table;
  width: 100%;
  margin-bottom: 30px;
}

.room-info div {
  display: table-cell;
  border: 1px solid #cdcdcd;
  border-right: none;
  padding: 15px;
}

.room-info div:last-child {
  border-right: 1px solid #cdcdcd;
}

.room-info div dl {
  margin: 0;
}

.room-info div dl dt {
  color: #888;
  font-size: 12px;
  margin-bottom: 5px;
}

.room-info div dl dd {
  font-size: 13px;
}

.room-info-2 {
  /*	background:#f7f7f7;*/
  padding: 15px 0;
  display: flex;
  justify-content: space-evenly;
}

.room-info-2 div {
  text-align: center;
  display: table;
  float: left;
  width: 120px;
  height: 120px;
  position: relative;
  border-radius: 50%;
}

.room-info-2 div p {
  display: table-cell;
  margin: 0;
  vertical-align: middle;
}

.room-info-2 .room_p {
  background-color: #e69bb3;
}

.room-info-2 .room_b {
  background-color: #92a5dc;
}

.room-info-2 .room_y {
  background-color: #f3f1b5;
}


.room-info-2 ul {
  margin: 0;
  padding: 0;
}

.room-info-2 ul li {
  display: inline-block;
  width: 23%;
  font-size: 13px;
}

.room-name h3 span {
  display: block;
}

.room-name h3 span.en {
  display: block;
  padding: 2rem;
  background-color: rgba(255, 255, 255, .6);
  border: 1px solid #fff;
}

.room-name p {
  padding: 1rem 0 1rem 1.5rem;
}

/* guest house : top 3 */
.section-border {
  border-bottom: 1px solid #e5e5e5;
}

.btn-house {
  border: 1px solid #cbcbcb;
  border-radius: 25px;
  text-align: center;
  color: #000;
}

.btn-color-04 {
  color: #fff;
  background-color: #878787;
  border-color: #878787;
}

.btn-color-04:hover {
  color: #fff !important;
  background-color: #878787;
  border-color: #878787;
}


/* amenity */
table.list-amenity {
  border: none;
}

table.list-amenity td {
  border: 1px solid rgba(131, 138, 147, 0.5);
  border-left: none;
  border-right: none;
  font-size: 13px;
}


/* amenity */
dl.list-notice {
  margin-bottom: 7px;
}

dl.list-notice dt {
  float: left;
  width: 25%;
}

dl.list-notice dd {
  margin-left: 25%;
}


.box-kids-price {
  display: table;
  table-layout: fixed;
  width: 100%;
}

.box-kids-price dl.kids-price {
  display: table-cell;
  text-align: center;
  border-top: 1px solid #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
}

.box-kids-price table.kids-price {
  width: 100%;
  table-layout: fixed;
}

.box-kids-price table.kids-price th,
.box-kids-price table.kids-price td {
  text-align: center;
}

dl.kids-price dt span,
table.kids-price th span {
  display: block;
}

dl.kids-price dt,
table.kids-price th {
  border-bottom: 1px solid #e5e5e5;
  border-left: 1px solid #e5e5e5;
  padding: 13px 0;
  background: #F2F2F2;
  font-size: 12px;
  font-weight: bold;
}

dl.kids-price dd,
table.kids-price td {
  border-left: 1px solid #e5e5e5;
  padding: 13px 0;
  font-size: 12px;
}

.box-kids-price dl.kids-price:last-child dt,
.box-kids-price dl.kids-price:last-child dd {
  border-right: 1px solid #e5e5e5;
}

/* information */
table.flow-stay {
  border: none;
}

table.flow-stay th {
  border: none;
  width: 20%;
  text-align: center;
  font-weight: bold;
  padding: 0 0 20px 0;
  background: url(common/img/stay/info/bg_flow.png) 50% top repeat-y;
}

table.flow-stay td {
  border: none;
  padding: 0 0 20px 30px;
}

table.flow-stay th span {
  background: #F7F5EC;
  color: #917E3A;
  display: block;
  padding: 40px 0;
}

table.flow-stay tr:last-child th,
table.flow-stay tr:last-child td {
  padding-bottom: 0;
}

/* ペット宿泊滞在同意書 */
ul.consent li {
  margin-bottom: 10px;
}

.iframe-wrap {
  width: 100%;
}

.iframe-pet {
  width: 100%;
  height: 350px;
}

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

[id^="room_"] .cp_txt {
  padding: 5% 10%;
}

[id^="room_"] .cp_txt h2 {
  font-size: 2.1em;
  margin-bottom: 15px;
  padding-bottom: 10px;
  border-bottom: 1px solid #D3D3D3;
  display: block !important;
  text-align: left !important;
}

[id^="room_"] .cp_txt h2 span {
  font-size: .55em;
}

[id^="room_"] .cp_txt dl dt,
[id^="room_"] .cp_txt dl dd {
  display: inline-block;
  vertical-align: top;
  line-height: 1.4;
}

[id^="room_"] .cp_txt dl dd {
  margin-left: .8em;
}

@media screen and (min-width: 768px) {
  div.cp_txt {
    width: 50%;
    min-height: 400px;
  }

  [id^="room_"] .gr12 {
    display: flex;
  }

  div.cp_img {
    width: 50%;
    position: relative;
    overflow: hidden;
  }

  div.cp_img img {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    object-fit: cover;
    width: 100%;
    height: 100%;
  }

  [id^="room_"] .cp_txt {
    padding: 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
  }

  [id^="room_"] .cp_txt>* {
    width: 60%;
    min-width: 295px;
  }
}


/*====================
 stay - Bestrate
======================*/
.page-template-page-stay-bestrate #main-visual-2 {
  outline: solid 1px #ffffffa3;
  outline-offset: -30px;
  padding: 0;
  background-size: cover;
  height: 500px !important;
  background-position: center top;
  position: relative;
}

.page-template-page-stay-bestrate .hero-title {
  width: 100%;
  height: auto;
  padding-top: 0;
  position: absolute;
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  background: none;
}

.ttl_dash {
  position: relative;
  display: inline-block;
  margin: 0 10px;
  padding: 0 20px;
  text-align: center;
  word-break: break-all;
}

.ttl_dash::before,
.ttl_dash::after {
  position: absolute;
  top: 50%;
  content: '';
  width: 1000%;
  height: 1px;
  background-color: #333;
}

.ttl_dash::after {
  left: 100%;
}

.ttl_dash::before {
  right: 100%;
}

.title-bg-gray {
  padding: 10px;
  background-color: #f7f7f7;
}

.bnr-plan {
  color: #fff;
  background-image: url('common/img/stay/bestrate/btn_bg.jpg');
  background-size: cover;
  background-position: center;
  text-align: center;
  padding: 35px 20px;
  width: 100%;
  max-width: 480px;
  display: block;
  margin: auto;
  font-size: 1.4em;
  transition: .3s;
}

.bnr-plan:hover {
  text-decoration: none;
  opacity: .7;
}

@media screen and (min-width:768px) {
  .page-template-page-stay-bestrate #main-visual-2 {
    margin-top: 92px;
  }

  .page-template-page-stay-bestrate .res-intro .box-03 .box-03-photo {
    width: 50% !important;
    background-size: cover;
    background-position: center;
    padding-top: 40%;
  }

  .page-template-page-stay-bestrate .res-intro .box-03 .box-03-text {
    padding: 10% 3%;
  }
}

/*.room-info{
	display:table;
	width:100%;
	margin-bottom:40px;
	background:#f8f8f8;
}

.room-info dl{
	display:table-cell;
	border:1px solid #f0f0f0;
	border-right:none;
	vertical-align:top;
}

.room-info dl:last-child{
	border-right:1px solid #f0f0f0;
}

.room-info dl dt{
	margin:15px 10px;
	font-size:12px;
	color:#666;
}

.room-info dl dd{
	margin:0 10px 15px 10px;
	font-size:13px;
}

.mgn-room-info{
	margin-top:40px;
}

ul.room-things{
	margin-bottom:0;
}

ul.room-things li{
	float:left;
	width:47%;
	margin:0 6% 40px 0;
}

ul.room-things li:nth-child(2){
	margin-right:0;	
}

ul.room-things li img{
	margin-bottom:20px;
}*/

/* Facility */
/*ul.photo-facility li{
	float:left;
	width:23.5%;
	margin:0 2% 30px 0;
	font-size:12px;
}

ul.photo-facility li:nth-child(4n){
	margin-right:0;
}

ul.photo-facility li:nth-child(4n+1){
	clear:both;
}

ul.photo-facility li img{
	margin-bottom:15px;
	display:block;
	width:100%;
}*/

/*ul.photo-facility li:nth-child(4){
	clear:both;
}*/






/* Sight */
/*dl.sight{
	width:100%;
	border-bottom:1px #dbdbdb dotted;
	margin-bottom:30px;
	padding:0 0 30px 0;
}

dl.sight dt{
	font-size:16px;
	margin-bottom:15px;
	font-weight:bold;
}

dl.sight dt span{
	background:#241913;
	padding:4px 6px;
	color:#fff;
	font-size:11px;
	margin:0 10px 0 0;
	vertical-align:2px;
	font-family: 'Libre Baskerville', serif;
}

.photo-sight{
     float:left !important;
     width:auto !important;
     height:auto !important;
     margin:0 30px 0 0 !important;
}

.photo-sight img{
	 width:220px;
}*/



/* ● Restaurant
---------------------------------------- */

dl.res-about {
  background-color: rgba(234, 233, 231, 0.7);
  padding: 60px;
  margin: 160px 0;
}

dl.res-about dt {
  font-size: 24px;
  font-weight: bold;
  margin-bottom: 30px;
}

dl.res-about dt span {
  display: block;
  font-size: 14px;
  color: #917E3A;
}

.res-intro .box-03 .box-03-photo {
  width: 50% !important;
  background-size: cover;
  background-position: center;
}

/*table.menu-info th{
	border-right:none;	
}

table.menu-info td{
	text-align:right !important;
	border-left:none;	
}

table.menu-info th span{
	font-size:12px;
	color:#666;
	display:block;
}*/


/* ● Party
---------------------------------------- */

.price-partymenu {
  color: #917E3A;
  /*	font-weight:bold;*/
  font-size: 1.4em;
}

.price-partymenu .caption-partymenu {
  font-size: .8em;
}

dl.contact-party {
  width: 100%;
  margin: 30px 0 0;
  padding: 30px 20px;
  /*border:7px solid #E8E8E8;
	background:#f4f4f4;*/
  border: 1px solid #917E3A;
  background: #F7F5EC;
  color: #917E3A;
}

dl.contact-party dt {
  float: left;
  width: 50%;
  font-size: 30px;
}

dl.contact-party dt p {
  font-size: 18px;
}

dl.contact-party dt span {
  font-size: 22px;
  margin-right: 10px;
  color: #917E3A;
}

dl.contact-party dd {
  margin-left: 50%;
  padding-top: 5px;
}

/* About */
/*.point-num{
	font-size:32px;
	margin-right:15px;
	color:#888 !important;
	font-weight:normal !important;
}

.contact-party{
	background-color: rgba(254,245,219,0.3);	
	padding:40px 0;
}

.contact-party-inner{
	display:table;
	width:100%;
	text-align:center;
	table-layout:fixed;
}

.contact-party-inner div{
	display:table-cell;
	border:1px solid #FCE29C;
	border-right:none;
	vertical-align:middle;
	padding:20px 0;
	background-color: rgba(254,245,219,0.6);
}

.contact-party-inner div:last-child{
	border-right:1px solid #FCE29C;
}

.contact-party-inner div p{
	margin-bottom:0;
	color:#725602;
}*/






/* ● Wedding
---------------------------------------- */

/* TOP */
/*.wedding-top .section:nth-child(1){
	background:url(common/img/wedding/bg_top_01.jpg) center center no-repeat;
	background-size:cover;
}

.wedding-top .section:nth-child(2){
	background:url(common/img/wedding/bg_top_02.jpg) center center no-repeat;
	background-size:cover;
}

.wedding-top .section:nth-child(3){
	background:url(common/img/wedding/bg_top_03.jpg) center center no-repeat;
	background-size:cover;
}

.wedding-top .section:nth-child(4){
	background:url(common/img/wedding/bg_top_04.jpg) center center no-repeat;
	background-size:cover;
}

.wedding-top .section:nth-child(5){
	background:url(common/img/wedding/bg_top_05.jpg) center center no-repeat;
	background-size:cover;
}

.wedding-top .copy{
	color:#fff;
    text-shadow: 1px 1px 2px #000;
}

.wedding-top .copy h2{
	text-align:center;
	font-size:45px;
	letter-spacing: 2px;
	margin-top:-100px;
}

.wedding-top .copy h3{
	font-size:28px;
	letter-spacing: 2px;
	margin-top:-100px;
}

.wedding-top .copy p{
	font-size:16px;
	letter-spacing: 1px;
}*/

/* TOP */
.title-wedding-top {
  text-align: center;
  padding: 340px 0;
  background-repeat: no-repeat;
  background-size: cover;
  margin-bottom: 30px;
  background-position: top center;
}

.title-wedding-top-fair {
  text-align: center;
  /*background:url(common/img/wedding/bg_top_fair.png) center top no-repeat;
	background-size:42%;*/
  margin-bottom: 60px;
}

.title-wedding-top h3 {
  font-size: 47px;
  color: #fff;
  text-shadow: 1px 1px 2px #000;
  letter-spacing: 1px;
  margin-bottom: 10px;
}

.title-wedding-top-fair h3 {
  font-size: 42px;
}

.title-wedding-top h3 span,
.title-wedding-top-fair h3 span {
  display: block;
  font-size: 12px;
}

.bg-title-facility {
  background-image: url(common/img/wedding/facility/mainvisual.jpg);
  background-position: top right;
}


/* FAQ */
dl.faq {
  border-bottom: 1px solid #f0f0f0;
  padding-bottom: 20px;
}

dl.faq dt {
  font-weight: bold;
  margin-bottom: 15px;
}

dl.faq dt,
dl.faq dd {
  display: table;
}

dl.faq span,
dl.faq p {
  display: table-cell;
}

.title-q,
.title-a {
  font-size: 18px;
  padding-right: 30px;
}

.title-a {
  color: #888;
}


/* Concept */
/*table.chef-info{
	border:none;
}

table.chef-info th,
table.chef-info td{
	border:none;
}

table.chef-info td{
	width:60%;
}*/

/* Facility */
#carousel-top .owl-nav .owl-next,
#carousel-1 .owl-nav .owl-next,
#carousel-2 .owl-nav .owl-next,
#carousel-3 .owl-nav .owl-next,
#carousel-4 .owl-nav .owl-next,
#carousel-5 .owl-nav .owl-next,
#carousel-6 .owl-nav .owl-next,
#carousel-7 .owl-nav .owl-next,
#carousel-8 .owl-nav .owl-next,
#carousel-9 .owl-nav .owl-next,
#carousel-10 .owl-nav .owl-next,
#carousel-11 .owl-nav .owl-next,
#carousel-12 .owl-nav .owl-next,
#carousel-13 .owl-nav .owl-next,
#carousel-14 .owl-nav .owl-next,
#carousel-15 .owl-nav .owl-next {
  right: 0;
  position: absolute;
}

#carousel-top .owl-nav .owl-prev,
#carousel-1 .owl-nav .owl-prev,
#carousel-2 .owl-nav .owl-prev,
#carousel-3 .owl-nav .owl-prev,
#carousel-4 .owl-nav .owl-prev,
#carousel-5 .owl-nav .owl-prev,
#carousel-6 .owl-nav .owl-prev,
#carousel-7 .owl-nav .owl-prev,
#carousel-8 .owl-nav .owl-prev,
#carousel-9 .owl-nav .owl-prev,
#carousel-10 .owl-nav .owl-prev,
#carousel-11 .owl-nav .owl-prev,
#carousel-12 .owl-nav .owl-prev,
#carousel-13 .owl-nav .owl-prev,
#carousel-14 .owl-nav .owl-prev,
#carousel-15 .owl-nav .owl-prev {
  left: 0;
  position: absolute;
}

#carousel-top .owl-controls,
#carousel-1 .owl-controls,
#carousel-2 .owl-controls,
#carousel-3 .owl-controls,
#carousel-4 .owl-controls,
#carousel-5 .owl-controls,
#carousel-6 .owl-controls,
#carousel-7 .owl-controls,
#carousel-8 .owl-controls,
#carousel-9 .owl-controls,
#carousel-10 .owl-controls,
#carousel-11 .owl-controls,
#carousel-12 .owl-controls,
#carousel-13 .owl-controls,
#carousel-14 .owl-controls,
#carousel-15 .owl-controls,
#carousel-fair .owl-controls {
  position: absolute;
  text-align: center;
  width: 100%;
  margin: -20px auto;
  top: 45%;
}

#carousel-top .owl-controls .owl-nav [class*="owl-"],
#carousel-1 .owl-controls .owl-nav [class*="owl-"],
#carousel-2 .owl-controls .owl-nav [class*="owl-"],
#carousel-3 .owl-controls .owl-nav [class*="owl-"],
#carousel-4 .owl-controls .owl-nav [class*="owl-"],
#carousel-5 .owl-controls .owl-nav [class*="owl-"],
#carousel-6 .owl-controls .owl-nav [class*="owl-"],
#carousel-7 .owl-controls .owl-nav [class*="owl-"],
#carousel-8 .owl-controls .owl-nav [class*="owl-"],
#carousel-9 .owl-controls .owl-nav [class*="owl-"],
#carousel-10 .owl-controls .owl-nav [class*="owl-"],
#carousel-11 .owl-controls .owl-nav [class*="owl-"],
#carousel-12 .owl-controls .owl-nav [class*="owl-"],
#carousel-13 .owl-controls .owl-nav [class*="owl-"],
#carousel-14 .owl-controls .owl-nav [class*="owl-"],
#carousel-15 .owl-controls .owl-nav [class*="owl-"] {
  background: none repeat scroll 0 0;
  border: 0 solid #fff;
  border-radius: 100%;
  color: #242424;
  cursor: pointer;
  display: inline-block;
  font-size: 28px;
  height: 40px;
  line-height: 40px;
  margin: 0 13px;
  padding: 0;
  text-align: center;
  width: 40px;
  background-color: rgba(255, 255, 255, 0.5);
}

#carousel-fair .owl-controls .owl-nav [class*="owl-"] {
  background: none repeat scroll 0 0;
  border: 0 solid #1D417A;
  border-radius: 100%;
  color: #fff;
  cursor: pointer;
  display: inline-block;
  font-size: 28px;
  height: 50px;
  line-height: 50px;
  margin: 0 13px;
  padding: 0;
  text-align: center;
  width: 50px;
  background-color: #1D417A;
}

#carousel-1 .owl-controls .owl-nav [class*="owl-"]:hover {
  color: #242424;
}


.section-white #carousel-1 .owl-controls .owl-nav [class*="owl-"] {
  background: #f5f5f5;
}

#carousel-1 .owl-item {
  width: 100%;
  text-align: center;
}

#carousel-1 img {
  width: 100%;
}

/* wedding TOP fair */
#carousel-fair .owl-controls {
  margin: 0 auto;
  top: 90%;
  top: -100px;
}

#carousel-fair .owl-nav .owl-next {
  right: 0px;
  position: absolute;
}

#carousel-fair .owl-nav .owl-prev {
  left: 0px;
  position: absolute;
}

#carousel-fair .owl-item {
  padding: 0 10px 40px;
}

#carousel-fair .owl-item img {
  margin-bottom: 20px;
}


/* Model schedule */
ul.timeline {
  display: table;
  position: relative;
  background: url(common/img/wedding/schedule/bg_timeline.jpg) top center repeat-y;
  padding: 50px 50px 0 50px;
  margin-bottom: 0;
}

ul.timeline li {
  display: table-cell;
  vertical-align: middle;
  width: 50%;
}

.title-time {
  font-size: 28px;
  color: #666;
  border-bottom: 1px solid #666;
  letter-spacing: 3px;
}

#schedule>ul.timeline:nth-child(even) li img {
  padding-right: 30px;
}

#schedule>ul.timeline:nth-child(odd) li img {
  padding-left: 30px;
}

#schedule>ul.timeline:last-child {
  padding: 50px;
}


/* Photo gallery */
ul.photo-facility li {
  float: left;
  width: 23.5%;
  margin: 0 2% 30px 0;
  font-size: 12px;
}

ul.photo-facility li:nth-child(4n) {
  margin-right: 0;
}

ul.photo-facility li:nth-child(4n+1) {
  clear: both;
}

ul.photo-facility li img {
  margin-bottom: 15px;
  display: block;
  width: 100%;
}


/* Report */
table.report-info {
  border: none;
  font-size: 12px;
  margin-bottom: 20px;
}

table.report-info th {
  padding: 5px 0;
  border: none;
}

table.report-info td {
  padding: 5px 0;
  border: none;
  color: #666;
}

/* header-nav-wed fot tablet & phone */
.header-nav-wed-logo {
  display: none;
}

/*-----------------------------------------------------*/
/* 2020.01 add */
/* contact */
.contact_form dl {
  border-top: 1px solid #e2e2e2;
  /*    border-bottom: 1px solid #e2e2e2;*/
  padding: 1em;
  margin-bottom: 0;
}

.contact_form dl select {
  max-width: 100%;
  height: 34px;
}

.contact_form dl dt.must::before {
  position: static !important;
  margin-right: 10px;
}

.contact_form dl dt.must::before {
  content: "必須";
  position: absolute;
  display: inline-block;
  background-color: rgb(216, 162, 162);
  top: 0px;
  left: 0px;
  color: rgb(255, 255, 255);
  padding: 0.2em 0.3em;
  border-width: 1px;
  border-style: solid;
  border-color: rgb(216, 162, 162);
  border-image: initial;
  font-size: .8em;
}

.contact_form input[name="submitBack"] {
  background: #bdbdbd !important;
}

.mw_wp_form_confirm dl dt {
  margin-top: 0 !important;
}

@media only screen and (min-width:768px) {
  .contact_form dl {
    display: flex;
  }

  .contact_form dl dt {
    /*        float: left;*/
    position: relative;
    box-sizing: border-box;
    margin-top: 6px;
    width: 23%;
    min-width: 160px;
  }

  .contact_form input+input {
    margin-left: 6px;
  }
}

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

  dl.name input,
  .contact_form textarea {
    width: 100%;
  }

  .contact_form dl {
    padding-left: 0;
    padding-right: 0;
  }

  .contact_form dl dt {
    margin-bottom: 10px;
  }

  .contact_form dl dd input+input {
    margin-top: 6px;
  }
}



/*-----------------------------------------------------*/
/* 2018.11 add */

.mgn-wed-tit-1 {
  margin-top: 60px;
}

.mgn-wed-tit-2 {
  margin-top: 100px;
}

.link-txt-1 a {
  color: #333;
  text-decoration: underline;
}

.carousel-wed-top .owl-theme .owl-controls {
  bottom: 10% !important;
  left: 0 !important;
  margin-top: 0 !important;
  padding: 10px !important;
  position: absolute !important;
  text-align: center !important;
  top: auto !important;
  right: auto !important;
  width: auto !important;
}

.carousel-wed-top .title {
  font-size: 14px !important;
}

.carousel-wed-top a {
  text-decoration: none;
  color: #241913;
}

#main-visual-wedding {
  background-size: cover;
  /*height:600px !important;
  padding:220px 0 200px;*/
  height: 750px !important;
  padding: 320px 0 0px;
  position: relative;
}

.main-caption {
  text-align: center;
  font-size: 12px;
  margin: 20px 0 0;
}

.main-title h2 {
  margin-bottom: 10px;
}

.main-title p span {
  font-size: 18px;
  font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.title-white h2,
.title-white p {
  color: #fff !important;
  text-shadow: 1px 1px 2px #000 !important;
}

.title-black h2,
.title-black p {
  color: #000 !important;
  text-shadow: 1px 1px 2px #fff !important;
}

.main-title-wedding h2 {
  font-size: 50px;
  letter-spacing: 1px;
}

.main-title-wedding p span {
  font-size: 13px;
  letter-spacing: 1px;
}




/* ● Access
---------------------------------------- */

.box-tel {
  width: 96%;
  margin: 0 2%;
  border: 1px solid #917E3A;
  background: #F7F5EC;
  text-align: center;
  padding: 30px 10px;
}

.box-tel h3,
.box-tel p {
  color: #917E3A;
  margin-bottom: 10px;
}

.tit-access {
  background: #F7F5EC;
  padding: 13px 10px;
  color: #917E3A;
}

.tit-access i {
  color: #917E3A;
}

#google-map {
  width: 100%;
  height: 700px;
  margin-bottom: 40px;
}

ul.list-sight li {
  float: left;
  width: 50%;
  margin-bottom: 10px;
}

.access_index a {
  padding: 10px;
  border: 1px solid #e7e7e7;
  width: 80%;
  display: block;
  margin: 0 auto;
}

.access_index a:hover {
  border: 1px solid #e7e7e7;
  background-color: #e7e7e7;
}

.access-flow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}

.access-flow .time {
  position: relative;
}

.access-flow .time .arrow {
  display: inline-block;
  vertical-align: middle;
  color: #333;
  line-height: 1;
  position: relative;
  width: 1px;
  height: 95%;
  background: currentColor;
  position: absolute;
  left: 50%;
  transform: translate(-50%, 0);
}

.access-flow .time .arrow::after {
  content: '';
  width: 0.65em;
  height: 0.65em;
  border: 0.1em solid currentColor;
  border-left: 0;
  border-bottom: 0;
  box-sizing: border-box;
  transform: rotate(135deg);
  position: absolute;
  left: -0.275em;
  bottom: 0;
  margin: auto;
}

.access-flow .gr3.time {
  padding-left: 12.5%;
}

.access-flow .gr6.time {
  padding-left: 25%;
}

.access-flow .time {
  padding-left: 50%;
}

.access-flow .time p {
  margin-top: 15px;
  margin-left: 15px;
}

.access-flow .station p {
  border: 1px solid #333;
  margin-bottom: 0;
  padding: 10px;
  height: 100%;
}

.access-flow .gr6.station:first-of-type p {
  margin-right: 4px;
}

.access-flow .gr6.station:nth-of-type(2) p {
  margin-left: 4px;
}

.access-flow .station:not(:nth-of-type(4)):not(:first-of-type) p {
  margin: 0 4px;
}

.accordion__title {
  background-color: #e9e9e9;
  border: 1px solid #212529;
  color: #212529;
  font-size: 1.25em;
  padding: 0.625em 0.625em 0.625em 2em;
  position: relative;
  cursor: pointer;
  user-select: none;
}

.accordion__title::after {
  content: "\f107";
  font-family: FontAwesome;
  margin-left: 0.5em;
  position: absolute;
  right: 1em;
  top: 50%;
  -moz-transform: translate(0, -50%);
  -ms-transform: translate(0, -50%);
  -webkit-transform: translate(0, -50%);
  transform: translate(0, -50%);
}

.accordion__title.is-active::after {
  content: "\f106";
  margin-left: 0.5em;
}

.accordion__title:hover,
.accordion__title:active,
.accordion__title.is-active {
  background-color: #e9e9e9;
  color: #212529;
}

.accordion__content {
  border-left: 1px solid transparent;
  border-right: 1px solid transparent;
  padding: 0 1.5em;
  line-height: 0;
  height: 0;
  overflow: hidden;
  opacity: 0;
  transition-duration: .3s;
}

.accordion__content.is-open {
  border: 1px solid transparent;
  padding: 0 1.5em 3em;
  line-height: normal;
  height: auto;
  opacity: 1;
}


/* lp maternity
---------------------------------------- */
.title-maternity {
  margin: 60px 0 30px;
  text-align: center;
}

.bg-maternity {
  background: url(common/img/maternity/mainvisual.jpg) top center;
  background-size: cover;
  padding: 300px 0 100px;
}

.bg-maternity p {
  font-size: 16px;
}

.box-benefit {
  width: 100%;
  padding: 50px 0 40px;
  margin: 0 auto 50px;
  text-align: center;
  color: #6E4C27;
  background: #FDFAF3;

  /* box-shadow */
  box-shadow: 0px 0px 6px 3px #fdfaf2;
  -moz-box-shadow: 0px 0px 6px 3px #fdfaf2;
  -webkit-box-shadow: 0px 0px 6px 3px #fdfaf2;

  /* border-radius */
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;

  /* border */
  border: 1px solid #f0f0f0;
}

.photo_benefit {
  margin: 20px 0 30px;
}

/* ■ FAQ
---------------------------------------- */
#header {
  transition: .5s;
}

#header.hide {
  transform: translateY(-100%);
}

#faq>.faq_cats {
  transition: .5s;
  position: sticky;
  z-index: 2;
  background: rgba(255, 255, 255, .8);
}

#faq_cont .section_innerwrap {
  width: 90%;
  max-width: 710px;
  margin: 0 auto;
}

#faq_nav .section_innerwrap {
  padding-bottom: 0 !important;
  text-align: center;
}

#faq_nav ul li {
  display: inline-block;
}

#faq_nav ul li+li:before {
  content: '';
  height: 40px;
  width: 1px;
  display: inline-block;
  background-color: #AFAFAF;
  margin: 0 1.2em;
  transform: rotate(30deg);
  vertical-align: middle;
  margin-bottom: .4em;
}

#faq_nav ul li a:hover {
  color: #BCBCBC;
}

#faq_cont h2 {
  line-height: 43px;
  height: 43px;
  font-size: 1.2em;
  background-size: 100% auto;
  /*    background-color: #f0f0f0;*/
}

#faq_cont div+h2,
#faq_cont dl+dl {
  margin-top: 60px;
}

#faq_cont dl dt,
#faq_cont dl dd {
  /*    margin-left: 64px;*/
  /*    padding-left: 20px;*/
  position: relative;
  vertical-align: middle;
  padding: 10px 10px 10px 64px;
  background: #efefef;
  /*    border-left: 1px solid #afafaf;*/
}

#faq_cont dl dd {
  line-height: 1.4;
}

#faq_cont dl dt {
  font-size: 1.4em;
  margin-bottom: 4px;
}

#faq_cont dl dt h3,
#faq_cont dl dd.A p {
  padding: 10px 0 10px 20px;
  margin-bottom: 0;
  border-left: 1px solid #afafaf;
  line-height: 1.8;
}

#faq_cont dl dt:before,
#faq_cont dl dd:before {
  display: inline-block;
  height: 52px;
  line-height: 52px;
  vertical-align: middle;
  padding: 0 20px 0;
  position: absolute;
  left: 5px;
  top: 0;
  bottom: 0;
  margin: auto;
  font-size: 24px;
}

#faq_cont dl dt.Q:before {
  content: "Q";
}

#faq_cont dl dd.A:before {
  content: "A";
}

#faq .attention {
  float: none !important;
  margin: 0 auto;
  border-top: 1px solid #000;
  border-bottom: 1px solid #000;
  padding: 40px 0;
}

#faq .attention h3 {
  text-align: center;
  font-size: 1.4em;
  margin-bottom: 30px;
}

#faq .attention p {
  text-align: justify;
  text-justify: inter-ideograph;
  line-height: 1.6;
  width: 94%;
  margin: auto;
}

#faq .faq_box {
  padding-top: 160px;
  margin-top: -80px;
}

#faq #reserve {
  padding-top: 80px;
  margin-top: -80px;
}

@media screen and (min-width: 768px) {
  #faq_nav ul {
    margin-top: 30px;
    margin-bottom: 20px;
  }

  #faq_cont .section_innerwrap {
    padding-top: 60px !Important;
  }
}

@media screen and (max-width: 767px) {
  #faq_nav ul {
    margin-top: 20px;
    margin-bottom: 10px;
  }

  #faq_nav ul li {
    font-size: .9em;
  }

  #faq_nav ul li+li:before {
    height: 20px !important;
  }

  #faq_cont dl dt:before,
  #faq_cont dl dd:before {
    font-size: 18px !important;
    padding: 0 12px 0 !important;
  }

  #faq_cont dl dt,
  #faq_cont dl dd {
    padding-left: 50px !important;
  }

  #faq_cont .section_innerwrap {
    width: 100% !important;
  }
}

/*======================
アクティビティ
=======================*/
#activity .model_h3 {
  border-left: 1px solid;
  padding: .4em 0 .4em 1.6em;
  line-height: 1.3;
}

#activity .model_h3 h3 {
  font-size: 2em;
}

#activity .model_h3 p {
  font-size: .9em;
  line-height: 1.8;
}

#activity .model_h3 h3 span {
  font-size: .7em;
  padding: .3em .6em;
  background-color: #ededed;
  margin-right: 1.2em;
  display: inline-block;
}

#activity .actv_point {
  background-color: #F2F5F5;
  padding: 2.2em 2em 1em;
}

#activity .actv_point h3 {
  font-size: 1.3em;
  margin-bottom: 20px;
}

#activity .actv_point ul li {
  border-top: 1px solid #c2c2c2;
  line-height: 2;
  padding: .5em .5em .5em 1.5em;
  position: relative;
}

#activity .actv_point ul li:before {
  content: '';
  display: block;
  position: absolute;
  left: .5em;
}

#activity .actv_info dl {
  border-top: 1px solid #c2c2c2;
  padding: 10px 0;
  display: flex;
  display: -ms-flexbox;
}

#activity .actv_info dl:last-of-type {
  border-bottom: 1px solid #c2c2c2;
}

#activity .actv_info dl dt {
  font-size: .8em;
  background-color: #ededed;
  width: 24%;
  max-width: 140px;
  text-align: center;
  /*    line-height: 39px;*/
  display: flex;
  justify-content: center;
  align-items: center;
}

#activity .actv_info dl dd {
  width: 70%;
  padding: .8em 0 .8em 6%;
}

#activity .actv_info dl dd table tr td {
  line-height: 1.5;
  padding: .2em .5em;
}

#activity .actv_info dl dd a {
  color: #fff;
  font-size: .9em;
  background-color: #6b6b6b;
  border-radius: 4px;
  padding: .3em 1em;
  margin-left: 20px;
}

#activity .actv_point ul li,
#activity .actv_info dl {
  font-size: 1.1em;
  margin-bottom: 0;
}

.post-type-archive dl:first-of-type dt h3 {
  font-size: 1.1em !important;
}

.actv_detail {
  margin-top: 1em;
}

.actv_detail dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}

.actv_detail dl dt {
  white-space: nowrap;
}

#activity .hero-title-actv {
  margin: 0 auto;
  padding-top: 90px;
  max-width: 1250px;
  width: 90%;
}

#activity .hero-title-actv h2 {
  display: inline-block;
  margin-bottom: 3em;
  position: relative;
  z-index: 5;
  text-align: left;
  background-color: rgba(255, 255, 255, .7);
  color: #000;
  border-color: #fff !important;
  padding: 30px;
  max-width: 27em;
}

#activity .actv_box .photo_2 div+div {
  margin-top: 15px;
}

#actv_nav .section_innerwrap {
  text-align: center;
}

#actv_nav ul li {
  display: inline-block;
  padding: 20px 20px 40px;
}

#actv_nav ul.tab li::before,
#actv_nav ul.tab li:last-child::after {
  content: '';
  height: 30px;
  width: 1px;
  display: inline-block;
  background-color: #c1c1c1;
  margin: 0 40px;
  vertical-align: middle;
  margin-bottom: .4em;
}

#actv_src .gr12 ul li div:first-of-type {
  padding-top: calc(694/886*100%);
  background-size: cover;
  background-repeat: no-repeat;
}

@media screen and (min-width:769px) {
  #activity .actv_info_wrap {
    display: flex;
    display: -ms-flexbox;
  }

  #activity .actv_info_wrap .photo_2 {
    width: 40%;
  }

  #activity .actv_info_wrap .actv_info {
    width: 60%;
    margin-left: 30px;
  }
}

@media screen and (max-width:768px) {
  #activity #main-visual-2 {
    height: 300px !important;
  }

  #activity .model_h3 h3 {
    font-size: 1.15em;
  }

  #activity .hero-title h2 {
    font-size: 1.2em !important;
    padding: 15px !important;
  }

  #activity .actv_info dl dd {
    font-size: .85em;
  }
}


/* Complex
---------------------------------------- */

/*.tit-info-01{
	color:#4EAC63;
}

.tit-info-02{
	color:#0096DF;
}

.tit-info-03{
	color:#EF8200;
}

ul.info-01 li{
	float:left;
	width:23%;
	margin:0 2.6% 0 0;
}

ul.info-01 li:last-child{
	margin:0;
}

ul.info-01 li h4{
	margin-bottom:10px;
}

ul.info-01 li{
	font-size:12px;
}*/

/* ----------------------------------------
* レスポンシブ
---------------------------------------- */
#header-nav-btn,
#gnav-sp {
  display: none;
}


/*------------------------------------------------------------------
 lg
*/

@media screen and (max-width: 1200px) {
  body.home .wrap {
    width: auto;
    margin: 0 36px;
  }

  /*.post-header,
  .post-author {
    padding: 36px;
  }

  .post-content,
  .post-footer {
    padding-left: 36px;
    padding-right: 36px;
  }*/

  .single-lp #gnav-sp {
    display: none;
  }

  .single-lp .lp-wrap {
    width: auto;
    margin: 0 36px;
  }

  .single-lp #main,
  .single-lp #side,
  .single-lp .main-inner {
    width: 100%;
    float: none;
    margin: 0 0 20px;
  }

  /* ----------------------------------------
		TOP 
	-----------------------------------------*/
  body.home #main_visual {
    height: 750px !important;
    margin-bottom: 60px;
  }

  #main_visual_second {
    height: 500px !important;
  }

  /*#main_copy{
		left:21%;
		top:33%;
	}*/

  .figcap-top-link h2 {
    font-size: 18px;
  }

  /* news */
  /*#news{
		padding-top:0px !important;
	}*/

  dl.list-news-top dt {
    width: 30%;
  }

  dl.list-news-top dd {
    margin-left: 30%;
  }


  /* ----------------------------------------
		2nd 
	-----------------------------------------*/

  /* ● Stay
	-----------------*/
  /* guest house : top */
  ul.nav-room li a {
    height: 350px;
  }

  /* ● Wedding
	-----------------*/
  .title-wedding-top {
    padding: 240px 0;
  }

}

/*------------------------------------------------------------------
 md, sm
*/
@media screen and (max-width: 991px) {

  /* tablet */
  body.home .wrap,
  .wrap {
    width: auto;
    margin: 0 24px;
  }

  body.home #front-service {
    background-image: none;
  }

  /* header */
  #header {
    padding: 0;
  }

  .header-wedding {
    /*background: #666 !important; */
    background-color: rgba(0, 0, 0, 0.7) !important;
    height: 66px;
  }

  #header .wrap {
    width: auto;
    margin: 0 24px;
  }

  #header a {
    /*color: #241913;*/
    color: #999;
  }

  /* humberger menu */
  #header-nav-btn {
    display: block;
    /*width: 116px;
    line-height: 92px;*/
    width: 40px;
    line-height: 70px;
    float: right;
  }

  #header-nav-btn a {
    display: block;
    text-align: center;
    display: block;
    font-size: 32px;
    /*background: #3B4552;*/
  }

  #header-fnav-area,
  .header-tel {
    display: none;
  }

  /* gnav */
  #gnav {
    display: none;
  }

  .dummy {
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    opacity: 0;
    z-index: 10;
  }

  #gnav-sp {
    display: none;
    background: #F9F9F9;
    display: block;
    color: #241913;
    font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "游ゴシック", YuGothic, Verdana, "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    z-index: 100;
    position: absolute;
    right: 0;
    left: 0;
    width: 100%;
    top: 90px !important;
  }

  #gnav-sp .wrap {
    width: 94%;
    margin: 0 3%;
    padding: 36px 0;
  }

  #gnav-sp .wrap a {
    color: #241913;
  }

  #gnav-sp #header-cont-content h4,
  #gnav-sp #header-cont-about h4,
  #gnav-sp #header-cont-sns h4 {
    font-weight: bold;
    margin-bottom: 16px;
  }

  #gnav-sp #header-cont-content li,
  #gnav-sp #header-cont-about li,
  #gnav-sp #header-cont-sns li {
    font-size: 14px;
  }

  #gnav-sp #header-cont-content li a,
  #gnav-sp #header-cont-about li a,
  #gnav-sp #header-cont-sns li a {
    padding: 10px 12px;
  }

  #gnav-sp #header-cont-content ul {
    margin-left: -2%;
  }

  #gnav-sp #header-cont-content li {
    margin-left: 2%;
    float: left;
    width: 48%;
  }

  #gnav-sp #header-cont-content li a {
    display: block;
    position: relative;
  }

  #gnav-sp #header-cont-content li a:before {
    font-family: 'FontAwesome';
    content: '\f105';
    position: absolute;
    left: 0;
    top: 8px;
  }

  #gnav-sp #header-cont-content .children {
    display: none;
  }

  #gnav-sp #footer-nav li a {
    display: block;
    padding: 8px 12px;
    position: relative;
  }

  #gnav-sp #footer-nav li a:before {
    font-family: 'FontAwesome';
    content: '\f105';
    position: absolute;
    left: 0;
    top: 8px;
  }

  #gnav-sp #footer-nav .children {
    display: none;
  }

  #gnav-sp #header-cont-sns li a {
    display: block;
    padding: 8px 12px 8px 0;
  }



  /* accordion menu */
  div.accordion {
    width: 100%;
  }

  ul.accordion-menu {
    padding: 0 !important;
    margin: 0 !important;
  }

  div.accordion>ul>li>a {
    display: block;
    color: #241913;
    font-size: 13px;
    line-height: 1;
    text-decoration: none;
    background-color: #f5f5f5;
    border-bottom: 1px solid #dbdbdb;
    cursor: pointer;
    padding: 20px 15px;
    position: relative;
  }

  div.accordion>ul>li>a:after,
  div.accordion>ul>li>a.active:after {
    font-size: 14px;
    position: absolute;
    right: 15px;
    top: 19px;
    color: #241913;
  }

  div.accordion>ul>li>ul>li>a:after {
    font-size: 14px;
    position: absolute;
    right: 15px;
    top: 16px;
    color: #241913;
  }

  div.accordion>ul>li>a:after {
    content: "\f107";
    font-family: "FontAwesome";
  }

  div.accordion>ul>li>a.active:after {
    content: "\f106";
    font-family: "FontAwesome";
  }

  div.accordion>ul>li>ul>li>a:after {
    content: "\f105";
    font-family: "FontAwesome";
  }

  div.accordion>ul>li>ul {
    display: none;
    padding: 0 !important;
    margin: 0 !important;
  }

  div.accordion>ul>li>ul>li>a {
    display: block;
    color: #241913;
    font-size: 13px;
    background-color: #E8E8E8;
    border-bottom: 1px solid #dbdbdb;
    padding: 15px 15px;
    position: relative;
  }

  .tel-sp a {
    text-decoration: none;
    padding: 20px 15px;
    display: block;
    color: #241913;
    font-size: 13px;
    background-color: #f5f5f5;
  }


  /* footer */
  .figcap-hotel h2 {
    font-size: 18px;
  }

  .figcap-hotel p {
    font-size: 12px !important;
  }

  dl.ft-tel {
    width: 85%;
  }

  dl.ft-tel dt {
    font-size: 28px;
  }

  dl.ft-tel dd {
    font-size: 12px;
  }



  /* front page */
  body.home #main_visual {
    height: 350px !important;
  }

  body.home #main_visual h2 {
    margin-top: 0;
    font-size: 24px;
  }

  body.home #main_visual p {
    width: 84%;
    margin-right: 8%;
    margin-left: 8%;
  }

  body.home .front-loop {
    margin-left: 0;
  }

  body.home .front-loop .popular_post_box {
    width: 32%;
    margin: 0 .5%;
  }

  body.home .front-loop .popular_post_box .wrap-a {
    display: block;
    border: 1px solid #e5e5e5;
  }

  body.home .front-loop .popular_post_box .wrap-a:hover {
    background: #fafafa;
    text-decoration: none;
  }

  body.home .front-loop .popular_post_box .wrap-a h3,
  body.home .front-loop .popular_post_box .wrap-a ul {
    margin-left: 10px;
    margin-right: 10px;
  }

  body.home .front-loop .popular_post_box img {
    width: 100%;
    height: auto;
  }

  body.home .front-loop .popular_post_box.rank-4,
  body.home .front-loop .popular_post_box.rank-5,
  body.home .front-loop .popular_post_box.recent-4,
  body.home .front-loop .popular_post_box.recent-5 {
    display: none;
  }

  body.home .front-main-cont .tri-border {
    display: none;
  }

  body.home #front-contents .c_box.c_box_left .c_box_inner,
  body.home #front-contents .c_box.c_box_right .c_box_inner {
    width: 100%;
    float: none;
  }

  body.home #front-contents .c_box.c_box_left .c_title,
  body.home #front-contents .c_box.c_box_right .c_title {
    text-align: center;
  }

  body.home #front-contents .c_box.c_box_left .c_img_box,
  body.home #front-contents .c_box.c_box_right .c_img_box {
    position: relative;
    height: 300px;
    width: 100%;
    margin-bottom: 24px;
  }

  body.home #front-contents .c_box.c_box_left .c_text h4,
  body.home #front-contents .c_box.c_box_right .c_text h4 {
    text-align: center;
  }

  body.home #front-contents .c_box.c_box_left .c_btn,
  body.home #front-contents .c_box.c_box_right .c_btn {
    text-align: center;
  }

  body.home #front-contents .c_box.c_box_left .c_btn a,
  body.home #front-contents .c_box.c_box_right .c_btn a {
    margin-right: auto;
    margin-left: auto;
  }

  body.home #front-service .front-service-inner {
    margin-left: 0;
  }

  body.home #front-service .front-service-inner .c_box {
    width: 100%;
    float: none;
    margin: 0 0 20px;
  }

  body.home #front-company .c_img_box {
    height: 300px;
    position: relative;
  }

  body.home #front-company .c_img_box,
  body.home #front-company .c_box_inner {
    float: none;
    width: 100%;
  }

  .cat-content .post-header,
  article.page .post-header,
  article.post .post-header {
    padding: 40px;
  }

  article.page .post-content {
    padding: 40px;
  }

  /*.post-header {
    padding: 56px 44px 0;
  }

  .post-content {
    padding: 40px;
  }*/

  .post-title {
    font-size: 18px;
  }

  .post-content h2 {
    margin-left: -52px;
  }

  .post-meta-area {
    background: #fff;
    color: #241913;
  }

  .post-meta-area .post-meta {
    width: 40%;
    float: left;
    text-align: left;
  }

  .post-meta-area .post-meta .date {
    background: transparent;
    text-align: left;
  }

  .post-meta-area .bzb-sns-btn {
    height: auto;
  }

  .post-meta-area .bzb-sns-btn .sharrre {
    margin: 0 5px 0 0;
    float: left !important;
    width: 20%;
    overflow: hidden;
  }

  .post-meta-area .bzb-sns-btn .sharrre.twitter a,
  .post-meta-area .bzb-sns-btn .sharrre.facebook a,
  .post-meta-area .bzb-sns-btn .sharrre.googlePlus a,
  .post-meta-area .bzb-sns-btn .sharrre.hatena a {
    background: transparent;
    display: block;
    padding: 4px 24px;
    color: #241913;
  }

  .post-meta-area .bzb-sns-btn .sharrre.twitter a .share,
  .post-meta-area .bzb-sns-btn .sharrre.facebook a .share,
  .post-meta-area .bzb-sns-btn .sharrre.googlePlus a .share,
  .post-meta-area .bzb-sns-btn .sharrre.hatena a .share {
    display: none;
    text-align: center;
    float: left;
  }

  .post-meta-area .bzb-sns-btn .sharrre.twitter a:hover,
  .post-meta-area .bzb-sns-btn .sharrre.facebook a:hover,
  .post-meta-area .bzb-sns-btn .sharrre.googlePlus a:hover,
  .post-meta-area .bzb-sns-btn .sharrre.hatena a:hover {
    background: transparent;
  }

  .post-meta-area .bzb-sns-btn .s_buttons {
    font-size: 14px;
    padding-top: 20px;
  }

  .post-meta-area .loop-comment-icon {
    padding: 4px 12px;
    background: transparent !important;
    text-align: center;
    float: right;
  }

  #footer-facebook {
    display: none;
  }

  #footer-list-area {
    width: 100%;
  }

  .single-lp #gnav-sp {
    display: none;
  }

  .single-lp .lp-wrap {
    width: auto;
    margin: 0 24px;
  }

  .single-lp .lp-form .submit {
    width: 50%;
  }

  /* tab panel */
  ul.tab li {
    font-size: 13px;
  }

  .news-thum .news-thum-photo {
    width: 25%;
  }

  /* title */
  #main-visual-2 {
    height: 450px !important;
    padding: 100px 0;
    margin-top: 70px;
  }

  .hero-title-concept-top {
    padding-top: 80px;
  }

  .hero-title-concept-top img {
    width: 500px;
  }

  .hero-title-concept-top h2,
  .hero-title-guesthouse h2 span {
    font-size: 60px;
  }

  /* box-01 */
  .box-01 div {
    display: block;
  }

  .box-01-text {
    width: 100%;
    padding: 0;
  }

  .box-01-photo {
    width: 100%;
  }

  /* top */
  body.home #main_visual {
    height: 620px !important;
    margin-bottom: 60px;
  }

  #main_visual_second {
    height: 500px !important;
  }

  /*#main_copy{
		left:17%;
		top:30%;
	}*/

  /*#main_copy img{
		width:640px;
	}*/

  #main_visual_second {
    height: 350px !important;
  }

  .figcap-top-link h2 {
    margin-top: 0 !important;
  }

  #top-link .grid-hover figure {
    margin: 0px 1% 7px;
    height: 391px;
  }

  #ft-hotel .grid-hover figure {
    height: 170px;
  }


  /* ----------------------------------------
		2nd 
	-----------------------------------------*/

  /* ● common
	-----------------*/
  ul.nav-ft-default li a,
  ul.nav-ft-default-02 li a {
    padding: 50px 0;
  }

  ul.nav-ft2-wedding li .box span {
    font-size: 18px;
  }

  /* ● Stay
	-----------------*/

  /* stay top */
  .nav-guesthouse .grid-hover figure {
    height: 280px;
  }

  .figcap-room h2 {
    padding: 10px 0 20px !important;
    font-size: 26px;
  }

  ul.nav-room li h4 {
    padding: 40px 20px;
    width: 40%;
  }

  .figcap-room table th,
  .figcap-room table td {
    padding: 5px 10px 0;
  }

  .figcap-room p {
    margin-top: 5px !important;
  }

  /* guest house : top */
  ul.nav-room li h4 {
    padding: 40px 20px;
    width: 40%;
  }

  /* guest house : top2 */
  .txt-spec {
    display: block;
  }


  /* amenity */
  dl.list-notice dt {
    width: 30%;
  }

  dl.list-notice dd {
    margin-left: 30%;
  }

  .box-kids-price {
    width: 50%;
  }

  .box-kids-price dl.kids-price {
    display: block;
    margin-bottom: 0;
    border-bottom: none;
  }

  dl.kids-price dt,
  dl.kids-price dd {
    border-right: 1px solid #e5e5e5;
  }

  .box-kids-price dl.kids-price:last-child dd {
    border-bottom: 1px solid #e5e5e5;
  }

  dl.kids-price dt span {
    display: inline;
    margin-left: 10px;
  }

  /* information */
  table.flow-stay th span {
    padding: 45px 0;
  }

  /*.room-info{
		display:block;
	}
	
	.room-info dl{
		display:block;
		margin-bottom:0 !important;
		border:1px solid #f0f0f0;
		border-right:1px solid #f0f0f0;
		border-bottom:none;
	}
	
	.room-info dl:last-child{
		border-bottom:1px solid #f0f0f0;
	}

	.room-info dl dt{
		margin:10px  15px 5px 15px;
	}
	
	.room-info dl dd{
		margin:0 15px 10px 15px;
		font-size:12px;
	}
	
	ul.room-things li h3{
		font-size:16px;
	}
	
	ul.room-things li p{
		font-size:12px;
	}*/

  /* Sight */
  /*.photo-sight{
		margin:0 30px 50px 0 !important;
	}
	
	.photo-sight img{
		 width:180px;
	}*/

  /* ● Restaurant
	-----------------*/
  .bg-photo-res-01,
  .bg-photo-res-02,
  .bg-photo-res-03,
  .bg-photo-res-04 {
    background-attachment: scroll;
    background-size: cover;
  }

  dl.res-about {
    margin: 80px 0;
    padding: 40px 30px;
  }

  dl.res-about dt {
    font-size: 20px;
  }

  /* ● Party
	-----------------*/
  dl.contact-party dt {
    float: none;
    width: 100%;
    text-align: center;
  }

  dl.contact-party dt p {
    font-size: 16px;
    margin-bottom: 10px;
  }

  dl.contact-party dt span {
    font-size: 20px;
  }

  dl.contact-party dd {
    margin-left: 0;
    text-align: center;
  }


  /* ● Wedding
	-----------------*/

  /* header-nav-wed fot tablet & phone */
  .header-nav-wed {
    /* display:table; */
    margin-top: 0px;
    vertical-align: middle;
    float: left;
  }

  /* .header-nav-wed div{
		display:table-cell;
	} */
  .header-nav-wed-logo,
  .header-nav-wed-logo a {
    display: block;
    width: 100px;
  }

  .header-nav-wed-logo img {
    width: 100px;
    padding-top: 20px !important;
    margin-right: 500px;
    margin-bottom: 10px;
  }

  .header-nav-wed-contact {
    padding-top: 10px;
    padding-right: 10px;
    position: absolute;
    /*right: 115px;*/
    right: 60px;
    top: 4px;
  }

  .header-nav-wed-contact a {
    /*background:#fbca4d;*/
    color: #fff !important;
    padding: 0px;
    margin-top: 0px;
    text-align: center;
    vertical-align: middle;
    touch-action: manipulation;
    font-size: 30px;
    font-size: 10px;
    display: inline-block;
  }

  .header-nav-wed-contact a:hover {
    text-decoration: none;
  }

  .header-nav-wed-tel {
    /*right: 180px !important;*/
    right: 130px;
  }

  .header-nav-wed-contact a span {
    display: block;
  }

  .header-nav-wed-contact a i {
    font-size: 26px;
  }

  .header-nav-wed-request {
    padding-top: 10px;
    padding-right: 10px;
    position: absolute;
    right: 60px;
    top: 4px;
  }

  .header-nav-wed-request a {
    /*background:#fbca4d;*/
    color: #fff !important;
    padding: 0px;
    margin-top: 0px;
    text-align: center;
    vertical-align: middle;
    touch-action: manipulation;
    font-size: 30px;
    font-size: 10px;
    display: inline-block;
  }

  .header-nav-wed-request a:hover {
    text-decoration: none;
  }

  .header-nav-wed-request a span {
    display: block;
  }

  .header-nav-wed-request a i {
    font-size: 26px;
  }

  /*.header-nav-wed{
		display:table;
		margin-top:0px;
		vertical-align:middle;
		float:left;
	}
	
	.header-nav-wed div{
		display:table-cell;
	}
	
	.header-nav-wed-logo img{
		width:140px;
		padding-top:19px;
		margin-right:30px;
	}
	
	.header-nav-wed-contact{
		padding-top:25px;
		padding-right:10px;	
	}
	
	.header-nav-wed-contact a{
		background:#1D417A;
		color:#fff !important;
		padding:15px;
		margin-top:20px;
		text-align:center;
		vertical-align:middle;
		touch-action: manipulation;
	}
	
	.header-nav-wed-contact a:hover{
		text-decoration:none;
	}*/

  /* TOP */
  .title-wedding-top {
    padding: 160px 0;
  }

  .title-wedding-top-fair {
    /*background:none;
		background-size:42%;*/
    margin-bottom: 0;
  }

  /*.title-wedding-top-fair h3{
		color:#444;
		text-shadow:0px 0px 0px #000;
	}*/

  /* Model schedule */
  ul.timeline {
    padding: 50px 30px 0 30px;
  }

  /* 2018.11 add */
  #main-visual-wedding {
    height: 550px !important;
    padding: 220px 0 0px;
  }

  .main-visual-wedding-top-xs {
    text-align: center;
    height: 50vh;
    padding-top: 27%;
    background-size: cover;
    background-position: right 36% top;
    position: relative;
  }


  /* lp maternity
	-----------------*/
  .bg-maternity {
    padding: 200px 0 100px;
  }

  .photo_benefit {
    width: 90%;
  }



  /* tablet end */
}


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

  body.home #main_visual {
    height: 480px !important;
  }

  /*#main_copy{
		left:13%;
		top:22%;
	}
	
	#main_copy img{
		width:580px;
	}*/

  dl.list-news-top dt {
    width: 35%;
  }

  dl.list-news-top dt .cat-name span {
    font-size: 11px;
  }

  dl.list-news-top dd {
    margin-left: 35%;
    font-size: 12px;
  }

  #top-link .grid-hover figure {
    height: 309px;
  }

  /*.ft-nav li:nth-child(6){
		clear:both;
	}*/

  .ft-nav li:nth-child(6) a {
    padding-left: 0;
  }


  /* ● News
	-----------------*/
  .post-loop-wrap article {
    margin: 0 0 40px;
    float: none;
    width: 100%;
  }

  .post-loop-wrap article:nth-child(odd) {
    margin-right: 0;
  }


  /* ● Stay
	-----------------*/
  /* stay top */
  .figcap-room {
    padding-top: 0 !important;
  }

  .figcap-room h2 {
    font-size: 24px;
    padding: 30px 0 20px !important;
  }

  .figcap-room table th,
  .figcap-room table td {
    font-size: 13px;
    padding: 5px 10px 0;
  }

  /* guest house : top */
  ul.nav-room li h4 {
    padding: 40px 20px;
    width: 40%;
  }

  ul.nav-room li a {
    height: 280px;
  }

  /* information */
  table.flow-stay td {
    padding: 0 0 20px 20px;
  }

  table.flow-stay th span {
    padding: 60px 0;
  }

  /* ● Wedding
	-----------------*/
  dl.contact-fair dt {
    width: 18%;
    font-size: 26px;
  }

  dl.contact-fair dd {
    margin-left: 18%;
  }

  /* ● Access
	-----------------*/
  #google-map {
    height: 600px;
  }

}

/*------------------------------------------------------------------
 xs
*/
@media screen and (max-width: 767px) {

  /* phone */
  .wrap {
    overflow: hidden;
  }

  .post-title {
    font-size: 16px;
  }

  body.home .wrap,
  .wrap {
    margin: 0 12px;
  }

  /*#content {
    padding: 0 0 30px;
	}*/

  body.home #main_visual {
    height: 230px !important;
    margin-top: 75px;
  }

  /*#main_copy{
	left:11.5%;
	top:36%;
  }
  
  #main_copy img{
		width:280px;
	}*/

  #main_copy {
    padding: 200px 0;
  }

  #main_copy h1 img {
    width: 290px;
  }

  #main_visual_second {
    height: 170px !important;
  }

  .post-content table {
    overflow-x: auto;
    width: 100%;
    -webkit-overflow-scrolling: touch;
    display: block;
    white-space: nowrap;
  }

  body.home #front-company dl dt,
  body.home #front-company dl dd {
    float: none;
    width: 100%;
    box-sizing: border-box;
  }

  body.home #front-company dl dt span,
  body.home #front-company dl dd span {
    padding: 0;
  }

  body.home #front-company dl dt {
    font-weight: bold;
    padding: 8px 12px 0;
  }

  body.home #front-company dl dd {
    border-top: none !important;
    padding: 4px 12px 8px;
  }

  #main {
    width: 100%;
    float: none;
    padding: 0;
  }

  .row {
    margin-left: 0 !important;
    margin-right: 0 !important;
  }

  #side {
    width: 100%;
    float: none;
  }

  .left-content #main {
    width: 100%;
    float: none;
  }

  .left-content #side {
    width: 100%;
    float: none;
  }

  .right-content #main {
    width: 100%;
    float: none;
  }

  .right-content #side {
    width: 100%;
    float: none;
  }

  .one-column #content .wrap {
    width: 94%;
    margin: 0 3%;
  }

  .one-column #content .wrap #main {
    width: 100%;
    float: none;
  }

  .one-column #content .wrap #side {
    width: 100%;
    float: none;
  }

  /* header */
  #header {
    padding: 0 0 10px;
    height: 80px;
  }

  #header .wrap {
    padding: 0;
    margin: 0 12px;
  }

  #header #logo {
    float: none;
    width: 100px;
    padding: 20px 0 10px;
  }

  #header #logo img {
    vertical-align: top;
  }

  #header #header-right {
    height: auto;
  }

  #header #header-primary-nav {
    display: none;
  }

  /* パンくず */
  .breadcrumb-area {
    /*margin-top:75px;*/
    margin-top: 59px;
  }

  .breadcrumb-area .wrap {
    padding: 5px 0;
  }

  .breadcrumb li {
    font-size: 11px;
  }

  /* humberger menu */
  #header-nav-btn {
    display: block;
    width: auto;
    margin: 0px;
    line-height: 1;
    /*float: none;*/
    position: absolute;
    top: -1px;
    right: 20px;
  }

  #header-nav-btn a {
    display: block;
    /*text-align: center;*/
    font-size: 30px;
    padding: 0px 0;
    /*line-height: 1.2;
    background: #3B4552;
    width: 100%;*/
  }

  .single-lp #lp-header {
    padding: 20px;
  }

  .single-lp .lp-thumbnail {
    float: none;
    margin: 0 0 13px;
  }

  .single-lp .lp-thumbnail img {
    width: 100%;
    height: auto;
  }

  .single-lp #content {
    padding: 20px;
  }

  #gnav-sp {
    display: none;
    top: 112px;
  }

  #gnav-sp ul {
    margin-bottom: 20px;
  }

  #gnav-sp #header-cont-content ul {
    margin-left: 0;
  }

  #gnav-sp #header-cont-content li {
    margin-left: 0;
    float: left;
    width: 100%;
  }

  /* footer */
  /* footer hotels */
  #ft-hotel .grid-hover figure {
    margin: 0px 1% 5px;
    height: 126px;
  }

  .figcap-hotel h2 {
    font-size: 14px;
    line-height: 1.3;
  }

  figure.effect-sadie .figcap-hotel h2 {
    transform: translate3d(0, -25%, 0);
  }

  figure.effect-sadie figcaption.figcap-hotel p {
    padding: 10px !important;
  }

  .figcap-hotel p {
    font-size: 11px !important;
    text-align: left;
    line-height: 1.3;
  }

  /* footer 01 */
  .footer-01 {
    padding: 40px 0 20px;
  }

  dl.ft-tel {
    width: 90%;
  }

  .ft-logo img {
    width: 170px;
  }

  dl.ft-tel {
    padding: 15px 20px;
    text-align: center;
  }

  dl.ft-tel dt {
    float: none;
    width: 100%;
    font-size: 22px;
  }

  dl.ft-tel dt span {
    font-size: 16px;
    margin-right: 10px;
  }

  dl.ft-tel dd {
    margin-left: 0;
    padding-top: 0;
  }

  /* footer 02 */
  ul.nav-related {
    margin: 0 auto !important;
    text-align: center;
  }

  ul.nav-related li:nth-child(4) {
    clear: both;
  }

  ul.nav-related li:nth-child(4) a {
    padding-left: 0;
  }

  ul.nav-related li:nth-child(3) a,
  ul.nav-related li:nth-child(5) a,
  ul.nav-related li:last-child a {
    /*border-right:1px solid #4f4f4f;*/
    border-right: none;
  }

  ul.nav-related li {
    float: none;
    display: inline-block;
  }

  .ft-sns {
    text-align: center;
    margin-top: 20px;
  }

  .ft-nav li:nth-child(6) {
    clear: none;
  }

  .ft-nav li:nth-child(6) a {
    padding-left: 14px;
  }

  .ft-nav li:last-child {
    margin-bottom: 30px !important;
  }

  .ft-nav li {
    float: none !important;
    display: block !important;
    text-align: center;
  }

  .ft-nav li a {
    border-right: none !important;
    padding: 0 !important;
  }

  .txt-copyright {
    text-align: right;
    font-size: 10px;
  }

  ul.lang {
    display: block;
  }

  /* footer vm list */
  table.vm-list {
    font-size: 11px;
  }

  /* pagetop */
  .pagetop {
    right: 20px;
    bottom: 50px;
  }

  /* line button */
  .ft-line {
    position: fixed;
    bottom: 50px;
    right: 20px;
    font-size: 12px;
    z-index: 9999;
  }

  .ft-line img {
    width: 90px;
  }

  /* loop */
  body.home .front-loop .popular_post_box {
    width: 100%;
    float: none;
    margin-left: 0;
    margin-right: 0;
  }

  body.home #front-contents .c_text .c_btn a {
    width: 100%;
  }

  /* single */
  .cat-content .post-header,
  article.page .post-header,
  article.post .post-header {
    padding: 20px;
  }

  .post-author {
    padding: 20px;
  }

  .post-author .post-author-meta {
    padding-top: 12px;
  }

  .post-author .post-author-meta p {
    margin-right: 0;
  }

  .post-meta-area .post-meta,
  .post-meta-area .post-meta-comment {
    float: none;
    width: 100%;
    padding: 0;
  }

  .post-meta-area .post-meta {
    border-bottom: 1px solid #e5e5e5;
  }

  .post-meta-area .post-meta .date {
    padding: 8px 20px;
  }

  .post-meta-area .post-meta-comment .author {
    border: none;
    padding: 8px 20px;
    text-align: left;
  }

  .post-meta-area .post-meta-comment .comments {
    padding: 8px 20px;
  }

  /*.post-content,
  .post-footer {
    padding: 20px;
  }*/

  .post-cta .cta-post-title {
    padding: 12px 20px;
    font-size: 18px;
  }

  .post-cta .post-cta-inner {
    padding: 0;
  }

  .post-cta .post-cta-cont {
    padding: 12px 20px;
  }

  .post-cta .post-cta-cont .post-cta-img {
    float: none;
    margin: 0 0 12px;
    width: 100%;
  }

  .post-cta .post-cta-btn a {
    width: 100%;
  }

  .comment-form-author,
  .comment-form-email {
    float: none;
    width: 100%;
  }

  .single-lp #gnav-sp {
    display: none;
  }

  .single-lp .lp-wrap {
    width: auto;
    margin: 0 24px;
  }

  .single-lp .lp-form input {
    width: 100% !important;
  }

  .single-lp .lp-form .submit {
    width: 100%;
  }

  /* link-box */
  .link-box div {
    display: block;
  }

  .link-box-title {
    width: 100%;
    padding: 40px 5%;
    text-align: center;
  }

  .link-box-photo {
    display: none !important;
  }

  /* box-plan */
  .box-plan {
    padding: 20px;
    margin-bottom: 60px;
  }

  .box-plan::before {
    content: "";
    height: 100%;
    position: absolute;
    width: 100%;
    border: 1px solid #dbdbdb;
  }

  .box-plan::after {
    content: "";
    height: 100%;
    position: absolute;
    width: 100%;
    border: none;
  }

  .box-plan::before {
    left: 0;
    top: 0;
    z-index: -1;
  }

  .box-plan::after {
    top: 7px;
    left: 7px;
    z-index: -2;
  }


  .box-plan div {
    display: block;
  }

  .box-plan .box-plan-photo {
    width: 100%;
    padding-right: 0;
    margin-bottom: 20px;
  }

  .box-plan .box-plan-photo img {
    width: 100%;
  }

  .box-plan .box-plan-text .price {
    font-size: 14px;
  }

  /* box-02, box-03 */
  .box-02 div,
  .box-03 div {
    display: block;
    width: 100%;
  }

  .box-02-text-r,
  .box-02-text-l,
  .box-03-text-r {
    width: 100%;
    padding: 0;
  }

  .box-02-photo,
  .box-03-photo {
    width: 100%;
  }

  /* box-half */
  .gr6:nth-child(1) .box-half,
  .gr6:nth-child(2) .box-half {
    margin: 0;
  }


  /* title */
  .main-title {
    text-align: center;
  }

  .main-title p span {
    font-size: 16px;
  }

  .title-black h2,
  .title-black p {
    color: #fff !important;
    text-shadow: 1px 1px 2px #000;
  }

  /* tab panel */
  ul.tab {
    margin: 0;
  }

  ul.panel {
    margin: 0;
    padding: 20px 0 0;
  }

  ul.tab li {
    font-size: 9px;
  }

  .news-thum {
    padding-bottom: 0;
  }

  .news-thum .news-thum-photo {
    width: 20%;
  }

  .news-thum .news-thum-photo img {
    padding-right: 10px;
  }

  .news-thum-txt p.day,
  .news-thum-txt dl {
    font-size: 11px;
  }

  /* title */
  #main-visual-2 {
    height: 200px !important;
    padding: 35px 0 0;
    position: relative;
    margin-top: 60px;
  }

  .hero-title {
    background: none;
    width: 100%;
    height: auto;
    padding-top: 30px;
  }

  .hero-title h2 {
    font-size: 22px;
  }
}


/***
わんちゃんと一緒
============================*/
/** title **/
#main-withdog {
  background-size: cover;
  height: 600px !important;
  background-position: center top;
  position: relative;
}

.hero-title-withdog {
  position: absolute;
  right: 0;
  left: 0;
  top: 40%;
  text-align: center;
  margin: 0 auto;
  background: rgba(255, 255, 255, 0.6);
  padding: 30px 50px;
  width: 50%;
}

.hero-title-withdog h2 {
  color: #000;
  margin-bottom: 0;
  text-align: center;
  font-size: 38px;
  line-height: 2;
}

.hero-title-withdog h2 span {
  display: block;
  font-size: 18px;
}

/** nav **/
ul.nav-withdog {
  display: flex;
  flex-direction: row;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin: 40px 0 0;
}

ul.nav-withdog li {
  flex-basis: 24%;
  text-align: center;
}

ul.nav-withdog li a {
  display: block;
  border: 1px solid #EA6B6B;
  color: #EA6B6B;
  border-radius: 13px;
  padding: 13px 0;
}

ul.nav-withdog li a:hover {
  text-decoration: none;
}

/** others **/
.section-tit-withdog {
  color: #fff;
  background: #EA6B6B;
  padding: 13px 10px;
}

.bg-withdog {
  background: #F9DBDB;
  padding: 80px 0;
}

.bg-withdog-inner {
  background: #FDF1F1;
  padding: 30px;
}

.photo-dog-amenity {
  float: right;
  width: 30%;
  margin: 0 0 20px 20px;
}

.btn-withdog {
  color: #fff;
  background-color: #A51717;
  border-color: #A51717;
}

.btn-withdog:hover {
  color: #A51717 !important;
  background-color: #fff;
  border-color: #A51717;
}

.wrap-btn-pet {
  background: #A51717;
  width: 40%;
  margin: 0 auto 20px;
  padding: 20px 0;
}

.wrap-btn-pet p {
  color: #fff;
  font-size: 18px;
  margin: 0 0 5px;
}

.btn-withdog-re {
  color: #A51717;
  background-color: #fff;
  border-color: #A51717;
}

.btn-withdog-re:hover {
  color: #A51717 !important;
  background-color: #fff;
  border-color: #A51717;
}

.photo-dog-pc {
  width: 199%;
  height: 250px;
  object-fit: cover;
}

.triangle-r {
  display: block;
  border-top: 100px solid transparent;
  border-bottom: 100px solid transparent;
  border-left: 50px solid #EA6B6B;
}

.triangle-l {
  display: block;
  border-top: 100px solid transparent;
  border-bottom: 100px solid transparent;
  border-right: 50px solid #EA6B6B;
}

.box-withdog-theday {
  display: flex;
  justify-content: space-between;
  align-items: center;
}

.box-withdog-theday .item-photo {
  flex-basis: 45%;
}

.box-withdog-theday .item-triangle {
  flex-basis: 5%;
}

.box-withdog-theday .item-txt {
  flex-basis: 50%;
}

/* シェフテキスト */
.txt-chef {
  width: 90%;
  margin-inline: auto;
}

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

  #main-withdog {
    height: 200px !important;
    margin-top: 60px;
  }

  .hero-title-withdog {
    top: 40%;
    padding: 15px 20px;
    width: 80%;
  }

  .hero-title-withdog h2 {
    font-size: 18px;
  }

  .hero-title-withdog h2 span {
    font-size: 12px;
  }

  ul.nav-withdog li {
    flex-basis: 49%;
    margin-bottom: 10px;
  }

  .bg-withdog-inner {
    padding: 20px;
  }

  .photo-dog-amenity {
    float: none;
    width: 100%;
    margin: 0 0 20px 0;
  }

  .box-withdog-theday {
    flex-direction: column;
  }

  .box-withdog-theday .item-photo {
    flex-basis: 100%;
    margin-bottom: 20px;
  }

  .box-withdog-theday .item-txt {
    flex-basis: 100%;
  }

  .theday-order .item-photo {
    order: 1;
  }

  .theday-order .item-txt {
    order: 2;
  }

  .wrap-btn-pet {
    width: 80%;
  }

  .wrap-btn-pet p {
    font-size: 15px;
  }

  /* シェフテキスト */
  .txt-chef {
    text-align: left;
  }
}

.hotels ul li a img {
  aspect-ratio: 2/1;
  width: 100%;
  height: 80%;
  object-fit: cover;
}