@charset "UTF-8";
/* CSS Document */
.home #service figure {
  text-align: center; }
.home #service .btn3 {
  font-size: 20px;
  text-decoration: underline;
  padding-right: 33px;
  padding-left: 0; }
  .home #service .btn3::after {
    width: 20px;
    height: 20px;
    background-size: 20px;
    margin-top: -10px; }
  .home #service .btn3:hover {
    text-decoration: none; }

#anchor .inner {
  position: relative; }

#anchor .group_banner {
  position: absolute;
  bottom: 0;
  right: 0;
  width: 195px; }

@media screen and (max-width: 767px) {
  #anchor .group_banner {
    position: static;
    margin: 20px auto 0;
    width: 230px;
    text-align: center; } }
#tsukiso {
  text-align: left;
  margin-top: 0 !important; }
  #tsukiso h2 {
    text-align: center; }
  #tsukiso .logo {
    text-align: center;
    margin: 20px 0; }
    #tsukiso .logo img {
      width: 138px; }
  #tsukiso .mark {
    border: 1px solid #100964;
    margin: 30px 0;
    padding: 30px; }
    @media screen and (max-width: 767px) {
      #tsukiso .mark {
        padding: 20px 20px 5px; } }
    #tsukiso .mark h3 {
      text-align: center;
      padding: 0 0 0;
      margin: 0 0 20px; }
    #tsukiso .mark figure {
      display: flex;
      justify-content: space-between;
      align-items: flex-start;
      padding-top: 20px; }
      @media screen and (max-width: 767px) {
        #tsukiso .mark figure {
          display: block;
          text-align: center;
          padding: 0; } }
      #tsukiso .mark figure img {
        width: 155px; }
      #tsukiso .mark figure figcaption {
        width: calc(100% - 155px - 30px);
        box-sizing: border-box;
        margin-top: -10px; }
        @media screen and (max-width: 767px) {
          #tsukiso .mark figure figcaption {
            width: auto;
            margin-top: 20px;
            text-align: left; } }
      #tsukiso .mark figure strong {
        display: block;
        border-bottom: 1px solid #100964;
        position: relative;
        margin: 0 0 10px; }
        #tsukiso .mark figure strong::before {
          content: "";
          position: absolute;
          bottom: -1px;
          left: 0;
          display: block; }
          @media screen and (max-width: 767px) {
            #tsukiso .mark figure strong::before {
              display: none; } }
        #tsukiso .mark figure strong.hw1::before {
          background-image: linear-gradient(to bottom right, transparent, transparent 48.5%, #0099ff 50%, #0099ff 50%, transparent 51.5%, transparent);
          transform: translate(-100%, 100%);
          width: 60px;
          height: 20px; }
        #tsukiso .mark figure strong.hw2::before {
          background-image: linear-gradient(to top right, transparent, transparent 49.5%, #0099ff 50%, #0099ff 50%, transparent 50.5%, transparent);
          transform: translate(-100%, 0);
          width: 102px;
          height: 111px; }
      #tsukiso .mark figure p {
        font-size: 14px; }
        @media screen and (max-width: 767px) {
          #tsukiso .mark figure p {
            font-size: 13px; } }
      #tsukiso .mark figure b {
        display: block;
        font-size: 15px; }
        @media screen and (max-width: 767px) {
          #tsukiso .mark figure b {
            font-size: 15px; } }
  #tsukiso .link {
    margin: 50px 0 0;
    padding: 0;
    justify-content: space-around;
    display: flex;
    text-align: center; }
    @media screen and (max-width: 767px) {
      #tsukiso .link {
        display: block;
        margin-top: 30px; } }
    #tsukiso .link li {
      margin: 0;
      padding: 0;
      list-style: none; }
      @media screen and (max-width: 767px) {
        #tsukiso .link li {
          margin: 30px 0 0; } }
    #tsukiso .link .logo {
      text-align: center;
      display: flex;
      justify-content: center;
      align-items: center;
      height: 85px;
      margin: 0 0 20px; }
      @media screen and (max-width: 767px) {
        #tsukiso .link .logo {
          height: auto; } }
      #tsukiso .link .logo img {
        width: auto;
        max-height: 85px; }

