@charset "utf-8";

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

button, a.btn,
input[type="submit"], input[type="button"],
.mod.spot_tag a, div.post_tags a[rel="tag"] {
  height:40px;
  line-height:40px;
}
input[type="text"], input[type="email"], textarea {
  box-sizing:border-box;
  width:100%;
}

/*common properties*/

#header > div.content,
#content,
.path,
#aside_sns ul, #aside_bnr ul,
#footer_content, #footer_navi, #copyright,
#home_topics,
body.home #main .content {
  margin:0;
  width:100%;
}
#main, #aside {
  display:block;
  margin:0;
  width:100%;
}
#aside_sns li, #aside_bnr li {
  display:inline-block;
  vertical-align:top;
}

/*head elements*/

#site_title a {
  margin:10px 5%;
}

/*navi elements*/

#navi h1:before,
#navi div.content:before {
  display:inline-block;
  font:normal normal normal 14px/1 FontAwesome;
  font-size:inherit;
  text-rendering:auto;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale
}
#navi h1:before {content:'\f0c9'}
#navi div.content:before {content:'\f00d';}
#navi h1:before,
#navi div.content:before {
  font-size:30px;
  line-height:40px;
  color:rgb(248,144,49);
}

#navi {}
#navi h1 {
  position:absolute;
  right:5%;
  top:10px;
  z-index:0;
  width:40px;
  height:40px;
  text-align:center;
}
#navi div.content {
  position:fixed;
  right:-100%;
/*   right:0; */
  top:0;
  z-index:1;
  width:100%;
  height:100%;
  background-color:rgb(255,255,255);
  overflow-y:auto;
  -webkit-overflow-scrolling: touch;
  transition:0.5s;
}
#navi.active div.content {
  right:0;
}
#navi div.content:before {
  position:absolute;
  left:5%;
  top:10px;
  width:40px;
  height:40px;
  text-align:center;
}
#navi ul {
  display:block;
  box-shadow:none;
}
#navi ul li {display:inline;}
#navi_contents {margin:60px 0 0;}
#navi_contents li a {
  display:block;
  box-sizing:border-box;
  margin:0 0 2px;
  padding:0.5em 5%;
  background-color:#eee;
}
#navi_util {
  padding:20px 0;
  background-color:rgb(55,55,55);
}
#navi_util li a {
  display:block;
  box-sizing:border-box;
  padding:0.5em 5%;
  color:rgb(255,255,255);
  text-decoration:none;
}
#navi_lang {
  padding:20px 0 40px;
  border-radius:0;
}
#navi_lang:hover {box-shadow:none;}
#navi_lang li a {
  display:block;
  padding:0.5em 5%;
  font-weight:normal !important;
}

/*foot elements*/

.path p {margin:40px 5%;}

#aside_sns ul {
  margin:40px 0;
}
#aside_sns li {
  display:block;
  margin:1em 5%;
}
#aside_bnr ul {}
#aside_bnr li {
  margin:0 0 5% 5%;
  width:42%;
}
#aside_bnr li img {
  margin:0;
  width:100%;
  height:auto;
}
.page_top p {padding:20px 0 40px;}
#footer_navi {
  display:block;
}
#footer_navi ul {margin:40px 0;}
#footer_navi li {margin:1em 5%;}
#copyright {
  display:block;
  vertical-align:inherit;
  margin:40px 0;
  text-align:center;
}

/*common elements*/

#title h1 {
  margin:52px 5%;
  width:auto;
}
body.tax-spot_cat #title {
  height:700px;
  height:-weblit-calc(100vh - 60px);
  height:calc(100vh - 60px);
}
body.tax-spot_cat #title h1 {margin:40px 5%;}
body.tax-spot_cat #title h2 {
  margin:40px 5%;
  width:90%;
  padding:0;
}
body.term-entertainment #title {background-image:url(images/bg_spot_entertainment_mb.jpg);}
body.term-activity #title {background-image:url(images/bg_spot_activity_mb.jpg);}
body.term-gourmet #title {background-image:url(images/bg_spot_gourmet_mb.jpg);}
body.term-accommodation #title {background-image:url(images/bg_spot_accommodation_mb.jpg);}
body.single-spot #title h1 {
  margin:20px 5%;
}
body.single-spot #title span.cat {
  margin:0 0 20px;
}
body.single-spot #title h2 {
  margin:40px 5%;
  padding:0;
  width:auto;
}
.prev_next {
  margin:60px 0;
  text-align:center;
}
.prev_next ul {width:50%;}
div.wp-pagenavi {margin:40px 5%;}

