@charset "utf-8";
/* CSS Document */

/*----------------------------------------------------
	☆SP
----------------------------------------------------*/

/*デバイスの横幅が750px以下の場合*/

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




    /*----------------------------------------------------
  ☆top
  ----------------------------------------------------*/
    /* top */
    #top {
        /* background: url(../images/top_bk_sp.jpg) center bottom no-repeat; */
        height: 0;
        padding-top: 118.42%;
        background-size: contain;
        width: 100%;
        overflow: hidden;
    }
    #top h2 {
        width: 30%;
    }
    #top h2 img {
        width: 100%;
    }
    #top .txt01 {
        width: 18%;
    }

    #top .txt02,
    #top .txt03 {
        width: 45%;
    }
    #top .txt01 img,
    #top .txt02 img,
    #top .txt03 img {
        width: 100%;
    }
    #top .txt01 {
        /* right: 3%;
        top: 19%; */
        display: none;
    }
    #top .txt02 {
        left: 3%;
        bottom: 8%;
    }
    #top .txt03 {
        bottom: 8%;
        right: 3%;
    }
    /* form */
    #form {
        height: initial;
    }
    #form .form {
        width: 96%;
        margin: 0 auto;
        padding: 40px 0;
    }

    #form .form h2 {
        padding-top: 0;
        text-align: center;
        font-size: 18px;
        color: #fff;
        font-family: 'Spectral', serif;
        float: none;
        line-height: initial;
        margin-right: 0;
        margin-bottom: 10px;
    }
    #form .form form {
        float: none;
        height: initial;
        margin: 0 auto;
        width: 310px;
    }
    #form .form form span {
        margin-right: 5px;
        font-size: 11px;
    }
    #form .form form span:nth-last-of-type(1) {
        margin-right: 0;
    }
    #form .form form i {
        color: #fff;
        font-size: 20px;
        margin-left: 5px;
        position: absolute;
        left: -30px;
        top: 5px;
    }

    #form .form form select,
    #form .form form .dynDate input {
        height: 30px;
        font-size: 12px;
    }
    #form .form form select {
        text-indent: 10px;
        -webkit-appearance: none;
        -moz-appearance: none;
        appearance: none;
    }
    @media screen and (-webkit-min-device-pixel-ratio:0) {
        #form .form form span {
            margin-right: 10px;
            font-size: 12px;
        }
        #form .form form select {
            text-indent: 10px;
            -webkit-appearance: none;
            -moz-appearance: none;
            appearance: none;
            background: #fff;
            padding-left: 0;
        }
        #form .undecided label {
            color: #fff;
        }
        #form .form form .undecided {
            display: block;
            padding: 20px 0;
        }
        #form .undecided label {
            display: block;
            color: #fff;
            height: 30px;
        }
        #form .form form .undecided ul {
            display: block;
            height: 30px;
        }
        #form .form form .undecided ul li {
            display: block;
            height: 30px;
        }
    }
    #form .form form .bookingDate {
        width: 100%;
    }
    #form .form form .dynDate {
        width: calc(100% - 25px);
        margin: 0 auto 10px;
        display: block;
        max-width: initial;
        margin-right: 0;
        position: relative;
    }
    #form .form form .dynDate input {
        width: 47%;
    }


    #form .form form .bookingNights select,
    #form .form form .bookingRooms select {

        width: 32px;

    }

    #form .form form .bookingNights:after,
    #form .form form .bookingRooms:after {
        font-family: FontAwesome;
        content: "\f0d7";
        position: absolute;
        color: #000;
        top: 50%;
        margin-top: -8px;
        right: initial;
        left: 20px;
    }
    #form .form form .dynPersons select {
        width: 32px;
    }
    #form .form form .dynPersons:after {
        font-family: FontAwesome;
        content: "\f0d7";
        position: absolute;
        color: #000;
        top: 50%;
        margin-top: -8px;
        right: initial;
        left: 60px;
    }
    #form .form form .dynPersons{
      margin-right: 0;
    }
    /*
  #form .form form .undecided{
    display: inline-block!important;
    width: 100%;
    margin: 10px auto 20px;
  }
   */
    #form .form form .undecided ul {
        width: 160px;
        display: block;
        margin: 0 auto;
    }

    #form .form form .undecided ul:after {
        content: " ";
        display: block;
        clear: both;
    }

    #form .form form .undecided ul li {
        width: 48%;
        float: left;
    }

    #form .form form .undecided ul li:nth-of-type(1) {
        margin-bottom: 0;
        margin-right: 4%;
    }

    #form .form form .dynSubmit {
        display: inline-block !important;
    }

    /*Radio Check*/
    #form .undecided input[type=checkbox] {
        display: none;
    }

    #form .undecided label {
        box-sizing: border-box;
        position: relative;
        display: inline-block;
        padding: 0 0 0 0;
        border-radius: 8px;
        vertical-align: middle;
        cursor: pointer;
        font-size: 14px;
        text-indent: 20px;
    }

    #form .undecided label:after {
        -webkit-transition: border-color 0.2s linear;
        transition: border-color 0.2s linear;
        position: absolute;
        top: 50%;
        left: 0;
        display: block;
        margin-top: -10px;
        width: 16px;
        height: 16px;
        border: 1px solid #fff;
        content: '';
    }

    #form .undecided label:before {
        -webkit-transition: opacity 0.2s linear;
        transition: opacity 0.2s linear;
        position: absolute;
        top: 50%;
        left: 6px;
        display: block;
        margin-top: -7px;
        width: 5px;
        height: 9px;
        border-right: 2px solid #fff;
        border-bottom: 2px solid #fff;
        content: '';
        opacity: 0;
        -webkit-transform: rotate(45deg);
        -ms-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    #form .undecided input[type=checkbox]:checked + label:before {
        opacity: 1;
    }

    #form .form button {
        margin-top: 20px;
        background: #ab8b10;
        border: 0;
        color: #fff;
        border-radius: 5px;
        width: 100%;
        height: 40px;
        margin-left: 0;
    }
    #form .form button p {
        display: inline-block;
        font-family: YuGothic, 'Yu Gothic', sans-serif;
        position: relative;
        font-weight: bold;
    }
    #form .form button p:before {
        font-family: FontAwesome;
        content: "\f002";
    }


    .btn_spinfo {
	margin-top: 5%;
	background: #ab8b10;
	border: 0;
	color: #fff;
	border-radius: 5px;
	width: 100%;
	height: 40px;
	overflow: hidden;
    }
    #form .form .btn_spinfo a {
	display: block;
	font-family: YuGothic, 'Yu Gothic', sans-serif;
	position: relative;
	font-weight: bold;
	width: 100% !important;
	text-align: center;
	font-size: 12px;
	padding-top: 14px;
	padding-right: 0;
	padding-bottom: 14px;
	padding-left: 10px !important;
    }
    .btn_spinfo a:before {
        font-family: FontAwesome;
        content: "\f0f7";
    }



