@charset "utf-8";

/* onsen */

.onsen01-slider .swiper-wrapper,
.onsen02-slider .swiper-wrapper,
.onsen03-slider .swiper-wrapper {
	margin-bottom: 80px;
}
.swiper-container-horizontal>.swiper-scrollbar {
    height: 1px!important;
    background: #e3e3e3!important;
    width: 100%!important;
    left: 0!important;
}
.onsen01-slider .swiper-wrapper .swiper-slide,
.onsen02-slider .swiper-wrapper .swiper-slide,
.onsen03-slider .swiper-wrapper .swiper-slide {
	height: 525px;
	    overflow: hidden;
}
.swiper-scrollbar-drag {
    background: #0f0f0f!important;
}
.onsen01-slider img,
.onsen02-slider img,
.onsen03-slider img {
	width: 100%;
}

.heading {
    position: relative;
}

section .heading p {
    margin-bottom: 25px;
    display: inline-block;
    font-size: 11px!important;
    letter-spacing: 1px!important;
}
section .heading:after {
    content: "";
    display: inline-block;
    width: 68%;
    margin-left: 5%;
    color: #e3e3e3;
    position: relative;
    bottom: 3px;
    border-bottom: 1px solid;
}
.roten ul li h3,
.taru ul li h3,
.daiyokujou ul li h3 {
    color: #711827;
    font-size: 30px;
    font-family: source-han-serif-japanese, serif;
    font-weight: 200;
    line-height: 1.6;
    margin-bottom: 80px;
    letter-spacing: 3.5px;
}
.roten ul li:nth-child(2) p,
.daiyokujou ul li:nth-child(2) p,
.taru ul li:nth-child(2) p {
    font-size: 16px;
    color: #737373;
    letter-spacing: 2px;
    line-height: 2;
    font-family: source-han-serif-japanese, serif;
}


.onsen-about {
    background: white;
   padding-bottom: 160px;
}
.onsen .mv .mv__hero img {
    width: 100%;
}
.onsen-about__top {
    padding-top: 160px;
}
/*.onsen-about__top .ttl h3 {
    color: #711827;
    line-height: 1.8;
    letter-spacing: 5px;
}*/
/*.onsen-about__top .ttl h3 {
    color: #711827;
    line-height: 1.6;
    letter-spacing: 5px;
    font-size: 30px;
    font-weight: 400;
    font-family: source-han-serif-japanese, serif;
}*/
.onsen-about__top .ttl {
    position: relative;
}
.onsen-about__top .ttl h3:after {
    content: "";
    display: block;
    height: 80px;
    border-right: 1px solid #e3e3e3;
    position: absolute;
    left: 50%;
    /* top: 30px; */
    margin-top: 25px;
}
.onsen-about__top .ttl {
    margin-bottom: 130px;
}
.onsen-about__top p {
    text-align: center;
    font-size: 16px;
    line-height: 2;
    letter-spacing: 2px;
    color: #737373;
    margin-bottom: 80px;
   font-family: source-han-serif-japanese, serif;
}
.onsen-about__center {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
}
.onsen-about__center ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.onsen-about__center ul li:nth-child(1) {
    margin-right: 20px;
}
.onsen-about__center ul li img {
    width: 100%;
}
.onsen-about .link-btn {
    margin-right: calc((100vw - 1200px)/2);
}
section .heading p {
    line-height: 1.8!important;
    letter-spacing: 2px!important;
}

/* roten */
.roten {
    padding-top: 240px;
}
.roten ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
       background: white;
}
.roten ul li:nth-child(1) {
    width: 55vw;
    margin-top: -120px;
}
.roten ul li:nth-child(2) {
    background: white;
    padding-left: 80px;
    padding-top: 80px;
   padding-bottom: 60px;
   -webkit-box-flex: 1;
       -ms-flex: 1;
           flex: 1;
    padding-right: calc((100vw - 1200px)/2);
}
.roten .link-btn {
    margin-right: auto;
    margin-left: 0;
}
.roten ul li:nth-child(2) .link-btn {
    margin-top: 170px;
}
.roten .heading:after {
    width: 265px;
    position: absolute;
    bottom: 33px;
}

