@charset "UTF-8";

.en     { font-family: 'EB Garamond', serif; }

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

       リセット

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

    html, body, div, span, applet, object, iframe, strong,
    h1, h2, h3, h4, h5, h6, p, blockquote, pre,
    a, abbr, acronym, address, big, cite, code,
    del, dfn, em, font, img, ins, kbd, q, s, samp,
    small, strike, sub, sup, tt, var,
    dl, dt, dd, ol, ul, li,
    fieldset, form, legend, caption, 
    tbody, tfoot, thead, table, label, tr, th, td{
	margin: 0;
	padding: 0;
	border: 0;
	outline: 0;
	font-style: inherit;
	font-family: inherit;
	vertical-align: baseline;
	list-style:none;
	}
    ul { 
	letter-spacing: -1em;
	word-spacing: -1em;
	}
    :root ul {
	letter-spacing: -1px;
	word-spacing: -1px;
	}
    li { 
	letter-spacing: normal;
	word-spacing: normal;
	*display: inline;
	*zoom: 1;
	}
    figure { margin:0;}
    figure video { max-width: 100%;}
    img,iframe	{ vertical-align:bottom;}

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

       メイン設定

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

html,body { width:100%; min-width: 320px; *width:320px; font-size:16px; }
body {
	background: #FFF;
    font-family: 'Shippori Mincho B1', serif;
	letter-spacing:0.05em;
	color: #021427;
    font-weight: 500;
	text-align:left;
	-webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
	line-height:200%;
    font-feature-settings: "palt" 1;
  	}

    .wrapper    { overflow:hidden;}
    article		{ position:relative; width:100%; z-index: 0;}
    section		{ position:relative; }

    .section-l	{ padding-top:12rem; padding-bottom:12rem; }
    .section	{ padding-top:8rem; padding-bottom:8rem; }
    .section-m	{ padding-top:6rem; padding-bottom:6rem; }
    .section-s	{ padding-top:4rem; padding-bottom:4rem; }
    .section-ss	{ padding-top:40px; padding-bottom:40px; }
    .second  	{ padding-top:0 !important; }
    .outer-l    { padding-left:2.78vw; padding-right:2.78vw; box-sizing:border-box; }
    .outer		{ padding-left:2.78vw; padding-right:2.78vw; box-sizing:border-box; }
    .outer-thin	{ padding-left:30px; padding-right:30px; box-sizing:border-box; }

    .inner-wrap-10p { padding:6% 10%; box-sizing:border-box; }
    .inner-wrap-8p { padding:8%; box-sizing:border-box; }
    .inner-wrap-6p { padding:6%; box-sizing:border-box; }
    .inner-wrap-l { padding:50px; box-sizing:border-box; }
    .inner-wrap { padding:25px 50px; box-sizing:border-box; }
    .inner-wrap-side { padding:0 50px; box-sizing:border-box; }
    
    
    .is-align-end .inner-wrap-10p { padding-bottom:0%; }
    .inner-wrap-10p.top-none { padding-top:0; }

    .row			{ margin-left:auto; margin-right:auto; position: relative;}
    .row .row		{ min-width: 0px; }
    .row:before,
    .row:after      { content:""; display:table; }
    .row:after      { clear: both; }
    .row            { zoom: 1; }

    .margin-auto { margin-left:auto; margin-right:auto; }
    .bottom-none    { padding-bottom:0 !important;}

    h1,h2,h3,h4,h5 { font-weight:500; letter-spacing: .05em; line-height: 150%;  }
    
    small { font-size:.75rem; }
    .bold { font-weight:bold;}

    @media screen and (min-width: 1921px) {
    html,body, .wrapper	{ font-size:17px;}
    }
    @media screen and (max-width: 1024px) {
    html,body, .wrapper	{ font-size:15px; line-height: 190%;}
    .outer-l            { padding-left:4vw; padding-right:4vw; }
    .outer			   { padding-left:30px; padding-right:30px; }
    .outer-thin	       { padding-left:30px; padding-right:30px; }
    
    .inner-wrap-10p    { padding:7% 10%; }
    .is-align-end .inner-wrap-10p { padding-bottom:7%; }
    .inner-wrap-l      { padding:7% 10%; }
    .inner-wrap        { padding:30px; }
    .inner-wrap-side   { padding:0 30px; }
    
    .text-lcc           { text-align: center; }
    
    .section-l	       { padding-top:7rem; padding-bottom:7rem; }
    .section	       { padding-top:5rem; padding-bottom:5rem; }
    .section-m	       { padding-top:4rem; padding-bottom:4rem; }
    .section-s	       { padding-top:3rem; padding-bottom:3rem; }
    .section-ss	       { padding-top:30px; padding-bottom:30px; }
    }
    @media only screen and (max-width: 767px) {
    html,body, .wrapper	{ font-size:15px; letter-spacing: 1px; line-height: 180%;}
	body			{ -webkit-text-size-adjust: 100%; -ms-text-size-adjust: 100%;}
    .section-l	    { padding-top:5.5rem; padding-bottom:5.5rem; }
    .section	    { padding-top:4.5rem; padding-bottom:4.5rem; }
    .section-m	    { padding-top:4rem; padding-bottom:4rem; }
    .section-s	    { padding-top:3rem; padding-bottom:3rem; }
    .section-ss	    { padding-top:20px; padding-bottom:20px; }
    .outer-l        { padding-left:6vw; padding-right:6vw; }
    .outer			{ padding-left:18px; padding-right:18px; }
    .outer-thin	    { padding-left:10px; padding-right:10px; }
    
    .inner-wrap-10p    { padding:8% 10%; }
    .is-align-end .inner-wrap-10p { padding-bottom:10%; }
    .inner-wrap-l      { padding:8% 10%; }
    .inner-wrap        { padding:25px 20px; }
    .inner-wrap-side   { padding:0 20px; }

    .center-left    { text-align:left;}
    .left-center    { text-align:center;}
    }
    @media only screen and (max-width:374px) {
    html,body, .wrapper	{ font-size:14px; }
    }

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

       Width ( wrap + wrap-1200 )

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

    .wrap       { width:100%; margin-left:auto; margin-right:auto; position: relative; z-index: 10; }

    .wrap-2000  { max-width:2000px; }
    .wrap-1900  { max-width:1900px; }
    .wrap-1800  { max-width:1800px; }
    .wrap-1700  { max-width:1700px; }
    .wrap-1600  { max-width:1600px; }
    .wrap-1516  { max-width:1516px; }
    .wrap-1500  { max-width:1500px; }
    .wrap-1400  { max-width:1400px; }
    .wrap-1300  { max-width:1300px; }
    .wrap-1240  { max-width:1240px; }
    .wrap-1200  { max-width:1200px; }
    .wrap-1100  { max-width:1100px; }
    .wrap-1050  { max-width:1050px; }
    .wrap-1000  { max-width:1000px; }
    .wrap-900   { max-width: 900px; }
    .wrap-840   { max-width: 840px; }
    .wrap-800   { max-width: 800px; }
    .wrap-780   { max-width: 780px; }
    .wrap-600   { max-width: 600px; }
    .wrap-300   { max-width: 300px; }

    .max240     { max-width:240px; width:100%;}
    .max300     { max-width:300px; width:100%;}
    .max350     { max-width:350px; width:100%;}
    .max400     { max-width:400px; width:100%;}
    .max450     { max-width:450px; width:100%;}
    .max500     { max-width:500px; width:100%;}
    .max550     { max-width:550px; width:100%;}
    .max600     { max-width:600px; width:100%;}
    .max650     { max-width:650px; width:100%;}
    .max700     { max-width:700px; width:100%;}
    .max550-widescreen { max-width:550px; width:100%;}

    .w4em { width:4em; }
    .w5em { width:5em; }
    .w6em { width:6em; }
    .w7em { width:7em; }
    .w8em { width:8em; }
    .w9em { width:9em; }
    .w10em { width:10em; }
    .w11em { width:11em; }
    .w12em { width:12em; }
    .w14em { width:14em; }
    
    .w20p { width:20%; }
    .w25p { width:25%; }
    .w33p { width:33%; }
    .w50p { width:50%; }

    .h100p { height:100%; }

    @media screen and (max-width: 1215px) {
    .max1000-desktop { max-width:1000px; width:100%;}
    }
    @media screen and (max-width: 1024px) {
    .wrap { max-width:700px; }
    }
    @media only screen and (max-width: 767px) {
    .wrap { max-width:350px; }
    }

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

       text

