@charset "UTF-8";
/* CSS Document */

@media screen and (min-width:769px){
	.sp_only {
		display: none;
	}
	.top_menu:nth-child(even):before {
		background: -moz-linear-gradient(left, rgba(0,0,0,0) 0%, rgba(0,13,25,1) 83%, rgba(0,15,30,1) 99%); /* FF3.6-15 */
		background: -webkit-linear-gradient(left, rgba(0,0,0,0) 0%,rgba(0,13,25,1) 83%,rgba(0,15,30,1) 99%); /* Chrome10-25,Safari5.1-6 */
		background: linear-gradient(to right, rgba(0,0,0,0) 0%,rgba(0,13,25,1) 83%,rgba(0,15,30,1) 99%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	}
	.toppage #gnav li a {
		color: #fff;
	}
}

@media screen and (max-width:768px){
	.pc_only {
		display: none;
	}
	#gnav {
		width: 100%;
		height: 100vh;
		position: fixed;
		top: 51px;
		left: 0;
		background: #fff;
		visibility: hidden;
		opacity: 0;
		transition: .2s;
		border-top: 1px solid rgba(0,0,0,.1);
	}
	#gnav.open {
		visibility: visible;
		opacity: 1;
		transition: .2s;
	}
	#gnav li,
	#gnav li:not(.contact) {
		float: none;
		width: 100%;
		margin: 0;
	}
	#gnav ul {
		padding: 0 15px;
		box-sizing: border-box;
	}
	.header_logo {
		max-width: 130px;
		width: 100%;
	}
	.header_inner,
	#header.fixed .header_inner {
		padding: 15px;
		box-sizing: border-box;
	}
	#header.fixed #gnav li:not(.contact) a,
	#gnav li a {
		padding: 20px 0;
		display: block;
		text-align: center;
	}
	#gnav li:not(.contact) {
		border-top: 1px solid rgba(0,0,0,.1);
	}
	#gnav li:first-child {
		border-top: none;
	}
	#gnav li.contact {
		border-radius: 50px;
	}
	#gnav li.contact a {
		padding: 20px 15px;
	}
	.top_mv {
		height: 100vh;
	}
	.top_catch_wrap {
		top: 45%;
		padding: 0 15px;
		box-sizing: border-box;
	}
	.top_catch_wrap .catch {
		font-size: 32px;
		letter-spacing: 5px;
	}
	.top_catch_wrap .txt {
		font-size: 14px;
		letter-spacing: 0;
	}
	.top_info_wrap {
		margin-top: 50px;
		padding: 0 15px;
		box-sizing: border-box;
	}
	.top_news_wrap {
		padding: 20px 15px;
		padding-right: 40px;
	}
	.datetime, .post_title {
		float: none;
	}
	.datetime:after {
		display: none;
	}
	.post_title {
		margin-top: 5px;
	}
	.top_lang_nav {
		margin-bottom: 30px;
	}
	.top_sctl .eng {
		font-size: 28px;
	}
	.top_sctl .eng:after {
		bottom: 10px;
	}
	#footer_nav {
		margin-top: 40px;
	}
	.footer_nav_box {
		float: none;
	}
	.nav_title {
		margin-bottom: 10px;
	}
	.footer_nav_box {
		margin-right: 0;
		margin-top: 30px;
		width: 100%;
	}
	.footer_nav_box:first-child {
		margin-top: 0;
	}
	.footer_inner, .footer_bottom {
		padding: 50px 0;
	}
	.footer_bottom {
		padding-top: 0;
		text-align: center;
	}
	.tel_wrap,
	.copy {
		display: block;
		width: 100%;
	}
	.copy {
		margin-top: 20px;
	}

