@charset "utf-8";
/* 共通設定 */
@font-face {
 font-family: "noto";
 font-style: normal;
 font-weight:normal; line-height:100%;font-display: swap;
 src: url('../font/notosans_regular.woff') format('woff'), url('../font/notosans_regular.ttf') format('truetype');
}
@font-face {
 font-family: "noto";
 font-style: normal;
 font-weight:bold; line-height:100%;font-display: swap;
 src: url('../font/notosans_bold.woff') format('woff'), url('../font/notosans_bold.ttf') format('truetype');
}
.noto { font-family:"noto" !important; }

@font-face {
 font-family: "notomin";
 font-style: normal;
 font-weight:normal; line-height:100%;font-display: swap;
 src: url('../font/notoserif_regular.woff') format('woff'), url('../font/notoserif_regular.ttf') format('truetype');
}
@font-face {
 font-family: "notomin";
 font-style: normal;
 font-weight:bold; line-height:100%;font-display: swap;
 src: url('../font/notoserif_bold.woff') format('woff'), url('../font/notoserif_bold.ttf') format('truetype');
}
.notomin { font-family:"notomin" !important; }
@font-face {
 font-family: "antique";
 font-style: normal;
 font-weight:normal; line-height:100% !important;font-display: swap;
 src: url('../font/antique.woff') format('woff'), url('../font/antique.ttf') format('truetype');
}
.antique { font-family:"antique" !important; }
@font-face {
 font-family: "hannari";
 font-style: normal;
 font-weight:normal; line-height:100%;font-display: swap;
 src: url('../font/hannari.woff') format('woff'), url('../font/hannari.ttf') format('truetype');
}
.hannari { font-family:"hannari" !important; }

/* 言語設定 */
.font_ja { font-family: "noto", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;}
.font_en {font-family: sans-serif;}
.font_ko {font-family:"Microsoft Yahei","PingHei" ,"sans-serif";}
.font_zh_tw {font-family: 'PMingLiU';}
.font_zh {font-family: '宋体-简';}
/* 言語設定 */

body { font-size: 1.6rem; line-height:2.4rem; overflow-x: hidden !important; 
  margin:0; padding:0; width:100vw;
    word-wrap : break-word; overflow-wrap : break-word;
	animation: fadeIn 2s ease 0s 1 normal;
    -webkit-animation: fadeIn 2s ease 0s 1 normal;
}
html { font-size: 62.5%; overflow-x: hidden !important; 
  overflow:scroll;
  -webkit-transition: all 0.3s ease;
  -moz-transition: all 0.3s ease;
  -ms-transition: all 0.3s ease;
  -o-transition: all 0.3s ease;
  transition: all 0.3s ease;
  width:100vw; margin:0; padding:0; text-align:center;
  }
tr td{ ffont-size: 1.6rem; line-height:2.4rem }


a img{border:none;}
a { text-decoration:none; }
.cf:before,
.cf:after {
    content: " ";
    display: table;
}

.cf:after {
    clear: both;
}

