@charset "utf-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosanstc.css);
body {
    overflow-x: hidden;
	font-family: 'Noto Sans TC', 'Mplus 1p', sans-serif;
	font-weight: 300;
	color: #4d4d4d;
	background-color: #50c8fa;
    background: linear-gradient(#50c8fa, #fafafa);
	background: -webkit-linear-gradient(#50c8fa, #fafafa); /* For Safari 5.1 to 6.0 */
    background: -moz-linear-gradient(#50c8fa, #fafafa); /* For Firefox 3.6 to 15 */
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	body {
		background: #50c8fa;
	}
}
@supports (-ms-ime-align: auto) {
	body {
		background: #50c8fa !important;
	}
}
b, strong {
    font-weight: 500;
}
button {
	outline: none;
}
a, a:visited {
	text-decoration: none;
	color: inherit;
}
a:hover, a:active {
	text-decoration: none;
	color: #2992d0;
}
textarea:focus, input:focus {
    outline: none;
}

/* Hide jQuery mobile loading text */
.ui-loader {
	display: none; 
}

/* Bootstrap tweaks */	
.container-fluid {
	max-width: 1200px;
	background-color: #fafafa;
}

/* Warning page for IE 9 or lower */
#ie9-warning {
	z-index: 1500;
	display: table;
	position: fixed;
	width: 100%;
	height: 100%;
	text-align: center;
	background-color: #2992d0;
}
#ie9-warning-text {
	display: table-cell;
	vertical-align: middle;
	color: #fafafa;
}
/* Warning box for IE 10 & 11 */
#ie11-warning {
	z-index: 1500;
	display: none;
	position: fixed;
	bottom: 0px;
	width: 100%;
	text-align: center;
	color: #fafafa;
	background-color: rgba(77,77,77,0.9);
}
#ie11-warning p {
	display: table-cell;
	vertical-align: middle;
	margin: 0px;
}
#ie11-warning a {
	font-weight: bold;
}
#ie11-warning a:hover, #ie11-warning a:active, #ie9-warning-text a:hover, #ie9-warning-text a:active {
	text-decoration: underline;
	color: inherit;
}
#ie11-warning-close {
	float: left;
	cursor: pointer;
	width: 35px;
	height: 50px;
	margin-left: 7px;
	background: transparent url(../img/nav-cancel-white.png);
	background-size: 100%;
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	#ie11-warning {
		display: table;
	}
}

/* Navbar */
nav {
	z-index: 1000;
	position: fixed;
	left: 50%;
	transform: translateX(-50%);
    width: 100%;
	padding: 0px 10px 0px 15px;
}
#nav-logo {
	width: 170px;
	height: 100px;
	background: transparent url(../img/logo.png) no-repeat center center;
    background-size: 100%;
}
#m-nav-logo {
	display: none;
	position: absolute;
	cursor: pointer;
	width: 35px;
	height: 50px;
	bottom: 0px;
	border: none;
	background: transparent url(../img/m-nav-logo.png) no-repeat center center;
	background-size: 100%;
}
#nav-menu {
	display: none;
	float: right;
	width: 35px;
	height: 50px;
	border: none;
	background: transparent url(../img/nav-menu.png) no-repeat center center;
    background-size: 100%;
}
#nav-button {
	display: flex;
	align-items: center;
	justify-content: center;
    position: absolute;
    right: 0px;
    bottom: 0px;
	height: 50px;
}
#nav-button a, #nav-button button {
	height: 50px;
	max-height: 50px;
	border: none;
	border-radius: 0px;
	background: transparent no-repeat center center;
    background-size: 100%;
}
#nav-button .nav-text, #nav-button .m-nav-text {
	width: 100px;
	margin-left: 10px;
	padding: 0px;
  	line-height: 50px; /* Keeps text in one line when toggling searchbar */
}
#nav-button .m-nav-text {
	display: none;
}
#nav-button .nav-text:hover, #nav-button .nav-text:active, #nav-button .m-nav-text:hover, #nav-button .m-nav-text:active, #nav-button #nav-active {
    color: #2992d0;
}
#nav-button .nav-icon {
	width: 35px;
}
#nav-button #nav-search {
	margin-left: 20px;
	background-image: url(../img/nav-search.png);
}
#nav-button #nav-search:hover, #nav-button #nav-search:active {
	background-image: url(../img/nav-search-active.png);
}
#nav-searchbar {
	display: none;
	width: 200px;
	border: none;
	border-bottom: 1px solid #4d4d4d;
}
	/* Styling searchbar placeholder text  */
	::-webkit-input-placeholder { /* WebKit, Blink, Edge */
		color: #c8c8c8;
		font-weight: 300;
	}
	:-moz-placeholder { /* Mozilla Firefox 4 to 18 */
	    color: #c8c8c8;
		font-weight: 300;
	    opacity:  1;
	}
	::-moz-placeholder { /* Mozilla Firefox 19+ */
	    color: #c8c8c8;
		font-weight: 300;
	    opacity:  1;
	}
	:-ms-input-placeholder { /* Internet Explorer 10-11 */
	    color: #c8c8c8;
		font-weight: 300;
	}
	::-ms-input-placeholder { /* Microsoft Edge */
	    color: #c8c8c8;
		font-weight: 300;
	}
