/*! normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css */
html {
    line-height: 1.15;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust:100%
}

body {
    margin:0
}

article, aside, footer, header, nav, section {
    display:block
}

h1 {
    font-size: 2em;
    margin:0.67em 0
}

figcaption, figure, main {
    display:block
}

figure {
    margin:1em 40px
}

hr {
    box-sizing: content-box;
    height: 0;
    overflow:visible
}

pre {
    font-family: monospace, monospace;
    font-size:1em
}

a {
    background-color: transparent;
    -webkit-text-decoration-skip:objects
}

abbr[title] {
    border-bottom: none;
    text-decoration: underline;
    text-decoration:underline dotted
}

b, strong {
    font-weight:inherit
}

b, strong {
    font-weight:bolder
}

code, kbd, samp {
    font-family: monospace, monospace;
    font-size:1em
}

dfn {
    font-style:italic
}

mark {
    background-color: #ff0;
    color:#000
}

small {
    font-size:80%
}

sub, sup {
    font-size: 75%;
    line-height: 0;
    position: relative;
    vertical-align:baseline
}

sub {
    bottom:-0.25em
}

sup {
    top:-0.5em
}

audio, video {
    display:inline-block
}

audio:not([controls]) {
    display: none;
    height:0
}

img {
    border-style:none
}

svg:not(:root) {
    overflow:hidden
}

button, input, optgroup, select, textarea {
    font-family: sans-serif;
    font-size: 100%;
    line-height: 1.15;
    margin:0
}

button, input {
    overflow:visible
}

button, select {
    text-transform: none
}

button, html [type="button"], [type="reset"], [type="submit"] {
    -webkit-appearance: button
}

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
    border-style: none;
    padding: 0
}

button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
    outline:1px dotted ButtonText
}

fieldset {
    padding:0.35em 0.75em 0.625em
}

legend {
    box-sizing: border-box;
    color: inherit;
    display: table;
    max-width: 100%;
    padding: 0;
    white-space:normal
}

progress {
    display: inline-block;
    vertical-align:baseline
}

textarea {
    overflow: auto
}

[type="checkbox"], [type="radio"] {
    box-sizing: border-box;
    padding: 0
}

[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
    height: auto
}

[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}

[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
    -webkit-appearance:none
}

::-webkit-file-upload-button {
    -webkit-appearance: button;
    font:inherit
}

details, menu {
    display:block
}

summary {
    display:list-item
}

canvas {
    display:inline-block
}

template {
    display:none
}

[hidden] {
    display:none
}

@font-face {
    font-family: 'fontawesome';
    src: url("./fonts/fontawesome-webfont.eot?") format("eot"), url("./fonts/fontawesome-webfont.woff") format("woff")
}

@font-face {
    font-family: 'YuMinchoMedium';
    src: url("./fonts/YuMinchoMedium.eot?") format("eot"), url("./fonts/YuMinchoMedium.woff") format("woff")
}

@font-face {
    font-family: 'YuMinchoDemibold';
    src: url("./fonts/YuMinchoDemibold.eot?") format("eot"), url("./fonts/YuMinchoDemibold.woff") format("woff")
}

@font-face {
    font-family: 'VollkornSC-Regular';
    src: url("./fonts/VollkornSC-Regular.eot?") format("eot"), url("./fonts/VollkornSC-Regular.woff") format("woff")
}

.regular, body {
    font-family: 'YuMinchoMedium', serif
}

.bold {
    font-family: 'YuMinchoDemibold', serif
}

html {
    font-size:62.5%
}

body {
    -moz-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    text-size-adjust: 100%;
    color: #333;
    background:#fff
}

a {
    color: #333;
    text-decoration:underline
}

a:hover {
    text-decoration:none
}

h1, h2, h3, h4, h5, h6, p, ul, ol, dl, table, figure, figcaption {
    padding: 0;
    margin:0
}

h1, h2, h3, h4, h5, h6 {
    font-weight: normal;
    margin-bottom:20px
}

h1 {
    font-size: 3.8rem;
    line-height:1.2
}

h2 {
    font-size: 2.4rem;
    line-height:1.2
}

h3 {
    font-size: 2rem;
    line-height:1.42
}

h4 {
    font-size: 1.8rem;
    line-height:1.42
}

h5 {
    font-size: 1.6rem;
    line-height:1.42
}

h6 {
    font-size: 1.4rem;
    line-height:1.42
}

p {
    font-size: 1.4rem;
    line-height: 1.62;
    margin-bottom:20px
}

ul, ol {
    font-size: 1.4rem;
    line-height: 1.62;
    padding-left: 2rem;
    margin-bottom:20px
}

dl {
    font-size: 1.4rem;
    line-height: 1.572;
    margin-bottom:20px
}

dl dt {
    margin-bottom:10px
}

table {
    font-size: 1.3rem;
    line-height: 1.42;
    border-collapse: collapse;
    margin-bottom:20px
}

table th {
    font-weight:normal
}

figure {
    margin-bottom:20px
}

figcaption {
    font-size: 1.4rem;
    line-height: 1.42;
    margin:5px 0
}

img {
    vertical-align:bottom
}

hr {
    border: none;
    margin: 40px auto;
    clear:both
}

.pc {
    display:block
}

.pc.inline {
    display:inline
}

.smp {
    display:none
}

.smp.inline {
    display:none
}

@media screen and (max-width: 768px) {
    .pc {
        display:none
    }

    .pc.inline {
        display:none
    }

    .smp {
        display:block
    }

    .smp.inline {
        display:inline
    }
}


@media (max-width: 768px) {
	.visible-xs { display: none !important}
}
@media (min-width: 769px) {
	.hidden-xs { display: none !important}
}



.header {
    position: relative;
    z-index:998
}

.header .logo {
    width: 320px;
    height: 80px;
    background: rgba(255, 255, 255, 0.96);
	transition:background-color 0.2s linear 0s;
    position: fixed;
    left: 80px;
    top: 0
}
.header .logo a {
    width: 100%;
    height: 80px;
    background: url(../images/common/header-logo-bk.png) no-repeat 20px center;
    -moz-background-size: 260px auto;
    -webkit-background-size: 260px auto;
    background-size: 260px auto;
    text-indent: 100%;
    display: block;
    overflow: hidden;
	white-space: nowrap
}

@media screen and (max-width: 768px) {
    .header {
        width: 100%;
        height: 70px;
        position: fixed;
        left: 0;
        top: 0;
        z-index: 998;
        padding-left: 70px;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing:border-box
    }

    .header .logo {
        width: 180px;
        height: 70px;
        background: transparent;
        position: absolute;
        left: 50%;
        top: 0;
        transform:translate(-50%, 0)
    }

    .header .logo a {
        width: 100%;
        height: 70px;
		background: url(../images/common/logo.png) no-repeat center center;
        -moz-background-size: auto 36px;
        -webkit-background-size: auto 36px;
        background-size:auto 36px
    }
}

@media screen and (min-width: 768px) {
    .header .logo.for-home {
        width: 320px;
        height: 80px;
        background: transparent;
		transition:background-color 0.2s linear 0s;
        position: absolute;
        left: 80px;
        top: 50vh;
        margin-top:-50px
    }

    .header .logo.for-home a {
        background: transparent url(../images/common/header-logo.png) no-repeat 20px center;
        -moz-background-size: 300px auto;
        -webkit-background-size: 300px auto;
        background-size: 300px auto
    }
}

#menu {
    position: relative;
    z-index:999
}

#menu #menu-button {
    position: fixed;
    left: 0;
    top: 0;
    z-index:2
}

#menu #menu-button .btn-menu .icon-menu {
    width: 80px;
    height: 80px;
    vertical-align: bottom;
    background: rgba(255, 255, 255, 0.96);
    cursor: pointer;
    -webkit-tap-highlight-color: transparent;
    -webkit-box-shadow: none;
    box-shadow: none;
    outline:none
}

#menu #menu-button .btn-menu .icon-menu .line {
    stroke: #333;
    stroke-width:2
}

#menu #menu-button .btn-menu .icon-menu .line.line1 {
    transform-origin: 20px 0px;
    transform: translate(0, 0) rotate(0);
    transition:transform .4s ease 0s
}

#menu #menu-button .btn-menu .icon-menu .line.line2 {
    opacity: 1;
    transform: translateX(0, 0);
    transition:all .2s ease 0s
}

#menu #menu-button .btn-menu .icon-menu .line.line3 {
    transform-origin: 20px 20px;
    transform: translateY(0) rotate(0);
    transition:transform .4s ease 0s
}

#menu #menu-button .btn-menu.active .icon-menu .line1 {
    transform:translate(-0.5px, 11px) rotate(45deg)
}

#menu #menu-button .btn-menu.active .icon-menu .line2 {
    opacity: 0;
    transform:translateX(-5px)
}

#menu #menu-button .btn-menu.active .icon-menu .line3 {
    transform:translate(-2px, -10px) rotate(-45deg)
}

#menu #menu-container {
    width: 100%;
    height: 100%;
    background: rgba(0, 0, 0, 0.9);
    position: fixed;
    left: 0;
    top: 0;
    z-index: 1;
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    display:none
}