.cf {
    *zoom: 1;
}
/* カラーパレット *
/* 音声ガイド */.gr_blue{ background: -moz-linear-gradient(left, #35A4CC, #365C99);
background: -webkit-linear-gradient(left, #35A4CC, #365C99); 
background:linear-gradient(to right, #35A4CC, #365C99);} 
/* VRCG */.gr_red{ background: -moz-linear-gradient(left, #C92958, #CD4354);
background: -webkit-linear-gradient(left, #D5275A, #D84255);
background:linear-gradient(to right, #D5275A, #D84255);} 
/* コンシェルジュ */.gr_orange{ background: -moz-linear-gradient(left, #DE8B2A, #E4AE4A);
background: -webkit-linear-gradient(left, #DE8B2A, #E4AE4A); 
background:linear-gradient(to right, #DE8B2A, #E4AE4A);} 
/* ムービーギャラリー */.gr_purple{ background: -moz-linear-gradient(left, #AF4683, #CC618C);
background: -webkit-linear-gradient(left, #AF4683, #CC618C); 
background:linear-gradient(to right, #AF4683, #CC618C);} 
/* VRツアー */.c_vrtour{ background-color:#25A464 ; color:#FFF}
/* 情報ボックス */.c_infobox{ background: -moz-linear-gradient(left, #E38AA1, #BC183D);
background: -webkit-linear-gradient(left, #E38AA1, #BC183D); 
background:linear-gradient(to right, #E38AA1, #BC183D);} 
/* スタンプラリー */.c_stamprally{ background: -moz-linear-gradient(left, #244993, #1A2B56);
background: -webkit-linear-gradient(left, #244993, #1A2B56); 
background:linear-gradient(to right, #244993, #1A2B56);} 
/* デジタル観光マップ */.gr_darkorange{ background: -moz-linear-gradient(left, #EE7C5B, #EB6239);
background: -webkit-linear-gradient(left, #EE7C5B, #EB6239); 
background:linear-gradient(to right, #EE7C5B, #EB6239);}
/* スタンプラリー */.gr_indigoblue{ background: -moz-linear-gradient(left, #165C83, #092331);
background: -webkit-linear-gradient(left, #165C83, #092331); background:
linear-gradient(to right, #165C83, #092331);} 
/* 日本遺産 */.c_jheritage{ background: -moz-linear-gradient(left, #CBCACB, #575858);
background: -webkit-linear-gradient(left, #CBCACB, #575858); 
background:linear-gradient(to right, #CBCACB, #575858);} 
.c_green{ background:#0CAB66 } 
.c_guide{ background-color:#10559d; color:#FFF} 
.c_concierge{ background-color:#f5ae35; color:#FFF}
.c_concierge2{ background-color:#eb651b; color:#FFF} 
.c_vrcg{ background-color:#C92B58; color:#FFF} 
.c_movie{ background-color:#A26BAA ; color:#FFF}

.f_concierge{ color:#eb651b;}
.f_big{ font-size:120%; line-height:160%} .f_small{ font-size:70%; line-height:100%} .f_vrcg{ color:#C92B58;} .f_movie{ color:#A26BAA} .f_vrtour{ color:#25A464}
.f_red { color:#F30 !important}
/* 移動 上へ */


.list-mv07{	opacity: 0;	transform: translate(0,60px); -webkit-transform: translate(0,60px); 	transition: .8s;}
.mv07{	opacity: 1.0;	transform: translate(0,0);	-webkit-transform: translate(0,0);}
.mb20{ margin-bottom:20px !important}
.ml30{ margin-left:30px !important}

header{ width:100vw; margin:0; padding:0; background:rgba(51,51,51,0.7); display:flex; color:#FFF; position:fixed; top:0; left:0; z-index:20  }
.logo img { height:80px; margin:10px;flex-grow: 0; }
.name{ text-align:left; font-family:"notomin";align-self: center;flex-grow: 2;}
.name a{ color:#FFF;}
.name1{ font-size:2.6rem;}
.name2{ font-size:1.4rem;}
.name1 span{ display:inline-block;}

.language{flex-grow: 0; width:150px !important; font-family:"noto"; border:#FFF 1px solid !important; 
background:none !important; border-radius:0 !important;align-self: center; 
font-size:20px !important; line-height:20px !important; height:30px !important; 
margin:30px 0 0 0 !important; padding:8px 0 0 10px !important; text-align:center}
.arrow { position: relative; padding-left: 15px;}
.arrow::before { position: absolute; content: ''; width: 6px; height: 6px; border-top: solid 2px #FFF; 
border-right: solid 2px #FFF; -webkit-transform: rotate(45deg); transform: rotate(45deg);
top: 50%; left: 0; margin-top: -3px;}

/* ハンバーガー */
.ac_menu { flex-grow: 0;}
label { display:block; width:60px; cursor :pointer; height:60px; border-radius:50%;
 background:rgba(255,255,255,0.5); border:#FFF 1px solid; position:relative; margin:20px 30px 0 20px; }
label span {
    display:block;
    position:absolute;
    width:60%; margin:0 20%;
    border-bottom:solid 6px #FFFFFF;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out}
label span:nth-child(1) {top:16px}
label span:nth-child(2) {top:28px}
label span:nth-child(3) {top:41px}
.ac_menu ul { z-index:32; width:100vw; max-width:768px; 
    background:rgba(91, 91, 91, 0.8);
    -webkit-transition: all 0.5s;
    -moz-transition: all 0.5s;
    -ms-transition: all 0.5s;
    -o-transition: all 0.5s;
    transition: all 0.5s;
    margin: 0; padding: 0; font-size:1.5rem; list-style: none; top:80px; right:0; position:fixed;}
.ac_menu ul li {  margin:5px 10px;  text-align:left; padding:5px 10px;
background:rgba(0,153,204,0.6); border-left:#0CF 3px solid; }
.ac_menu ul li a { display:block; text-decoration:none; color:#FFF;  margin:0; height:auto; padding:0;}
.ac_menu ul li:hover { border-left:#069 3px solid; border-bottom:#FC3 3px solid;}

input[type="checkbox"].bellows{
    display: none;/* チェックボックスの非表示 */}

input[type="checkbox"].bellows + ul{
    max-height: 0;/* チェックが入っていない時の高さ */
    overflow: hidden;}

input[type="checkbox"].bellows:checked + ul{
    max-height: 50em;/* チェックが入っているときの高さ */}

/* ハンバーガー */
.pconly { }
.phoneonly { display:none !important}

/* clearfix */

.clearfix:after{
    content: "."; 
    display: block; 
    height: 0; 
    font-size:0;    
    clear: both; 
    visibility:hidden;
}
.clearfix{
    display: inline-block;
} 
/* Hides from IE Mac */
* html .clearfix{
    height: 1%;
}
.clearfix{
    display:block;
}
/* End Hack */


/* ------------------------------
   MEDIAQUERIES LAYOUT
----------------------------- */
@media print, screen and (max-width: 1500px) {

}
@media print, screen and (max-width: 768px) {
.language{ display:none}
.logo img { height:40px; }
.name1{ font-size:2.0rem; display:block; text-align:center}
.name2{ font-size:1.4rem;}
label { width:50px; height:50px; margin:10px 20px 0 0 }
label span { border-bottom:solid 3px #B8DCEF;}
label span:nth-child(1) {top:14px}
label span:nth-child(2) {top:24px}
label span:nth-child(3) {top:34px}
.pconly { display:none !important }
.phoneonly { display:block !important}
.ac_menu ul .phoneonly{ display: flex !important;justify-content: space-between; width:99% !important;  }
.ac_menu ul .phoneonly li { width:100%; background:rgba(255,102,102,0.6) !important; border:#333 1px solid !important; 
padding:3px !important; text-align:center !important; margin:2px 0 2px 2px !important}
.ac_menu ul .phoneonly li a { font-size:10px !important; width:100% !important; height:100% !important} 
.onlang a{ background:rgba(255,0,0,1) !important;  }
.ac_menu ul .phoneonly li:hover { background:rgba(255,102,102,1.0);} 
.c_concierge img{ width:100% !important;}
}

@media print, screen and (max-width: 500px) {
.name1{ font-size:1.8rem;
}

@keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}

@-webkit-keyframes fadeIn {
    0% {opacity: 0}
    100% {opacity: 1}
}