===================================================================================================*/
	.center		{ text-align:center;}
    .center-left{ text-align:center;}
    .center-left-tablet{ text-align:center;}
    .left-center{ text-align: left;}
    .left-center-tablet{ text-align: left;}
    .right-center-tablet{ text-align: right;}
	.text-l		{ text-align:left;}
    .text-r		{ text-align:right;}
@media screen and (max-width: 1024px) {
    .center-left-tablet{ text-align: left;}
    .left-center-tablet{ text-align: center;}
    .right-center-tablet{ text-align: center;}
    }
@media only screen and (max-width: 767px) {
    .center-left    { text-align:left;}
    .left-center    { text-align:center;}
    }
/*==================================================================================================

       Link

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

a {
	text-decoration:none;
	color:#222;
	cursor:pointer;
    opacity: 1;
    -webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	}
	a:hover {
	opacity: .6;
	}
	a img {
	-webkit-transition: all 0.3s ease;
	-moz-transition: all 0.3s ease;
	-o-transition: all 0.3s ease;
	}
	a:hover img {
	opacity:0.6;
	filter: alpha(opacity=60);
	-ms-filter: "alpha( opacity=60 )";
	}
/*==================================================================================================

       Other

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

.z10 { position: relative; z-index: 10; }
    img,.img-auto img {
        max-width: 100%;
        height: auto;
        width /***/:auto;
        vertical-align:bottom;
        }
    .radius,
    .radius video,
    .radius img {
        border-radius:         6px;
        moz-border-radius:     6px;
        -webkit-border-radius: 6px;
        -o-border-radius:      6px;
        -ms-border-radius:     6px;
        }

    .shadow	{
        box-shadow:	        0px 5px 5px rgba(0,0,0,.3);
        -moz-box-shadow:	0px 5px 5px rgba(0,0,0,.3);
        -webkit-box-shadow: 0px 5px 5px rgba(0,0,0,.3);
        -o-box-shadow:		0px 5px 5px rgba(0,0,0,.3);
        -ms-box-shadow:		0px 5px 5px rgba(0,0,0,.3);
        }

    .relative { position: relative;}

