@charset "UTF-8";
/****************************************
header
*****************************************/
/*header*/
.header{
	background:#fff;
	padding:20px;
	position:fixed;
	top:0;
	width:100%;
	z-index:99;
}
@media screen and (max-width:768px){
	.header{
		padding:8px;
	}
}
.header_logo{
	align-items:center;
	display:flex;
	padding-left:20px;
}
@media screen and (max-width:768px){
	.header_logo{
		padding-left:10px;
    max-width: calc(100% - 238px);
	}
}
.header_logo img{
	display:block;
	max-height:23px;
  max-width: calc(100% - 8px);
}
/*header_nav*/
.header_nav{
	font-size:14px;
	font-weight:500;
}
@media screen and (min-width:769px){
	.header_nav li + li{
		margin-left:20px;
	}
	.header_nav li.header_nav_btn.dl{
		margin-left:40px;
	}
	.header_nav li.header_nav_btn.contact{
		margin-left:8px;
	}
}
@media screen and (min-width:769px){
	.header_nav a{
		display:inline-block;
		line-height:40px;
	}
}
.header_nav_btn a{
	background:#618AA6;
	border-radius:100px;
	color:#fff;
	text-align:center;
	width:193px;
}
/*header_nav_spbtns*/
.header_nav_spbtns .btn_base{
	font-size:12px;
	line-height:32px;
	padding:0 8px;
	text-align:center;
	width:88px;
}
.header_nav_spbtns .btn_base:after{
	content:none;
}
/*header_nav_sp*/
.header_nav_sp{
	background:#fff;
	height:100dvh;
	padding:16px;
	display:none;
	font-size:16px;
	left:0;
	position:absolute;
	top:0;
	width:100%;
	z-index:2;
}
.header_nav_sp_inner{
	width:100%;
}
.header_nav_sp_text{
	color:#7F8891;
	font-weight:500;
}
.header_nav_sp_logo{
	height:32px;
	margin-top:16px;
}
.header_nav_sp ul li+li{
	margin-top:20px;
}
.header_nav_sp_close{
	right:16px;
	position:absolute;
	top:16px;
}
.header_nav_sp_close img{
	height:32px;
}
/*icon-humburger*/
.icon-hamburger {
	cursor: pointer;
	height: 30px;
	position:relative;
	width: 30px;
}
.icon-hamburger .bar {
	display: inline-block;
	width: 25px;
	height: 2px;
	background-color: #000;
	position: absolute;
	left: 0;
	transition: .25s ease-in-out;
}
#bar01 {top: 2px;}
#bar02 {top: 10px;}
#bar03 {top: 18px;}
/****************************************
footer
*****************************************/
.footer_inner{
	margin:0 auto;
	padding: 88px 15px 32px;
	width: 1160px;
	max-width: 100%;
}
@media screen and (max-width:768px){
	.footer_inner{
		padding:32px 15px;
		width:100%;
	}
}
/*top*/
.footer_top {
  gap: 40px;
}
.footer_top_logo {
  flex-shrink: 1;
}
.footer_top_logo img{
	max-height:40px;
  max-width: 100%;
}
@media screen and (max-width:768px){
	.footer_top_logo img{
		height:30px;
	}
}
.footer_top_nav{
	font-weight:700;
}
@media screen and (min-width:769px){
	.footer_top_nav{
		width:50%;
	}
}
@media screen and (max-width:768px){
	.footer_top_nav{
		margin-top:32px;
	}
	.footer_top_nav li{
		text-align:center;
		width:100%;
	}
	.footer_top_nav li+li{
		margin-top:20px;
	}
}
/*bottom*/
.footer_bottom{
	margin-top:90px;
}
@media screen and (max-width:768px){
	.footer_bottom{
		margin-top:60px;
	}
}
.footer_bottom_copyright{
	color:#7F8891;
	font-size:14px;
	font-weight:500;
}
@media screen and (min-width:769px){
	.footer_bottom_copyright{
		align-items:flex-end;
		display:flex;
	}
}
@media screen and (max-width:768px){
	.footer_bottom_copyright{
		margin-top:60px;
		text-align:center;
	}
}
@media screen and (min-width:769px){
	.footer_bottom_nav li{
		align-items:flex-end;
		display:flex;
	}
}
@media screen and (max-width:768px){
	.footer_bottom_nav li{
		text-align:center;
	}
}
@media screen and (min-width:769px){
	.footer_bottom_nav li+li{
		margin-left:20px;
	}
}
.footer_bottom_nav li a{
	color:#7F8891;
	font-size:14px;
	font-weight:500;
}
@media screen and (min-width:769px){
	.footer_bottom_nav li+li a{
		border-left:1px solid #7F8891;
		padding-left:20px;
	}
}
@media screen and (max-width:768px){
	.footer_bottom_nav_mark{
		justify-content:center;
		margin-top:24px;
	}
}
.footer_bottom_nav_mark img{
	display:block;
	height:48px;
}
/****************************************
btn
*****************************************/
.btn_base{
	border-radius:4px;
	display:inline-block;
	font-weight:700;
	line-height:52px;
	padding:0 16px;
	position:relative;
	text-align:center;
	width:240px;
  border-radius: 100px;
}
/* .btn_base:after{
	background:url(../img/icon_btn_arrow_black.png) no-repeat center center / contain;
	content:"";
	display:block;
	height:7px;
	position:absolute;
	right:16px;
	top:50%;
	transform:translatey(-50%);
	width:12px;
} */
.btn_blue{
	background:#618AA6;
	color:#fff;
}
.btn_dark {
  background: #333333;
  color: #fff;
}
.btn_blue:after{
	background:url(../img/icon_btn_arrow_white.png) no-repeat center center / contain;
}
.btn_white{
  background: #fff;
	border:1px solid #D9D9D9;
}
/****************************************
sec
*****************************************/
.sec{
	margin-top:160px;
}
@media screen and (max-width:768px){
	.sec{
		margin-top:80px;
	}
}
.sec_title{
	font-size:32px;
}
@media screen and (max-width:768px){
	.sec_title{
		font-size:28px;
	}
}
/****************************************
loop_post_case
*****************************************/
.loop_post_case{
	position:relative;
}
@media screen and (max-width:768px){
	.loop_post_case{
		display:block;
    width: 100%;
	}
	.loop_post_case + .loop_post_case{
		margin-top:40px;
	}
}
.loop_post_case:after{
	background:url(../img/icon_btn_arrow_blue.png) no-repeat center center/ contain;
	bottom:16px;
	content:"";
	display:block;
	height:7px;
	position:absolute;
	right:16px;
	width:12px;
}
.loop_post_case_link{
	display:block;
}
.loop_post_case_img{
	aspect-ratio: 360 / 202;
    border-radius: 8px 8px 0 0;
	display:block;
	height: 100%;
	object-fit: cover;
	position:relative;
	width: 100%;
	z-index:2;
}
.loop_post_case_cnt{
	background:#F2F6FF;
	border-radius:8px;
	margin-top:-10px;
	padding:26px 16px 40px;
}
.loop_post_case_cnt_name{
	color:#7F8891;
	font-weight:500;
}
.loop_post_case_cnt_title{
	font-size:20px;
  height: 64px;
  display: -webkit-box;
  -webkit-line-clamp: 2;
  -webkit-box-orient: vertical;
  overflow: hidden;
	margin-top:20px;
}
@media screen and (max-width:768px){
	.loop_post_case_cnt_title{
		height: auto;
	}
}
/****************************************
document slider
*****************************************/
.sec_doc{
	background:#F2F6FF;
	padding:80px 0;
}
@media screen and (max-width:768px){
	.sec_doc{
		padding:40px 0;
	}
}
.sec_doc_slider_item{
	display:block;
}
.sec_doc_slider_item_img img{
	aspect-ratio: 360 / 202;
	border-radius:8px;
	display:block;
	xheight: 100%;
	object-fit: cover;
	width: 100%;
}
.sec_doc_slider_item{
	padding-right:40px;
}
@media screen and (max-width:768px){
	.sec_doc_slider_item{
		padding-right:20px;
	}
}
.sec_doc_slider_item_title{
	font-size:20px;
	margin-top:10px;
}
/****************************************
f_banner
*****************************************/
.f_banner{
	background:#3D3C3A;
	border:2px solid #618AA6;
	border-radius:8px;
	bottom:20px;
	padding:20px;
	position:fixed;
	right:20px;
	text-align:center;
	width:260px;
	z-index:99;
}
@media screen and (max-width:768px){
	.f_banner{
		padding:10px;
		bottom:0;
		right:0;
		width:100%;
	}
}
.f_banner_text{
	color:#fff;
	font-size:20px;
	font-weight:700
}
@media screen and (max-width:768px){
	.f_banner_text{
		font-size:12px;
	}
}
.f_banner .btn_base{
	margin-top:20px;
	width:100%;
}
@media screen and (max-width:768px){
	.f_banner .btn_base{
		margin-top:10px;
	}
}
.f_banner_close{
	cursor:pointer;
	position:absolute;
	right:5px;
	top:2px;
}
.f_banner_close img{
	height:15px;
}