.topics_box{
	width: 93%;
	padding: 4%;
	margin-top: 5%;
	border: 1px solid #c91518;
	color: #c91518;
	 font-size: 12px;
}



    /* plan */
		.pickup_bnr { margin: 0 0 40px;}
		.pickup_bnr li {
			width: auto;
			float: none;
			padding: 5px 0;
		}

    #plan {
        width: 100%;
        padding: 40px 0;
    }

.pickup_wrap { margin: 0;}
.pickup_box {
	width: auto;
	max-width: 400px;
	float: none;
	padding: 10px 0;
	margin: 0 auto;
}
.pickup_box .hl { display: block; max-width: 220px; font-size: 24px; margin: -1em auto 0.5em;}
.pickup_box p { font-size: 12px;}
.pickup_box p br { display: none;}


    #plan .plan {
        width: 93%;
    }
    #plan .plan .slide_plan {
        width: 100%;
    }
    #plan .plan .slide_plan li {
        width: 100%;
        max-width: initial;
        margin: 0 10px;
    }


    #plan .plan .slide_plan li h2 {
        font-size: 16px;
        padding: 10px 5px;
        height: 65px;
    }
    #plan .plan li .planning {
        margin-top: 5px;
    }
    #plan .plan li .planning li {
        font-size: 12px;
    }
    #plan .plan .slide_plan li .img {
        height: 150px;
        overflow: hidden;
    }

    #plan .plan li .planning li .bg {
        font-size: 16px;
    }
    #plan .plantug {
        width: 93%;
        margin: 20px auto 0;
        height: initial;
    }

    #plan .plantug .boxL {
        height: initial;
        padding: 10px 15px;
    }
    #plan .plantug .boxL h2 {
        font-size: 16px;
        padding-left: 40px;
    }
    #plan .plantug .boxL h2:after {
        font-size: 30px;
        margin-top: -25px;
    }
    #plan .plantug .boxR {
        width: 100%;
        height: initial;
    }
    #plan .plantug .boxR ul {
        width: 100%;
        margin-top: 0;
        margin: 0px auto 10px;
        padding: 10px;
    }
    #plan .plantug .boxR li {
        font-size: 12px;
        line-height: 1.4;
        padding: 5px 5px;
    }
    #plan .slick-prev {
        left: 0px;
        top: 36%;
    }

    #plan .slick-next {
        right: 0px;
        top: 36%;
    }
    /* concept */
    #concept {
        padding: 40px 0;
    }
    #concept .concept {
        width: 93%;
    }

    #concept .concept .title {
        width: 30%;
        text-align: center;
        margin: 0 auto;
    }
    #concept .concept .title img {
        width: 100%;
    }
    #concept .concept .contop h2 {
        font-size: 18px;
        line-height: initial;
        margin-bottom: 10px;
        text-align: center;
    }
    #concept .concept .contop .boxR {
        width: 100%;
    }
    #concept .concept .contop .boxR p {
        font-size: 12px;
        line-height: 1.6;
    }
    #concept .concept .contop .mordal {
        width: 100%;
        margin-top: 10px;
        margin-bottom: 10px;
    }
    #concept .concept .contop .mordal img {
        width: 100%;
    }
    #concept .concept .conbtm {
        margin-top: 20px;
    }
    #concept .concept .conbtm .boxL {
        width: 100%;
        color: #fff;
    }
    #concept .concept .conbtm .boxL ul {
        margin: 20px auto;
    }
    #concept .concept .conbtm .boxL h3 {
        font-size: 15px;
    }
    #concept .concept .conbtm .boxL h3 span {
        font-size: 20px;
    }
    #concept .concept .conbtm .boxL h3 .pointbg {
        font-size: 40px;
        margin-right: 20px;
    }

    #concept .concept .conbtm .boxL h3 i {
        margin-right: 5px;
    }
    #concept .concept .conbtm .boxL p {
        font-size: 12px;
        padding: 10px 0;
        margin-bottom: 10px;
    }
    #concept .concept .conbtm .boxR {
        width: 100%;
    }

    /* room */
    #room {
        width: 100%;
        margin: 0 auto;
        padding-top: 40px;
    }
    #room .room {
        width: 93%;
        margin: 0 auto;
        position: relative;
    }

    #room ul li {
        margin-left: 0;
        margin-right: 0;
    }
    #room ul li .img img {
        width: 100%;
    }
    #room .room_txt {
        margin-top: 20px;
        position: initial;
        top: initial;
        left: initial;
        transform: initial;
        -webkit- transform: initial;
        color: #fff;
        width: 100%;
        display: block;
        height: 150px;
        background: rgba(0, 0, 0, 0.7);
        padding: 10px;
    }

    #room .room_txt .btn_clear {
        width: 140px;
        height: 30px;
        padding: 0px;
        font-size: 13px;
        line-height: 30px;
        color: #fff;
        border: 1px solid #fff;
        margin: 10px auto 0;
    }

    #room .room_txt h2 {
        font-size: 20px;
        font-weight: 500;
        font-family: 'EB Garamond', serif;
        margin-bottom: 10px;
        text-align: center;
    }
    #room .room_txt .txt {
        font-size: 12px;
        line-height: 1.6;
        font-family: YuMincho, 'Yu Mincho', serif;
    }

    #room #slide_room .slick-prev {
        left: -8px;
    }

    #room #slide_room .slick-next {
        right: -8px;
    }



    /* news */
    #news {
        padding: 40px 0;
    }
    #news .news {
        width: 93%;
        margin: 0 auto;
    }
    #news .fltbox {
        max-width: initial;
    }

    #news .fltbox .boxL .head01 {
        margin-bottom: 10px;
        padding-top: 0;
    }
    #news .fltbox .boxL .btn_clear a {
        margin-top: 10px;
        margin-bottom: 10px;
    }
    #news .fltbox .boxR {
        width: 100%;
    }
    #news .fltbox .boxR ul li a {
        display: block;
        padding: 15px 0;

    }
    #news .fltbox .boxR ul li .day {
        font-size: 15px;
        font-family: 'EB Garamond', serif;
        height: 20px;
        line-height: 20px;
    }
    #news .fltbox .boxR ul li .tug {
        font-size: 12px;
        display: inline-block;
        height: 20px;
        line-height: 20px;
    }

    #news .fltbox .boxR ul li .txt {
        display: block;
        width: 100%;
        font-size: 12px;
        margin-top: 5px;
    }
    /* spot */
    #spot {
        padding: 40px 0;
    }
    #spot .spot {
        width: 93%;
        margin: 0 auto;
    }
    #spot ul {
        font-size: 0;
    }
    #spot ul li {
        width: 32%;
        max-width: initial;
        display: inline-block;
        vertical-align: top;
        margin-right: 2%;
    }
    #spot ul li:nth-last-of-type(1) {
        margin-right: 0;
    }
    #spot ul li .img {
        width: 100%;
        text-align: center;
    }
    #spot ul li .img img {
        width: 100%;
    }
    #spot ul li h3 {
        font-size: 16px;
        margin: 10px auto;
        letter-spacing: -1px;
    }
    #spot ul li .txt {
        display: none;
    }
    /* gallery */
    #gallery {
        padding: 40px 0;
    }
    #gallery ul {
        max-width: initial;
    }
    #gallery ul li {
        max-width: initial;
    }
    #gallery ul li img {
        width: 100%;
    }

    /* 20180517 */
    .pickup_bnr {
        margin: 0 auto 20px;
        width: 100%;
    }


    /* 20180727 */
    #bana {
        width: 96%;
        margin: 5% 2%;
    }
    #bana img{
        width: 100%
    }
    #bana #pc{
        display: none;
    }
    #bana #sp{
        display: block;
    }

    #map {
        padding-top: 40px;
    }
    #access {
        padding: 40px 0 40px 0;
        background: #f4f4f4 ;
    }
    #access .btn_clear {
      width: 100%;
      text-align: center;
      margin-top:20px;
    }
    .accessBox01 {
    	width:50%;
    	padding: 10px;
    	border-top: 1px solid #b1a281;
      border-left: 1px solid #b1a281;
      border-bottom: 1px solid #b1a281;
    	float:left;
    	height: 400px;
    }
    .accessBox01 th {
    	font-weight: bold;
    	color:#b1a281;
    	text-align:center;
    	border-top: 1px solid #b1a281;
      font-size: 0.8em;
    }
    .accessBox01 th span{
    	color:#b1a281;
    	margin-right:5px;
    	font-size:1em;
    }
	.sp_line img {
        width: 100%;
    }
    .accessTxt01 {
    	width:19%;
    	font-weight:bold;
    	font-size: 0.7em;
    	display:none;
    }
    .accessTxt02 {
    	font-size: 0.8em;
    	padding-left: 5px;
    }
    .accessTxt03 {
    	text-align:center;
      font-size: 0.8em;
    }
    .accessTxt03 span{
    	margin:0 5px;
    	font-size:20px;
    	font-weight:bold;
    	color:#b1a281;
    }
    .accessBox02 {
    	width:50%;
    	border-top: 1px solid #b1a281;
      border-bottom: 1px solid #b1a281;
      border-left: 1px solid #b1a281;
    	float:left;
    	height: 200px;
    }
    .accessBox02 th {
    	font-weight: bold;
    	color:#b1a281;
    	text-align:center;
    	border-top: 1px solid #b1a281;
    	padding: 5px;
      font-size: 0.8em;
    }
    .accessBox02 th span{
    	color:#b1a281;
    	margin-right:5px;
      font-size:1em;
    }
    .accessBox03 {
    	width:50%;
      border-top: 1px solid #b1a281;
      border-bottom: 1px solid #b1a281;
      border-left: 1px solid #b1a281;
    	float:left;
    	height: 200px;
    }
    .accessBox03 th {
    	font-weight: bold;
    	color:#b1a281;
    	text-align:center;
    	border-top: 1px solid #b1a281;
      font-size: 0.8em;
    }
    .accessBox03 th span{
    	color:#b1a281;
    	margin-right:5px;
      font-size:1em;
    }
      .accessTbl {
        width: 95%;
        margin: auto;
        border: 1px solid #b1a281;
        border-bottom: none;
        font-size: 13px;
      }
      .accessTbl tr {
      }
      .accessTbl tr td {
        border-bottom: 1px solid #b1a281;
        float: left;
        width: 100%;
        padding: 10px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        text-align: center;
      }
      .accessTbl tr td div {
        margin-bottom: 10px;
      }
      .accessTbl tr td div:last-of-type {
        margin-bottom: 0;
      }
      .accessTbl tr td div h3 {
        color: #b1a281;
        padding: 10px 0;
      }
      .accessTbl tr td div h3 span {
        margin-right: 5px;
        font-size: 18px;
      }
      .accessTbl tr td div dl {
        margin: 0 0 10px 0;
        text-align: left;
      }
      .accessTbl tr:first-of-type td:first-of-type div dl {
      }
      .accessTbl tr td div dl dt {
        width: 20%;
        font-weight: bold;
        display: inline-block;
        vertical-align: top;
        margin-top: 10px;
      }
      .accessTbl tr td div dl dd {
        width: 65%;
        margin: 0 0 0 10%;
        display: inline-block;
        line-height: 2em;
      }
      .accessTbl tr td div p {
      }
      .accessTbl tr td div p span {
        margin: 0 5px;
        font-size: 20px;
        font-weight: bold;
        color: #b1a281;
      }

	.nosp {
			display: none!important;
	}

  /*20190212*/

  .cyou0212 > div{
    float: none;
    max-width: 360px;
    width: 100%;
    margin: 0 auto 5%;
    height: auto;
  }

  .cyou0212 > div img{
    width: 100%;
  }

  .cyou0212 > div:nth-of-type(3){
    margin: 0 auto 5%;
  }

}
