﻿/* ------------------------------------------------------------------------------
	Template Name: Minifolio
	Author: Designstub
	Author URI: http://www.designstub.com
	License: GNU General Public License version 3.0
	License URI: http://www.gnu.org/licenses/gpl-3.0.html
	Version: 1.0

/* ------------------------------------------------------------------------------
	Typography
-------------------------------------------------------------------------------*/

@import url(https://fonts.googleapis.com/css?family=Open%20Sans:300,400,500,600,700);
@import url(https://fonts.googleapis.com/css?family=Merriweather:300,400,500,600,700);

body { -webkit-text-size-adjust: 100%; }

p {
	font-size: 100%;
	line-height: 1.5em;
	color: #333;
}
a {
	cursor:pointer;
	}
a:hover {
	color:#A0082C !important;
}

div.linktxg a {
	color:#333;
}

hr.hr1 {
	margin-top: 5px;
    margin-bottom: 5px;
    border: 0;
    border-top: 1px solid #eee;
}

.flred { color:#e84545;}
.fred { color:#A0082C;}
.fblue { color:#06C;}
.fgold {color:#8C6900}
.darkbr {color:#220b05}
.fgray {color:#333}
.fgreen {color:#329796}
.fblk {color:#000}
.fwhite {color:#FFF}


.fgo { font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "游ゴシック", YuGothic, "メイリオ", Meiryo, Osaka,"ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}

.fmin, 
.btn, 
.navi_tab, 
.footer, 
.works2022, 
.topics, 
.cc-window, 
.breadcrumbs, 
#menu2, 
.topall,
#shophead, 
.shopheadbt, 
#timeline, 
#reserv, 
#reserv00, 
.btn_g, 
#biz_calendar, 
#menu2-1, 
#tc-widget, 
.search-widget-search-container-bf1818, 
.box_bj, 
.mobileGBmenu, 
.drawer-nav, 
.wedlp_toi, 
.hm_list, 
.wedmbmn, 
.btn_en03, .btn_en08, .btn_en_wdd, .btn_en_gr, .btn_en_grbr {
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif !important;
	font-weight: normal !important;
}

.fgo, 
.works2022 .w90p, 
.work p, 
#shophead a, 
.priceset .price .fmm, 
.postpage h1, .postpage h2, .postpage h3, .postpage h4, .postpage h5  {
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "游ゴシック", YuGothic, "メイリオ", Meiryo, Osaka,"ＭＳ Ｐゴシック", "MS PGothic", sans-serif !important;
}


h1, h2, h3, h4, h5, 
.fm, .fmm, .fl, .fll, 
#shophead .fa-2x a, 
#shophead li a, 
#shophead .shopheadbt01 a, 
h1.ti02, h2.ti04, h2.ti04-1, h3.ti03, h3.rti03 {
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif !important;
	font-weight: normal !important;
}

.fmin h1, 
.fmin h2, 
.fmin h3, 
.fmin h4, 
.fmin h5 {
	font-weight:normal !important;
}




.tx_line{
    text-decoration-line: underline;
    text-decoration-color: #000;
    text-decoration-thickness: 1px;
    text-underline-offset: 6px;
    text-decoration-skip-ink: none;
    line-height: 200%;
}



.fa, .far, .fas {
    font-family: "Font Awesome 5 Free" !important;
}

.ftt {
	-ms-writing-mode: tb-rl;
  writing-mode: vertical-rl;
}

.hm_btn {
    width: 32px !important;
    height: 26px !important;
    margin: 8px 5px !important;
}

#wedding .hm_btn::before, #wedding .hm_btn::after {
    width: 32px !important;
    height: 1px !important;
}

.btn {
        margin-bottom:2px;
	background-color: #A0082C;
	color: #fff;
	font-weight: 600;
	border: 0;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	display: inline-block;
/*	text-transform: uppercase;*/
}

.btn-wed {
        margin:2px;
	display:block;
	width:100%;
	height:100%;
	color: #000000;
	font-weight: 600;
	border: 0;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	display: inline-block;
/*	text-transform: uppercase;*/
}

.btn-large {
	padding: 10px;
	min-width:280px;
}
.btn-s {
	margin:0 !important;
	padding: 4px 10px !important;
	width:70px !important;
}
.btn-white {
	background-color:#FFF !important;
	color:#A0082C;
}
.btn-wk {
	padding:2px 10px;
	background-color:#FFF;
	border:#999 1px solid;
	color:#333;
}
.btn-radius {
	padding:4px 10px;
	border-radius:2px;
	color:#fff;
	font-size:90%;
}

.btn_readm {
	background-color:#FFF !important;
	color:#333;
}

.btn:hover, .btn:focus, .btn-white:hover, .btn-white:focus, .btn-wk:hover, .btn-wk:focus, .btn-gold:hover, .btn-gold:focus  {
	background-color: #000 !important;
	color: #fff !important;
}
.btn_readm:hover {
	background-color:#FFF !important;
	color:#ccc !important;
}

.btn-ac {
    display: block;
    text-align: left;
    border-bottom: 1px #bbbbbb dotted;
    margin: 10px 0;
    padding-bottom: 6px;
    color: #333333;
}
.btn-ac:hover {
opacity:0.6;
}


.btn_gs, .btn_l {
	background-color: #FFF;
	border:#666 1px solid;
	color: #666;
	border-radius:0 !important;
	font-weight:normal !important;
}
.btn_gs:hover {
	color: #fff !important;
	background-color: #666 !important;
opacity:1 !important;
}
.btn_gsr {
	background-color: #666;
	border:#666 1px solid;
	color: #FFF;
	border-radius:0 !important;
	font-weight:normal !important;
}
.btn_g {
background-color: #666 !important;
	border:#666 1px solid !important;
    color: #FFF !important;
padding: 12px !important;
}
.btn_gsr:hover, .btn_g:hover {
	color: #666 !important;
	background-color: #FFF !important;
	border:#666 1px solid; !important;
opacity:1 !important;
}

.btn_ll a {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: 1em 2em;
  width: 380px;
  color: #FFF;
  font-size: 18px;
  font-weight: 700;
  background-color: #a19574;
  box-shadow: 0 5px 0 #83795d;
  transition: 0.3s;
}

.btn_ll a::after {
  content: '';
  width: 5px;
  height: 5px;
  border-top: 3px solid #FFF;
  border-right: 3px solid #FFF;
  transform: rotate(45deg);
}

.btn_ll a:hover {
  transform: translateY(3px);
  text-decoration: none;
  box-shadow: 0 2px 0 #aaaaaa;
  color: #FFF !important;
opacity:0.75;
}

#reserv .btn_l {
    font-size: 100% !important;
    padding: 5px 10px !important;
    border-radius: 5px !important;
    font-weight: 500 !important;
	background-color: #A0082C !important;
    border: none !important;
}

@media screen and (max-width: 768px) {
.btn_ll a {
  width: 100% !important;
}
}

.width100 { width:100% }

/*グリッド高さそろえ（親要素に）*/
.grid_h {display:flex !important; flex-wrap:wrap !important;}
/*グリッド内の上下中央に配置*/
.grid_h_va {position: relative !important; top: 50% !important; -webkit-transform: translateY(-50%) !important; transform: translateY(-50%) !important;}


.sp15 { height:15px;}
.sp25 { height:25px;}
.sp50 { height:50px;}
.sp75 { height:75px;}
.sp100 { height:100px;}

.mg0 {margin: 0px !important;}
.mg10 {margin: 10px;}
.mg20 {margin: 20px;}

.mgt0 {margin-top: 0px !important;}
.mgt5 {margin-top: 5px;}
.mgt10 {margin-top: 10px;}
.mgt20 {margin-top: 20px;}
.mgt30 {margin-top: 30px;}
.mgt50 {margin-top: 50px;}

.mgbt0 {margin-bottom: 0px !important;}
.mgbt5 {margin-bottom: 5px;}
.mgbt10 {margin-bottom: 10px;}
.mgbt20 {margin-bottom: 20px;}
.mgbt30 {margin-bottom: 30px;}
.mgbt50 {margin-bottom: 50px;}

.pd0 {padding: 0px !important;}
.pd10 {padding: 10px !important;}
.pd20 {padding: 20px !important;}
.pd30 {padding: 30px !important;}
.pd50 {padding: 50px !important;}
.pd70 {padding: 70px !important;}

.pd10s {padding: 10px !important;}
.pd20s {padding: 20px !important;}
.pd30s {padding: 30px !important;}
.pd50s {padding: 50px !important;}
.pd70s {padding: 70px !important;}
@media screen and (max-width: 768px) {
.pd10s, 
.pd20s, 
.pd30s, 
.pd50s, 
.pd70s {padding: 0px !important;}
}

.pdt0 {padding-top: 0px !important;}
.pdt5 {padding-top: 5px;}
.pdt10 {padding-top: 10px;}
.pdt20 {padding-top: 20px;}
.pdt30 {padding-top: 30px;}
.pdt50 {padding-top: 50px;}
.pdbt0 {padding-bottom: 0px !important;}
.pdbt5 {padding-bottom: 5px;}
.pdbt10 {padding-bottom: 10px;}
.pdbt20 {padding-bottom: 20px;}
.pdbt30 {padding-bottom: 30px;}
.pdbt50 {padding-bottom: 50px;}

.sm { display:none; }
.sm1200 { display:none; position:relative !important; z-index:9999999 !important; /*margin-top:50px;--2019/9/25*/}
.sm640 { display:none; }
.sm320 { display:none; }
.pc1500 { display:none; }

.al-ct { text-align:center !important; margin:auto !important;}
.al-lt { text-align:left !important;}
.al-rt { text-align:right !important;}
.fl-no { float:none !important;}

.table-cell {
 display: table-cell; /* IE8から使用可能 */
 vertical-align: middle;
}

.pccenter { text-align:center !important}

.w100, .w100 .container { width:100% !important;}

.listdecmal li {margin-left:30px; list-style-type: decimal;}

/*NEW*/
.ic_new {
	color: #fff !important;
	font-size: 10px;
	background-color:#CC0000;
	padding:0 3px;
	margin:0 5px;
	line-height: 100% !important;
}

@media screen and (max-width: 768px) {
.table_normal td {
display:block;
vertical-align:top !important;
}
}

.gtable {
}
.gtable table th {
	background-color:#efefef;
	text-align:center;
}
.gtable table td {
	border:1px #333333 solid;
	border-collapse:collapse;
	padding:5px;
}

ol.kakko {
	margin-left: 2em; /* サイトに合せて調整 */
}

ol.kakko li {
	list-style-type: none;
	counter-increment: cnt;
	position: relative;
}

ol.kakko li:before {
	content: "(" counter(cnt) ")";
	display: inline-block;
	margin-left: -3.5em; /* サイトに合せて調整 */
	width: 3em; /* サイトに合せて調整 */
	text-align: right;
	position: absolute;
	top: 0;
	left: 0;
}

/* ------------------------------------------------------------------------------
	YouTube
-------------------------------------------------------------------------------*/
.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.movie_sm {display:none}
.movie video {width:100%; height:auto; display:block;}
  
.movie {
  position: relative;
  padding-bottom: 41.1%;
  padding-top: 100px;
  margin-top:-90px;
  height: 0;
  overflow: hidden;
  z-index:0 !important;
  background-color:#FFF !important;
  }
.movie iframe, #player {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.wmask {
	position: absolute;
	width: 100%;
	background-color:#FFF;
	z-index:999 !important;
	margin-top:-50px;
	height:50px;
	}
.movie_sm_btn00, .movie_sm480, .movie_sm1200 {display: none}

@media screen and (max-width: 1200px) {
.movie {display:none}
.wmask {display:none}

.movie_sm {display: block; width:100%; height:300px; overflow:hidden; margin:0; padding:0; top:0; left:0; bottom:0; right:0;}
.movie_sm_btn00 {display: block}
.movie_sm1200 {display: block; width:100% !important; position:relative;}
.movie_sm480 {display: none;}

.movie_sm1200 img, .movie_sm480 img {
	position:absolute;
	height:300px !important;
	width:auto !important;
	}

.movie_sm_btn {
	background-color:#C9B368;
	margin-top:-3px;
	margin-bottom:10px;
	padding:5px;
	color:#FFF;
	text-align:center;
}
.movie_sm_btn1 {
	background-color:#555;
	margin-top:-3px;
	margin-bottom:10px;
	padding:5px;
	color:#FFF;
	text-align:center;
}
	
.moviestart {
	left:50%;
	margin-left:-23px;
	width:46px;
	height:46px;
	position:absolute;
	z-index:999;
	margin-top:-75px;
}
.moviestar2 {
	width:100%;
	position:absolute;
	z-index:999;
}

.ytbsm {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.ytbsm iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

/*movieslide----------------------------*/
/*画像ブロック*/
#mainimg {
	clear: left;
	width: 100%;
	height: auto;
	position: relative;
}

#slide0,#slide1,#slide2,#slide3 {
	-webkit-animation-duration: 15s;	/*実行する時間。「s」は秒の事。*/
	animation-duration: 15s;			/*同上*/
	-webkit-animation-iteration-count:infinite;	/*実行する回数。「infinite」は無限に繰り返す意味。*/
	animation-iteration-count:infinite;			/*同上*/
}

#slide0 {
	-webkit-animation-name: slide0;		/*上で設定しているキーフレーム（keyframes）の名前*/
	animation-name: slide0;				/*同上*/
	position: relative;
	width: 100%;
	height: auto;
}
#slide1 {
	-webkit-animation-name: slide1;		/*上で設定しているキーフレーム（keyframes）の名前*/
	animation-name: slide1;				/*同上*/
	position: absolute;
	left:0px;
	top:0px;
	width: 100%;
	height: auto;
}

#slide2 {
	-webkit-animation-name: slide2;		/*上で設定しているキーフレーム（keyframes）の名前*/
	animation-name: slide2;				/*同上*/
	position: absolute;
	left:0px;
	top:0px;
	width: 100%;
	height: auto;
}

#slide3 {
	-webkit-animation-name: slide3;		/*上で設定しているキーフレーム（keyframes）の名前*/
	animation-name: slide3;				/*同上*/
	position: absolute;
	left:0px;
	top:0px;
	width: 100%;
	height: auto;
}


@keyframes slide0 {
	0% {opacity: 1;}
	10% {opacity: 0;}
	30% {opacity: 0;}
	40% {opacity: 0;}
	100% {opacity: 1;}
}
@keyframes slide1 {
	0% {opacity: 1;}
	10% {opacity: 1;}
	30% {opacity: 1;}
	40% {opacity: 0;}
	100% {opacity: 0;}
}
@keyframes slide2 {
	0% {opacity: 0;}
	30% {opacity: 0;}
	40% {opacity: 1;}
	60% {opacity: 1;}
	70% {opacity: 1;}
	100% {opacity: 0;}
}
@keyframes slide3 {
	0% {opacity: 0;}
	60% {opacity: 0;}
	70% {opacity: 1;}
	90% {opacity: 1;}
	100% {opacity: 0;}
}

}

@media screen and (max-width: 480px) {
.movie_sm1200 {display: none;}
.movie_sm480 {display: block; width:100% !important; position:relative;}
}

/* ------------------------------------------------------------------------------
	Global Styles
-------------------------------------------------------------------------------*/
a {
	color: #e84545;
}
a:hover, a:focus {
	text-decoration: none;
	-moz-transition: background-color, color, 0.3s;
	-o-transition: background-color, color, 0.3s;
	-webkit-transition: background-color, color, 0.3s;
	transition: background-color, color, 0.3s;
}
body {
	font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "Noto Sans JP", "游ゴシック", YuGothic, "メイリオ", Meiryo, Osaka,"ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	font-weight: 400;
	color: #333;
	letter-spacing:0.02em;
	font-size:1.5em;
	overflow:auto;
	overflow-x: hidden;
}
ul, ol {
	margin: 0;
	padding: 0;
}
ul li {
	list-style: none;
}
.section0 {
	padding-top: 0 !important;
}
.section {
	padding: 100px 0;
}
.section1 {
	padding: 100px 0 0 0 !important;
}
.section2 {
	padding: 50px 0 0 0 !important;
}
.section3 {
	padding: 20px 0 0 0 !important;
}
.section4 {
	padding: 120px 0 0 0 !important;
}
.section4-1 {
	padding-top: 120px !important;
	padding-bottom: 0px !important;
}
@media screen and (max-width: 992px) {
	.section4-1 {
	padding-top: 0px !important;
}
}
.section5 {
	padding: 160px 0 0 0 !important;
}
.section6 {
	padding: 120px 0 0 0 !important;
}

.no-padding {
	padding: 0;
}
.no-gutter [class*=col-] {
	padding-right: 0;
	padding-left: 0;
}
.no-gutter [class*=colfx] {
	padding-right: 0 !important;
	padding-left: 0 !important;
}
.space {
	margin-top: 60px;
}


.fss { font-size:65% !important;}
.fs { font-size:85% !important;}
.fn { font-size:100% !important;}
.fmm { font-size:130% !important;}
.fm { font-size:150% !important;}
.fl { font-size:200% !important;}
.fll { font-size:260% !important;}

@media screen and (max-width: 640px) {
.fsm { font-size:90% !important;}
}


.h2line {
  position: relative;
    padding: 20px;
    text-align: center;
    font-size: 1.7em;
    font-weight: 400;
}

.h2line:before {
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
  width: 100%;
  height: 1px;
  content: '';
  background: #333;
}

.h2line span {
  position: relative;
  padding: 0 1em;
  background: #fff;
}


.tx-lnk1 { text-decoration:underline;}

/*h4 {line-height:130%}*/

.container .container { width:100% !important; padding:0 !important; margin:0 !important;}


#reserv_sm {
	margin:7px 15px;/*margin:15px 15px;*/
	width:100%;
	position:fixed;
	bottom:0px;
	color:#FFF;
	z-index:99;
display:none !important;
}
#reserv_sm a {
	background-color:rgba(0, 0, 0, 0.8);
	color:#FFF;
	border-radius:8px 8px 0 0;
	padding:10px 22px;/*padding:18px 22px;*/
}

#reserv_sm a:hover, #reserv_sm a:active, #reserv_sm a:visited {
	color:inherit !important;
	}

.box_gray {
	padding:2px 10px;
	background-color:#FFF;
	border:#999 1px solid;
	vertical-align:middle;
display:inline-block;
}
.box_red {
	padding:2px 10px;
	background-color:#FFF;
	border:#e84545 1px solid;
	color:#e84545;
	vertical-align:middle;
}
.box_gold {
	padding:4px 8px;
	background-color:#8C6900;
	color:#fff;
}
.box_lgold {
	padding:2px 6px;
	line-height: 200%;
	background-color:#8C6900;
	color:#fff;
}
.box_lgold1 {
	padding:15px;
	background-color:rgba(201, 179, 104, 0.35);
	}


/* ------------------------------------------------------------------------------
	TOP Slider Text
-------------------------------------------------------------------------------*/
.slides_tx { position:absolute; top:200px; padding:20px 40px 20px 100px; text-align:center; color:#FFF; font-weight:bold; font-size:30px; background-color:rgba(0,0,0,0.5)}
.slides_tx span { font-size:18px }
@media screen and (max-width: 1200px) {
.slides_tx { top:70px !important; padding:20px 40px 20px 40px !important; }
}
@media screen and (max-width: 640px) {
.slides_tx, .slides_tx span { font-size:15px !important; font-weight:normal; top:20px !important; padding:15px !important; }
}

/* ------------------------------------------------------------------------------
	TOP Slider Text
-------------------------------------------------------------------------------*/
@media screen and (max-width: 1024px) { .tpcct { margin-top:100px !important; } }
@media screen and (max-width: 768px) { .tpcct { margin-top:50px !important; } }


/* ------------------------------------------------------------------------------
	TOP Slider Link Button
-------------------------------------------------------------------------------*/
.slides_lkbt { position:absolute; bottom:10px !important; right:30px !important; text-align:right !important; }

/*@media print, screen and (min-width: 1024px){
.shopmainimg .flexslider li img.slides_lkbt { margin-top: 0px !important; }
}

.slides_lkbt img { width:16% !important; }
.slides_lkbt a:hover { opacity:0.8 !important; }
.flexslider .slides .slides_lkbt img { display: inline !important; }

@media screen and (min-width: 1510px) {
	.flexslider .slides > li { max-height:750px !important; }
}
@media screen and (min-width:1025px) and (max-width:1509px) {
	.slides_lkbt { bottom:0px !important;}
}
@media screen and (max-width: 640px) {
	.slides_lkbt { left:-5px !important; bottom:20px !important; overflow:visible !important; text-align:right !important; }
	.wedlp .shopmainimg .flexslider ul.slides_top li .slides_lkbt img {width:100% !important;}
	.shopmainimg .flexslider ul.slides_top li .slides_lkbt img {min-width:100% !important;}
}*/



/* ------------------------------------------------------------------------------
	TOP mobileGBmenu
-------------------------------------------------------------------------------*/
@media screen and (min-width: 769px) { 
.mobileGBmenu { display:none !important; }
}

@media screen and (max-width: 768px) { 
.mobileGBmenu {
	bottom: 0px;
    display: block;
	width:100%;
    position: fixed;
	z-index:999;
/*opacity: 0;*/
	}
.mobileGBmenu li ul {
	height:89px;
	background-color:#FFF;
}
.mobileGBmenu li {
    border-right: 1px solid #eee;
    border-top: 1px solid #eee;
    background-color: #333;
    cursor: pointer;
    display: inline-block;
    padding: 12px;
    margin-right: 0;
    position: relative;
    transition: all .3s ease-in-out;
    vertical-align: middle;
	text-align:center;
    white-space: nowrap;
	width:33.33333%;
}
.mobileGBmenu li:nth-child(3), .mobileGBmenu li:nth-child(6) {
    border-right: none !important;
}
.mobileGBmenu li a {
	display:block;
	color:#FFF;
    font-size: 1.3rem;
}

/*.mbfixed {
	-webkit-transition: all 0.5s;
	-moz-transition: all 0.5s;
	-ms-transition: all 0.5s;
	-o-transition: all 0.5s;
	transition: all 0.5s;
	opacity: 1 !important;
}*/

.slider154 { margin-top:154px !important; }

.ChangeElem_Btn_Content_sm .ChangeElem_Btn {
    border: none !important;
    border-right: 1px solid #ccc !important;
    background-color: #FFF !important;
    color: #333 !important;
    padding: 0px 3px !important;
	margin-right: 0 !important;
}
.ChangeElem_Btn_Content_sm .ChangeElem_Btn.is-active {
    background: #eee !important;
    border: none !important;
    border-right: 1px solid #ccc !important;
}

.slick-dots li {
    margin: 0 !important;
}

}
	
/* ------------------------------------------------------------------------------
	Headmenu_TOP
-------------------------------------------------------------------------------*/
.navitop {
	font-size: 100%;
	list-style: none;
	background-color:transparent;
	width:100%;
	position: absolute !important;
	top: inherit !important;
	height:180px;
	margin:-40px 0 0 0 !important;
	text-align:center !important;
	z-index:999;
}

.fixed {
	position: fixed !important;
	top:-130px !important;
	margin:0 !important;
}


/* ------------------------------------------------------------------------------
	Topics - TAB
-------------------------------------------------------------------------------*/
#loading{
	text-align:center;
	width:100%;
      }
#loading img {
	width:auto !important;
	margin:10px auto !important;
}
/*タブの中身を初期非表示に*/
.ChangeElem_Panel {
  visibility: hidden !important;
  background-color:#fff !important;
}
/*.ChangeElem_Panel {
	position: absolute;
    width: 100%;
    height: 200px;
    visibility: hidden;
}*/
/*タブを横並べに*/
.ChangeElem_Btn_Content {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-around;
  margin: 10px 0px -16px 11px;/*margin:10px 15px -16px 15px;*/
}
@media screen and (max-width: 768px){
.ChangeElem_Btn_Content {
  margin:5px 15px 0px 15px !important;
}
.ChangeElem_Btn {
  margin-top: 1% !important;
}
}
/*通常時のタブ装飾*/
.ChangeElem_Btn {
  border: 1px solid #ccc;
  background-color: #eee;
  color: #333;
  cursor: pointer;
  display: inline-block;
  flex: 1;
  font-size: 1.2rem;
  padding-bottom: 10px;
  padding-top: 10px;
  margin-right: 20px;/*margin-right:1%;*/
  position: relative;
  transition: all .3s ease-in-out;
  vertical-align: middle;
  white-space: nowrap;
}
.ChangeElem_Btn_last {
margin-right: 11px !important;
}
/*カレントとホバー時のタブ装飾*/
.ChangeElem_Btn:hover,
.ChangeElem_Btn.is-active {
  background: #fcf7f1;
  border: 1px solid #CCC;
  background-color: #CCC;
  box-sizing: border-box;
  color: #333;
}
@media screen and (max-width: 768px){
.ChangeElem_Btn, .ChangeElem_Btn_last {
  margin-right:1% !important;
}
}