/*--------------------------------------------------------------------------*/
.form_product_name {
  border-top: 1px solid #ccc;
  border-bottom: 1px solid #ccc;
  text-align: center;
  font-size: 18px;
  font-weight: bold;
  margin: 0 0 60px;
  padding: 20px 0; }
  @media screen and (max-width: 767px) {
    .form_product_name {
      margin: 0 0 40px;
      padding: 15px 0;
      font-size: 17px; } }

.post-type-archive-products h1,
.post-type-archive-products .pagetitle,
.single-products h1,
.single-products .pagetitle,
.page-products_inquiry h1,
.page-products_inquiry .pagetitle {
  text-align: center;
  font-size: 29px;
  padding: 50px 0 0;
  margin: 0;
  font-weight: bold; }
  @media screen and (max-width: 767px) {
    .post-type-archive-products h1,
    .post-type-archive-products .pagetitle,
    .single-products h1,
    .single-products .pagetitle,
    .page-products_inquiry h1,
    .page-products_inquiry .pagetitle {
      font-size: 21px;
      padding: 30px 0 0; } }
.post-type-archive-products #contents,
.single-products #contents,
.page-products_inquiry #contents {
  background: #0099ff;
  color: #fff;
  padding: 0;
  margin: 0;
  overflow: hidden; }
  .post-type-archive-products #contents section,
  .single-products #contents section,
  .page-products_inquiry #contents section {
    padding: 50px 0 0 0; }
    @media screen and (max-width: 767px) {
      .post-type-archive-products #contents section,
      .single-products #contents section,
      .page-products_inquiry #contents section {
        padding: 30px 0; } }
.post-type-archive-products h2,
.single-products h2,
.page-products_inquiry h2 {
  font-size: 15px;
  margin: 0 0 10px;
  padding: 0; }

#products_list .lead {
  text-align: center;
  font-size: 18px;
  margin: 30px 0 50px; }
  @media screen and (max-width: 767px) {
    #products_list .lead {
      text-align: left;
      font-size: 16px;
      margin: 20px 0 30px; } }
#products_list ul {
  margin: 0 0 40px;
  padding: 0;
  display: flex;
  flex-wrap: wrap;
  grid-gap: 50px; }
  @media screen and (max-width: 767px) {
    #products_list ul {
      grid-gap: 30px;
      margin: 0 0 20px; } }
  #products_list ul li {
    margin: 0;
    padding: 0;
    list-style: none;
    width: calc(50% - 25px);
    overflow: hidden; }
    @media screen and (max-width: 767px) {
      #products_list ul li {
        width: 100%; } }
  #products_list ul figure a {
    display: block;
    aspect-ratio: 4/3;
    position: relative;
    background: #fff;
    overflow: hidden; }
    #products_list ul figure a img {
      display: block;
      height: 100%;
      max-width: none;
      width: auto;
      position: absolute;
      top: 0;
      left: 50%;
      transform: translateX(-50%); }
  #products_list ul em {
    font-style: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    display: block;
    font-size: 16px;
    font-weight: bold;
    margin-top: 15px; }
    @media screen and (max-width: 767px) {
      #products_list ul em {
        font-size: 15px; } }
  #products_list ul h2 {
    font-style: normal;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
    font-size: 23px;
    margin: 10px 0; }
    @media screen and (max-width: 767px) {
      #products_list ul h2 {
        font-size: 18px; } }
  #products_list ul p {
    margin: 0;
    overflow: hidden;
    display: -webkit-box;
    -webkit-box-orient: vertical;
    -webkit-line-clamp: 2;
    height: 3.2em; }
    @media screen and (max-width: 767px) {
      #products_list ul p {
        font-size: 13px;
        height: auto; } }
  #products_list ul .btn2 {
    float: right;
    margin: 15px 0 0; }
    #products_list ul .btn2::after {
      transform: rotate(-90deg); }

@media screen and (min-width: 768px) {
  #products_detail {
    padding-bottom: 30px !important; } }
#products_detail article {
  margin: 60px 0 50px;
  display: flex;
  column-gap: 25px; }
  @media screen and (max-width: 767px) {
    #products_detail article {
      margin: 30px 0 30px;
      display: block; } }
