body,div,dl,dt,dd,ul,ol,li,h1,h2,h3,h4,h5,h6,pre,form,fieldset,input,textarea,p,blockquote,th,td{
	margin:0;padding:0
}

html{
	overflow-y:scroll
}
h1,h2,h3,h4,h5,h6{
	font-size:100%;
	font-weight:normal
}
ol,ul{
	list-style:none
}
fieldset,img{
	border:0
}
img{
	max-width:100%;
	vertical-align:bottom
}
table{
	border-collapse:collapse;
	border-spacing:0
}
caption,th{
	text-align:left
}
a{
	text-decoration:none;
	color:#000
}
a:focus{
	outline:none
}
address,caption,cite,code,dfn,em,th,var{
	font-style:normal;
	font-weight:normal
}
*{
	box-sizing:border-box
}
input,textarea,select{
	-webkit-appearance:none;
	-moz-appearance:none;
	appearance:none;
	border:0
}
body{
	overflow:hidden;
	word-break:break-word;
	line-break:strict;
	word-wrap:break-word;
	overflow-wrap:break-word;
	font-family:"Noto Serif JP", serif;
	font-weight:300;
	font-size:16px
}
@media (max-width:480px){
	body{font-size:14px
	}
}
.c_blue{
	color:#d88120
}
.c_orange{
	color:#00138C
}
.c_dark{
	color:#282828
}
.c_white{
	color:#fff
}
.on1366,.on1024,.on768,.on480,.on375{
	display:none
}
@media (min-width:1367px){
	.off1366{
		display:none
	}
	.on1366{
		display:block
	}
}
@media (max-width:1024px){
	.off1024{
		display:none
	}
	.on1024{
		display:block
	}
}
@media (max-width:768px){
	.off768{
		display:none
	}
.on768{
	display:block
	}
}
@media (max-width:480px){
	.off480{
		display:none
	}
	.on480{
		display:block
	}
}
.tc{
	text-align:center
}
.tr{
	text-align:right
}
.tl{
	text-align:left
}
.fb{
	font-weight:700
}
.fsb{
	font-weight:600
}
.fm{
	font-weight:500
}
.fr{
	font-weight:400
}
.fl{
	font-weight:300
}
.opa{
	transition:0.3s !important;
	cursor:pointer
}
.opa:hover{
	opacity:0.6 !important
}
.u_line{
	transition:0.3s;
	border-bottom:1px solid transparent
}
.u_line:hover{
	border-bottom:1px solid
}
.mt60{
	margin-top:60px
}
.mt30{
	margin-top:30px
}
.paging{
	display:flex;
	justify-content:center;
	align-items:center;
	margin-top:5%
}
.paging .page-numbers{
	display:block;
	line-height:1;
	padding:5px 5px;
	margin:0 5px;
	border:1px solid #d88120;
	color:#d88120;
	border-radius:3px;
	transition:0.2s;
	cursor:pointer
}
.paging .page-numbers:hover,.paging .page-numbers.current{
	background-color:#00138C;
	color:#fff
}
.paging .page-numbers.dots{
	border:0;
	cursor:auto;
	pointer-events:none
}
.max_inner{
	max-width: 75rem;
	margin:auto;
	width:90%
}
.btn_wrapper .basic_btn{
	color:#00138C;
	border:1px solid #00138C;
	line-height:1;
	display:block;
	padding:8px 0;
	text-align:center;
	border-radius:50px;
	transition:0.2s
}
.btn_wrapper .basic_btn:hover{
	color:#fff;
	background-color:#00138C;
	border-color:#fff
}
.btn_wrapper .more_btn{
	padding:12px 0;
	width:320px;
	margin:auto;
	letter-spacing:1.5px
}
@media (max-width:768px){
	.btn_wrapper .more_btn{
		width:220px
	}
}
@media (max-width:480px){
	.btn_wrapper .more_btn{
		width:165px
	}
}
.var_wrap{
	position:relative
}
.var_wrap .var_box{
	position:absolute;
	top:calc(50% - 65px);
	left:6.5%;
	margin:auto;
	transform:translateY(-50%)
}