/* ------------------------------------------------------------------------------
	Banner
-------------------------------------------------------------------------------*/

.banner {
	background-image: url(images/banner.jpg);
	background-position: center top;
	background-repeat: no-repeat;
	-moz-background-size: cover;
	-o-background-size: cover;
	-webkit-background-size: cover;
	background-size: cover;
	min-height: 900px;
}
.banner-text {
	padding-top: 22%;
}
.banner-text h1 {
	color: #fff;
	font-family: "Open Sans", Arial, sans-serif;
	font-size: 65px;
	font-weight: 700;
/*	text-transform: uppercase;*/
}
.banner-text p {
	color: rgba(255, 255, 255, 0.60);
	font-size: 16px;
	font-weight: 400;
	line-height: 24px;
	margin-top: 30px;
	margin-bottom: 80px;
}
/*.banner video {
    margin: 0 auto;
    z-index: 1;
    width: 100%;
}*/



/* ------------------------------------------------------------------------------
	Headmenu
-------------------------------------------------------------------------------*/
#nav1 {
	font-size: 100%;
	list-style: none;
	background-color:transparent;
	width:100%;
	position:fixed;
	top:-130px;
	height:180px;
	margin:0 ;
	text-align:center !important;
	z-index:999;
}
.navi_w {
	background:url(images/headmenu_bg.png) repeat-x;
	width:100%;
}
.navi_tab {
	position:relative;
	width:1200px;
	height:180px;
	margin:0 auto;
}
#nav1_hit {
	width:230px;
	height:40px;
	position:fixed;
	top:0;
	left:50%;
	margin:0 0 0 348px;
	z-index:9999;
}