#menu #menu-container.active {
    display: block;
    animation:modal-fade .6s ease 0s forwards
}

#menu #menu-container .inner {
    width: 100%;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 140px;
    /*position: absolute;
    left: 0;
    top: 50%;
    transform:translateY(-50%)*/
}

#menu #menu-container .inner ul {
    width: 80%;
    font-size: 2rem;
    list-style: none;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 30px;
    margin:0
}

#menu #menu-container .inner ul li {
    border: 1px solid rgba(255, 255, 255, 0.2);
    border-width: 1px 0 0
}

#menu #menu-container .inner ul li:last-child {
    border-width: 1px 0
}

#menu #menu-container .inner ul li a {
    color: #fff;
    text-decoration: none;
    padding: 20px 20px 20px 0;
    background: url(../images/common/arrow-menu.png) no-repeat right center;
    display:block
}

#menu #menu-container .inner ul.menu-sub {
	width: 100%;
	font-size: 1.6rem
}
#menu #menu-container .inner ul.menu-sub li {
	border: none!important
}
#menu #menu-container .inner ul.menu-sub li a {
	padding: 10px 10px 10px 0;
	border: 1px solid rgba(255, 255, 255, 0.2);
	border-width: 1px 0 0 0!important
}

@media screen and (max-width: 768px) {
    #menu #menu-button .btn-menu .icon-menu {
        width: 70px;
        height:70px
    }

    #menu #menu-container {
        padding-top: 100px;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing:border-box
    }

    #menu #menu-container .inner {
        padding: 20px;
        position: static;
        transform:translateY(0)
    }

    #menu #menu-container .inner ul {
        width: 100%;
        font-size: 1.6rem;
        padding:0
    }

    #menu #menu-container .inner ul:last-child li:last-child {
        border-bottom:1px solid rgba(255, 255, 255, 0.2)
    }

    #menu #menu-container .inner ul li {
        border: 1px solid rgba(255, 255, 255, 0.2);
        border-width:1px 0 0
    }

    #menu #menu-container .inner ul li:last-child {
        border-width:1px 0 0
    }

    #menu #menu-container .inner ul li a {
        padding:15px 15px 15px 0
    }
}

@media screen and (min-width: 768px) {
    #menu #menu-button.for-home {
        position: absolute;
        left: 0;
        top: 50vh;
        margin-top:-50px
    }
}

@keyframes modal-fade {
    0% {
        opacity:0
    }

    100% {
        opacity:1
    }
}

.headline {
    font-size: 4rem;
    line-height:.8
}

.headline.center {
    text-align:center
}

.headline .eng {
    font-family: 'VollkornSC-Regular', serif;
    font-size: 1.4rem;
    font-style: normal;
    letter-spacing:.4rem
}






/* アコーディオンメニュー*/
.accordion {
	margin: 3em auto;
	width: 80%
}
.toggle {
  display: none;
}
.option {
  position: relative;
}
.accordion .title,
.accordion p a {
	font-size: 1.6rem;
	color: #fff;
	text-decoration:none;
    display:block
}
.accordion p a {
	background: url(../images/common/arrow-menu.png) no-repeat right center;
}
.accordion .alltop a {
	font-size: 2rem
}
.title,
.content {
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transform: translateZ(0);
  transition: all 0.3s;
}
.title {
	padding: 1em;
    display: block;
    font-weight: bold;
	border: 1px solid rgba(255, 255, 255, 0.2);
    border-width: 1px 0 0
}
.title:after, .title:before {
	content: "";
    position: absolute;
    right: 1.25em;
    top: 1.25em;
    width: 2px;
    height: 0.75em;
    transition: all 0.3s;
	background: #ccc
}
.title:after {
  transform: rotate(90deg);
}

.content {
  max-height: 0;
  overflow: hidden;
}
.accordion .option + p {
	border: 1px solid rgba(255, 255, 255, 0.2);
    border-width: 1px 0 0;
	padding-top:1em
}

.toggle:checked + .title + .content {
	max-height: 500px;
	transition: all 0.5s;
}
.toggle:checked + .title:before {
  transform: rotate(90deg) !important;
}









#reservation {
    position: relative;
    z-index:999
}

#reservation #reservation-button {
    position: fixed;
    left: 0;
    bottom: 0;
    z-index:2
}

#reservation #reservation-button .btn-reservation {
    font-size: 1.6rem;
    color: #333;
    text-decoration: none;
    padding: 25px 50px 25px 45px;
    background: rgba(255, 255, 255, 0.96);
    display:block
}

#reservation #reservation-button .btn-reservation::before {
    content: '';
    width: 24px;
    height: 24px;
    vertical-align: -6px;
    display: inline-block;
    background: url(../images/common/icon-calendar.png) no-repeat 0 0;
    -moz-background-size: 24px auto;
    -webkit-background-size: 24px auto;
    background-size: 24px auto;
    margin-right:10px
}

#reservation #reservation-container {
    width: 100%;
    height: 100vh;
    color: #fff;
    background: rgba(0, 0, 0, 0.9);
    position: fixed;
    left: 0;
    top: 0;
    z-index: 1;
    display:none
}

#reservation #reservation-container .inner {
    position: absolute;
    left: 50%;
    top: 50%;
    transform:translate(-50%, -50%)
}

#reservation #reservation-container.active {
    display: block;
    animation:modal-fade .6s ease 0s forwards
}

#reservation #reservation-container a, #reservation #reservation-container a:hover {
    color: #fff;
    text-decoration:none
}

#reservation #reservation-container .headline {
    margin-bottom:40px
}

#reservation #reservation-container ul {
    width: 640px;
    font-size: 2.4rem;
    text-align: center;
    list-style: none;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    margin:0 auto
}

#reservation #reservation-container ul li {
    width: 100%;
    border: 1px solid transparent;
    border-width: 0 0 1px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#reservation #reservation-container ul li a {
    width: 100%;
    color: #fff;
    background: rgba(255, 255, 255, 0.3);
    padding: 20px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display:block
}

#reservation #reservation-container ul.secondary {
    font-size:1.4rem
}

#reservation #reservation-container ul.secondary li {
    width: 50%;
    border-width:0 1px 1px 0
}

#reservation #reservation-container ul.secondary li:nth-child(even) {
    border-width:0
}

#reservation #reservation-container .notice {
    margin-top:20px
}

#reservation #reservation-container .notice p {
    font-size:1.2rem
}

#reservation #reservation-container .close .btns-close {
    width: 50px;
    height: 50px;
    text-indent: -9999px;
    background: url(../images/common/btn-close.png) no-repeat 0 0;
    display: block;
    overflow: hidden;
    position: absolute;
    right: 0;
    top:0
}

#reservation #reservation-button-smp {
    width: 100%;
    position: fixed;
    left: 0;
    bottom: 0;
    z-index:1
}

#reservation #reservation-button-smp a {
    width: 100%;
    height: 60px;
    font-size: 1.8rem;
    color: #fff;
    line-height: 60px;
    text-decoration: none;
    text-align: center;
    background: rgba(23, 63, 117, 0.96);
    display:block
}

#reservation #reservation-button-smp a::before {
    content: '';
    width: 24px;
    height: 24px;
    vertical-align: -5px;
    display: inline-block;
    background: url(../images/common/icon-calendar-w.png) no-repeat 0 0;
    -moz-background-size: 24px auto;
    -webkit-background-size: 24px auto;
    background-size: 24px auto;
    margin-right:10px
}

#language {
    position: absolute;
    right: 20px;
    top: 20px;
    z-index:998
}

#language p {
    margin:0
}

#language .btn-langnav {
    color: #fff;
    text-decoration: none;
    line-height: 40px;
    background: url(../images/common/icon-language.png) no-repeat left center;
    padding-left: 24px;
    display:block;
	font-size: 2rem;
}

#language #langnav {
    position: absolute;
    right: 0;
    top: 40px;
    text-align: center;
    list-style: none;
    padding: 0;
    margin: 0;
    display:none
}

#language #langnav li {
    margin-bottom:1px
}

#language #langnav li span, #language #langnav li a {
    color: #aaa;
    text-decoration: none;
    background: rgba(0, 0, 0, 0.5);
    padding: 10px 20px;
    display:block
}

#language #langnav li a {
    color: #fff;
    background: rgba(0, 0, 0, 0.7);
    opacity: 1;
    transition:opacity .4s ease 0s
}

#language #langnav li a:hover {
    opacity:.6
}

@media screen and (max-width: 768px) {
    #language {
        position: fixed;
        right: 0;
        top:0
    }

    #language .btn-langnav {
        font-size: 1.2rem;
        line-height: 70px;
        padding:0 10px 0 24px
    }

    #language #langnav {
        top:70px
    }
}

.main-visual {
    width: 100%;
    height: 600px;
    background-color: #000;
    background-repeat: no-repeat;
    background-position: center center;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    background-size: cover;
    position: relative;
    z-index:1
}

.main-visual.main-visual-home {
    height:100vh
}