.var_wrap .var_box p{
	letter-spacing:2.6px;
	-ms-writing-mode:tb-rl;
	writing-mode:vertical-rl;
	position:relative
}

.var_wrap .var_box p::after{
	content:"";
	position:absolute;
	width:0.5px;
	height:130px;
	background-color:#00138C;
	top:105%;left:40%;
	margin:auto
}
.var_wrap .var_box p.c_white::after{
	background-color:#fff
}
.var_wrap .var_box.right_box{
	left:auto;
	right:6.5%
}
@media (max-width:1366px){
	.var_wrap .var_box{
		left:3%
	}
	.var_wrap .var_box.right_box{
		right:3%
	}
}
@media (max-width:1024px){
	.var_wrap .var_box{
		left:2.5%
	}
	.var_wrap .var_box.right_box{
		right:2.5%
	}
}
@media (max-width:768px){
	.var_wrap .var_box{
		display:none
	}
}
@media (max-width:480px){
	.var_wrap .content_sec{
		padding:50px 0 20px
	}
}
.head_wrapper{
	position:relative;
	padding-bottom:20px
}
.head_wrapper .en{
	text-align:center;
	line-height:1
}
.head_wrapper .ja{
	text-align:center;
	line-height:1;
	margin-top:15px;
	letter-spacing:8px
}
/*.head_wrapper::after{content:"";position:absolute;bottom:0;display:block;left:0;right:0;width:30px;height:1px;background-color:#000;margin:auto}*/
.header{
	position:fixed;
	width:100%;
	top:0;left:0;
	z-index:100
}
.header .inner{
	display:flex;
	align-items:center;
	justify-content:space-between;
	padding:30px 3% 30px 14%;
	display: none
}
.header .inner .logo_box{
	max-width:180px;
	display:block
}
.header .inner .logo_box img{
	display:block;
	width:100%
}
.header .inner .contact_btn{
	width:170px;
	transition:0.2s
}
.header .inner .contact_btn:hover{
	color:#fff;
	border-color:#fff
}
.header .inner .nav_banner{
	display:none
}
.header .inner .nav_banner ul.nav_contents{
	transition:0.5s;
	position:fixed;
	width:50vw;
	background:#00138C;
	height:100vh;
	top:0;
	right:-100%;
	display:block;
	padding-top:100px
}
.header .inner .nav_banner ul.nav_contents li{
	margin:20px;
	padding:20px;
	margin-bottom:0;
	padding-bottom:0;
	border-top:1px solid #fff;
	font-weight:700
}
.header .inner .nav_banner ul.nav_contents li:last-child{
	border-bottom:1px solid #fff;
	padding-bottom:20px
}
.header .inner .nav_banner .hb_box{
	position:fixed;
	right:15px;
	top:10px;
	width:40px;
	height:40px;
	cursor:pointer
}
.header .inner .nav_banner .hb_box span{
	position:absolute;
	display:block;
	width:80%;
	height:2px;
	left:0;
	right:0;
	margin:auto;
	background-color:#00138C;
	transition:0.5s
}
.header .inner .nav_banner .hb_box span:nth-child(1){
	top:10px
}
.header .inner .nav_banner .hb_box span:nth-child(2){
	top:20px
}
.header .inner .nav_banner .hb_box span:nth-child(3){
	top:30px
}
.header .inner .nav_banner.open ul.nav_contents{
	right:0
}
.header .inner .nav_banner.open .hb_box span{
	background-color:#fff
}
.header .inner .nav_banner.open .hb_box span:nth-child(1){
	top:20px;
	transform:rotate(-225deg)
}
.header .inner .nav_banner.open .hb_box span:nth-child(2){
	display:none
}
.header .inner .nav_banner.open .footer .top_wrap span:nth-child(3){
	top:20px;
	transform:rotate(225deg)
}
.header.active,.header.under_page{
	background-color:#00138C
}
.header.active .inner .nav_banner .hb_box span,.header.under_page .inner .nav_banner .hb_box span{
	background:#fff
}
.header.active .btn_wrapper .basic_btn,.header.under_page .btn_wrapper .basic_btn{
	color:#fff;
	border-color:#fff
}
@media (max-width:768px){
	.header .inner{
		padding:15px 3%
	}
	.header .inner .logo_box{
		max-width:150px
	}
.header .inner .btn_wrapper{
	margin:0 50px 0 auto
}
.header .inner .btn_wrapper .contact_btn{
	width:120px
}
.header .inner .nav_banner{
	display:block
}
}
@media (max-width:768px){
	.header .inner{
		padding:11px 2%
	}
	.header .inner .btn_wrapper{
		margin:0 45px 0 auto
	}
	.header .inner .btn_wrapper .contact_btn{
		width:95px
	}
	.header .inner .nav_banner .hb_box{
		right:8px;
		top:5px;
		width:35px;
		height:35px
	}
}
.contact_sec .inner{
	display:flex;
	justify-content:center;
	margin:100px auto 150px
}
.contact_sec .inner .inner_box{
	width:50%;
	padding:100px 0
}
.contact_sec .inner .left_box{
	border-right:1px solid
}
.contact_sec .inner .left_box .bottom_text{
	margin-top:30px;
	text-align:center
}
.contact_sec .inner .right_box .bottom_text{
	text-align:center;
	margin-top:25px;
	line-height:1.8
}
@media (max-width:768px){
	.contact_sec .inner{
		display:block;
		margin:50px auto
	}
	.contact_sec .inner .inner_box{
		width:100%;
		border:0;
		padding:0
	}
	.contact_sec .inner .left_box{
		margin-bottom:30px
	}
	.contact_sec .inner .left_box .bottom_text{
		margin-top:12px
	}
}
footer{
	background-color:#00138C;
	background-size:70%;
	padding-top:50px;
	padding-bottom:50px
}
footer .footer_logo{
	max-width:240px
}
footer .footer_logo img{
	display:block;
	width:100%;
	padding-bottom: 50px
}
footer .top_wrap{
	border-top:1px solid;
	border-bottom:1px solid;
	border-color:#fff;
	padding:20px 40px;
	margin:25px 0 20px;
	width:50%;
	height:50%
}
footer .top_wrap .footer_ul{
	line-height:1;
	display: flex;
	flex-wrap: wrap
}
footer .top_wrap .footer_ul .link_item{
	display:block;
	padding:10px 0;
	padding: 0 25px;
	margin:10px
}
footer .bottom_wrap{
	display:flex;
	align-items:center;
	justify-content:center;
	margin-top:10px
}
footer .bottom_wrap .left_box{
	font-size:12px;
	display:flex;
	align-items:baseline;
	flex-wrap:wrap
}
footer .bottom_wrap .left_box .foot_link{
	margin-left:45px
}
footer .bottom_wrap .sns_wrap{
	display:flex;
	align-items:center
}
footer .bottom_wrap .sns_wrap li{
	max-width:35px;
	margin:0 5px
}
	footer .bottom_wrap .sns_wrap li a{
		display:block;
		width:100%
	}