.menu01 {
	position:absolute;
	left:0;
	top:10px;
	width:255px;/*width:518px;*/
	height:52px;
	border-left:#999 1px solid;
}
.menu01 li { border-right:#999 1px solid;}

.menu01.\31st {
    height: auto !important;
	margin-top:10px;
}
.menu01.\31st li {
    height: auto !important;
}
/*.menu01.\31st li p {
	border-right: #999 1px solid !important;
    position: absolute !important;
    top: 50% !important;
    left: 50% !important;
    margin-right: -50% !important;
    transform: translate(-50%, -50%) !important;
}*/

.menu01 a {
	display:block;
	font-size:140%;
	color:#000;
	width:255px;/*width:170px;*/
}
.menu01 span {
	display:block;
	font-size:55%;
	color:#999;
}

.menu02 {
	position:absolute;
	left:560px;
	width:355px;
	top:16px;
	line-height:1.2;
}
.menu02 a {
	display: inline-block;
    font-size: 90%;
    color: #000;
    padding: 0;
    margin-right: 0px;
    background-color: #FFF;
    border: none !important;
    height: 20px;	
}

.menu03 {
	position:absolute;
	right:0;
	top:0;
	width:330px;
	height:60px;
	font-size:85%;
	color:#999;
	text-align:right;
}
.menu03 ul {
	width:300px;
	text-align:right;
}
.menu03 .tel {
	font-size:250% !important;
	color:#000;
}
.menu03 a {
	text-align:right;
	color:#999;
	margin-left:15px;
}

.menu04 {
	position:absolute;
	left:0;
	top:90px;
	width:100%;
	height:38px;
	text-align:center;
	line-height:1.2;
}
.menu06 {
	position:absolute;
	left:260px;
	top:90px;
	width:900px;
	height:38px;
	text-align:center;
	line-height:1.2;
}
.menu04 ul, .menu06 ul {
	width:850px;
	margin:0 auto !important;
	text-align:center !important;
/*-----------------------------------------2021/1/26--*/
    display: flex;
    justify-content: space-around;
/*-----------------------------------------2021/1/26--*/
}
.menu04 a, .menu06 a {
	display:block;
	font-size:100%;
	color:#000;
	/*width:170px;-----------------------------------------2021/1/26--*/
}
.menu04 span, .menu06 span {
	display:block;
	font-size:75%;
	color:#999;
}

.logo_tab {
	position:absolute;
	right:0;
	top:139px;
	width:246px;
	height:53px;
	text-align:center;
	cursor:pointer;
}
.logo_tab h1 {
	position:absolute;
	margin:0 !important;
	padding:0 !important;
	line-height:100% !important;
	vertical-align:top !important;
	height:1 !important;
}
.menu05 {
	position:absolute;
	left:0;
	top:85px;
	width:250px;
	height:38px;
	text-align:center;
	line-height:1.2;
}

.menu01 a:hover, .menu02 a:hover, .menu03 a:hover, .menu04 a:hover, .menu05 a:hover, .menu06 a:hover {
	opacity:0.5;
}
.menu01:after, .menu02:after, .menu03:after, .menu04:after, .menu05:after, .menu06:after{
  content: "."; 
  display: block; 
  height: 0; 
  font-size:0;	
  clear: both; 
  visibility:hidden;
}

#nav1 ul{
}
#nav1 li{
	float:left;
}



/* ==========================================================================
	$intro
========================================================================== */
.intro {
	background: #000 url(https://www.hotelgajoen-tokyo.com/wp/wp-content/uploads/2017/11/topeventbg.jpg) right 50% no-repeat fixed;
	background-size:100% !important;
    height: 600px;
    margin: 0;
    padding: 0;
}
@media screen and (max-width: 1200px) {　/*EVENT背景タブレット用*/
.intro {
	background: #000 url(https://www.hotelgajoen-tokyo.com/wp/wp-content/uploads/2018/01/topeventbg_s.jpg) right 50% no-repeat !important;
	background-size:100%;
    height: 600px;
    margin: 0;
    padding: 0;
}
}

.intro h2 {
	color: #000;
	margin-top: 30px !important;
	font-size:150% !important;
	font-weight:400 !important;
}
.intro p {
	color:#333333;
	padding:15px !important;
}
.intro a:hover img {
	opacity:0.5;
}
.intro img {
	width: 100%;
	height: auto;
}

