@charset "utf-8";

.pc { display:none;}
.sp { display:block;}

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

a {
    -webkit-transition: all 0 ease;
    -moz-transition: all 0 ease;
    -o-transition: all 0 ease;
}

a img {
    -webkit-transition: all 0 ease;
    -moz-transition: all 0 ease;
    -o-transition: all 0 ease;
}

input,textarea {
    border-radius: 0;
    -webkit-appearance: none;
}

/* =======================================

	Text Decorations CSS

========================================== */
.titBorder {
    font-size: 200%;
    margin: 0 0 25px 0;
    padding: 0 0 15px 0;
}

.titPage {
    padding: 20px 0 20px 0;
    font-size: 220%;
}

.titBg {
    font-size: 140%;
    letter-spacing: 2px;
    margin: 0 0 15px 0;
    padding: 12px 15px 10px 15px;
}

.titLine {
    margin: 0 0 15px 0;
    font-size: 120%;
}

.titBig {
    font-size: 150%;
    margin: 0 0 20px 0;
}

/* =======================================

	Structure CSS

========================================== */
.boxWhite {
    width: auto;
    box-sizing: border-box;
    margin: 0 15px 30px 15px;
    padding: 40px 15px 1px 15px;
    border-radius: 10px;
}

/* =======================================

	Header CSS

========================================== */
#globalHeader {
    margin: 0;
}

#globalHeader #site-title {
    padding: 15px 0 0 15px;
}

#globalHeader #site-title img {
    width: 150px;
    height: auto;
}

#globalHeader #globalNavi {
    top: 98px;
    right: auto;
    text-align: left;
    z-index: 100;
    width: 100%;
    display: none;
}

#globalHeader #globalNavi li {
    font-size: 110%;
    font-weight: bold;
    margin: 0 0 0 0;
    letter-spacing: 1px;
}

#globalHeader #globalNavi li a {
    color: #ffffff;
    background-color: #01507b;
    border-width: 1px 0 0 0;
    border-style: solid;
    border-color: #ffffff;
    opacity: 0.9;
    width: 100%;
    box-sizing: border-box;
    display: block;
    padding: 25px 0 22px 30px;
    position: relative;
}

#globalHeader #globalNavi li a:hover,
.hotspring #globalHeader #globalNavi li#hotspring a,
.access #globalHeader #globalNavi li#access a,
.information #globalHeader #globalNavi li#information a,
.kutron #globalHeader #globalNavi li#kutron a,
.heartron #globalHeader #globalNavi li#heartron a,
.coupon #globalHeader #globalNavi li#coupon a {
    text-decoration: none;
    color: #ffffff;
}

#globalHeader #globalNavi li a:after {
    content:'\f105';
    font-family: FontAwesome;
    position: absolute;
    right: 15px;
    top: 33%;
    font-size: 150%;
}

#menu {
	width: 40px;
	height: 40px;
	position: absolute;
	cursor: pointer;
    z-index: 30;
    top: 30px;
    right: 20px;
}

#menu .bar {
	display: inline-block;
	width: 40px;
	height: 5px;
	background-color: #000000;
	position: absolute;
	transition: .15s ease-in-out;
}

#bar01 {
	top: 0;
}
#bar02 {
	top: 12px;
}
#bar03 {
	top: 24px;
}
.active #bar01 {
	top: 15px;
	transform: rotate(45deg);
}
.active #bar02 {
	width: 0;
}
.active #bar03 {
	top: 15px;
	transform: rotate(-45deg);
}

/* =======================================

	Footer CSS

========================================== */
#globalFooter a.btnPageTop {
    right: 5px;
    bottom: 15px;
}

#globalFooter .wrapper {
    width: auto;
    padding: 20px 0 0 0;
}

#globalFooter .wrapper ul {
    margin: 0 0 25px 0;
}

#globalFooter .wrapper ul li {
    padding: 0 15px 0 15px;
}

#globalFooter figure {
    display: block;
    width: 155px;
    margin: 0 auto 20px auto;
    float: none;
}

#globalFooter address {
    display: block;
    margin: 0 0 20px 0;
    text-align: center;
    float: none;
}

#globalFooter address span {
    display: block;
}

#globalFooter table {
    display: block;
    margin: 0 15px 0 15px;
    padding: 10px 10px 5px 10px;
    float: none;
    background-color: #f4f3f0;
    width: auto;
    box-sizing: border-box;
}

#globalFooter table tbody {
    display: table-row;
}

#globalFooter table tr {
    display: table-row;
}

#globalFooter table tr th {
    display: table-cell;
    font-weight: bold;
    padding: 0 0 5px 0;
    text-align: justify;
    text-justify: inter-ideograph;
    white-space: nowrap;
}