#nav-button #nav-cancel {
	display: none;
	position: absolute;
	right: 75px;
	bottom: 0px;
	height: 50px;
	width: 35px;
	border: none;
	background: transparent url(../img/nav-cancel.png) no-repeat center center;
	background-size: 100%;
}
#nav-button #nav-cancel:hover, #nav-button #nav-cancel:active {
	background-image: url(../img/nav-cancel-active.png);
}
#nav-button #nav-contact {
	cursor: pointer;
	background-image: url(../img/nav-contact.png);
}
#nav-button #nav-contact:hover, #nav-button #nav-contact:active {
	background-image: url(../img/nav-contact-active.png);
}
#nav-button #nav-fb {
	background-image: url(../img/nav-fb.png);
}
#nav-button #nav-fb:hover, #nav-button #nav-fb:active {
	background-image: url(../img/nav-fb-active.png);
}
#m-nav {
	display: none;
	height: 50px;
}
#m-nav-search {
	position: absolute;
	right: 50px;
	width: 35px;
	height: 50px;
	border: none;
	background: transparent url(../img/nav-search.png) no-repeat center center;
    background-size: 100%;
}
#m-nav-searchbar {
	display: none;
	position: absolute;
	top: 14px;
	right: 60px;
	width: 200px;
	border: none;
	border-bottom: 1px solid #4D4D4D;
}
#m-nav-cancel {
	display: none;
	position: absolute;
	right: 50px;
	width: 35px;
	height: 50px;
	border: none;
	background: transparent url(../img/nav-cancel.png) no-repeat center center;
	background-size: 100%;
}
#nav-bg {
	z-index: 900;
	position: fixed;
	width: 100%;
	height: 100px;
	background-color: #ffffff;
}
#nav-bg-fixed {
	z-index: 800;
	position: absolute;
	top: 0px;
	width: 100%;
	height: 100px;
	background-color: #ffffff;
}
@media (min-width: 1200px) {
	nav {
    	width: 1200px;
		padding: inherit;
	}
}
@media (min-width: 768px) and (max-width: 1199px) {
	#nav-button {
    	right: 10px;
	}
}
@media (max-width: 767px) {
	nav {
		padding: 0px 10px 0px 5px;
	}
	#nav-logo, #nav-button, #nav-button .nav-icon {
		display: none;
	}
	#m-nav-logo, #nav-menu, #m-nav, #nav-button .m-nav-text {
		display: block;
	}
	#m-nav-logo {
		top: 0px;
		bottom: auto;
	}
	#nav-button {
		top: 50px;
    	right: 0px;
		bottom: auto;
    	left: 0px;
    	background-color: #ffffff;
	}
	#nav-button .nav-text, #nav-button .m-nav-text {
   		width: 100%;
		margin-left: 0px;
    	background-color: #ffffff;
	}
	#nav-bg, #nav-bg-fixed {
		height: 50px;
	}
	#nav-button .nav-text, #nav-button .m-nav-text {
		height: 49px; /* Fix gaps between buttons */
	}
	#nav-button #nav-search {
		height: 0px; /* Prevert it from reappearing in mobile view when resizing window */
	}
}