/* ==========================================================================
	$intro NEW 2018/05/28
========================================================================== */
.intro_new {
	background: url('/wp-content/uploads/2017/05/c000.jpg') right 50% no-repeat;
	background-attachment: fixed;
	background-size:100% !important;
    height: 400px;
    margin: 0;
    padding: 0;
}
@media screen and (max-width: 1200px) {　/*EVENT背景タブレット用*/
.intro_new {
	background: url('https://www.hotelgajoen-tokyo.com/wp/wp-content/uploads/2017/05/c000.jpg') right 50% no-repeat !important;
	background-attachment:scroll !important;
	background-size:100%;
    height: 400px;
    margin: 0;
    padding: 0;
}
}

.intro_new h2 {
	color: #000;
	margin-top: 0px !important;
	font-size:150% !important;
	font-weight:400 !important;
}
.intro_new p {
	color:#333333;
	padding:15px !important;
}
.intro_new a:hover img {
	opacity:0.5;
}
.intro_new img {
	width: 100%;
	height: auto;
}


/* ==========================================================================
	$intro　Xmas
========================================================================== */
.introxm {
	background: #000 url(https://www.hotelgajoen-tokyo.com/rian_img/00_2.jpg) 50% 50% no-repeat fixed;
	background-size:cover;
    height: 600px;
    margin: 0;
    padding: 0;
}
.introxm h2 {
	color: #000;
	margin-top: 30px !important;
	font-size:150% !important;
	font-weight:400 !important;
}
.introxm p {
	color:#333333;
	padding:15px !important;
}
.introxm a:hover img {
	opacity:0.5;
}
.introxm img {
	width: 100%;
	height: 100%;
}

/* ==========================================================================
	$intro　stay
========================================================================== */
.introst {
	background: url(https://www.hotelgajoen-tokyo.com/wp/wp-content/uploads/2017/01/06-1.jpg) 50% 50% no-repeat fixed;
	background-size:cover;
    height: 600px;
    margin: 0;
    padding: 0;
}
@media screen and (max-width: 1200px) {
.introst {
	margin-top:-60px !important;
	background: url(https://www.hotelgajoen-tokyo.com/wp/wp-content/uploads/2017/12/06-1.jpg) 50% 50% no-repeat fixed;
	background-size:auto 700px !important;
	height: 700px;
}
.introst .container {
	margin-top:40px !important;
}
}
@media screen and (max-width: 640px) {
.introst {
	margin-top:-120px !important;
	background: url(https://www.hotelgajoen-tokyo.com/wp/wp-content/uploads/2017/12/06-1.jpg) 50% 45% no-repeat fixed;
	background-size:auto 700px !important;
	height: 700px;
}
.introst .container {
	margin-top:40px !important;
}
}
.introst h2 {
	color: #000;
	margin-top: 30px !important;
	font-size:150% !important;
	font-weight:400 !important;
}
.introst p {
	color:#333333;
	padding:15px !important;
}
.introst a:hover img {
	opacity:0.5;
}
.introst img {
	width: 100%;
	height: 100%;
}


/* ==========================================================================
	$introfr
========================================================================== */
.introfr {
	background-color:#fff;
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-attachment:fixed;
	background-size:100% !important;
	height:420px;
    margin: 0;
    padding: 0;
}
_::-webkit-full-page-media, _:future, :root .introfr {
    background-position:50% 38%;
}
_::-webkit-full-page-media, _:future, :root .introfr .col-md-6 {
    border:1px solid #ccc;
}

@media screen and (max-width: 1200px) {
	.introfr {
		background-attachment:inherit;
		background-position:50% 50%;
		height:480px !important;
		background-size: 100% auto !important;
	}
_::-webkit-full-page-media, _:future, :root .introfr {
    background-position:50% 25%;
}
}
@media screen and (max-width: 640px) {
	.introfr {
		background-attachment:inherit;
		background-position:50% 50%;
		height:480px !important;
		background-size: auto 100% !important;
	}
}	
.introfr h2 {
	color: #000;
	margin-top: 30px !important;
	font-size:150% !important;
	font-weight:400 !important;
}
.introfr p {
	color:#333333;
	padding:0 20px 30px 20px !important;
}
.introfr a:hover img {
	opacity:0.5;
}
.introfr img {
	width: 100%;
	height: 100%;
	margin:15px auto !important;
}

/* ==========================================================================
	$introfr2
========================================================================== */
.introfr2 {
	background-color:#fff;
	background-position:50% 50%;
	background-repeat:no-repeat;
	background-attachment:fixed;
	background-size:100% !important;
	height: auto;
    margin: 0;
    padding: 0;
}
_::-webkit-full-page-media, _:future, :root .introfr2 {
    background-position:50% 38%;
}
_::-webkit-full-page-media, _:future, :root .introfr2 .col-md-6 {
    border:1px solid #ccc;
}

.introfr2 .col-md-12 {
	margin: 45px 0;
	padding-top:15px;
	padding-bottom:15px;
}

@media screen and (max-width: 1200px) {
	.introfr2 {
		background-attachment:inherit;
		background-position:50% 50%;
		background-size: 100% auto !important;
	}
_::-webkit-full-page-media, _:future, :root .introfr2 {
    background-position:50% 25%;
}
}
@media screen and (max-width: 640px) {
	.introfr2 {
		background-attachment:inherit;
		background-position:50% 50%;
		background-size: auto 100% !important;
	}
}
.introfr2 a:hover img {
	opacity:0.5;
}
.introfr2 img {
	width: 100%;
	height: 100%;
}



/* ------------------------------------------------------------------------------
	 Serives
-------------------------------------------------------------------------------*/
.service-section {
	padding-top: 100px;
}
.services {
	margin-bottom: 20px;
}
.services-content {
	/*padding: 0 15px;*/
	padding: 0;
	margin-top: 30px;
}
.services .icon {
	color: #00aeda;
	font-size: 50px;
	padding-left: 15px;
}
.services a:hover img {
	opacity:0.5;
}
/* ------------------------------------------------------------------------------
	 news
-------------------------------------------------------------------------------*/
.news p {
	color: rgba(255, 255, 255, 0.80) !important;
	font-size:15px;
}
.news-section {
	padding-bottom: 70px;
}
.news-content {
	padding: 0 15px;
	margin-top: 30px;
}
.news a:hover img {
	opacity:0.5;
}
.news .container {
background-color:#c8c7c8 !important;/*background-color:#666 !important;*/
/*border:#000 1px solid;*/
padding:30px 50px;
width:685px !important;
}

.news-i .container1 {
padding:30px 50px;
width:100% !important;
}
.news-i .instagram-media {
	width:100% !important;
}
@media screen and (max-width: 1200px) {
.news-i .instagram-media {
	width:70% !important;
	margin:-50px auto 50px auto !important;
}
}

.news li, .news-i li {
	list-style-type: none;
	padding-bottom:4px;
}
.news h2, .news h3, .news-i h2 {
	font-size:150% !important;
	color:#000 !important;/*color:#FFF !important;*/
	padding-bottom:10px;
}
.news a, .news-i a, .news a p, .news-i a p, .news a span, .news-i a span {
	color: #000 !important;/*color: rgba(255, 255, 255, 0.70) !important;*/
}
.news a:hover, .news-i a:hover, .news a p:hover, .news-i a p:hover, .news a span:hover, .news-i a span:hover {
	color: #e84545 !important;/*color: rgba(255, 255, 255, 1) !important;*/
}
.blinking{
	color:#F00;
	-webkit-animation:blink 1.5s ease-in-out infinite alternate;
    -moz-animation:blink 1.5s ease-in-out infinite alternate;
    animation:blink 1.5s ease-in-out infinite alternate;
}
@-webkit-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@-moz-keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
@keyframes blink{
    0% {opacity:0;}
    100% {opacity:1;}
}
.news .data { font-size:80%; color:#222}

#stay .news-section {
	margin-top: 100px;
}

.news .container li p { display:inline !important;}

/* ------------------------------------------------------------------------------
	 Works
-------------------------------------------------------------------------------*/
.work {
	-moz-box-shadow: 0 0 0 1px #fff;
	-webkit-box-shadow: 0 0 0 1px #fff;
	box-shadow: 0 0 0 1px #fff;
	overflow: hidden;
	position: relative;
}
.work img {
	width: 100%;
	height: auto;
}
.work .overlay {
	background: rgba(0, 0, 0, 0.6);
	height: 100%;
	left: 0;
	opacity: 0;
	position: absolute;
	top: 0;
	width: 100%;
	-moz-transition: opacity, 0.3s;
	-o-transition: opacity, 0.3s;
	-webkit-transition: opacity, 0.3s;
	transition: opacity, 0.3s;
}

@media screen and (min-width: 769px){
#wedding .work .overlay {
	background: rgba(199, 176, 99, 0.95) !important;
}
}
.work .overlay-caption {
	position: absolute;
	text-align: center;
	top: 50%;
	width: 100%;
	-moz-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.work h2, .page .work h3 {
	font-size: 20px;
/*	text-transform: uppercase;*/
	font-weight: 700;
	line-height:140%;
}
.work h2, .page .work h3, .page .work h5, .work p, .work img {
	-moz-transition: all, 0.5s;
	-o-transition: all, 0.5s;
	-webkit-transition: all, 0.5s;
	transition: all, 0.5s;
}
.work h2, .page .work h3, .page .work h5, .work p {
	color: #fff !important;
	margin: 0;
	opacity: 0;
}

@media screen and (max-width: 768px){
#wedding .overlay-caption h3, .page .work h3, .page .work h5, .page .work p  {
	margin-bottom:0 !important;
	padding-bottom: 0 !important;
color: #333 !important;
}
}

a.work-box h3, a.work-box h5 {
	color: #fff !important;
}
.work span {
	font-size: 45px;
}
.work h2, .page .work h3, .page .work h5 {
	margin-bottom: 5px;
	-moz-transform: translate3d(0, -200%, 0);
	-ms-transform: translate3d(0, -200%, 0);
	-webkit-transform: translate3d(0, -200%, 0);
	transform: translate3d(0, -200%, 0);
}
.page .work h5 {font-size:18px !important;}
@media screen and (max-width: 768px){.page .work h5 {font-size:16px !important;}}

.work p {
	-moz-transform: translate3d(0, 200%, 0);
	-ms-transform: translate3d(0, 200%, 0);
	-webkit-transform: translate3d(0, 200%, 0);
	transform: translate3d(0, 200%, 0);
}
.work-box:hover img {
	-moz-transform: scale(1.2);
	-ms-transform: scale(1.2);
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
}
.works2023 .work-box:hover img {
	-moz-transform: scale(1.0) !important;
	-ms-transform: scale(1.0) !important;
	-webkit-transform: scale(1.0) !important;
	transform: scale(1.0) !important;
}
.work-box:hover .overlay {
	opacity: 1 !important;
}
.work-box:hover .overlay h2, .page .work-box:hover .overlay h3, .page .work-box:hover .overlay h5, .work-box:hover .overlay p {
	opacity: 1 !important;
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

.work-box .overtx {
	height: 100%;
	left: 0;
	opacity: 1;
	position: absolute;
	top: 0;
	width: 100%;
	-moz-transition: opacity, 0.3s;
	-o-transition: opacity, 0.3s;
	-webkit-transition: opacity, 0.3s;
	transition: opacity, 0.3s;
}
.work-box .overtx h4 {
	background-color:rgba(34,11,5,0.8) !important;
	color:#FFF !important;
	font-size:90% !important;
	width:100% !important;
	padding:15px 0 !important;
	margin:0 !important;
	bottom:0px !important;
	z-index:998 !important;
	position:absolute;
}
.work-box .overtx:hover {
	opacity: 0;
	-moz-transform: translate3d(0, 0, 0);
	-ms-transform: translate3d(0, 0, 0);
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}

/*#wedding .container-fluid .work9 { position:relative; height:240px !important; overflow:hidden !important}
#wedding .container-fluid .work9 img { position:absolute; top: 0; left: 0; right: 0; bottom: 0; margin: auto; !important; overflow:hidden !important}*/
@media screen and (max-width: 768px) {
#wedding #works .work9 { 
	/*margin-bottom: 100px !important;*/
	overflow:visible !important;
}
#wedding #works .work9 .overlay-caption {
	top: 100% !important;
	/*margin-top: 35px !important;*/
    height: 70px !important;
}
#wedding #works .work-box:hover img {
	-moz-transform: scale(1) !important;
	-ms-transform: scale(1) !important;
	-webkit-transform: scale(1) !important;
	transform: scale(1) !important;
}
.work-box img {
	-moz-transform: scale(1) !important;
	-ms-transform: scale(1) !important;
	-webkit-transform: scale(1) !important;
	transform: scale(1) !important;
}
.work-box:hover img {
	-moz-transform: scale(0.95) !important;
	-ms-transform: scale(0.95) !important;
	-webkit-transform: scale(0.95) !important;
	transform: scale(0.95) !important;
}
}



 /*横5個均等に*/