#products_detail .photo {
  width: 400px; }
  @media screen and (max-width: 767px) {
    #products_detail .photo {
      width: 100%;
      margin: 0 0 30px; } }
#products_detail #photos {
  display: flex;
  flex-wrap: wrap;
  grid-gap: 10px; }
  #products_detail #photos a {
    display: block;
    position: relative;
    overflow: hidden;
    background: #fff; }
    #products_detail #photos a:nth-of-type(n + 2) {
      width: calc((100% - 30px) / 4);
      aspect-ratio: 1/1; }
      #products_detail #photos a:nth-of-type(n + 2) img {
        max-width: none;
        width: auto;
        height: 100%;
        position: absolute;
        top: 0;
        left: 50%;
        transform: translateX(-50%); }
@media screen and (min-width: 768px) {
  #products_detail .text {
    flex: 1 0 0;
    display: flex;
    flex-direction: column;
    justify-content: space-between; } }
#products_detail .text em {
  font-weight: bold;
  font-style: normal;
  font-size: 20px;
  margin: 0 0 15px; }
#products_detail .text h1 {
  font-size: 26px;
  margin: 0  0 20px;
  padding: 0;
  text-align: left; }
#products_detail .text .sub {
  margin-top: 20px; }
  @media screen and (max-width: 767px) {
    #products_detail .text .sub {
      margin-top: 10px; } }
  #products_detail .text .sub dl {
    display: table;
    border-top: 1px solid #fff;
    margin: 0;
    padding: 0;
    width: 100%; }
    #products_detail .text .sub dl > div {
      display: table-row; }
    #products_detail .text .sub dl dt, #products_detail .text .sub dl dd {
      display: table-cell;
      border-bottom: 1px solid #fff; }
    #products_detail .text .sub dl dt {
      white-space: nowrap;
      font-weight: bold;
      padding: 10px; }
    #products_detail .text .sub dl dd {
      padding: 10px; }

.btn4 {
  -webkit-appearance: none;
  background: -webkit-linear-gradient(left, #ad0c18 0%, #d70c18 50%, #ad0c18 100%);
  background: -moz-linear-gradient(left, #ad0c18 0%, #d70c18 50%, #ad0c18 100%);
  background: linear-gradient(to right, #ad0c18 0%, #d70c18 50%, #ad0c18 100%);
  color: #fff !important;
  text-decoration: none !important;
  display: block;
  margin: 0 auto;
  text-align: center;
  font-size: 17px;
  border-radius: 10px;
  width: 272px;
  padding: 10px 0;
  border: none;
  font-weight: bold;
  outline: 0;
  transition: all 0.3s ease 0s; }

.btn4:hover {
  opacity: 0.8; }

#contents {
  overflow: hidden; }

figure.lineup {
  text-align: center;
  position: relative; }
  figure.lineup::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 50%;
    width: 100vw;
    background: url(../images/top/lineup_bg.png) repeat-x top left;
    transform: translateX(-50%);
    height: 100%; }
    @media screen and (max-width: 767px) {
      figure.lineup::before {
        display: none; } }
  figure.lineup img {
    position: relative; }

#recruit_mainvisual {
  position: relative;
  margin: 0 0 50px;
  overflow: hidden; }
  @media screen and (max-width: 767px) {
    #recruit_mainvisual {
      margin: 0 0 30px; } }
  #recruit_mainvisual .txt {
    position: absolute;
    top: 50%;
    left: 0;
    margin: 0;
    text-align: center;
    width: 100%;
    z-index: 100;
    color: #fff;
    font-weight: bold;
    font-size: 24px;
    transform: translateY(-50%);
    text-shadow: 0 0 5px rgba(0, 0, 0, 0.6); }
    @media screen and (max-width: 767px) {
      #recruit_mainvisual .txt {
        font-size: 5.5vw;
        top: 55%;
        transform: translateX(0.3em); } }
  #recruit_mainvisual ul {
    margin: 0;
    padding: 0; }
    #recruit_mainvisual ul li {
      margin: 0;
      padding: 0;
      list-style: none; }
      #recruit_mainvisual ul li img {
        width: 100%;
        height: 658px;
        object-fit: cover; }
        @media screen and (max-width: 767px) {
          #recruit_mainvisual ul li img {
            height: auto; } }

