@charset "UTF-8";
@import url('https://fonts.googleapis.com/css?family=Sawarabi+Gothic&display=swap');

/* =================================== */
/*	Basic Style 
/* =================================== */
html {
    width: 100vw;
    overflow-x: hidden;
}
body{
	background-color:#fff;
    width: 100vw;
    overflow-x: hidden;
}

/* row-eq-height
----------------------*/
/* row に付与 */
.row-eq-height {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  flex-wrap: wrap;
}


/* margin padding
----------------------*/
.mgnB0 {margin-bottom:0 !important;}
.mgnB5 {margin-bottom:5px !important;}
.mgnB10 {margin-bottom:10px !important;}
.mgnB15 {margin-bottom:15px !important;}
.mgnB20 {margin-bottom:20px !important;}
.mgnB30 {margin-bottom:30px !important;}
.mgnB40 {margin-bottom:40px !important;}
.mgnB50 {margin-bottom:50px !important;}
.mgnB60 {margin-bottom:60px !important;}
.mgnB70 {margin-bottom:70px !important;}
.mgnB80 {margin-bottom:80px !important;}
.mgnB100 {margin-bottom:100px !important;}

.mgnT0 {margin-top:0 !important;}
.mgnT5 {margin-top:5px !important;}
.mgnT10 {margin-top:10px !important;}
.mgnT20 {margin-top:20px !important;}
.mgnT30 {margin-top:30px !important;}
.mgnT40 {margin-top:40px !important;}
.mgnT50 {margin-top:50px !important;}
.mgnT60 {margin-top:60px !important;}
.mgnT70 {margin-top:70px !important;}
.mgnT80 {margin-top:80px !important;}

.mgnL0 {margin-left:0 !important;}
.mgnL5 {margin-left:5px !important;}
.mgnL10 {margin-left:10px !important;}
.mgnL15 {margin-left:15px !important;}
.mgnL20 {margin-left:20px !important;}
.mgnL30 {margin-left:30px !important;}
.mgnL40 {margin-left:40px !important;}
.mgnL50 {margin-left:50px !important;}
.mgnL100 {margin-left:100px !important;}

.mgnR0 {margin-right:0 !important;}
.mgnR1 {margin-right:1px !important;}
.mgnR5 {margin-right:5px !important;}
.mgnR10 {margin-right:10px !important;}
.mgnR15 {margin-right:15px !important;}
.mgnR20 {margin-right:20px !important;}
.mgnR30 {margin-right:30px !important;}
.mgnR40 {margin-right:40px !important;}
.mgnR45 {margin-right:45px !important;}
.mgnR50 {margin-right:50px !important;}
.mgnR90 {margin-right:90px !important;}
.mgnR100 {margin-right:100px !important;}


.pdnT0{padding-top:0 !important;}
.pdnB0{padding-bottom:0 !important;}
.pdnB40{padding-bottom:40px !important;}


/* section
----------------------*/
.section-def{
	padding:80px 0;
}

.bg-01{
	background:#FBEEEE;
}

.bg-02{
	background:#DA4953;
}


/* button
----------------------*/
.btn-default {
    /*border-color: #B55233 !important;*/
	border-color: #68a5da !important;
    background: #68a5da !important;
    color: #fff !important;
}

.btn-default:hover{
	border-color:#68a5da !important;
    background:#fff !important;
    color: #68a5da !important;
}

area{
border:none;
outline:none;
}

/* テキスト選択のcssここから 
--------------------------------------------*/


.selectedClass {
    position: absolute;
    color: #000;
    font-family: 'Sawarabi Gothic', sans-serif;
}
.name01 {
    left: 20.6%;
    top: 49.6%;
    text-align: left;
}

.name01-2 {
    /*top: 75%;*/
/*    top: 61.3%;*/
	top: 62.3%;
    left: 21%;
    text-align: left;
}

.name02 {
    left: 20.6%;
    top: 92.7%;
	top: 77%;
}
.name02-2 {
    left: 20.6%;
    top: 57.8%;
	top: 48%;
}
.name02-3 {
    left: 20.6%;
    top: 92%;
}
.name03 {
    left: 21%;
    top: 61%;
/*    top: 77.8%;*/
    background-color: #fff;
}
.name03-2 {
    left: 21%;
    top: 75%;
/*    top: 95%;*/
    background-color: #fff;
    text-align: left;
}
.name04 {
    left: 21%;
    top: 60%;
/*    top: 57%;*/
    background-color: #fff;
}
.name04-2 {
    left: 21%;
    top: 74%;
    background-color: #fff;
    text-align: left;
}
.name05 {
    left: 21%;
    top: 61.4%;
    background-color: #fff;
}
.name05-2 {
    left: 21%;
    top: 75%;
    background-color: #fff;
    text-align: left;
}