/* taru */
.taru {
    padding-top: 340px;
    background: white;
}
.taru .heading:after {
    width: 69%;
    position: absolute;
    bottom: 33px;
}
.taru ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.taru ul li:nth-child(1) {
    padding-right: 80px;
    padding-bottom: 60px;
    padding-left: calc((100vw - 1200px)/2);
    width: 100%;
    max-width: 450px;
    position: relative;
    bottom: -14px;
}
.taru ul li:nth-child(2) {
    width: 55vw;
    position: relative;
    margin-top: -180px;
    height: 525px;
}
.taru ul li:nth-child(1) p {
    font-size: 16px;
    color: #737373;
    line-height: 2;
    letter-spacing: 2px;
    font-family: source-han-serif-japanese, serif;
}
.taru ul li:nth-child(1) .link-btn {
    margin-top: 285px;
    margin-right: auto;
    margin-left: 0;
}

/* daiyokujou */
.daiyokujou {
    padding-top: 360px;
    background: white;
    /* margin-bottom: 240px; */
    padding-bottom: 120px;
    margin-bottom: 120px;
}
.daiyokujou ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}
.daiyokujou ul li:nth-child(1) {
    width: 55vw;
    margin-top: -120px;
}
.daiyokujou ul li:nth-child(2) {
    background: white;
    padding-left: 80px;
    padding-top: 80px;
       -webkit-box-flex: 1;
           -ms-flex: 1;
               flex: 1;
      padding-bottom: 180px;
         margin-bottom: -120px;
    padding-right: calc((100vw - 1200px)/2);
}
.daiyokujou .link-btn {
    margin-right: auto;
    margin-left: 0;
}
.daiyokujou .heading:after {
    width: 76%;
    position: absolute;
    bottom: 33px;
}
.daiyokujou ul li:nth-child(2) .link-btn {
    margin-top: 170px;
}


/* guidance */
/*.guidance .ttl h3 {
    margin-bottom: 40px;
    font-size: 24px;
    font-weight: 400;
    font-family: source-han-serif-japanese, serif;
}*/
.guidance .ttl p {
	font-size: 16px;
    color: #737373;
    letter-spacing: 2px;
    line-height: 2;
    font-family: source-han-serif-japanese, serif;
}
.guidance .box {
}
.guidance .box ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
}
.guidance .box ul li ul:nth-of-type(1) {
    border: 1px solid #cfcfcf;
    height: 150px;
    width: 400px;
}
.guidance .box ul li ul li:first-child {
    background: #0f0f0f;
       width: 120px;
        text-align: center;
}
.guidance .box ul li ul li:first-child img {
    width: 25px;
    position: relative;
    top: 40px;
       margin-bottom: 10px;
}
.guidance .box ul li ul li:first-child p {
    color: white;
position: relative;
    top: 50px;
    font-size: 14px;
    letter-spacing: 2px;
   font-family: source-han-serif-japanese, serif;
}
.guidance .box ul li ul li:last-child {
    width: 100%;
    max-width: 280px;
}
.guidance .box ul li:first-child ul:nth-of-type(1) {
    margin-right: 20px;
}
.guidance {
    padding-bottom: 160px;
    padding-top: 120px;
    background: white;
}
.guidance .box ul li ul li:last-child p.time span {
    font-size: 16px;
}
.guidance .box ul li ul li:last-child p.time {
    font-size: 20px;
    text-align: center;
    margin-top: 25px;
    letter-spacing: 2px;
    margin-bottom: 10px;
    font-family: source-han-serif-japanese, serif;
}
.guidance .box ul li:nth-child(2) ul li:last-child p span.cap {
    margin-bottom: 0;
    text-align: center;
    width: 165px;
}
.guidance .box ul li ul li:last-child span.cap {
    display: block;
    font-size: 11px;
    opacity: 0.4;
    letter-spacing: 2px;
    text-align: center;
    margin-bottom: 20px;
    font-family: source-han-serif-japanese, serif;
}
.guidance .box ul li ul li:last-child p.txt {
    text-align: center;
    font-family: source-han-serif-japanese, serif;
    color: #737373;
    text-indent: -21px;
    padding-left: 21px;
    line-height: 1.6;
    font-size: 13px;
    letter-spacing: 1px;
}
.guidance .box ul li:nth-child(2) ul li:last-child {
    margin-left: 60px;
    margin-top: 10px;
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    line-height: 1.8;
}
.guidance .box ul li ul li:last-child p {
    font-size: 16px;
    font-family: source-han-serif-japanese, serif;
}
.guidance .box ul li:nth-child(2) ul li:last-child p:not(:last-of-type) {
    margin-bottom: 0;
}
.guidance .box ul li ul li:last-child p span.slash {
    font-size: 13px;
    margin: 0 10px;
}
.guidance .box ul li ul li:last-child p span.num {
    font-size: 20px;
    letter-spacing: 2px;
}