@media (max-width:1024px){
	footer{
		padding-top:60px;
		padding-bottom:50px
	}
	footer .footer_logo{
		max-width:250px;
		padding-left:20px
	}
	footer .top_wrap{
		padding:20px 20px;
		margin:20px 0 20px
	}
footer .top_wrap .footer_ul .link_item{
	padding:10px 0
}
footer .bottom_wrap .left_box .foot_link{
	margin-left:20px
}
}@media (max-width:768px){
footer .top_wrap{
	padding:20px 20px;
	margin:20px 0 20px
}
footer .top_wrap .left_box li{
	width:50%
}
footer .bottom_wrap{
	flex-direction:column;
	margin-top:30px
}
footer .bottom_wrap .left_box{
	order:2;
	justify-content:center
}
footer .bottom_wrap .left_box p{
	width:100%;
	margin-bottom:20px;
	text-align:center
}
footer .bottom_wrap .left_box .foot_link{
	margin:0 15px
}
footer .bottom_wrap .sns_wrap{
	order:1;margin-bottom:20px
}
}
@media (max-width:480px){
	footer{
		padding-top:20px;
		padding-bottom:20px
	}
	footer .footer_logo{
		max-width:180px;
		padding-left:0
	}
	footer .top_wrap{
		flex-wrap:wrap;
		padding:10px 5px
	}
	footer .top_wrap .footer_ul{
		width:100%;
		display:flex;
		flex-wrap:wrap
	}
	footer .top_wrap .footer_ul li{
		width:50%
	}
}
.copy_box{
	text-align:center;
	padding:25px 0
}
@media (max-width:480px){
	.copy_box{
		padding:8px 0
	}
	.copy_box p{
		font-size:10px
	}
}