/* Back-to-top & back-to-#jpamp button */
#btn-top, #btn-jpmap, #btn-jpmap-func {
	z-index: 1000;
	display: none;
	position: fixed;
	border: none;
	background: transparent no-repeat center top;
	background-size: 100%;
}
#btn-top {
	right: 30px;
	bottom: 30px;
	width: 43px;
	height: 43px;
	background-image: url(../img/btn-b2top.png);
}
#btn-jpmap, #btn-jpmap-func {
	right: 88px;
	bottom: 30px;
	width: 103px;
	height: 43px;
}
#btn-jpmap {
	background-image: url(../img/btn-jpmap.png);
}
#btn-jpmap-func {
	background-image: url(../img/btn-jpmap-func.png);
}
@media (max-width: 767px) {
	#btn-top {
		right: 20px;
		bottom: 20px;
	}
	#btn-jpmap, #btn-jpmap-func {
		right: 78px;
		bottom: 20px;
	}
}

/* Slideshow*/
#slideshow {
	position: relative;
	max-width: 1200px;
	height: 630px;
	margin: auto;
	padding-top: 100px;
	padding-bottom: 25px;
	text-align: center;
	background-color: #fafafa;
}
#slideshow-cover, #button-cover {
	display: none;
    z-index: 600;
    position: absolute;
    top: 0px;
    width: 100%;
    height: 100%;
}
/* Slide buttons */
#slide-btn {
	z-index: 200;
    position: absolute;
	right: 0px;
	width: 140px;
	height: 32px;
	margin: 20px;
	border-radius: 16px;
	background: #fafafa no-repeat right center;
	box-shadow: 0px 0px 10px #888888;
}
#slide-btn button {
	width: 32px;
	height: 32px;
	margin: 0px 5px;
    padding: 0px;
	border: none;
	background: no-repeat center center;
    background-size: 100%;
}
#slide-btn button div {
	width: 32px;
	height: 32px;
	background: no-repeat center center;
    background-size: 100%;
}
@-moz-document url-prefix() {
	#slide-btn button {
		vertical-align: top;
	}
}
#slide-btn #slide-btn-1 {
	background-image: url(../img/slide-btn-1.png);
}
#slide-btn #slide-btn-2 {
	background-image: url(../img/slide-btn-2.png);
}
#slide-btn #slide-btn-3 {
	background-image: url(../img/slide-btn-3.png);
}
#slide-btn button #slide-btn-1-active {
	background-image: url(../img/slide-btn-1-active.png);
}
#slide-btn button #slide-btn-2-active {
	background-image: url(../img/slide-btn-2-active.png);
}
#slide-btn button #slide-btn-3-active {
	background-image: url(../img/slide-btn-3-active.png);
}
#slideshow .slide {
	display: inline-block;
	position: relative;
	width: 100%;
	max-width: 1200px;
	height: 530px;
}
/* Slide image */
#slideshow .slide .slide-img {
	z-index: 100;
	position: relative;
	cursor: e-resize;
	height: 530px;
	background: transparent no-repeat center top;
    background-size: auto 450px;
}
#slide-1 .slide-img {
	display: none;
}
	#month-img-01 {	background-image: url(../img/month-img-01.jpg) !important; }
	#month-img-02 {	background-image: url(../img/month-img-02.jpg) !important; }
	#month-img-03 {	background-image: url(../img/month-img-03.jpg) !important; }
	#month-img-04 {	background-image: url(../img/month-img-04.jpg) !important; }
	#month-img-05 {	background-image: url(../img/month-img-05.jpg) !important; }
	#month-img-06 {	background-image: url(../img/month-img-06.jpg) !important; }
	#month-img-07 {	background-image: url(../img/month-img-07.jpg) !important; }
	#month-img-08 {	background-image: url(../img/month-img-08.jpg) !important; }
	#month-img-09 {	background-image: url(../img/month-img-09.jpg) !important; }
	#month-img-10 {	background-image: url(../img/month-img-10.jpg) !important; }
	#month-img-11 {	background-image: url(../img/month-img-11.jpg) !important; }
	#month-img-12 {	background-image: url(../img/month-img-12.jpg) !important; }
	#japan-img-01 { background-image: url(../img/japan-img-01.jpg) !important; }
	#course-img-01 { background-image: url(../img/course-img-01.jpg) !important; }