#privacy {
  border-right: 30px solid #0099ff;
  border-left: 30px solid #0099ff;
  overflow: hidden;
  padding-bottom: 60px; }
  @media screen and (max-width: 767px) {
    #privacy {
      border-right-width: 10px;
      border-left-width: 10px;
      padding-bottom: 30px; } }
  #privacy h1 {
    text-align: center;
    color: #100964;
    margin: 2em 0; }
  #privacy h2 {
    border-bottom: 1px solid #333;
    margin: 2em 0 2em; }
  #privacy h3 {
    margin: 2em 0 0; }
  #privacy p {
    margin: 0; }
  #privacy ol {
    margin: 0;
    padding: 0; }
    #privacy ol li {
      margin: 0;
      padding: 0;
      list-style: none; }
    #privacy ol em {
      display: inline-block;
      text-indent: 0;
      white-space: nowrap;
      font-style: normal; }
    #privacy ol.type1 > li {
      padding-left: 1.5em;
      text-indent: -1.5em; }
      #privacy ol.type1 > li:first-child {
        padding-left: 0;
        text-indent: 0; }
      #privacy ol.type1 > li > em {
        width: 1.5em; }
    #privacy ol.type2 > li {
      padding-left: 2em;
      text-indent: -2em; }
      #privacy ol.type2 > li > em {
        width: 2em; }
    #privacy ol.type3 > li {
      padding-left: 1.5em;
      text-indent: -1.5em; }
      #privacy ol.type3 > li > em {
        width: 1.5em; }
    #privacy ol.type4 > li {
      padding-left: 1em;
      text-indent: -1em; }
      #privacy ol.type4 > li > em {
        width: 1em; }
  #privacy .note {
    margin: 0 0 2em; }
  #privacy .date {
    text-align: right; }

#mainvisual .contact.pc_only {
  background: #2c308e;
  color: #fff;
  text-align: center;
  border-radius: 15px;
  box-shadow: 0 2px 8px 0px rgba(0, 0, 0, 0.3);
  width: 405px;
  padding: 10px 20px;
  float: right;
  font-weight: bold;
  font-size: 13px;
  box-sizing: border-box;
  position: absolute;
  bottom: 20px;
  right: 20px;
  z-index: 140; }
  #mainvisual .contact.pc_only h3 {
    padding: 0 30px;
    margin: 0 0 5px;
    line-height: 0.1; }
  #mainvisual .contact.pc_only .tel {
    margin: 5px 0 0 0; }

#news .inner {
  position: relative; }
#news h2 {
  float: none;
  text-align: center;
  width: auto;
  font-size: 22px; }
#news a.golist {
  position: absolute;
  top: 0;
  right: 0; }
  @media screen and (max-width: 767px) {
    #news a.golist {
      position: static;
      display: table;
      margin: 0 0 32px auto; } }
#news ul.newslist {
  margin: 0 0 40px;
  padding: 0;
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-gap: 32px; }
  @media screen and (max-width: 767px) {
    #news ul.newslist {
      margin: 24px 0 16px;
      grid-template-columns: 1fr;
      grid-gap: 16px; } }
  #news ul.newslist li {
    margin: 0;
    padding: 0;
    list-style: none; }
  #news ul.newslist a {
    text-decoration: none; }
    @media screen and (max-width: 767px) {
      #news ul.newslist a {
        display: grid;
        grid-template-columns: 100px 1fr;
        grid-gap: 16px;
        align-items: center;
        line-height: 1.5; } }
    #news ul.newslist a:hover {
      opacity: .7; }
  #news ul.newslist .time {
    display: block;
    margin-top: 10px; }
    @media screen and (max-width: 767px) {
      #news ul.newslist .time {
        margin: 0; } }
  #news ul.newslist img {
    aspect-ratio: 3/2;
    object-fit: cover;
    align-self: flex-start; }

.page-recruitinterview-child #recruit_pagevisual {
  margin-bottom: 0; }

