@charset "utf-8";
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700&display=swap');

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */

html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, font, ins, kbd, q, s, samp, small, strike, sub, sup, tt, var, dl, dt, dd, ul, li, fieldset, form, label, legend, caption {
border:0;
font-family:inherit;
font-size:100%;
font-style:inherit;
font-weight:inherit;
margin:0;
outline:0;
padding:0;
vertical-align:baseline;
}

:focus{
outline:0;
}

ul{
list-style:none;
}

caption{
font-weight:normal;
text-align:left;
}

blockquote:before,blockquote:after,q:before,q:after{
content:"";
}

blockquote,q{
quotes:"" "";
}

a img{
border: 0;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
display: block;
}

@font-face {
}

body{
font-size: 17px;
font-family: 'Quicksand', "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", 'メイリオ', Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
position: relative;
font-weight: 400;
/*width: 100vw;*/
height: 100vh;
animation: bugfix infinite 1s;
-webkit-animation: bugfix infinite 1s;
}

@keyframes bugfix {
  from {
    padding: 0;
  }
  to {
    padding: 0;
  }
}
@-webkit-keyframes bugfix {
  from {
    padding: 0;
  }
  to {
    padding: 0;
  }
}
#overlay-button {
  position: absolute;
  right: 10px;
  top: 5px;
  padding: 26px 11px;
  z-index: 5;
  cursor: pointer;
  user-select: none;
}
#overlay-button span {
  height: 4px;
  width: 35px;
  border-radius: 2px;
  background-color: #fff;
  position: relative;
  display: block;
  transition: all .2s ease-in-out;
}
#overlay-button span:before {
  top: -10px;
  visibility: visible;
}
#overlay-button span:after {
  top: 10px;
}
#overlay-button span:before, #overlay-button span:after {
  height: 4px;
  width: 35px;
  border-radius: 2px;
  background-color: #fff;
  position: absolute;
  content: "";
  transition: all .2s ease-in-out;
}
#overlay-button:hover span, #overlay-button:hover span:before, #overlay-button:hover span:after {
  background: #fff;
}

input[type=checkbox] {
  display: none; 
  
}

input[type=checkbox]:checked ~ #overlay {
  visibility: visible; 
}

input[type=checkbox]:checked ~ #overlay-button:hover span, input[type=checkbox]:checked ~ #overlay-button span {
  background: transparent;
  
  
}
input[type=checkbox]:checked ~ #overlay-button span:before {
  transform: rotate(45deg) translate(7px, 7px);
  background: #fff;

}
input[type=checkbox]:checked ~ #overlay-button span:after {
  transform: rotate(-45deg) translate(7px, -7px);
  background: #fff;


}

#overlay {
  height: 100vh;
  width: 100vw;
  background: rgba(0, 0, 34, 0.9);
  z-index: 2;
  visibility: hidden;
  position: fixed;
}
#overlay.active {

}
#overlay ul {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-direction: column;
  text-align: center;
  height: 100vh;
  padding-left: 0;
  list-style-type: none;
}
#overlay ul li {
  padding: 0.5em;
}
#overlay ul li a {
  color: #fff;
  text-decoration: none;
}
#overlay ul li a:hover {
  color: #ccc!important;
}

.clear { clear:both;}


/* リンク設定
------------------------------------------------------------*/

a{
margin:0;
padding:0;
text-decoration:none;
outline:0;
vertical-align:baseline;
background:transparent;
font-size:100%;
font-weight:normal;
color:#666;
}

a:hover, a:active{
outline:none;
color:#EB6100;
}

a:hover img {
	opacity:0.5;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
}

.linkbtn {
padding: 10px 40px 10px 40px;
background: #005CA2;
color: #FFFFFF;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
text-decoration:none;
line-height: 45px;
}
a.linkbtn:hover {
color: #FFFFFF;
background: #00406F;
}

.linkbtn2 {
padding: 10px 40px 10px 40px;
background: #fff;
color: #005CA2;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
text-decoration:none;
line-height: 45px;
}
a.linkbtn2:hover {
color: #005CA2;
background: #fff;
}

.linkbtn3 {
padding: 10px 40px 10px 40px;
background: #F16E0F;
color: #FFFFFF;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
text-decoration:none;
line-height: 45px;
}
a.linkbtn3:hover {
color: #FFFFFF;
background: #B5530B;
}

a.headerbtn:hover {
color: #FFFFFF;
}

.anchor { margin-top:-100px; padding-top:100px;}

/**** Clearfix ****/

.nav .panel:before,nav .panel:after, #mainNav:before,#mainNav:after, .newsTitle:before,.newsTitle:after{
content:"";
display:table;
}

nav.panel:after,#mainNav:after,.newsTitle:after{
clear: both;
}

nav.panel,#mainNav,.newsTitle{
zoom: 1;
}

.sideplan {
width: 50px;
position: fixed;
top: 100px;
right:0;
z-index: 99999;
margin: 0px 0px 0px 0px;
padding: 0px 0px 0px 0px;
}
.sideplan a:hover img {
	opacity:1;
	filter: alpha(opacity=80);
	-ms-filter: "alpha(opacity=80)";
}

/* レイアウト
------------------------------------------------------------*/

#wrapper{
margin:0 auto;
width:100%;
display: flex;
}
#wrapper * {
min-height: 0;
min-width: 0;
}

#column{
margin:0 auto;
width:1110px;
}

.inner{
margin:0 auto;
width:1110px;
}
.topinner{
margin:0 auto;
max-width:1600px;
width:96%;
}


#content{
padding:0px 0px 0px 320px;
flex: 1;
}

#sidebar{
width:260px;
padding: 30px;
height: 100vh;
background-image: url(images/common/side_bg2.jpg);
background-position: center top;
background-color: #DDF0FF;
position: fixed;
}

#footer{
clear:both;
padding-top:15px;
background-color: #F7F7FF;
} 


/* ヘッダー
------------------------------------------------------------*/

.headertop{
background-color: #1A3167;
color:#FFFFFF;
height: 30px;
}

.headerbtn {
color: #FFFFFF;
padding: 10px;
background: #034B97;
border-radius: 5px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
-ms-filter: "alpha(opacity=80)";
-moz-opacity: 0.8;
-khtml-opacity: 0.8;
text-decoration:none;
line-height: 47px;
font-weight: bold;
}

.cicotel{
padding-top: 2px;
}

#menufixed{
z-index: 50000;
position: fixed;
width: 100%;
height: 70px;
top:0px;
display: none;
}

#headerWrap {
}
.headerinner{
margin:0 auto;
width:96%;
}

#header h1{
padding-top:40px;
font-weight:normal;
float:left;
}

#header h2{
color:#000000;
padding: 13.5px 0px;
float:left;
}
#header h2 img{
width:190px;
vertical-align: bottom;
}
.hotelname1 {
display: block;
font-size: 20px;
line-height: 1em;
}
.hotelname2 {
display: block;
font-size: 36px;
line-height: 1.5em;
}

#header h3{
color:#1A3167;
font-weight:normal;
}


.headerlang{
float:left;
padding-top: 33px;
}

.headerline{
border-top: 1px solid #ccc;
}

.headermenu{
margin-top: -5px;
font-size: 90%;
}
.sns{
margin-top: 15px;
text-align:right;
}

.contact{
float:right;
padding: 28px 50px;
background-color: #000;
height: 24px;
}
.header-r{
float:right;
padding: 15px 0px 5px 0px;
height: 50px;
margin-right: 100px;
}


.contact p{
}

.tel{
margin-right: 10px;
}


.spreservebtn{
display:none;
}
#reserve { font-size: 90%;}
.reservecontents { float:left;}
.reservetitle { color: #5F85CC;}


/* トップページ　メイン画像
----------------------------------*/

#mainImg{
background-color: #555;
background-position: center top;
width: 100%;
position: relative;
text-align: center;
background-repeat: no-repeat;
/*background-attachment: fixed;*/
box-shadow: 0px 0px 17px -13px #000 inset;
}

#mainImg h2 {
color: #FFF;
text-shadow: 0px 0px 15px #000,0px 0px 15px #000;
position: absolute;
top: 30%;
width: 100%;
box-sizing: border-box;
font-size: 56px;
font-weight:bold;
line-height: 90px;
margin-bottom: 10px;
}

#mainImg #sub_txt {
height: 50%;
width: 100%;
position: absolute;
bottom: 0px;
}

#mainImg p {
}
#mainImg img{
width:100%;
height:auto;
vertical-align:bottom;
}
.mainImglogo{
position: absolute;
width: 300px;
height: 132px;
z-index: 15000;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

#mainImg video{
width:100%;
height:auto;
vertical-align: bottom;
}