.under_common_section{
	margin-top:200px;
	gap: 0 14px
}
@media (max-width:480px){
	.under_common_section{
		margin-top:100px
	}
footer .top_wrap .footer_ul {
	display: block;
}
}
.footer-main{
	display:flex;
	justify-content: space-around;
	align-items: center
}
.footer-mapButton{
	background-color: #fff;
	border-radius: 40px;
	padding: 10px
}
.footer-main .footer-left .footer-mapButton img{
	height: 19px;
	margin-right: 4px;
	width: auto;
	object-fit: contain
}
.left-company{
	margin-bottom:50px
}
#main_nav_bar.m_fixed{
	left:0;
	position:fixed;
	top:0
}
.home .main_nav_bar-hea{
	background-size:70%;
	padding:10px 0;width: 100%;
	z-index: 30;
	position: fixed;
	background-color: #fff;
	opacity:0.8
}
.main_nav_bar-hea{
	background-size:70%;
	padding:10px 0;
	width: 100%;
	z-index: 30;
	position: fixed;
	background-color: #fff;
    opacity:0.8}

.main_nav_bar-hea .inner{
	display:flex;
	align-items:center;
	justify-content:space-between;
	margin:0 auto;
	width:92%
}

.main_nav_bar-hea .inner .logo_box{
    width: 20%;
}
.main_nav_bar-hea .inner .logo_box img{
	width:100%;
	display:block
}
.main_nav_bar-hea .inner ul{
	align-items:center
}
.main_nav_bar-hea .inner ul li{
	border-left:1px solid #00138C ;
	padding:0 10px;
	width: 80%;
}

.main_nav_bar-hea .inner ul li:last-child{
	border-right:1px solid #031884
}

 @media (max-width:768px){
	.main_nav_bar-hea{
		background-size:70%;
		padding:17px 0;
		width: 100%;
		z-index: 30;
		position: fixed;
		background-color:#fff;
	}
 .main_nav_bar-hea{
	padding:17px 0
}
.main_nav_bar-hea .inner .logo_box{
	width: 35%;
	min-width: 140px;
}
 .main_nav_bar-hea .inner ul li{
	padding:0 20px;
	border-left: none
}
.main_nav_bar-hea .inner ul li:last-child{
	border-right:none
}
 .main_nav_bar-hea .inner ul li{
	padding:0 20px;
	border-left: none
}
 .main_nav_bar-hea .inner ul{
	display:block;
 	}
.menu-item a {
	font-size: 1rem;
	font-weight: 700;
}
 }
 .nav-menu open {
 	width: 80%;
 	height: 100vh
 }
 .title_en::before {
	content: "";
    display: block;
    flex-shrink: 0;
    width: 8px;
    height: 8px;
    margin-top: 3px;
    border-radius: 50%;
    background-color: #00138C;
 }
 .title_en {
    display: flex;
    align-items: center;
    gap: 11px;
}



	@media screen and (max-width: 768px) {
  .main_nav_bar-hea {
    position: fixed;
  }
  .header_nav {
    background: #00138C;
    width: 100%;
    height: 100vh;
    padding: 80px 0 0 0;
    position: fixed;
    top: 0;
    right: -100%;
    transition: .5s;
    opacity: 0.9
  }
  .header_nav_lists {
    display: block;
    text-align: center;
  }
  .header_nav_lists li {
    margin: 0 0 40px;
    text-align: center;
  }
  .nav_link {
    font-size: 20px;
  }

  .menu_active {
  right: 0;background-color: #fff;
  width: 80%;

}
.menu-list{
	display: block;
	color: #fff;
}
}