/* Slide image credit */
#slideshow .slide .slide-img p a {
	position: absolute;
	bottom: 93px;
	right: 20px;
	font-family: 'Rounded Mplus 1c', sans-serif;
	font-size: 0.75em;
	color: #fafafa;
	text-shadow: 0px 0px 4px #000000;
}
/* Slide infobox */
#slideshow .slide .slide-img .slide-info {
	width: 400px;
	height: 520px;
	background: transparent no-repeat right center;
    background-size: auto 100%;
}
	#month-img-01 .slide-info { background-image: url(../img/month-info-01.png) !important; }
	#month-img-02 .slide-info { background-image: url(../img/month-info-02.png) !important; }
	#month-img-03 .slide-info { background-image: url(../img/month-info-03.png) !important; }
	#month-img-04 .slide-info { background-image: url(../img/month-info-04.png) !important; }
	#month-img-05 .slide-info { background-image: url(../img/month-info-05.png) !important; }
	#month-img-06 .slide-info { background-image: url(../img/month-info-06.png) !important; }
	#month-img-07 .slide-info { background-image: url(../img/month-info-07.png) !important; }
	#month-img-08 .slide-info { background-image: url(../img/month-info-08.png) !important; }
	#month-img-09 .slide-info { background-image: url(../img/month-info-09.png) !important; }
	#month-img-10 .slide-info { background-image: url(../img/month-info-10.png) !important; }
	#month-img-11 .slide-info { background-image: url(../img/month-info-11.png) !important; }
	#month-img-12 .slide-info { background-image: url(../img/month-info-12.png) !important; }
	#slide-2 .slide-img .slide-info { background-image: url(../img/japan-info.png) !important; }
	#course-img-01 .slide-info { background-image: url(../img/course-info.png) !important; }
/* Slide infobox shadow */
#slideshow .slide .slide-info-shadow {
	position: absolute;
	top: 0px;
	height: 530px;
	background: transparent no-repeat right center;
    background-size: auto 100%;
}
#month-info-shadow {
	width: 410px;
	background-image: url(../img/month-info-shadow.png) !important;
}
#japan-info-shadow {
	width: 435px;
	background-image: url(../img/japan-info-shadow.png) !important;
}
#course-info-shadow {
	width: 410px;
	background-image: url(../img/course-info-shadow.png) !important;
}
/* Slide infobox link */
#slideshow .slide .slide-img .slide-info .slide-info-link {
    position: absolute;
    top: 408px;
	left: 175px;
	width: 150px;
	height: 36px;
}
@media (max-width: 767px) {
	#slideshow {
		height: 610px;
		padding-top: 50px;
	}
	#slide-btn {
		display: none;
		top: 600px;
		left: 50%;
		transform: translateX(-50%);
		margin: 0px;
	}
	#slideshow .slide .slide-img .slide-info, #slideshow .slide .slide-info-shadow {
		width: 100% !important;
		background-position: center center;
	}
	#slideshow .slide .slide-img p {
		display: none;
	}
	#slideshow .slide .slide-img .slide-info .slide-info-link  {
		left: 50%;
		transform: translateX(-50%);
	}
}