.main-visual.main-visual-home .slideshow .bx-wrapper {
    position: relative;
    z-index:1
}

.main-visual.main-visual-home .slideshow .bx-wrapper .bx-viewport {
    z-index:1
}

.main-visual.main-visual-home .slideshow .bx-wrapper .bx-viewport ul {
    list-style: none;
    padding: 0;
    margin:0
}

.main-visual.main-visual-home .slideshow .bx-wrapper .bx-viewport ul li {
    width: 100%;
    height: 100vh;
    background-repeat: no-repeat;
    background-position: center center;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    background-size:cover
}

.main-visual.main-visual-home .slideshow .bx-wrapper .bx-viewport ul li .cap {
    font-size: 1.2rem;
    color: #fff;
    position: absolute;
    right: 35px;
    bottom:15px
}

.main-visual.main-visual-home .slideshow .bx-wrapper .bx-controls {
    position: absolute;
    right: 15px;
    bottom: 20px;
    z-index:2
}

.main-visual.main-visual-home .slideshow .bx-wrapper .bx-controls .bx-pager {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

.main-visual.main-visual-home .slideshow .bx-wrapper .bx-controls .bx-pager .bx-pager-item {
    margin:0 5px
}

.main-visual.main-visual-home .slideshow .bx-wrapper .bx-controls .bx-pager .bx-pager-item .bx-pager-link {
    width: 10px;
    height: 10px;
    text-indent: -9999px;
    background: #fff;
    opacity: .3;
    overflow: hidden;
    display: block;
    border-radius:999px
}

.main-visual.main-visual-home .slideshow .bx-wrapper .bx-controls .bx-pager .bx-pager-item .bx-pager-link.active {
    opacity:1
}

.main-visual.main-visual-home::after {
    content: 'Scroll';
    font-family: 'VollkornSC-Regular', serif;
    font-size: 1.3rem;
    color: #fff;
    letter-spacing: 4px;
    text-indent: 4px;
    background: url(../images/home/scroll-arrow.png) no-repeat center bottom;
    padding-bottom: 50px;
    display: block;
    position: absolute;
    left: 50%;
    bottom: 0;
    z-index: 3;
    transform:translateX(-50%)
}

.main-visual.main-visual-off {
    height: 100px;
    background:transparent
}

@media screen and (max-width: 768px) {
    .main-visual.main-visual-full {
        height:50vh
    }

    .main-visual.main-visual-home {
        width: 100%;
        height:100vh
    }

    .main-visual.main-visual-home .slideshow .bx-wrapper .bx-viewport ul li {
        width: 100%;
        height:100vh
    }

    .main-visual.main-visual-home .slideshow .bx-wrapper .bx-viewport ul li .cap {
        font-size: 1rem;
        left: 10px;
        bottom:10px
    }

    .main-visual.main-visual-home .slideshow .bx-wrapper .bx-controls {
        position: absolute;
        right: 10px;
        bottom:10px
    }

    .main-visual.main-visual-home .slideshow .bx-wrapper .bx-controls .bx-pager .bx-pager-item {
        margin:0 3px
    }

    .main-visual.main-visual-home .slideshow .bx-wrapper .bx-controls .bx-pager .bx-pager-item .bx-pager-link {
        width: 6px;
        height:6px
    }

    .main-visual.main-visual-home::after {
        bottom:70px
    }

    .main-visual.main-visual-off {
        height:70px
    }
}

.center {
    text-align:center
}

.clr {
    clear:both
}

.clearfix {
    zoom:1
}

.clearfix:after {
    content: '';
    display: block;
    clear:both
}

.breadcrumb {
    font-size: 1.4rem;
    line-height: 1.42;
    margin:20px auto 40px
}

.breadcrumb a:after {
    content: '>';
    display: inline-block;
    margin:0 .6rem 0 1rem
}

.attention {
    text-indent: -.8rem;
    padding-left:.8rem
}

.attentions {
    list-style: none;
    padding:0
}

.attentions li {
    text-indent: -.8rem;
    padding-left:.8rem
}

.fade {
    opacity: 1;
    transition:opacity .4s ease 0s
}

.fade:hover {
    opacity:.6
}

.resizing, .slide .bx-wrapper .bx-viewport ul li img, .banners .banner img, .service .fig img, #access .routemap .routes .route img, #guide .guide-entries .entry .fig img, #service .facilities-entries .entry .fig img, #gallery .galleries li img, #formality .items .item .fig img {
    width: auto;
    height: auto;
    max-width: 100%;
    max-height:100%
}

@media screen and (max-width: 768px) {
    .col {
        width: 100%;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding:10px
    }
	
	.page-kiyomizu-home .col {
		padding : 10px 0 0
	}
}

.footer {
    width: 100%;
    color: #999;
}

.footer a {
    color: #999;
    text-decoration:none
}

.footer a:hover {
    color: #000
}

.footer .nav ul {
    list-style: none;
    padding: 0;
	margin: 0 0 1em 0
}

.footer .btn-return {
    width: 20px;
    height: 70px;
    text-indent: 100%;
    background: url(../images/common/btn-return.png) no-repeat 0 0;
    display: block;
    overflow: hidden;
	white-space: nowrap;
    position: fixed;
    right: 20px;
    z-index:99
}

.footer .btn-sns {
    width: 20px;
    height: 200px;
    display: block;
    position: fixed;
    left: 20px;
    top: 50%;
	margin-top: -100px;
    z-index:99;
	text-align: center
}

.btn-sns span {
	color: #333;
	font-size: 0.9rem;
	letter-spacing: 1px;
	margin-bottom: 20px;
}

.footer .btn-sns a {
	display: block;
	margin-bottom: 20px
}

.footer .btn-sns i {
	font-size: 2rem;
	color: #000
}

.footer .btn-sns i:hover {
	opacity: 0.7;
	filter: alpha(opacity=70);
}

.footer .inner {
	max-width: 1000px;
    padding: 70px 0;
    margin:0 auto
}

.footer .inner h2 {
    font-size: 1.8rem;
    line-height: 1.572;
    letter-spacing: 4px;
    margin:0 0 10px
}

.footer .inner p {
    font-size: 1.24rem;
    line-height: 1.572;
    letter-spacing: 4px;
    margin:0 0 10px
}
.footer .info {
    display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: flex-start;
	column-gap: 50px;
}
.footer .info p {
	display: inline-block;
	
}
.footer .info a {
	display: inline-block;
}
@media screen and (max-width: 768px) {
	.footer .info {
		justify-content: space-around;
	}
}

.footer .info img {
	width: 100%;
	max-width: 130px;
	height: auto
}

.footer .info {
	margin-bottom: 70px
}



.footer .fnav {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: flex-start;
    align-items:flex-start
}

.footer .sitemap ul {
    font-size: 1.24rem;
    line-height: 1.672
}

.footer .sitemap ul li {
    margin:10px 0
}

.footer .sitemap ul li a {
    background: url(../images/common/arrow-sitemap.png) no-repeat 0 2px;
    padding-left: 20px;
    display:block
}

.footer .copyright {
    font-size: 1.3rem;
    text-align: center;
    line-height: 70px;
    letter-spacing: 2px;
    margin:0
}

@media screen and (max-width: 768px) {
    .footer .inner {
        text-align: center;
        padding: 40px 10px;
        display:block
    }

    .footer .inner .logo {
        margin:0 auto 30px
    }

    .footer .inner .info {
        margin-bottom:40px
    }
	
	.footer .btn-return {
        right: 10px;
        bottom: 80px
    }

    .footer .sitemap ul {
        width: 50%;
        text-align: left;
        margin:0 0 20px
    }

    .footer .sitemap ul li {
        margin: 5px 0
    }

    .footer .copyright {
        line-height: 50px
    }
}

@media screen and (min-width: 769px) {
	.footer .btn-return {
		top: 50%;
		margin-top: -35px;
	}
}

/*-------------------------------------------------------

concept

-------------------------------------------------------*/
#concept .fig {
    width: 100%;
	-moz-background-size: cover!important;
    -webkit-background-size: cover!important;
    background-size: cover!important;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#concept .inner {
	max-width: 90%;
	margin: 0 auto;
    padding: 20px 0;
	justify-content: space-between;
	align-items: center
}

#concept h2 span {
	letter-spacing: 5px;
	margin-bottom: 20px
}

#concept .inner h2 small {
	display: block;
	color: #aaa;
	font-size: 1rem;
	letter-spacing: 1px
}

#concept .inner li {
	margin: 0 0 20px 0;
	list-style: none
}

#kiyomizu { margin-bottom: 50px}

#kiyomizu .fig {
    height: 500px;
    background: url(../images/home/kiyomizu-1.jpg) no-repeat center center
}

#kiyomizu h2 {
    font-size: 2.8rem;
    background: #fff
}

#kiyomizu .inner p,
#nishijin .inner p {
	width: 40%;
    line-height: 3.6rem;
    letter-spacing:.2rem
}

#kiyomizu .inner ul {
	width: 20%;
}

#kiyomizu h2 small,
#nishijin h2 small {
	margin-top: 30px
}

