﻿/* ------------------------------------------------------------------------------
	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);

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

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

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

.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: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;
}

/*グリッド高さそろえ（親要素に）*/
.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;}

.pd10 {padding: 10px !important;}
.pd20 {padding: 20px !important;}
.pd30 {padding: 30px !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;
}

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

/* ------------------------------------------------------------------------------
	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: "Open Sans", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ",  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;}
}

.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;
}
#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_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;}
}*/






	
/* ------------------------------------------------------------------------------
	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 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:285px;/*left:545px;*/
	top:10px;
	height:20px;
	line-height:1.2;
}
.menu02 a {
	display:block;
	font-size:85%;
	color:#000;
	padding:3px 10px;
	margin-right:10px;
	background-color:#BBB;
	border:#999 1px solid;	
}

.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('https://www.hotelgajoen-tokyo.com/wp/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(160, 8, 44, 0.9);
	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;
}
.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, .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, .work p {
	color: #fff !important;
	margin: 0;
	opacity: 0;
}
a.work-box h3 {
	color: #fff !important;
}
.work span {
	font-size: 45px;
}
.work h2, .page .work h3 {
	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);
}
.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);
}
.work-box:hover .overlay {
	opacity: 1 !important;
}
.work-box:hover .overlay h2, .page .work-box:hover .overlay h3, .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;
}
}

 /*横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;
}
.foot01 a {
	font-size:100%;
	color:#000;
}
@media screen and (max-width: 640px) {
	.foot01 {
	font-size:80% !important;
	line-height:1.5 !important;
	padding-top:4px !important;
}
}

.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;}
.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;
}

.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;
}
.foot05 a {
	color:#999;
	font-size:200%;
	margin-left:20px;
}
.foot05 a:first-child {
	margin-left:0;
}

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

/* ------------------------------------------------------------------------------
	NEW Foot
-------------------------------------------------------------------------------*/
.foot04-1 {
	position:absolute;
	text-align:left;
	top:80px;
	left:270px;
	height:52px;
	width:600px;
	line-height:1.4em;
	font-size:90%;
	color:#000;
}
.foot04-1 li {
	color:#999;
	width:180px;
	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:280px !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:180%;
}
}

/* ------------------------------------------------------------------------------
	 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;
   }
}


/*--------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 span {
display:inline-block !important;
vertical-align: middle !important;
line-height:normal !important;
	margin-top:-5px;
}
}

@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;
}
}
@media screen and (max-width: 480px){
.TAB_Btn.line2 {
	margin-top:1% !important;
	flex-basis: 49% !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;
}