@media screen and (max-width: 768px) {
    .mv .mv__hero img {
        height: 100vh;
        width: auto!important;
        margin-top: -10px;
    }
}

/* sp */
@media screen and (max-width: 834px) {
    .mv {
        /*height: 100vh!important;
        max-height: 100vh!important;*/
        width: 100%!important;
        padding: 0!important;
        background: white!important;
        position: relative!important;
        overflow: hidden!important;
    }
    .mv .mv__hero {
    overflow: hidden;
    position: relative;
    width: 100%;
    height: calc(100% + 40px);
}
.mv .mv__hero .ttl {
    bottom: 10%;
}
.mv .mv__hero img {
    height: 100vh;
}
.mv .mv__hero .ttl h2 {
/*    font-size: 26px!important;*/
    text-shadow: 1px 1px 8px #4a4a4a;
    font-weight: 300!important;
}
.breadcrumb {
    right: 0!important;
    height: 90px!important;
    line-height: 90px!important;
}
.breadcrumb ol li:nth-child(1):after {
    content: "";
    border-top: 1px solid #e3e3e3;
    display: block;
    width: 40px;
    position: absolute;
    bottom: 43px!important;
    left: 47px!important;
}
.mv .mv__hero img {
    height: 100%;
    /*width: auto!important;*/
    margin-left: 0;
    margin-top: 0px;
}
.mv .mv__hero {
    overflow: hidden!important;
    position: relative!important;
    width: 100%!important;
    height: 100%!important;
}
.onsen-about__top .ttl h3:after {
    content: "";
    display: block;
    height: 50px;
    border-right: 1px solid #e3e3e3;
    position: absolute;
    left: 50%;
    margin-top: 10px;
}
.onsen-about__top .ttl h3 {
    line-height: 1.6;
    font-size: 24px;
    margin-bottom: 10%;
}
.onsen-about__top {
    padding-top: 10%;
    padding-bottom: 10%;
}
.onsen-about__top p {
    width: 90%;
    margin: 0 auto;
}
.onsen-about__center ul li:nth-child(1) {
    margin-right: 3%;
}
.onsen-about {
    padding-bottom: 10%;
}
.onsen-about .link-btn {
    margin-right: 5%;
}
.onsen-about .link-btn {
    max-width: 180px!important;
}
.roten ul,
.daiyokujou ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.roten ul li:nth-child(1),
.daiyokujou ul li:nth-child(1) {
    width: 90%;
    height: 400px;
    margin: 0 auto;
    position: relative;
	order: 2;
}
	.onsen01-slider .swiper-wrapper .swiper-slide, .onsen02-slider .swiper-wrapper .swiper-slide, .onsen03-slider .swiper-wrapper .swiper-slide {
		height: 400px;
	}
.roten ul li:nth-child(2),
.daiyokujou ul li:nth-child(2) {
    padding: 5%!important;
    width: 90%;
    margin: 0 auto;
    padding-top: 200px!important;
}
.roten,
.daiyokujou {
    padding-top: 10%;
}
section .heading {
    margin-top: 10%;
    margin-bottom: 5%;
}
.heading p {
    margin-bottom: 0!important;
}
section .heading:after {
    width: 60%;
}
section.taru .heading:after {
    width: 85%!important;
    bottom: 8px;
}
section ul li h3 {
    margin-bottom: 6%!important;
}
.roten ul li:nth-child(2) .link-btn,
.daiyokujou ul li:nth-child(2) .link-btn {
    margin-top: 10%;
}
.onsen01-slider .swiper-wrapper, .onsen02-slider .swiper-wrapper, .onsen03-slider .swiper-wrapper {
    margin-bottom: 7%;
}
.roten ul li:nth-child(2) {
    padding-bottom: 0!important;
    padding-right: 5%;
    padding-left: 5%;
    width: 35%;
    order: 1;
    margin-bottom: 5%;
    padding-top: 0!important;
}
.taru {
    padding-top: 10%;
}
.taru ul {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
}
.taru ul li:nth-child(2) {
    -webkit-box-ordinal-group: 2;
        -ms-flex-order: 2;
            order: 2;
    height: 400px;
    right: 0;
    width: 90%;
    margin: 0 auto;
    position: relative;
    z-index: 100;
}
	.taru ul li:nth-child(1) {
		    width: 100%!important;
    max-width: 100%!important;
		    bottom: 0;
	}
.taru ul li:nth-child(2):after {
    display: none;
}
.taru ul li:nth-child(1) {
    -webkit-box-ordinal-group: 3;
        -ms-flex-order: 2;
            order: 2;
    width: 90%;
    margin: 0 auto;
    padding-left: 0;
    padding-right: 0;
}
.taru ul li:nth-child(1) .link-btn {
    margin-top: 10%;
    margin-left: auto;
    margin-right: 0;
}
.taru ul li:nth-child(1) {
    padding-bottom: 0;
	    margin-bottom: 5%!important;
}
.roten ul {
    background: white;
}
.roten .heading:after {
    width: 71%!important;
    bottom: 7px;
}
section ul li:nth-child(2) .heading p,
.taru ul li:nth-child(1) .heading p {
    font-size: 11px!important;
}
.daiyokujou .heading:after {
    width: 88%!important;
    bottom: 8px;
}
.daiyokujou ul li:nth-child(2) {
    padding-bottom: 5%!important;
	padding-top: 0!important;
}
.daiyokujou {
    margin-bottom: 10%;
    padding-top: 10%;
}
.guidance .box ul {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
	    height: 142px;
}
.guidance .box ul li ul li:first-child {
    width: 80px;
}
.guidance .box ul li ul li:last-child {
    max-width: 220px;
}
.guidance .box ul li ul:nth-of-type(1) {
    width: 300px;
}
.guidance .box ul li:first-child ul:nth-of-type(1) {
    margin-right: 20px;
    height: 140px;
    margin-bottom: 10%;
}
.guidance .ttl h3 {
    margin-bottom: 5%!important;
    font-size: 20px;
}
.guidance .box ul li ul li:first-child p {
    font-size: 12px;
    letter-spacing: 1px;
}
.guidance .box ul li ul li:last-child p.time {
    margin-top: 10%;
}
.guidance .box ul li ul li:last-child span.cap {
    margin-bottom: 8%;
}
	.guidance .box ul li:nth-child(2) ul li:last-child p span.cap {
		    width: 140px;
	}
.guidance .box ul li ul li:last-child p.txt {
    font-size: 11px!important;
    text-indent: -19px;
    padding-left: 19px;
}
.guidance .box ul li:last-child ul {
    height: 140px;
}
.guidance .box ul li:nth-child(2) ul li:last-child {
    margin-left: 12%;
    margin-top: 6%;
}
.guidance {
    padding-bottom: 15%;
    padding-top: 10%;
}
.breadcrumb ol {
    width: 137px;
    margin-left: 80px;
}
.breadcrumb ol li:nth-child(1) {
    margin-left: 0!important;
}
.guidance .box ul li ul li:last-child p span.num {
    font-size: 16px;
}
.taru ul li:nth-child(1) .heading {
    margin-top: 10%;
}
	.onsen01-slider img, .onsen02-slider img, .onsen03-slider img {
    width: 100%!important;
    height: auto!important;
}
	.en .onsen-about__top .ttl h3 {
		width: 90%;
		margin: 0 auto;
	}
	.en .roten .heading:after {
    width: 40px;
    position: absolute;
    bottom: 8px;
    width: 41%!important;
}
	.en .daiyokujou .heading:after {
    width: 61%;
    position: absolute;
    bottom: 8px;
    width: 74%!important;
}
	.en .guidance .box ul li ul li:last-child span.cap {
		letter-spacing: 1px;
	}
}

