@charset "utf-8";

.pc {display:none;}
.sp {display:block;}
.spBlock {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;
}

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

	Structure CSS

========================================== */
body {
    background-image: url(../img/common/sp/bg_body.jpg);
}

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

	Text Decorations CSS

========================================== */
.titBorder {
    font-size: 180%;
}

.titBorder:after {
    width: 70px;
    margin: 0 0 0 -35px;
}

.titPage {
    font-size: 180%;
}

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

	Footer CSS

========================================== */
#globalFooter a.btnPageTop {
    width: 50px;
    height: 50px;
    border-radius: 25px;
    font-size: 180%;
    padding: 10px 0 0 0;
}

#globalFooter .wrapper {
    padding: 0 0 0 0;
}

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

#globalFooter .wrapper ul li {
    display: block;
    margin: 0 0 0 0;
    padding: 0;
    border-width: 1px 0 0 0;
}

#globalFooter .wrapper ul li:first-child {
    border-width: 0;
}

#globalFooter .wrapper ul li:last-child {
    border-width: 1px 0 1px 0;
}

#globalFooter .wrapper ul li a {
    display: block;
    padding: 10px 0 10px 0;
}

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

	共通

========================================== */
.mb30 {margin-bottom: 15px !important;}
.mt0sp {margin-top: 0 !important;}
.bdt0sp {border-top-width: 0 !important;}
.op0sp {opacity: 0 !important;}
.mb30 {margin-bottom: 30px !important;}

.spBlock {display: block;}

.boxLead p {
    font-size: 100%;
    text-align: left;
}

.boxSection p {
    font-size: 100%;
}

.boxImgRight {
    margin: 0 0 20px 0;
}

.boxImgRight .text,
.boxImgRight2 .text,
.boxImgLeft .text {
    float: none;
    width: 100%;
}

.boxImgRight figure,
.boxImgRight2 figure {
    float: none;
    width: 100%;
}

.boxImgLeft figure {
    float: none;
    width: 100%;
    margin: 0 0 20px 0;
}

.tableText {
    font-size: 100%;
}

.description {
    font-size: 100%;
    margin: -10px 15px 30px 15px;
}


.description br {
    display: none;
}

.boxColumn2 .box {
    width: 100%;
    float: none;
}

.boxColumn2 .box:nth-child(2n) {
    float: none;
}

.boxColumn3 figure {
    width: 100%;
    margin: 0 0 20px 0;
    float: none;
}

.boxColumn3 figure:nth-child(3n) {
    margin: 0 0 20px 0;
}

.tableBorder {
    display: block;
    font-size: 100%;
}

.tableBorder02 {
    display: table;
    width: 100%;
}

.tableBorder tbody,
.tableBorder tr {
    display: block;
}

.tableBorder02 tbody {
    display: table-row-group;
}

.tableBorder02 tr {
    display: table-row;
}

.tableBorder th {
    display: block;
    border-color: #e2e2da;
}

.tableBorder02 th {
    display: table-cell;
}

.tableBorder td {
    display: block;
    padding: 15px 0;
}

.tableBorder02 td {
    display: table-cell;
}

.tableResponsive {
    table-layout: fixed;
    display: table;
}

.tableResponsive thead {
    display: none;
}

.tableResponsive tr {
    margin: 30px 0 0 0;
    display: block;
    border-width: 1px 0 0 0;
    border-style: solid;
    border-color: #a3a29b;
}

.tableResponsive tbody tr:first-child {
    margin: 0 !important;
    border-width: 0 !important;
}

.tableResponsive td {
    border-bottom: 1px solid #a3a29b;
    display: block;
    text-align: right;
    padding-left: 10px;
    padding-right: 10px;
}

.tableResponsive td.bg
{
    background-color: #f7f7f5;
    max-height: 60px;
    overflow: hidden;
}

.tableResponsive td:before {
    content: attr(aria-label);
    float: left;
    margin: 0 40px 0 0;
}

.input01 {
    width: 100%;
}

.select01:after {
    top: 3px;
}

.select01 select {
    font-size: 90%;
}

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

	トップページ

========================================== */
body.home {
    background-image: url(../img/home/sp/bg_home.jpg);
}

