@charset "UTF-8";
/* CSS Document */
/* タイトル共通パーツ */
.page_container {
  width: 100%;
}
.page_title_wrap{
    width: 100%;
    background-image: linear-gradient(180deg, rgba(1, 21, 56, 1), rgba(19, 63, 113, 1) 100%);
    height: 25vw;
}
.page_title{
    background: url("../img/safety/safety_tit_bg.png") no-repeat;
    height: 35vw;
    background-position: top left;
    background-size: 80%;
    	animation: fadedown 1.7s ease 0s 1 normal;
    -webkit-animation: fadedown 1.7s ease 0s 1 normal;
}
@keyframes fadedown {
from {
    opacity: 0;
    transform: translateX(-30px);
}
to {
    opacity: 1;
    transform: translateX(0px);
}
}
.page_title h1{
    text-align: right;
    color: #fff;
    padding: 10% 10% 0 0;
    font-size: 3vw;
    font-weight: 900;
}
.page_title h1 span{
    display: block;
    font-size: 1.8vw;
}

.contents_top{
    width: 60%;
    margin: 0 auto;
}
.contents_top h2{
    color: #011538;
    font-size: 2.5vw;
    font-weight: 900;
    padding-bottom: 2%;
    text-align: center;
}
.contents_top p{
    color: #011538;
    line-height: 1.8em;
    margin-bottom: 15px;
    text-align: center;
}

.safety_wrap{
    background: #011538;
    padding: 10% 0;
}
.safety_wrap ol li{
    width: 100%;
    display: flex;
    justify-content: space-between;
    color: #fff;
    margin-bottom: 5%;
    align-items: flex-start;
    
}
.safety_wrap ol li img{
    width: 100%;
    margin: 0 0 0 auto;
    -webkit-transition: 1.2s ease-in-out;
    -moz-transition: 1.2s ease-in-out;
    -o-transition: 1.2s ease-in-out;
    transition: 1.2s ease-in-out;
    transform: translateX(60px);
    opacity: 0;
    filter: alpha(opacity=0);
    -moz-opacity: 0;
}
.safety_wrap ol li img.on {
    opacity: 1.0;
    filter: alpha(opacity=100);
    -moz-opacity: 1.0;
    transform: translateY(0);
}
.safety_point{
    width: 55%;
    margin: 0 5% 0 20%;
}
.safety_point h3{
    font-size: 1.4vw;
    font-weight: bold;
    display: flex;
    align-items: center;
}
.safety_point h3 span{
    display: block;
    font-size: 6vw;
    font-weight: bold;
    vertical-align: middle;
    margin-right: 5%;
}
.safety_point p{
    line-height: 2em;
    margin-bottom: 10px;
}

.safety_wrap_middle li {
  width: 33.3333%;
  height: 45vw;
  float: left;
  color: #fff;
}
.safety_wrap_middle li:nth-child(2) {
  color: #011538;
}
.safety_wrap_middle li.safety_left {
  background: url("../img/safety/safety_img05.jpg") no-repeat center center;
  background-size: cover;
}
.safety_wrap_middle li.safety_center {
  background: url("../img/safety/safety_img06.jpg") no-repeat center center;
  background-size: cover;
}
.safety_wrap_middle li.safety_right {
  background: url("../img/safety/safety_img07.jpg") no-repeat center center;
  background-size: cover;
}
.safety_wrap_middle .def_info {
  width: 100%;
  transform: translateY(-50%);
  text-align: center;
  transition: 0.5s;
}
.safety_wrap_middle .def_info h3 {
  position: relative;
  width: 100%;
  top: 40vw;
  font-size: 2vw;
    font-weight: bold;
  letter-spacing: 1px;
  line-height: 1.1;
}
.safety_wrap_middle .def_info h3:after {
  display: block;
  position: absolute;
    top:130%;
  left: 50%;
  width: 30px;
  height: 2px;
  margin-left: -10px;
  background: #fff;
  content: "";
}
.safety_wrap_middle .def_center h3:after {
    background:#011538;
}
.safety_wrap_middle .def_info h4 {
  position: relative;
  width: 100%;
    top:41.5vw;
  padding-bottom: 35px;
  font-size: 1.25vw;
  letter-spacing: 1px;
  line-height: 1.1;
}