.flexslider-wrap {
    position: relative;
    width:100%;
    }
    .flexslider-wrap.h66p:after {
        content: "";
        display: block;
        padding-bottom:66.666666%;
        }
        .flexslider-wrap.h60p:after {
        content: "";
        display: block;
        padding-bottom:60%;
        }
        .flexslider-wrap.h50p:after {
        content: "";
        display: block;
        padding-bottom:50%;
        }
        .flexslider-wrap.h55p:after {
        content: "";
        display: block;
        padding-bottom:55%;
        }
        .flexslider-wrap.h61p:after {
        content: "";
        display: block;
        padding-bottom:61.11111%;
        }
        .flexslider-wrap .flexslider {
        position: absolute;
        top: 0;
        left: 0;
        bottom: 0;
        right: 0;
        }
    .flex-caption {
        padding: 3px 10px;
        margin: 0;
        color: #fff;
        font-size: .975rem;
        }

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

      　hover_zoom

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

.hover-zoom__image {
    overflow: hidden;
    position: relative;
    width:100%;
    -webkit-transition  : all .3s ease;
        -moz-transition : all .3s ease;
        -ms-transition  : all .3s ease;
            transition  : all .3s ease;
    }    
    .hover-zoom__image figure {
    -webkit-transition  : all .3s ease;
        -moz-transition : all .3s ease;
        -ms-transition  : all .3s ease;
            transition  : all .3s ease;
    }
    .hover-zoom__image:hover figure,
    a:hover .hover-zoom__image figure {
    opacity: 1;
    -moz-transform:    scale(1.1);
    -webkit-transform: scale(1.1);
    -ms-transform:     scale(1.1);
    transform:         scale(1.1);
    }
    .hover-zoom__image a:hover img,
    a:hover .hover-zoom__image img {
	opacity:1;
	filter: alpha(opacity=100);
	-ms-filter: "alpha( opacity=100 )";
	}

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

       デバイス

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

    .sp-none        { }
    .sp-inline-none { display:inline-block;}
	.sp-on		    { display:none;}
    .sp-inline-on   { display:none;}
	.tablet-on		{ display:none;}
	.tablet-none	{ }
    .sp-inline-table { display:none; }
    .w1200-none     { display:block; }
@media screen and (max-width: 1215px) {
    .desktop-none     { display:none; }
    }
@media screen and (max-width: 1024px) {
    .tablet-on		{ display:inherit;}
	.tablet-none	{ display:none;}
    }
@media screen and (max-width: 767px) {
    .sp-none		{ display:none;}
    .sp-inline-none { display:none;}
	.sp-on			{ display:inherit;}
    .sp-inline-on   { display:inline;}
    .sp-inline-table { display: inline-table; }
	.sp-text-l		{ text-align:left !important;}
	.sp-center		{ text-align:center;}
    }

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

       Flex

===================================================================================================*/
 
    .column .inner { width:100%;}
    .vertical-center { /* columnに付与 直下にinner設置 */
    display: flex;
    align-items: center;
    }
    .reverse-row-order {
    flex-direction: row-reverse;
    }
    
    .is-align-end { /* 下端揃え 親要素へ付与 */
    align-items: flex-end;
    }

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

      　pace

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

.intro {
    position: fixed;
    width:100%;
    height: 100%;
	z-index:-10;
	background:rgba(255,255,255,1);
	animation: fadeOut 2s ease 0s 1 normal;
	-webkit-animation: fadeOut 2s ease 0s 1 normal;
    opacity: 0;
	}
	@keyframes fadeOut {
	0% {opacity: 1; z-index:90000;}
    50% {opacity: 1; z-index:90000;}
	100% {opacity: 0; z-index:-10;}
	}
	@-webkit-keyframes fadeOut {
	0% {opacity: 1; z-index:90000;}
    50% {opacity: 1; z-index:90000;}
	100% {opacity: 0; z-index:-10;}
	}

