/*-------------------------
 header
-------------------------*/
.top_logo{
  height: 210px;
  display: flex;
  justify-content: center;
  align-items: center;
}
.top_logo>a>img{
  display: inline-block;
  width: 375px;
}

@media screen and (max-width: 768px) {
.top_logo{
    height: 60px;
    padding: 15px 0;
  }
.top_logo>a>img{
    display: inline-block;
    width: 80%;
    max-width: 256px;
  }

}



/*-------------------------
 navigetion
-------------------------*/
.nav_wrap{
  width: 100%;
  line-height: 50px;
  background-color: #00529F;
}
.hm{
  display: none;
}

.nav_list{
  display: flex;
}

.nav_list>li{
  color: #fff;
  width: 358px;
  text-align: center;
  border-left: solid #fff 1px;
}

.nav_list>li:last-of-type{
  border-right: solid #fff 1px;
}

.nav_list>li>a{
  display: block;
}

@media screen and (max-width: 768px) {
.nav_wrap{
  display: none;
}
.hm{
  display: block;
}

.nav_wrap>.container{
  margin: 0;
}

/*ハンバーガーメニュー*/
.hm{
  position: absolute;
  top: 8px;
  right: 10px;
}

.hamburger {
position: relative;
display: block;
background-color: #fff;
width: 40px;
height: 44px;
transition: all .4s;
box-sizing: border-box;
}
.hamburger span {
display: inline-block;
transition: all .4s;
box-sizing: border-box;
position: absolute;
left: 6px;
width: 70%;
height: 4px;
background-color: #000;
margin: 0 auto;
z-index: 99999;
}



.hamburger span:nth-of-type(1) {
top: 10px;
}
.hamburger span:nth-of-type(2) {
top: 20px;
}
.hamburger span:nth-of-type(3) {
top: 30px;
}
.hamburger span:nth-of-type(1) {
  -webkit-animation: menu-bar01 .75s forwards;
  animation: menu-bar01 .75s forwards;
}
@-webkit-keyframes menu-bar01 {
  0% {
    -webkit-transform: translateY(10px) rotate(45deg);
  }
  50% {
    -webkit-transform: translateY(10px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
  }
}
@keyframes menu-bar01 {
  0% {
    transform: translateY(10px) rotate(45deg);
  }
  50% {
    transform: translateY(10px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
.hamburger span:nth-of-type(2) {
  transition: all .25s .25s;
  opacity: 1;
}
.hamburger span:nth-of-type(3) {
  -webkit-animation: menu-bar02 .75s forwards;
  animation: menu-bar02 .75s forwards;
}
@-webkit-keyframes menu-bar02 {
  0% {
    -webkit-transform: translateY(-10px) rotate(-45deg);
  }
  50% {
    -webkit-transform: translateY(-10px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(0) rotate(0);
  }
}
@keyframes menu-bar02 {
  0% {
    transform: translateY(-10px) rotate(-45deg);
  }
  50% {
    transform: translateY(-10px) rotate(0);
  }
  100% {
    transform: translateY(0) rotate(0);
  }
}
.hamburger.active span:nth-of-type(1) {
  -webkit-animation: active-menu-bar01 .75s forwards;
  animation: active-menu-bar01 .75s forwards;
}
@-webkit-keyframes active-menu-bar01 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(10px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(10px) rotate(45deg);
  }
}
@keyframes active-menu-bar01 {
  0% {
    transform: translateY(0) rotate(0);
  }
  50% {
    transform: translateY(10px) rotate(0);
  }
  100% {
    transform: translateY(10px) rotate(45deg);
  }
}
.hamburger.active span:nth-of-type(2) {
  opacity: 0;
}
.hamburger.active span:nth-of-type(3) {
  -webkit-animation: active-menu-bar03 .75s forwards;
  animation: active-menu-bar03 .75s forwards;
}
@-webkit-keyframes active-menu-bar03 {
  0% {
    -webkit-transform: translateY(0) rotate(0);
  }
  50% {
    -webkit-transform: translateY(-10px) rotate(0);
  }
  100% {
    -webkit-transform: translateY(-10px) rotate(-45deg);
  }
}
@keyframes active-menu-bar03 {
  0% {
    transform: translateY(0) rotate(0);
  }
  50% {
    transform: translateY(-10px) rotate(0);
  }
  100% {
    transform: translateY(-10px) rotate(-45deg);
  }
}


.nav_list{
  display: block;
}

.nav_list>li{
  color: #fff;
  width: 100%;
  text-align: center;
  border-bottom: solid #fff 1px;
  border-left: none;
}

.nav_list{
  padding: 25px;
}

.nav_list>li:last-of-type{
  border-right:none;
}


/* end-header ハンバーガーメニュー */




}


/*-------------------------
 mv
-------------------------*/
.top_mv{
  margin-bottom: 40px;
}

.top_mv>img{
  display: inline-block;
  width: 100%;
}
@media screen and (max-width: 768px) {
  .top_mv{
    margin-bottom: 50px;
  }

}


/*-------------------------
 content
-------------------------*/
.content_wrap{
  margin-bottom: 80px;
}
.content_list{
  position: relative;
  display: flex;
}

.content_list_reverse{
  position: relative;
  display: flex;
  flex-direction:row-reverse;
}

.content_list_01:after{
  position: absolute;
    content: '01';
    font-size: 4.8rem;
    font-weight: bold;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #000;
    background: #FEE936;
    line-height: 80px;
    width: 80px;
    text-align: center;
}

.content_list_02:after{
  position: absolute;
    content: '02';
    font-size: 4.8rem;
    font-weight: bold;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #000;
    background: #FEE936;
    line-height: 80px;
    width: 80px;
    text-align: center;
}
.content_list_03:after{
  position: absolute;
    content: '03';
    font-size: 4.8rem;
    font-weight: bold;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #000;
    background: #FEE936;
    line-height: 80px;
    width: 80px;
    text-align: center;
}
.content_list_04:after{
  position: absolute;
    content: '04';
    font-size: 4.8rem;
    font-weight: bold;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    color: #000;
    background: #FEE936;
    line-height: 80px;
    width: 80px;
    text-align: center;
}

.content_title{
  width: 100%;
  display: flex;
  margin-bottom: 70px;
}

.content_title>span{
  width: 330px;
  background-color: #E6F5FF;
  font-size: 4.8rem;
  padding-top: 85px;
  padding-left: 50px;
  display: block;
}

.content_title>img{
  width: 750px;
  height: 280px;
}
.content_left{
  width: 540px;
  height: 460px;
  padding: 50px 65px;
}

.content_sub_title{
  font-size: 3.0rem;
  padding-bottom: 50px;
}

.content_text{
  font-size: 1.8rem;
  line-height: 27px;
}

.content_list>img{
  display: inline-block;
  width: 540px;
}

.content_link{
  display: block;
  width: 250px;
  line-height: 50px;
  margin-top: 75px;
  margin-left: 70px;
  background-color: #00529F;
  color: #fff;
  padding-left: 70px;
}

@media screen and (max-width: 768px) {
.content_title{
  display: block;
  margin-bottom: 50px;
}

.content_title>span {
  width: 100%;
  background-color: #fff;
  font-size: 2.4rem;
  padding-top: 0;
  padding-left: 0;
  text-align: center;
  padding-bottom: 20px;
}

.content_list, .content_list_reverse {
    position: relative;
    display: flex;
    flex-direction: column-reverse;
}

.content_list>img {
    display: inline-block;
    width: 100%;
}

.content_left {
    width: 100%;
    height: auto;
    padding-top: 30px;
    padding-left: 0;
    padding-bottom: 0;
    padding-right: 0;
}

.content_sub_title {
    font-size: 2.1rem;
    padding-bottom: 25px;
}

.content_text {
    font-size: 1.5rem;
    line-height: 22.5px;
    padding-bottom: 75px;
}
.content_text:last-of-type{
  padding-bottom: 35px;
}
.content_link {
    display: block;
    width: 100%;
    line-height: 50px;
    margin-top: 0;
    margin-left: 0;
    background-color: #00529F;
    color: #fff;
    padding-left: 0;
    text-align: center;
}

.content_wrap{
  margin-bottom: 50px;
}

.content_list_01:after, .content_list_02:after, .content_list_03:after, .content_list_04:after{
    font-size: 2.4rem;
    top: -20px;
    left: 10px;
    line-height: 40px;
    width: 40px;
    transform: none;
}
.content_title>img{
  width: 100%;
  height: auto;
}


}



/*-------------------------
 company_profile
-------------------------*/
.company_profile_wrap{
  margin-bottom: 80px;
}

.company_profile{
  display: flex;
  flex-wrap: wrap;
  margin-left: 265px;
  margin-bottom: 50px;
  font-size: 1.8rem;
}

.company_profile dt{
  width: 235px;
  padding-bottom: 15px;
  color: #00529F;
}
.company_profile dd{
  width: 575px;
  padding-bottom: 15px;
}

.ggmap {
position: relative;
padding-bottom: 32.407%;
height: 0;
overflow: hidden;
}

.ggmap iframe,
.ggmap object,
.ggmap embed {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}

@media screen and (max-width: 768px) {
.company_profile {
    display: block;
    flex-wrap: nowrap;
    margin-left: 0;
    margin-bottom: 25px;
    font-size: 1.5rem;
}

.company_profile dt {
    width: 100%;
    height: auto;
    padding-top: 25px;
    padding-bottom: 0;
}

.company_profile dt:first-of-type{
  padding-top: 0;
}

.company_profile dd {
    width: 100%;
    padding-top: 10px;
    padding-bottom: 0;
}

.company_profile_wrap{
  margin-bottom: 50px;
}

}

/*-------------------------
 contact
-------------------------*/
.contact_wrap>h2{
   font-size: 4.8rem;
   text-align: center;
   margin-bottom: 40px;
}

.contact_example{
  display: block;
}

.contact_contents{
  width: 670px;
  margin: 0 auto;
}

table{
  width: 100%;
}
.contact_text_red{
  color: #FF4750;
}

.contact_list input{
  width: 215px;
  height: 35px;
  margin-bottom: 5px;
}

.contact_contents th{
  background-color: #00529F;
  color: #fff;
  width: 250px;
  height: 85px;
  text-align: left;
  padding-top: 20px;
  padding-left: 25px;
  font-size: 1.4rem;
}
.contact_contents td:not(.contact_radio_item) {
  padding-left: 20px;
  font-size: 1.4rem;

}

.contact_radio_item input{
  width: 25px;
}


.contact_radio_item{
  border-bottom: solid 1px #000;
}

.contact_radio_item:first-of-type{
  padding-left: 20px;
}
.contact_radio_item:last-of-type{
  border-right: solid 1px #000;
}

.contact_contents th, .contact_contents td:not(.contact_radio_item) {
    border: solid 1px #000;
}

.contact_list textarea{
  padding: 10px;
  margin: 20px 0;
}

.contact_list_textarea th{
  vertical-align:top;
}

.contact_radio_item label input{
  vertical-align: middle;
}

.contact_list_radio_2rd{
  padding-left: 20px;
}

.contact_btn_wrap{
  width: 670px;
  text-align: center;
}

.contact_btn{
  margin-top: 30px;
  width: 170px;
  line-height: 45px;
  background-color: #00529F;
  color: #fff;
  border: solid #000 1px;
  font-size: 1.6rem;
  cursor : pointer;
}

button:hover{
  opacity: 0.7;
}

@media screen and (max-width: 768px) {
  .contact_contents table{
    width: 100%;
  }

  .contact_wrap>h2 {
    font-size: 2.4rem;
    text-align: center;
    margin-bottom: 20px;
}

.contact_contents{
  width: 100%;
  margin-left: 0;
}

.contact_list th{
  display: block;
  width: 100%;
  height: auto;
  line-height: 40px;
  padding-top: 0;
  padding-left: 10px;
}

.contact_contents td:not(.contact_radio_item) {
    display: block;
    width: 100%;
    padding-left: 10px;
}

input[type="text"] ,input[type="email"], input[type="tel"], textarea {
    width: 100% ;
    margin-bottom: 5px;
    margin-top: 10px;
    border-radius: 0;
    -webkit-appearance: none;
}

.contact_example {
   padding-bottom: 10px;
  }
.contact_list_title td{
   padding-bottom: 5px;
}

.contact_list textarea {
    margin: 10px 0;
}

.contact_list_radio{
  display: flex;
  flex-direction: column;
}
.contact_list_radio_2rd input{
  /* margin-left: 30px; */
}

.contact_btn_wrap {
    width: 100%;
  }

.contact_radio_item{
  width: 100%;
}

.contact_btn{
  width: 165px;
  line-height: 35px;
}

.contact_radio_item>label{
  margin-top: 5px;
}

.contact_contents td:not(.contact_radio_item){
  border-top:none;
  border-bottom: none;
}

.contact_radio_item:last-of-type{
  border-left: solid 1px #000;
}

input, textarea{
  font-size: 16px;
}
}


/*-------------------------
 footer
-------------------------*/
.totop{
  display: block;
  width: 100%;
  text-align: right;
}

.totop>img{
  display: inline-block;;
  width: 80px;
}

.footer_wrap{
  width: 100%;
  line-height: 150px;
  background-color: #00529F;
}

.footer_wrap>small>p{
  color: #fff;
  text-align: center;
  padding-top: 35px;
  font-size: 1.4rem;
}

@media screen and (max-width: 768px) {
.totop>img {
    display: inline-block;
    width: 45px;
}

.footer_wrap{
  line-height: 50px;
}

.footer_wrap>small>p{
  padding-top: 0;
}

}