.home .bx-wrapper .bx-pager {
  display: none;
}

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

.boxHomeNewsTicker dl dt {
    width: 80px;
    padding: 10px 0 8px 0;
    font-size: 100%;
    letter-spacing: 0;
    border-top-left-radius: 10px;
    border-bottom-left-radius: 10px;
}

.boxHomeNewsTicker dl dd {
    width: calc(100% - 80px);
    border-top-right-radius: 10px;
    border-bottom-right-radius: 10px;
    padding: 10px 10px 8px 10px;
    font-size: 100%;
    overflow: hidden;
}

.boxHomeNewsTicker dl dd div {
  display: inline-block;
  white-space: nowrap;
  padding-left: 100%;
  -webkit-animation-name: ticker-animation;
  -webkit-animation-timing-function: linear;
  -webkit-animation-iteration-count: infinite;
  -webkit-animation-duration: 15s;
}

@-webkit-keyframes ticker-animation {
  from   { -webkit-transform: translate(0%);}
  99%,to { -webkit-transform: translate(-100%);}
}

.boxHomeHowTo {
    padding: 0 10px 5px 10px;
}

.boxHomeHowTo .wrapper {
    width: auto;
    display: block;
}

.boxHomeHowTo:before {
    top: 30px;
}

.boxHomeHowTo .wrapper a {
    width: auto;
    display: block;
    margin: 0 0 35px 0;
}

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

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

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

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

.boxHomeFeature a figure:after {
    top: 45%;
    font-size: 200%;
}

.boxHomeFeature a figure figcaption {
    font-size: 170%;
    top: 37%;
    line-height: 130%;
}

.boxHomeFeature a figure figcaption span {
    display: block;
}

.boxHomeShop {
    margin: 0 15px 25px 15px;
}

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

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

.boxHomeShop a figcaption {
    display: none;
}

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

.boxHomeLink ul li {
    float: none;
    display: block;
    margin: 0 0 10px 0;
    width: 100%;
}

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

.boxHomeNews {
    margin: 0 0 35px 0;
}

.boxHomeNews h3,
.boxHomeTwitter h3 {
    margin: 0 0 15px 0;
}

.boxHomeNews dl {
    display: block;
}

.boxHomeNews dl dt {
    width: auto;
    display: block;
}

.boxHomeNews dl dd {
    display: block;
    padding: 0 0 15px 0;
}

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

.boxHomeNews p a {
    width: 90%;
    margin: 0 5% 0 5%;
}

.boxHomeTwitter div,
.facebookBox div {
    height: 320px;
}

.boxHomeMap {
    margin: 0 0 0 0;
}

.boxHomeMap iframe {
    height: 180px;
}

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

	アクセス

========================================== */
.boxAccess02 h4 {
    font-size: 110%;
    margin: 0 0 15px 0;
}

.boxAccess02 .text p:last-child {
    margin: 10px 0 15px 0;
}

.boxAccess02 .text {
    float: none;
    width: auto;
}

.boxAccess02 figure {
    float: none;
    text-align: center;
}

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

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

	ニュース

========================================== */
.boxNewsLeft form {
    padding: 6px 35px 12px 4px;
}

.boxNewsRight table {
    width: 100%;
    display: block;
}

.boxNewsRight table tbody,
.boxNewsRight table tr {
    display: block;
}

.boxNewsRight table tr th {
    border-width: 0;
    padding: 12px 0 3px 0;
    display: inline-block;
    vertical-align: middle;
}

.boxNewsRight table tr th time {
    margin: 0 0 0 12px;
}

.boxNewsRight table tr td {
    font-size: 100%;
    display: block;
}

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

.boxPagenate p {
    display: none;
}

.boxPagenate ul {
    display: block;
    display: table;
    width: 100%;
}

.boxPagenate ul li a {
    color: #20759f;
    text-decoration: underline;
}

.boxPagenate ul li.prev {
    display: table-cell;
    width: 25%;
    text-align: left;
}

.boxPagenate ul li.prev i {
    display: inline-block;
    margin: 0 5px 0 0;
}

.boxPagenate ul li.number {
    display: table-cell;
    width: 50%;
    text-align: center;
}