.slide1 {
width: 60%;
float: left;
}
.slide2 {
width: 40%;
float: right;
}

.slidetext {
position:absolute;
top: 8%;
left: 5%;
}
.prev,.next {
position: absolute;
top: 43%;
width: 50px;
height: 50px!important;
z-index:5000;
}
.prev {
background-image:url(images/top/arrow_l.png);
background-repeat:no-repeat;
left:-70px;
}
.next {
background-image:url(images/top/arrow_r.png);
background-repeat:no-repeat;
right:-70px;
}

.prev2,.next2 {
position: absolute;
top: 43%;
width: 50px;
height: 50px!important;
z-index:5000;
}
.prev2 {
background-image:url(images/top/arrow_l.png);
background-repeat:no-repeat;
left:-3%;
}
.next2 {
background-image:url(images/top/arrow_r.png);
background-repeat:no-repeat;
right:-3%;
}

/* ページタイトル
----------------------------------*/
.pagettl {
background-color: #666;
color: #034B97;
padding: 30px 0px ;
text-align: center;
font-size: 200%;
clear: both;
background-repeat: no-repeat;
background-position: top center;
}
.ttl_about {
background-image: url(images/about/ttlimg.jpg);
}
.ttl_suposho {
background-image: url(images/suposho/ttlimg.jpg);
}
.ttl_products {
background-image: url(images/products/ttl_bg.jpg);
}
.ttl_access {
background-image: url(images/access/ttlimg.jpg);
}
.ttl_matching {
background-image: url(images/l-matching/ttlimg.jpg);
}
.ttl_mikage {
background-image: url(images/mikage/ttlimg.jpg);
}
.ttl_seminar {
background-image: url(images/seminar/ttlimg.jpg);
}
.ttl_taisou {
background-image: url(images/taisou/ttlimg.jpg);
}
.ttl_mainevent {
background-image: url(images/mainevent/ttlimg.jpg);
}
.ttl_common {
background-image: url(images/common/ttl_bg.jpg);
}



.ttlimg {
margin:0 auto;
width:100%;
max-width:1600px;
}

.ttlimg img {
width:100%;
max-width:1600px;
}

/* タイポグラフィ
------------------------------------------------------------*/

#wrapper h1 {
margin-bottom:70px;
font-size:200%;
font-weight: normal;
line-height: 70px;
color: #666666;
text-align: center;
position: relative;
}
#wrapper h1 span {
font-size:50%;
font-weight: normal;
text-align: center;
display: block;
line-height: 20px;
}
#wrapper h1::after {
  content: "";
  position: absolute;
  margin: auto;
  left: 0;
  right: 0;
  bottom: -30px;
  width: 68px;
  border-bottom: 2px solid #005CA2;
}

#wrapper h2{
color: #FFFFFF;
font-size: 140%;
padding: 12px 25px;
margin-bottom: 40px;
background: #005CA2;
border-radius: 5px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
-ms-filter: "alpha(opacity=80)";
-moz-opacity: 0.8;
-khtml-opacity: 0.8;
}

#wrapper h3{
border-left: 6px solid #003;
font-size:130%;
font-weight: bold;
padding-left: 15px;
line-height: 26px;
margin-bottom: 15px;
}
#wrapper h3 span{
font-weight:normal;
color: #000;
font-size:60%;
}
#wrapper h4{
border-bottom: 3px solid #EAEAEA;
color: #005CA2;
font-size:130%;
font-weight: bold;
padding-bottom: 10px;
margin-bottom: 15px;
}
#wrapper h4 span{
font-weight:normal;
color: #005CA2;
font-size:60%;
}

#wrapper h5{
color: #005CA2;
font-size:120%;
font-weight: bold;
}
#wrapper h5 span{
font-weight:normal;
color: #005CA2;
font-size:60%;
}

#wrapper h6{
color: #24B55F;
font-size:120%;
font-weight: bold;
}