/* modules */

.mod {margin:40px 0;}
.mod h1 {margin:1em 5%;}
.mod.spot li a {margin:1em 5%;}
.mod.list li a {margin:0.5em 5%;}
.mod.spot_tag ul {padding:0 5%;}

.mod.tamu {
  margin:40px 5%;
  border:2px solid rgb(236,236,236);
}

/*
div.AlpinePhotoTiles_parent_class {text-align:left !important;}
img.AlpinePhotoTiles-image {
  margin:0 0 5% 5% !important;
  width:42.5%;
  height:auto;
}
*/

#sb_instagram {padding:0 !important;}
div.sbi {}
#sbi_images {padding:0 !important;}
div.sbi_item {width:50% !important;}
div.sbi_photo_wrap {}
a.sbi_photo {height:50vw !important;}
div.sbi_photo img {}
#sbi_load {}

/*body elements*/

.body > h1,
.body > h2,
.body > h3,
.body > p,
.body > ul,
.body > ol {
  margin:1em 5%;
}
.body > h1 {margin:40px 5%;}
.body table {
  margin:1em 5%;
  width:90%;
}
.body div.wp-caption {
  margin:40px 5%;
  width:90% !important;
}
.body div.gallery {margin:20px 2.5% !important;}
dl.gallery-item {
  margin:0 !important;
  padding:2.5%;
  box-sizing:border-box;
}
dd.gallery-caption {
  margin:5px 0 0;
  text-align:left;
}

.edit_post_link p {margin:40px 5%;}
div.post_social ul {margin:30px 5%;}
div.post_likebox {
  margin:40px 5%;
  padding:0;
  height:auto;
}
div.post_likebox p {
  margin:20px 40px;
}
div.post_likebox span.thumb {
  display:inline;
  position:static;
}
div.post_likebox span.thumb img {
  position:static;
  width:100%;
  height:auto;
}
div.post_tags {
  margin:40px 5%;
}
.body div.col p {
  margin:1em 5%;
  line-height:1.5;
}

/* home */

#mainImg {display:none !important;}
#mainImg_mb div.slidesjs-container a {
  width:100%;
  height:100%;
  background-repeat:no-repeat;
  background-position:center;
  background-size:cover;
}
div.slide a span.content {
  left:5%;
  right:5%;
  bottom:55px;
  padding:20px;
  margin:0;
  width:auto;
}
body.home #main .content h1 {margin:40px 5% 20px;}
body.home #main .content h1 a.btn {
  position:relative;
  top:-3px;
}
div.matome li a {
  margin:0 0 5% 5%;
  width:42%;
}
div.matome ul {text-align:left;}
div.matome li {}
div.matome li a {
  position:relative;
  display:block;
  margin:20px 5%;
  padding:0 0 0 90px;
  width:auto;
  height:80px;
  line-height:80px;
  overflow:hidden;
}
div.matome li span.thumb {}
div.matome li span.thumb img {
  position:absolute;
  left:0;
  top:0;
  width:80px;
  height:80px;
}
div.matome li strong.title {margin:0;}
#home_spot h1 span {
  float:none;
  display:block;
  margin:10px 0 0;
}
#home_spot div.posts ul {margin-bottom:0;}
#home_topics h1 a.btn {display:none;}
#home_topics div.topic li a {
  display:block;
  margin:10px 5%;
  padding:0 0 0 123px;
  width:auto;
  height:92px;
  border:2px solid rgb(221,221,221);
}

/* posts, news */