#interview {
  margin-top: 0; }
  #interview .title {
    margin: 0;
    background: no-repeat center top / cover; }
    #interview .title.driver {
      background: url(../images/recruit/interview/driver_main.jpg) no-repeat center top/cover; }
    #interview .title.clerk {
      background: url(../images/recruit/interview/clerk_main.jpg) no-repeat center top/cover; }
    #interview .title.chief {
      background: url(../images/recruit/interview/chief_main.jpg) no-repeat center top/cover; }
  #interview article .prof {
    margin: -40px 0 50px;
    display: grid;
    grid-template-columns: 190px 1fr 130px;
    grid-gap: 10px; }
    @media screen and (max-width: 767px) {
      #interview article .prof {
        position: relative;
        display: block;
        margin: 20px 0 30px; } }
    #interview article .prof .label {
      padding: 120px 0 0; }
      @media screen and (max-width: 767px) {
        #interview article .prof .label {
          padding: 0;
          width: 120px; } }
    #interview article .prof .text {
      padding: 150px 0 0; }
      @media screen and (max-width: 767px) {
        #interview article .prof .text {
          padding: 0; } }
      #interview article .prof .text h2 {
        color: #0099ff;
        font-size: 32px;
        margin: 0 0 30px;
        line-height: 1.4; }
        @media screen and (max-width: 767px) {
          #interview article .prof .text h2 {
            font-size: 21px;
            margin: 20px 0 !important; } }
      #interview article .prof .text strong {
        font-size: 19px;
        display: block;
        margin: 0 0 20px; }
        @media screen and (max-width: 767px) {
          #interview article .prof .text strong {
            font-size: 18px;
            margin: 0 0 10px; } }
      #interview article .prof .text p {
        font-size: 15px; }
        @media screen and (max-width: 767px) {
          #interview article .prof .text p {
            font-size: 14px; } }
    @media screen and (max-width: 767px) {
      #interview article .prof figure {
        position: absolute;
        bottom: 0;
        right: 20px;
        width: auto;
        height: 280px; }
        #interview article .prof figure img {
          width: 100%;
          height: 100%; } }
  #interview article h3 {
    margin: 0;
    color: #0099ff; }
  #interview article .box1 {
    display: grid;
    grid-template-columns: 50% 1fr;
    grid-template-rows: auto 1fr;
    grid-gap: 20px 50px;
    margin: 0  0 50px; }
    @media screen and (max-width: 767px) {
      #interview article .box1 {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        grid-gap: 10px;
        margin: 0  0 30px; } }
    #interview article .box1 h3 {
      grid-column: 1 / 3; }
      @media screen and (max-width: 767px) {
        #interview article .box1 h3 {
          grid-column: auto; } }
  #interview article .box2 {
    display: grid;
    grid-template-columns: 1fr 50%;
    grid-template-rows: auto 1fr;
    grid-gap: 20px 40px;
    margin: 0  0 50px; }
    @media screen and (max-width: 767px) {
      #interview article .box2 {
        grid-template-columns: 1fr;
        grid-template-rows: auto;
        grid-gap: 10px;
        margin: 0  0 30px; } }
    #interview article .box2 h3 {
      grid-column: 1/2; }
      @media screen and (max-width: 767px) {
        #interview article .box2 h3 {
          grid-column: auto; } }
    #interview article .box2 figure {
      grid-column: 2/3;
      grid-row: 1 / 3; }
      @media screen and (max-width: 767px) {
        #interview article .box2 figure {
          grid-column: auto;
          grid-row: auto; } }
    #interview article .box2 .text {
      grid-column: 1/2; }
      @media screen and (max-width: 767px) {
        #interview article .box2 .text {
          grid-column: auto; } }
  #interview article .box3 {
    display: grid;
    grid-gap: 20px;
    margin: 0  0 50px; }
    @media screen and (max-width: 767px) {
      #interview article .box3 {
        margin: 0 0 30px;
        grid-gap: 10px; } }
  #interview .other {
    display: grid;
    grid-template-columns: 340px 340px;
    justify-content: center;
    grid-gap: 70px;
    margin-top: 100px; }
    @media screen and (max-width: 767px) {
      #interview .other {
        grid-template-columns: 245px;
        grid-gap: 30px;
        margin: 50px 0 30px; } }

#outline h1 {
  margin-bottom: 1em; }