.nav-menu {
  color: #333;
  width:60%; 
}
.menu-list {
  display: flex;
  justify-content: space-between; /* メニューアイテムを中央揃えに */
}
.menu-item {
  border-left: 1px solid #fff; /* メニューアイテムの左ボーダー */
  position: relative;
}
.menu-item:last-child {
  border-right: 1px solid #fff; /* 最後のメニューアイテムの右ボーダー */
}

/* メニューアイテムのホバースタイル */
.menu-item:hover .drop-menu-list {
  opacity: 1; /* 不透明度を最大に */
  transition: opacity .3s, visibility .3s; /* アニメーション設定 */
  visibility: visible; /* 下層メニューを表示 */
}

.menu-item a {
  align-items: center;
  color: #00138C; /* メニューアイテム内のリンクテキストの色 */
  display: flex;
  height: 50px;
  justify-content: center;
  text-decoration: none; /* リンクの下線を非表示 */
}

/* ドロップダウンメニュー */
.drop-menu {
  position: relative;
}
.drop-menu-list {
  background-color: #fff; /* ドロップダウンメニューの背景色 */
  left: 0;
  opacity: 0; /* 不透明度を最小に */
  position: absolute;
  top: 100%;
  transition: opacity .3s, visibility .3s; /* アニメーション設定 */
  visibility: hidden; /* 下層メニューを非表示 */
  width: max-content;
  z-index: 1;
}
.gnavi__wrap {
    width: 1200px;
    margin: 0 auto;
}
.gnavi__lists {
    display: flex;
}
.gnavi__list {
    width: 20%;
    height: 60px;
    position: relative;
    transition: all .3s;
}
.nav-menu:open {
width: 60%;
height: 100vh;
}
@media (max-width:768px){
	.main_nav_bar-hea .inner .nav_banner ul.nav_contents{
		transition:0.5s;
		position:fixed;
		width:50vw;
		background:#00138C;
		height:100vh;
		top:0;
		right:-100%;
		display:block;
		padding-top:100px;
		z-index: 60
	}
	.main_nav_bar-hea .inner .nav_banner ul.nav_contents li{
		margin:20px auto;
		padding:8px;
		margin-bottom:0;
		padding-bottom:0;
		border-top:1px solid #fff;
		font-weight:700;
		width:75%;
	}
	.main_nav_bar-hea .inner .nav_banner ul.nav_contents li:last-child{
		border-bottom:1px solid #fff;
		padding-bottom:20px
	}
	.main_nav_bar-hea .inner .hb_box{
		position:fixed;
		right:15px;
		top:7px;
		width:40px;
		height:40px;
		cursor:pointer;
		z-index: 60
	}
	.main_nav_bar-hea .inner .hb_box span{
		position:absolute;
		display:block;
		width:80%;
		height:2px;
		left:0;
		right:0;
		margin:auto;
		background-color:#00138C;
		transition:0.5s
	}
	.main_nav_bar-hea .inner  .hb_box span:nth-child(1){
		top:10px
	}
	.main_nav_bar-hea .inner .hb_box span:nth-child(2){
		top:20px
	}
	.main_nav_bar-hea .inner .hb_box span:nth-child(3){
		top:30px
	}
	.main_nav_bar-hea .inner .nav_banner.open ul.nav_contents{
		right:0
	}
	.header .main_nav_bar-hea .open .hb_box span{
		background-color:#fff
	}
	.main_nav_bar-hea .inner .open .hb_box span:nth-child(1){
		top:20px;
		transform:rotate(-225deg)
	}
	.main_nav_bar-hea .inner .open .hb_box span:nth-child(2){
		display:none
	}
	.main_nav_bar-hea .inner .open  .hb_box  span:nth-child(3){
		top:20px;
		transform:rotate(225deg)
	}
}