.text_gold { color: #B29158; font-weight:bold;}
.text_red { color: #FF0000; font-weight:bold;}
.text_blue { color: #003978;}
.ttl_tokuten { color: #CC0000; font-weight:bold; font-size: 120%; margin-bottom: 10px;}


#wrapper img {
max-width: 100%;
height:auto;
}

#wrapper ul{
list-style-type: disc;
margin-left: 0px;
}


.post p{
padding-bottom:15px;
}

.post ul{
margin:10px 0 20px 20px;
}

.post ul li{
padding-left:5px;
list-style:disc;
}

.post ol{
margin:0 0 10px 30px;
}

.post ol li{
list-style:decimal;
}

.post h1{
margin:15px 0 25px;
padding:15px 0;
font-size:150%;
font-weight:bold;
border-bottom:3px solid #000000;
}

.post h2{
margin:15px 0 25px;
padding:15px 0;
font-size:130%;
font-weight:bold;
border-bottom:2px solid #000000;
}

.post h3{
margin:15px 0 25px;
padding:15px 0;
font-size:120%;
font-weight:bold;
border-bottom:1px solid #000000;
}

.post h4{
margin:15px 0 10px;
padding:15px 0;
font-size:110%;
font-weight:bold;
}

.post h5{
margin:15px 0 10px;
padding:15px 0;
font-size:110%;
font-weight:bold;
}

.post h6{
margin:15px 0 10px;
padding:15px 0;
font-size:110%;
font-weight:bold;
}

.post blockquote {
clear:both;
padding:10px 0 10px 25px;
margin:10px 0 25px 0px;
border-left:5px solid #e9e9e9;
}
 
.post blockquote p{
padding:5px 0;
}

.post table{
border:1px #cccccc solid;
border-collapse:collapse;
border-spacing:0;
margin:10px 0 30px;
width:100%;
}

.post table th{
padding:15px;
border:#cccccc solid;
border-width:0 0 1px 1px;
font-weight:bold;
}

.post table td{
padding:15px;
border:1px #cccccc solid;
border-width:0 0 1px 1px;
}

.post dt{
font-weight:bold;
}

.post dd{
padding-bottom:10px;
}

.post img{
max-width:100%;height:auto;
}

img.aligncenter{
display:block;
margin:5px auto 30px auto;
text-align:center;
}

img.alignright{
margin:5px 0 30px 30px;
}

img.alignleft{
margin:5px 30px 30px 0;
}

.alignright{
float:right;
}

.alignleft{
float:left;
}

.right{
float:right;
}
.left{
float:left;
}

.w300 { width: 300px;}
.w330 { width: 330px;}
.w350 { width: 350px;}
.w380 { width: 380px;}
.w400 { width: 400px;}
.w500 { width: 500px;}
.w530 { width: 530px;}
.w550 { width: 550px;}
.w560 { width: 560px;}
.w580 { width: 580px;}
.w650 { width: 650px;}
.w700 { width: 700px;}
.w880 { width: 880px;}
.w10p { width: 10%;}
.w15p { width: 15%;}
.w20p { width: 20%;}
.w25p { width: 25%;}
.w30p { width: 30%;}
.w35p { width: 35%;}
.w40p { width: 40%;}
.w45p { width: 45%;}
.w50p { width: 50%;}
.w55p { width: 55%;}
.w60p { width: 60%;}
.w65p { width: 65%;}
.w70p { width: 70%;}
.w75p { width: 75%;}
.w80p { width: 80%;}
.w85p { width: 85%;}
.w90p { width: 90%;}
.ml15 { margin-left: 15px;}
.ml20 { margin-left: 20px;}
.ml30 { margin-left: 30px;}
.ml50 { margin-left: 50px;}
.ml60 { margin-left: 60px;}
.mr15 { margin-right: 15px;}
.mr20 { margin-right: 20px;}
.mr30 { margin-right: 30px;}
.mr50 { margin-right: 50px;}
.mr60 { margin-right: 60px;}
.mb10 { margin-bottom:10px;}
.mb30 { margin-bottom:30px;}
.mb50 { margin-bottom:50px;}
.mb100 { margin-bottom:100px;}
.mt30 { margin-top:30px;}
.pt10 { padding-top:10px;}

table.table1 {
border-collapse: collapse;
}

table.table1 td {
padding:10px;
border:1px solid #ccc;
}

table.table1 th {
background-color:#999;
color: #fff;
font-weight:normal;
padding:10px;
border:1px solid #ccc;
}

table.table2 {
border-collapse: collapse;
}

table.table2 td {
padding:10px;
border:1px solid #ccc;
}

table.table2 th {
background-color:#999;
color: #fff;
font-weight:normal;
padding:10px;
border:1px solid #ccc;
}

table.mailform {
border-collapse: collapse;
}

table.mailform td {
padding:20px 15px 20px 15px;
border-bottom:1px solid #ccc;
}

table.mailform th {
font-weight:normal;
text-align:left;
padding:20px 15px 20px 15px;
border-bottom:1px solid #ccc;
}

.must {
background-color:#CC0000;
padding: 3px 10px 3px 10px;
margin-left:10px;
color:#FFFFFF;
}

.center {
display:flex;
justify-content:center;
}

.box{
padding: 15px;
border: 2px solid #ccc;
background-color: #FFFFEE;
}

.box25p {
float:left;
width: 23%;
margin: 0px 1% 50px 1%;
}
.box25p img {
width: 100%;
height: auto;
}
.box30p {
float:left;
width: 30%;
margin: 0px 1.666% 50px 1.666%;
}
.box30p img {
width: 100%;
height: auto;
}

.box50p {
float:left;
width: 46%;
margin: 0px 2% 50px 2%;
}
.box50p img {
width: 100%;
height: auto;
}


.intabox {
float:left;
width: 29%;
margin: 0px 2.16% 30px 2.16%;
background-color: #E5F3FA;
}
.intabox img {
width: 100%;
display: block;
transition: 0.5s;
}
.intaimg img:hover {
transform: scale(1.1, 1.1);
}
.intaimg {
overflow: hidden;
width: 100%;
height: auto;
margin-bottom: 10px;
}
.intaboxinner {
padding: 0px 15px 15px 15px;
position: relative;
font-size: 90%;
}
.intatext {
text-overflow: ellipsis;
overflow: hidden;
height: 4em;
margin-bottom: 10px;
}

.youtube {
width: 100%;
}

.youtube iframe {
width: 640px;
height: 390px;
}

.q { 
background-image:url(images/common/q.png); 
background-repeat:no-repeat; 
line-height: 50px;
padding-left: 65px;
color: #034B97;
font-size: 120%;
font-weight:bold;
margin-bottom: 15px;
}

.a { 
background-image:url(images/common/a.png); 
background-repeat:no-repeat; 
padding-top: 7px;
padding-bottom: 6px;
padding-left: 65px;
margin-bottom: 60px;
}

.siaa { 
background-image:url(images/nrc/siaa.jpg); 
background-repeat:no-repeat; 
padding: 20px 0px 20px 100px;
}

.ranking { 
background-image:url(images/company/ranking.png); 
background-repeat:no-repeat; 
line-height: 50px;
padding-left: 65px;
font-size: 120%;
font-weight:bold;
margin-bottom: 10px;
}

.facittl {
background-color: #003978;
color: #fff;
font-size: 150%;
text-align: center;
padding: 10px 0;
}


/* 客室
------------------------------------------------------------*/
.room {
width: 270px;
float:left;
margin-bottom: 30px;
}

.room img {
width: 100%;
}

.roombtn {
color: #FFFFFF;
padding: 3px 15px 3px 15px;
background: #B29158;
text-align:center;
}

.roombtn a {
color: #FFFFFF;
}

.roombtn2 {
color: #FFFFFF;
padding: 3px 15px 3px 15px;
background: #B29158;
text-align:center;
}

.roombtn2 a {
color: #FFFFFF;
}

.roomttl{
font-size:150%;
margin-bottom: 25px;
}

.roomttl span{
font-weight:normal;
color: #333;
font-size:80%;
display:block;
}

.btn_close {
background-color:#999999;
color: #FFFFFF;
padding: 10px 15px;
line-height: 45px;
}

.txt_red { color:#CC0000; font-size: 130%; font-weight:bold;}
.slider-nav01,.slider-nav02,.slider-nav03,.slider-nav04,.slider-nav05 { margin-top: 15px;}
.slider-nav01 img,.slider-nav02 img,.slider-nav03 img,.slider-nav04 img,.slider-nav05 img { width:90%;}

.hide-area1,.hide-area2,.hide-area3,.hide-area4,.hide-area5,.hide-area6,.hide-area7{
    display: none;
}

.roomimg {
margin: 0px auto 100px auto;
width: 1000px;
}
.roomimg img {
width: 100%;
height: auto;
}

.roomarea {
background-color: #ddd;
padding: 40px;
margin: 0px auto 100px auto;
width: 1030px;
}

.roomfacittl {
border-bottom: 2px solid #999!important;
}

table.roomfaci {
border-collapse: collapse;
}

table.roomfaci td {
padding:15px;
border-bottom:1px solid #999;
}

table.roomfaci th {
font-weight:normal;
text-align:left;
padding:10px 15px 10px 15px;
border-bottom:1px solid #999;
}


/* お食事
--------------------------------------------------- */
#restslide {
  margin-bottom: 30px;
}
#restslide ul {
  padding: 0 10px;
  margin: 0;
  list-style: none;
  width: 5000px;
}
#restslide li {
  display: block;
  float: left;
  width: 400px;
  margin-right: 17.5px;
}
/* Button */
.btn_l,
.btn_r {
  position: absolute;
  top: 46px;
  margin: 0;
  padding: 0;
}
.btn_l {
  left: 0;
}
.btn_r {
  right: 0;
}

.slideinner {
  position: relative;
  width: 1110px;
  margin: 0 auto;
  overflow: hidden;
  clear: both;
}

.txt_minchou {
  font: 150% "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
  font-weight:bold;
  line-height: 40px;
}

.line { border-top: 2px solid #ccc;}

/* アクセス
--------------------------------------------------- */
.train {
background-image:url(images/access/train.jpg);
background-repeat:no-repeat;
padding-left: 55px;
line-height: 40px;
margin-bottom: 15px;
}
.car {
background-image:url(images/access/car.jpg);
background-repeat:no-repeat;
padding-left: 55px;
line-height: 40px;
margin-bottom: 15px;
}
.plane {
background-image:url(images/access/plane.jpg);
background-repeat:no-repeat;
padding-left: 55px;
line-height: 40px;
margin-bottom: 15px;
}

/* 観光
--------------------------------------------------- */
.sightbox {
border: 2px solid #ccc;
width: 540px;
padding: 10px;
margin-bottom: 30px;
}

.sightbox p {
font-size: 90%;
}

/* フォーム
------------------------------------------------------------*/
#contact input[type="text"], input[type="tel"], input[type="email"], textarea{
vertical-align:middle;
line-height:30px;
width: 100%;
height:30px;
padding:5px;
border:1px solid #d4d4d7;
border-radius:3px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
font-size:100%;
color:#555;
background:#fcfcfc;
}

textarea{
height:auto;
line-height:1.5;
}

#contact input[type="submit"],input[type="button"]{
padding:3px 40px;
background: #003978;
border:0;
border-radius:3px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
line-height:1.5;
font-size:120%;
color:#fff;
width: 150px;
}

#contact input[type="reset"],input[type="submit"].back{
padding:3px 40px;
background: #878787;
border:0;
border-radius:3px;
-webkit-border-radius:3px;
-moz-border-radius:3px;
line-height:1.5;
font-size:120%;
color:#fff;
width: 150px;
}

#reserve input[type="submit"],input[type="button"]{
color: #FFFFFF;
padding: 3px 15px 3px 15px;
background: #000168;
font-size: 90%;
border: 0;
}

input[type="submit"]:hover,input[type="reset"]:hover,input[type="button"]:hover{
background: #878787;
cursor:pointer;
}

*:first-child+html input[type="submit"]{padding:3px;}

.screen-reader-response, .wpcf7-validation-errors {
color: #ff0000;
font-weight: bold;
}
.screen-reader-response ul {
display: none;
}
.wpcf7-not-valid-tip {
color: #ff0000;
}

.grecaptcha-badge {
visibility: hidden !important;
}

/* サイドバー　ウィジェット
------------------------------------------------------------*/

.widget{
margin-bottom:50px;
}

.widget h3{
clear:both;
margin:0 0 10px;
padding:5px 0;
font-size:130%;
font-weight:bold;
border-bottom:3px solid #000000;
}

.widget h4{
color: #35B471;
border-left: 6px solid #35B471;
font-size:110%;
padding-left: 12px;
margin-bottom: 15px;
}

.submenu ul{
margin:0px 0 30px 0!important;
position: relative;
list-style-type: none!important;
}

.submenu li a{
display:block;
padding:15px 10px;
color:#333;
font-weight:bold;
border-bottom: 2px solid #034B97;
}
.submenu li a:after{
content: ">";
position: absolute;
right : 1em; /*左端からのアイコンまで*/
}

.submenu a:hover{
color:#fff;
background-color: #999;
}

p.banner{
padding-bottom:10px;
}

p.banner img{
width:100%;
}

#banners{
padding-bottom:10px;
}

#contactBanner{
width:320px;
height:80px;
padding-top:22px;
background:url(images/banner_tel.jpg) no-repeat;
background-size:320px;
}