#works .colfx2 {
	float: left !important;
    width: 20% !important;
	margin-left: 0 !important;
	margin-right: 0 !important;
	}
@media (max-width:768px){/*767px*/
#works .colfx2 {
    width: 100% !important;
	}
}

/* ------------------------------------------------------------------------------
	 Teams
-------------------------------------------------------------------------------*/
.person {
	max-width: 270px;
	text-align: center;
}
.person img {
	width: 150px;
	height: 150px;
	border-radius: 50%;
	margin: auto;
}
.person-content {
	margin-top: 20px;
}
.person h4 {
	font-weight: 400;
}
.person h5 {
	color: #00aeda;
	font-size: 13px;
	font-weight: 400;
	margin-bottom: 20px;
}
.social-icons, .footer .footer-share {
	margin-top: 30px;
}
.social-icons li, .footer .footer-share li {
	display: inline-block;
	float: none;
}
.social-icons a, .footer .footer-share a {
	border: 1px solid #e8ecee;
	-moz-border-radius: 50%;
	-webkit-border-radius: 50%;
	border-radius: 50%;
	color: #c6cacc;
	display: block;
	font-size: 14px;
	height: 32px;
	line-height: 32px;
	margin-right: 5px;
	text-align: center;
	width: 32px;
}
.social-icons a:hover {
	background-color: #00aeda;
	border-color: #01a9d4;
	color: #fff;
}
/* ------------------------------------------------------------------------------
	 Testimonials
-------------------------------------------------------------------------------*/
.testimonials {
	background-color: #00aeda;
	position: relative;
	text-align: center;
}
.testimonials blockquote {
	border: 0;
	margin: 0;
	padding: 100px 15%;
}
.testimonials h1 {
	color: #fff;
	font: 23px "Merriweather";
	font-weight: 300;
}
.testimonials p {
	color: #fff;
	display: block;
	font-size: 13px;
	font-style: normal;
	letter-spacing: 2px;
	font-weight: 400;
	margin-top: 30px;
/*	text-transform: uppercase;*/
}
.flex-control-nav {
	margin-top: 2%;
	bottom: none!important;
	position: relative!important;
	right: 0;
	text-align: center;
	width: 100%!important;
	z-index: 100;
}
/* ------------------------------------------------------------------------------
	Contact form
-------------------------------------------------------------------------------*/
.conForm {
	text-align: center;
}
.conForm h5 {

	font-size: 30px;
}
.conForm p {
	text-align: center;
	margin: 7%;
}
.conForm input {
	color: #797979;
	padding: 15px 30px;
	border: none;
	margin-right: 3%;
	margin-bottom: 30px;
	outline: none;
	font-style: normal;
	border-bottom: #e0e0e0 1px solid;
	font-size: 15px;
}
.conForm input.noMarr {
	margin-right: 0px;
}
.conForm textarea {
	color: #797979;
	padding: 15px 30px;
	margin-bottom: 18px;
	outline: none;
	height: 150px;
	font-style: normal;
	resize: none;
	font-size: 15px;
	border: none;
	border-bottom: #e0e0e0 1px solid;
}
.conForm .submitBnt {
	background: #3bc492;
	color: #fff;
	margin-top: 30px;
padding:15px 30px 15px 30px;
	font-size: 13px;
	font-weight: 600;
	letter-spacing: 5px;
	border: 0;
	-moz-border-radius: 2px;
	-webkit-border-radius: 2px;
	border-radius: 2px;
	display: inline-block;
/*	text-transform: uppercase;*/
}
.conForm .submitBnt:hover {
	background: #3d3d3d;
	color: #fff;
}
#success_page{
	color: #00bdbd;
	font-weight: 500;
}
.error_message{
	color: #ff675f;
	padding-bottom: 15px;
	font-weight: 500;
}
#success_page h3{
	font-size:17px;
	color:#5ed07b;
	font-weight: 700;
}

/* ------------------------------------------------------------------------------
	 Footer
-------------------------------------------------------------------------------*/
.footer {
	background:url(images/foot_bg.png) repeat-x;
	background-color: #fff;
}
.footer-top {
	padding-top: 0px !important;
	position:relative;
	width:1200px;
	height:380px;
	margin:0 auto;
	text-align:center;
}

.foot01 {
	position:absolute;
	left:0;
	top:0;
	width:100%;
	height:46px;
	text-align:center;
	line-height:3;
	color:#fff;
}
.foot01 a {
	font-size:100%;
	color:#fff;
}
@media screen and (max-width: 640px) {
.foot01 {
    /* font-size: 80% !important; */
    line-height: 1.8 !important;
    padding-top: 4px !important;
    height: 65px;
    /* margin-bottom: 50px; */
    background-color: #000;
}
.foot04-1 {
margin-top:40px
}
}

.foot02 {
	position:absolute;
	left:0;
	top:80px;
	width:255px;/*width:518px;*/
	height:52px;
	border-left:#999 1px solid;
}
.foot02 li { 
border-right:#999 1px solid; 
width:255px;
/*width:170px;*/ 
float:left;
height:52px;
}
.foot02 li p { 
position: absolute;
    top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%);
}	
.foot02 a {
	display:block;
	font-size:140%;
	color:#000;
}
.foot02 span {
	display:block;
	font-size:55%;
	color:#999;
}

.foot03 {
	position:absolute;
	left:0;
	top:295px;
	height:60px;
	font-size:85%;
	text-align:left;
}
.foot03 .tel {
	font-size:190% !important;
	color:#000;
}
.foot03 a {
	color:#000;
}

@media screen and (max-width: 1200px) {
.foot03 .col-md-2 {
    width: 20% !important;
    padding-right: 5px !important;
    padding-right: 5px !important;
}
.foot03 .col-md-1 {
    width: 16.6666% !important;
    padding-left: 5px !important;
    padding-right: 0px !important;
	padding-bottom:15px !important;
}
}

.foot04 {
	position:absolute;
	text-align:right;
	top:80px;
	right:0;
	width:690px;
	line-height:1.4em;
}
.foot04 ul {
	text-align:left;
	font-size:90%;
	float:left;
	width:auto;
	margin-left:30px;
	color:#000;
}
.foot04 a {
	color:#999;
}
.foot04 .li01, .foot04 .li02 a, .foot04 .li01 a {
	color:#000;
}
.foot04 .li02 {
	line-height:2.em;
}
.foot04 ul ul {
	text-align:left;
	font-size:90%;
	float:none;
	width:auto;
	margin-left:10px;
	color:#999;
}

.foot05 {
	position:absolute;
	right:0;
	top:365px;
	height:60px;
	font-size:85%;
	text-align:right;
	width: 500px;
}
.foot05 a {
	color:#999;
	font-size:200%;
	margin-left:20px;
}
.foot05 a:first-child {
	margin-left:0;
}

.foot05 .col-md-2 {
    width: 20% !important;
    padding-right: 0px !important;
}

.foot05 .col-md-1 {
    width: 16.66666% !important;
    padding-right: 0px !important;
}

.foot01 a:hover, .foot02 a:hover, .foot03 a:hover, .foot04 a:hover, .foot05 a:hover {
	opacity:0.5;
}

/* ------------------------------------------------------------------------------
	NEW Foot
-------------------------------------------------------------------------------*/

.foot02-ic a {
    color: #999;
    font-size: 320%;
    margin: 20px 15px;
display: inline-block;
}