#message {
  background: #fff;
  color: #333;
  padding: 50px 0 !important; }
  #message h2 {
    font-size: 28px;
    text-align: center;
    color: #100964; }
    @media screen and (max-width: 767px) {
      #message h2 {
        font-size: 25px; } }
  #message .message_main {
    margin: 30px 0 50px; }
    @media screen and (max-width: 767px) {
      #message .message_main {
        margin: 20px -50px 30px; } }
  #message p {
    max-width: 600px;
    margin: 0 auto;
    font-size: 16px;
    line-height: 2; }
    @media screen and (max-width: 767px) {
      #message p {
        font-size: 15px; } }
  #message .text {
    position: relative;
    margin: 0 0 30px; }
    @media screen and (max-width: 767px) {
      #message .text {
        margin: 0 0 20px; } }
    #message .text p {
      margin-top: 30px; }
      @media screen and (max-width: 767px) {
        #message .text p {
          margin-top: 20px; } }
    #message .text .message_sub {
      position: absolute;
      bottom: 0;
      right: 120px;
      width: 80px; }
      @media screen and (max-width: 767px) {
        #message .text .message_sub {
          display: none; } }

#oath {
  background: #0099ff; }
  #oath h2 {
    font-size: 28px;
    text-align: center; }
    @media screen and (max-width: 767px) {
      #oath h2 {
        font-size: 25px; } }
  #oath p {
    font-size: 17px;
    border: 1px solid #fff;
    padding: 30px;
    text-align: center;
    max-width: 600px;
    margin: 0 auto; }

#recruit_pagevisual .small {
  font-size: 25px;
  display: block;
  margin: 0 0 10px; }
  @media screen and (max-width: 767px) {
    #recruit_pagevisual .small {
      font-size: 16px; } }