#contactBanner p.tel{
display:inline;
padding-left:60px;
font-weight:bold;
font-size:20px;
}

#contactBanner p.tel::before{
content:"TEL : ";
}

.logo {
text-align: center;
margin-bottom: 20px;
}

.gnavi {
margin: 0px 0px 50px 0px!important;
}
.gnavi li {
list-style: none;
padding: 15px 10px;
border-bottom: 1px solid #fff;
}
.gnavi li a {
color: #fff;
}
.gnavi li a:hover {
color: #999;
}


.sidebtn {
background: #005CA2;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
text-decoration:none;
line-height: 45px;
display: block;
width: 100%;
text-align:center;
color: #FFFFFF;
}
a.sidebtn:hover {
color: #FFFFFF;
background: #005CA2;
}

.sidebtnmb {
margin-bottom: 20px;
}

.newsTitle{
clear:both;
color: #FFFFFF;
font-size:120%;
padding: 0px 15px 0px 15px;
margin-bottom: 7px;
background: #35B471;
border-radius: 5px;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
-ms-filter: "alpha(opacity=80)";
-moz-opacity: 0.8;
-khtml-opacity: 0.8;
}

.newsTitle h3{
float:left;
}

.newsTitle p{
float:right;
padding:5px 0px 0 10px;
font-size:80%;
}

.newsTitle p a{
color:#fff;
font-weight:normal;
}


.newsTitle p a:hover{
color:#cdcdcd;
}

.companybox {
border: 1px solid #ccc;
margin-bottom:30px;
}

.companybox h3 {
color: #35B471;
border-left: 6px solid #35B471;
font-size:120%;
padding-left: 12px;
margin-left: 15px;
}

.companybox p {
padding: 15px;
}

/* フッター
------------------------------------------------------------*/

#footerLogo{
float:left;
width:320px;
text-align:center;
padding-top:20px;
}

#footerLogo img{
width:150px;
}

#footer ul{
float:right;
width:750px;
padding-top:20px;
}

#footer ul ul{
display:none;
}

#footer ul li{
display:inline-block;
text-align:left;
padding:5px 0;
margin-left:15px;
}

#footer ul li a{
padding:0 0 0 12px;
color:#000000;
}

#footer ul li a:hover{
color:#cdcdcd;
}

#copyright{
clear:both;
padding:10px 0 50px 0px;
text-align:center;
font-size:12px;
color:#000;
}

#pagetop{
position:fixed;
right:30px;
bottom:0px;
font-size:40px;
color:#cdcdcd;
z-index: 20000;
}

.footerlogo{
}
.footerlogo img{
width:181px;
}
.sitemap{
}

.footercontents{
padding-top: 15px;
color: #000;
font-size: 85%;
}
.footercontents a {
color: #000;
}
.footercontents a:hover {
color: #999;
}

.footeradd{ color:#fff; margin-top: 50px;}
.partner{ font-size:68%;}

#footer h4{
font-size: 120%;
font-weight:bold;
color: #AB2326;
}
.cname {
font-size: 120%;
}


/* トップページ 最新記事3件 + 3つの画像
------------------------------------------------------------*/

.thumbWrap{
width:770px;
margin:0 -20px 20px 0;
}

.thumbWrap li{
display:inline-block;
width:233px;
margin:0 20px 20px 0;
vertical-align:top;
}

.thumbWrap img{
max-width:100%;
height:auto;
}

ul.thumbUnder h3{
padding-top:10px;
font-size:120%;
font-weight:bold;
}

ul.thumbUnder h3 span{
display:block;
}

ul.thumbUnder h3 a{
color:#000000;
}

ul.thumbUnder h3 a:hover{
color:#cdcdcd;
}

ul.thumbUnder li p{
margin:15px 0 10px;
}

ul.thumbUnder li img{
margin-top:10px;
}

ul.thumbUnder .thumbUnderDate{
font-size:80%;
}

.newst {
font-weight:bold;
text-align:center;
font-size: 130%;
margin-bottom:10px;
}

.newst span{
font-weight:normal;
font-size: 70%;
background: #1A3167;
text-decoration:none;
float:right;
padding: 2px 10px 2px 10px;
margin-top:3px;
}

.newst a{
color: #fff;
}

.news_ttl {
margin-bottom:25px;
font-size:200%;
font-weight:bold;
text-align: center;
color: #338ED2;
}
.news_ttl span{
font-weight:normal;
font-size:50%;
padding-left: 15px;
color: #666;
}

.searchandfilter p
{
	margin-top: 1em;
	display:inline-block;
}
.searchandfilter ul
{
	margin-left: 0px!important;
	margin-bottom: 15px;
	display:inline-block;
}
.searchandfilter li
{
	list-style: none;
	display:inline-block;
	padding-right:10px;
}

/* If in a widget area make a single column by adding display block  */
.widget-area .searchandfilter li, .widget-area .searchandfilter p
{
	display:block;
}
.searchandfilter label
{
	display:block;
}
.searchandfilter h4
{
border-bottom: 2px solid #EAEAEA!important;
font-size: 100%!important;
font-weight: normal!important;
padding-bottom: 5px!important;
margin-bottom: 5px!important;
}

.searchandfilter ul > li > ul:not(.children)
{
	margin-left:0;
}


#top_news {
}
#news {
}
#news ul {
margin-left: 0px;
}
#news li {
line-height: 35px;
vertical-align: middle;
list-style: none;
display: flex;
align-items: center;
background: #236BA0;
padding: 15px 20px;
margin: 0 0 10px 0;
border-radius: 10px;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;  
}

#news li .date {
  font-weight: normal;
  margin-right: 15px;
  color: #F5BD95;
  margin: 0 1em 0 0;
padding: 0 1em 0 0;
border-right: 1px solid #82BAE3;
font-size: 110%;
}
#news li .cate {
  font-weight: normal;
  margin-right: 15px;
  color: #338ED2;
  background-color: #fff;
}

.news_cate {
border-bottom: 1px solid #ddd;
font-size: 90%;
text-align: center;
margin-bottom: 5px;
padding-bottom: 3px;
}

.news_title {
margin-bottom: 5px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}

.news_text {
font-size: 85%;
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 3; /* 制限したい行数が3の場合 */
overflow: hidden;
}

