@charset "UTF-8";
html {
    scroll-padding-top: 74px;
	scroll-behavior: smooth;
}
.bk_gr{
	background-color: #E8EDF2;
	border-radius: 80px 0 0 0;
}
.bk_bl{
	background-color: #E1F5FC;
	border-radius: 80px 0 0 0;
}
#business .top_wrap{
	background-image: url(/business/img/top.png);
}
#company .top_wrap{
	background-image: url(/company/img/top.png);
}
#sustainability .top_wrap{
	background-image: url(/sustainability/img/top.png);
}
#access .top_wrap{
	background-image: url(/access/img/top.png);
}
#news .top_wrap{
	background-image: url(/news/img/top.png);
}
.top_wrap{
	background-repeat: no-repeat;
	background-position: top center;
	background-size: contain;
	padding-top: 21.25%;
	margin-top: 90px;
	position: relative;
}
.top{
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translateY(-50%)translateX(-50%);
	text-align: center;
	color: #fff;
}
.top h2{
	font-family: Roboto;
    font-size: 50px;
    font-weight: 700;
    letter-spacing: 2px;
	margin-bottom: 10px;
}
.top p{
	font-size: 18px;
font-weight: 700;
letter-spacing: 0.72px;
}

.breadcrumbs{
	padding: 48px 7.777777777777778vw 82px;
	margin: 0 auto;
}
.breadcrumbs ol {
	display: flex;
	flex-wrap: wrap;
}
.breadcrumbs ol li {
	padding-left: 19px;
	padding-right: 16px;
	position: relative;
}
.breadcrumbs ol li::before{
	content: '';
    width: 3px;
    height: 3px;
    background-color: #142144;
    position: absolute;
    top: 50%;
    left: 0px;
}
.breadcrumbs ol li:first-of-type{
	padding-left: 0;
}
.breadcrumbs ol li:last-of-type{
	padding-right: 0;
}
.breadcrumbs ol li:first-of-type::before{
	content: none;
}
.breadcrumbs ol li:last-of-type::before{
	width: 6px;
    height: 6px;
	background-color: #005BAB;
	top: 45%;
}
.breadcrumbs ol li a{
	font-size: 14px;
line-height: 22.4px;
color: #142144;
}
.breadcrumbs ol li:last-of-type a{
	color: #005BAB;
}

main{
	padding-bottom: 136px;
}
.main .sec_inner{
	padding: 0 7.777777777777778vw;
}
.aside_wrap {
	width: 100%;
	display: flex;
	justify-content: space-between;
  }
.aside_wrap .main{
	width: calc(100% - 312px);
}
.aside_wrap .main .breadcrumbs{
padding: 48px 32px 82px 7.777777777777778vw;
}
.aside_wrap .main .sec_inner{
	padding: 0 32px 0 7.777777777777778vw;
	}
.aside_wrap .side_nav {
	width: 312px;
	position: sticky;
  top: 0;
  right: 0;
  padding: 32px;
  margin-right: 5.5vw;
}
.aside_wrap .side_nav.mt{
	top: 74px;
}
p.side_nav_title{
	font-size: 18px;
font-weight: 700;
letter-spacing: 0.72px;
color: #005BAB;
padding-left: 16px;
padding-bottom: 10px;
position: relative;
border-bottom: solid 1px #005BAB;
margin-bottom: 13px;
}
p.side_nav_title::before{
	content: '';
    width: 8px;
    height: 8px;
    background-color: #005BAB;
    position: absolute;
    top: 12px;
    left: 0px;
}
li.side_nav_list {
	border-bottom: solid 1px #E7E7E7;
}
li.side_nav_list a{
	color: #000;
	font-size: 15px;
	line-height: 27px;
	display: block;
	padding: 16px 0 16px 44px;
	position: relative;
}
li.side_nav_list a:hover{
	opacity: 1;
	background-color: #E8EDF2;
}
li.side_nav_list>a::before{
	content: '';
    width: 28px;
    height: 28px;
	background-image: url(/common/img/r_arrow02-l.svg);
	background-repeat: no-repeat;
	background-size: contain;
    position: absolute;
    top: 50%;
    left: 3%;
    transform: translateY(-50%);
	transition: all 0.3s;
}
li.side_nav_list a:hover::before{
	background-image: url(/common/img/r_arrow02-l_hover.svg);
}
li.side_nav_list ul.accordion{
	display: none;
	background-color: #E8EDF2;
	padding: 0 10px 16px 44px;
	margin-top: -12px;
}
li.side_nav_list ul.accordion li a{
	font-size: 14px;
	line-height: 1.8;
	padding: 0;
}
li.side_nav_list.active ul.accordion{
	display: block;
}
li.side_nav_list.active{
	background-color: #E8EDF2;
}
li.side_nav_list.active > a::before{
	background-image: url(/common/img/r_arrow02-l_hover.svg);
}