#nishijin { width: 90%; margin: 0 auto; justify-content: space-between; padding-bottom: 50px}
#nishijin .fig { height: 500px}
#kiyomizu h2,
#nishijin h2 { position: relative}
#nishijin p span { border: solid 1px #333; padding: 3px; margin-right: 1em}
#nishijin ul { width: 20%; justify-content: space-between; padding: 0}

#itsutsuji .fig {
    background: url(../images/home/mv_roku.jpg) no-repeat center center
}
#arima .fig {
    background: url(../images/home/mv_nishijin.jpg) no-repeat center center
}


@media screen and (max-width: 1000px) {
    #concept {
        height: auto;
        padding: 80px 20px 0;
        margin: 20px 0
    }

    #concept .inner {
        width: 100%;
        padding: 30px 0
    }

    #concept .inner h2 {
        font-size: 2.4rem;
        letter-spacing:1rem
    }
	
	#concept .inner h2 small {
	display: inline-block;
	margin-left: 2rem
	}

    #concept .inner p {
        line-height: 2;
        letter-spacing:0
    }
	#kiyomizu .inner p,
	#nishijin .inner p{
		width: 100%;
	}

	#kiyomizu .inner ul,
	#nishijin .inner ul {
		width: 100%;
	}
	#nishijin { width: 100%}
	#nishijin .inner { padding-top: 50px}
	#kiyomizu h2 span.sub,
	#nishijin h2 span.sub { position: absolute; top: -15px; left: 0; font-size: 1.1rem; letter-spacing: 0;margin-bottom: 10px}
	#nishijin p span { margin-bottom: 10px}
	#nishijin li { width: 100%; margin-bottom: 20px}
}

@media screen and (min-width: 1001px) {
    #concept.inview .inner {
        opacity: 0;
        transform: translateY(20px);
        transition:all 2s ease 1s
    }

    #concept.inviewed .inner {
        opacity: 1;
        transform:translateY(0)
    }
	#kiyomizu h2 {
    	padding: 40px 50px;
		text-align: center;
		margin-top: -180px;
		margin-left: 8%
	}
	#nishijin .inner { height: 300px}
	#nishijin .inner div { width: 70%}
	#nishijin h2 { text-align: center; margin-top: -120px; background: #fff}
	#nishijin #itsutsuji h2 { padding: 70px 50px}
	#nishijin #arima h2 { padding: 70px 50px}
/*	#kiyomizu h2 span.sub,*/
	#nishijin h2 span.sub { position: absolute; top: 20px; left: 90%;transform: translateX(-50%);font-size: 1rem; letter-spacing: 0}
	
	#concept h2 span {
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		-o-writing-mode: vertical-rl;
		writing-mode: vertical-rl;
		}
}

.btn-detail {
    font-size: 1.4rem;
    text-decoration: none;
    padding: 10px 50px 10px 40px;
    background: #fff;
    border: 2px solid #444;
    display: inline-block;
    position:relative
}

.btn-detail::after {
    content: '';
    width: 24px;
    height: 24px;
    background: url(../images/common/arrow-detail.png);
    -moz-background-size: 24px auto;
    -webkit-background-size: 24px auto;
    background-size: 24px auto;
    display: block;
    position: absolute;
    right: 10px;
    top: 50%;
    transform:translateY(-50%)
}

.btn-detail.white {
    color: #fff;
    border-color: #fff;
    background:transparent
}

.btn-detail.white::after {
    background-image:url(../images/common/arrow-detail-w.png)
}

.carousel .bx-wrapper {
    position: relative;
    overflow:hidden
}

.carousel .bx-wrapper .bx-viewport {
    width: 2400px !important;
    position: absolute;
    left: 50%;
    top: 0;
    transform:translateX(-50%)
}

.carousel .bx-wrapper .bx-viewport ul {
    list-style: none;
    padding: 0;
    margin:0
}

.carousel .bx-wrapper .bx-viewport ul li {
    width: 800px !important;
    height: 500px !important;
    background-repeat: no-repeat;
    background-position: center center;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    background-size:cover
}

.carousel .bx-wrapper .bx-controls .bx-prev, .carousel .bx-wrapper .bx-controls .bx-next {
    width: 60px;
    height: 60px;
    text-indent: -9999px;
    overflow: hidden;
    display: block;
    background-repeat: no-repeat;
    background-position: 0 0;
    -moz-background-size: 60px auto;
    -webkit-background-size: 60px auto;
    background-size: 60px auto;
    position: absolute;
    top: 50%;
    transform:translateY(-50%)
}

.carousel .bx-wrapper .bx-controls .bx-prev {
    background-image: url(../images/common/bx-prev.png);
    left:20px
}

.carousel .bx-wrapper .bx-controls .bx-next {
    background-image: url(../images/common/bx-next.png);
    right:20px
}

@media screen and (max-width: 768px) {
    .carousel .bx-wrapper .bx-viewport {
        width:1200px !important
    }

    .carousel .bx-wrapper .bx-viewport ul li {
        width: 400px !important;
        height:250px !important
    }

    .carousel .bx-wrapper .bx-controls .bx-prev, .carousel .bx-wrapper .bx-controls .bx-next {
        width: 30px;
        height: 30px;
        -moz-background-size: 30px auto;
        -webkit-background-size: 30px auto;
        background-size:30px auto
    }

    .carousel .bx-wrapper .bx-controls .bx-prev {
        left:10px
    }

    .carousel .bx-wrapper .bx-controls .bx-next {
        right:10px
    }
}

#room-for-home {
    position: relative;
    margin:50px 0
}

#room-for-home .summary {
    width: 800px;
    color: #fff;
    padding: 50px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: absolute;
    left: 50%;
    top: 50%;
    transform:translate(-50%, -50%)
}

#room-for-home .summary a, #room-for-home .summary a:hover {
    color: #fff;
    text-decoration:none
}

#room-for-home .summary h2 {
    font-size:4rem
}

@media screen and (max-width: 768px) {
    #room-for-home {
        padding: 0;
        margin:0
    }

    #room-for-home .summary {
        width: auto;
        color: #333;
        text-align: center;
        padding: 40px 20px;
        background: url(../images/home/about-bg.png) repeat 0 0;
        position: static;
        transform:translate(0, 0)
    }

    #room-for-home .summary h2 {
        font-size:3rem
    }

    #room-for-home .summary .btn-detail {
        color: #333;
        border-color:#444
    }

    #room-for-home .summary .btn-detail:hover {
        color:#333
    }

    #room-for-home .summary .btn-detail::after {
        background-image:url(../images/common/arrow-detail.png)
    }
	
	#room .summary {
		x-ms-flex-order: 1;
        -webkit-order: 1;
        order:1
	}
	
	#room .fig {
		x-ms-flex-order: 2;
        -webkit-order: 2;
        order:2
	}
}

.fig-and-summary {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items:center
}

.fig-and-summary .fig {
    width: 50%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    position: relative;
    margin:0
}

.fig-and-summary .summary {
    width: 50%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
    position:relative
}

.fig-and-summary.reverse .fig {
    -ms-flex-order: 2;
    -webkit-order: 2;
    order:2
}

.fig-and-summary.reverse .summary {
    -ms-flex-order: 1;
    -webkit-order: 1;
    order:1
}

@media screen and (max-width: 768px) {
    .fig-and-summary .fig {
        width:100%
    }

    .fig-and-summary .summary {
        width:100%
    }

    .fig-and-summary.reverse .fig {
        -ms-flex-order: 1;
        -webkit-order: 1;
        order:1
    }

    .fig-and-summary.reverse .summary {
        -ms-flex-order: 2;
        -webkit-order: 2;
        order:2
    }
}

.slide .bx-wrapper {
    position:relative
}

.slide .bx-wrapper .bx-viewport {
    z-index:1
}

.slide .bx-wrapper .bx-viewport ul {
    list-style: none;
    padding: 0;
    margin:0
}

.slide .bx-wrapper .bx-viewport ul li {
    width:100%
}

.slide .bx-wrapper .bx-controls {
    position: absolute;
    right: 15px;
    bottom: 20px;
    z-index:2
}

.slide .bx-wrapper .bx-controls .bx-pager {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

.slide .bx-wrapper .bx-controls .bx-pager .bx-pager-item {
    margin:0 5px
}

.slide .bx-wrapper .bx-controls .bx-pager .bx-pager-item .bx-pager-link {
    width: 10px;
    height: 10px;
    text-indent: -9999px;
    background: #fff;
    opacity: .3;
    overflow: hidden;
    display: block;
    border-radius:999px
}

.slide .bx-wrapper .bx-controls .bx-pager .bx-pager-item .bx-pager-link.active {
    opacity:1
}

#about { text-align: center; padding: 100px 8%}
#about h2 { font-size: 2.4rem; margin-bottom: 50px; line-height: 2}
#about h2 span { font-size: 3rem}

.banners {
    list-style: none;
    margin:0 auto;
	padding: 0;
	width: 100%;
	max-width: 818px
}


@media screen and (max-width: 768px) {
	#about h2 { font-size: 1.6rem; margin-bottom: 50px}
	#about h2 span { font-size: 2rem}
	#about p { font-size: 1.5rem}
    .banners {
        width:auto
    }

    .banners .banner {
        margin:10px
    }
	
	#banners-for-home a { 
		display: block;
		color: #fff;
		text-align: center;
		padding: 20px;
		margin: 0 auto;
		width: 80%;
		text-decoration: none;
		font-size: 2rem;
		letter-spacing: 2px;
		background-color: #951c1c;
		background-image: url(../images/common/btn-bg.png);
	}
}