.toptopics a { color: #000;}
.toptopics a:hover { color: #000;}

.toptopics .slick-slide {
width: 258px;
margin: 0 10px;
}

.sonsuru { padding: 0px 5px 0px 5px;}
.keieinavi { padding: 0px 5px 0px 5px;}
.newsletter { padding: 0px 28px 0px 29px;}
.newsinfo { padding: 0px 39px 0px 40px;}

#news li a{color:#fff;}
#news li a:hover{color:#fff;}

.newsbtn {
font-weight: bold;
padding: 10px 40px 10px 40px;
background: #efefef;
border-radius: 40px;
-webkit-border-radius: 40px;
-moz-border-radius: 40px;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
text-decoration:none;
line-height: 45px;
}
a.newsbtn {
color: #444;
}
a.newsbtn:hover {
color: #FFFFFF;
background: #FF7B1A;
}

.full_content {
        width:100%;
		height: 470px;
        position:relative;
        margin:10px auto 0;
        clear:both;
}
.tabmenu{
        width:17%;
        float:left;
        list-style:none;
        padding:10px 0 10px;
        text-align:center;
        display:block;
        cursor: pointer;
        color:#FFF;
        background:#aaa;
}

.active, .hover {
        color: #fff;
        background:#338ED2;
}

.tabmenu img:hover { opacity:0.7;
filter: alpha(opacity=70);
-ms-filter: "alpha( opacity=70 )";}

.tabactive {
        background:#338ED2;
}

.mr01{margin-right:1px;}

.tabcontent {
        width:100%;
        margin-top:5%;
        left:0;
	position:absolute; 
}

.tabcontent dl{max-width:1200px; margin: 20px auto;}

.tabcontent dl dt{
line-height: 35px;
vertical-align: middle;
list-style: none;
display: flex;
align-items: center;
background: #338ED2;
padding: 15px 20px;
margin: 0 0 10px 0;
border-radius: 10px;
-webkit-border-radius: 10px;
-moz-border-radius: 10px;  
}

.tabcontent .date {
  font-weight: normal;
  margin-right: 15px;
  color: #F5BD95;
  margin: 0 1em 0 0;
padding: 0 1em 0 0;
border-right: 1px solid #82BAE3;
font-size: 110%;
}
.tabcontent .cate {
  font-weight: normal;
  margin-right: 15px;
  color: #338ED2;
  background-color: #fff;
}
.tabcontent dl dt a{
color: #fff;
}

.tab_title{margin-top: 10px; padding: 5px 20px 5px; font-weight: bold; border-bottom: 1px #999 solid;}

.topaccess_ttl {
    margin-bottom: 10px;
    padding: 0px 30px;
    font-size: 150%;
    text-align: center;
    color: #fff;
    background-color: #835426;
    font-weight: bold;
}
#topaccess dl dt { float: left; width: 90px; text-align: center; color: #fff; background: #835426; }
#topaccess dl dd { margin: 0 0 10px 105px; }

.cate1 { background-color: #D14747;}
.cate2 { background-color: #0066CC;}
.cate3 { background-color: #33CC00;}
.cate4 { background-color: #FF9900;}
.cate5 { background-color: #CC0000;}



.bnrarea {
background-image: url("images/top/bnrbg.jpg");
background-repeat: no-repeat;
background-position: center top;
background-attachment: fixed;
height: 340px;
padding: 100px 0 ;
margin-bottom: 30px;
}

.nd_bg {
background-image: url("images/top/nd-bg.jpg");
background-repeat: no-repeat;
background-position: center top;
padding: 50px 0 ;
margin-bottom: 30px;
color: #FFFFFF;
font-size: 220%;
font-weight: bold;
}
.nd_ttl {
margin-bottom: 30px;
font-size: 115%;
border: 2px solid #fff;
}

.top_ttl {
margin-bottom:20px;
font-family: Trebuchet, Trebuchet MS, Tahoma, Arial, sans-serif;
font-size:350%;
font-weight:bold;
line-height: 50px;
color: #003978;
text-align: center;
}
.top_ttl span{
display:block;
font-weight:normal;
font-size:40%;
color: #666;
}

.about_bg {
background-image: url("images/top/about-bg.jpg");
background-repeat: no-repeat;
background-position: center top;
padding: 70px 0 ;
}
.company_bg {
background-image: url("images/top/company-bg.jpg");
background-repeat: no-repeat;
background-position: center top;
padding: 70px 0 ;
color: #fff;
}
.works_bg {
background-image: url("images/top/works-bg.jpg");
background-repeat: no-repeat;
background-position: center top;
padding: 70px 0 ;
}
.voice_bg {
background-image: url("images/top/voice-bg.jpg");
background-repeat: no-repeat;
background-position: center top;
padding: 70px 0 ;
}
.bg_gray {
background-color: #f3f3f3;
padding: 70px 0 ;
}
.bg_gray_ttl { font-size: 200%; font-weight: bold; margin-bottom: 25px; color: #EB6100; text-align: center;}
.bg_gray_ttl span { font-size: 50%; font-weight: normal; color: #999; padding-left: 15px;}
.infobox {
float:left;
width: 30%;
margin: 0px 1.666% 30px 1.666%;
padding-bottom: 20px;
background-color: #fff;
border-radius: 9px;
overflow: hidden;
}
.infobox img {
width: 100%;
height: auto;
margin-bottom: 5px;
}
.infoboxttl {
font-weight: bold;
text-align: center;
margin-bottom: 15px;
}
.infobtn {
font-weight: bold;
padding: 10px 40px 10px 40px;
background: #fff;
border: 1px solid #EB6100;
border-radius: 40px;
-webkit-border-radius: 40px;
-moz-border-radius: 40px;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
text-decoration:none;
line-height: 45px;
}
a.infobtn {
color: #EB6100;
}
a.infobtn:hover {
color: #FFFFFF;
background: #EB6100;
}

.bg_green {
background-color: #229F92;
color: #FFFFFF;
padding: 70px 0 ;
}
.bg_green_ttl { font-size: 150%; font-weight: bold; margin-bottom: 15px;}
.bg_blue {
background-color: #005CA2;
position: relative;
color: #fff;
padding: 70px 0 ;
box-sizing: border-box;
}

.bg_orange {
background-color: #C27F31;
position: relative;
color: #fff;
padding: 70px 0 ;
box-sizing: border-box;
}

.bg_brown {
background-color: #3E2820;
position: relative;
color: #fff;
padding: 70px 0 ;
box-sizing: border-box;
}

.bg_blue2 {
background-color: #20333E;
position: relative;
color: #fff;
padding: 70px 0 ;
box-sizing: border-box;
}

.bg_ttl {
margin-bottom: 20px;
}


.bg_ttl img {
height: 21px!important;
}

.bg_ttl2 {
font-size: 120%;
font-weight: bold;
margin-bottom: 30px;
}
.txt_blue { color:#005CA2;}

  .all_line_ttl {
    margin: 50px auto;
    overflow: hidden;
    font-size: 30px;
    font-size: 2.5rem;
	font-weight: bold;
    text-align: center;
    color: #796a55;
	font-family: "Times New Roman", Times, serif;
  }
  .all_line_ttl span.in {
    position: relative;
    display: inline-block;
    text-align: left;
  }
  .all_line_ttl span.in_ttl {
    position: relative;
    display: inline-block;
    padding: 0 30px;
    text-align: center;
  }
  .all_line_ttl span.in_ttl_en {
    position: relative;
    display: block;
    padding: 0 30px;
    text-align: center;
	font-size: 60%;
  }
  .all_line_ttl span.in::before,
  .all_line_ttl span.in::after {
    position: absolute;
    top: 43%;
    content: '';
    width: 100px;
    height: 1px;
    background-color: #796a55;
  }
  .all_line_ttl span.in_ttl::before,
  .all_line_ttl span.in_ttl::after {
    position: absolute;
    top: 50%;
    content: '';
    width: 100px;
    height: 1px;
    background-color: #796a55;
  }
  .all_line_ttl span.in_ttl::after,
  .all_line_ttl span.in::after {
    right: 100%;
  }
  .all_line_ttl span.in_ttl::before,
  .all_line_ttl span.in::before {
    left: 100%;
  }

.top_contents {
background-image:url(images/top/top_inner.jpg);
background-position: center bottom;
background-repeat: no-repeat;
height: 260px;
margin: 55px 0px 0px 100px;
padding: 70px 50px;
}
.top_contents2 {
background-image:url(images/top/top_inner.jpg);
background-position: center bottom;
background-repeat: no-repeat;
height: 260px;
margin: 55px 100px 0px 0px;
padding: 70px 50px;
}
.top_contents3 {
background-image:url(images/top/toproom_bg.jpg);
background-position: right bottom;
background-repeat: no-repeat;
height: 260px;
margin: 55px 100px 0px 0px;
padding: 70px 50px;
color: #FFFFFF;
}


.top_room,.top_restaurant,.top_sightseeing {
position: relative;
}

.top_room {
background-image:url(images/top/toproom_bg.jpg);
background-position: center bottom;
background-repeat: no-repeat;
padding: 70px 0px;
}



.toproom01,.toproom02,.toproom03,.toproom04,.toproom05,.toprest01,.toprest02,.toprest03,.toprest04,.topss01,.topss02,.topss03,.topss04 {
height: 1020px!important;
background-repeat: no-repeat;
background-position: center top;
}
.toproom01 { background-image: url(images/top/toproom01.jpg);}
.toproom02 { background-image: url(images/top/toproom02.jpg);}
.toproom03 { background-image: url(images/top/toproom03.jpg);}
.toproom04 { background-image: url(images/top/toproom04.jpg);}
.toproom05 { background-image: url(images/top/toproom05.jpg);}

.toprest01 { background-image: url(images/top/toprest01.jpg);}
.toprest02 { background-image: url(images/top/toprest02.jpg);}
.toprest03 { background-image: url(images/top/toprest03.jpg);}
.toprest04 { background-image: url(images/top/toprest04.jpg);}

.topss01 { background-image: url(images/top/topss01.jpg);}
.topss02 { background-image: url(images/top/topss02.jpg);}
.topss03 { background-image: url(images/top/topss03.jpg);}
.topss04 { background-image: url(images/top/topss04.jpg);}

.bg_text {
text-align: left;
padding: 0 0 0 210px;
}
.bg_text2 {
text-align: left;
color: #fff;
/*
text-shadow: 2px 2px 8px #000 ,
-2px 2px 8px #000 ,
2px -2px 8px #000 ,
-2px -2px 8px #000;
*/
}

.bg_contents {
position: absolute;
z-index: 10000;
width: 100%;
height: 100%;
padding: 90px 0px;
box-sizing: border-box;
}

.bg_inner {
position: relative;
width: 1110px;
height: 100%;
margin: 0 auto;
}
.bg_inner2 {
width: 1110px;
height: 100%;
margin: 0 auto;
}

.bg_btn {
padding: 5px 20px 5px 20px;
border: 1px solid #fff;
color: #FFFFFF;
font-size: 85%;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
text-decoration:none;
line-height: 42px;
}
a.bg_btn:hover {
color: #FFFFFF;
background: #003;
}


.bg_white {
background-color: #fff;
padding: 70px 0 ;
}

.posi_re { position: relative;}
.infoimg { position: absolute; top: -200px;}

.topbnr {
position: relative;
margin: 30px 0px 80px 0px;
}
.topbnr img {
width: 100%;
height: auto;
}
.btn_detail {
color: #FFFFFF;
padding: 10px 40px 10px 40px;
background:rgba(0,0,0,0.6);
border-radius: 30px;
-webkit-border-radius: 30px;
-moz-border-radius: 30px;
-ms-filter: "alpha(opacity=80)";
-moz-opacity: 0.8;
-khtml-opacity: 0.8;
text-decoration:none;
font-size: 140%;
}
.topbnrbtn {
position: absolute;
bottom: 15%;
width: 100%;
}
.topbnrbtn img {
width: auto;
height: auto;
}

.pickup {
float:left;
width: 30.333%;
margin: 0 1.5% 30px 1.5%
}
.pickup img {
width: 100%;
height: auto;
}

.ndworks {
float:left;
width: 16%;
margin: 0 2%
}
.ndworks img {
width: 100%;
height: auto;
}

.nayami {
position: relative;
}
.nayami_img {
position: absolute;
width: 40%;
top: -170px;
left: -170px;
}

.aboutbox {
float:left;
width: 29%;
margin: 0px 2.16%;
background-color: #fff;
}
.aboutbox img {
width: 100%;
height: auto;
}
.aboutimg {
position: relative;
}
.aboutboxinner {
padding: 0px 15px 10px 15px;
position: relative;
font-size: 90%;
}
.aboutcate {
position: absolute;
bottom: 11px;
left: 0px;
color: #FFFFFF;
padding: 3px 20px;
}
.aboutttl {
color: #003978;
font-size: 170%;
text-align: center;
border-bottom: 2px solid #EFEFEF;
margin-bottom: 10px;
}
.icon1:before { content: url("images/top/icon1.png"); padding: 20px 15px 0px 0px; vertical-align: middle;}
.icon2:before { content: url("images/top/icon2.png"); padding: 20px 15px 0px 0px; vertical-align: middle;}
.icon3:before { content: url("images/top/icon3.png"); padding: 20px 15px 0px 0px; vertical-align: middle;}

.companyttl {
color: #fff;
font-family: Trebuchet, Trebuchet MS, Tahoma, Arial, sans-serif;
font-size: 400%;
font-weight: bold;
text-align: center;
margin-bottom: 50px;
line-height: 49px;
}
.companyttl:before,
.companyttl:after {
content: "―";
padding: 0px 30px;
}
.companybtn {
padding: 10px 40px 10px 40px;
border: 1px solid #fff;
-webkit-transition: 0.5s;
-moz-transition: 0.5s;
-o-transition: 0.5s;
-ms-transition: 0.5s;
transition: 0.5s;
text-decoration:none;
line-height: 45px;
}
a.companybtn {
color: #fff;
}
a.companybtn:hover {
color: #003978;
background: #fff;
}

/* -----------------------------------------------------------
	.topttl
----------------------------------------------------------- */
.topttl {
	margin: 30px 0px;
	color: #424242;
	font-weight: normal;
	text-align: center;
	position: relative;
}
.topttl:before {
	content: " ";
	margin-left: -20px;
	position: absolute;
	top: -30px;
	left: 50%;
	width: 41px;
	height: 40px;
	background: url(images/common/deco_star.png) 0 0 no-repeat;
}
.topttl span {
	display: inline-block;
}
.topttl span.en2 {
	font-family: "Libre Baskerville", sans-serif;
	font-size: 229%;
	line-height: 1.4em;
	font-weight:bold;
}
.topttl span.jp {
	font-size: 115%;
	position: relative;
}
.topttl span.jp:before {
	content: " ";
	position: absolute;
	top: 15px;
	left: -75px;
	width: 48px;
	height: 5px;
	background: url(images/common/deco_line_left.png) 0 0 no-repeat;
}
.topttl span.jp:after {
	content: " ";
	position: absolute;
	top: 15px;
	right: -75px;
	width: 48px;
	height: 5px;
	background: url(images/common/deco_line_right.png) 0 0 no-repeat;
}

/* メインメニュー　PC用
------------------------------------------------------------*/

@media only screen and (min-width:1025px){

nav#mainnav{
position:relative;
}

nav#mainnav ul{
display:flex;
justify-content:center;
align-items:center;
}

nav#mainnav ul li{
float:left;
border-right: 1px solid #999;
}
nav#mainnav ul li:last-child{
border-right: 0px solid #999;
}

nav#mainnav ul li a{
display: inline-block;
text-align:center;
_float:left;
padding:10px 5px 10px 15px ;
margin-right: 10px;
font-weight:normal;
color:#000;
position: relative;
text-decoration: none;
font-size: 90%;
}

nav#mainnav ul li a:hover{
color:#999;
-webkit-transition: 0.8s;
-moz-transition: 0.8s;
-o-transition: 0.8s;
-ms-transition: 0.8s;
transition: 0.8s;
}

.mdd_wrap {
  position:absolute;
  top:100%;
  left:0;
  width:100%;
  z-index: 15000;
  background: rgba(0,0,0,0.7);
}
.mdd_inner {
  width:1300px;
  height:400px;
  max-height:0; /* 追加 */
  margin:0 auto;
  overflow:hidden; /* 追加 */
  transition:max-height .5s ease; /* 追加 */
  color: #FFFFFF;
}
.mdd_wrap a {
display:inline!important;
text-align:left!important;
_float:none!important;
padding:0px!important;
border-bottom: 0px!important;
position: relative;
text-decoration: none;
}

nav#mainnav ul li:hover .mdd_wrap .mdd_inner {
  max-height:400px;
}

nav div.panel{
display:block !important;
}

a#menu{
display:none;
}

.sp { display:none;}
.en { font-size:10px; color: #ccc; display:block;}
}


/* iPadサイズ以下（1024px）からアコーディオンメニュー
------------------------------------------------------------*/

@media only screen and (max-width:1024px){
#menufixed{
display: inherit;
background: rgba(0, 0, 33, 0.9);
height: 60px;
}

#header{
margin-top:0px;
position:fixed;
top: 0;
width:100%;
z-index:500;
}
	
#headerWrap{
position:relative;
width:100%;
height: 60px;
}
	
#header h2{
padding: 9px 0px 0px 9px;
height: auto;
}
	
#header h2 img{
max-height:42px;
width:auto !important;
}