/* General style */
.page-top {
	padding-top: 150px;
}
.page-top .intro-col {
	margin-bottom: 0px;
}
.page-bottom {
    padding-bottom: 70px;
}
#page-contact #contact {
    padding: 30px 0px;
	background-color: #fafafa;
}
#page-contact #contact h1 {
	font-size: 2em;
	font-weight: 300;
}
#page-contact #contact p {
    font-size: 1.5em;
    font-weight: 300;
}
@media (max-width: 992px) {
	#page-contact #contact {
		padding-top: 0px;
	}
}
@media (max-width: 767px) {
	.page-top {
		padding-top: 90px;
	}
	#page-contact #contact {
		padding-top: 30px;
	}
}

/* Intro */
.intro-col {
	position: relative;
	margin-bottom: 40px;
	text-align: center;
}
.intro-col .intro-icon {
	display: inline-block;
	width: 80px;
	height: 80px;
	background: transparent no-repeat center center;
    background-size: 100%;
}
.intro-col h1 {
	margin-top: 10px;
	font-weight: 200;
}
.intro-col p {
	font-size: 1.2em;
}
.intro-col p span {
    vertical-align: top;
    line-height: 2.4em;
    font-size: 0.6em;
}
#intro-home h1 {
	font-family: 'Rounded Mplus 1c', sans-serif;
	font-weight: 300;
}
#intro-home .intro-icon {
	background-image: url(../img/icon-home.png);
}
#intro-event .intro-icon {
	background-image: url(../img/icon-event.png);
}
#intro-course .intro-icon {
	background-image: url(../img/icon-course.png);
}
#intro-japan .intro-icon {
	background-image: url(../img/icon-japan.png);
}
#intro-share .intro-icon {
	background-image: url(../img/icon-share.png);
}
#intro-share {
	margin-bottom: 15px !important;
}
#intro-share a {
	display: inline-block;
	width: 45%;
	margin-bottom: 45px;
	font-size: 1.4em;
	font-weight: 500;
}
#intro-share p {
	margin-bottom: 40px;
}
#intro-jpcentre .article-link {
	margin-top: 30px;
}
#share-active {
	cursor: default;
	color: #2992d0;
}
@media (max-width: 767px) {
	.intro-col p {
		font-size: 1.1em;
	}
	#intro-share a {
		font-size: 1.2em;
		width: 49%;
	}
}
@media (max-width: 380px) {
	#intro-home h1 {
		font-size: 2.3em;
	}
}