#banners-for-home {
    margin: 0;
	padding: 88px 5%;
}

.entries .entry {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    -webkit-align-items: center;
    align-items:center;
	width: 80%;
	margin: 0 auto
}

.entries .entry .fig {
    width: 55%;
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
    margin:0
}

.entries .entry .fig img {
	width: 100%;
	height: auto
}

.entries .entry .summary {
    width: 45%;
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    -webkit-flex: 1;
    flex: 1;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 50px
}

.entries:nth-child(odd) .entry .summary {
	-ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
    -webkit-flex: 2;
    flex: 2;
}


.entries .entry .summary h2 {
    font-size: 4rem;
    line-height:1
}

.entries .entry .summary h2 .eng {
    font-family: 'VollkornSC-Regular', serif;
    font-size: 1.4rem;
    font-style: normal;
    color: #888;
    letter-spacing:.6rem
}

.entries .entry .summary p {
    font-size: 1.4rem;
    line-height:2
}

.entries .entry.reverse .fig {
    -ms-flex-order: 1;
    -webkit-order: 1;
    order:1
}

.entries .entry.reverse .summary {
    -ms-flex-order: 2;
    -webkit-order: 2;
    order:2
}

@media screen and (max-width: 768px) {
    .entries .entry .fig {
        width: 100%;
        -ms-flex-order: 1;
        -webkit-order: 1;
        order:1
    }

    .entries .entry .summary {
        width: 100%;
        padding: 20px;
        -ms-flex-order: 2;
        -webkit-order: 2;
        order:2
    }

    .entries .entry .summary h2 {
        font-size:3rem
    }

    .entries .entry.reverse .fig {
        -ms-flex-order: 1;
        -webkit-order: 1;
        order:1
    }

    .entries .entry.reverse .summary {
        -ms-flex-order: 2;
        -webkit-order: 2;
        order:2
    }
}

.scrollfix {
    padding-top: 100px;
    margin-top:-100px
}

@media screen and (max-width: 768px) {
    .scrollfix {
        padding-top: 70px;
        margin-top:-70px
    }
}

.service {
    width: 1080px;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    align-items: center;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: #f8f8f8;
    margin:80px auto
}

.service .fig, .service .summary {
    width: 50%;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin:0
}

.service .fig {
    -ms-flex-order: 1;
    -webkit-order: 1;
    order: 1;
    background-repeat: no-repeat;
    background-position: center center;
    -moz-background-size: cover;
    -webkit-background-size: cover;
    background-size:cover
}

.service .summary {
    -ms-flex-order: 2;
    -webkit-order: 2;
    order: 2;
    padding:50px
}

.service .summary h2, .service .summary h3 {
    font-size:3rem
}

.service .summary p {
    line-height:2
}

.service .summary p:last-child {
    margin:0
}

.service.reverse .fig {
    -ms-flex-order: 2;
    -webkit-order: 2;
    order:2
}

.service.reverse .summary {
    -ms-flex-order: 1;
    -webkit-order: 1;
    order:1
}

@media screen and (max-width: 768px) {
    .service {
        width: 100%;
        padding: 0 10px;
        background: transparent;
        margin:40px auto
    }

    .service .fig, .service .summary {
        width:100%
    }

    .service .summary {
        padding: 20px;
        background:#f8f8f8
    }

    .service.reverse .fig {
        -ms-flex-order: 1;
        -webkit-order: 1;
        order:1
    }

    .service.reverse .summary {
        -ms-flex-order: 2;
        -webkit-order: 2;
        order:2
    }
}

.greeting {
    width: 1080px;
    text-align: center;
    margin:70px auto
}

@media screen and (max-width: 768px) {
    .greeting {
        width: auto;
        padding: 10px;
        margin:20px auto
    }

    .greeting h1, .greeting h2, .greeting h3 {
        font-size:3rem
    }

    .greeting p {
        text-align:left
    }
}

#room {
    margin-bottom:100px
}

#room h2 {
	margin-bottom: 50px
}

#room .snav {
    font-size: 1.4rem;
    list-style: none;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: center;
    -webkit-justify-content: center;
    justify-content: center;
    margin: 80px 0
}

#room .snav li {
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    border-right:1px solid #ddd
}

#room .snav li:last-child {
    border:none
}

#room .snav li a {
    padding: 0 30px;
    display:block;
	background: #fff;
	text-decoration: none;
	transition:background .4s ease 0s
}
#room .snav li a:hover {
	background: #f8f8f8;
	transition:background .4s ease 0s
}

#room .snav li a .new {
    font-size: 1rem;
    color: #fff;
    line-height: 1.2;
    vertical-align: .2rem;
    padding: 4px 10px;
    background: #333;
    display: inline-block;
    margin-left:5px
}

#room .entries .entry .summary .btns {
    margin-top: 40px
}

#room .fig p {
	margin-top: 50px;
	text-align: center
}

#room #amenity {
	margin-top: 100px
}

#room #amenity .entry {
	background: #f8f8f8;
	/*background: #f8f8f8 url(../images/room/amenity-1.jpg) no-repeat;
	background-size: auto 100%;*/
	width: 70%;
	margin: 0 auto
}

#room #amenity .figure img {
	width: 100%;
	height: auto
}

#room #amenity .summary {
	width: 55%
}

#room #amenity .entry dt {
	font-weight: bold;
	padding-bottom: 0
}

#room #amenity .entry dt span {
	border: solid 1px #000;
	padding: 3px;
	text-align: center;
	width: 8em;
	display: inline-block
}

#room #amenity .entry dd {
	margin: 0
}

@media screen and (max-width: 768px) {
    #room {
        padding: 0;
        margin-bottom:50px
    }

    #room .snav {
        text-align:center
    }

    #room .snav li {
        width: 50%;
        border:none
    }

    #room .snav li a {
        padding:5px 0
    }

    #room .entries .entry .summary {
        padding-top:40px;
		width: 100%;
		padding-left: 0
    }

    #room .entries .entry .summary .btns {
        margin-top:20px
    }
	
	#room .entries .entry {
		border-bottom: solid 1px #ccc
	}
	
	#room .fig p img {
		width: 100%
	}
	
	#room #amenity .entry {
		width: 80%;
		border: none
	}
	#room #amenity .figure,
	#room #amenity .summary {
		width: 100%!important
	}
	#room #amenity .figure img {
		width: 100%!important
	}
	#room .btns a {
		width: 100%
	}
}

@media screen and (min-width: 769px){
	#room #amenity .figure {
		width: 45%;
		min-width: 470px
	}
	#room #amenity h3 { 
		margin-bottom: 50px
	}
}

#cuisine {
    padding:0
}

#cuisine .greeting {
    width: 1080px;
    text-align: center;
    padding: 0 10px;
    margin:80px auto
}

#cuisine .greeting p {
    line-height:2
}

#cuisine .greeting p.read {
    font-size: 2rem;
    line-height:1.572
}

#cuisine .course {
    font-size: 1.4rem;
    line-height: 1.42;
    margin:0 auto
}

#cuisine .course th, #cuisine .course td {
    padding:10px
}

#cuisine .course th {
    white-space: nowrap;
    vertical-align:top
}

@media screen and (max-width: 768px) {
    #cuisine .greeting {
        width: auto;
        margin:40px auto
    }

    #cuisine .greeting p {
        text-align:left
    }
}

#access h1 {
	margin-bottom: 60px
}

#access #access-about .read {
	background: #f8f8f8;
	padding: 30px 30px 20px;
	max-width: 600px;
	margin: 50px auto 0
}
#access #access-about .read p:last-child {
	font-size: 2rem;
	margin-top: 20px
}

#access #access-gmaps {
	width: 90%;
	margin: 0 auto
}

#access iframe {
	width: 100%;
    height: 500px
}

#access #access-route {
	max-width: 800px;
	margin: 0 auto;
	padding: 50px 5%
}

#access #access-route h2 {
	font-size: 1.8rem;
	margin-bottom: 50px
}

#access #access-route h3 {
	font-size: 1.6rem;
}

#access #access-route .note {
	padding: 0 0 10px 30px;
	margin-bottom: 30px;
	border-bottom: solid 1px #ccc
}

@media screen and (max-width: 768px) {
	#access #access-about .read p:last-child {
		font-size: 1.8rem
	}
    #access #access-gmap #gmaps {
        height:300px
    }
}

#faq {
    width: 960px;
    margin: 80px auto
}

#faq h1 {
    text-align: center;
    margin-bottom: 60px
}

#faq .greeting {
    width:960px
}

#faq dt,#faq dd {
	padding: 6px 0 2px 40px;
	margin: 0;
	position: relative;
	text-align: left
}