.hotelname1 {
display: inherit;
font-size: 16px;
padding-right:10px;
line-height: 1em;
}
.hotelname2 {
display: inherit;
font-size: 28px;
line-height: 1.5em;
}

#header .pnav ul{
display:none;
}

a#menu{
display:inline-block;
position:relative;
width:40px;
height:40px;
}

#menuBtn{
display:block;
position:absolute;
top:65%;
left:30%;
width:18px;
height:2px;
margin:-1px 0 0 -7px;
background:#000000;
transition:.2s;
}

#menuBtn:before, #menuBtn:after{
display:block;
content:"";
position:absolute;
top:50%;
left:0;
width:18px;
height:2px;
background:#000000;
transition:.3s;
}

#menuBtn:before{
margin-top:-7px;
}

#menuBtn:after{
margin-top:5px;
}

a#menu .close{
background:transparent;
}

a#menu .close:before, a#menu .close:after{
margin-top:0;
}

a#menu .close:before{
transform:rotate(-45deg);
-webkit-transform:rotate(-45deg);
}

a#menu .close:after{
transform:rotate(-135deg);
-webkit-transform:rotate(-135deg);
}

.panel{
width:100%;
overflow:hidden;
position:relative;
left:0;
top:6px;
z-index:100;
}

nav#mainnav{
position:relative;
}

nav#mainnav ul{
}

nav#mainnav ul li{
}
nav#mainnav ul li:last-child{
border-right: 0px solid #999;
}

nav#mainnav ul li a{
text-align:center;
padding:3px 5px 3px 15px ;
margin-right: 10px;
font-weight:normal;
color:#000;
position: relative;
text-decoration: none;
font-size: 80%;
}

nav#mainnav ul li a:hover{
color:#999;
-webkit-transition: 0.8s;
-moz-transition: 0.8s;
-o-transition: 0.8s;
-ms-transition: 0.8s;
transition: 0.8s;
}