.foot04-1 {
	position:absolute;
	text-align:left;
	top:80px;
	left:270px;
	height:52px;
	width:400px; /*width:600px;*/
	line-height:1.4em;
	font-size:90%;
	color:#000;
}
.foot04-1 li {
	color:#999;
	width:200px;
	display:block;
	float:left;
	text-align:left;
	line-height:180%;
}
.foot04-1 li a {color:#999;}
.foot05-1 {
	right:0;
	top:0;
	height:60px;
}

@media screen and (max-width: 1200px) {
.foot04-1 {
	position:absolute;
	text-align:center;
	top:300px !important;
	left:0 !important;
	height: auto !important;
	width: 100% !important;
	line-height:1.4em;
	font-size:90%;
	color:#000;
	padding-bottom:80px;
}
.foot04-1 li {
	color:#333;
	border-bottom:1px #999 solid;
	width: 80% !important;
	display:block;
	float: none;
	text-align:center;
	margin:0 auto !important;
	line-height:260%;
}
}

/* ------------------------------------------------------------------------------
	 Form
-------------------------------------------------------------------------------*/

input, select {
	margin:3px;
	padding:0 3px;
	color:#000;
	vertical-align:middle;
	line-height:100%;
	font-size:15px;
}

label { font-weight:normal !important}




#topbutton { /* ▼表示位置を画面の右下に固定 */
      position: fixed;
      bottom: 10px;
      right: 15px;
      display: none;
      background-color: #A0082C;
      opacity: 0.8;
      text-align: center;
      margin: 0px;
      padding-top: 15px;
	  width: 60px;
	height: 60px;
	-webkit-border-radius: 50%;
	-moz-border-radius: 50%;
	border-radius: 50%;
	z-index:9999999;
   }
   #topbutton a {
      color: #FFF;
      text-decoration: none;
	  padding: 15px;
   }
   #topbutton a:hover {
      color: #FFF !important;
   }
   #topbutton:hover {
	   background-color:#000;
   }
@media screen and (max-width: 640px) {
#wedding #topbutton { /* ▼表示位置を画面の右下に固定 */
      bottom: 10px;
      right: 15px;
   }
.topbutton_gbm {
      bottom: 80px !important;
}

.no-hf .topbutton_gbm {
    bottom: 20px !important;
}
}


/*--------no print---------------------------------------------------------*/
@media print{
#nav1, #reserv.reserv_fix .row, #topbutton {
	display:none;
	}
}
/*--------print---------------------------------------------------------*/
body {
-webkit-print-color-adjust: exact;
}

/*--------TABLE-------------------------------------------------------------*/
.cal_base {
	border:1px #ccc solid !important;
	border-collapse: separate !important;
	border-spacing: 2px !important;
}
.cal_base td {
	border:1px #eee solid !important;
	padding:10px !important;
	margin:2px !important;
}
.cal_base td.notd {
	border:none !important;
	background-color:#fff !important;
}

.caltable td a {
	font-size:120% !important;
	color:#333 !important;
	height:100% !important;
	width:100% !important;
	display:block !important;
}
.caltable td a:hover {
	color:#A0082C !important;
	background-color:#eee !important;
}
.caltable td a span {
	font-size:80% !important;
}

@media screen and (max-width:768px){
.table_base td {
	display:block;
}
}


/*--Wedding Mobile Menu-------------------------------------------------------------*/

.wedmbmn {
	margin:5% 0 5% 4%;
}
@media screen and (max-width:768px){/*767px*/
.wedmbmn .col-4 {
	width: 32% !important;
	margin: 0 !important;
	/*font-size:11px !important;*/
	background-color:#FFF;
	border-left:1px solid #BDAE6D;
	height:70px;
	/*line-height:70px !important;*/
	text-align:center !important;
	color:#666 !important;
display: inline-block;
position: relative;
	}
.wedmbmn .col-4:nth-child(3), .wedmbmn .col-4:nth-child(6) {
	border-right:1px solid #BDAE6D;
}
.wedmbmn .col-4:nth-child(1):before, .wedmbmn .col-4:nth-child(2):before, .wedmbmn .col-4:nth-child(3):before {
  content: '';
  position: absolute;
  left: 50%;
  bottom: 0; /*下線の上下位置調整*/
  display: inline-block;
  width: 70%; /*下線の幅*/
  height: 1px; /*下線の太さ*/
  -moz-transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  transform: translate(-50%); /*位置調整*/
  background-color: #BDAE6D; /*下線の色*/
}
.wedmbmn .col-4 a {
	color:#666 !important;
	}
.wedmbmn .col-4 strong {
	font-size:12px;
	color:#BDAE6D;
	font-weight: normal !important;
	line-height:110% !important;
}
.wedmbmn .col-4 p {
  position: absolute;
top: 50%;
    left: 50%;
    margin-right: -50%;
    transform: translate(-50%, -50%)
}
}

@media print, screen and (max-width: 640px) {
table.table_rsp {
	width: 95%;
	margin-left:0 !important;
	padding-left:0 !important;
}
table.table_rsp td {
	display:block !important;
	width:100% !important;
	clear:both !important;
}
.smright {
	text-align:right;
}
}



/*-- Tripla -------------------------------------------------------------*/

#search-bar form {
	background-color:#000 !important;
}
#search-bar form .input-container-input-container-da40af .input-container-title-db81ec {
	color:#FFF !important;
}

@media screen and (max-width: 992px){
#search-bar form.search-widget-search-container-bf1818 {
    width: 100%! important;
}
}
@media screen and (max-width: 576px){
.search-widget-search-container-bf1818 .search-widget-button-wrapper-d2b715 {
    display: inline-block !important;
}
}
@media screen and (max-width: 424px){
#search-bar form .input-container-slot-239963 {
	text-align:left !important;
}
#search-bar input[type=text] {
	margin:0 !important;
}
}

section.search-widget-day-use-wrapper-fc1ff9 {
    color: #FFF !important;
}


/*-- アコーディオン -------------------------------------------------------------*/
.grad-wrap {
  position: relative;
}
.grad-wrap + .grad-wrap {
}
.grad-btn {
  position: absolute;
  color: #e84545;
  margin-top: 130px;
}
.grad-btn::before {
  content: "...Read more"
}
.grad-item {
  position: relative;
  overflow: hidden;
  height: 120px; /*隠した状態の高さ*/
}
.grad-item::before {
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  /*height: 40px; グラデーションで隠す高さ
  background: -webkit-linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);
  background: linear-gradient(top, rgba(255,255,255,0) 0%, rgba(255,255,255,0.9) 50%, rgba(255,255,255,0.9) 50%, #fff 100%);*/
  content: "";
}
.grad-trigger {
  display: none; /*チェックボックスは常に非表示*/
}
.grad-trigger:checked ~ .grad-btn {
  bottom: -2em;
}
.grad-trigger:checked ~ .grad-btn::before {
  content: "× Close" /*チェックされていたら、文言を変更する*/
}
.grad-trigger:checked ~ .grad-btn .fa {
  transform: rotate(180deg);
}
.grad-trigger:checked ~ .grad-item {
  height: auto; /*チェックされていたら、高さを戻す*/
}
.grad-trigger:checked ~ .grad-item::before {
  display: none; /*チェックされていたら、grad-itemのbeforeを非表示にする*/
}