#globalFooter table tr td {
    display: table-cell;
    padding: 0 0 5px 0;
}

/* =======================================

	共通

========================================== */
.mb50 {margin-bottom: 30px !important;}

form.localNavi {
    background-color: #f0f0f0;
    margin: -40px -15px 20px -15px;
    padding: 0;
    box-sizing: border-box;
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
    position: relative;
    border-width: 0 0 1px 0;
    border-style: solid;
    border-color: #d9d8ce;
}

form.localNavi:after {
    content:'\f107';
    font-family: FontAwesome;
    color: #26759d;
    top: 34%;
    right: 15px;
    font-size: 150%;
    position: absolute;
}

form.localNavi select {
    color: #26759d;
    font-weight: bold;
    text-align: center;
    width: 100%;
    padding: 15px;
    -webkit-appearance: none;
    border-width: 0;
}

.boxLead {
    margin: 0 0 30px 0;
}

.boxSection {
    margin: 0 0 40px 0;
}

.boxSection p {
    margin: 0 0 20px 0;
}

.boxBorder {
    border-width: 1px;
    margin: 0 0 20px 0;
    padding: 15px;
}

.breadCrumbs {
    display: none;
}

.description {
    margin: -10px 0 20px 0;
}

/* =======================================

	トップページ

========================================== */
.boxHomeMain {
    width: auto;
    margin: 0 15px 20px 15px;
    padding: 260px 0 0 0;
}

.boxHomeMain h2 {
    color: #000000;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    font-weight: bold;
    line-height: 150%;
    font-size: 180%;
    letter-spacing: 5px;
    padding: 0 0 0 0;
    vertical-align: middle;
    position:absolute;
    top:130px;
    left:50%;
    display:inline;
    transform:translate(-50%, -50%);
}

.boxHomeMain div img {
    border-radius: 20px;
}

.boxHomeNewsTicker {
    width: auto;
    margin: 0 15px 40px 15px;
}

.boxHomeNewsTicker dl dd {
    width: calc(100% - 115px);
}

.boxHomeHowTo {
    width: auto;
    margin: 0 15px 15px 15px;
    padding: 0 10px 35px 10px;
}

.boxHomeHowTo:before {
    background-size: 36.5px 46.5px;
    width: 36.5px;
    height: 46.5px;
}

.boxHomeHowTo:after {
    background-size: 61.5px 61.5px;
    width: 61.5px;
    height: 61.5px;
}

.boxHomeHowTo .wrapper {
    width: auto;
}

.boxHomeHowTo .wrapper a {
    width: 220px;
    text-align: center;
}

.boxHomeHowTo .wrapper a em {
    font-size: 110%;
}

.boxHomeHowTo .wrapper a img {
    width: 100%;
    height: auto;
}

.boxHomeHowTo .wrapper a p {
    text-align: left;
}

.boxHomeHowTo .wrapper a p br {
    display: none;
}

.boxHomeFeature {
    margin: 0 0 30px 0;
}

.boxHomeFeature a figure {
    float: none;
    width: 100%;
    position: relative;
}

.boxHomeFeature a figure:after {
    content:'\f105';
    font-family: FontAwesome;
    position: absolute;
    right: 20px;
    top: 41%;
    color: #ffffff;
    font-size: 300%;
}

.boxHomeFeature a figure figcaption {
    text-align: center;
    color: #ffffff;
    font-weight: bold;
    font-size: 225%;
    position: absolute;
    top: 43%;
    left: 0;
    width: 100%;
    letter-spacing: 1px;
}

.boxHomeFeature a div {
    display: none;
}

.boxHomeShop {
    width: auto;
    margin: 0 15px 0 15px;
}

.boxHomeShop a {
    float: none;
    margin: 0 auto 40px auto;
}

.boxHomeShop a:last-child {
    float: none;
}

.boxHomeShop a figcaption {
    line-height: 160%;
    position: absolute;
    width: 250px;
    top: 95px;
    right: 0;
}

.boxHomeLink {
    margin: 0 15px 60px 15px;
}

.boxHomeLink ul li a {
    font-size: 130%;
    padding: 20px 0 20px 0;
}

.boxHomeWrapper {
    width: auto;
    margin: 0 15px 0 15px;
}

.boxHomeNews {
    width: auto;
    float: none;
    margin: 0 0 40px 0;
}

.boxHomeNews h3,
.boxHomeTwitter h3 {
    font-size: 180%;
    letter-spacing: 1px;
    margin: 0 0 20px 0;
}

.boxHomeNews dl {
    display: table;
    border-width: 1px 0 0 0;
    border-style: solid;
    border-color: #d9d8ce;
    width: 100%;
}