#site_loader_overlay {
    z-index: 99999;
    position: fixed;
    top: 0px;
    left: 0px;
    width: 100%;
    width: 100vw;
    height: 100%;
    height: 100vh;
    background: #fff;
    opacity: 1;
    }
    .c-load {
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 48px;
    height: 48px;
    margin: auto;
    border-radius: 50%;
    font-size: 10px;
    text-indent: -9999em;
    -webkit-animation: loading-circle 1.1s infinite linear;
    animation: loading-circle 1.1s infinite linear;
    border: 3px solid rgba(10, 10, 10, 0.2);
    border-top-color: #0a0a0a;
    }
    @-webkit-keyframes loading-circle { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
    100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }
    @keyframes loading-circle { 0% { -webkit-transform: rotate(0deg); transform: rotate(0deg); }
    100% { -webkit-transform: rotate(360deg); transform: rotate(360deg); } }

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

       ボタン

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

.more {
        position:relative;
        font-weight:500;
        font-size:1rem;
        width:100%;
        max-width:270px;
        }
        .more a {
        width:100%;
        padding:1.25rem;
        box-sizing: border-box;
        line-height: 1;
        text-align: center;
        color:#FFF;
        background: #993333;
        font-weight:normal;
        white-space: nowrap;
        text-decoration:none !important;
        position: relative;
        z-index: 1;
        letter-spacing: 0.05em;
        display: inline-block;
        -webkit-transition: all 0.5s ease;
        -moz-transition: all 0.5s ease;
        -o-transition: all 0.5s ease;
        }
        .more a:after {
        position: absolute;
        content: "";
        width: 0;
        height: 100%;
        top: 0;
        right: 0;
        z-index: -1;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
        background:rgba(255,255,255,.3);
        }
        .more a:hover {
        opacity:1;
        }
        .more a:hover:after {
        left: 0;
        width: 100%;
        }
        
        .btn-radius a { border-radius: 4px; }

        @media screen and (max-width: 1024px) {
        }  
        @media screen and (max-width: 767px) {
        .more { margin-left:auto; margin-right:auto; }
        }

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

        テキスト

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