#faq dt {
	margin-bottom: 20px;
	font-weight: bold;
	font-size: 1.6rem
}

#faq dl {
	width: 100%;
	margin-bottom: 50px
}

#faq dt::before {
	content: "Q";
	color: #fff;
	background: #036eb8;
	line-height: 32px;
	width: 32px;
	text-align: center;
	font-size: 1.8rem;
	position: absolute;
	left: 0;
	top: 0
}

#faq dd::before {
	content: "A";
	color: #fff;
	background: #bbae8d;
	line-height: 32px;
	width: 32px;
	text-align: center;
	font-size: 1.8rem;
	position: absolute;
	left: 0;
	top: 0
}

#faq dd ul {
	margin-top: 1em;
	padding: 0
}

#faq dd li {
	list-style: none;
	padding-left: 1em;
	text-indent: -1em;
	margin-bottom: 5px
}

#faq dd li span {
	background: #eee;
	padding: 6px;
	text-indent: 0;
	margin: 5px 0 10px
}

#faq dd li p {
	margin: 5px 0 5px 20px 
}

#faq .ttl {
    font-size: 1.6rem;
    line-height: 60px;
    border-top: 1px solid #ddd;
    margin:0
}

#faq .ttl .accordion {
    padding-left: 50px;
    display: block;
    position:relative
}

#faq .ttl .accordion::before {
    content: '';
    width: 40px;
    height: 40px;
    background: url(../images/faq/arrow-accordion.png) no-repeat 0 0;
    -moz-background-size: 40px auto;
    -webkit-background-size: 40px auto;
    background-size: 40px auto;
    display: block;
    position: absolute;
    left: 0;
    top: 10px;
    transition:background .4s ease 0s
}

#faq .ttl .accordion.active::before {
    background-position:0 -40px
}

#faq .faqs {
    padding:20px 0
}

#faq .faqs .q, #faq .faqs .a {
    min-height: 40px;
    padding: 2px 0 0 40px;
    background-repeat: no-repeat;
    background-position: 0 0;
    -moz-background-size: 30px auto;
    -webkit-background-size: 30px auto;
    background-size: 30px auto;
    margin:0
}

@media screen and (max-width: 768px) {
    #faq {
        width: 100%;
        margin:0 auto 40px
    }

    #faq .greeting {
        width:auto
    }

    #faq .ttl {
        font-size:1.4rem
    }
	
	#faq dd li span {
		display: block
	}
	
	#faq dd li p {
		margin-left: 0
	}
}

#guide {
    max-width: 80%;
    margin: 80px auto
}

#guide h1 {
    text-align: center;
    margin-bottom: 60px
}

#guide h2 {
	margin-bottom: 50px
}

#guide .guide-entries {
    justify-content: space-between
}

#guide .guide-entries .entry {
    width: 30%;
	padding-bottom: 30px
}

#guide .entry .fig {
    margin: 0 0 15px
}

#guide .entry h3 {
    font-size: 1.7rem;
	margin-bottom: 15px
}

#guide ul {
	justify-content: space-between;
	margin: 0 auto 100px;
	padding: 0
}

#guide li {
	width: 45%;
	border: solid 1px #ccc;
	list-style: none;
	margin: 0
}

#guide li a {
	display: block;
	text-align: center;
	padding: 20px;
	text-decoration: none;
	background: #f8f8f8
}

#guide iframe {
	width: 100%;
	height: 500px;
	border: none;
	frmae-botder: none
}

@media screen and (max-width: 768px) {
    #guide {
        width: auto;
        margin:40px auto
    }

    #guide h1 {
        font-size: 2.4rem
    }
	
	#guide h2 {
		font-size: 2rem
	}

    #guide .guide-entries {
        width: auto;
        margin:40px auto
    }

    #guide .guide-entries .entry {
        width:auto
    }

    #guide .guide-entries .entry .summary {
        padding: 20px 0 40px
    }

    #guide .guide-entries .entry .summary h2 {
        font-size:1.6rem
    }
	#guide li {
		width: 100%;
		margin-bottom: 20px
	}
}

#service {
    margin:0 auto 80px
}

#service .service-entries {
    width: 80%;
    margin: 0 auto
}

#service .service-entries .entry {
	margin-bottom: 50px
}

#service .service-entries .fig {
    width: 40%
}

#service .service-entries .fig img {
    width: 100%;
	height: auto
}

#service .service-entries .summary {
    width: 60%;
    padding: 30px;
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

#service .service-entries .summary li {
	list-style: none
}

#service .service-entries h2 {
    font-size: 2.2rem
}

@media screen and (max-width: 768px) {
    #service {
        margin:0 auto 40px
    }
	
	#service .service-entries .entry {
		border-bottom: solid 1px #eee;
		padding-bottom: 30px;
		margin-bottom: 30px
	}

    #service .service-entries .summary,
	#service .service-entries .fig{
		width: 100%;
        font-size: 1.8rem
    }
	
	#service .service-entries .summary {
		padding: 10px 0 30px
	}
}

.sparator {
    display: block;
    border-top:1px solid #e5e5e5
}

#gallery {
    width: 960px;
    margin:80px auto
}

#gallery h1 {
    text-align: center;
    margin-bottom:60px
}

#gallery h2 {
    font-size:2.4rem
}

#gallery .galleries {
    list-style: none;
    padding: 0;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content:space-between
}

#gallery .galleries li {
    width: 210px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin:20px 0
}

@media screen and (max-width: 768px) {
    #gallery {
        width: auto;
        margin:40px auto
    }

    #gallery h1 {
        font-size: 3rem;
        margin-bottom:40px
    }

    #gallery h2 {
        font-size: 2rem;
        text-align:center
    }

    #gallery .galleries li {
        width: 50%;
        padding: 10px;
        -moz-box-sizing: border-box;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin:0
    }
}

.spacer {
    display: block;
    margin:30px auto
}

#privacy {
    width: 960px;
    margin:80px auto
}

#privacy h1 {
    text-align: center;
    margin-bottom:40px
}

#privacy h2 {
    font-size: 2rem;
    line-height:1.572
}

#privacy ol li {
    margin:10px 0
}

#privacy ol li ul {
    margin:10px 0
}

#privacy ol li ul li {
    margin:5px 0
}

#privacy .alphabet {
    list-style-type:lower-latin
}

#privacy .contact {
    background: #f5f5f5;
    padding: 40px;
    margin-top:40px
}

#privacy .contact p:last-child {
    margin:0
}

@media screen and (max-width: 768px) {
    #privacy {
        width: auto;
        margin:40px auto
    }

    #privacy h1 {
        font-size: 3rem;
        margin-bottom:20px
    }

    #privacy h2 {
        font-size:1.6rem
    }

    #privacy .contact {
        text-align: center;
        padding:20px
    }
}

#terms {
    width: 960px;
    margin:80px auto
}

#terms h1 {
    text-align: center;
    margin-bottom:40px
}

#terms h2 {
    font-size: 2rem;
    line-height:1.572
}

#terms ol li {
    margin:5px 0
}

#terms table {
    width:100%
}

#terms table th, #terms table td {
    padding: 20px;
    border:1px solid #ddd
}

#terms table th.center, #terms table td.center {
    text-align:center
}

#terms table th {
    background:#f5f5f5
}

@media screen and (max-width: 768px) {
    #terms {
        width: auto;
        margin:40px auto
    }

    #terms h1 {
        font-size: 3rem;
        margin-bottom:20px
    }

    #terms table th, #terms table td {
        padding:10px
    }
}

#contact {
    width: 960px;
    margin:80px auto
}

#contact h1 {
    text-align: center;
    margin-bottom:40px
}

#contact .entryform {
    width: 100%;
    margin-top:40px
}

#contact .entryform th, #contact .entryform td {
    padding: 20px;
    border:1px solid #ddd
}

#contact .entryform th {
    white-space: nowrap;
    background:#f5f5f5
}

#contact .entryform .btns {
    text-align: center;
    border: none;
    background: none;
    padding:40px
}

#contact .entryform .btns .btn-submit {
    font-family: 'YuMinchoDemibold', serif;
    font-size: 1.4rem;
    color: #fff;
    background: #173f75;
    border: none;
    padding: 20px 40px;
    display: inline-block;
    cursor:pointer
}

#contact form input[type=text], #contact form textarea {
    font-size: 1.6rem;
    line-height: 1.572;
    border: 1px solid #ddd;
    padding: 5px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#contact form textarea {
    width:100%
}

@media screen and (max-width: 768px) {
    #contact {
        width: auto;
        margin:40px auto
    }

    #contact h1 {
        font-size: 3rem;
        margin-bottom:40px
    }

    #contact p.center {
        text-align:left
    }

    #contact .entryform th, #contact .entryform td {
        padding: 10px;
        display: block;
        border-width:1px 1px 0
    }

    #contact .entryform .btns {
        border-top:1px solid #ddd
    }

    #contact form input[type=text], #contact form textarea {
        font-size:1.4rem
    }

    #contact form input[type=text], #contact form textarea {
        width:100%
    }
}

