.pc {
	display: none !important;
}
.sp {
	display: block !important;
}
.inner {
	width: calc(100% - 32px);
}
.font-noto {
	font-family: 'Noto Sans JP', sans-serif;
}
.title {
	margin-bottom: 30px;
}
.title h2 {
	font-size: 24px;
	padding-left: 15px;
}
.title h2:before {
	width: 8px;
	height: 8px;
	bottom: 7px;
}
.title p {
	font-size: 16px;
}
.title p>span:before {
	left: 10px;
	top: 5px;
	height: 2px;
	width: 120px;
}
#header {
	padding: 0;
}
#header .wrapper {
	padding: 10px 0;
	-webkit-box-shadow: 0 2px 5px 0 rgb(0 0 0 / 10%);
	box-shadow: 0 2px 5px 0 rgb(0 0 0 / 10%);
	z-index: 999999;
}
.mob_navi {
	position: relative;
}
.mob_navi .btn-slide {
	position: absolute;
	top: -10px;
	right: 0;
	z-index: 99999;
}
.mob_navi .btn-slide>span {
	position: relative;
	display: block;
}
.mob_navi .btn-slide>span:before {
	content: '';
	display: block;
	position: absolute;
	right: 0;
	top: -2px;
	width: 30px;
	height: 3px;
	border-radius: 5px;
	background: #333;
	transition: all 0.3s;
}
.mob_navi .btn-slide>span:nth-child(2):before {
	top: 6px;
}
.mob_navi .btn-slide>span:nth-child(3):before {
	top: 14px;
}
.mob_navi .btn-slide.show>span:nth-child(2):before {
	transform: rotate(139deg);
	transition: all 0.3s;
}
.mob_navi .btn-slide.show>span:nth-child(1):before {
	transform: rotate(45deg);
	top: 5px;
	transition: all 0.3s;
}
.mob_navi .btn-slide.show>span:nth-child(3):before {
	opacity: 0;
	transition: all 0.3s;
}

.nav-menu {
	position: fixed;
	width: 100%;
	right: 0;
	top: 0;
	background: #ffffff;
	height: 0;
	transition: all 0.5s;
	top: 80px;
	overflow: hidden;
	z-index: 999999;
}
.nav-menu.active {
	height: calc(100vh - 80px);
	padding-top: 40px;
}
.nav-menu .mobile-nav {
	padding: 0;
}
.nav-menu ul>li>a {
	padding: 15px;
	display: block;
	border-bottom: 1px solid #fff;
	background: #ffffff;
	font-weight: 500;
	text-align: center;
	font-size: 20px;
}
.nav-menu ul>li:nth-child(3)>a {
	display: none;
}

.nav-menu .mobile-nav>li:last-child {
	padding: 30px 15px;
	position: relative;
	top: 48vh;
}
.nav-menu ul ul li {
	position: relative;
}
.nav-menu .mobile-nav>li:last-child>a {
	background: rgb(55,117,143);
	background: linear-gradient(160deg, rgba(55,117,143,1) 0%, rgba(104,153,173,1) 100%);
	color: #fff;
	padding: 10px 20px;
	text-align: center;
	border-radius: 5px;
	width: 146px;
	margin: 0 auto;
	font-weight: 300;
}
.nav-menu #menu-top-menu-jp-1>li:last-child>a {
	font-size: 17px !important;
}
.nav-menu .mobile-nav li:last-child a:lang(km) {
	width: 190px;
}
.nav-menu .top_lang-moba li {
	display: inline-block;
}
.nav-menu .top_lang-moba {
	text-align: center;
	padding: 15px;
	position: relative;
	top: 45vh;
	}
.nav-menu .top_lang-moba li a {
	background: #fff;
	text-align: center;
	display: flex;
	width: 36px;
	height: 36px;
	background: #DBDBDB;
	color: #fff;
	border-radius: 20px;
	flex-direction: row;
	justify-content: center;
	align-items: center;
	margin-left: 10px;
	font-size: 15px;
}
.nav-menu .top_lang-moba li.current-lang a {
	background: #2F5051;
}
.nav-menu .top_lang-moba li:first-child a {
	border-top: 1px solid #ededed;
	margin-left: 0;
}

#subHeader {
	height: 140px;
	background-size: cover !important;
	margin-top: 85px;
}
#subHeader h1 {
	font-size: 20px;
}
#subHeader p {
	font-size: 15px;
}
#subHeader p>span:before {
	height: 2px;
	left: 10px;
	top: 8px;
	width: 100px;
}

#footer .inner {
	display: block;
}
#footer .col-3 {
	width: 100%;
	margin: 0 0 30px 0;
	text-align: center;
}
#footer .col-3:last-child {
	margin-bottom: 0;
}
#footer .ft_logo {
	text-align: center;
}
.ft-contact .item {
	margin-bottom: 30px;
}
#footer h4 {
	margin-bottom: 10px;
}

@media only screen and (max-width: 767px) {
	.title {
		margin-bottom: 30px;
	}
	.title h2 {
		font-size: 18px;
		padding-left: 15px;
	}
	.title h2:before {
		width: 8px;
		height: 8px;
		bottom: 7px;
	}
	.title p {
		font-size: 13px;
	}
	.title p>span:before {
		left: 10px;
		top: 7px;
		height: 2px;
		width: 120px;
	}
	.nav-menu.active {
		padding: 0;
		top: 85px;
	}
	.nav-menu .mobile-nav>li:last-child {
	  padding: 30px 15px;
	  position: relative;
	  top: 27vh;
	}
	.nav-menu .top_lang-moba {
	  text-align: center;
	  padding: 15px;
	  position: relative;
	  top: 23vh;
	}
	.copyright {
		text-align: left;
		padding: 20px 15px;
	}
	#footer .contact-table {
		width: 60%;
		margin: auto;
	}
}
@media screen and (max-width: 480px) {
	#footer .contact-table {
		width: 100%;
		margin: auto;
	}
}