@charset "utf-8";

/*lp_mv
--------------------------------------------*/
.lp_mv-img{
    background-image: url(../img/cmn/lp_mv07.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: cover;
}
.lp_pagettl.sec_ttl01.sec_ttl01_left:before{
    content: "MESSAGE";
}

.lp_message .sec_ttl01:before{
  width: 100%;
  color: var(--light-gray-color);
}

.lp_message_cont .sec_ttl01{
  font-size: 3.3rem;
  color: var(--main-color);
}

/* message_header
-------------------------------------------- */
#message_header{
  padding-top: 110px;
  /* padding-bottom: 60px; */
}
#message_header .in-page_link{
    width: 100%;
    flex-wrap: wrap;
    gap: 0 40px;
    justify-content: center;
}

#message_header .in-page_link li{
    width: calc( (100% - 40px * 2)/3);
    border-bottom: 1px solid #B4B4B4;
    margin-bottom: 20px;
}

#message_header .in-page_link li a{
    position: relative;
    display: block;
    padding: 20px 0;
}

#message_header .in-page_link li a:before{
    position: absolute;
    content: "";
    width: 26px;
    height: 26px;
    border: 1px solid var(--main-color);
    border-radius: 50px;
    right: 0;
    transform: translateY(-50%);
    top: 50%;
    transition: all .4s;
}
#message_header .in-page_link li a:after{
    position: absolute;
    content: "";
    background-image: url(../img/cmn/arrow_blue.png);
    background-position: center;
    background-repeat: no-repeat;
    background-size: contain;
    width: 10px;
    height: 8px;
    right: 13px;
    transform: rotate(90deg) translate(-50%,-50%);
    top: 52%;
    transition: all .4s;
}

#message_header .in-page_link li a:hover{
    opacity: 0.6;
}

#message_header .in-page_link li a:hover:before{
    border: 1px solid var(--main-color);
    background-color: var(--main-color);
}

#message_header .in-page_link li a:hover:after{
    background-image: url(../img/cmn/arrow_white.png);
}


/* cont01
-------------------------------------------- */
#cont01 {
  position: relative;
  background: linear-gradient(-338deg, #0f2a5511 25vw, #fff 0);
}

#cont01 .sec_ttl01:before{
  content: "MESSAGE";
}

#cont01 .message_wrapper{
  align-items: flex-start;
  gap: 60px;
}

#cont01 .message_wrapper .ttl{
  font-size: 2.4rem;
  margin-bottom: 35px;
}
#cont01 .message_wrapper .img{
  width: 460px;
  flex-direction: column;
}

#cont01 .message_wrapper .img .keyword{
  width: 300px;
}

#cont01 .message_wrapper .body{
  flex: 1;
}

#cont01 .message_wrapper .sign{
  text-align: right;
  font-weight: 700;
}

#cont01 .message_wrapper .sign .em{
  font-size: 2.0rem;
  padding-left: 20px;
}

@media screen and (max-width: 1220px){
  #cont01 .message_wrapper{
    flex-direction: column;
    gap: 30px;
    align-items: center;
    max-width: 600px;
  }
}


/* cont02
-------------------------------------------- */
#cont02 {
  position: relative;
  /* background-color: var(--light-gray-color); */
background: linear-gradient(-158deg,#62738C 12vw, #0F2A52 0);
}

#cont02 .lp_sec_inner{
  padding-top: 60px;
}

#cont02 .sec_ttl01{
  color: #fff;
}
#cont02 .sec_ttl01:before{
  content: "STAFF";
  color: rgba(255, 255, 255, .3);
}

#cont02 .list {
    flex-wrap: wrap;
    align-items: flex-start;
    gap: 48px 40px;
    text-align: center;
}

#cont02 .list .item{
    width: calc((100% - 40px*3)/4);
    color: #fff;
}

#cont02 .list .item .img{
  margin-bottom: 20px;
}

#cont02 .list .item img{
  width: 100%;
  height: auto;
  object-fit: cover;
  border-radius: 200px;
}

#cont02 .list .item .note{
  display: block;
  position: relative;
  font-size: 1.6rem;
  line-height: 1.4;
  text-align: center;       
  background-color: rgba(0, 0, 0, .8);
  width: 150px;
  margin: -40px auto 10px;
  padding: 3px 10px;
  z-index: 1;
}

#cont02 .list .item .name{
  font-size: 2.0rem;
  line-height: 1.4;
  height: 48px;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
}

#cont02 .list .item .name .position{
  display: block;
  font-size: 1.4rem;
}

#cont02 .list .item .detail{
  display: block;
  background-color: rgba(255, 255, 255, .3);
  font-size: 1.4rem;
  padding: 10px;
  max-width: 240px;
  margin: 14px auto 0;
}

#cont02 .list .item .detail .ttl{
  display: block;
  font-weight: 700;
  border-bottom: 1px dotted #fff;
  padding-bottom: 5px;
  margin-bottom: 5px;
}

@media screen and (max-width: 1220px){
  #cont02 .lp_sec_inner{
    padding-left: 18px;
    padding-right: 18px;
  }
}


/* bnr
-------------------------------------------- */
#banner{
  padding-bottom: 100px;
}

#banner a{
  width: 100%;
  height: 100%;
  transition: all .3s;
}

#banner a:hover{
  opacity: 0.8;
}