.red { color:#990000; }
.small { font-size: .825rem;}
.tategaki {
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        }
        .tategaki-nomber { /* 数字のみ横 */
        -webkit-text-combine: horizontal;
        -ms-text-combine-horizontal: all;
        text-combine-upright: all;
        }
        .tategaki-center {
        display: flex;
        justify-content: space-between;
        }
        .tategaki-center .inner {
        text-align: center;
        flex: 1;
        }
        .tategaki-center span {
        text-align: left;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        display: inline-block;
        box-sizing: border-box;
        }
        @media screen and (max-width: 1024px) {
        .tategaki-center.tablet-yokogaki span { -ms-writing-mode: lr-tb; writing-mode: horizontal-tb; text-align: center; }
        }
        @media screen and (max-width: 767px) {
        .tategaki-center.sp-yokogaki span { -ms-writing-mode: lr-tb; writing-mode: horizontal-tb;}
        }

    .ls-03em { letter-spacing: .3rem; }

    .f10 {font-size:10px;}
    .f12 {font-size:12px;}
    .f14 {font-size:14px;}
    .f15 {font-size:15px;}
    .f16 {font-size:16px;}
    .f17 {font-size:17px;}
    .f18 {font-size:18px;}
    .f21 {font-size:21px;}
    .f24 {font-size:24px;}
    .f27 {font-size:27px;}
    .f30 {font-size:30px;}
    .f33 {font-size:33px;}
    .f36 {font-size:36px;}
    .f45 {font-size:45px;}
    .f60 {font-size:60px;}
    .f72 {font-size:72px;}
    .f75 {font-size:75px;}
    .f90 {font-size:90px;}

    .lh100 { line-height:100%; }
    .lh125 { line-height:125%; }
    .lh150 { line-height:150%; }
    .lh175 { line-height:175%; }
    .lh180 { line-height:180%; }
    .lh200 { line-height:200%; }
    .lh220 { line-height:220%; }
    .lh250 { line-height:250%; }

    @media screen and (max-width: 1350px) {
    .f16 {font-size:15px;}
    .f17 {font-size:16px;}
    .f18 {font-size:17px;}
    .f21 {font-size:20px;}
    .f24 {font-size:22px;}
    .f27 {font-size:24px;}
    .f30 {font-size:27px;}
    .f33 {font-size:29px;}
    .f36 {font-size:31px;}
    .f45 {font-size:40px;}
    .f60 {font-size:54px;}
    .f72 {font-size:63px;}
    .f75 {font-size:68px;}
    .f90 {font-size:81px;}
    }
    @media screen and (max-width: 1024px) {
    .f12 {font-size:11px;}
    .f14 {font-size:12px;}
    .f15 {font-size:13px;}
    .f16 {font-size:14px;}
    .f17 {font-size:15px;}
    .f18 {font-size:16px;}
    .f21 {font-size:17px;}
    .f24 {font-size:18px;}
    .f27 {font-size:21px;}
    .f30 {font-size:24px;}
    .f33 {font-size:27px;}
    .f36 {font-size:29px;}
    .f45 {font-size:36px;}
    .f60 {font-size:45px;}
    .f72 {font-size:32px;}
    .f75 {font-size:56px;}
    .f90 {font-size:67px;}

    .lh220 { line-height:200%; }
    .lh250 { line-height:200%; }

    }
    @media screen and (max-width: 767px) {
    .f12 {font-size:10px;}
    .f14 {font-size:12px;}
    .f15 {font-size:13px;}
    .f16 {font-size:13px;}
    .f17 {font-size:13px;}
    .f18 {font-size:16px;}
    .f21 {font-size:17px;}
    .f24 {font-size:18px;}
    .f27 {font-size:19px;}
    .f30 {font-size:20px;}
    .f33 {font-size:21px;}
    .f36 {font-size:22px;}
    .f45 {font-size:30px;}
    .f60 {font-size:36px;}
    .f72 {font-size:42px;}
    .f75 {font-size:45px;}
    .f90 {font-size:36px;}

    .lh175 { line-height:160%; }
    .lh180 { line-height:160%; }
    .lh200 { line-height:180%; }
    .lh220 { line-height:180%; }
    .lh250 { line-height:180%; }
    }

/*================================================
      　list
================================================*/

.normal-list {
        }
        .normal-list li {
        padding: 0 0 .5em 1rem ;
        position: relative;
        display:inline-block;
        line-height: 160%;
        }
        .normal-list li:before {
        content: "・";
        display:block;
        position: absolute;
        top: 0;
        left: 0;
        font-size:10px;
        vertical-align: middle;
        }


.disk-list {
        }
        .disk-list li {
        padding: 0 0 .5em 1rem ;
        position: relative;
        line-height: 160%;
        }
        .disk-list li:before {
        content: "・";
        display:block;
        position: absolute;
        top: 0;
        left: 0;
        font-size:10px;
        vertical-align: middle;
        }
        @media screen and (max-width: 767px) {
        .disk-list li { display:inline-block;}
        }
.kome-list {
        }
        .kome-list li {
        padding: 0;
        position: relative;
        padding-left:1em;
        }
        .kome-list li:before {
        content: "※";
        display:block;
        position: absolute;
        top: 0;
        left: 0;
        font-size:10px;
        vertical-align: middle;
        }
.inline-list {
        
        }
        .inline-list li {
        padding: 0 1rem .5em 1rem ;
        position: relative;
        display: inline-block;
        }
        .inline-list li:before {
        content: "・";
        display:block;
        position: absolute;
        top: 0;
        left: 0;
        font-size:10px;
        vertical-align: middle;
        }
.links-list { position: relative; zoom: 1; }
        .links-list:before,.links-list:after { min-width: 0px; content:""; display:table; }
        .links-list:after { clear: both; }
        .links-list li {
        width:50%;
        float:left;
        margin-bottom:.5rem;
        }
        .links-list li a {
        position: relative;
        display: block;
        width:96%;
        margin:0 2%;
        text-align: center;
        padding:12px 1rem;
        box-sizing: border-box;
        border:1px solid rgba(1,1,1,.2);
        background:rgba(255,255,255,.75);
        }
        .links-list li a:after {
        position: absolute;
        content: "";
        width: 0;
        height: 100%;
        top: 0;
        right: 0;
        z-index: -1;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
        background:rgba(215,153,49,.4);
        }
        .links-list li a:hover:after {
        left: 0;
        width: 100%;
        }
        .links-list li a:hover { opacity: 1;}
.amenities-list {
        }
        .amenities-list li {
        padding: 0 0 .25em 1rem ;
        box-sizing: border-box;
        position: relative;
        display: inline-block;
        width:24%;
        line-height: 135%;
        }
        .amenities-list.three li { width:33%; }
        .amenities-list li:before {
        content: "・";
        display:inline-block;
        position: absolute;
        top: 0;
        left: 0;
        font-size:10px;
        vertical-align: middle;
        }
.spot-list {
        }
        .spot-list li {
        padding: 0 0 .25em 1rem ;
        box-sizing: border-box;
        position: relative;
        font-size:15px;
        display: inline-block;
        width:49%;
        line-height: 135%;
        }
        .spot-list li:before {
        content: "・";
        display:inline-block;
        position: absolute;
        top: 0;
        left: 0;
        font-size:10px;
        vertical-align: middle;
        }
        @media screen and (max-width: 1024px) {
        .amenities-list li { width:33%;}
        .amenities-list.three li { width:49%; }
        .spot-list li { width:100%; font-size:14px; }
        .links-list li { width:100%; }
        }
        @media screen and (max-width: 767px) {
        .amenities-list li { width:auto;}
        .amenities-list.three li { width:auto; }
        .spot-list li { font-size:13px; }
        }

/*================================================
      　table
================================================*/

.table-a {
        width:100%;
        border-collapse:collapse;
        border-spacing:0;
        text-align:left;
        letter-spacing:0;
        box-sizing: border-box;
        line-height: 150%;
        font-weight:500;
        }
        .table-a th {
        padding:.625rem 1.25rem ;
        vertical-align: middle;
        font-weight:normal;
        width:9em;
        text-align:center;
        }
        .table-a td {
        padding:.625rem 1.25rem;
        text-align:left;
        border-left:1px solid rgba(0,0,0,.5);
        }

.table-b {
        width:100%;
        border-collapse:collapse;
        border-spacing:0;
        text-align:left;
        letter-spacing:0;
        box-sizing: border-box;
        line-height: 150%;
        font-weight:400;
        border: 1px solid rgba(0,0,0,.6);
        }
        .table-b th {
        padding:1.25rem ;
        vertical-align: middle;
        font-weight:normal;
        text-align:left;
        background: rgba(3,21,40,.08);
        border: 1px solid rgba(0,0,0,.6);
        }
        .table-b td {
        padding:1.25rem;
        text-align:left;
        border: 1px solid rgba(0,0,0,.6);
        background: #FFF;
        }
        .table-b.td-right td { text-align: right;}
        .table-b.th-center th { text-align: center;}
        .table-b.center td,.table-b.center th { text-align: center;}

.table-c {
        width:100%;
        border-collapse:collapse;
        border-spacing:0;
        text-align:left;
        letter-spacing:0;
        box-sizing: border-box;
        line-height: 150%;
        font-weight:400;
        border: 1px solid #CCCCCC;
        }
        .table-c th {
        padding:.65rem 1.25rem ;
        vertical-align: middle;
        font-weight:normal;
        text-align:left;
        background: #031528;
        border: 1px solid #CCCCCC;
        color:#FFF;
        }
        .table-c td {
        padding:.65rem 1.25rem;
        text-align:left;
        border: 1px solid #CCCCCC;
        background: #FFF;
        }
        .table-c.td-right td { text-align: right;}
        .table-c.th-center th { text-align: center;}
        .table-c.center td,.table-c.center th { text-align: center;}


        @media screen and (max-width: 1024px) {

        }
        @media screen and (max-width: 767px) {
        .table-a.sp-table { border:none; }
        .table-a.sp-table tr { border-bottom:none; }
        .table-a.sp-table th { width:100% !important; display: block !important; padding:.625em 1em; box-sizing: border-box; background: rgba(0,0,0,.1); text-align: left; }
        .table-a.sp-table td { width:100% !important; display: block !important; padding:.625em 1em 1.25em; box-sizing: border-box; border:none; background: none; }
        .table-a.td-right.sp-table td { text-align: left;}
        
        .table-b.sp-table { border:none; }
        .table-b.sp-table tr { border-bottom:none; }
        .table-b.sp-table th { width:100% !important; display: block !important; padding:.625em 1em; box-sizing: border-box; text-align: left; border:1px solid rgba(0,0,0,.3); }
        .table-b.sp-table td { width:100% !important; display: block !important; padding:.625em 1em 1.25em; box-sizing: border-box; border:none; background: none; }
        .table-b.sp-table td.sp-bottom-none { padding-bottom:0; }


        .room-table th { width:8rem; }
        }

/*================================================
      　other
================================================*/

    hr.line {
        border: none;
        padding:0;
        background: url("../images/parts/line-b.png") center center repeat-x;
        height:1px;
        width:94%;
        margin:0 auto 1rem;
        }

/*================================================
      　access
================================================*/

.access-logo { width:210px;}
        @media screen and (max-width: 1024px) {
        .access-logo { width:180px;}
        }
        @media screen and (max-width: 767px) {
        .access-logo { width:160px; margin:0 auto; }
        }
.root-wrap {
        position: relative;
        text-align: center;
        max-width:280px;
        margin-left: auto;
        margin-right:auto;
        z-index: 10;
        }
        .root-wrap:before {
        content:"";
        display:block;
        position: absolute;
        left:50%;
        top:0;
        width:2px;
        height:100%;
        border-left:2px dotted #999;
        z-index: -1;
        }
        .root {
            padding:.75rem 5px;
            width:100%;
            box-sizing: border-box;
            font-size:1rem;
            }
            .root-start {
            background:#111 ;
            color:#FFF;
            margin-bottom:1.25rem;
            font-weight: bold;
            }
            .root-point {
            background:#777 ;
            color:#111;
            border: 1px solid #999;
            margin-bottom:1.25rem;
            }
            .root-goal {
            background:#111;
            color:#FFF;
            padding:1rem .75rem;
            }
            .root-goal img { height:60px; width:auto; }
            .root-memo {
            font-size:.9375rem;
            background:#FFF;
            padding:.25rem .75rem;
            box-sizing: border-box;
            margin-bottom:1.25rem;
            }

/*================================================
      　link
================================================*/

    .link-btn {
        display: inline-block;
        padding: 1rem 1.5rem;
        line-height: 125%;
        margin-bottom: 3px;
        margin-left:0;
        background: #333;
        font-size: 1rem;
        color: #FFF;
        border-radius:         4px;
        moz-border-radius:     4px;
        -webkit-border-radius: 4px;
        -o-border-radius:      4px;
        -ms-border-radius:     4px;
        }
    .link { padding-bottom:.25rem ; border-bottom:1px dotted #263855; color:#263855;}
        .link:hover { border-bottom:1px solid #666; color:#222;}

/*================================================
      　icon
================================================*/

.link-icon {
        width:1rem;
        height:1rem;
        display:inline-block;
        margin-left:.75rem;
        position: relative;
        top: .05rem;/* line-heightに合わせる */
        background: url("../images/parts/icon-link-w.svg") center center / cover;
        opacity: .7;
        }
.link-icon-b {
        width:1rem;
        height:1rem;
        display:inline-block;
        margin-left:.75rem;
        position: relative;
        top: .05rem;/* line-heightに合わせる */
        background: url("../images/parts/icon-link.svg") center center / cover;
        opacity: .7;
        }
.pdf-icon {
        width:.9090909rem;
        height:1rem;
        display:inline-block;
        position: relative;
        top: .05rem;/* line-heightに合わせる */
        background: url("../images/parts/icon-pdf-w.svg") center center / cover;

        }
.free-w {
        width:21px;
        height:14px;
        display:inline-block;
        position: relative;
        top: .05rem;/* line-heightに合わせる */
        background: url("../images/parts/free-w.svg") center center / cover;
        }
/*================================================
      　map
================================================*/

    .map {
        position: relative;
        padding-bottom: 500px;
        height: 0;
        border: 1px solid #443E39;
        overflow: hidden;
        box-sizing: border-box;
        }
        .map iframe,
        .map object,
        .map embed {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        }
        @media screen and (max-width: 1024px) {
        .map { padding-bottom: 450px; border: 1px solid #443E39;}
        }
        @media screen and (max-width: 767px) {
        .map { padding-bottom: 90%; }
        }

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

       padding margin 設定

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

	.pt-05em	{ padding-top:.5rem;}
    .pt-1em		{ padding-top:1rem;}
	.pt-2em		{ padding-top:2rem;}
	.pt-3em		{ padding-top:3rem;}
	.pt-4em		{ padding-top:4rem;}
	.pt-5em		{ padding-top:5rem;}

    .pb-05em	{ padding-bottom:.5rem;}
    .pb-1em		{ padding-bottom:1rem;}
    .pb-1hem	{ padding-bottom:1.5rem;}
	.pb-2em		{ padding-bottom:2rem;}
	.pb-3em		{ padding-bottom:3rem;}
	.pb-4em		{ padding-bottom:4rem;}
	.pb-5em		{ padding-bottom:5rem;}
    .pb-6em		{ padding-bottom:6rem;}

    .mt-1em		{ margin-top:1rem;}
	.mt-2em		{ margin-top:2rem;}
	.mt-3em		{ margin-top:3rem;}
	.mt-4em		{ margin-top:4rem;}
	.mt-5em		{ margin-top:5rem;}

	.mb-05em	{ margin-bottom:.5rem;}
    .mb-1em		{ margin-bottom:1rem;}
    .mb-1hem	{ margin-bottom:1.5rem;}
	.mb-2em		{ margin-bottom:2rem;}
	.mb-3em		{ margin-bottom:3rem;}
	.mb-4em		{ margin-bottom:4rem;}
	.mb-5em		{ margin-bottom:5rem;}
    .mb-6em		{ margin-bottom:6rem;}
    .mb-7em		{ margin-bottom:7rem;}
    .mb-8em		{ margin-bottom:8rem;}

    .pt-1-0		{ padding-top:1rem;}
    .pt-2-0		{ padding-top:2rem;}
    .pt-2-1		{ padding-top:2rem;}
    .pt-3-2		{ padding-top:3rem;}
    .pt-3-3-0	{ padding-top:3rem;}
    
    .pb-1-0  	{ padding-bottom:1rem;}
    .pb-2-0		{ padding-bottom:2rem;}
    .pb-2-1		{ padding-bottom:2rem;}
    .pb-3-0-0		{ padding-bottom:3rem;}
    .pb-3-2		{ padding-bottom:3rem;}
    .pb-3-4		{ padding-bottom:3rem;}
    .pb-4-2		{ padding-bottom:4rem;}
    .pb-4-3		{ padding-bottom:4rem;}
    .pb-5-2		{ padding-bottom:5rem;}
    .pb-5-4		{ padding-bottom:5rem;}

    .mb-2-0		{ margin-bottom:2rem;}
    .mb-2-1		{ margin-bottom:2rem;}
    .mb-3-1		{ margin-bottom:3rem;}
    .mb-3-2		{ margin-bottom:3rem;}
    .mb-3-4		{ margin-bottom:3rem;}
    .mb-4-2		{ margin-bottom:4rem;}
    .mb-5-2		{ margin-bottom:5rem;}

    .mb-1-1-05		{ margin-bottom:1rem;}
    .mb-2-2-1		{ margin-bottom:2rem;}
    
    .mb-1-0		{ margin-bottom:1rem;}

	.pb-3-1		{ padding-bottom:3rem;}
    .pb-4-0		{ padding-bottom:4rem;}

.mb-2em-widescreen { margin-bottom:2rem; }

    .pl-1em     { padding-left:1rem;}
    
    .mt10p      { margin-top:10%; }
    .mr10p      { margin-right:10%;}
    .mr20p      { margin-right:20%;}
    .mr30p      { margin-right:30%;}
    .mr40p      { margin-right:40%;}
    
    .ml10p      { margin-left:10%;}
    .ml20p      { margin-left:20%;}
    .ml30p      { margin-left:30%;}
    .ml40p      { margin-left:40%;}
    
    .pd-tb-1em  { padding-top:1rem; padding-bottom:1rem; }
    .pd-tb-2em  { padding-top:2rem; padding-bottom:2rem; }
    
    .pb-1px     { padding-bottom:1px;}
    .pb-10px    { padding-bottom:10px;}
@media only screen and (max-width: 1215px) {
    .mb-2em-widescreen { margin-bottom:0rem; }
    }
@media only screen and (max-width: 1024px) {
    .pt-1-0		{ padding-top:.5rem;}
    .pt-2-1		{ padding-top:1rem;}
    .pt-3-2		{ padding-top:2rem;}
    .pt-3-3-0	{ padding-top:3rem;}
    
    .pb-1-0		{ padding-bottom:.5rem;}
    .pb-1-05	{ padding-bottom:.5rem;}
    .pb-2-0		{ padding-bottom:0rem;}
    .pb-2-1		{ padding-bottom:1rem;}
    .pb-3-0-0		{ padding-bottom:0rem;}
    .pb-3-2		{ padding-bottom:2rem;}
    .pb-3-4		{ padding-bottom:4rem;}
    .pb-4-2		{ padding-bottom:2rem;}
    .pb-4-3		{ padding-bottom:3rem;}
    .pb-5-2		{ padding-bottom:2rem;}
    
    .mb-2-0		{ margin-bottom:0rem;}
    .mb-2-1		{ margin-bottom:1rem;}
    .mb-3-1		{ margin-bottom:1rem;}
    .mb-3-2		{ margin-bottom:2rem;}
    .mb-3-4		{ margin-bottom:4rem;}
    .mb-4-2		{ margin-bottom:2rem;}
    .mb-5-2		{ margin-bottom:2rem;}

    .mb-1-1-05		{ margin-bottom:1rem;}
    .mb-2-2-1		{ margin-bottom:2rem;}

    .pb-3-1		{ padding-bottom:2.76rem;}
    .pb-4-0		{ padding-bottom:0rem;}
    
    .tab-pb-1    { padding-bottom:1rem;}
    .tab-pt-1    { padding-top:1rem;}
    .tab-pt-2    { padding-top:2rem;}
    
    .tab-pd-1    { padding-top:1rem; padding-bottom:1rem;}
    .tab-pd-2    { padding-top:2rem; padding-bottom:2rem;}
    
    .tab-mb-2    { margin-bottom:2rem;}


    .mt10p      { margin-top:0%; }

    .mr10p      { margin-right:0%;}
    .mr20p      { margin-right:0%;}
    .mr30p      { margin-right:0%;}
    .mr40p      { margin-right:0%;}
    
    .ml10p      { margin-left:0%;}
    .ml20p      { margin-left:0%;}
    .ml30p      { margin-left:0%;}
    .ml40p      { margin-left:0%;}
    .tab-ml20p      { margin-left:20%;}
}
@media only screen and (max-width: 767px) {
    .pt-1-0		{ padding-top:0rem;}
    .pt-2-0		{ padding-top:0rem;}
    .pt-3-3-0	{ padding-top:0rem;}
    
    .pb-1-0		{ padding-bottom:0rem;}
    .pb-5-4		{ padding-bottom:4rem;}
    .pb-3-1		{ padding-bottom:1rem;}

    .mb-1-0		{ margin-bottom:0rem;}

    .mr10p      { margin-right:0%;}
    .mr20p      { margin-right:0;}
    .ml10p      { margin-left:0%;}
    .ml20p      { margin-left:0%;}

    .sp-pt-3em   { padding-top:3rem;}
    .sp-pb-1em    { padding-bottom:1rem;}
    .sp-pb-2em    { padding-bottom:2rem;}
    .sp-pb-3em    { padding-bottom:3rem;}
    
}