.boxPagenate ul li.next {
    display: table-cell;
    width: 25%;
    text-align: right;
}

.boxPagenate ul li.next i {
    display: inline-block;
    margin: 0 0 0 5px;
}

.boxNewsDetail header {
    margin: 30px 0 30px 0;
}

.boxPagenateDetail ul li.prev {
    width: 30%;
    text-align: left;
}

.boxPagenateDetail ul li.back {
    width: 40%;
}

.boxPagenateDetail ul li.next {
    width: 30%;
    text-align: right;
}

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

	ご利用案内

========================================== */
.boxInformationIndex section {
    float: none;
    width: 100%;
    margin: 0 0 30px 0;
}

.boxInformationIndex section h3 {
    font-size: 115%;
    margin: 20px 0 12px 0;
}

.boxInformationIndex section p {
    margin: 0 0 15px 0;
}

.boxInformation01 figure img {
    max-width: 100%;
}

.boxInformation01 p {
    line-height: 180%;
    text-align: left;
}

.boxInformation01 p font {
    text-align: left !important;
    display: inline-block;
    margin: 0 0 10px 0;
}

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

	お食事処く～とろん

========================================== */
.boxKutron01 section {
    width: 100%;
    margin: 0 0 20px 0;
}

.boxKutron04 {
	margin-top: 40px;
}

.boxKutron04 figure {
	position: relative;
}

.boxKutron04 figcaption {
	bottom: 10px;
}

.boxKutron04 .inner {
	position: relative;
	top: inherit;
	left: inherit;
	padding: 20px;
}

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

.boxKutron04 .inner header p {
	font-size: 18px;
	margin: 0 0 10px 0;
}

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

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

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

.boxKutron04.kodawari02 .inner {
	right: inherit;
	bottom: inherit;
	color: #000000;
	position: relative;
	text-align: left;
}

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

.boxKutron04.kodawari03 figcaption {
	bottom: 10px;
}

.boxKutron04.kodawari03 .inner {
	position: relative;
	bottom: inherit;
}

.kutron .facebookBox {
	width: 100%;
	max-width: 310px;
}

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

	温泉の紹介

========================================== */
.boxHotspring02 p {
    margin: 0 0 5px 0;
}

.boxHotspring02 table {
    margin: 0 0 20px 0;
    font-size: 100%;
}

.boxHotspring02 table th {
    padding: 0 15px 0 0;
}

.boxHotspring02 table:last-child {
    margin: 0 0 0 0;
}

.boxHotspring03 ul li {
    margin: 0 0 0 0;
    width: 120px;
}

.boxHotspring03 ul li:nth-child(2) {
    float: right;
}

.boxHotspring03 ul li:nth-child(3) {
    clear: both;
    margin: 0 auto;
    float: none;
}

.boxHotspring03 ul li:nth-child(4) {
    clear: both;
}

.boxHotspring03 ul li:nth-child(5) {
    float: right;
}

.boxHotspring05 table {
    display: block;
    margin: 20px 0 -10px 0;
}

.boxHotspring05 table tbody,
.boxHotspring05 table tr {
    display: block;
}

.boxHotspring05 table th {
    font-size: 100%;
    padding: 0 0 5px 0;
    display: block;
}

.boxHotspring05 table td {
    font-size: 100%;
    padding: 0 0 15px 0;
}

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

	お問い合わせ

========================================== */
.boxInquiry01 .boxBorder p font {
    font-size: 180%;
    letter-spacing: 1px;
    margin: 0 0 10px 0;
}

.boxInquiry01 .boxBorder p:last-child {
    margin: -10px 0 0 0;
}

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

	ゆ〜とろんの特徴

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

.boxFeatureCatch h2 {
    font-size: 160%;
    margin: 0 0 20px 0;
}

.boxFeatureCatch p {
    text-align: left;
}

.boxFeatureCatch h2:before {
    background-size: 50px 55px;
    width: 50px;
    height: 55px;
    top: auto;
    bottom: -10px;
}

.boxFeatureCatch h2:after {
    background-size: 45px 45px;
    width: 45px;
    height: 45px;
    top: -10px;
    left: 0;
}

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