/*
#mainnav{
position:absolute;
top:0;
width:100%;
text-align:right;
z-index:500;
}

#mainnav ul{
background:#ffffff;
text-align:left;
}

#mainnav li a{
position:relative;
display:block;
padding:5px 25px;
border-bottom:1px solid #ccc;
color: #000000;
font-weight:normal;
font-size: 95%;
background-color:#FAFAFA;
}

#mainnav li a.snsicon{
display: inline-grid;
padding:5px 10px;
}

#mainnav ul li li{
border:0;
display:none;
}

#mainnav ul li li a{
padding-left:40px;
}
*/

.mdd_wrap {
display: none;
}

.sp { display:inherit;}
.en { padding-left: 15px; font-size: 70%; color: #666;}

}


/* iPadサイズ以下（1024px）から 1カラム表示に切り替え
------------------------------------------------------------*/

@media only screen and (max-width:1024px){
.sideplan {
top: 60px;
width: 40px;
}
.sideplan img {
width: 100%;
height: auto;
}

.linkbtn {
padding: 10px 20px 10px 20px;
background: #003978;
}
a.linkbtn {
color: #fff;
}

#wrapper{
width:100%;
padding: 60px 0 0px;
}

.inner{
width:96%;
}
.headerinner {
width:100%;
}


.contact{
display: none;
}

.headermenu{
display:none;
}

.sns{
position: absolute;
top: 5px;
right: 50px;
margin-top: 0px;
z-index: 20000;
}

.sns img{
width: auto;
height: 40px;
}

.sns a{
margin-right: 10px;
}

.headerlang{
padding-top: 0px;
float:none;
position: absolute;
top: 9px;
right: 55px;
z-index: 15000;
}

.headertop{
height:auto;
padding: 0px 10px;
font-size: 75%;
line-height: 20px;
}

.headertop img{
height:auto;
width: 100%;
max-width: 483px;
}

#header h1{
display:none;
}

.header-r {
padding: 9px 0px 9px 0px;
height: 42px;
margin-right: 80px;
}

#mainImg img{
}

h2.first{
margin-top:45px;
}

h2.title{
padding-top:35px;
}

.thumbWrap{
width:100%;
}

.thumbWrap ul.thumbUnder li{
width:30%;
display:inline-block;
vertical-align:top;
margin:0 1% 0 1.5%;
}

.thumbWrap ul.thumbUnder li img{
width:100%;
}

.thumbWrap ul.thumb li{
width:30%;
float:left;
margin:0 1% 0 2%;
}

#content, #sidebar, #column{
clear:both;
width:100%;
float:none;
margin:0 auto;
}


#content {
padding:0px 0px 0px 0px;
}

#sidebar {
padding:10px 0;
display: none;
}


#banners{
width:100%;
text-align:center;
}

#banners p{
width:30%;
float:left;
margin:0 1% 0 1.5%;
}

#banners p img{
width:100%;
height:auto;
}

#contactBanner{
margin:0 auto;
}

#footer{
margin:0 auto;
text-align:center;
width:100%;
}
#footer .alignleft { margin-bottom:5px; float:none;}

#footerLogo, #footer ul{
float:none;
width:auto;
padding-bottom:20px;
text-align:center;
}

#footer ul{
padding-top:20px;
}

.alignright,.alignleft{
}

.right,.left{
float:none;
margin-bottom: 30px;
}

#mainImg{
margin-bottom: -30px;
}

#mainImg h2 {
margin-top: 30px;
font-size: 30px;
line-height: 50px;
}

#mainImg p {
}

.mainImglogo {
width: 150px;
height: 79px;
}

.pagettl {
padding: 20px 0px ;
font-size: 200%;
margin-top: 50px;
}

#content img {
max-width: 100%;
height:auto;
}

#wrapper h1 {
font-size:200%;
line-height: 50px;
}

.bg_blue {
}
.bg_blue span {
}
.infoimg { position: static;}

.spclear { clear:both;}
.w230 { width: 30%;}
.w250 { width: 25%;}
.w300 { width: 27%;}
.w330 { width: 30%;}
.w350 { width: 30%;}
.w380 { width: 30%;}
.w400 { width: 45%;}
.w500 { width: 45%;}
.w530 { width: 45%;}
.w550 { width: 48%;}
.w560 { width: 100%;}
.w580 { width: 45%;}
.w650 { width: 50%;}
.w700 { width: 65%;}
.w880 { width: 65%;}
.ml15 { margin-left: 0%;}
.ml20 { margin-left: 0%;}
.ml30 { margin-left: 0%;}
.ml50 { margin-left: 0%;}
.ml60 { margin-left: 0%;}
.mr15 { margin-right: 0%;}
.mr20 { margin-right: 0%;}
.mr30 { margin-right: 3%;}
.mr50 { margin-right: 0%;}
.mr60 { margin-right: 3%;}
.mr5p { margin-right: 5%;}

table.table1 {
width:100%;
}

table.table1 td {
display:block;
border:0px solid #ccc;
}

table.table1 th {
display:block;
border:0px solid #ccc;
}

table.mailform {
}

table.mailform td {
width:auto!important;
display:block;
border:0px solid #ccc;
padding:10px;
}

table.mailform th {
width:auto!important;
display:block;
border:0px solid #ccc;
padding:10px;
background-color:#003978;
color: #fff;
}

img.alignright, img.alignleft{
}

#contact input[type="submit"],input[type="button"]{
margin-right: 30px;
}

.photo { width: 253px!important;}

.topbtn img { width: 45%;}

#reserve {
width: 240px;
background-color:#FFFFFF;
border: 1px solid #ccc;
position: absolute;
top: 50px;
z-index: 100000;
right:-320px;
display: inherit;
float: none;
padding: 14px;
}
.reservecontents { float:none; margin-bottom: 5px;}
.reservetitle { display:block;}
.spreservebtn{
display:block;
position: absolute;
top: 8px;
right: 55px;
z-index:12000;
}
.roomttl span { display:block; padding-left:0px;}
.roombtn { display:block; margin-bottom:15px; margin-right:0px;}
.slider-nav01 img { width:90%!important;}

#restslide {
}
#restslide ul {
  padding: 0 0px;
}
#restslide li {
}
/* Button */
.btn_l,
.btn_r {
}
.btn_l {
}
.btn_r {
}

.slideinner {
  width: 100%;
}

.bnrarea {
background-size:auto 100%;
height: auto;
background-attachment: inherit;
padding: 30px 0px;
}

.bnrarea {
}

.bnrarea img {
margin: 0px 3%!important;
}

.aboutbox {
width: 32.33333333%;
margin: 0px 0.5%;
}
.aboutbox img {
}
.aboutboxinner {
padding: 0px 10px;
}
.aboutttl {
color: #003978;
font-size: 130%;
text-align: center;
border-bottom: 2px solid #EFEFEF;
margin-bottom: 10px;
}

#news li{ padding: 10px; display: block;}
#news li a{ display:block;}

.full_content {
width:100%;
height: 600px;
}
.tabmenu{
width:19.5%;
font-size: 80%;
}

.active, .hover {
}

.tabmenu img:hover {
}

.mr01{}

.tabcontent {
}

.tabcontent dl{}

.tabcontent dl dt{line-height: normal; padding: 10px; display:block;}

.tabcontent dl dt a{ display:block; padding-top: 5px;}

.tabcontent .date {
}
.tabcontent .cate {
}
.tab_title{}

.sonsuru { padding: 0px 5px;}
.keieinavi { padding: 0px 5px;}
.newsletter { padding: 0px 5px;}
.newsinfo { padding: 0px 5px;}

.enkai { margin-bottom: 30px;}
.access { clear:both;}

.btn_detail {
font-size: 120%;
}

.youtube iframe {
width: 80%;
height: 390px;
}

.ndworks {
width: 29.333%;
margin-bottom: 30px;
}

}


/* 幅640px以下から ヘッダー等微調節
------------------------------------------------------------*/

@media only screen and (max-width: 640px){

.linkbtn {
display: block;
text-align: center;
}
a.linkbtn {
}
.linkbtn2 {
display: block;
text-align: center;
}
.linkbtn3 {
display: block;
text-align: center;
}

.headerlang{
}

#content {
padding:0px 0px 0px 0px;
}

#headerWrap{
}

#menufixed {
}

.thumbWrap ul.thumbUnder li{
width:95%;
margin-bottom:10px;
}

.thumbWrap ul.thumbUnder li img{
width:100%;
}

#banners p{
float:none;
width:100%;
margin: 0px;
}

#banners p img{
width:100%;
}

#footer ul{
text-align:left;padding:15px;
}

.sitemap{
display: none;
}

#mainImg{
margin-bottom: 20px;
}

#mainImg h2 {
font-size: 16px;
line-height: 25px;
margin-top: 0px;
}

#mainImg #sub_txt {
}