/*-- TAB（求人） -------------------------------------------------------------*/
.TAB_Btn_Content {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
    margin: 10px 0px -16px 11px;
}
.TAB_Btn_Content a:hover { color:#333 !important }
.TAB_Btn {
    border: 1px solid #ccc;
    background-color: #eee;
    color: #333;
    cursor: pointer;
    display: inline-block;
    flex: 1;
    font-size: 1.2rem;
    padding-bottom: 10px;
    padding-top: 10px;
    margin-right: 20px;
    /* margin-right: 1%; */
    position: relative;
    transition: all .3s ease-in-out;
    vertical-align: middle;
    white-space: nowrap;
}
.TAB_Btn:hover, .TAB_Btn.is-active {
    background: #fcf7f1;
    border: 1px solid #CCC;
    background-color: #CCC;
    box-sizing: border-box;
    color: #333;
}

@media screen and (min-width: 768px){
.TAB_Btn {
    font-size: 1.4rem;
}
}

@media screen and (max-width: 768px){
.TAB_Btn, .ChangeElem_Btn_last {
    margin-right: 1% !important;
	flex-basis: 32.333333% !important;
}
}
@media screen and (max-width: 768px){
.TAB_Btn.line2 {
	margin-top:1% !important;
}
}


.c2021_con div {
min-height: 660px;
height: auto !important;
height: 660px;
}
@media screen and (max-width: 768px){
.c2021_con div {
min-height: 100px !important;
height: auto !important;
}
}



/* -- アコーディオンボタン（矢印稼働型） -------- */
.ac-box{
  padding:  30px 0px 30px 0px;
}

.ac-box label{
    margin: 30px auto 30px;
    width: 50% !important;
    height: 48px;
    font-size: 120%;
    font-weight: 600 !important;
    line-height: 45px;
    /* border: #86a999 2px solid; */
    /* border-radius: 100vh; */
    vertical-align: middle;
    text-decoration: none;
    letter-spacing: 0.03em;
    text-align: center;
    margin: auto;
    position: relative;
    display: block;
    cursor: pointer;
    color: #FFFFFF;
    transition: all 0.5s;
    background-color: #333333;
}

.ac-box label:hover{
opacity:0.7;
-webkit-transition: all .3s;
transition: all .3s;
}

.ac-box input{
display: none;
}

.ac-box label:after{
color: #FFFFFF;
font-family:"FontAwesome";
content:" \f13a";
}

.ac-box input:checked ~ label::after {
color: #FFFFFF;
font-family:"FontAwesome";
content:" \f139";
}

.ac-box .ac-small{
height: 0px;
padding: 0px;
overflow: hidden;
opacity: 0;
transition: 0.5s;
}

.ac-box input:checked ~ div{
height: auto;
/*padding: 5px;*/
opacity: 1;
}

.hidden_show1 {
    height: 0;
    padding: 0;
    overflow: hidden;
    opacity: 0;
    transition: 0.8s;

}


/* -- Topics一覧リニューアル -------- */

.topics_list .cat {
	font-size:1.2rem !important;
	font-weight:normal !important;
	color:#333 !important;
}

.topics_list h2 {
	font-size:1.4rem !important;
	font-weight:normal !important;
	padding:2px 0 8px 0 !important;
	margin:0 0 2px 0 !important;
	border-bottom:1px #CCCCCC solid;
}

.topics_list a {
	color:#333 !important;
	text-decoration:none !important;
}
.topics_list a:hover {
	color:#CCC !important;
	text-decoration:underline !important;
}

.topics_list p {
	display:inline !important;
	padding-right:10px !important;
}
.topics_list i {
	padding-right:5px !important;
}




/* -- zoomアイコン  -------- */
.ic_zoom_w {
	position:relative !important;
	z-index:1;
}
.ic_zoom {
    position: absolute;
    top: 0px;
    right: 15px;
    z-index: 2;
    font-size: 1.5rem;
    color: #666 !important;
    background-color: rgba(255,255,255,0.7);
    padding: 5px;
}
.ic_zoom a {
	color:#666 !important;
	text-decoration:none;
}
.ic_zoom a:href {
	color:#666 !important;
	text-decoration:none;
}


/* -- ●アイコン  -------- */
.circle1 {
    display: inline-block;
    width: 120px !important;
    /* height: 100px !important; */
    /* border-radius: 50%; */
    /* text-align: center; */
    /* font-size: 18px; */
    /* line-height: 140% !important; */
    /* background: #f2972e; */
    /* background-image: linear-gradient( 
-60deg, #ff5858 0%, #f09819 100%); */
    /* color: #FFFFFF; */
    /* font-weight: bold; */
    position: absolute;
    left: 0px;
    top: 0px;
    /* transform: rotate( 
-10deg); */
    padding-top: 20px;
}
@media screen and (max-width: 768px){
.circle1 {
    width: 160px !important;
    left: 15px;
}
}

.circle2 {
    display: inline-block;
    width: 100px !important;
    height: 100px !important;
    border-radius: 50%;
    text-align: center;
    font-size: 18px;
    line-height: 140% !important;
    /* background: #f2972e; */
    background-image: linear-gradient(
-60deg, #ff5858 0%, #f09819 100%);
    color: #FFFFFF;
    font-weight: bold;
    position: absolute;
    left: 10px;
    top: 10px;
    transform: rotate(
-10deg);
    padding-top: 20px;
}

.circle3 {
    display: inline-block;
    width: 120px !important;
    /* height: 100px !important; */
    /* border-radius: 50%; */
    /* text-align: center; */
    /* font-size: 18px; */
    /* line-height: 140% !important; */
    /* background: #f2972e; */
    /* background-image: linear-gradient( 
-60deg, #ff5858 0%, #f09819 100%); */
    /* color: #FFFFFF; */
    /* font-weight: bold; */
    position: absolute;
    left: 15px;
    top: 0px;
    /* transform: rotate( 
-10deg); */
    padding-top: 0px;
z-index:9999;
}

@media screen and (max-width: 768px){
.circle1 {
    width: 100px !important;
    left: 15px;
}
}


/* -- スマホTABLE横スクロール -------- */
.table_container {
	z-index: 99 !important;
}
/* .table-scrollに適用 */
.table-scroll {
	overflow-x: auto;
	-webkit-overflow-scrolling: touch;
overflow-y: hidden !important;
}
.table-scroll table {
	margin: 0;
width:100%;
}

/* .stickyに適用 */
/*.table-scroll .sticky {
	border-left: none;
}*/
.table-scroll .sticky {
	position: -webkit-sticky;
	position: sticky;
	left: 0;
/*	z-index: 1;*/
}
.table-scroll th, .table-scroll td {
	padding:10px;
background-color:#f2f2f2;
text-align:center;
font-weight:normal;
border: solid 3px #FFFFFF;
}

@media screen and (max-width: 768px){
.table-scroll table {
width: 620px;
    font-size: 1.2rem;
}
}

/*----*/

.table-scroll_a th, .table-scroll_a td {
	padding:5px;
background-color:#ffffff;
text-align:center;
font-weight:normal;
border: solid 1px #cccccc;
}


@media screen and (max-width: 768px){
.table-scroll_a table {
width: 620px;
    font-size: 1.2rem;
}
.table-scroll_a .sticky {
	border-left: solid 1px #cccccc !important;
}
.table-scroll_a .c1 { width:90px;}
.table-scroll_a .c2 { width:50px; font-size:1rem !important; padding: 2px !important;}

.table-scroll_a  .sticky.c1 {left: 0;}
.table-scroll_a  .sticky.c2 {left: 90px;}

}

/*--------------------------------------------------------------------------
   PRESS RELEASE
----------------------------------------------------------------------------*/
.press a {
color: #333 !important;
text-decoration: none !important;
}
.press a:hover {
    color: #A0082C !important;
}

/*--------------------------------------------------------------------------
   MIYABI PASSPORT
----------------------------------------------------------------------------*/

@media screen and (max-width: 768px){
.img50 { 
width:50% !important;
margin:0 auto !important;
text-align:center;
}

.item {
    display: flex;
    align-items: start;
    padding: 0 0 10px 0 !important;
    border: none !important;
    border-bottom: 1px solid #DDDDDD !important;
}

.item img {
    padding: 0 !important;
    margin: 0 !important;
}

.item h5, .item p {
    width: 50%;
}

.item p.mg0 {
    margin: 0 0 0 10px !important;
}
.item p.pdt10 {
    padding: 0 !important;
}

}


/*--------------------------------------------------------------------------
   TOP2022
----------------------------------------------------------------------------*/

.slides_tx2022 { 
position: absolute;
    top: 480px;
    padding: 20px;
    text-align: center;
    color: #333;
    font-weight: bold;
    font-size: 30px;
    background-color: rgba(255,255,255,0.5);
    z-index: 99;
    width: 680px;
    height: 200px;
    left: 50%;
    margin-left: -340px;
    bottom: 0;
}

.slides_tx2022_sm { display:none;}

.slides_tx2022 .btn { 
background-color: #333 !important;
    color: #FFF !important;
padding: 12px !important;
}
.slides_tx2022 span { 
font-size:18px 
}

@media screen and (max-width: 1400px) {.slides_tx2022 {top: 300px !important;} }

@media screen and (max-width: 1200px) {
	.slides_tx2022 { display:none !important;}
	.slides_tx2022_sm { display:block !important;}
}


.topics_re .container {
	width:90% !important;
}


.ChangeElem_Btn_Content_top .ChangeElem_Btn {
  border: 1px solid #ccc;
  background-color: #eee;
  color: #333;
font-size:1em;
}
.ChangeElem_Btn_Content_top .ChangeElem_Btn:hover,
.ChangeElem_Btn_Content_top .ChangeElem_Btn.is-active {
  border: 1px solid #CCC;
  background-color: #FFF;
  box-sizing: border-box;
  color: #333;
}

@media screen and (max-width: 768px){
.ChangeElem_Btn_Content_top .ChangeElem_Btn {
  border: 1px solid #ccc;
  background-color: #eee !important;
  color: #333;
font-size:0.8em;
}
.ChangeElem_Btn_Content_top .ChangeElem_Btn:hover,
.ChangeElem_Btn_Content_top .ChangeElem_Btn.is-active {
  border: 1px solid #CCC;
  background-color: #FFF !important;
  box-sizing: border-box;
  color: #333;
}
}

.ChangeElem_Panel_top {
    margin-top: 30px !important;

}

.news2022 li {
	list-style:none;
	border-bottom:1px solid #ccc;
	line-height: 150%;
    padding: 10px 10px;
}
.news2022 li a, .news2022 li a:hover {
	color:#333;
	text-decoration:none;
}

.works2022 .overlay {
    background: rgba(0,0,0,0.6);
}

.works2022 .work h2, .work h2, .work h3 {
	font-size:1.5em !important;

	letter-spacing:0.5rem !important;
	padding-bottom:10px !important;



}

@media screen and (max-width: 768px){
.works2022 {
	background-color:#e3d8c6;
}
.works2022 .work {
    -moz-box-shadow: none !important;
    -webkit-box-shadow: none !important;
    box-shadow: none;
}

.works2022 .work .overlay {
        background-color: transparent;
    height: 100%;
    left: 0;
    opacity: 1;
    position: static;
    top: 0;
    width: 100%;
    -moz-transition: opacity, 0.3s;
    -o-transition: opacity, 0.3s;
    -webkit-transition: opacity, 0.3s;
    transition: opacity, 1s;
    color: #333 !important;
}
.works2022 .work .overlay-caption {
    position: static;
    text-align: left;
    top: auto;
    width: 100%;
    -moz-transform: translateY(0);
    -ms-transform: translateY(0);
    -webkit-transform: translateY(0);
    transform: translateY(0);
    background: none;
    padding: 20px 0;
    color: #333 !important;
}
.works2022 .work h2, .works2022 .work p {
    color: #333 !important;
    margin: 0;
    /*opacity: 0;*/
	line-height: 150% !important;
	font-size:1em !important;

	}
.works2022 .work h2, .work h2 {
	font-size:1.5em !important;
	letter-spacing:0.5rem !important;
	padding-bottom:10px !important;
}
}

/*--------------------------------------------------------------------------
   100TOP2022
----------------------------------------------------------------------------*/
.row.box {
	display: flex;
	align-items: end;
	flex-direction: row;
	padding-right:15px !important;
	padding-left: 15px !important;
}

.row.box .box01, .row.box .box02 { 
padding-right:0 !important;
padding-left: 0 !important;
}

.row.box .box02 a {
	font-size:1.6em;
	font-weight:bold !important;

	color:#333;
	display:block
}
.row.box .btn_gs {
    background-color: #FFF;
    border: none !important;
    border-bottom: #B0B0B0 1px solid !important;
	padding:30px 30px;
    width:100%;
}
.row.box .btn_gs:hover {
    color: #333 !important;
    background-color: #FFF !important;
	opacity:0.7;
}

@media screen and (max-width: 768px){
.row.box {
	flex-direction: column;
}
.row.box .box01 { order: 1;}
.row.box .box02 { order: 2; width:100%;}

.row.box .box02 a {
	font-size:1.2em !important;
	font-weight:bold;
	color:#333;
}
.row.box .btn_gs {
	padding:10px 30px;
}
}


/*--------------------------------------------------------------------------
   Loading animation
----------------------------------------------------------------------------*/
.loading_area {
	height:800px;
	padding-top:150px;
}

span.loading01 {
  display: inline-block;
  width: 50px;
  height: 10px;
  background-position: 0 0, left;
  background-repeat: no-repeat, repeat-x;
  background-size: 10px 100%, 20px 100%;
  background-image:
  -webkit-gradient(linear, left top, right top, from(#999), to(#999) ),
  -webkit-gradient(linear, left top, right top, from(rgba(153,153,153,0.5)), color-stop(0.5, rgba(153,153,153,0.5)), color-stop(0.5, transparent), to(transparent) );
  background-image:
  -webkit-linear-gradient(left, #999 10px, transparent),
  -webkit-linear-gradient(left, rgba(153,153,153,0.5) 10px, transparent 10px);
  background-image:
  linear-gradient(to right, #999 10px, transparent),
  linear-gradient(to right, rgba(153,153,153,0.5) 10px, transparent 10px);
  vertical-align: middle;
  -webkit-animation: animation26 1s linear infinite;
  animation: animation26 1s linear infinite;
}

@-webkit-keyframes animation26 {
  0% {
    background-position: 0 0, left;
  }
  32% {
    background-position: 0 0, left;
  }
  33% {
    background-position: 50% 0, left;
  }
  66% {
    background-position: 50% 0, left;
  }
  67% {
    background-position: 100% 0, left;
  }
  100% {
    background-position: 100% 0, left;
  }
}
@keyframes animation26 {
  0% {
    background-position: 0 0, left;
  }
  32% {
    background-position: 0 0, left;
  }
  33% {
    background-position: 50% 0, left;
  }
  66% {
    background-position: 50% 0, left;
  }
  67% {
    background-position: 100% 0, left;
  }
  100% {
    background-position: 100% 0, left;
  }
}

/*--------------------------------------------------------------------------
   accordion acd_
----------------------------------------------------------------------------*/
/*ベース*/
.acd_toggle {
	display: none;
}
.acd_Label {		/*タイトル*/
    /* padding: 1em; */
    /*display: block;*/
    /* color: #333333 !important; */
    /* background: #019ac6; */
	padding-right: 15px;
    padding-left: 15px;
	cursor:pointer;
}

.acd_Label h2 {
    margin: 30px 0 0 0 !important;
	font-size: 140% !important;
    color: #2d3033 !important;
    border-left: #CCC 7px solid !important;
    padding-left: 8px !important;
}

.acd_Label::before{		/*タイトル横の矢印*/
    content: "";
    width: 8px;
    height: 8px;
    border-top: 2px solid #333;
    border-right: 2px solid #333;
    -webkit-transform: rotate(45deg);
    position: absolute;
    top: calc( 50% - -8px );
    right: -5px;
    transform: rotate(135deg);
}
.acd_Label,
.acd_content {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	transform: translateZ(0);
	transition: all 0.3s;
}
.acd_content {		/*本文*/
	height: 0;
	margin: 10px 0 !important;
    padding: 0 !important;
    overflow: hidden;
    border-top: 1px solid #ddd;
}
.acd_toggle:checked + .acd_Label + .acd_content {	/*開閉時*/
	height: auto;
	padding:0px ;
	transition: all .3s;
}
.acd_toggle:checked + .acd_Label::before {
	transform: rotate(-45deg) !important;
}

/* ==========================================================================
	$miryoku
========================================================================== */
.miryoku {
	background: #FFF 50% 50% no-repeat;
	background-size:cover;
    height: 480px;
    margin: 30px 0;
    padding: 0;
}
.miryoku .waku_l {
	background-color:rgba(255,255,255,0.85);
	padding:15px;
	/*margin-top:15px;*/
}
.miryoku a h4 { color:#333; }
.miryoku a h4:hover { color:#A0082C }
.miryoku .waku_l h4 {
	margin:0 auto;
	font-weight:bold;
	font-size:22px;
}
.miryoku .waku {
	background-color:rgba(255,255,255,0);
	padding:25px;
	height: 480px;
}
.miryoku .waku .col-md-3 {
	padding-right:5px;
}

@media screen and (max-width: 992px) {
.miryoku {
	background: none !important;
    height: auto !important;
}
.miryoku .waku_l {
	border-top: solid 10px #EFECD9;}
.miryoku .waku {
	height: auto !important;
	background-color:#EFECD9;
}
}

@media screen and (max-width: 768px) {
.miryoku .waku_l h4 {
	font-size:18px;
	z-index:999;
}
.miryoku .waku_l strong { font-weight:normal}
}




/* ==========================================================================
  Slick LazyLoad 強制回避
========================================================================== */
.slbox img.lazy-hidden {
    opacity: 1 !important;
    background-color: transparent !important;
}
.lazy-loaded {
    -webkit-transition: opacity 1s;
    -moz-transition: opacity 1s;
    -ms-transition: opacity 1s;
    -o-transition: opacity 1s;
    transition: opacity 1s;
    opacity: 1 !important;
}


/* ------------------------------------------------------------------------------
	CANOVIANO CAFE
-------------------------------------------------------------------------------*/

/*========= SVG操作手書き風にするためのCSS ===============*/

#mask .st0{
    fill:none;
    stroke:#fff;
    stroke-width:90;/*線の太さを指定する*/
    stroke-linecap:round;
    stroke-linejoin:round;
    stroke-miterlimit:10;
    stroke-dasharray: 1500; /* 線の間隔を指定する */
    stroke-dashoffset:1500; /* 線の位置を指定する */
}

.shutter1{
  width: 100%;
  height: 800px;
  position:absolute;
  top:0;
/*  left:0;
  right:0;
  bottom:0;*/
  margin: auto;
  background-color:transparent;
  z-index:999;
/*  animation: logo 0.3s linear 5.2s forwards;*/
}
.logo_ccf {
  position: absolute;
  width: 600px;
  top: 45%;
  left: 50%;
  transform: translateY(-50%) translateX(-50%);
  margin: -30px auto 0 auto;
  animation: logo 0.3s linear 5.2s forwards;
}

.shutter2{
  width: 100%;
  height: 800px;
  position:absolute;
  top:0;
/*  left:0;
  right:0;
  bottom:0;*/
  margin: auto;
  background-color:#fff;
  z-index:99;
/*  animation: Shutter1 1s linear 6s forwards;*/
}
.shutter2 svg{
  width:500px;
}
.shutter2 .opensvg{
  fill:#c69047;
}
.text_ccf {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateY(-45%) translateX(-50%);
  text-align:center;
  margin: 0 auto 30px auto;
  /*color:#000;
  animation: Shutter1 1s linear 6s forwards;*/
}

/*keyframe*/

@keyframes Shutter1 {
0%{
    opacity: 1;
}
99%{
    opacity: 0;
}
100%{
    opacity: 0;
    visibility: hidden;
}
}
@keyframes logo {
0%{
    opacity: 1;
}
99%{
    opacity: 0;
}
100%{
    opacity: 0;
    visibility: hidden;
}
}
@keyframes Shutter2 {
0%{
    opacity: 1;
}
99%{
    opacity: 0;
}
100%{
    opacity: 0;
    visibility: hidden;
}
}
@keyframes text {
0%{
    opacity: 1;
}
99%{
    opacity: 0;
}
100%{
    opacity: 0;
    visibility: hidden;
}
}

.canomainimg {
    height: 800px;
    overflow: hidden;
}

.canomainimg .flexslider .slides img {
    height: 100%;
    width: auto;
  position: absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
}

@media screen and (min-width: 769px) {
.canomainimg .flexslider .slides li {
height: 800px !important;
max-height: 800px !important;
}
.canomainimg .flexslider .slides img {
width: 100%;
height: auto;
}
}

@media screen and (min-width: 769px) and (max-width: 1200px) {
.canomainimg .flexslider .slides li {
height: 800px !important;
max-height: 800px !important;
}
.canomainimg .flexslider .slides img {
height: 100%;
width: auto;
}
}

@media screen and (max-width: 768px) {
.logo_ccf {
  width: 90%;
}
.shutter2 svg{
  width:300px;
}

.shutter1, .shutter2, .canomainimg, .canomainimg .flexslider .slides li, .canomainimg .flexslider .slides img {
  height: 650px !important;
}
}

.midashi {
  position: relative;
  display: inline-block;
  padding: 0 55px;
font-size: 1.4em;
line-height: 1.4em;
}

.midashi:before, .midashi:after {
  content: '';
  position: absolute;
  top: 50%;
  display: inline-block;
  width: 35px;
  height: 1px;
  border-top: solid 1px #555;
}

.midashi:before {
  left:0;
}
.midashi:after {
  right: 0;
}

@media screen and (max-width: 560px) {
.midashi {
  padding: 0 45px;
}
.midashi:before, .midashi:after {
  width: 25px;
}
}

#re_cano {
position: fixed;
bottom:0;
width:100%;
z-index: 99;
  opacity: 0;
  bottom:-110px;
}


#re_cano .btn,
#re_cano a.btn,
#re_cano button.btn {
  font-size: 1.6rem;
  font-weight: 700;
  line-height: 1.5;
  position: relative;
  display: inline-block;
  padding: 1rem 4rem;
  cursor: pointer;
  -webkit-user-select: none;
  -moz-user-select: none;
  -ms-user-select: none;
  user-select: none;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  text-align: center;
  vertical-align: middle;
  text-decoration: none;
  letter-spacing: 0.1em;
  color: #212529;
  border-radius: 0rem;
}

#re_cano a.btn--orange {
  color: #FFF;/*color: #c69047;*/
  background-color: #c69047;/*background-color: #FFF;*/
  letter-spacing: 0 !important;
  width: 100%;
}

#re_cano a.btn--orange:hover {
  color: #FFF !important;/*color: #c69047;*/
  background-color: #c69047 !important;/*background-color: #FFF;*/
  opacity:0.7;
}

#re_cano a.btn-c {
  font-size: 1.8rem;
  position: relative;
  padding: 2rem;/*padding: 2rem 5rem 2rem 4rem;*/
}

#re_cano a.btn-c i.fa {
  margin-right: 1rem;
}

/*#re_cano a.btn-c:before {
  font-family: "Font Awesome 5 Free" !important;
  font-size: 1.6rem;
  line-height: 1;
  position: absolute;
  top: calc(50% - .8rem);
  right: 1rem;
  margin: 0;
  padding: 0;
  content: "\f102";
color: #c69047;
}*/

#re_cano i {
  position: absolute;
  top: calc(50% - .8rem);
  right: 1rem;
  margin: 0;
  padding: 0;
}

/*@media screen and (max-width: 768px) {
#re_cano a.btn--orange {
}
#re_cano a.btn-c {
  padding: 1rem 4rem;
}
}*/

