@charset "UTF-8";

@-webkit-keyframes mv04-circle {
100% {
stroke-dashoffset: 0;
}
}

@keyframes mv04-circle {
100% {
stroke-dashoffset: 0;
}
}

:root {
--easing: cubic-bezier(.2, 1, .2, 1);
--transition: .8s var(--easing);
}


/*PC*/
@media print, screen and (min-width: 768px) {
#hed .hed_img .bg_img{
background-image:url("../images/about/main_img.jpg");
}

#about{
margin:0 auto 200px;

}

#about .block{
position:relative;
margin-bottom: 160px;
}

#about .block:nth-child(1)::before{
content: "";
position: absolute;
top: 55px;
left: 0;
width: 100%;
height: 100%;
z-index: -1;
background:#f2f5fc;
}

#about .block:nth-child(1){
margin-bottom: 160px;
background: url("../images/about/bg_illust.png") top center no-repeat;
background-size: 45% auto;
background-blend-mode:lighten;
}

#about .block .ttl{
font-size: 5rem;
font-weight: 700;
line-height: 1;
margin: 0 0 160px;
display: block;
text-align: center;
}

#about .block .ttl span{
display: block;
font-size: 1.2rem;
font-weight: 800;
line-height: 1;
margin: 0 0 10px;
}

#about .block .s_ttl{
text-align: center;
font-size: 2.6rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
margin: 0 0 60px;
}

#about .block .slider3 .slick-slide{
margin: 0 6px;
}

#about .block .slider3 .slick-slide img{
border-radius: .4rem;
overflow: hidden;
}

#about .block:nth-child(2) .ttl,
#about .block:nth-child(3) .ttl,
#about .block:nth-child(4) .ttl,
#about .block:nth-child(5) .ttl{
margin: 0 0 80px;
display: block;
text-align: center;
}

#about .value_list{
width: 88%;
margin: 0 auto;
display: flex;
flex-wrap: wrap;
justify-content: space-between;
}

#about .value_list li{
width: 24%;
position: relative;
background:#f2f5fc;
padding: 20px;
box-sizing: border-box;
}

#about .value_list li .no{
position: absolute;
top:-20px;
left:-10px;
font-size:3.6rem;
font-weight: 700;
line-height: 1;
letter-spacing:-.1rem;
}

#about .value_list li h3{
position: relative;
font-size: 1.4rem;
font-weight: 800;
text-align: center;
margin: 15px 0 10px;
position: relative;
}

#about .value_list li h3::before{
content: "";
position: absolute;
top: -5px;
left: 50%;
width: 40px;
height: 1px;
margin-left: -20px;
background:#0066a1;
}

#about .value_list li .img{
border-radius: .4rem;
overflow: hidden;
margin: 0 0 20px;
}

#about .value_list li p{
font-weight: 500;
line-height: 1.6;
}


/*message
------------------------------------------*/
#about .message_block{
display: flex;
flex-wrap: wrap;
justify-content: space-between;
width: 80%;
margin: 0 auto;
}

#about .message_block .img{
width: 40%;
}

#about .message_block .img .sticky {
position: sticky;
top:80px;
display: fixed;
}

#about .message_block .txt_box{
width: 55%;
}


#about .message_block .txt_box h3{
font-size: 2rem;
font-weight: 700;
line-height: 1.4;
margin: 0 0 40px;
}

#about .message_block .txt_box p{
font-weight: 500;
margin: 0 0 60px;
}

#about .message_block .txt_box h4{
text-align: right;
line-height: 1;
}

#about .message_block .txt_box h4 span{
font-size: 1.2rem;
margin-left: 10px;
}

/*profile
---------------------------------------*/
#about .co_table{
width:60%;
margin: 0 auto;
background: #FFF;
min-width: 800px;
}

#about .co_table tr{
border-top: 1px solid #0066a1;
border-bottom: 1px solid #0066a1;

}

#about .co_table th{
width: 20%;
text-align: left;
padding: 15px;
box-sizing: border-box;
}

#about .co_table td{
padding: 15px;
box-sizing: border-box;
}

#about .history_block{
width: 100%;
margin: 0 auto 120px;
background:#f2f5fc;
padding:55px;
box-sizing: border-box;
}

#about .history_block .ttl{
margin:0 0 80px;
display: block;
text-align: center;
font-size:5rem;
font-weight: 700;
line-height: 1;
letter-spacing: -.1rem;
}

#about .history_block .ttl span{
display: block;
font-size: 1.2rem;
font-weight: 800;
line-height: 1;
margin:0 0 10px;
letter-spacing: 0;
}

#about .history_block .history_box{
overflow-x: scroll;
padding: 0 0 10px;
}

#about .history_block .history_box ul{
width: 14800px;
display: flex;
flex-wrap: wrap;
}

#about .history_block .history_box ul li{
width: 360px;
border-right:1px solid #0066a1;
padding:15px;
box-sizing: border-box;
}

#about .history_block .history_box ul li h3{
color: #0066a1;
font-size: 1.4rem;
line-height: 1;
margin: 0 0 15px;
}

#about .history_block .history_box ul li h3 span{
font-size: 1rem;
}

#about .history_block .history_box ul li div{
background:rgba(255,255,255,.8);
}

#about .history_block .history_box ul li div:nth-child(odd){
background:#f2f5fc;
}

#about .history_block .history_box ul li div h4{
font-size: .8rem;
line-height: 1;
margin: 0 0 5px;
color: #FFF;
background: #0066a1;
display:table;
padding: 5px 8px;
box-sizing: border-box;
}