#reason2025 {
  overflow: hidden; }
  #reason2025 .anchor {
    margin: 30px 0 0;
    padding: 0;
    display: grid;
    grid-template-columns: repeat(3, 1fr);
    grid-gap: 30px 50px; }
    @media screen and (max-width: 767px) {
      #reason2025 .anchor {
        grid-template-columns: repeat(2, 1fr);
        grid-gap: 10px;
        margin: 0; } }
    #reason2025 .anchor li {
      margin: 0;
      padding: 0;
      list-style: none; }
      @media screen and (max-width: 767px) {
        #reason2025 .anchor li:nth-of-type(2) i, #reason2025 .anchor li:nth-of-type(6) i {
          margin: 5px 0; }
        #reason2025 .anchor li:nth-of-type(2) img, #reason2025 .anchor li:nth-of-type(6) img {
          height: 24px; } }
    #reason2025 .anchor a {
      background: rgba(86, 176, 255, 0.32);
      font-weight: bold;
      text-decoration: none;
      font-size: 16px;
      text-align: center;
      display: block;
      line-height: 1.2;
      padding: 0 0 0.3em;
      height: 100%;
      box-sizing: border-box; }
      #reason2025 .anchor a:hover {
        background: rgba(86, 176, 255, 0.5);
        opacity: 1; }
      #reason2025 .anchor a::after {
        content: "▼";
        color: #0099FF;
        display: block; }
      #reason2025 .anchor a em {
        background: #0099FF;
        color: #fff;
        font-style: normal;
        font-size: 20px;
        display: flex;
        padding: 0.1em 0;
        justify-content: center;
        align-items: center;
        grid-gap: 0.2em; }
        @media screen and (max-width: 767px) {
          #reason2025 .anchor a em {
            font-size: 13px; } }
        #reason2025 .anchor a em span {
          font-size: 27px; }
          @media screen and (max-width: 767px) {
            #reason2025 .anchor a em span {
              font-size: 18px; } }
      #reason2025 .anchor a i {
        display: block;
        margin: 10px 0; }
      #reason2025 .anchor a img {
        height: 56px;
        width: auto; }
        @media screen and (max-width: 767px) {
          #reason2025 .anchor a img {
            height: 34px; } }
  #reason2025 .lead {
    text-align: center; }
    @media screen and (max-width: 767px) {
      #reason2025 .lead {
        text-align: left; } }
  #reason2025 .reason_section {
    padding: 60px 0 0; }
    @media screen and (max-width: 767px) {
      #reason2025 .reason_section {
        padding: 30px 0 0; } }
    #reason2025 .reason_section h2 {
      position: relative;
      color: #fff;
      font-size: 29px;
      display: flex;
      align-items: center;
      grid-gap: 1em;
      padding: 0.3em 0;
      margin: 0  0 40px; }
      @media screen and (max-width: 767px) {
        #reason2025 .reason_section h2 {
          font-size: 20px;
          display: block;
          margin: 0 0 16px; } }
      #reason2025 .reason_section h2 em {
        font-style: normal;
        font-size: 17px;
        display: flex;
        padding: 0.1em 0;
        justify-content: center;
        align-items: center;
        grid-gap: 0.2em; }
        @media screen and (max-width: 767px) {
          #reason2025 .reason_section h2 em {
            font-size: 13px;
            justify-content: flex-start; } }
        #reason2025 .reason_section h2 em span {
          font-size: 23px; }
          @media screen and (max-width: 767px) {
            #reason2025 .reason_section h2 em span {
              font-size: 18px; } }
      #reason2025 .reason_section h2::before {
        content: "";
        position: absolute;
        top: 0;
        left: 50%;
        height: 100%;
        width: 100vw;
        background: #56B0FF;
        display: block;
        transform: translateX(-50%);
        z-index: -1; }
    #reason2025 .reason_section .grid {
      display: grid;
      grid-template-columns: 345px 1fr;
      grid-gap: 30px; }
      @media screen and (max-width: 767px) {
        #reason2025 .reason_section .grid {
          grid-template-columns: 1fr;
          grid-gap: 16px; } }
      @media screen and (min-width: 768px) {
        #reason2025 .reason_section .grid .text p {
          line-height: 2.5; } }
      #reason2025 .reason_section .grid .text ul {
        display: flex;
        flex-wrap: wrap;
        grid-gap: 5px 10px;
        margin: 20px 0 0;
        padding: 18px;
        background: linear-gradient(110deg, #fff, #56b0ff); }
        #reason2025 .reason_section .grid .text ul li {
          margin: 0;
          padding: 0;
          list-style: none;
          font-size: 13px; }
  #reason2025 .reason_section_sub {
    border-top: 1px dashed #56B0FF;
    border-bottom: 1px dashed #56B0FF;
    margin-top: 60px;
    padding: 20px 0; }
    @media screen and (max-width: 767px) {
      #reason2025 .reason_section_sub {
        margin: 30px 0 0; } }
    #reason2025 .reason_section_sub .grid {
      display: grid;
      grid-template-columns: 219px 1fr;
      grid-template-rows: auto auto;
      grid-gap: 10px 20px; }
      @media screen and (max-width: 767px) {
        #reason2025 .reason_section_sub .grid {
          grid-gap: 10px;
          grid-template-columns: 1fr;
          grid-template-rows: auto; } }
      @media screen and (min-width: 768px) {
        #reason2025 .reason_section_sub .grid figure {
          grid-column: 1/2;
          grid-row: 1/3; } }
      @media screen and (max-width: 767px) {
        #reason2025 .reason_section_sub .grid figure {
          width: 220px;
          margin: 0 auto; } }
      #reason2025 .reason_section_sub .grid h2 {
        font-size: 26px;
        line-height: 1;
        color: #56B0FF;
        margin: 0;
        padding: 0; }
        @media screen and (min-width: 768px) {
          #reason2025 .reason_section_sub .grid h2 {
            grid-column: 2/3;
            grid-row: 1/2; } }
        @media screen and (max-width: 767px) {
          #reason2025 .reason_section_sub .grid h2 {
            font-size: 20px; } }
      @media screen and (min-width: 768px) {
        #reason2025 .reason_section_sub .grid .text {
          grid-column: 2/3;
          grid-row: 2/3; } }
      #reason2025 .reason_section_sub .grid .text p {
        margin: 0; }

#top_reason h2 small {
  font-size: 80%;
  display: block; }
#top_reason p {
  text-align: center;
  font-size: 17px;
  margin: 0 0 20px; }
  @media screen and (max-width: 767px) {
    #top_reason p {
      font-size: 15px;
      text-align: left; } }

#top_interview::after {
  display: none; }
#top_interview .inner {
  padding-bottom: 50px; }