/* Article */
.article-col h2, .article-col h3 {
    transform: translateY(14px);
	margin: 0px;
    padding: 0px 20px;
	font-weight: 400;
    font-size: 1.7em;
    line-height: 1.3em;
}
.article-col h2 mark, .article-col h3 mark  {
	padding: 0px;
	color: inherit;
	background-color: #fafafa;
}
.comment .article-col p {
	margin: 0px;
	font-size: 1.1em;
}
.article-col p span {
	font-weight: 500;
}
.japanese {
	font-family: 'Rounded Mplus 1c', sans-serif;
}
.article-col .content-frame {
	display: table;
	min-height: 230px;
	margin-bottom: 30px;
    padding: 30px 20px;
	border: 1px solid #2992d0;
    box-shadow: 4px 4px 0px 1px #2992d0;
}
@-moz-document url-prefix() {
	#waypoint-01 .article-col .content-frame {
		display: block;
	}
}
.article-col .content-frame h4 {
    position: absolute;
    bottom: 33px;
    right: 30px;
	font-family: 'Rounded Mplus 1c', sans-serif;
    font-size: 4em;
    font-weight: 200;
	color: #2992d0;
}
.article-col .content-frame .inside-col-left {
	z-index: 100;
	min-height: 170px;
	padding-left: 0px;
    padding-right: 30px;
	border-right: 1px solid #eeeeee;
}
.article-col .content-frame hr {
    display: none;
	margin: 30px 0px;
}
.article-col .content-frame .inside-col-right {
	z-index: 100;
    padding-left: 30px;
	padding-right: 0px;
}
.article-col .content-frame .inside-col-right p {
    margin-bottom: 0px;
}
.article-col.long-col-right  .content-frame .inside-col-left {
	border-right: none;
}
.article-col.long-col-right  .content-frame .inside-col-right {
	min-height: 170px;
	border-left: 1px solid #eeeeee;
}
.long-text-2 {
    padding-left: 45px;
    text-indent: -45px;
}
.long-text-4 {
    padding-left: 73px;
    text-indent: -73px;
}
.article-link {
	margin-top: 20px;
	margin-right: 10px;
	padding: 0px 10px 1px 8px;
	border: 1px solid #4d4d4d;
  	line-height: 25px;
	font-weight: 300;
	color: #4d4d4d;
	background-color: #fafafa;
}
.article-link:hover{
	border: 1px solid #4d4d4d;
    color: #2992d0;
	background-color: #fafafa;
}
.article-link span {
	display: inline-block;
    transform: translateY(4px);
	width: 20px;
	height: 20px;
	margin-right: 3px;
	background: transparent no-repeat center center;
    background-size: 100%;
}
.article-link.link-active {
    color: #2992d0;
}
.article-link.btn-more span {
	background-image: url(../img/btn-more.png);
}
.article-link.btn-course span {
	background-image: url(../img/btn-course.png);
}
.article-link.btn-event span {
	background-image: url(../img/btn-event.png);
}
.article-link.btn-japan span {
	background-image: url(../img/btn-japan.png);
}
.article-link.btn-map span {
	background-image: url(../img/btn-map.png);
}
.article-link.btn-pdf span {
	background-image: url(../img/btn-pdf.png);
}
.article-link.btn-house span {
	background-image: url(../img/btn-house.png);
}
.article-link.btn-fb span {
	background-image: url(../img/btn-fb.png);
}
.inside-comment {
	margin: 30px 0px 0px;
}
.inside-comment .article-col {
	margin: 0px;
	padding: 0px;
}
.inside-comment .content-frame {
	margin: 0px;
	border: 1px dashed #2992d0;
    box-shadow: none;
}
@media (max-width: 767px) {
	.comment .article-col p {
		font-size: 1em;
	}
	.article-col .content-frame h4 {
		font-size: 3.2em;
	}	
	.article-col .content-frame .inside-col-left {
		min-height: 0px;
		padding-left: 0px;
		padding-right: 0px;
		border-right: none;
	}
	.article-col.long-col-right  .content-frame .inside-col-right {
		border-left: none;
	}
	.article-col.long-col-right  .content-frame .inside-col-right {
		min-height: 0px;
	}
	.article-col .content-frame hr {
		display: block;
	}
	.article-col .content-frame .inside-col-right {
		padding-left: 0px;
		padding-right: 0px;
	}
}
/* Article image lightbox */
.article-thumbnail {
	display: inline-block;
	cursor: pointer;
	margin-top: 15px;
	margin-right: 14px;
}
.article-thumbnail img {
	height: 100px;
	border: 1px solid #eeeeee;
}
#lightbox {
	z-index: 1500;
	display: table;
	position: fixed;
	bottom: 0px;
	width: 100%;
	height: 100%;
	text-align: center;
	color: #fafafa;
	background-color: rgba(77,77,77,0.5);
}
#lightbox-image {
	display: table-cell;
	vertical-align: middle;
}
#lightbox-image img {
	max-width: 50%;
	max-height: 800px;
	border-radius: 4px;
	background-color: #fafafa;
	box-shadow: 0px 3px 15px 0px #4d4d4d;
}
#lightbox-close {
    position: absolute;
	cursor: pointer;
	right: 0px;
	width: 35px;
	height: 50px;
	margin-right: 7px;
	background: transparent url(../img/nav-cancel-white.png);
	background-size: 100%;
}
@media (max-width: 767px) {
	#lightbox {
		height: calc(100vh - 50px); 
	}
	#lightbox-image img {
		max-width: 90%;
	}
}
/* Sort articles button */
#btn-sort {
	display: table;
    width: 100%;
	text-align: center;
}
#btn-sort button {
	display: table-cell;
	padding: 0px 15px;
	outline: none;
	border: 1px solid #2992d0;
	border-radius: 4px;
	line-height: 30px;
	color: #2992d0;
	background-color: #fafafa;
}
#sort-1 {
	display: inline;
}
#sort-2 {
	display: none;
}
#jpmap-func #btn-sort {
    padding-top: 30px;
}
@media (max-width: 992px) {
	#jpmap-func #btn-sort {
    	padding-bottom: 10px;
	}
}
@media all and (-ms-high-contrast: none), (-ms-high-contrast: active) {
	#btn-sort button {
		display: inline-block;
	}
}
@supports (-ms-ime-align: auto) {
	#btn-sort button {
		display: inline-block;
	}
}
/* Hidden articles */
.hidden-article {
	display: none;
}
#show-hidden {
	cursor: pointer;
	width: 100%;
	margin-bottom: 30px;
	text-align: center;
}
#show-hidden p {
	margin: 0px;
	line-height: 30px;
	font-weight: 500;
	color: #2992d0;
}
#show-hidden span {
	display: inline-block;
	width: 20px;
	height: 20px;
    background: transparent url(../img/btn-show.png) no-repeat center center;
    background-size: 100%;
}