#about .history_block .history_box ul li div p{
font-size: .9rem;
line-height: 1.8;
padding: 15px;
box-sizing: border-box;
}


}
/*sp*/
@media only screen and (max-width: 767px) {
#hed .hed_img .bg_img{
background-image:url("../images/about/main_img_s.jpg");
}

#about{
margin:0 auto 60px;

}

#about .block{
position:relative;
margin-bottom: 60px;
}

#about .block:nth-child(1)::before{
content: "";
position: absolute;
top: 15px;
left: 0;
width: 100%;
height: 100%;
z-index: -1;
background:#f2f5fc;
}

#about .block:nth-child(1){
margin-bottom: 60px;
background: url("../images/about/bg_illust.png") top center no-repeat;
background-size: 85% auto;
background-blend-mode:lighten;
}

#about .block .ttl{
font-size: 2.2rem;
font-weight: 700;
line-height: 1;
margin: 0 0 40px;
display: block;
text-align: center;
}

#about .block .ttl span{
display: block;
font-size: 1rem;
font-weight: 800;
line-height: 1;
margin: 0 0 10px;
}

#about .block .s_ttl{
font-size: 1.2rem;
font-weight: 800;
line-height: 1.4;
letter-spacing: .1rem;
margin: 0 0 30px;
text-align: center;
}

#about .block .slider3 .slick-slide{
margin: 0 6px;
}

#about .block .slider3 .slick-slide img{
border-radius: .4rem;
overflow: hidden;
}

#about .block:nth-child(2) .ttl,
#about .block:nth-child(3) .ttl,
#about .block:nth-child(4) .ttl,
#about .block:nth-child(5) .ttl{
margin: 0 0 40px;
display: block;
text-align: center;
}

#about .value_list{
width: 88%;
margin: 0 auto;
}

#about .value_list li{
width: 100%;
position: relative;
background:#f2f5fc;
padding: 20px;
box-sizing: border-box;
margin-bottom:30px;
}

#about .value_list li:last-child{
margin-bottom: 0;
}

#about .value_list li .no{
position: absolute;
top:-20px;
left:-10px;
font-size:3rem;
font-weight: 700;
line-height: 1;
letter-spacing:-.1rem;
}

#about .value_list li h3{
position: relative;
font-size: 1.2rem;
font-weight: 800;
text-align: center;
margin: 15px 0 10px;
}

#about .value_list li h3::before{
content: "";
position: absolute;
top: -5px;
left: 50%;
width: 40px;
height: 1px;
margin-left: -20px;
background:#0066a1;
}

#about .value_list li .img{
border-radius: .4rem;
overflow: hidden;
margin: 0 0 20px;
}

#about .value_list li p{
font-weight: 500;
line-height: 1.6;
}


/*message
------------------------------------------*/
#about .message_block{
width: 90%;
margin: 0 auto;
}

#about .message_block .img{
width: 80%;
margin:0 auto 20px;
}

#about .message_block .img .sticky {
}

#about .message_block .txt_box{
width: 100%;
}


#about .message_block .txt_box h3{
font-size:1.4rem;
font-weight: 700;
line-height: 1.4;
margin: 0 0 20px;
}

#about .message_block .txt_box p{
font-weight: 500;
margin: 0 0 30px;
}

#about .message_block .txt_box h4{
text-align: right;
font-size: .8rem;
line-height: 1;
}

#about .message_block .txt_box h4 span{
font-size: 1rem;
margin-left: 10px;
}

/*profile
---------------------------------------*/
#about .co_table{
width:90%;
margin: 0 auto;
background: #FFF;
font-size: .8rem;
}

#about .co_table tr{
border-top: 1px solid #0066a1;
border-bottom: 1px solid #0066a1;

}

#about .co_table th{
width: 100%;
text-align: left;
padding:5px 5px 0;
box-sizing: border-box;
display: block;
}

#about .co_table td{
display: block;
padding:5px;
box-sizing: border-box;
}


#about .history_block{
width: 100%;
margin: 0 auto 60px;
background:#f2f5fc;
padding:25px;
box-sizing: border-box;
}

#about .history_block .ttl{
margin:0 0 40px;
display: block;
text-align: center;
font-size: 2.2rem;
font-weight: 700;
line-height: 1;
letter-spacing: -.1rem;
}

#about .history_block .ttl span{
display: block;
font-size: 1.2rem;
font-weight: 800;
line-height: 1;
margin:0 0 10px;
letter-spacing: 0;
}

#about .history_block .history_box{
overflow-x: scroll;
padding: 0 0 10px;
}

#about .history_block .history_box ul{
width: 12340px;
display: flex;
flex-wrap: wrap;
}

#about .history_block .history_box ul li{
width: 300px;
border-right:1px solid #0066a1;
padding:10px;
box-sizing: border-box;
}

#about .history_block .history_box ul li h3{
color: #0066a1;
font-size: 1.2rem;
line-height: 1;
margin: 0 0 15px;
}

#about .history_block .history_box ul li h3 span{
font-size: .8rem;
}

#about .history_block .history_box ul li div{
background:rgba(255,255,255,.8);
}

#about .history_block .history_box ul li div:nth-child(odd){
background:#f2f5fc;
}

#about .history_block .history_box ul li div h4{
font-size: .8rem;
line-height: 1;
margin: 0 0 5px;
color: #FFF;
background: #0066a1;
display:table;
padding: 5px 8px;
box-sizing: border-box;
}

#about .history_block .history_box ul li div p{
font-size: .8rem;
line-height: 1.8;
padding: 10px;
box-sizing: border-box;
}


}