.page-home.inview {
    opacity: 0;
    transition:opacity 2s ease 0s
}

.page-home.inviewed {
    opacity:1
}

#formality {
    max-width: 1080px;
    margin: 80px auto;
	padding: 0 5%
}

#formality h1 {
    text-align: center;
    margin-bottom:40px
}

#formality .read {
    text-align:center
}

#formality .items {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap:wrap
}

#formality .items .item {
    width: 50%;
    padding: 40px 40px 20px;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

#formality .summary h2 {
    background: #fff;
	padding: 20px 40px;
	display: inline-block;
	letter-spacing: 2px
}

#formality .item .summary {
	margin-top: -50px
}

@media screen and (min-width: 769px) {
	#formality .items .item:nth-child(2){
	margin-top: 150px;
	}
	#formality .items .item:nth-child(odd){
		margin-top: -150px;
	}
	#formality .items .item:nth-child(even){
		margin-bottom: 50px;
	}
	#formality .items .item:first-child{
		margin-top: 0;
	}
}

@media screen and (max-width: 768px) {
    #formality {
        width: auto;
        margin:40px auto
    }

    #formality h1 {
        font-size: 3rem;
        margin-bottom:20px
    }

    #formality .read {
        text-align:left
    }

    #formality .items .item {
        width: 100%;
        padding: 20px 0
    }
}





.flex { 
	display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

/*
.l-information__googlemap {
  -webkit-filter: grayscale(100%);
          filter: grayscale(100%); }
*/
  @media screen and (min-width: 600px) {
    .l-information__googlemap {
      width: 100%;
      height: 460px; } }
  @media screen and (max-width: 599px) {
    .l-information__googlemap {
      width: 100%;
      height: 245px; } }


#map { background: #f8f8f8}
#map dt,#map dd,#map p { font-size: 1.3rem}
#map dt { 
	border: solid 1px #ccc; padding: 5px 10px; background: #fff;
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;}
#map dd { 
	margin: 0; padding: 6px 10px;-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;}
#map .summary span {
	color: #951c1c
}

.map-inner {
	margin: 0 auto;
	padding: 80px 5%;
	max-width: 1100px;
}

.map-inner h2 small {
	font-size: 1.2rem;
	letter-spacing: 2px;
	color: #aaa
}

  @media screen and (min-width: 600px) {
	  .map-inner h2 {
			position: relative;
			width: 6em;
			text-align: center
		}
	  .map-inner h2 small {
			display: block;
			margin-top: 2em;
		}
	  #map dt { width: 32%;}
	  #map dd { width: 68%;}
    	#map .headline { width: 20%}
		#map .summary { width: 80%}
		.btn-sns span,
	  	.map-inner h2 span {
		-webkit-writing-mode: vertical-rl;
		-ms-writing-mode: tb-rl;
		-o-writing-mode: vertical-rl;
		writing-mode: vertical-rl;
		}
	}
  @media screen and (max-width: 599px) {
	  .map-inner h2 { margin-bottom: 50px}
	  .map-inner h2 small {
			display: inline-block;
			margin-left: 2em;
		}
	  #map dt { margin: 0; font-size: 1.5rem}
	  #map dd { margin-bottom: 10px; font-size: 1.5rem}
	  #map dd span { display: block}
	}


/*-------------------------------------------------

	footer

-------------------------------------------------*/

footer li a span { border-bottom: solid 1px #666; padding-bottom: 5px} 

footer .fnav-sub a {
	font-size: 1.2rem
}

footer .fnav-sns i {
	font-size: 1.8rem
}

footer .f-add li:first-child {
	margin-bottom: 10px
}

footer .f-add li {
	display: block;
	width: 100%
}

footer .f-add li span {
	font-size: 1.1rem;
	margin-left: 20px
}

.footer-fixed-btns {
	position: fixed;
	left: 0;
	bottom: 0;
	justify-content: space-between;
	width: 100%;
	margin: 0;
	z-index: 100
}

.footer-fixed-btns p {
	list-style: none;
	width: 33.3%;
	/*width: 24.8%;*/
	margin: 0;
	background-color: #343434
}

.footer-fixed-btns p a {
	color: #fff;
	display: block; 
	background-image: url("../images/home/btn-bg.png");
	background-size: 44px auto;
	text-align: center;
	font-size: 2rem;
	padding-bottom: 3px;
	text-decoration: none
}

.footer-fixed-btns p a small {
	display: block;
	font-size: 1rem;
	letter-spacing: 1px;
	color: #777
}

@media screen and (min-width: 769px) {
	footer { padding-bottom: 50px}
	footer li { margin-right: 2em}
	footer .fnav-sns { margin: 36px 0 30px!important}
	footer .fnav { margin-bottom: 30px!important}
	}
  @media screen and (max-width: 768px) {
	 footer .btn-sns { display: none!important}
	 footer { padding-bottom: 200px}
	 .footer .nav ul { margin-bottom: 50px}
	 footer .fnav:first-child li,
	 footer .fnav:last-child li { width: 100%; margin-bottom: 1em}
	 footer .fnav-sns { justify-content: center}
	 footer .fnav-sns li { width: 20%}
	 .footer-fixed-btns p a { padding-top: 3px; font-size: 1.3rem}
	}
@media screen and (max-width: 320px){
	.footer-fixed-btns p a { font-size: 1.2rem}
}

footer .logo img {
	display: inline-block
}

footer .logo .f-logo {
	margin: 0 0 10px 0
}

footer .logo .bookingcom {
	max-width: 110px!important;
	height: auto;
	margin: 0 0 0 50px
}

footer .logo .maikoya {
	max-width: 130px!important;
	height: auto;
	margin: 10px 0 0 50px
}
@media screen and (max-width: 768px){
	footer .logo .maikoya {
		max-width: 130px!important;
		height: auto;
		margin: 10px 0 0 0;
	}
	.footer .f-logo {
		width: 100%;
		max-width: 100%;
		margin-bottom: 30px!important;
	}
	.footer .f-logo img {
		max-width: 130px;
	}
	.footer .info p {
		margin-bottom: 30px!important;
	}
}


.btn-1 {
	text-align: center;
	color: #fff;
	display: block;
	padding: 20px;
	background-image: url(../images/common/btn-bg.png);
	background-size: 40px auto;
	text-decoration: none
}
.btn-2 {
	text-align: center;
	color: #fff;
	display: block;
	padding: 10px;
	background-image: url(../images/common/btn-bg.png);
	background-size: 40px auto;
	text-decoration: none;
	width: 200px
}

.btn-details {
	background-color: #26611c
}

.btn-reservation {
	background-color: #951c1c
}



#flow h2 {
	position: relative;
	font-size: 2rem;
	margin-bottom: 50px
}

#flow h2 span {
	position: absolute;
	top: -10px;
	left: -60px;
	display: block;
	text-align: center;
	height: 40px;
	width: 40px;
	font-size: 2rem;
	line-height: 40px;
	background: #000;
	color: #fff;
	border-radius: 50%
}

#flow .emergency {
	 padding-top: 100px 
}
#flow .emergency .inner {
	background: #f8f8f8;
	padding: 40px;
	text-align: center
}
#flow .emergency h2 {
	font-size: 2rem;
	margin-bottom: 30px;
	letter-spacing: 2px;
	padding: 0
}
#flow .emergency p {
	font-size: 1.6rem
}
#flow .emergency i {
	font-size: 2rem;
	display: inline-block;
	margin-right: 1em
}
#flow .emergency span {
	font-size: 3rem
}

@media screen and (min-width: 769px){
	#flow .emergency .fa-envelope {
	margin-left: 2em
	}
}
@media screen and (max-width: 768px){
	#flow .entry {
		width: 90%
	}
	
	#flow h2 {
		padding-left: 60px;
		margin-bottom: 30px
	}
	#flow h2 span {
		left: 0
	}
	#flow .summary {
		padding: 50px 0 20px
	}
}

.page-kiyomizu-home .main-visual {
	position: relative
}

.page-kiyomizu-home .main-visual ul {
	margin: 0;
	padding: 0
}

.page-kiyomizu-home .main-visual li {
	height: 600px;
	width: 100%;
	background-size: cover;
	list-style: none;
	margin: 0;
	padding: 0
}

.page-kiyomizu-home .main-visual p {
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -90px;
	margin-left: -90px;
	width: 180px;
	height: 180px;
	background: rgba(255,255,255,0.9);
	text-align: center;
	color: #000;
	padding: 55px 30px 15px;
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box;
	z-index: 200!important
}

.page-kiyomizu-home .main-visual .f-name {
	font-size: 3rem;
	letter-spacing: 10px;
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	-o-writing-mode: vertical-rl;
	writing-mode: vertical-rl;	
}
.page-kiyomizu-home .main-visual .sub {
	font-size: 1.2rem;
	position: absolute;
	top:20px;
	left: 50%;
	transform: translateX(-50%)
}

.page-kiyomizu-home .main-visual small {
	display: block;
	letter-spacing: 1px
}

.page-kiyomizu-home .movie {
	padding: 80px 50px;
	text-align: center
}