#mainImg p {
}

.center {
display: inherit;
text-align:center;
}

.alignright,.alignleft{
float:none;
margin-bottom: 30px;
}

img.alignright, img.alignleft{
float:none;
margin: 0px auto 15px auto;
display:block;
}

#content img {
display:block;
margin: 0px auto;
}

#content h1 span {
}

#wrapper h1 {
line-height: 45px;
font-size:150%;
}

#wrapper h2 {
font-size:120%;
line-height: 35px;
margin-bottom:20px;
}
#wrapper h3 {
font-size:120%;
}
#wrapper h4 {
font-size:110%;
}
#wrapper h5 {
font-size:110%;
}


.top_ttl,.news_ttl {
font-size:240%;
line-height: 35px;
margin-bottom: 10px;
}
.top_ttl span{
}

.txt_red { font-size: 100%;}
.txt_minchou {
  font: 100% "ＭＳ Ｐ明朝", "MS PMincho", "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", serif;
  font-weight:bold;
  line-height: 30px;
}

#restslide {
}
#restslide ul {
  padding: 0 0px;
  width: 700%;
}
#restslide li {
  width: 14.2%;
  margin-right: 0px;
}
/* Button */
.btn_l,
.btn_r {
  top: 9%;
}
.btn_l {
}
.btn_r {
}

.slideinner {
  width: 100%;
}

input[type="submit"],input[type="button"]{
/*width: 50%;*/
}

input[type="reset"],input[type="submit"].back{
/*width: 50%;*/
}

.companybox img {
width:100%;
}

.bukkenwrap{
width:100%;
margin:0px;
}

.bukkenbox{
width:100%;
float:none;
margin-right:0px;
}

.bukkenboxinner{
}

#footer img{
}

.w230 { width: 100%;}
.w250 { width: 100%;}
.w300 { width: 100%;}
.w330 { width: 100%;}
.w350 { width: 100%;}
.w380 { width: 100%;}
.w400 { width: 100%;}
.w500 { width: 100%;}
.w530 { width: 100%;}
.w550 { width: 100%;}
.w560 { width: 100%;}
.w580 { width: 100%;}
.w650 { width: 100%;}
.w700 { width: 100%;}
.w880 { width: 100%;}
.w10p { width: 100%;}
.w15p { width: 100%;}
.w20p { width: 100%;}
.w25p { width: 100%;}
.w30p { width: 100%;}
.w35p { width: 100%;}
.w40p { width: 100%;}
.w45p { width: 100%;}
.w50p { width: 100%;}
.w55p { width: 100%;}
.w60p { width: 100%;}
.w65p { width: 100%;}
.w70p { width: 100%;}
.w75p { width: 100%;}
.w80p { width: 100%;}
.w85p { width: 100%;}
.w90p { width: 100%;}
.ml15 { margin-left: 0px;}
.ml20 { margin-left: 0px;}
.ml30 { margin-left: 0px;}
.ml50 { margin-left: 0px;}
.ml60 { margin-left: 0px;}
.mr15 { margin-right: 0px;}
.mr20 { margin-right: 0px;}
.mr30 { margin-right: 0px;}
.mr50 { margin-right: 0px;}
.mr60 { margin-right: 0px;}
.mb100 { margin-bottom: 30px;}

.bnrarea {
background-size:auto 100%;
height: auto;
background-attachment: inherit;
padding: 30px 0px;
}

.bnrarea img {
width: 44%!important;
display:inherit!important;
margin: 0px 2%!important;
}

.btn_detail {
padding: 5px 20px 5px 20px;
font-size: 100%;
}

.cico { display:block;}

table.table2 {
}

table.table2 td {
}

table.table2 th {
}

.pickup {
}

.about_bg {
padding: 20px 0px 0px 0px;
}

.aboutbox {
float: none;
width: 90%;
display: block;
margin: 0 auto 20px auto;
}

.aboutbox img {
}

.newscate {
}

.newsttl {
}

.pagettl {
padding: 15px 0px ;
font-size: 130%;
}

.youtube iframe {
width: 100%;
height: 250px;
}

.works_bg {
background-image: none;
padding: 0px ;
}


.nd_bg {
font-size: 150%;
padding: 15px;
}

.ndworks {
width: 46%;
}

.box25p {
float:left;
width: 48%;
margin: 0px 1% 20px 1%;
}
.box25p img {
}
.box30p {
float:none;
width: 100%;
margin: 0px 0% 20px 0%;
}
.box30p img {
}

#contact input[type="submit"],input[type="button"]{
margin-right: 0px;
}

.bg_gray {
background-color: #f3f3f3;
padding: 15px 0 ;
}
.bg_gray_ttl { font-size: 150%; font-weight: bold; margin-bottom: 25px; color: #EB6100; text-align: center;}
.bg_gray_ttl span { font-size: 50%; font-weight: normal; color: #999; padding-left: 15px;}
.infobox {
float:none;
width: 90%;
margin: 0px auto 30px auto;
}
.bg_white {
padding: 30px 0 30px 0 ;
}

.bg_blue {
padding: 30px 6% 5px 6%;
}
.bg_blue2 {
padding: 30px 6% 5px 6%;
}
.bg_brown {
padding: 30px 6% 5px 6%;
}

.bg_ttl {
margin-bottom: 10px;
}
.bg_ttl::after {
}

.top_room .bg_ttl::after,.top_restaurant .bg_ttl::after,.top_sightseeing .bg_ttl::after {
}

.bg_ttl img {
height: 21px!important;
}

.bg_ttl2 {
font-size: 120%;
font-weight: bold;
margin-bottom: 10px;
}

.top_room,.top_restaurant,.top_sightseeing {
padding: 30px 6% 5px 6%;
}

.toproom01,.toproom02,.toproom03,.toproom04,.toproom05,.toprest01,.toprest02,.toprest03,.toprest04,.topss01,.topss02,.topss03,.topss04 {
height: 750px!important;
}

.topimgroom img {
}

.bg_text {
font-size: 75%;
}
.bg_text2 {
font-size: 75%;
}

.bg_contents {
position: absolute;
z-index: 10000;
width: 100%;
height: 100%;
padding: 50px 6%;
box-sizing: border-box;
}

.bg_inner {
width: 100%;
}

.bg_inner2 {
width: 100%;
}


.bg_btn {
}
a.bg_btn:hover {
}

.news_ttl {
font-size:150%;
}
#news li {font-size:90%; line-height: normal;}
#news li a { padding-top: 5px;}

.prev {
left:9%;
}
.next {
right:9%;
}

.full_content {
width:100%;
height: 600px;
}
.tabmenu{
font-size: 50%;
}

.active, .hover {
}

.tabmenu img:hover {
}

.mr01{}

.tabcontent {
}

.tabcontent dl{}

.tabcontent dl dt{font-size: 90%;}

.tabcontent .date {
}
.tabcontent .cate {
}
.tab_title{}

#overlay-button {
  right: 2px;
  top: 0px;
}

#overlay ul li {
  padding: 0.3em;
}

  .all_line_ttl {
    margin: 50px auto;
    overflow: hidden;
    font-size: 30px;
    font-size: 2.5rem;
	font-weight: bold;
    text-align: center;
    color: #796a55;
	font-family: "Times New Roman", Times, serif;
  }
  .all_line_ttl span.in {
    position: relative;
    display: inline-block;
    text-align: left;
  }
  .all_line_ttl span.in_ttl {
    position: relative;
    display: inline-block;
    padding: 0 30px;
    text-align: center;
  }
  .all_line_ttl span.in_ttl_en {
    position: relative;
    display: block;
    padding: 0 30px;
    text-align: center;
	font-size: 60%;
  }
  .all_line_ttl span.in::before,
  .all_line_ttl span.in::after {
    position: absolute;
    top: 43%;
    content: '';
    width: 100px;
    height: 1px;
    background-color: #796a55;
  }
  .all_line_ttl span.in_ttl::before,
  .all_line_ttl span.in_ttl::after {
    position: absolute;
    top: 50%;
    content: '';
    width: 100px;
    height: 1px;
    background-color: #796a55;
  }
  .all_line_ttl span.in_ttl::after,
  .all_line_ttl span.in::after {
    right: 100%;
  }
  .all_line_ttl span.in_ttl::before,
  .all_line_ttl span.in::before {
    left: 100%;
  }

.top_contents {
height: auto;
margin: 0px;
padding: 30px;
}
.top_contents2 {
height: auto;
margin: 0px;
padding: 30px;
}
.top_contents3 {
height: auto;
margin: 0px;
padding: 30px;
}

.roomimg {
width: auto;
}

.roomarea {
padding: 20px 4%;
width: 92%;
}

}