@charset "UTF-8";
main {
  background-color: #fff
}
.l-0 {
  letter-spacing: -4px;
  margin-right: 4px;
}
.mv-wrap {
  padding: 4rem 1.8rem;
  position: relative;
  z-index: 10;
  background-color: #fff
}
.mv-wrap small {
  display: block;
}
.mv-img {
  background: url("../images/mv.jpg")no-repeat center center/cover;
  padding: 30rem 2.5rem 10rem;
  border-radius: 30px;
  color: #fff;
  position: relative;
  overflow: hidden;
  z-index: 0;
}
.mv-img::after {
  background: rgba(0, 0, 0, 0.3);
  content: "";
  height: 100%;
  left: 0;
  top: 0;
  width: 100%;
  position: absolute;
  z-index: -1;
}
.mv-ttl .en {
  font-size: 2rem;
  line-height: 1;
  display: block;
  margin-bottom: 1.5rem;
  -webkit-animation: fadein 2s;
  animation: fadein 2s;
  margin-top: 1.5rem;
}
.mv-ttl {
  font-size: 2.4rem;
  display: block;
  -webkit-animation: fadein 2s;
  animation: fadein 2s;
  line-height: 1.4;
}
.cont-ttl {
  -webkit-font-smoothing: antialiased;
}
.cont-ttl .inrtxt {
  -webkit-animation: bl 0.45s ease 0.1s 1 forwards;
  animation: bl 0.45s ease 0.1s 1 forwards;
  display: inline-block;
  opacity: 0;
  transform: translate(20px, 10px);
}
@keyframes fadein {
  0% {
    opacity: 0;
    filter: blur(8px);
    transform: translate(0, 20px);
  }
  100% {
    opacity: 1;
    filter: blur(0);
    transform: translate(0, 0);
  }
}
@keyframes bl {
  0% {
    opacity: 0;
    filter: blur(8px);
    transform: translate(20px, 10px);
  }
  100% {
    opacity: 1;
    filter: blur(0);
    transform: translate(0, 0);
  }
}
@media only screen and (min-width: 769px) {
  .mv-wrap {
    padding: 3rem;
  }
  .mv-img {
    padding: 30rem 5rem 14rem;
  }
  .mv-ttl {
    font-size: 2.8rem;
  }
}
@media only screen and (min-width: 1367px) {
  .mv-ttl .en {
    font-size: 2.2rem;
  }
  .mv-ttl {
    font-size: 5.2rem;
  }
}
@media only screen and (min-width: 1600px) {
  .mv-wrap {
    padding: 7.7rem 4rem;
  }
  .mv-img {
    padding: 50rem 8.5rem 24rem;
  }
}
.philosophy .philosophy_wrap {
  justify-content: center;
}
.philosophy .philosophy_wrap .img {
  max-width: 360px;
  width: 80%;
}
.philosophy .inr_ttl {
  position: relative;
}
.philosophy .inr_ttl::after {
  position: absolute;
  content: "“";
  left: -20px;
  top: -65px;
  line-height: 1;
  color: #fff;
  font-size: 160px;
  z-index: -1;
}
@media only screen and (min-width: 769px) {
  .philosophy .philosophy_wrap {
    align-items: center;
  }
  .philosophy .cont-ttl {
    margin-bottom: 6rem
  }
  .philosophy .philosophy_wrap .cont_txt {
    width: 50%;
    max-width: 646px;
  }
  .philosophy .philosophy_wrap .img {
    width: 40%;
    max-width: 490px;
    margin-left: 5%;
  }
  .philosophy .inr_ttl::after {
    left: -30px;
    top: -80px;
    font-size: 190px;
  }
}
@media only screen and (min-width: 1000px) {
  .philosophy .cont-ttl {
    margin-bottom: 10rem
  }
}
@media only screen and (max-width: 768px) {
  .philosophy .cont-ttl span {
    font-size: 2.9rem;
    line-height: 1.2;
  }
  .philosophy .img {
    margin: 0 auto 6rem;
  }
}
.message {
  background-color: #fff;
  width: calc(100% - 20px);
  margin: auto;
  padding: 8rem 1rem;
  position: relative;
  z-index: 10;
  border-radius: 30px;
}
.message::after {
  background-color: #fff;
  content: "";
  position: absolute;
  width: 120%;
  height: 100%;
  left: -10%;
  top: 0;
  z-index: -1
}
.message .cont-ttl {
  z-index: 10;
}
.message .left_cont {
  width: 100%;
  position: relative;
}
.message .top_img {
  width: 80%;
  position: relative;
  margin: auto;
  max-width: 28rem;
}
.message .cont_txt {
  width: 100%;
}
.message .cont_txt .name {
  text-align: right;
  font-size: 1.6rem;
}
@media only screen and (min-width: 769px) {
  .message {
    width: calc(100% - 40px);
    padding: 8rem 1rem;
    border-radius: 30px;
  }
  .message .top_img {
    width: 50%;
    max-width: 30rem;
  }
  .message .cont_txt .txt {
    font-size: 1.6rem;
    margin-bottom: 4rem;
  }
  .message .cont_txt .name {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 1000px) {
  .message .cont_inr {
    justify-content: space-between;
  }
  .message .cont-ttl {
    margin-top: 5rem;
  }
  .message .left_cont {
    width: 52%;
  }
  .message .top_img {
    width: 60%;
    position: absolute;
    max-width: 46rem;
    top: 0;
    right: 0;
  }
  .message .cont_txt {
    width: 42%;
    margin-top: 14rem;
  }
}
@media only screen and (min-width: 1366px) {
  .message .cont-ttl {
    margin-top: 9rem;
  }
  .message .top_img {
    width: 55%;
  }
  .message .cont_txt .txt {
    margin-bottom: 4rem;
  }
}
@media only screen and (max-width: 999px) {
  .message .left_cont {
    margin-bottom: 6rem;
    align-items: center;
  }
}
@media only screen and (max-width: 768px) {
  .message .left_cont, .message .cont-ttl {
    width: 100%;
  }
  .message .left_cont {
    margin-bottom: 4rem;
  }
}
/*
.about {
  padding: 0 2rem 10rem
}
*/
.about table {
  max-width: 80rem;
  margin: auto;
}
@media only screen and (min-width: 768px) {
  /*
  .about {
    padding: 0 3rem 14rem
  }
*/
}
.business {
  padding: 0 0.75rem;
  position: relative;
  z-index: 10;
}
.business::after {
  background-color: #fff;
  content: "";
  position: absolute;
  width: 120%;
  height: 100%;
  left: -10%;
  top: 0;
  z-index: -1
}
.business .cont_inr {
  background: url("../images/business_mv.jpg")no-repeat center center/cover;
  border-radius: 30px;
  overflow: hidden;
  padding: 6rem 0;
  max-width: inherit;
}
.business .inr_ttl {
  margin-bottom: 2rem;
}
.business .text-content {
  margin-bottom: 5rem;
  color: #fff;
  padding: 0 3rem;
}
.business .w_cont__inr {
  padding: 1.5rem 0;
  background-color: #fff;
  border-radius: 20px;
  max-width: 100rem;
  transition: all 1s;
  -webkit-transition: all 1s;
}
.business .w_cont__inr.is-active {
  padding: 2.5rem 0;
}
.business .w_cont__inr .w_ttl {
  width: 8rem;
  padding: 1rem 2rem 0.6rem 0;
  text-align: right;
  border-radius: 0 50px 50px 0;
  font-family: "Figtree", sans-serif;
  font-weight: 900;
  font-size: 2.2rem;
  line-height: 1;
  color: #fff;
  margin-right: 3rem;
}
.business .w_cont__inr .w_ttl.w-1 {
  background-color: #FF8A05
}
.business .w_cont__inr .w_ttl.w-2 {
  background-color: #C0A301
}
.business .w_cont__inr .w_ttl.w-3 {
  background-color: #9D293B
}
.business .w_cont__inr .w_ttl.w-4 {
  background-color: #3355B2
}
.business .w_cont__inr .w_ttl.w-5 {
  background-color: #73B802
}
.business .w_cont__inr .w_ttl.w-6 {
  background-color: #5D9BE0
}
.business .w_cont__inr .w_ttl.w-7 {
  background-color: #3E389E
}
.business .w_cont__inr .w_ttl_wrap {
  align-items: center;
  margin-bottom: 1rem;
}
.business .w_cont__inr .w_ttl_wrap .ttl {
  font-size: 1.8rem;
  line-height: 1.4;
}
.business .w_cont__inr .w_cont__txt-img {
  max-width: 1000px;
  padding: 0 3rem;
  margin: auto;
  line-height: 1.6;
  font-size: 1.3rem;
}
.business .w_cont__inr .w_cont__img {
  justify-content: space-between;
  margin-top: 4rem;
}
.business .w_cont__inr .w_cont__img .w_cont__img-inr {
  width: 49%;
}
.business .text-content__inr .cont_txt {
  margin-bottom: 4rem;
}
.business .bold {
  font-weight: 600;
}
.business .bold.ttl {
  font-size: 1.5rem;
  margin-bottom: 1.5rem;
}
.business .w_cont__inr .w_cont__txt-img ul li {
  padding-left: 1.4rem;
  text-indent: -1.4rem;
}
.business .w_cont__txt-img {
  flex-wrap: wrap;
}
.business .w_cont__txt-img .img-cont {
  width: 100%;
  max-width: 28rem;
}
.business .w_cont__txt-img ul, .business .w4_2-cont .mgb40 {
  margin-bottom: 1.2rem;
}
.splide__pagination {
  display: none;
}
.splide.is-initialized, .splide.is-rendered {
  margin: auto;
}
.splide__slide {
  width: 100%;
}
.splide__track--draggable {
  overflow: visible;
}
.splide__arrow--next {
  right: 0.5rem;
}
.splide__arrow--prev {
  left: 0.5rem;
}
.splide__arrow {
  height: 4rem;
  width: 4rem;
  opacity: 1;
  transition: all 0.5s;
  -webkit-transition: all 0.5s;
}
.movie {
  padding: 8rem 3rem 0;
}
.movie .flex {
  justify-content: center;
  max-width: 115rem;
  margin: auto;
}
.movie .flex li {
  width: 100%;
  margin-bottom: 4rem;
  max-width: 32rem;
}
.movie .flex li:last-child {
  margin-bottom: 0;
}
@media only screen and (min-width: 769px) {
  .business {
    padding: 0 2rem;
  }
  .business .cont_inr {
    padding: 8rem 0;
  }
  .business .inr_ttl {
    margin-bottom: 4rem;
  }
  .business .text-content {
    padding: 0 6rem;
    margin-bottom: 6rem;
  }
  .business .text-content__inr {
    justify-content: space-between;
    align-items: center;
  }
  .business .text-content__inr .cont_txt {
    padding-left: 3rem;
    width: 50%;
  }
  .business .text-content__inr .right_img {
    max-width: 69rem;
    width: 45%;
  }
  .business .w_cont__inr {
    padding: 3rem 0;
    border-radius: 30px;
    height: 70%;
    margin: auto;
  }
  .business .w_cont__inr.is-active {
    padding: 5rem 0;
    height: 100%;
  }
  .business .w_cont__inr .w_cont__txt-img {
    padding: 0 6rem;
    font-size: 1.6rem;
  }
  .business .w_cont__inr .w_cont__img {
    margin-top: 4rem;
  }
  .business .w_cont__inr .w_ttl {
    width: 14rem;
    padding: 1.6rem 4rem;
    font-size: 3rem;
    margin-right: 2rem;
  }
  .business .w_cont__inr.w7-cont .w_cont__img .w_cont__img-inr {
    margin-left: auto
  }
  .business .w_cont__inr .w_ttl_wrap {
    margin-bottom: 3rem;
  }
  .business .w_cont__inr .w_ttl_wrap .ttl {
    font-size: 2.8rem;
    width: calc(100% - 22rem)
  }
  .business .bold.ttl {
    font-size: 2.4rem;
    margin-bottom: 2.5rem;
  }
  .business .w_cont__txt-img {
    justify-content: space-between;
    align-items: end;
  }
  .business .w5-cont .w_cont__txt-img {
    align-items: center;
  }
  .business .w_cont__txt-img .left-cont {
    width: 65%
  }
  .business .w_cont__txt-img .img-cont {
    width: 30%;
  }
  .business .w_cont__txt-img .left-cont.w70 {
    width: 60%
  }
  .business .w_cont__txt-img .left-cont.w50 {
    width: 50%
  }
  .business .w_cont__txt-img .img-cont.w50 {
    max-width: 49rem;
    width: 45%
  }
  .business .w_cont__txt-img .img-cont.w30 {
    max-width: 23rem;
  }
  .business .w4_2-cont .w_cont__txt-img {
    align-items: center;
  }
  .business .w_cont__txt-img ul, .business .w4_2-cont .mgb40 {
    margin-bottom: 4rem;
  }
  .splide__arrow {
    height: 8rem;
    width: 8rem;
  }
  .splide__arrow--next {
    right: 3rem;
  }
  .splide__arrow--prev {
    left: 3rem;
  }
  .movie {
    padding: 10rem 6rem 0;
  }
  .movie .flex {
    justify-content: space-between;
    max-width: 95rem;
  }
  .movie .flex li {
    width: 48%;
    max-width: 42rem;
    margin-bottom: 6rem;
  }
}
@media only screen and (min-width: 1000px) {
  .business .text-content {
    margin-bottom: 10rem;
  }
  .business .cont_inr {
    padding: 12rem 0;
  }
  .business .text-content__inr .cont_txt {
    padding-left: 6rem;
  }
  .splide__arrow {
    height: 8rem;
    width: 8rem;
  }
}
@media only screen and (min-width: 1367px) {
  .business {
    padding: 0 4rem;
  }
  .business .inr_ttl {
    margin-bottom: 6rem;
  }
  .business .text-content {
    max-width: 156rem;
    margin: 0 auto 10rem;
  }
  .movie .flex li {
    max-width: 55rem;
  }
}
@media only screen and (min-width: 1600px) {
  .business {
    padding: 0 6rem;
  }
  .business .cont_inr {
    padding: 15rem 0;
  }
  .splide__arrow {
    height: 14rem;
    width: 14rem;
  }
  .splide__arrow--next {
    right: 12rem;
  }
  .splide__arrow--prev {
    left: 12rem;
  }
  .business .w_cont__inr .w_ttl {
    width: 17rem;
    margin-right: 3rem;
    font-size: 4rem;
  }
  .business .w_cont__inr.is-active {
    padding: 7rem 0 9rem;
  }
  .business .w_cont__inr .w_ttl_wrap {
    margin-bottom: 4rem;
  }
  .business .w_cont__inr .w_ttl_wrap .ttl {
    font-size: 3.2rem;
    width: calc(100% - 22rem)
  }
  .business .w_cont__inr .w_cont__txt-img {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 2000px) {
  .splide__arrow--next {
    right: 30rem;
  }
  .splide__arrow--prev {
    left: 30rem;
  }
}
@media only screen and (max-width: 768px) {
  .business .w_cont__inr .w_ttl_wrap .ttl {
    padding: 1.5rem 2.8rem 0;
    width: 100%;
  }
  /*
  .business .w_cont__inr .w_cont__img {
    max-width: 30rem
  }
*/
  .business .w_cont__inr .w_cont__img-inr {
    margin-bottom: 2rem;
  }
  .business .text-content__inr .right_img {
    max-width: 40rem;
    margin: auto;
  }
  .business .w4_1-cont .w_cont__txt-img .img-cont {
    max-width: 21rem;
  }
  .business .w6-cont .w_cont__txt-img .img-cont {
    max-width: 18rem;
  }
  .business .w_cont__txt-img .img-cont, .business .w_cont__inr.w7-cont .w_cont__img .w_cont__img-inr {
    margin: 2rem auto 0;
  }
  .business .w4_2-cont .img-cont {
    max-width: 9rem;
  }
  .business .w5-cont .img-cont {
    max-width: 15rem;
  }
}
@media only screen and (max-width: 500px) {
  .business .w_cont__inr .w_cont__img .w_cont__img-inr {
    width: 100%
  }
}
.company .cont_txt {
  padding: 0 0 0 1.5rem;
  margin-bottom: 6rem
}
.company .map {
  max-width: 116rem;
  margin: 0 auto 6rem;
  width: 100%;
}
.company .bl-box.cont_txt {
  background-color: #F5F9FF;
  border: 1px solid #003B8F;
  border-radius: 1rem;
  padding: 4rem 2rem;
  margin-bottom: 0;
}
/*
.middle-img {
  background: url("../images/middle.jpg")no-repeat top 60px center/cover fixed;
  height: 30rem;
}
*/
@media only screen and (min-width: 769px) {
  .company .cont-ttl {
    margin-bottom: 10rem;
  }
  .company .cont_txt {
    padding: 0 6rem;
    margin-bottom: 9rem
  }
  .company .bl-box.cont_txt {
    padding: 4rem 6rem;
    justify-content: space-between;
    align-items: center;
  }
  .company .bl-box .txt {
    width: 65%;
  }
  .company .bl-box .right_img {
    width: 30%;
  }
  .middle-img {
    height: 40rem;
    width: 100%;
    background: url("../images/middle.jpg")no-repeat top 100px center/cover fixed;
  }
}
@media only screen and (min-width: 1367px) {
  .company .bl-box.cont_txt {
    padding: 6.8rem 9rem;
  }
}
@media only screen and (min-width: 1600px) {
  .middle-img {
    height: 52rem;
  }
}
@media only screen and (max-width: 768px) {
  .middle-img {
    position: relative;
    z-index: 1;
  }
  .middle-img::after {
    /*    background: url("../images/middle.jpg")no-repeat top center/cover fixed;*/
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1;
    width: 100vw;
    height: 100vh;
    background: url("../images/middle.jpg") no-repeat;
    -webkit-background-size: cover;
    background-size: cover;
    content: "";
    background-position: center;
  }
  .company {
    margin-bottom: 30rem
  }
  .company .bl-box.cont_txt .txt {
    margin-bottom: 4rem;
  }
  .company .bl-box.cont_txt .right_img {
    width: 65%;
    margin: auto;
    max-width: 30rem;
  }
}
.recruit {
  background-color: #fff;
  padding: 10rem 2rem 15rem;
}
.recruit .link_wrap .link_inr {
  background-color: #EAF1FA;
  border: 1px solid #003B8F;
  border-radius: 10px;
  padding: 6rem 2rem 5rem;
  position: relative;
}
.recruit .link_wrap .link_inr .maru_ttl {
  background-color: #003B8F;
  border-radius: 30px;
  color: #fff;
  width: 20rem;
  font-size: 2rem;
  padding: 1.5rem;
  line-height: 1;
  position: absolute;
  left: 50%;
  top: 0;
  transform: translate(-50%, -50%);
}
.recruit .link_wrap .link_inr a.mail {
  color: #003B8F;
  font-size: 2rem;
  border-bottom: 1px solid #003B8F;
}
.recruit .link_wrap .link_inr .flex li {
  width: 100%;
}
.recruit .link_wrap .link_inr .flex li .img {
  opacity: 0.7;
  position: relative;
}
.recruit .link_wrap .link_inr .flex li .img::after {
  position: absolute;
  content: "";
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.3);
  left: 0;
  top: 0;
}
.recruit .link_wrap .link_inr .flex li a {
  display: block;
  line-height: 0;
}
.recruit .link_wrap .link_inr .flex li a img {
  opacity: 1;
}
.recruit .link_wrap .link_inr.flex {
  align-items: center;
  justify-content: center;
}
.recruit .link_wrap .link_inr .txt {
  width: 100%
}
@media only screen and (min-width: 769px) {
  .recruit {
    padding: 18rem 2rem;
  }
  .recruit .cont-ttl {
    margin-bottom: 10rem;
  }
  .recruit .recruit_inr, .recruit .link_wrap, .recruit .link_wrap .link_inr .flex {
    justify-content: space-between;
  }
  .recruit .recruit_inr .cont_txt {
    width: 60%;
    padding-left: 3rem;
  }
  .recruit .recruit_inr .right_img {
    width: 35%;
  }
  .recruit .recruit_inr {
    margin-bottom: 10rem;
  }
  .recruit .link_wrap .link_inr {
    width: 48%;
  }
  .recruit .link_wrap .link_inr .flex li {
    width: calc(100% / 2 - 0.5rem);
    line-height: 1;
    /*    margin-bottom: 2rem;*/
  }
  .recruit .link_wrap .link_inr .flex li:nth-child(3), .recruit .link_wrap .link_inr .flex li:nth-last-child(4) {
    margin-bottom: 0;
  }
  .recruit .link_wrap .link_inr a.mail {
    font-size: 2.4rem;
  }
  .recruit .link_wrap .link_inr .flex li a:hover {
    box-shadow: 0 0 10px rgba(0, 59, 143, 0.3);
  }
  .recruit .link_wrap .link_inr .flex li:last-child {
    margin-bottom: 0;
  }
  .recruit .link_wrap .link_inr .maru_ttl {
    font-size: 2.4rem;
  }
}
@media only screen and (min-width: 1000px) {
  .recruit .link_wrap .link_inr .flex li {
    /* width: calc(100% / 3 - 1rem); */
    /*    margin-bottom: 2rem;*/
  }
}
@media only screen and (min-width: 1367px) {
  .recruit {
    padding: 18rem 2rem 21.6rem;
  }
  .recruit .recruit_inr {
    margin-bottom: 15rem;
  }
  .recruit .recruit_inr .cont_txt {
    padding-left: 6rem;
  }
}
@media only screen and (max-width: 768px) {
  .recruit .recruit_inr {
    margin-bottom: 10rem
  }
  .recruit .recruit_inr .right_img {
    width: 65%;
    margin: 0 auto 4rem
  }
  .recruit .link_wrap {
    width: 90%;
    max-width: 40rem;
    margin: 0 auto;
  }
  .recruit .link_wrap .link_inr {
    margin-bottom: 6rem;
    width: 100%;
  }
  .recruit .link_wrap .link_inr:last-child {
    margin-bottom: 0;
  }
  .recruit .link_wrap .link_inr .flex {
    justify-content: center;
  }
  .recruit .link_wrap .link_inr .flex li {
    margin-bottom: 2rem;
  }
  .recruit .link_wrap .link_inr .flex li:last-child, .recruit .link_wrap .link_inr.flex {
    margin-bottom: 0;
    width: 100%;
  }
}
.contact {
  background: linear-gradient(45deg, #C3D5FB, #C8EBF1);
  z-index: 10;
  position: relative;
}
.contact .cont-ttl {
  margin-bottom: 6rem;
}
.contact .contact_link {
  justify-content: center;
}
.contact .contact_link .link_inr {
  width: 100%;
  max-width: 65rem;
}
.contact .contact_link .link_inr:last-child {
  margin-bottom: 0;
}
.contact .contact_link .link_inr a {
  display: block;
  background-color: #FFFFFF;
  border: 1px solid #003B8F;
  color: #003B8F;
  font-size: 2.4rem;
  line-height: 1.4;
  font-weight: 600;
  border-radius: 10px;
  padding: 6rem 2rem;
  position: relative;
}
.contact .contact_link .link_inr a .arrow {
  overflow: hidden;
  position: absolute;
  width: 20px;
  height: 20px;
  right: 30px;
  bottom: 30px;
}
.contact .contact_link .link_inr a .arrow_inr {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  background: url("../images/arrow.png")no-repeat center center/contain;
  top: 0;
  left: 0;
  transition: 0.3s;
  display: block;
}
.contact .contact_link .link_inr a .arrow span:nth-child(1) {
  transform: rotateX(0deg);
  transform-origin: 0 50% -1.5rem;
}
.contact .contact_link .link_inr a:hover .arrow span:nth-child(1) {
  transform: rotateX(90deg) translate(30px, -30px);
}
.contact .contact_link .link_inr a .arrow span:nth-child(2) {
  transform: rotateX(-90deg) translate(0, -30px);
  transform-origin: 0 50% -1.5rem;
}
.contact .contact_link .link_inr a:hover .arrow span:nth-child(2) {
  transform: rotateX(0deg);
}
.contact .contact_link .link_inr a .link_inr_ttl {
  margin-bottom: 2.5rem;
}
.contact .contact_link .link_inr a .maru_icon {
  position: absolute;
  width: 60px;
  height: 60px;
  background-color: #003B8F;
  border-radius: 100vh;
  left: 50%;
  top: 0;
  transform: translate(-50%, -40%);
}
.contact .contact_link .link_inr a .maru_icon.tel::after, .contact .contact_link .link_inr a .maru_icon.mail::after {
  position: absolute;
  content: "";
  left: 50%;
  top: 50%;
  transform: translate(-50%, -50%);
  z-index: 10;
}
.contact .contact_link .link_inr a .maru_icon.tel::after {
  width: 24px;
  height: 24px;
  background: url("../images/phone.png")no-repeat center center/contain;
}
.contact .contact_link .link_inr a .maru_icon.mail::after {
  width: 28px;
  height: 24px;
  background: url("../images/mail.png")no-repeat center center/contain;
}
.contact .contact_link .link_inr a .en {
  font-size: 4rem;
  line-height: 1;
}
.contact .contact_link .link_inr a small {
  font-size: 1.4rem;
  font-weight: 400;
}
.contact .contact_link .link_inr a span {
  word-break: break-all;
  line-height: 1;
  display: block;
}
@media only screen and (min-width: 769px) {
  .contact .cont-ttl {
    margin-bottom: 8rem;
  }
  /*
  .contact .contact_link {
    justify-content: space-between;
  }
*/
  /*
  .contact .contact_link .link_inr {
    width: 48%;
  }
*/
  .contact .contact_link .link_inr a .maru_icon.tel::after {
    width: 30px;
    height: 30px;
  }
  .contact .contact_link .link_inr a .maru_icon.mail::after {
    width: 34px;
    height: 28px;
  }
  .contact .contact_link .link_inr a .maru_icon {
    width: 80px;
    height: 80px;
  }
  .contact .contact_link .link_inr a {
    font-size: 2.4rem;
    padding: 7rem 2rem 4rem;
    min-height: 270px;
  }
  .contact .contact_link .link_inr a:hover {
    box-shadow: 0 0 30px rgba(0, 59, 143, 0.3);
  }
  .contact .contact_link .link_inr a span {
    font-size: 2.8rem;
  }
  .contact .contact_link .link_inr a .en {
    font-size: 4rem;
  }
  .contact .contact_link .link_inr a small {
    font-size: 2rem;
  }
}
@media only screen and (min-width: 1367px) {
  .contact .contact_link .link_inr a {
    font-size: 2.8rem;
    min-height: 320px;
    padding: 9rem 2rem 6rem;
  }
  .contact .contact_link .link_inr a .en {
    font-size: 5rem;
  }
  .contact .contact_link .link_inr a small {
    font-size: 2.4rem;
  }
  .contact .contact_link .link_inr a .maru_icon {
    width: 100px;
    height: 100px;
  }
}
@media only screen and (min-width: 1600px) {
  .contact .contact_link .link_inr a {
    font-size: 3.2rem;
  }
}
@media only screen and (max-width: 768px) {
  .contact {
    padding: 10rem 2rem 15rem;
  }
  .contact .contact_link {
    justify-content: center;
  }
  .contact .contact_link .link_inr {
    max-width: 40rem;
    margin-bottom: 8rem;
  }
  .contact .contact_link .link_inr a span {
    font-size: 2.2rem;
  }
}