/* ***************************************************
 SP
*************************************************** */
@media screen and (max-width:959px) {
  #front_bg,
  #front_logo {
    position: fixed;
  }
  #front_bg {
    min-width: 600px;
    width: 100%;
    min-height: 100vh;
    object-fit: cover;
    height: auto;
    background-color: #EEEEEE;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9998;
  }
  #front_logo {
    width: 195px;
    top: 50%;
    left: 50%;
    z-index: 9999;
    transform: translate(-50%, -50%);
    transition: all, 1500ms;
    visibility: visible;
    opacity: 1;
  }
  #front_logo.active {
    top: 30px;
    left: 5vw;
    transform: translate(0%, 0%);
    width: 195px;
    visibility: hidden;
    opacity: 0;
  }
  .container-front {
    position: relative;
    max-width: 100%;
    overflow-x: hidden;
    padding-top: 48px;
    z-index: 0;
  }
  .container-front #galaxy_left_50 {
    top: 25vh;
  }
  .front-intro {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto 40px;
  }
  .front-intro .title {
    grid-column: 2/8;
    margin-bottom: 32px;
    font-family: "TazuganeGothicStdN-Bold", "HelveticaNowText-Regular", sans-serif;
    font-size: 28px;
    line-height: 150%;
  }
  .front-intro .text {
    grid-column: 2/8;
  }
  .front-intro .text p {
    font-size: 14px;
    line-height: 180%;
    margin-bottom: 32px;
  }
  #front-mv .swiper-slide {
    display: grid !important;
    max-width: 100%;
  }
  #front-mv .swiper-slide .img1 {
    grid-column: 2/4;
    aspect-ratio: 1/2.4;
  }
  #front-mv .swiper-slide .img2 {
    grid-column: 4/9;
  }
  #front-mv .swiper-slide img {
    width: 100%;
    height: 100%;
    max-height: 320px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .front-unique {
    padding: 96px 0;
  }
  .front-unique h2 {
    grid-column: 2/8;
    margin-bottom: 16px;
    font-family: "TazuganeGothicStdN-Bold", "HelveticaNowText-Regular", sans-serif;
    font-size: 14px;
    line-height: 180%;
    color: #0A2864;
  }
  .front-unique .text {
    grid-column: 2/8;
    margin-bottom: 40px;
  }
  .front-unique .text p {
    font-family: "TazuganeGothicStdN-Bold", "HelveticaNowText-Regular", sans-serif;
    font-size: 22px;
    font-weight: bold;
  }
  .front-unique .img {
    grid-column: 2/8;
  }
  .front-unique .img img {
    width: 100%;
  }
  .front-archive-wrapper {
    padding: 0 0 56px;
  }
  .front-archive-wrapper #galaxy_right_50 {
    display: none;
  }
  .front-case,
  .front-media {
    margin-bottom: 40px;
  }
  .front-column {
    border-bottom: 1px solid #C7C8C9;
  }
  .front-column .inner {
    grid-column: 1/9;
  }
  .front-column a {
    display: block;
    padding: 32px 5vw;
    border-top: 1px solid #C7C8C9;
  }
  .front-column h2 {
    margin-bottom: 16px;
  }
  .front-column p {
    margin: 0;
    padding-right: 48px;
    background-image: url(../images/common/icon-arrow_r.svg);
    background-repeat: no-repeat;
    background-position: center right 8px;
    font-size: 14px;
    line-height: 160%;
  }
  .front-column p span {
    font-family: "TazuganeGothicStdN-Book", "HelveticaNowText-Regular", sans-serif;
    background: -webkit-gradient(linear, left top, left bottom, from(#14191E), to(#14191E)) 0 100%/0 1px no-repeat;
    background: -webkit-linear-gradient(#14191E, #14191E) 0 100%/0 1px no-repeat;
    background: linear-gradient(#14191E, #14191E) 0 100%/0 1px no-repeat;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .front-column > div a:first-child img {
    width: 120px;
  }
  .front-column > div a:nth-child(2) img {
    width: 148px;
  }
  .front-column > div a:nth-child(3) img {
    width: 160px;
  }
  .front-column > div a:nth-child(4) img {
    width: 200px;
  }
  .front-career {
    padding: 88px 0 112px;
  }
  .front-career .img1 {
    grid-row: 2;
    grid-column: 1/6;
    position: relative;
    z-index: 1;
  }
  .front-career .img2 {
    grid-row: 2;
    grid-column: 6/9;
    position: relative;
    z-index: 1;    
  }
  .front-career img {
    width: 100%;
    height: 100%;
    max-height: 320px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .front-career .text {
    grid-area: text;
    grid-row: 1;
    grid-column: 2/8;
    margin-bottom: 40px;
  }
  .front-career .text .subtitle {
    display: inline-block;
    margin-bottom: 8px;
    font-family: "HelveticaNowText-Medium", "TazuganeGothicStdN-Book", sans-serif;
    font-size: 14px;
    line-height: 130%;
    color: #0A2864;
    font-weight: bold;
  }
  .front-career .text .title {
    margin-bottom: 24px;
    font-family: "TazuganeGothicStdN-Bold", "HelveticaNowText-Regular", sans-serif;
    font-size: 22px;
    line-height: 150%;
  }
  .front-career .text p {
    margin-bottom: 24px;
    font-size: 14px;
    line-height: 180%;
  }
}
/* ***************************************************
 PC
*************************************************** */
@media all and (min-width:960px) {
  #front_bg,
  #front_logo {
    position: fixed;
  }
  #front_bg {
    min-width: 1600px;
    width: 100%;
    min-height: 100vh;
    object-fit: cover;
    height: auto;
    background-color: #EEEEEE;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 9998;
  }
  #front_logo {
    width: 300px;
    top: 50%;
    left: 50%;
    z-index: 9999;
    transform: translate(-50%, -50%);
    transition: all, 1500ms;
    visibility: visible;
    opacity: 1;
  }
  #front_logo.active {
    top: 30px;
    left: 5vw;
    transform: translate(0%, 0%);
    width: 195px;
    visibility: hidden;
    opacity: 0;
  }
  .container-front {
    position: relative;
    max-width: 100%;
    overflow-x: hidden;
    padding-bottom: 0px;
    z-index: 0;
  }
  .container-front #galaxy_left_50 {
    top: 25vh;
  }
  .front-intro {
    padding: 160px 0 128px;
  }
  .front-intro .title {
    grid-column: 2/7;
    padding-right: 10%;
    font-size: clamp(32px, 0.1rem + 3.2vw, 48px);
    font-family: "TazuganeGothicStdN-Bold", "HelveticaNowText-Regular", sans-serif;
    line-height: 150%;
  }
  .front-intro .text {
    grid-column: 7/8;
  }
  .front-intro .text p {
    line-height: 180%;
    margin-bottom: 48px;
  }
  #front-mv {
    max-width: 2000px;
    margin-right: auto;
    margin-left: auto;
  }
  #front-mv .swiper-slide {
    display: grid !important;
    max-width: 100%;
  }
  #front-mv .swiper-slide .img1 {
    grid-column: 2/5;
  }
  #front-mv .swiper-slide .img2 {
    grid-column: 5/9;
  }
  #front-mv .swiper-slide img {
    width: 100%;
    height: 100%;
  }
  .front-unique {
    padding: 192px 0 0;
  }
  .front-unique h2 {
    grid-column: 3/5;
    font-family: "TazuganeGothicStdN-Bold", "HelveticaNowText-Regular", sans-serif;
    font-size: 16px;
    line-height: 180%;
    color: #0A2864;
  }
  .front-unique .text {
    grid-column: 5/7;
    padding-right: 10%;
  }
  .front-unique .text p {
    font-family: "TazuganeGothicStdN-Bold", "HelveticaNowText-Regular", sans-serif;
    font-size: 28px;
    font-weight: bold;
  }
  .front-unique .img {
    grid-column: 7/7;
  }
  .front-unique .img img {
    width: 100%;
  }
  .front-archive-wrapper {
    position: relative;
    padding: 192px 0 0;
    z-index: 0;
    overflow: hidden;
  }
  .front-archive-wrapper #galaxy_right_50 {
    top: 0;
  }
  .front-case,
  .front-media {
    margin-bottom: 128px;
  }
  .front-column {
    max-width: 2000px;
    margin-right: auto;
    margin-left: auto;
  }
  .front-column .inner {
    grid-column: 4/8;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    gap: 80px 24px;
  }
  .front-column a {
    display: block;
  }
  .front-column a:hover span {
    background-size: 100% 1px;
  }
  .front-column a:nth-child(n+3) {
    grid-row: 2;
  }
  .front-column h2 {
    min-height: 91px;
    margin-bottom: 24px;
  }
  .front-column p {
    margin: 0;
    padding-right: 48px;
    background-image: url(../images/common/icon-arrow_r.svg);
    background-repeat: no-repeat;
    background-position: top 1.125em right 8px;
    line-height: 160%;
  }
  .front-column p span {
    font-family: "TazuganeGothicStdN-Book", "HelveticaNowText-Regular", sans-serif;
    background: -webkit-gradient(linear, left top, left bottom, from(#14191E), to(#14191E)) 0 100%/0 1px no-repeat;
    background: -webkit-linear-gradient(#14191E, #14191E) 0 100%/0 1px no-repeat;
    background: linear-gradient(#14191E, #14191E) 0 100%/0 1px no-repeat;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .front-career {
    max-width: 2000px;
    margin-right: auto;
    margin-left: auto;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    padding-top: 128px;
  }
  .front-career .img1 {
    grid-column: 1/5;
    position: relative;
    z-index: 1;    
  }
  .front-career .img2 {
    grid-column: 5/6;
    position: relative;
    z-index: 1;    
  }
  .front-career img {
    width: 100%;
    height: 100%;
  }
  .front-career .text {
    grid-column: 6/8;
    padding-left: 24%;
  }
  .front-career .text .subtitle {
    display: inline-block;
    margin-bottom: 8px;
    font-family: "HelveticaNowText-Medium", "TazuganeGothicStdN-Book", sans-serif;
    font-size: 16px;
    line-height: 130%;
    color: #0A2864;
    font-weight: bold;
  }
  .front-career .text .title {
    margin-bottom: 24px;
    font-family: "TazuganeGothicStdN-Bold", "HelveticaNowText-Regular", sans-serif;
    font-size: 28px;
    line-height: 150%;
  }
  .front-career .text p {
    margin-bottom: 48px;
    line-height: 180%;
  }
}
@media all and (max-width: 1440px) and (min-width: 960px) {
  #front-mv .swiper-slide .img1,
  #front-mv .swiper-slide .img2 {
    height: 320px;
    -o-object-fit: cover;
       object-fit: cover;
  }
  .front-career .img1,
  .front-career .img2 {
    height: 320px;
        position: relative;
    z-index: 1;
    -o-object-fit: cover;
       object-fit: cover;
  }
}