.breadcrumb ol li:nth-child(1):after {
    left: 45px!important;
}

@media screen and (max-width: 1200px) {
    .onsen-about__center {
        width: 90%;
    }
	.hotspring .mv .mv__hero img {
    	/*width: auto;
   	 	height: 100%;*/
		    position: relative;
	}
    .onsen-about .link-btn {
        margin-right: 5%;
    }
    .roten ul li:nth-child(2) {
        padding-right: 5%;
        padding-left: 5%;
        width: 35%;
    }
    .taru ul li:nth-child(1) {
        padding-left: 5%;
        padding-right: 5%;
        margin-left: 0;
        width: 35%;
    }
    .daiyokujou ul li:nth-child(2) {
        padding-left: 5%;
        padding-right: 5%;
        width: 35%;
    }
    .roten .heading:after {
        width: 19vw;
    }
    .taru .heading:after {
        width: 20vw;
    }
    .daiyokujou .heading:after {
        width: 26vw;
    }
    .onsen .mv .mv__hero img {
        width: auto;
        height: 100%;
    }
}

.guidance .ttl h3 {
    font-size: 24px!important;
	    font-family: source-han-serif-japanese, serif;
	    margin-bottom: 40px;
}

@media screen  and (max-width: 480px) {
    .mv .mv__hero .ttl h2 {
        font-size: 26px!important;
        text-shadow: 1px 1px 8px #4a4a4a;
        font-weight: 300!important;
    }
	.guidance .box ul {
		height: 100%!important;
	}
	.guidance .box ul li:first-child {
    margin-bottom: 5%;
}
.guidance .box ul li {
    height: 142px;
}
    .breadcrumb {
        right: 0!important;
        width: 100%!important;
        height: 60px!important;
        line-height: 60px!important;
    }
	.hotspring .mv .mv__hero img {
		right: 0;
	}
	.guidance .ttl p {
    font-size: 14px;
}
	.guidance .box ul li ul li:last-child p.time span {
    font-size: 14px;
}
	.onsen-about__top p {
		font-size: 14px!important;
	}
	.breadcrumb ol {
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    section ul li h3 {
        font-size: 20px!important;
    }
    .taru ul li:nth-child(1) .heading {
        margin-top: 10%;
    }
    section ul li:nth-child(2) p,
    .taru ul li:nth-child(1) p {
        font-size: 14px!important;
    }
    .taru {
        padding-top: 15%;
    }
    .roten ul li:nth-child(1),
    .daiyokujou ul li:nth-child(1),
    .taru ul li:nth-child(2) {
        height: 250px;
    }
    .roten .heading:after {
        width: 47%!important;
        bottom: 7px;
    }
    section.taru .heading:after {
        width: 60%!important;
        bottom: 8px;
    }
    .daiyokujou .heading:after {
        width: 80%!important;
        bottom: 8px;
    }
    section.taru .heading:after {
        width: 74%!important;
    }
    .taru ul li:nth-child(1) {
        width: 100%;
		margin-bottom: 7%!Important;
    }
	.daiyokujou ul li:nth-child(2) {
		margin-bottom: 7%!important;
		    padding-bottom: 0!important;
	}
	section ul li h3 {
    margin-bottom: 7%!important;
}
    .daiyokujou {
        padding-top: 15%;
		    padding-bottom: 25%;
    }
    .breadcrumb ol li:nth-child(1):after {
        bottom: 28px!important;
    }
    .mv .mv__hero img {
        margin-left: -100%!important;
    }
    .guidance .box ul li ul li:last-child p.txt {
        font-size: 11px!important;
        text-indent: -17px;
        padding-left: 17px;
    }
    .guidance .box ul li ul li:last-child p.time {
        font-size: 16px!important;
    }
    .guidance .box ul li ul li:last-child p span.slash {
        font-size: 11px;
    }
    ul.gnav__menu:nth-of-type(2) {
        width: 45%;
    }
    .breadcrumb ol {
        margin: 0 auto!important;
    }
    .ttl.medium h3 {
        font-size: 20px!important;
        margin-bottom: 5%!important;
    }
    .guidance .box ul li:first-child ul:nth-of-type(1) {
        margin-right: 0;
        margin-bottom: 5%;
    }
	.onsen01-slider .swiper-wrapper .swiper-slide, .onsen02-slider .swiper-wrapper .swiper-slide, .onsen03-slider .swiper-wrapper .swiper-slide {
    height: 250px;
}
	.onsen01-slider img, .onsen02-slider img, .onsen03-slider img {
    width: auto!important;
    height: 250px!important;
    overflow: hidden;
}
	.onsen01-slider .swiper-wrapper, .onsen02-slider .swiper-wrapper, .onsen03-slider .swiper-wrapper {
    margin-bottom: 10%;
}
	.roten ul li:nth-child(2) {
		margin-bottom: 7%!important;
	}
	.guidance .ttl h3 {
    font-size: 20px!important;
    margin-bottom: 5%!important;
}
}

@media screen and (max-width: 1024px) and (orientation: portrait) {
.onsen01-slider img, .onsen02-slider img, .onsen03-slider img {
    width: auto;
    height: 100%;
}
}

/* English */
.en .guidance .box ul li ul li:first-child p {
	line-height: 1.6;
	margin-top: -2px;
}
.en .guidance .box ul li:nth-child(2) ul li:last-child {
	margin-left: 30px;
	margin-top: 16px;
}
.en .guidance .box ul li:nth-child(2) ul li:last-child p:nth-of-type(2) {
    line-height: 1.8;
    margin-top: 0;
    margin-bottom: -18px;
}
.en .roten .heading:after {
    width: 40px;
    position: absolute;
    bottom: 33px;
}
.en .daiyokujou .heading:after {
    width: 61%;
    position: absolute;
    bottom: 33px;
}
.en .guidance .box ul li:nth-child(2) ul li:last-child p:nth-of-type(2) span.right {
    position: relative;
    top: -10px;
}

.en .onsen-about__top .ttl h3 {
	letter-spacing: 2px;
}
.en .roten ul li h3, .en .taru ul li h3, .en .daiyokujou ul li h3 {
	letter-spacing: 2px;
}
.en .guidance .ttl h3 {
	letter-spacing: 2px;
}

@media screen and (max-width: 834px) {
	.guidance .box ul li ul li:last-child p {
		font-size: 14px;
	}
.en .guidance .box ul li:nth-child(2) ul li:last-child {
    margin-left: 16px;
    margin-top: 24px;
}
	.en .guidance .ttl h3 {
		line-height: 1.6;
	}
	.guidance .ttl {
    width: 90%;
    margin: 0 auto;
}
}

/* XO Event Calendar ------------------------- */
.hotspring_test .mv__hero {
	overflow: hidden;
}
.holiday-titles {
    margin-top: 10px;
}
.xo-event-calendar {
    overflow: unset!important;
}
.hotspring_calendar {
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
	margin-bottom: 60px;
}
.hotspring_calendar button {
    display: none;
}
.xo-event-calendar {
    margin: 0 auto;
}
.xo-months {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.xo-month-wrap {
    width: calc(50% - 10px);
}
.xo-event-calendar table.xo-month .month-dayname td div:not(.holiday-holiday):after {
    content: "13:00 〜 17:00";
    display: block;
    font-size: 10px;
}
.xo-event-calendar .xo-month-wrap:nth-of-type(2) table.xo-month .month-dayname td div:not(.holiday-holiday):after {
    content: "13:00 〜 17:00";
    display: block;
    font-size: 10px;
}
.hotspring_calendar .xo-event-calendar table.xo-month .month-dayname td div {
	text-align: center;
    padding-top: 8px;
}
.xo-event-calendar table.xo-month>thead th {
	padding: 10px 0 !important;
}
.xo-event-calendar table.xo-month>thead th.saturday,
.xo-event-calendar table {
    color: #0f0f0f!important;
}
.xo-event-calendar table.xo-month .month-dayname td div.other-month {
    opacity: .3!important;
    background: #000!important;
    color: #000;
}
span.calendar-caption {
    font-weight: 500;
    margin-bottom: 10px;
}
.hotspring_calendar .xo-event-calendar table.xo-month .month-header {
    margin: 0 0;
    background: #0f0f0f;
    color: #fff;
    padding-top: 10px;
}
.hotspring_calendar .xo-event-calendar table.xo-month .month-dayname-space {
	height: 2em;
}
.xo-month-wrap:first-of-type {
    margin-right: 20px;
}
.xo-event-calendar table.xo-month .month-dayname td div.today {
	color: #d00!important;
}
.hotspring_calendar table,
.xo-event-calendar p.holiday-title {
    font-family: source-han-serif-japanese, serif;
}
@media screen and (max-width: 768px) {
    .xo-event-calendar {
        width: 100%;
    }
    .xo-months {
        display: block;
    }
    .xo-month-wrap {
        width: 100%;
    }
	.xo-month-wrap:first-of-type {
		margin-bottom: 30px;
	}
    .hotspring_calendar {
        width: 100%;
    }
	.xo-event-calendar table.xo-month .month-dayname td div:not(.holiday-holiday):after {
		font-size: 10px;
	}
}
@media screen and (max-width: 1200px) {
	.hotspring_calendar {
		width: 90%;
	}
	.xo-event-calendar table.xo-month .month-dayname td div:not(.holiday-holiday):after {
		line-height: 1;
	}
}