.boxHomeNews div dl:last-child {
    border-width: 1px 0 1px 0;
}

.boxHomeNews dl dt {
    width: 230px;
}

.boxHomeNews p {
    margin: 20px 0 0 0;
}

.boxHomeNews p a {
    width: 30%;
    margin: 0 35% 0 35%;
}

.boxHomeTwitter {
    width: auto;
    float: none;
    margin: 0 0 40px 0;
}

.boxHomeTwitter {
    width: auto;
    float: none;
}

.boxHomeMap {
    margin: 0 0 40px 0;
}

#globalFooter .copyright {
    padding: 25px 0 25px 0;
}

/* =======================================

	アクセス

========================================== */
.boxAccess01 figure {
    margin: 0 0 20px 0;
}

.boxAccess01 figure img {
    max-width: 100%;
    height: auto;
}

.boxAccess02 .text {
    width: calc(100% - 200px);
}

/* =======================================

	ニュース

========================================== */
.boxNewsLeft {
    width: auto;
    float: none;
    text-align: center;
    margin: 0 0 25px 0;
}

.boxNewsLeft ul {
    display: none;
}

.boxNewsRight {
    width: auto;
    float: none;
}

.boxNewsLeft form {
    display: inline-block;
    border-width: 1px;
    border-style: solid;
    border-color: #d9d8ce;
    padding: 6px 40px 12px 12px;
    position: relative;
    height: 39px;
    box-sizing: border-box;
}

.boxNewsLeft form select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border-width: 0;
    margin: 0;
    padding: 0 10px 0 5px;
}

.boxNewsLeft form:after {
    content:'\f078';
    font-family: FontAwesome;
    color:#fff;
    background-color: #20759f;
    display: block;
    width: 37px;
    height: 37px;
    text-align: center;
    font-size: 120%;
    box-sizing: border-box;
    padding: 10px 0 0 0;
    position: absolute;
    top: 0;
    right: 0;
}

/* =======================================

	ご利用案内

========================================== */
.boxInformationIndex section {
    width: 32%;
    margin: 0 2% 0 0;
}

.boxInformationIndex section h3 {
    font-size: 115%;
}

.boxInformationIndex section p {
    font-size: 90%;
}

.boxInformation01 {
    margin: 0 0 30px 0;
}

/* =======================================

	お食事処く～とろん

========================================== */
.boxKutron01 section {
    margin: 0 3.5% 30px 0;
}

.boxKutron02 {
	margin: -40px -15px 30px -15px;
}

.boxKutron04 {
	margin: 0 -15px;
}

.boxKutron04 figcaption {
	right: 20px;
	font-size: 13px;
}

.boxKutron04 .inner {
	top: 40px;
	left: 20px;
}

.boxKutron04 .inner header {
	margin: 0 0 30px 0;
}

.boxKutron04 .inner header p {
	font-size: 22px;
	margin: 0 0 20px 0;
}

.boxKutron04 .inner header p span {
	font-size: 30px;
}

.boxKutron04 .inner header h3 {
	font-size: 32px;
	letter-spacing: 1px;
}

.boxKutron04 .inner p.text {
	font-size: 13px;
}

.boxKutron04.kodawari02 .inner {
	right: 20px;
	bottom: 20px;
}

.boxKutron04.kodawari03 {
	margin-bottom: 40px;
}

.boxKutron04.kodawari03 figcaption {
	bottom: 40px;
	right: 20px;
}

.boxKutron04.kodawari03 .inner {
	bottom: 20px;
}

/* =======================================

	温泉の紹介

========================================== */
.boxHotspring03 {
    margin: -10px 0 25px 0;
}

/* =======================================

	ゆ〜とろんの特徴

========================================== */
.boxFeatureMain {
    margin: -40px -15px 30px -15px;
}

.boxFeatureMain img {
    border-top-left-radius: 10px;
    border-top-right-radius: 10px;
}

.boxFeature02 {
    margin: 0 0 0px 0;
}

/* =======================================

	割引サービス

========================================== */
.boxCoupon {
    width: auto;
}
.boxSection.boxCoupon p {
    margin-top: 20px;
}

/* =======================================

	イベント：イルミネーション

========================================== */
/*トップページ掲載バナー*/
.boxHomeLink .eventBnr {
	width: 100%;
}

/* =======================================

	臨時休業のお知らせ

========================================== */
.boxHomeNotice {
  	width: auto;
    margin: 0 15px 40px 15px;
}
/* =======================================

	オンラインショップ

========================================== */
/*トップページ掲載バナー*/
.boxHomeLink .onlineshopBnr  {
	width: 100%;
}
