@charset "utf-8";
/* ===================================================
	rakuten CSS
====================================================== */

.mincho{ font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased;}
.gothic{ font-family: "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased;}
.en{ font-family: "Yu Mincho", YuMincho, "Hiragino Mincho ProN", serif; -moz-osx-font-smoothing: grayscale; -webkit-font-smoothing: antialiased;}

/* ----- visual ----- */
#visual { width: 1500px; height: 900px; position: relative; z-index: 1;}
#visual #slide { position: relative; z-index: 1;}
#visual .vis { height: 900px; left: 0; position: absolute; top: 0; width: 100%; z-index: 1;}
#visual .vis .slide-text { position: absolute; color: #d4d1ca; bottom: 30px; right: 60px; font-size: 14px; line-height: 1.3; z-index: 10;}
#visual .vis.vis01 { background: #020302 url(../../img/slide01.png) no-repeat scroll center top;}
#visual .vis.vis02 { background: #020302 url(../../img/slide02.png) no-repeat scroll center top;}
#visual .vis.vis03 { background: #020302 url(../../img/slide03.png) no-repeat scroll center top;}
#visual .vis.vis04 { background: #020302 url(../../img/slide04.png) no-repeat scroll center top;}
#visual .vis.vis05 { background: #020302 url(../../img/slide05.png) no-repeat scroll center top;}
#visual .vis.vis06 { background: #020302 url(../../img/slide06.png) no-repeat scroll center top;}
#visual .no_child{ position: absolute; bottom: -20px; right: 5px; z-index: 100; animation: vertical 1s ease-in-out infinite alternate;}
@keyframes vertical { 0% { transform:translateY(-10px); } 100% { transform:translateY(0px); } }


/* ---------------------------------------------------
	Global Header
------------------------------------------------------ */
#g_header { position: absolute; top: 0; right: 0; left: 0; margin: 0 auto; width: 1240px; height: 110px; color: #fff;}
#g_header.home { width: 1500px;}
.hd_inner{ width: 100%; height: 100%; display: flex; justify-content: flex-end;}
.hd_logo{ width: 130px; height: auto; margin: 30px auto 0 10vw; filter: drop-shadow(0px 0px 5px rgba(0,0,0,0.8)); z-index: 100;}

.box_eyecatch.lower .hd_logo{ margin: 30px auto 0 30px;}

.hd_logo img{ width: 100%; height: auto;}
.hd_btns{ display: flex; justify-content: flex-end; align-items: center; font-size: 16px; line-height: 1.1; filter: drop-shadow(0px 0px 5px rgba(0,0,0,0.8)); margin: 0 280px 0 0; z-index: 100;}

.box_eyecatch.lower .hd_btns{ margin: 0 180px 0 0; }

.hd_btns li{ margin: 0 8px;}
.hd_btns li a{ color: #fff; padding: 10px 5px; display: block; position: relative; white-space: nowrap;}
.hd_btns li a:hover{ color: #fff; text-decoration: none;}
.hd_btns li a::after { position: absolute; left: 0; content: ''; width: 100%; height: 1px; background: #fff; bottom: -1px; transform: scale(0, 1); transform-origin: center top; transition: transform 0.3s; }
.hd_btns li a:hover::after { transform: scale(1, 1); }
.hd_book{ width: 150px; height: 110px; position: absolute; top: 0; right: 110px; z-index: 100;}

.box_eyecatch.lower .hd_book{right: 0;}

.hd_book a{ width: 100%; height: 100%; padding: 0; background-color: #666362; font-size: 16px; color: #fff; display: flex; justify-content: center; align-items: center; box-sizing: border-box; transition: background 0.5s;}
.hd_book a:hover{ color: #fff; text-decoration: none; background-color:#84807F;}

/* ---------------------------------------------------
	Wrap 01 背景色ダークグレー
------------------------------------------------------ */
.wrap_01{ background: #191919; text-align: center; overflow: hidden;}

/* ---------------------------------------------------
	Wrap 02 明るい画像パターン
------------------------------------------------------ */
.wrap_02{ background-color: #f1f0ec; background-image: url(../../img/sec_bg.png); background-size: 100px; text-align: center; overflow: hidden;}

#visual2 { width: 1240px; height: 607px; position: relative; z-index: 1; margin: 0 auto 50px;}
#visual2 #slide { position: relative; z-index: 1;}
#visual2 .vis { height: 607px; left: 0; position: absolute; top: 0; width: 1128px; z-index: 1;}
#visual2 .vis.vis01 { background: #020302 url(../../img/rooms_img_01.jpg) no-repeat scroll center top;}
#visual2 .vis.vis02 { background: #020302 url(../../img/rooms_img_02.jpg) no-repeat scroll center top;}
#visual2 .vis.vis03 { background: #020302 url(../../img/rooms_img_03.jpg) no-repeat scroll center top;}
#visual2 .vis.vis04 { background: #020302 url(../../img/rooms_img_04.jpg) no-repeat scroll center top;}
#visual2 .vis.vis05 { background: #020302 url(../../img/rooms_img_05.jpg) no-repeat scroll center top;}
#visual2 .vis.vis06 { background: #020302 url(../../img/rooms_img_06.jpg) no-repeat scroll center top;}
#visual2 .no_child{ position: absolute; bottom: -20px; right: 5px; z-index: 100; animation: vertical 1s ease-in-out infinite alternate;}
@keyframes vertical { 0% { transform:translateY(-10px); } 100% { transform:translateY(0px); } }


/* ---------------------------------------------------
	Section Eyecatch
------------------------------------------------------ */
.box_eyecatch{ position: relative; overflow: hidden; width: 1500px; /*height: 900px;*/ left: 50%; -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); }

.box_eyecatch >img.slide_tit { position: absolute; left: 160px; bottom: 210px; z-index: 10;}

/* ---------------------------------------------------
	Global Footer
------------------------------------------------------ */
#g_footer{ background: url("../../img/sec_bg.png"); background-size: 100px; padding: 80px 0 0;}
.ft_box_01{ width: 1240px; margin: 0 auto; background: url("../img/ft_txt_logo.png") no-repeat center center; background-size: cover; color: #dedede; padding: 130px 0 100px; text-align: center;}
.ft_txt{ font-size: 22px; line-height: 1.1; padding: 0 0 30px;}
.ft_book{ width: 400px; margin: 0 auto;}
.ft_book a{ width: 100%; height: 65px; padding: 0; background-color: #fff; font-size: 16px; color: #2c2a2a; display: flex; justify-content: center; align-items: center; box-sizing: border-box; transition: all 0.5s;}
.ft_book a:hover{ text-decoration: none; background-color: #84807F; color: #fff}
.ft_conf{ padding: 20px 0; text-align: center;}
.ft_conf a{ font-size: 16px; display: inline-block; position: relative; padding: 10px 2px; color: #dedede;}
.ft_conf a::after { position: absolute; left: 0; content: ''; width: 100%; height: 1px; background: #dedede; bottom: 0; transform: scale(1, 1); transform-origin: center top; transition: transform 0.3s; }
.ft_conf a:hover::after { transform: scale(0, 1); }
.ft_conf a:hover{ text-decoration: none;}
.ft_tel{ text-align: center; font-size: 20px; line-height: 1.1;}
.ft_tel .tel-link{ font-size: 34px; color: #dedede;}
.ft_open{ text-align: center; font-size: 14px; line-height: 1.1; padding: 10px 0 0;}
.ft_box_02{ padding: 70px 0 60px; text-align: center; color: #4f443a;}
.ft_logo{ padding: 0 0 30px; width: 221px; margin: 0 auto;}
.ft_logo img{ width: 100%; height: auto;}
.ft_name{ font-size: 18px; padding: 0 0 20px; letter-spacing: 0.2em;}
.ft_addr{ font-size: 16px; padding: 0 0 10px; letter-spacing: 0.15em;}
.ft_tel{ font-size: 16px; padding: 0 0 30px; letter-spacing: 0.15em;}
.ft_btns{ display: flex; justify-content: center; flex-wrap: wrap; font-size: 16px; width: 1100px; margin: 0 auto;}
.ft_btns li{ margin: 0 15px; letter-spacing: 0.15em;}
.ft_btns li a{ padding: 10px 5px; display: inline-block; position: relative; color: #4f443a;}
.ft_btns li a::after { position: absolute; left: 0; content: ''; width: 100%; height: 1px; background: #4f443a; bottom: 0; transform: scale(0, 1); transform-origin: center top; transition: transform 0.3s; }
.ft_btns li a:hover::after { transform: scale(1, 1); }
.ft_btns li a:hover{ text-decoration: none; color: #4f443a;}
.ft_copyright{ display: inline-block; font-size: 10px; padding: 50px 0 0;}