/* Home features */
/* Home study japan */
#fujisan {
	height: 240px;
	margin-top: 30px;
    background: #2992d0 url(../img/fujisan.png) no-repeat bottom center;
    background-size: auto 101%;
}
.home-padding {
	padding-bottom: 30px
}
.home-features {
	color: #fafafa;
	background-color: #2992d0 !important;
}
.home-features .intro-col {
	margin-bottom: 0px;
}
.home-features .intro-col h1 {
	font-size: 2em;
	font-weight: 300;
}
.home-features .intro-col p {
	font-size: 1.5em;
	font-weight: 300;
}
.home-features a:hover, .home-features a:active {
	color: #fafafa;
}
#home-japan {
	padding: 0px 35px;
}
#home-japan h1 {
	margin-top: 0px;
	margin-bottom: 20px;
	padding-top: 70px;
	font-family: 'Rounded Mplus 1c', sans-serif;
	font-size: 3em;
	font-weight: 300;
}
#home-japan-jpmap {
	height: 500px;
	background: url(../img/home-jpmap.png) transparent no-repeat -50px center;
    background-size: 95% auto;
}
.home-features .article-col .content-frame {
	border: 1px solid #fafafa;
    box-shadow: 7px 7px 0px -2px #2992d0, 7px 7px 0px -1px #fafafa;
}
.home-features .article-col h2 mark, .home-features .article-col h3 mark {
	background-color: #2992d0;
}
.home-features .article-link {
	border-color: #fafafa;
	color: #fafafa;
	background-color: #2992d0;
}
.home-features .article-link:hover {
	border-color: #fafafa;
    color: #5e2f81;
	background-color: #2992d0;
}
.home-features .article-link.btn-more span {
	background-image: url(../img/btn-more-white.png);
}
.home-features .article-link.btn-event span {
	background-image: url(../img/btn-event-white.png);
}
.home-features .article-link.btn-japan span {
	background-image: url(../img/btn-japan-white.png);
}
.home-features .article-link.btn-map {
	margin-top: 0px;
	margin-right: 0px;
}
.home-features .article-link.btn-map span {
	background-image: url(../img/btn-map-white.png);
}
#map-func {
	padding-top: 12px;
}
#map-select {
	display: inline-block;
    vertical-align: middle;
	margin-left: 25px;
	color: #2992d0;
}
#map-select span {
	display: none;
}
#map {
	height: 400px;
	margin-bottom: 100px;
}
@media (max-width: 991px) {
	#map {
		margin-bottom: 0px;
	}
}
@media (max-width: 767px) {
	#fujisan {
		height: 155px;
		background-position: center center;
	}
	.m-home-padding {
		padding-bottom: 40px
	}
	#home-japan {
		padding: 0px 15px;
	}
	#home-japan h1 {
		padding-top: 40px;
	}
	#intro-home-comment {
		margin-top: 50px;
	}
	.home-comment-reserve {
		display: none !important;
	}
	#home-japan-jpmap {
		display: none;
	}
}
@media (max-width: 380px) {
	#fujisan {
		height: 80px;
	}
	#home-japan h1 {
		font-size: 2.3em;
	}
}