@media screen and (min-width:1200px) {
    .name01 {
        font-size: 2.2em;
        letter-spacing: 9px;
    }
    .name01-2 {
        font-size: 2.2em;
        letter-spacing: 9px;
    }

    .name02,
    .name03,
    .name04,
    .name05 {
        font-size: 2.3em;
        letter-spacing: 8px;
        text-align: left;
    }
    .name03 {
        font-size: 2.3em;
        letter-spacing: 8px;
        text-align: left;
    }

    .name02-2,
	.name02-3{
        font-size: 2.25em;
        letter-spacing: 8px;
        text-align: left;
    }
    .name03-2,
    .name04-2,
    .name05-2 {
        font-size: 1.8em;
        letter-spacing: 3px;
        text-align: left;
    }

}
@media screen and (max-width:1199px) and (min-width: 768px) {
    .name01 {
        font-size: 1.8em;
        letter-spacing: .11em;
    }
    .name01-2 {
        font-size: 1.8em;
        letter-spacing: .11em;
    }

    .name02,
    .name04,
    .name05 {
        font-size: 1.8em;
        letter-spacing: 8px;
    }
    .name03 {
        font-size: 1.8em;
        letter-spacing: 3px;
    }
    .name02-2 {
        font-size: 1.8em;
        letter-spacing: 5px;
        text-align: left;
    }
    .name03-2,
    .name04-2,
    .name05-2 {
        font-size: 1.6em;
        letter-spacing: 3px;
        text-align: left;
    }
}
@media screen and (max-width:767px) {
    .name01 {
        font-size: 3.4vw;
        letter-spacing: .5vw;
    }  
    .name01-2 {
        font-size: 3.4vw;
        letter-spacing: .5vw;
    }    

    .name02,
    .name03,
    .name04,
    .name05 {
        font-size: 3.2vw;
        letter-spacing: .9vw;
    }
    .name02-2 {
        font-size: 3.2vw;
        letter-spacing: .8vw;
        text-align: left;
    }
    .name03-2,
    .name04-2,
    .name05-2 {
        font-size: 3vw;
        letter-spacing: 2px;
        text-align: left;
    }
}

.message {
    text-align:center;
    padding: 20px;
    background: rgba(0,0,0,.7);
    color: #fff;
    position: relative;
    z-index: 999;
    font-size:18px;
    position: fixed;
    bottom: 0;
    width: 100%;
}
/*
.message:before {
    content: "";
    background: rgba(0,0,0,.7);
    margin: 3px;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: block;
    z-index: -10;
}
*/
/*-------------------------------------------- 
テキスト選択のcssここまで */


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

.col-xs-12 {
    padding: 0;
}
.gmap {
    background-image: url(../image/map_bk.jpg);
    background-size: 100%;
    background-repeat: repeat-y;
    min-height: 460px;
    background-color: #fff;
    margin-bottom: 60px;
}
.gmap iframe {
    border: 2px solid #a4e484;
    margin: 0 auto;
    width: 96%;
    max-width: 880px;
    box-shadow: 0 3px 5px #e9ece7;
/*
    -webkit-filter: grayscale(100%);
  -moz-filter: grayscale(100%);
  -ms-filter: grayscale(100%);
  -o-filter: grayscale(100%);
  filter: grayscale(100%);
*/

}

#Wrapper .container .row .col-md-10 {
    background-color: #fff;
}

.content-pc{
	background:url(../image/bg_content.jpg) 0 0 repeat;
}

.content-pc-inner{
	background:url(../image/bg_if.jpg) 0 0 repeat;
	text-align:center;
	width:100%;
/*	width:990px;*/
	margin:0 auto;
	padding-bottom:0px;
}

.wrap-present{
	border:5px solid #B35233;
	background:#FEEBDD;
	padding:50px 0;
	margin-bottom:100px;	
}

.bg-form,
#footer-second.footer{
/*	background:url(../image/bg_if.jpg) 0 0 repeat !important;	*/
    background-color: #f0f7ff !important;
    z-index: 99999999;
    position: relative;
}

/*
.form-area .bg-form {
    padding: 0 15px;
}
*/

.form-area .container .row .col-md-10 {
    padding: 40px 20px;
}