div.posts {}
div.posts ul {margin:40px 0;}
div.posts li,
div.tribe-events-list div.type-tribe_events {
  margin:0 0 5% 5%;
  width:42%;
  background-color:rgb(255,255,255);
}
div.posts a.post {
  display:block;
}
div.posts span.thumb,
div.tribe-events-event-image {
  display:block;
  position:static;
}
div.posts span.thumb img,
div.tribe-events-event-image img {
  width:100%;
  height:auto;
}
div.posts span.cat {
  display:block;
  position:relative;
  margin:-20px 10px 0;
  padding:9px 0 8px;
  height:13px;
  background-color:#eee;
  text-align:center;
}
html[lang="es"] div.posts span.cat,
html[lang="pt"] div.posts span.cat {
  margin:-25px 10px 0;
  height:auto;
}
div.posts strong.title,
h2.tribe-events-list-event-title {
  display:block;
  margin:1em 10px;
  height:3.6em;
  overflow:hidden;
}
div.posts.event time,
div.tribe-event-schedule-details {
  display:block;
  margin:1em 10px;
  height:1.2em;
  overflow:hidden;
}
div.posts span.desc,
div.tribe-events-list div.tribe-events-content p {
  display:none;
}

div.posts.news li {
  position:relative;
  margin:20px 5%;
}
div.posts.news span.thumb {display:inline;}
div.posts.news span.thumb img {
  position:absolute;
  left:0;
  top:0;
  width:180px;
  height:135px;
}
div.posts.news strong.title {
  margin:0;
  height:auto;
}
div.posts.news time {
  display:block;
  margin:1em 0;
}

/* spot */

#featImg {height:250px;}
#spot_googlemaps {margin:20px 5%;}
#spot_googlemaps iframe {
  width:100%;
  height:240px;
}
#relate_posts h1 {margin:40px 5%;}

/* annual_events */

body.page-annual_events #main table {
  display:block;
  margin:0;
  width:auto;
}
body.page-annual_events #main table tr {
  display:block;
  margin:16px 5%;
  padding-bottom:20px;
  border-bottom:1px solid rgb(213, 213, 213);
  font-size:0;
}
body.page-annual_events #main table tr:first-child {
  padding-top:20px;
  border-top:1px solid rgb(213, 213, 213);
}
body.page-annual_events #main table thead {display:none;}
body.page-annual_events #main table tbody {display:inline;}
body.page-annual_events #main table td {
  display:inline;
  padding:0;
  border:none;
  font-size:16px;
}
body.page-annual_events #main table td:nth-child(4),
body.page-annual_events #main table td:nth-child(5),
body.page-annual_events #main table td:nth-child(6) {
  display:block;
  width:100%;
  margin:0.2em 0;
  line-height:1.3;
  word-break:break-all;
}
body.page-annual_events #main table td:nth-child(1):before {
  content:'\f017';
  display:inline-block;
  margin-right:0.25em;
  font:normal normal normal 100%/1 FontAwesome;
  font-size:inherit;
  text-rendering:auto;
  -webkit-font-smoothing:antialiased;
  -moz-osx-font-smoothing:grayscale
}
body.page-annual_events #main table td:nth-child(1):after,
body.page-annual_events #main table td:nth-child(2):after {content:'/';}
body.page-annual_events #main table td:nth-child(4) {
  font-weight:bold;
  font-size:18px;
}

/* event */

div.tribe-events-event-cost,
.tribe-events-list .tribe-events-venue-details,
a.tribe-events-read-more {display:none;}

h2.tribe-events-page-title,
span.tribe-events-list-separator-month {margin:40px 5%;}
div.tribe-events-loop {font-size:0;}
div.tribe-events-list div.type-tribe_events {
  display:inline-block;
  vertical-align:top;
}
div.tribe-event-schedule-details {}
h1.tribe-events-single-event-title {margin:40px 5% 1em;}
div.tribe-events-single div.tribe-events-schedule h2 {margin:1em 5%;}
h3.tribe-events-single-section-title {margin:1em 5%;}
div.tribe-events-single div.tribe-events-meta-group dl {margin:20px 5%;}
.single-tribe_events .tribe-events-venue-map,
.single-tribe_events .tribe-events-meta-group .tribe-events-venue-map {margin:20px 5%;}
div#tribe-events-gmap-0 {height:240px !important;}