/* Waypoints */
#waypoint-01, #waypoint-02 {
	padding-top: 200px;
}
#waypoint-01 *, #waypoint-02 * {
	opacity: 0;
}

/* Japan map */
img[usemap], map area{
    outline: none;
}
#jpmap {
	position: relative; 
	padding: 200px 0px 20px;
}
#jpmap-select {
    z-index: 100;
	position: absolute;
    width: 100%;
}
#jpmap-title {
    z-index: 50;
	position: absolute;
    overflow: hidden;
	opacity: 0;
    width: 100%;
    max-height: 700px;
}
.jpmap-title {
	display: none;
	max-width: 100%;
	max-height: 100%;
}
#jpmap-bg {
    position: absolute;
	opacity: 0;
    background: url(../img/jpmap-bg.jpg) no-repeat center center;
    background-size: 100%;
}
.jpmap-placeholder {
    width: 100%;
}
#jpmap-func {
	padding-top: 20px;
	padding-bottom: 20px;
	text-align: center;
}
#jpmap-func .article-link.btn-placeholder {
	display: none;
	opacity: 0;
	cursor: default;
}
#map-filter {
	padding: 0px;
}
.jpschool .article-col h2, .jpschool .article-col h3 {
	font-family: 'Rounded Mplus 1c', sans-serif;
}
.jpschool .article-col .inside-comment h2, .jpschool .article-col .inside-comment h3 {
	font-family: 'Noto Sans TC', 'Mplus 1p', sans-serif !important;
}
#map-filter .article-link {
	width: 18.4%;
    margin: 0px 3px 10px;
    padding: 0px 10px 1px;
	outline: none;
}
.jpschool-prefecture .intro-col {
	margin-top: 30px;
	margin-bottom: 0px;
}
.jpschool-prefecture .intro-col hr {
	margin-top: 12px;
}
.jpschool-prefecture .intro-col h1 {
	font-size: 1.8em;
	font-weight: 300;
}
@media (max-width: 767px) {
	#jpmap {
		display: none;
	}
	#jpmap-func .article-link {
		width: 31%;
	}
	#jpmap-func .article-link.btn-placeholder {
		display: inline-block;
	}
}
@media (max-width: 500px) {
	#jpmap-func .article-link {
		width: 44.5%;
	}
}
@media (max-width: 380px) {
}

/* Footer */
footer {
	padding: 50px 0px 200px;
	color: #fafafa;
	background-color: #5e2f81 !important;
}
#footer-cols {
	padding: 0px;
}
.footer-col h4 {
	margin-bottom: 20px;
}
#footer-fb {
	display: block;
	width: 16px;
	height: 16px;
	background: transparent url(../img/footer-fb.png) no-repeat center center;
	background-size: 100%;
}
#footer-fb:hover {
	background-image: url(../img/footer-fb-active.png);
}
footer img {
	display: inline-block;
	margin-right: 5px;
	margin-bottom: 8px;
	height: 30px;
}
@media (max-width: 991px) {
	footer {
		padding-bottom: 150px;
	}
	.footer-col {
		padding: 0px 35px 50px;
	}
}