.content-pc-inner > img {
    max-width: 100%;
    height: auto;
}

.footer-group .hotels ul {
    display: flex;
    display: -ms-flexbox;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -webkit-box-pack: justify;
	-ms-flex-pack: justify;
	justify-content: space-between;
    padding: 15px;
    list-style: none;
}
.footer-group .hotels ul li {
    margin-bottom: 3%;
}
.footer-group .hotels ul li a,
.footer-group .hotels ul li p {
    color: #fff;
}
.footer-group .hotels ul li img {
    margin-bottom: 5%;
}
.footer-group .hotels ul li a:hover,
.footer-group .hotels ul li a p:hover {
    opacity: .8;
}
.footer-group .tit-group {
    font-size: 1.3em;
}
.footer-group {
    background-color: rgba(0,0,0,1);
    padding: 40px 0 0;
    border-bottom: 2px solid #fff;
    z-index: 2;
    position: relative;
}
.footer-group h2 {
    color: #fff;
}
.footer-group .wrap {
    max-width: 1250px;
    margin: 0 auto;
}
footer div.footer_wrap {
  text-align: center;
  padding: 16px 0
}
footer .ft-logo img {
    max-width: 160px;
    width: 30%;
}
footer .copyright {
    background-color: #020202;
    padding: .6em;
}
footer div.footer_wrap p.copyright {
  display: inline-block
}

footer div.footer_wrap p.copyright span {
  display: inline-block;
  line-height: 14px;
  letter-spacing: 0.16em;
  font-size: 11px;
  font-family: "Crimson Text", TimesNewRoman, "Times New Roman", Times, Georgia, serif;
  color: #2d2d2d
}
.vmg-logo {
    width: 70%;
    max-width: 1250px;
    margin: 30px auto 0;
}

@media only screen and (min-width: 768px) {
    .footer-group .hotels ul li {
        width: 21%;
    }
}
@media only screen and (max-width: 767px) {
    .footer-group .hotels ul li {
        width: 29%;
    }
}
@media only screen and (max-width: 680px) {
  footer div.footer_wrap p.copyright span {
    font-size: 10px
  }
    .footer-group .hotels ul li {
        width: 46%;
    }
}

button#modaal-close {
    color: #fff;
    font-weight: bold;
    border: none;
    display: block;
    margin: 15px auto 0;
    font-size: 1.2em;
    padding: 5px 30px;
    letter-spacing: .1em;
}
.form_mlmg {
    position: absolute;
    left:0;
    right:0;
    margin:auto;
    top:68%;
}
.form_mlmg input,
.form_mlmg button {
    display: block;
    margin-left: auto;
    margin-right: auto;
}
.form_mlmg input {
    width: 70%;
    padding: 5px 10px;
}
.form_mlmg button {
    margin-top: 15px;
    background: #ff794a;
    color: #fff;
    font-weight: bold;
    border: none;
    font-size: 1.4em;
    line-height: 1.8em;
    letter-spacing: .1em;
    padding: 0 10%;
    border-radius: 24px;
}
.form_mlmg input::-webkit-input-placeholder {
	color: #bfbfbf;
}
.form_mlmg input::-moz-placeholder {
	color: #bfbfbf;
}
.form_mlmg input:-ms-input-placeholder {
	color: #bfbfbf;
}

.vedeo_wrap {
    width: 100%;
    height: 0;
    position: relative;
    padding-top: 56.25%;
    overflow: hidden;
}
.vedeo_wrap iframe {
    position: absolute;
    top: 0;
    left: 0;
    width: 100% !important;
    height: 100% !important;
}

body.preload #cover {
  opacity: 0;
  visibility: hidden;
    top: 0;
}

body.preload #cover p.cover_text {
  opacity: 1
}

#cover {
  width: 100%;
  height: 100%;
  top: 0;
  position: fixed;
  background-color: #000;
  z-index: 99999999999;
  opacity: 1;
  visibility: visible;
  transition: visibility 800ms cubic-bezier(0.42, 0, 0.58, 1) 2400ms, opacity 800ms cubic-bezier(0.42, 0, 0.58, 1) 2400ms;
  -webkit-transition: visibility 800ms cubic-bezier(0.42, 0, 0.58, 1) 2400ms, opacity 800ms cubic-bezier(0.42, 0, 0.58, 1) 2400ms;
  -moz-transition: visibility 800ms cubic-bezier(0.42, 0, 0.58, 1) 2400ms, opacity 800ms cubic-bezier(0.42, 0, 0.58, 1) 2400ms;
  -o-transition: visibility 800ms cubic-bezier(0.42, 0, 0.58, 1) 2400ms, opacity 800ms cubic-bezier(0.42, 0, 0.58, 1) 2400ms;
  -ms-transition: visibility 800ms cubic-bezier(0.42, 0, 0.58, 1) 2400ms, opacity 800ms cubic-bezier(0.42, 0, 0.58, 1) 2400ms
}