/* burger button */

	#burger {
		display: block;
		width: 18px;
		height: 18px;
		text-align: center;
		position: fixed;
		top: 13px;
		right: 15px;
		z-index: 9999;
	}

	#burger span {
		display: block;
		height: 2px;
		width: 18px;
		background-color: var(--insert-color);
		margin: 4px auto;
		transition: .3s;
	}

	#burger.open span:first-child {
		transform: translateY(6px) rotate(45deg);
		transition: .3s;
	}
	#burger.open span:nth-child(2n) {
		opacity: 0;
		transition: .3s;
	}
	#burger.open span:last-child {
		transform: translateY(-6px) rotate(-45deg);
		transition: .3s;
	}
	#wrapper.lower {
		margin-top: 51px;
	}
	.lw_tl_wrap,
	.lw_tl_inner:before, .bg_image {
		height: 240px;
	}
	.lw_tl {
		padding: 80px 15px 0;
		box-sizing: border-box;
	}
	.lw_tl .eng {
		font-size: 40px;
		letter-spacing: 2px;
	}
	.lw_tl_wrap .lang_nav {
		margin-top: 30px;
		padding: 0 15px;
		box-sizing: border-box;
	}
	.bread {
		padding: 24px 15px;
		box-sizing: border-box;
	}
	.lw_contents_wrap section:first-child .inner {
		padding-top: 60px;
	}
	.lw_contents_wrap .inner {
		padding: 50px 0;
	}
	.left_clm,
	.right_clm {
		float: none;
		width: 100%;
	}
	.massage_wrap .image, .massage_wrap .content {
		width: 100%;
	}
	.massage_wrap .content {
		padding-left: 0;
		margin-top: 30px;
	}
	.lw_sctl {
		margin-bottom: 20px;
	}
	.lw_sctl .eng {
		margin-bottom: 5px;
	}
	.lw_sctl .ja {
		font-size: 24px;
		line-height: 1.5;
	}
	.ceo_name {
		margin-top: 40px;
	}
	.tb th, .tb td {
		display: block;
		width: 100%;
		padding: 15px;
	}
  .tb_td-flex {
    display: block;
  }
  .tb_td-flex iframe {
    width: 100%;
    height: 200px;
    padding-left: 0;
    padding-top: 15px;
  }
	.gmap iframe {
		height: 200px;
	}
	.contact_wrap {
		display: block;
	}
	.ceo_name .name {
		font-size: 20px;
	}
	.contact_txt,
	.contact_btn {
		width: 100%;
	}
	.contact_wrap .more_btn_wrap {
		margin-left: 0;
	}
	.contact_txt {
		font-size: 13px;
		text-align: center;
		margin-bottom: 20px;
	}
	.policy_wrap {
		height: 160px;
	}
	.top_mv video {
		width: auto;
		height: 100vh;
	}
	.cat_wrap {
		margin-bottom: 10px;
	}
	.pager_wrap {
		margin-top: 40px;
	}
	.topics_tl .year {
		font-size: 35px;
	}
	#single .left_bdr_tl {
		font-size: 23px;
		line-height: 1.5;
	}
	.single_wrap {
		padding-left: 0;
		margin-top: 40px;
	}
	.tb tr:first-child th {
		border-top: 1px solid rgba(0,0,0,.1);
	}
	.mate_list li {
		padding: 20px 0;
		font-size: 11px;
	}
	.tb02 th {
		min-width: 100px;
		padding: 20px 10px;
	}
	.tb02 th.w30 {
		width: 50%;
	}
	.tb02 th,
	.tb02 td {
		line-height: 1.5;
	}
	#pro_single .image_num {
		display: block;
		margin-top: 20px;
	}
	#pro_single .image_num li {
		margin-right: 0;
		width: 100%;
		padding-top: 10px;
		padding-bottom: 10px;
	}
	#pro_single .image_num li:nth-child(-n+4) {
		margin-top: 1.181%;
	}
	.pro_ex_list dl {
		padding: 20px;
	}
	.pro_ex_list dl .left_bdr_tl {
		margin-bottom: 15px;
	}
	.pro_ex_list dl dd {
		line-height: 1.6;
	}
	.lw_sctl + .txt {
		text-align: left;
	}
	.pro_list li,
	.pro_list li:nth-child(-n+3),
	.pro_list li:nth-child(3n) {
		width: 47.875%;
	}
	.pro_list li:nth-child(even) {
		margin-right: 0;
	}
	.left_bdr_tl {
		font-size: 14px;
		line-height: 1.5;
	}
	.value_list .value_box,
	.value_list .value_box:nth-child(odd),
	.value_list .value_box:not(:nth-child(-n+2)) {
		width: 100%;
		margin-right: 0;
		float: none;
		margin-top: 30px;
	}
	.value_list .value_box:first-child {
		margin-top: 0;
	}
	.tab li {
		width: 24%;
		margin-right: 1.3%;
		font-size: 12px;
		padding: 15px 5px;
	}
	.tab li:last-child {
		margin-right: 0;
	}
	.eq_content {
		margin-top: 30px;
	}
	.eq_content .left_bdr_tl {
		margin: 30px 0 10px;
	}
	.eq_tab_wrap {
		margin-top: 60px;
	}
	#pro_single .single_tl {
		font-size: 26px;
	}
}