.page-kiyomizu-home .movie iframe {
	width: 800px; 
	height: 450px;
	margin: 0 auto
}

.page-kiyomizu-home #pamphlet {
	padding: 40px 18% 20px;
	text-align: center;
	background: #333
}

.page-kiyomizu-home #pamphlet a {
	color: #fff;
	text-decoration: none;
	position: relative;
	padding-left: 40px;
	font-size: 2rem
}

.page-kiyomizu-home #pamphlet a small {
	font-size: 1.2rem;
	margin-left: 5px;
	color: #999
}

.page-kiyomizu-home #pamphlet a i {
	font-size: 3rem;
	position: absolute;
	left: 0;
	top: -5px
}

.page-kiyomizu-home #kiyomizu-about {
	position: relative;
	background: url("../images/home/kiyomizu-about.jpg") no-repeat;
	background-position: 15% center;
	background-size: cover;
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}
.page-kiyomizu-home #nishijin-about {
	position: relative;
	background: url("../nishijin/images/home/nishijin-about.jpg") no-repeat;
	background-position: 15% center;
	background-size: cover;
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}
.page-kiyomizu-home #higashiyama-about {
	position: relative;
	background: url("../higashiyama_roku/images/home/higashiyama-about.jpg") no-repeat;
	background-position: 15% center;
	background-size: cover;
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.page-kiyomizu-home #kiyomizu-about > div,
.page-kiyomizu-home #nishijin-about > div,
.page-kiyomizu-home #higashiyama-about > div,
.page-kiyomizu-home #kiyomizu-room > div,
.page-kiyomizu-home #nishijin-room > div,
.page-kiyomizu-home #higashiyama-room > div{
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.page-kiyomizu-home #kiyomizu-about .summary, 
.page-kiyomizu-home #nishijin-about .summary,
.page-kiyomizu-home #higashiyama-about .summary{
	position: absolute;
	bottom: 0;
	left: -8%; 
	width: 410px;
	background: #fff;
	text-align: left;
	padding: 60px 60px 50px 0;
}

.page-kiyomizu-home #kiyomizu-room{
	position: relative;
	background: url("../images/home/kiyomizu-room.jpg") no-repeat
}
.page-kiyomizu-home #nishijin-room{
	position: relative;
	background: url("../nishijin/images/home/nishijin-room.jpg") no-repeat
}
.page-kiyomizu-home #higashiyama-room{
	position: relative;
	background: url("../higashiyama_roku/images/home/higashiyama-room.jpg") no-repeat
}

.page-kiyomizu-home #kiyomizu-room .summary ,
.page-kiyomizu-home #nishijin-room .summary,
.page-kiyomizu-home #higashiyama-room .summary{
	position: absolute;
	bottom: 0;
	right: -8%; 
	width: 410px;
	background: #fff;
	text-align: left;
	padding: 60px 0 50px 60px
}

.page-kiyomizu-home .sub-contents {
	padding: 80px 5%;
	background-color: #f8f8f8;
	background-image: url("../images/home/contents-bg.png");
	background-size: 50px auto
}

.page-kiyomizu-home .sub-contents-inner {
	width: 80%;
	margin: 0 auto
}

.page-kiyomizu-home .sub-contents .entry {
	align-items: center
}

.page-kiyomizu-home .sub-contents div {
	-moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    box-sizing:border-box
}

.page-kiyomizu-home .sub-contents .summary {
	width: 45%;
	text-align: left
}

.page-kiyomizu-home .sub-contents .figure {
	width: 55%
}

.page-kiyomizu-home .sub-contents .figure img {
	width: 100%;
	height: auto
}

@media screen and (min-width: 769px){
	.page-kiyomizu-home #kiyomizu-about h2,
	page-kiyomizu-home #nishijin-about h2,
	.page-kiyomizu-home #higashiyama-about h2,
	.page-kiyomizu-home #kiyomizu-room h2,
	.page-kiyomizu-home #nishijin-room h2,
	.page-kiyomizu-home #higashiyama-room h2{
		margin-bottom: 50px
	}
	.page-kiyomizu-home #kiyomizu-about,
	.page-kiyomizu-home #nishijin-about,
	.page-kiyomizu-home #higashiyama-about{
		position: relative;
		margin: 80px 0 80px 20%;
		width: 80%;
		height: 560px;
	}
	.page-kiyomizu-home #kiyomizu-room,
	.page-kiyomizu-home #nishijin-room,
	.page-kiyomizu-home #higashiyama-room{
		margin: 80px 20% 80px 0;
		width: 80%;
		height: 560px;
		background-position: 15% center;
		background-size: cover
	}
	.page-kiyomizu-home .sub-contents .summary {
		padding: 50px
	}
	.page-kiyomizu-home .sub-contents .entry:nth-child(even) .summary {
		order: 2
	}
	.page-kiyomizu-home .sub-contents .entry:nth-child(odd) .summary {
		padding-left: 100px
	}
	.page-kiyomizu-home .sub-contents .entry:nth-child(even) .summary {
		padding-left: 100px
	}
}

@media screen and (max-width: 768px){
	.page-kiyomizu-home #kiyomizu-about,
	.page-kiyomizu-home #nishijin-about,
	.page-kiyomizu-home #higashiyama-about{
		margin: 50px 0 280px;
		width: 100%;
		height: 360px;
		background-size: 100% auto
	}
	.page-kiyomizu-home #kiyomizu-about .summary,
	.page-kiyomizu-home #nishijin-about .summary,
	.page-kiyomizu-home #higashiyama-about .summary{
		position: absolute;
		bottom: -270px;
		left: 0; 
		width: 100%;
		background: #fff;
		text-align: left;
		padding: 20px 30px 30px;
		-moz-box-sizing: border-box;
    	-webkit-box-sizing: border-box;
    	box-sizing:border-box
	}
	.page-kiyomizu-home #kiyomizu-room,
	.page-kiyomizu-home #nishijin-room,
	.page-kiyomizu-home #higashiyama-room{
		margin: 80px 0 200px;
		height: 360px;
		background-size: 100% auto
	}
	.page-kiyomizu-home #kiyomizu-room .summary ,
	.page-kiyomizu-home #nishijin-room .summary,
	.page-kiyomizu-home #higashiyama-room .summary{
		position: absolute;
		bottom: -160px;
		right: 0; 
		width: 100%;
		background: #fff;
		text-align: left;
		padding: 20px 30px 30px;
		-moz-box-sizing: border-box;
    	-webkit-box-sizing: border-box;
    	box-sizing:border-box
	}
	.page-kiyomizu-home .sub-contents-inner {
		width: 90%;
		margin: 0 auto
	}
	.page-kiyomizu-home .sub-contents .entry {
		margin-bottom: 40px
	}
	.page-kiyomizu-home .sub-contents .figure {
		margin-bottom: 20px
	}
	.page-kiyomizu-home .sub-contents .summary,
	.page-kiyomizu-home .sub-contents .figure {
		width: 100%
	}
	.page-kiyomizu-home .sub-contents .btn-2 {
		width: 100%;
		-moz-box-sizing: border-box;
	    -webkit-box-sizing: border-box;
    	box-sizing:border-box
	}
	.page-kiyomizu-home .sub-contents .summary {
		order: 2
	}
	.page-kiyomizu-home .movie iframe {
	width: 100%; 
	height: 200px;
	margin: 0 auto
}
}


.youtube_area {
	text-align: center;
	padding: 0 5% 5%;
	margin: 0 auto;
	max-width: 600px
}
.youtube_item {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube_item iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}
.banners-container {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto 50px;
	width: 90%;
	max-width: 1100px;
}
.banners-container div {
	width: 47%;
	list-style: none;
}
.banners-container div img {
	width: 100%;
	height: auto
}
@media screen and (max-width: 768px) {
	.banners-container {
	margin-bottom: 30px;
}
	.banners-container div {
		width: 100%
	}
	.banners-container div:first-child{
		margin-bottom: 30px
	}
}


/*-------------------------------------------------------

#news

-------------------------------------------------------*/
#news {
	padding: 0 5% 100px;
}
#news h2 {
	text-align: center
}
#news dl {
	margin: 0 auto 10px;
	max-width: 800px;
	list-style: none;
	border-bottom: solid 1px #ccc;
	padding: 0  10px 10px;
	display: flex;
}
#news .thumbnail{
	width: 100px; 
	height: 60px;
	margin: 0
}
#news .thumbnail img {
	width: 100px; 
	height: 60px;
	object-fit: cover;
}
#news dd {
	width: calc(100% - 120px);
	display: flex;
	flex-wrap: wrap;
	align-items: center;
	padding: 0
}
#news .date {
	margin:0 2em
}
#news .item p{
	margin: 0!important
}
#news .btn-3{
	color: #fff;
	text-align: center;
	display: block;
	padding: 10px 30px;
	margin: 0 auto;
	max-width: 200px;
	background: #333;
	text-decoration: none;
	transition:background-color 0.2s linear 0s;
}
#news .btn_news_list a:hover {
	background: #999;
}
@media screen and (max-width: 768px){
	#news .date{ width: 100%;display: block; margin: 0}
}