/* contact - wpcf7 */

div.wpcf7 p {margin:1em 5%;}
div.wpcf7 p label,
span.wpcf7-form-control-wrap {
  display:block;
  width:100%;
}
input.wpcf7-text,
textarea.wpcf7-textarea {
  box-sizing:border-box;
  width:100%;
}
span.wpcf7-not-valid-tip {
  float:none;
  display:block;
  width:100%;
}
div.btn {margin:20px 5%;}
input.wpcf7-submit {width:100%;}
div.wpcf7-validation-errors {margin:1em 5%;}

/* matome */

body.page-matome #contents div.content {
  width:100%;
  padding:0;
}
body.page-matome div.content.body h2 {
  margin:40px 5%;
}
div.matome_gallery {
  margin:20px 5%;
  width:auto;
}
div.matome_gallery img {
  margin:10px 0px;
  width:100%;
  height:auto;
}
#matome_map {text-align:center;}
#matome_map img {
  zoom:75%;
  float:none;
  margin:0;
  max-width:100%;
  height:auto;
}
#kintown div.info {
  margin:2em 5%;
  padding:1em;
  width:auto;
}
#shizen, #tokusan, #rekishi {
  background-image:none;
  color:rgb(51,51,51);
}
#shizen h2, #tokusan h2 {
  color:rgb(51,51,51);
}
#shizen p, #tokusan p, #rekishi p {
  margin:1em 5%;
  width:auto;
}
#matome_menu ul {
  margin:0 !important;
  width:100%;
}
#matome_menu li {display:inline;}
#matome_menu li a {
  display:block;
  margin:20px 5%;
  width:90%;
}
#matome_menu li span.thumb {
  width:100%;
  height:auto;
}
#matome_menu li span.thumb img {
  position:static;
  width:100%;
  height:auto;
}


/*characters*/

body {font-size:16px;}
#header,
#aside_bnr ul,
div.posts ul,
div.wp-pagenavi,
div.post_social ul,
.mod.spot_tag ul {font-size:0;}
div.posts li span.cat,
div.posts li time, div.tribe-event-schedule-details,
#home_topics div.topic li time,
div.wp-caption p.wp-caption-text, dd.gallery-caption {font-size:13px;}
body.single-spot #title span.cat,
div.slide span.desc,
#home_topics div.topic li strong.title {font-size:14px;}
body.single-spot #title h2,
div.post_social li a,
div.posts li,
div.type-tribe_events,
h2.tribe-events-list-event-title,
div.slide strong.title,
input[type="text"], input[type="email"], textarea {font-size:16px;}
button, a.btn,
input[type="submit"], input[type="button"],
.mod.spot_tag a, div.post_tags a[rel="tag"] {font-size:16px !important;}
#navi_util li a, #navi_lang li a,
#matome_menu li a {font-size:20px;}
div.wp-pagenavi * {font-size:22px;}
#navi_contents li a,
#title h2,
.mod h1,
span.tribe-events-list-separator-month,
body.page-matome div.content.body h2 {font-size:24px;}
#title h1,
body.single-spot #title span.title {font-size:30px;}

#title h2 {font-weight:normal;}

body {
  font-family: 'Hiragino Kaku Gothic ProN', 'Tahoma', sans-serif;
}

/* lang="en" */

html[lang="en"] div.posts span.cat.entertainment {font-size:0;}
html[lang="en"] div.posts span.cat.entertainment:after {
  content:'Entertainment';
  font-size:13px;
}

/* lang="ko" */

html[lang="ko"] body {
  font-family: 'Tahoma', sans-serif;
}

/* lang="zh" */

html[lang="zh"] body {
  font-family: 'Tahoma', sans-serif;
}

/* misc */

#navi h1 {
  font-size:0;
  color:transparent;
}

}

@media only screen and (max-width:375px) {
  html[lang="ja"] div.post_social li a:after {content:none;}
  html[lang="en"] div.posts span.cat.activity {font-size:0;}
  html[lang="en"] div.posts span.cat.activity:after {
    content:'Activity';
    font-size:13px;
  }
}