.box3_area{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.box3_area .box_wrap{
	width: 26.666666666666668vw;
	margin-right: 2.2222222222222223vw;
	margin-bottom: 32px;
}
.box3_area .box_wrap:nth-child(3n){
	margin-right: 0;
}
.box3_area .box_wrap:nth-child(4){
	margin-bottom: 0;
}
.box3_area .box_wrap a{
	color:#142144;
}
.box3_area .box_wrap a h3{
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.72px;
	margin: 16px 0;
	position: relative;
}
.box3_area .box_wrap a h3::after{
	content: '';
    width: 28px;
    height: 28px;
    background-image: url(/common/img/r_arrow02-l.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 0%;
    transform: translateY(-50%);
    transition: all 0.3s;
}
.box3_area .box_wrap a:hover h3::after{
	background-image: url(/common/img/r_arrow02-l_hover.svg);
}
.box3_area .box_wrap a .box_wrap_img{
	overflow: hidden;
	width: 100%;
}
.box3_area .box_wrap a .box_wrap_img img{
	height: auto;
  transition: transform .3s ease;
  width: 100%;
}
.box3_area .box_wrap a:hover .box_wrap_img img{
	transform: scale(1.1);
}
.box3_area .box_wrap a p{
	line-height: 28.8px;
}
.box3_area .box_wrap a:hover{
	opacity: 1;
}

.lower_h2_wrap{
	margin-bottom: 132px;
	padding: 16px 0 0;
	color:#005BAB;
	position: relative;
}
.lower_h2_wrap::before{
	content: '';
    width: 48px;
    height: 8px;
    background-image: url(/common/img/title_line.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
}
.lower_h2_wrap p{
	font-size: 18px;
	font-weight: 700;
	letter-spacing: 0.72px;
	margin-bottom: 16px;
}
.lower_h2_wrap h2{
	font-size: 28px;
	font-weight: 700;
	letter-spacing: 1.12px;
}
.column_wrap{
	margin-bottom: 132px;
}
.column_wrap:last-child{
	margin-bottom: 0;
}
.column_wrap:last-child .colum1:last-child,
.column_wrap:last-child .colum2:last-child,
.column_wrap:last-child .colum3:last-child {
    margin-bottom: 0;
}
.column_wrap h3{
position: relative;
font-size: 24px;
font-weight: 700;
letter-spacing: 0.96px;
padding-top: 24px;
margin-bottom: 56px;
color:#005BAB;
}
.column_wrap h3::before{
	content: '';
    width: 100%;
    height: 8px;
    background-image: url(/common/img/title_line.svg);
    background-repeat: repeat;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
}
.column_wrap h4{
	font-size: 20px;
font-weight: 700;
letter-spacing: 0.8px;
color: #005BAB;
padding-left: 24px;
position: relative;
margin-bottom: 32px;
}
.column_wrap h4::before{
	content: '';
    width: 16px;
    height: 16px;
    background-image: url(/common/img/title_icon.svg);
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    left: 0;
	transform: translateY(-50%);
}
.column_wrap h5{
	color: #005BAB;
	font-size: 18px;
font-weight: 700;
letter-spacing: 0.72px;
margin-bottom: 16px;
margin-top: 32px;
}
.column_wrap h6{
	font-size: 16px;
	font-weight: 700;
	margin: 16px 0 8px;
}
.column_wrap h6 sup{
	font-size: 14px;
	vertical-align: top;
	margin-right: 2px;
}
.column_wrap span.under{
	font-size: 11px;
}
.column_wrap h6 span.under{
	font-weight: 700;
}
.column_wrap p{
	line-height: 28.8px;
}
.column_wrap p strong{
	color: #005BAB;
	font-size: 18px;
	font-weight: 700;
}
.column_wrap p small{
	font-size: 14px;
}

.mb96{
	margin-bottom: 96px !important;
}
.mb80{
	margin-bottom: 80px !important;
}
.mb56{
	margin-bottom: 56px !important;
}
.mb32{
	margin-bottom: 32px !important;
}
.mb24{
	margin-bottom: 24px !important;
}
.mb16{
	margin-bottom: 16px !important;
}
.mb0{
	margin-bottom: 0 !important;
}
.mt0{
	margin-top: 0 !important;
}
.pb0{
padding-bottom: 0;
}
.fo16{
	font-size: 16px !important;
}
.wh_s{
	width: 75%;
	margin: 0 auto;
}
.column_wrap .colum1 p.right{
	font-size: 14px;
	text-align: right;
}
.column_wrap .colum1 .img_box img{
width: 100%;
}
.column_wrap .colum1 .img_box.wh50 img{
	width: 50%;
	}
.column_wrap .colum1,.column_wrap .colum2,.column_wrap .colum3{
	margin-bottom: 56px;
}
.column_wrap .colum_btn{
	display: block;
    width: max-content;
	border-radius: 50px;
	border: 1px solid #003B6E;
	margin-top: 32px;
}
.column_wrap .colum_btn a{
	display: block;
	color: #003B6E;
	font-size: 14px;
font-weight: 500;
padding: 10px 46px 10px 24px;
position: relative;
}
.column_wrap .colum_btn a::after{
	content: '';
    width: 22px;
    height: 22px;
    background-repeat: no-repeat;
    background-size: contain;
    position: absolute;
    top: 50%;
    right: 16px;
	transform: translateY(-50%);
}
.column_wrap .colum_btn.pdf a::after{
    background-image: url(/common/img/icon_pdf.svg);
}
.column_wrap .colum_btn.arrow a::after{
    background-image: url(/common/img/icon_arrow.svg);
}
.column_wrap .colum_flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.column_wrap .colum_flex .img_box{
	width: 48.2305%;
}
.column_wrap .colum_flex .img_box p,.column_wrap .colum_flex .leftimg_box{
	font-size: 14px;
	margin-top: 8px;
}
.column_wrap ul.colum_flex{
	margin-bottom: 32px;
	justify-content: flex-start;
}
.column_wrap .colum1 >  ul {
	margin-top: 32px;
}
.column_wrap ul li{
	line-height: 28.8px;
	text-indent: -1em;
padding-left: 1em;
}
.column_wrap ul li strong{
	font-weight: 600;
}
.column_wrap ul.colum_flex li{
	width: calc((100% - (32px * 2)) / 3); /* 3列分＋横余白2箇所分 */
  margin-right: 32px; /* 横方向の余白 */
}
.column_wrap ul.colum_flex.box2 li{
	width: calc((100% - 32px) / 2);
}
.column_wrap ul.colum_flex.box3 li:nth-child(3n){
	margin-right: 0;
}
.column_wrap ul.colum_flex.box2 li:nth-child(2n){
	margin-right: 0;
}
.column_wrap .colum_flex .right_box{
width: calc(100% - 19.444444444444446vw - 32px);
}
.column_wrap .colum3 .colum_flex .img_box,
.column_wrap .colum3.colum_flex .img_box,
.column_wrap .colum_flex .leftimg_box{
	width: 30.977%;
}
.column_wrap .colum3.colum_flex .img_box img{
	width: 100%;
}
.column_wrap .colum_flex .right_box p,.column_wrap .colum3 p{
margin-bottom: 32px;
}
.column_wrap .colum1 .colum_flex,.column_wrap .colum3 .colum_flex{
	justify-content: flex-start;
	margin-top: 32px;
}
.column_wrap .colum3 .colum_flex .img_box{
	margin-right: 2.2%;
}
.column_wrap .colum3 .colum_flex .img_box:nth-child(3n){
	margin-right: 0;
}
.column_wrap dl > div{
	border-bottom: solid 1px #E7E7E7;
    display: flex;
	flex-wrap: wrap;
    justify-content: flex-start;
    padding: 16px 0;
}
.column_wrap dl > div:first-child{
	padding-top: 0;
}
.column_wrap dl > div dt{
	font-size: 18px;
font-weight: 700;
letter-spacing: 0.72px;
width: 176px;
}
.column_wrap dl > div dd{
	width: calc(100% - 176px);
	line-height: 180%; /* 28.8px */
}



 /* responsive */
 @media screen and (min-width:1440px){
.breadcrumbs{
	max-width: 1216px;
	margin: 0 auto;
	padding: 48px 0 82px;
}
.aside_wrap{
	max-width: 1216px;
    margin: 0 auto;
    padding: 0;
}
.aside_wrap .side_nav {
  margin-right: 0;
  padding: 32px 0;
  width: 232px;
}
.main .sec_inner {
	max-width: 1216px;
	margin: 0 auto;
    padding: 0;
}
.aside_wrap .main .breadcrumbs{
padding: 48px 0 82px 0;
}
.aside_wrap .main .sec_inner{
	padding: 0;
	}
.box3_area .box_wrap{
	width: 384px;
	margin-right: 32px;
}
.column_wrap .colum3 .colum_flex .img_box {
    margin-right: 32px;
}
.column_wrap .colum3 .colum_flex .img_box,
.column_wrap .colum3.colum_flex .img_box,
.column_wrap .colum_flex .leftimg_box{
	width: 280px;
}

 }

@media (min-width: 768px) and (max-width: 1100px){
	.aside_wrap .side_nav {
		width: 28.363636363636363vw;
		padding: 2.909090909090909vw;
	}
	.box3_area .box_wrap a h3{
		font-size: 1.8vw;
	}
}

@media screen and (max-width:767px){

	#business .top_wrap{
		background-image: url(/business/img/top_sp.png);
	}
	#company .top_wrap{
		background-image: url(/company/img/top_sp.png);
	}
	#sustainability .top_wrap{
		background-image: url(/sustainability/img/top_sp.png);
	}
	#access .top_wrap{
		background-image: url(/access/img/top_sp.png);
	}
	#news .top_wrap{
		background-image: url(/news/img/top_sp.png);
	}
	.top_wrap{
		padding-top: 59.54%;
		margin-top: 76px;
	}
	.top h2{
		font-size: 5.597964376590331vw;
		letter-spacing: 0.88px;
	}
	.top p{
		font-size: 4.071246819338422vw;
	letter-spacing: 0.64px;
	}
	.breadcrumbs,.aside_wrap .main .breadcrumbs {
		padding: 48px 4% 68px;
	}
	.main .sec_inner,.aside_wrap > .main .sec_inner {
		padding: 0 4%;
	}
	.breadcrumbs ol li{
		margin-bottom: 16px;
	}
	.aside_wrap aside{
		display: none;
	}
	.aside_wrap .main {
		width: 100%;
	}
	.box3_area .box_wrap {
		width: 100%;
		margin-right:0;
	}
	.column_wrap .colum_flex .img_box {
		width: 100%;
		margin-top: 16px;
	}
	.column_wrap ul.colum_flex li,.column_wrap ul.colum_flex.box2 li {
		width: 100%;
		margin-right: 0; /* 1列なので横余白なし */
	  }
	  .column_wrap h4::before {
		top: 16px;
	}
	.column_wrap .colum_flex .right_box{
		width: 100%;		}
	.column_wrap .colum1 .colum_flex .img_box,
	.column_wrap .colum3 .colum_flex .img_box,
	.column_wrap .colum3.colum_flex .img_box,
	.column_wrap .colum_flex .leftimg_box{
			width: 48%;
			margin-top: 16px;
	}
	.column_wrap .colum3 .colum_flex .img_box p,
	.column_wrap .colum_flex .leftimg_box p{
		line-height: normal;
		margin-top: 8px;
		margin-bottom:0;
	}
.column_wrap .colum_flex .img_box:last-of-type p,
.column_wrap .colum_flex .leftimg_box:last-of-type p{
	margin-bottom: 32px;
}
	.column_wrap .colum3 .colum_flex .img_box {
		margin-right: 4%;
	}
	.column_wrap .colum3 .colum_flex .img_box:nth-child(2n) {
		margin-right: 0%;
	}
	.column_wrap dl > div dt,.column_wrap dl > div dd{
	width: 100%;
	}
	.column_wrap dl > div dt{
		margin-bottom: 8px;
	}
	.column_wrap .colum1 .img_box.wh50 img{
		width: 100%;
		}

}