#cover p.cover_text {
  color: #f1f1f1;
  font-family: "Crimson Text", TimesNewRoman, "Times New Roman", Times, Georgia, serif;
  font-size: 14px;
  letter-spacing: 0.16em;
  text-align: center;
  position: absolute;
  line-height: 24px;
  top: 50%;
  margin-top: -12px;
  left: 0;
  width: 100%;
  opacity: 0;
  transition: opacity 800ms cubic-bezier(0.42, 0, 0.58, 1) 200ms;
  -webkit-transition: opacity 800ms cubic-bezier(0.42, 0, 0.58, 1) 200ms;
  -moz-transition: opacity 800ms cubic-bezier(0.42, 0, 0.58, 1) 200ms;
  -o-transition: opacity 800ms cubic-bezier(0.42, 0, 0.58, 1) 200ms;
  -ms-transition: opacity 800ms cubic-bezier(0.42, 0, 0.58, 1) 200ms
}

/* ローディング画面の背景 */
.loading {
  position: fixed;
  width: 100%;
  height: 100%;
  top: 0px;
  left: 0px;
  background: #000;
  z-index: 99999;
}
/* アニメーション */
.animation {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
  -ms-transform: translate(-50%, -50%);
  transform: translate(-50%, -50%);
  color: #fff;
  -webkit-animation: loadinganimation 1500ms ease-out forwards 1;
  animation: loadinganimation 1500ms ease-out forwards 1;
    text-align: center;
    width: 100%;
}
.animation img {
  width: 85%;
  max-width: 380px;
}
@keyframes loadinganimation {
  0% {
		opacity: 0;
  }
  100% {
		opacity: 1;
  }
}

/*============================================================
	small desktop 
==============================================================*/

@media (min-width: 992px) and (max-width: 1199px) {
	
	
	
	
}


/*============================================================
	under tablet
==============================================================*/
@media only screen and (max-width: 991px) {
	
	
	
}


/*============================================================
	tablet
==============================================================*/

@media (min-width: 768px) and (max-width: 991px) {
	
	
	
}
@media (min-width: 768px) {
    .ftbtns_sp {
        display: none;
    }
	
	
}


/*============================================================
	mobile
==============================================================*/
@media only screen and (max-width: 767px) {
	
	.content-xs{
		background:url(../image/map_bk.jpg) 0 0 repeat-y;
		background-size:100%;
	}

	.section-main-xs{
		background:url(../image/sp/main_xs.jpg) top center no-repeat;
		background-size:contain;
		padding:500px 0 20px;
		height:700px;
		text-align:center;
	}
	
	.section-main h1 img{
		margin-bottom:180px;
	}
	
	.wrap-present-xs{
		background:url(../image/sp/img_11.jpg) 0 0 no-repeat;
		background-size:contain;
		padding:83% 0 36%;
/*		padding:270px 0 100px;*/
		text-align:center;
		margin-bottom:0px;
        background-position: center;
	}
	
	
	/* contact button */
	#ft-contact{
/*		position:fixed;*/
/*		width:100%;*/
/*		bottom:0;*/
/*		background-color:rgba(255,255,255,0.8);*/
/*		text-align:center;*/
		z-index:99;
/*        display: flex !important;*/
/*		padding:10px 0;*/
	}
    #ft-contact a {
/*        display: block;*/
        width: 32.8%;
    }
    #ft-contact a + a {
        margin-left: .5%;
    }
    #ft-contact a img {
/*        width: 100%;*/
        width: 70px;
    }

	
	.form-area {
        position: relative;
        z-index: 9999;
        background: #efefef;
    }
	
}
@media only screen and (max-width: 448px) {
    .table > tbody > tr > th, .table > tbody > tr > td {
        display: block;
        padding-left: 0;
        padding-right: 0;
    }
    .table > tbody > tr > td {
        border-top: 0 !important;
        padding-top: 0 !important;
    }
    #main_table tr th {
        width: 100% !important;
        padding-bottom: 4px !important;
    }
}