.safety_wrap_award{
    background: url("../img/safety/award_bg.jpg") no-repeat center center;
  background-size: cover;
    clear: both;
}
.award_wrap_top{
    width: 60%;
    margin: 0 auto;
    display: flex;
    flex-direction:row-reverse;
    color: #fff;
    padding: 10% 0 0 0;
}
.award_wrap_btm{
    width: 60%;
    margin: 0 auto;
    display: flex;
    flex-direction: row;
    color: #fff;
    padding: 10% 0;
}
.safety_wrap_award img{
    width: 70%;
}
.award_wrap_btm img{
    margin-left: 20%;
}
.award_wrap_txt{
    width: 50%;
    padding-top: 20%;
}
.award_wrap_txt h3{
    font-size: 1.4vw;
    font-weight: bold;
    margin-bottom: 5%;
}
.award_wrap_txt h3 span{
    display: block;
    font-size: 1vw;
    font-weight: bold;
}
.award_wrap_txt p{
    margin-bottom: 5%;
}
.award_sp{
    display: none;
}
.annotation{
    font-size: 0.8vw;
    line-height: 2em;
}


.contents_btm_pic img{
    width: 100%;
    height: auto;
    margin-bottom: -10px;
    padding: 0;
}


@media screen and (max-width: 1400px) {
   .contents_top,.award_wrap_top,.award_wrap_btm,.contents_btm{
        width: 80%;
    }
    .safety_point{
        width: 80%;
    }
    .award_wrap_btm img{
    margin-left: 30%;
}
}
@media screen and (max-width: 1050px) {

    .contents_top h2,.contents_left_txt h3,.contents_right_txt h3,.safety_wrap_award h3{
       font-size: 20px;
    }
    .safety_point h3{
         font-size: 18px;
    }
    .contents_top p,.safety_point p,.safety_wrap_award,.safety_wrap_award h3 span{
       font-size: 14px;
    }
    .safety_wrap_award p span{
        font-size: 12px;
        line-height: 2.0em;
    }
    .annotation{
        font-size: 12px;
        line-height: 1.2em;
    }
    .safety_wrap{
        padding: 0;
    }
    .safety_wrap ol li{
        flex-direction: column;
        margin-bottom: 0;
    }
    .safety_wrap_middle{
        margin: -0.5%;
    }
    .safety_point{
    width: 90%;
    margin: 0 auto;
        padding: 5% 0;
}
    .award_wrap_txt{
    width: 60%;
    }




}
@media screen and (max-width: 780px) {
    .page_title h1{
    font-size: 5vw;
        padding-right: 5%;
}
.page_title h1 span{
    font-size: 3vw;
}
    .safety_point h3 span{
        font-size: 50px;
    }
.safety_wrap_middle li {
    width: 100%;
    height: 70vw;
    float: none;
  }
  .safety_wrap_middle .def_info h3 {
      top:60vw;
    padding-bottom: 3%;
    font-size: 4vw;
    font-weight: 900;
    margin-top: 0;
  }
  .safety_wrap_middle .def_info h4{
      top:60vw;
    font-size: 2vw;
    font-weight: 900;
  }
  .safety_wrap_middle .def_info h3::after{
    top:5.7vw;
  }
    .award_wrap_top,.award_wrap_btm{
        flex-direction: column;
        width: 90%;
        margin: 0 auto;
        padding: 5% 0;
    }
    .award_wrap_top img,.award_wrap_btm img{
        margin-left: 0%;
    }
    .award_wrap_txt{
    width: 100%;
    }
        .award_sp{
            display: block;
            margin: 0 auto;
    }
    
    .award_pc{
    display: none;
}
    .safety_wrap_award img{
        width: 100%;
        text-align: center;
}


}
@media screen and (max-width: 600px) {
    .contents_sec1,.contents_sec2,.contents_sec3{
        background-position: top 10vw center;
    }

    .contents_btm ul{
        flex-direction:column;
}
.contents_btm ul li{
    width: 100%;
}
    .contents_btm ul li{
    margin-bottom: 5%;
}
.contents_btm ul li:last-child{
    margin-bottom: 0%;
}
.contents_sec4 p{
    font-size: 7em;
    right: 0;
    top:-35vw;
}
}
@media screen and (max-width: 450px) {

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




}
    
    
    
    
    
    
    
    
    
    
    
    