@charset "UTF-8";
/* Global CSS */
@import url(//use.fontawesome.com/releases/v5.6.1/css/all.css);
@import url("https://fonts.googleapis.com/css2?family=M+PLUS+1p:wght@400;500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Roboto:wght@500;700&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;400;500&family=Noto+Serif+JP:wght@300;400;600");
@import url("https://fonts.googleapis.com/css2?family=BIZ+UDPGothic:wght@400;700&display=swap");
/* リセットCSS */
body,
div,
dl,
dt,
dd,
ul,
ol,
li,
h1,
h2,
h3,
h4,
h5,
h6,
pre,
code,
form,
fieldset,
legend,
input,
textarea,
p,
blockquote,
th,
td {
  margin: 0;
  padding: 0; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

fieldset,
img {
  border: 0; }

address,
caption,
cite,
code,
dfn,
em,
strong,
th,
var,
i {
  font-style: normal;
  font-weight: normal; }

ol,
ul {
  list-style: none; }

caption,
th {
  text-align: left; }

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: normal; }

q:before,
q:after {
  content: ""; }

abbr,
acronym {
  border: 0;
  font-variant: normal; }

sup {
  vertical-align: text-top; }

sub {
  vertical-align: text-bottom; }

input,
textarea,
select {
  font-family: inherit;
  font-size: inherit;
  font-weight: inherit;
  * font-size: 100%;
  -webkit-appearance: none;
  border-radius: 0; }

* {
  box-sizing: border-box; }

html,
body {
  height: 100%; }

.logo-in {
  overflow: hidden;
  display: inline-block; }

.logo-in_inner {
  display: inline-block; }

.containner_box {
  width: 100%;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10000;
  background: #fff; }
  .containner_box .content_section.login {
    width: 60%;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
    text-align: center;
    font-size: 1.26vw; }
    @media (min-width: 1367px) {
      .containner_box .content_section.login {
        font-size: 16px; } }
    @media (max-width: 428px) {
      .containner_box .content_section.login {
        width: 90%; }
        .containner_box .content_section.login p {
          font-size: 1.098vw; } }
    @media (max-width: 428px) and (max-width: 428px) {
      .containner_box .content_section.login p {
        font-size: 3.271vw;
        text-align: left; } }

    .containner_box .content_section.login .login-info {
      margin-bottom: 3em; }
    .containner_box .content_section.login .form-box {
      max-width: 400px;
      margin-left: auto;
      margin-right: auto; }
      @media (max-width: 428px) {
        .containner_box .content_section.login .form-box {
          max-width: auto;
          width: 100%; } }
    .containner_box .content_section.login strong {
      display: block;
      font-size: 1.611vw;
      font-weight: 700;
      margin-bottom: 1em; }
      @media (min-width: 1367px) {
        .containner_box .content_section.login strong {
          font-size: 22px; } }
      @media (max-width: 428px) {
        .containner_box .content_section.login strong {
          font-size: 5.14vw; } }
    .containner_box .content_section.login dl {
      text-align: left; }
      .containner_box .content_section.login dl dd {
        margin-bottom: 1em; }
    .containner_box .content_section.login input {
      width: 100%;
      padding: 10px;
      border: 0;
      background: #DDD; }
      .containner_box .content_section.login input.submit {
        width: auto;
        margin-bottom: 1em; }

body {
  font-size: 62.5%;
  line-height: 2.2;
  font-family: 'M PLUS 1p', "Yu Gothic", YuGothic, "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  color: #231815;
  -webkit-font-smoothing: antialiased;
  -webkit-text-size-adjust: 100%; }

img {
  width: 100%;
  height: auto;
  line-height: 0; }

a {
  text-decoration: none;
  color: #333;
  -webkit-font-smoothing: antialiased; }

.center {
  text-align: center; }

@media (max-width: 428px) {
  .pc {
    display: none !important; } }

.sp {
  display: none; }
  @media (max-width: 428px) {
    .sp {
      display: block; } }

.edit_button {
  text-align: right;
  font-size: 14px; }
  .edit_button:before {
    display: block;
    content: '　';
    clear: both; }
  .edit_button a {
    color: #0067BF;
    text-decoration: underline; }
    .edit_button a:hover {
      text-decoration: none; }

header {
  margin: 0 0 0 5.857vw;
  max-width: 1366px;
  display: flex;
  justify-content: space-between;
  align-items: flex-start; }
  @media (min-width: 1366px) {
    header {
      max-width: 1200px;
      margin: 0 auto; } }
  @media (max-width: 428px) {
    header {
      margin: 0 auto 0 5.857vw;
      width: 85%; } }
  header h1,
  header .logo {
    display: flex;
    align-items: flex-end;
    margin-top: 2.2vw; }
    @media (min-width: 1366px) {
      header h1,
      header .logo {
        margin-top: 30px; } }
    @media (max-width: 428px) {
      header h1,
      header .logo {
        margin-bottom: 1em; } }
    header h1 strong,
    header .logo strong {
      width: 15.227vw;
      padding-bottom: 0.659vw; }
      @media (min-width: 1366px) {
        header h1 strong,
        header .logo strong {
          width: 208px;
          padding-bottom: 9px; } }
      @media (max-width: 428px) {
        header h1 strong,
        header .logo strong {
          width: 26.168vw; } }
    header h1 span,
    header .logo span {
      width: 6.589vw;
      margin-left: 5%; }
      @media (min-width: 1366px) {
        header h1 span,
        header .logo span {
          width: 90px; } }
      @media (max-width: 428px) {
        header h1 span,
        header .logo span {
          width: 11.916vw; } }
  header dl {
    display: flex;
    z-index: 100; }
    @media (min-width: 1366px) {
      header dl {
        margin-right: -5%; } }
    @media (max-width: 428px) {
      header dl {
        display: none; } }
    header dl a,
    header dl .slidedown {
      display: block;
      border-left: 1px solid #EAE9E5;
      color: #333;
      text-decoration: none;
      width: 10.249vw;
      background: #fff;
      border-bottom: 3px solid #fff;
      will-change: filter;
      transition: background 0.3s, border 0.3s; }
      header dl a.last,
      header dl .slidedown.last {
        border-right: 1px solid #EAE9E5; }
      @media (min-width: 1366px) {
        header dl a,
        header dl .slidedown {
          width: 140px; } }
      header dl a:hover, header dl a:active,
      header dl .slidedown:hover,
      header dl .slidedown:active {
        background: #F8F8F8;
        border-bottom: 3px solid #D7344B;
        cursor: pointer; }
      header dl a.active,
      header dl .slidedown.active {
        border-bottom: 3px solid #D7344B;
        cursor: pointer; }
    header dl a.menu {
      display: flex;
      flex-direction: column;
      height: 100%; }
    header dl dt {
      position: relative; }
      header dl dt.insta_icon {
        display: flex; }
        header dl dt.insta_icon a {
          display: block;
          width: calc((87/1365)*100vw);
          padding: calc((58/1366)*100vw) 0 0 calc((10/1366)*100vw); }
          @media (min-width: 1366px) {
            header dl dt.insta_icon a {
              width: 87px;
              padding: 58px 0 0 10px; } }
          header dl dt.insta_icon a:hover {
            background: none;
            border-bottom: transparent; }
          header dl dt.insta_icon a img {
            display: block;
            width: calc((30/1365)*100vw);
            margin: auto;
            transition: opacity 0.3s ease; }
            @media (min-width: 1366px) {
              header dl dt.insta_icon a img {
                width: 30px; } }
            header dl dt.insta_icon a img:hover {
              opacity: 0.7; }
          header dl dt.insta_icon a span {
            padding: 0;
            text-align: center; }
      header dl dt strong {
        font-size: 1.171vw;
        font-weight: 500;
        letter-spacing: 0.220vw;
        position: relative;
        display: block;
        line-height: 1;
        padding: 4.832vw 0 0 1.464vw; }
        header dl dt strong.arrow:after {
          content: '\f107';
          font-family: "Font Awesome 5 Free";
          font-weight: 600;
          color: #D7344B;
          margin-left: 0.5vw; }
        @media (min-width: 1366px) {
          header dl dt strong {
            font-size: 1.6em;
            letter-spacing: 0.15em;
            padding: 66px 0 0 20px; } }
        header dl dt strong.letter_space {
          letter-spacing: 0; }
      header dl dt span {
        font-size: 0.878vw;
        color: #A8A8A8;
        display: block;
        margin-top: 0.293vw;
        padding: 0.5vw 0 1.245vw 1.464vw;
        flex-grow: 1;
        line-height: 1; }
        @media (min-width: 1366px) {
          header dl dt span {
            font-size: 1.2em;
            padding: 7px 0 20px 20px; } }
      header dl dt ul {
        display: none;
        width: 100%;
        opacity: 1;
        position: absolute;
        font-size: 1.025vw;
        font-weight: 500;
        background: #F8F8F8;
        padding: 1.464vw 0 1.464vw 1.464vw;
        top: calc((135/1365)*100vw); }
        @media (min-width: 1366px) {
          header dl dt ul {
            font-size: 1.4em;
            padding: 20px 0 20px 15px;
            top: 141px;
            z-index: -1; } }
        header dl dt ul li + li a {
          padding-top: 0.5em; }
        header dl dt ul li a {
          border: none;
          width: 100%;
          background: none;
          transition: color 0.3s;
          padding-left: 1.2em;
          text-indent: -1.2em; }
          header dl dt ul li a:before {
            content: '\f054';
            font-family: "Font Awesome 5 Free";
            font-weight: 600;
            font-size: 80%;
            margin-right: 0.2vw; }
          header dl dt ul li a:hover, header dl dt ul li a.active {
            color: #D7344B;
            border: none;
            background: none; }
          header dl dt ul li a.spaceing {
            letter-spacing: -.05em; }
  header a.insta_sp {
    display: none;
    width: calc((48/428)*100vw);
    transition: opacity 0.3s ease;
    line-height: 1.5;
    color: #A8A8A8; }
    @media (max-width: 428px) {
      header a.insta_sp {
        display: block;
        position: absolute;
        top: calc((10/428)*100vw);
        right: calc((70/428)*100vw); }
        header a.insta_sp img {
          display: block;
          margin: auto;
          width: calc((30/428)*100vw); } }
    header a.insta_sp:hover {
      opacity: 0.7; }

.gmenu_sp_box {
  display: none; }
  @media (max-width: 428px) {
    .gmenu_sp_box {
      display: block;
      position: absolute;
      right: 0;
      top: 0;
      z-index: 100; }
      .gmenu_sp_box .gmenu_icon {
        right: 0;
        top: 0;
        position: fixed;
        width: 11.682vw; } }

@media (max-width: 428px) {
  nav.gmenu_sp_openbox {
    font-size: 3.738vw;
    position: fixed;
    top: -120vh;
    left: 0;
    z-index: 100;
    width: 100%;
    height: 100vh;
    height: 100dvh;
    background: #003461;
    background-size: 100% auto;
    transition: all 0.3s;
    will-change: transform, position; }
    nav.gmenu_sp_openbox.active {
      top: 0; }
    nav.gmenu_sp_openbox a {
      color: #fff; }
      nav.gmenu_sp_openbox a.close_icon {
        display: block;
        width: 11.682vw;
        position: fixed;
        right: 0; }
    nav.gmenu_sp_openbox .menu_box {
      width: 100%;
      top: 18vw;
      left: 0;
      right: 0;
      bottom: 0;
      margin: 0 auto;
      padding: 0 10% 10%;
      color: #fff;
      position: absolute;
      overflow-y: scroll; }
      nav.gmenu_sp_openbox .menu_box ul {
        width: 100%;
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap; }
        nav.gmenu_sp_openbox .menu_box ul li {
          width: 43%;
          margin-bottom: 10%;
          text-align: center; }
          nav.gmenu_sp_openbox .menu_box ul li strong {
            display: block;
            font-weight: 600;
            background: rgba(255, 255, 255, 0.2);
            padding: 1vw; }
            nav.gmenu_sp_openbox .menu_box ul li strong a {
              display: block;
              background: url("../images/white_arrow.png") no-repeat 95% 55%;
              background-size: 7px auto;
              text-align: left;
              padding-left: 10%; }
          nav.gmenu_sp_openbox .menu_box ul li ul {
            display: block;
            margin-top: 10%; }
            nav.gmenu_sp_openbox .menu_box ul li ul li {
              width: 100%;
              font-size: 3.738vw;
              text-align: left;
              margin-bottom: 10%; }
              nav.gmenu_sp_openbox .menu_box ul li ul li:last-child {
                margin-bottom: 0; }
              nav.gmenu_sp_openbox .menu_box ul li ul li a {
                color: #fff;
                text-decoration: none; }
                nav.gmenu_sp_openbox .menu_box ul li ul li a:hover {
                  text-decoration: none; }
                nav.gmenu_sp_openbox .menu_box ul li ul li a:before {
                  content: '　';
                  display: inline-block;
                  background: url("../images/white_arrow.png") no-repeat left 55%;
                  background-size: 50% auto; }
      nav.gmenu_sp_openbox .menu_box .contact_box {
        border-top: 1px solid rgba(255, 255, 255, 0.2);
        padding-top: 7%;
        margin-top: 7%; }
        nav.gmenu_sp_openbox .menu_box .contact_box strong {
          display: block;
          font-size: 7.009vw;
          font-weight: 500;
          margin-bottom: 3%; }
          nav.gmenu_sp_openbox .menu_box .contact_box strong span {
            font-size: 3.738vw;
            letter-spacing: 0.1em; }
            nav.gmenu_sp_openbox .menu_box .contact_box strong span em {
              font-size: 3.505vw;
              font-style: normal;
              color: #D7344B;
              margin: 0 2%; }
        nav.gmenu_sp_openbox .menu_box .contact_box img {
          box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.2); } }

section {
  max-width: 1366px;
  padding: 5.857vw;
  padding-bottom: 0;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  font-size: 1.318vw; }
  @media (min-width: 1366px) {
    section {
      max-width: 1200px;
      padding: 80px 0 0;
      font-size: 18px; } }
  @media (max-width: 428px) {
    section {
      width: 85%;
      padding: 0;
      margin-bottom: 10%;
      font-size: 3.738vw; } }
  section.right_full {
    margin-right: auto;
    margin-left: auto;
    margin-top: 8%; }
  section.mw_box {
    max-width: 100%;
    background: #0f0f0f;
    background: -moz-linear-gradient(top, #0f0f0f 0%, #6f6f6f 100%);
    background: -webkit-linear-gradient(top, #0f0f0f 0%, #6f6f6f 100%);
    background: linear-gradient(to bottom, #0f0f0f 0%, #6f6f6f 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0f0f0f', endColorstr='#6f6f6f', GradientType=0);
    margin-top: 5.857vw;
    padding: 5.857vw; }
    @media (min-width: 1366px) {
      section.mw_box {
        padding-top: 80px;
        padding-bottom: 80px; } }
    @media (max-width: 428px) {
      section.mw_box {
        width: 100%;
        padding: 5.857vw 7.5%; } }
  section.csr_box {
    width: 100%;
    max-width: 100%;
    background: url("../../top/csr_bg.png") no-repeat center center;
    background-size: cover;
    padding-top: 18.009vw;
    padding-bottom: 18.009vw;
    margin-top: 5.857vw; }
    @media (min-width: 1366px) {
      section.csr_box {
        padding-top: 250px;
        padding-bottom: 250px; } }
    @media (max-width: 428px) {
      section.csr_box {
        background-size: auto 120%;
        background-position: left bottom; } }
  section.recruit_box {
    margin-top: 10vw;
    margin-bottom: 10vw; }
    @media (min-width: 1366px) {
      section.recruit_box {
        margin-top: 140px;
        margin-bottom: 140px; } }
    @media (max-width: 428px) {
      section.recruit_box {
        width: 92.5%;
        margin-right: 0; } }
  section.link {
    padding-top: 0; }

.button {
  display: inline-block;
  padding: 10px 20px;
  padding-right: 5vw;
  font-size: 1.318vw;
  white-space: nowrap;
  background: url("../images/red_arrow.png") no-repeat 90% center;
  background-size: 1.294vw auto; }
  @media (min-width: 1366px) {
    .button {
      font-size: 18px;
      background-size: 17px auto;
      padding-right: 70px; } }
  @media (max-width: 428px) {
    .button {
      font-size: 3.738vw;
      padding-right: 15vw;
      background-size: 3.972vw auto; } }
  .button:hover, .button:active {
    background-position: 92% center; }
  .button.white {
    background-color: #fff;
    box-shadow: rgba(0, 0, 0, 0.1) 10px 10px 20px;
    transition: all 0.3s ease;
    position: relative; }
    .button.white:after {
      content: ' ';
      position: absolute;
      bottom: 0;
      left: 0;
      width: 0px;
      height: 2px;
      background: #D7344B;
      transition: all .3s ease;
      opacity: 0; }
    @media (any-hover: hover) {
      .button.white:hover, .button.white:active {
        color: #003461; }
        .button.white:hover:after, .button.white:active:after {
          transform: scale(1, 1);
          opacity: 1;
          width: 100%; } }
  @media (max-width: 428px) {
    .button.pickup {
      margin-top: 20%; } }
  .button.green {
    font-size: 2.196vw;
    color: #fff;
    font-weight: 500;
    letter-spacing: 0.1em;
    padding-left: 3.367vw;
    padding-right: 16.105vw;
    background: url("../images/white_arrow02.png") no-repeat 85% center, rgba(42, 206, 168, 0.7);
    background-size: 2.050vw auto;
    border: 2px solid rgba(255, 255, 255, 0.7);
    transition: all 0.3s ease; }
    @media (max-width: 428px) {
      .button.green {
        background-size: 4.106vw auto;
        padding-right: 30vw; } }
    .button.green:hover, .button.green:active {
      background: url("../images/white_arrow02.png") no-repeat 87% center, rgba(42, 206, 168, 0.9);
      background-size: 2.050vw auto;
      border: 2px solid white; }
      @media (max-width: 428px) {
        .button.green:hover, .button.green:active {
          background-size: 4.106vw auto; } }
    @media (min-width: 1366px) {
      .button.green {
        font-size: 30px;
        padding-left: 46px;
        padding-right: 220px; } }
    @media (max-width: 428px) {
      .button.green {
        font-size: 4.673vw;
        padding-top: 1vw;
        padding-bottom: 1vw;
        margin-top: 2vw; } }

.flex02 {
  display: flex;
  justify-content: space-between;
  margin-bottom: 5%; }
  @media (max-width: 428px) {
    .flex02 {
      display: block;
      margin-bottom: 10%; } }
  .flex02 div.box {
    width: 46.66%; }
    @media (max-width: 428px) {
      .flex02 div.box {
        width: 100%; } }
    @media (max-width: 428px) {
      .flex02 div.box.margin01 {
        margin-top: 10%; } }
    .flex02 div.box.wide01 {
      width: 50%; }
      @media (max-width: 428px) {
        .flex02 div.box.wide01 {
          width: 100%; } }
    .flex02 div.box.wide02 {
      width: 45%; }
      @media (max-width: 428px) {
        .flex02 div.box.wide02 {
          width: 100%; } }

.movie_box {
  margin: 0 auto 5%; }
  @media (max-width: 428px) {
    .movie_box {
      margin-bottom: 5%; } }
  .movie_box .slick-list {
    width: 100%;
    line-height: 0;
    border-bottom: 5px solid #D7344B; }
    .movie_box .slick-list video {
      width: 100%;
      height: auto;
      display: block; }
  .movie_box .video_dots {
    display: flex;
    justify-content: flex-end;
    margin-top: 1%;
    margin-right: 1%; }
    @media (max-width: 428px) {
      .movie_box .video_dots {
        margin-top: 2%;
        margin-right: 2%; } }
  .movie_box .video_dots li {
    margin: 0 .5%; }
    @media (max-width: 428px) {
      .movie_box .video_dots li {
        margin: 0 1%; } }
  .movie_box .video_dots button {
    outline: none;
    border: none;
    background-color: #bfbdbd;
    width: 15px;
    height: 15px;
    padding: 0;
    border-radius: 50%;
    overflow: hidden;
    text-indent: -10000px;
    cursor: pointer; }
    @media (max-width: 428px) {
      .movie_box .video_dots button {
        width: 15px;
        height: 15px;
        border-radius: 50%; } }
  .movie_box .slick-active button {
    background-color: #D7344B;
    color: #fff; }

h2 {
  font-size: 4.978vw;
  font-weight: 500;
  color: #003461;
  line-height: 1.25; }
  @media (min-width: 1366px) {
    h2 {
      font-size: 68px; } }
  @media (max-width: 428px) {
    h2 {
      font-size: 7.009vw; } }
  h2.margin01 {
    margin-bottom: 3.660vw; }
    @media (min-width: 1366px) {
      h2.margin01 {
        margin-bottom: 50px; } }
  h2.margin02 {
    margin-bottom: 1.497vw; }
    @media (min-width: 1366px) {
      h2.margin02 {
        margin-bottom: 20px; } }
  h2.white {
    color: #fff; }
    h2.white span {
      color: #fff; }
  h2 span {
    font-size: 1.318vw;
    letter-spacing: 0.1em;
    color: #333; }
    @media (min-width: 1366px) {
      h2 span {
        font-size: 18px; } }
    @media (max-width: 428px) {
      h2 span {
        font-size: 3.271vw; } }
    h2 span em {
      font-size: 2vw;
      font-style: normal;
      color: #D7344B;
      margin: 0 0.5em; }
      @media (min-width: 1366px) {
        h2 span em {
          font-size: 18px; } }
      @media (max-width: 428px) {
        h2 span em {
          font-size: 3.271vw; } }

.full_wide {
  max-width: 100%;
  margin-right: 0;
  margin-left: auto;
  position: relative; }
  @media (max-width: 428px) {
    .full_wide {
      margin: 0 auto; } }

.news_title_box {
  background: #f2f1ea;
  background: -moz-linear-gradient(-45deg, #f2f1ea 0%, #e5d8c3 100%);
  background: -webkit-linear-gradient(-45deg, #f2f1ea 0%, #e5d8c3 100%);
  background: linear-gradient(135deg, #f2f1ea 0%, #e5d8c3 100%);
  filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#f2f1ea', endColorstr='#e5d8c3', GradientType=1);
  padding: 3vw;
  padding-left: 8.199vw;
  width: 40.264vw;
  position: absolute;
  right: 0;
  top: 0;
  z-index: 1; }
  @media (min-width: 1366px) {
    .news_title_box {
      width: 44.264vw;
      padding-left: 140px; } }
  @media (max-width: 428px) {
    .news_title_box {
      background: none;
      position: relative;
      width: 100%;
      padding: 0; } }

.news_box {
  position: relative;
  width: 57.101vw;
  margin-top: 1.5%;
  padding: 3.660vw;
  background: #fff;
  box-shadow: rgba(0, 0, 0, 0.1) 10px 10px 30px;
  z-index: 2;
  font-size: 1.318vw; }
  @media (min-width: 1366px) {
    .news_box {
      font-size: 18px;
      max-width: 750px;
      left: 0;
      padding: 52px; } }
  @media (max-width: 428px) {
    .news_box {
      width: 100%;
      box-shadow: none;
      font-size: 3.738vw;
      padding: 0; } }
  .news_box dl {
    display: flex;
    align-items: flex-start;
    margin-bottom: 2%; }
    @media (max-width: 428px) {
      .news_box dl {
        flex-wrap: wrap;
        border-bottom: 1px solid #EFEFEF;
        margin-bottom: 2.5%;
        padding-bottom: 2.5%; } }
    .news_box dl dt {
      margin: 0 0 0 1.5em; }
      @media (max-width: 428px) {
        .news_box dl dt {
          margin: 0 0 0 0; } }
      .news_box dl dt a {
        text-decoration: underline; }
        .news_box dl dt a:hover {
          text-decoration: none; }
      .news_box dl dt span.link {
        margin-left: .5em;
        width: 5%; }
        .news_box dl dt span.link:after {
          display: inline-block;
          content: '　';
          width: 20px;
          background-image: url("../images/link_icon.svg");
          background-repeat: no-repeat;
          background-position: center center;
          background-size: 100% auto; }
      .news_box dl dt span.new {
        margin-left: 1em; }
        @media (max-width: 428px) {
          .news_box dl dt span.new {
            width: 5%; } }
        .news_box dl dt span.new em {
          font-size: 0.952vw;
          background: #D7344B;
          color: #fff;
          padding: 0 0.5em; }
          @media (min-width: 1366px) {
            .news_box dl dt span.new em {
              font-size: 13px; } }
          @media (max-width: 428px) {
            .news_box dl dt span.new em {
              font-size: 3.037vw; } }
      .news_box dl dt em.new {
        padding: 0.25em 0.5em;
        line-height: 1; }
        @media (max-width: 428px) {
          .news_box dl dt em.new {
            font-size: 3.037vw;
            display: inline-block;
            background: #D7344B;
            color: #fff;
            margin-left: 1em; } }
    @media (max-width: 428px) {
      .news_box dl dd {
        width: 100%;
        font-size: 3.037vw; } }

.pickup_box ul {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  @media (min-width: 1366px) {
    .pickup_box ul {
      max-width: 1200px; } }
  @media (max-width: 428px) {
    .pickup_box ul {
      display: block; } }
  .pickup_box ul li {
    width: 22.5%;
    margin-bottom: 3vw;
    box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease; }
    @media (max-width: 428px) {
      .pickup_box ul li {
        box-shadow: none;
        transition: none; } }
    .pickup_box ul li:hover {
      transform: scale(1.05, 1.05); }
      @media (max-width: 428px) {
        .pickup_box ul li:hover {
          transform: none; } }
    .pickup_box ul li p {
      padding: 0 5% 10%;
      font-size: 1.245vw;
      line-height: 1.5;
      text-align: center; }
      @media (min-width: 1366px) {
        .pickup_box ul li p {
          font-size: 17px; } }
      @media (max-width: 428px) {
        .pickup_box ul li p {
          font-size: 3.738vw; } }

section.pickup img,
section.pickup img.half {
  display: block;
  width: 50%;
  margin: 5% auto; }
  @media (max-width: 428px) {
    section.pickup img,
    section.pickup img.half {
      width: 100%; } }
section.pickup ul.column02 {
  display: flex;
  justify-content: space-between; }
  @media (max-width: 428px) {
    section.pickup ul.column02 {
      display: block; } }
  section.pickup ul.column02 li {
    width: 48%; }
    @media (max-width: 428px) {
      section.pickup ul.column02 li {
        width: 100%; } }
    section.pickup ul.column02 li img {
      width: 100%; }

.mw_box .inbox {
  margin: 0 auto; }
  @media (min-width: 1366px) {
    .mw_box .inbox {
      max-width: 1200px; } }
  .mw_box .inbox ul {
    display: flex;
    justify-content: space-between; }
    @media (min-width: 1366px) {
      .mw_box .inbox ul {
        margin-left: auto;
        margin-right: auto; } }
    @media (max-width: 428px) {
      .mw_box .inbox ul {
        display: block; } }
    .mw_box .inbox ul li {
      width: 47.5%;
      background: #fff;
      box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.1);
      transition: all 0.3s ease;
      line-height: 0; }
      @media (max-width: 428px) {
        .mw_box .inbox ul li {
          width: 100%;
          margin-bottom: 13vw;
          position: relative; }
          .mw_box .inbox ul li:last-child {
            margin-bottom: 8vw; } }
      .mw_box .inbox ul li:hover,
      .mw_box .inbox ul li a:active {
        transform: scale(1.05, 1.05); }
        @media (max-width: 428px) {
          .mw_box .inbox ul li:hover,
          .mw_box .inbox ul li a:active {
            transform: none; } }
        .mw_box .inbox ul li:hover p,
        .mw_box .inbox ul li a:active p {
          background-position: 9.5vw center;
          color: #003461; }
          @media (min-width: 1366px) {
            .mw_box .inbox ul li:hover p,
            .mw_box .inbox ul li a:active p {
              background: url("../images/red_arrow.png") no-repeat 125px center;
              background-size: 17px auto; } }
          @media (max-width: 428px) {
            .mw_box .inbox ul li:hover p,
            .mw_box .inbox ul li a:active p {
              background-position: 27vw center; }
              .mw_box .inbox ul li:hover p:after,
              .mw_box .inbox ul li a:active p:after {
                transform: scale(1, 1);
                opacity: 1;
                width: 100%; } }
      .mw_box .inbox ul li p {
        font-size: 1.575vw;
        line-height: 1.8;
        letter-spacing: 0.05em;
        padding: 1.684vw;
        background: url("../images/red_arrow.png") no-repeat 9vw center;
        background-size: 1.294vw auto;
        transition: background 0.3s ease, color 0.3s ease; }
        @media (min-width: 1366px) {
          .mw_box .inbox ul li p {
            font-size: 20px;
            padding: 20px;
            background: url("../images/red_arrow.png") no-repeat 120px center;
            background-size: 17px auto; } }
        @media (max-width: 428px) {
          .mw_box .inbox ul li p {
            font-size: 4.673vw;
            padding: 1.684vw 13vw 1.684vw 3vw;
            background: url("../images/red_arrow.png") no-repeat 26vw center, #fff;
            background-size: 3.972vw auto;
            display: inline-block;
            position: absolute;
            left: 3vw;
            bottom: -5vw;
            box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.2); }
            .mw_box .inbox ul li p:after {
              content: ' ';
              position: absolute;
              bottom: 0;
              left: 0;
              width: 0px;
              height: 2px;
              background: #D7344B;
              transition: all .3s ease;
              opacity: 0; } }

.csr_box .inbox {
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
  align-items: center; }
  @media (min-width: 1366px) {
    .csr_box .inbox {
      max-width: 1200px; } }
  @media (max-width: 428px) {
    .csr_box .inbox {
      width: 85%;
      margin: 0 auto;
      display: block; } }

.recruit_box {
  position: relative; }
  @media (max-width: 428px) {
    .recruit_box .inbox {
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      margin-bottom: 10%; } }
  .recruit_box .inbox .recruit_title_box {
    margin: 0 auto;
    width: 50%;
    background: #fff;
    box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.1);
    padding: 3vw 4.758vw; }
    @media (min-width: 1366px) {
      .recruit_box .inbox .recruit_title_box {
        max-width: 600px;
        padding: 65px; } }
    @media (max-width: 428px) {
      .recruit_box .inbox .recruit_title_box {
        position: relative;
        box-shadow: none;
        width: auto;
        padding: 0;
        right: 0;
        bottom: 0; } }
    .recruit_box .inbox .recruit_title_box a {
      width: 100%;
      display: block;
      box-sizing: border-box;
      padding: 0.5vw 1vw;
      border: 2px solid #D7344B;
      color: #D7344B;
      font-size: 1.903vw;
      font-weight: 500;
      background: url("../images/red_arrow.png") no-repeat 30.015vw 2vw, #fff;
      background-size: 1.7vw auto, auto;
      transition: all .3s ease; }
      @media (min-width: 1366px) {
        .recruit_box .inbox .recruit_title_box a {
          width: 100%;
          font-size: 26px;
          background: url("../images/red_arrow.png") no-repeat 410px 30px, #fff;
          background-size: 25px auto, auto; } }
      @media (max-width: 428px) {
        .recruit_box .inbox .recruit_title_box a {
          font-size: 3.738vw;
          text-align: center;
          background: none; } }
      .recruit_box .inbox .recruit_title_box a:hover, .recruit_box .inbox .recruit_title_box a:active {
        background: url("../images/red_arrow.png") no-repeat 30vw 2vw, rgba(215, 52, 75, 0.1);
        border: 2px solid transparent;
        background-size: 1.7vw auto, auto; }
        @media (min-width: 1366px) {
          .recruit_box .inbox .recruit_title_box a:hover, .recruit_box .inbox .recruit_title_box a:active {
            background: url("../images/red_arrow.png") no-repeat 415px 30px, rgba(215, 52, 75, 0.1);
            background-size: 25px auto, auto;
            border: 2px solid transparent; } }
        @media (max-width: 428px) {
          .recruit_box .inbox .recruit_title_box a:hover, .recruit_box .inbox .recruit_title_box a:active {
            background-image: none; } }
      .recruit_box .inbox .recruit_title_box a span {
        color: #333;
        font-size: 1.318vw;
        margin-left: 8%; }
        @media (min-width: 1366px) {
          .recruit_box .inbox .recruit_title_box a span {
            font-size: 18px; } }
  .recruit_box .inbox .recruit_photo_box {
    width: 59.16%;
    line-height: 0; }
    @media (max-width: 428px) {
      .recruit_box .inbox .recruit_photo_box {
        width: 39.372vw; } }

.main_header_box {
  position: relative;
  padding-bottom: 2.8vw; }
  @media (min-width: 1366px) {
    .main_header_box {
      padding-bottom: 39px; } }
  @media (max-width: 428px) {
    .main_header_box {
      padding-bottom: 3.1vw; } }
  .main_header_box .bg_box {
    position: relative;
    z-index: -2;
    height: 29.283vw; }
    @media (min-width: 1366px) {
      .main_header_box .bg_box {
        height: 450px; } }
    .main_header_box .bg_box img {
      position: absolute;
      display: block;
      object-fit: cover;
      object-position: center center;
      width: 100%;
      height: 100%; }
  .main_header_box .inbox {
    margin: 0 auto;
    padding: 0 5.857vw; }
    @media (min-width: 1366px) {
      .main_header_box .inbox {
        max-width: 1200px;
        padding: 0; } }
    @media (max-width: 428px) {
      .main_header_box .inbox {
        padding: 0; } }
    .main_header_box .inbox h1 {
      position: absolute;
      right: 5.857vw;
      top: 30%;
      bottom: 0;
      margin: 0 auto;
      font-size: 4.978vw;
      font-weight: 500;
      color: #fff;
      text-align: right; }
      .main_header_box .inbox h1.shadow {
        text-shadow: 5px 5px 10px rgba(0, 0, 0, 0.3); }
      @media (min-width: 1366px) {
        .main_header_box .inbox h1 {
          width: 1200px;
          left: 0;
          right: 0;
          font-size: 68px; } }
      @media (max-width: 428px) {
        .main_header_box .inbox h1 {
          top: 22%;
          line-height: 1.4; } }
      .main_header_box .inbox h1 span {
        font-size: 1.611vw;
        letter-spacing: 0.1em; }
        @media (min-width: 1366px) {
          .main_header_box .inbox h1 span {
            font-size: 24px; } }
        @media (max-width: 428px) {
          .main_header_box .inbox h1 span {
            display: block;
            font-size: 3.271vw; } }
        .main_header_box .inbox h1 span em {
          margin: 0 1vw; }
          @media (max-width: 428px) {
            .main_header_box .inbox h1 span em {
              display: none; } }
    .main_header_box .inbox h2 {
      z-index: 2;
      position: absolute;
      bottom: 0;
      display: inline-block;
      padding: 2.196vw 2.928vw;
      background: #fff;
      font-size: 2.343vw;
      letter-spacing: 0.1em;
      white-space: nowrap; }
      @media (min-width: 1366px) {
        .main_header_box .inbox h2 {
          font-size: 32px;
          padding: 40px 40px; } }
      @media (max-width: 428px) {
        .main_header_box .inbox h2 {
          font-size: 4.673vw;
          padding: 3.5vw 7.243vw;
          bottom: 20.2vw; } }
      @media (max-width: 428px) {
        .main_header_box .inbox h2 span {
          font-size: 3.037vw; } }
  .main_header_box .pankuzu_box {
    z-index: 1;
    width: 100%;
    position: absolute;
    bottom: 0;
    font-size: 1.025vw;
    background: #EFEFEF;
    text-align: right;
    padding: 0.5% 0; }
    @media (min-width: 1366px) {
      .main_header_box .pankuzu_box {
        padding: 0.5% 0;
        font-size: 14px; } }
    @media (max-width: 428px) {
      .main_header_box .pankuzu_box {
        position: relative;
        font-size: 3.037vw;
        padding: 3% 3%;
        margin-bottom: 5.841vw;
        background: #fff;
        border-bottom: 1px solid #EFEFEF;
        overflow-x: scroll;
        white-space: nowrap; } }
    .main_header_box .pankuzu_box .scroll {
      margin: 0 0 0 auto;
      width: 70%;
      overflow-x: scroll;
      white-space: nowrap; }
      .main_header_box .pankuzu_box .scroll::-webkit-scrollbar {
        display: none; }
      @media (max-width: 428px) {
        .main_header_box .pankuzu_box .scroll {
          width: 100%; } }
    .main_header_box .pankuzu_box a {
      color: #0067BF;
      text-decoration: underline; }
      .main_header_box .pankuzu_box a:hover {
        text-decoration: none; }
    .main_header_box .pankuzu_box i:before {
      content: '\f105';
      font-family: "Font Awesome 5 Free";
      font-weight: 600;
      color: #a8a8a8;
      margin-left: 0.5%; }

.page_navi_box {
  padding: 0 5.857vw;
  margin-bottom: 10%; }
  @media (min-width: 1366px) {
    .page_navi_box {
      padding: 0;
      max-width: 1200px;
      margin: 0 auto 10em; } }
  @media (max-width: 428px) {
    .page_navi_box {
      padding: 0; } }
  .page_navi_box .wp-pagenavi {
    border-top: 1px solid #EAE9E5;
    margin-top: 3em;
    padding-top: 3em;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start; }
    .page_navi_box .wp-pagenavi.center {
      justify-content: center; }
    .page_navi_box .wp-pagenavi.noborder {
      border-top: none; }
    .page_navi_box .wp-pagenavi.sp {
      display: none; }
      @media (max-width: 428px) {
        .page_navi_box .wp-pagenavi.sp {
          display: flex; } }
    .page_navi_box .wp-pagenavi .previouspostslink,
    .page_navi_box .wp-pagenavi .nextpostslink,
    .page_navi_box .wp-pagenavi .detail_link {
      display: block;
      padding: 10px 20px;
      font-size: 1.318vw;
      white-space: nowrap;
      background-color: #fff;
      background-size: 17px auto;
      background-repeat: no-repeat;
      box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.1);
      transition: all 0.3s ease;
      position: relative; }
      .page_navi_box .wp-pagenavi .previouspostslink:after,
      .page_navi_box .wp-pagenavi .nextpostslink:after,
      .page_navi_box .wp-pagenavi .detail_link:after {
        content: ' ';
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0px;
        height: 2px;
        background: #D7344B;
        transition: all .3s ease;
        opacity: 0; }
      @media (min-width: 1366px) {
        .page_navi_box .wp-pagenavi .previouspostslink,
        .page_navi_box .wp-pagenavi .nextpostslink,
        .page_navi_box .wp-pagenavi .detail_link {
          font-size: 18px; } }
      @media (max-width: 428px) {
        .page_navi_box .wp-pagenavi .previouspostslink,
        .page_navi_box .wp-pagenavi .nextpostslink,
        .page_navi_box .wp-pagenavi .detail_link {
          font-size: 3.738vw;
          background-size: 3.972vw auto;
          box-shadow: 0 0 20px rgba(0, 0, 0, 0.1);
          padding: 0;
          width: 11.682vw;
          height: 11.682vw; } }
      .page_navi_box .wp-pagenavi .previouspostslink:hover, .page_navi_box .wp-pagenavi .previouspostslink:active,
      .page_navi_box .wp-pagenavi .nextpostslink:hover,
      .page_navi_box .wp-pagenavi .nextpostslink:active,
      .page_navi_box .wp-pagenavi .detail_link:hover,
      .page_navi_box .wp-pagenavi .detail_link:active {
        color: #003461; }
        .page_navi_box .wp-pagenavi .previouspostslink:hover:after, .page_navi_box .wp-pagenavi .previouspostslink:active:after,
        .page_navi_box .wp-pagenavi .nextpostslink:hover:after,
        .page_navi_box .wp-pagenavi .nextpostslink:active:after,
        .page_navi_box .wp-pagenavi .detail_link:hover:after,
        .page_navi_box .wp-pagenavi .detail_link:active:after {
          transform: scale(1, 1);
          opacity: 1;
          width: 100%; }
      @media (max-width: 428px) {
        .page_navi_box .wp-pagenavi .previouspostslink span,
        .page_navi_box .wp-pagenavi .nextpostslink span,
        .page_navi_box .wp-pagenavi .detail_link span {
          display: none; } }
    .page_navi_box .wp-pagenavi .previouspostslink {
      background-image: url("../images/red_arrow02.png");
      background-position: 12% center;
      padding-left: 40px; }
      @media (max-width: 428px) {
        .page_navi_box .wp-pagenavi .previouspostslink {
          padding-left: 0;
          background-position: center center; } }
      .page_navi_box .wp-pagenavi .previouspostslink:hover, .page_navi_box .wp-pagenavi .previouspostslink:active {
        background-position: 8% center; }
    .page_navi_box .wp-pagenavi .nextpostslink {
      background-image: url("../images/red_arrow.png");
      background-position: 88% center;
      padding-right: 40px; }
      @media (max-width: 428px) {
        .page_navi_box .wp-pagenavi .nextpostslink {
          padding-right: 0;
          background-position: center center; } }
      .page_navi_box .wp-pagenavi .nextpostslink:hover, .page_navi_box .wp-pagenavi .nextpostslink:active {
        background-position: 92% center; }
    .page_navi_box .wp-pagenavi .detail_link {
      background-image: url("../images/return_arrow.png");
      background-position: 88% center;
      background-size: 21px auto;
      padding-right: 60px; }
      @media (max-width: 428px) {
        .page_navi_box .wp-pagenavi .detail_link {
          width: auto;
          padding: 7px 60px 10px 20px; } }
      .page_navi_box .wp-pagenavi .detail_link:hover, .page_navi_box .wp-pagenavi .detail_link:active {
        background-position: 88% center; }
    .page_navi_box .wp-pagenavi.detail .previouspostslink {
      background-image: url("../images/red_arrow.png");
      background-position: 88% center;
      padding-right: 40px;
      padding-left: 20px; }
      @media (max-width: 428px) {
        .page_navi_box .wp-pagenavi.detail .previouspostslink {
          padding-right: 0;
          background-position: center center; } }
      .page_navi_box .wp-pagenavi.detail .previouspostslink:hover, .page_navi_box .wp-pagenavi.detail .previouspostslink:active {
        background-position: 92% center; }
    .page_navi_box .wp-pagenavi.detail.wide .previouspostslink {
      padding-right: 50px; }
    .page_navi_box .wp-pagenavi.detail .nextpostslink {
      background-image: url("../images/red_arrow02.png");
      background-position: 12% center;
      padding-left: 40px;
      padding-right: 20px; }
      @media (max-width: 428px) {
        .page_navi_box .wp-pagenavi.detail .nextpostslink {
          padding-left: 0;
          background-position: center center; } }
      .page_navi_box .wp-pagenavi.detail .nextpostslink:hover, .page_navi_box .wp-pagenavi.detail .nextpostslink:active {
        background-position: 8% center; }
    .page_navi_box .wp-pagenavi.detail.wide .nextpostslink {
      padding-left: 50px; }
    .page_navi_box .wp-pagenavi.detail .empty {
      display: block;
      width: 14%; }
      @media (max-width: 428px) {
        .page_navi_box .wp-pagenavi.detail .empty {
          width: 11.73%; } }
  .page_navi_box .empty {
    display: block;
    width: 11%; }
  .page_navi_box ul.pagination {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    width: 72.9%;
    margin: 0 auto;
    font-size: 1.318vw; }
    @media (min-width: 1366px) {
      .page_navi_box ul.pagination {
        font-size: 18px; } }
    @media (max-width: 428px) {
      .page_navi_box ul.pagination {
        font-size: 3.738vw; } }
    .page_navi_box ul.pagination li {
      margin: 0 1%; }
      .page_navi_box ul.pagination li a {
        display: block;
        padding: 10px 15px; }
        @media (max-width: 428px) {
          .page_navi_box ul.pagination li a {
            padding: 2.5vw 4vw; } }
        .page_navi_box ul.pagination li a.active {
          color: #D7344B;
          background-color: #fff;
          box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.1); }

h3.border01 {
  font-size: 1.611vw;
  color: #003461;
  font-weight: 500;
  letter-spacing: 0.1em;
  border-bottom: 5px solid #EFEFEF;
  position: relative;
  margin-bottom: 5%;
  padding-bottom: 0.5%; }
  @media (min-width: 1366px) {
    h3.border01 {
      font-size: 22px; } }
  @media (max-width: 428px) {
    h3.border01 {
      font-size: 4.206vw;
      border-bottom: 3px solid #EFEFEF; } }
  h3.border01.margin01 {
    margin-bottom: 3%; }
    @media (max-width: 428px) {
      h3.border01.margin01 {
        margin-bottom: 5%; } }
  h3.border01.margin02 {
    margin-bottom: 10%; }
    @media (max-width: 428px) {
      h3.border01.margin02 {
        margin-bottom: 5%; } }
  h3.border01.margin03 {
    margin-top: 10%;
    margin-bottom: 5%; }
    @media (max-width: 428px) {
      h3.border01.margin03 {
        margin-bottom: 5%; } }
  h3.border01:after {
    position: absolute;
    bottom: -5px;
    left: 0;
    border-bottom: 5px solid #D7344B;
    content: "";
    width: 45px; }
    @media (max-width: 428px) {
      h3.border01:after {
        bottom: -3px;
        border-bottom: 3px solid #D7344B; } }
  h3.border01.flex {
    display: flex;
    justify-content: space-between;
    align-items: flex-end; }
    @media (max-width: 428px) {
      h3.border01.flex {
        display: block;
        line-height: 1.6;
        padding-bottom: 3%; } }
    h3.border01.flex span {
      text-align: right;
      font-size: 1.26vw;
      color: #333;
      letter-spacing: 0; }
      @media (min-width: 1366px) {
        h3.border01.flex span {
          font-size: 16px; } }
      @media (max-width: 428px) {
        h3.border01.flex span {
          display: block;
          font-size: 2.804vw; } }
      h3.border01.flex span.small01 {
        display: block;
        text-align: left;
        font-size: 0.952vw;
        color: #003461;
        letter-spacing: 0.1em;
        line-height: 1; }
        @media (min-width: 1366px) {
          h3.border01.flex span.small01 {
            font-size: 13px; } }
        @media (max-width: 428px) {
          h3.border01.flex span.small01 {
            font-size: 2.804vw; } }
  h3.border01 span {
    font-size: 80%; }
  h3.border01 sub {
    font-size: 0.878vw;
    vertical-align: baseline; }
    @media (min-width: 1366px) {
      h3.border01 sub {
        font-size: 12px; } }
    @media (max-width: 428px) {
      h3.border01 sub {
        font-size: 2.804vw; } }

.news_list_box {
  position: relative;
  font-size: 1.318vw; }
  @media (min-width: 1366px) {
    .news_list_box {
      font-size: 18px; } }
  @media (max-width: 428px) {
    .news_list_box {
      width: 100%;
      box-shadow: none;
      font-size: 3.738vw;
      padding: 0; } }
  .news_list_box dl {
    display: flex;
    align-items: flex-start;
    margin-bottom: 1%;
    padding-bottom: 1%;
    border-bottom: 1px solid #EFEFEF; }
    .news_list_box dl:last-child {
      border-bottom: 0; }
    @media (max-width: 428px) {
      .news_list_box dl {
        flex-wrap: wrap;
        margin-bottom: 2.5%;
        padding-bottom: 2.5%; } }
    .news_list_box dl dt {
      margin: 0 1em 0 1.5em; }
      @media (max-width: 428px) {
        .news_list_box dl dt {
          margin: 0 0 0 0; } }
      .news_list_box dl dt a {
        text-decoration: underline; }
        .news_list_box dl dt a:hover {
          text-decoration: none; }
      .news_list_box dl dt em.new {
        padding: 0.25em 0.5em;
        line-height: 1; }
        @media (max-width: 428px) {
          .news_list_box dl dt em.new {
            font-size: 3.037vw;
            display: inline-block;
            background: #D7344B;
            color: #fff;
            margin-left: 1em; } }
      .news_list_box dl dt span.link {
        margin-left: .5em;
        width: 5%; }
        .news_list_box dl dt span.link:after {
          display: inline-block;
          content: '　';
          width: 20px;
          background-image: url("../images/link_icon.svg");
          background-repeat: no-repeat;
          background-position: center center;
          background-size: 100% auto; }
      .news_list_box dl dt span.new {
        margin-left: 1em; }
        @media (max-width: 428px) {
          .news_list_box dl dt span.new {
            width: 5%; } }
        .news_list_box dl dt span.new em {
          font-size: 0.952vw;
          background: #D7344B;
          color: #fff;
          padding: 0 0.5em; }
          @media (min-width: 1366px) {
            .news_list_box dl dt span.new em {
              font-size: 13px; } }
          @media (max-width: 428px) {
            .news_list_box dl dt span.new em {
              font-size: 3.037vw; } }
    @media (max-width: 428px) {
      .news_list_box dl dd {
        width: 100%;
        font-size: 3.037vw; } }
    @media (max-width: 428px) {
      .news_list_box dl dd.new {
        width: 5%; } }
    .news_list_box dl dd.new em {
      font-size: 0.952vw;
      background: #D7344B;
      color: #fff;
      padding: 0 0.5em; }
      @media (min-width: 1366px) {
        .news_list_box dl dd.new em {
          font-size: 13px; } }
      @media (max-width: 428px) {
        .news_list_box dl dd.new em {
          font-size: 3.037vw; } }

ul.pickup_list_box {
  display: flex;
  gap: 0 3.33%;
  flex-wrap: wrap; }
  @media (min-width: 1366px) {
    ul.pickup_list_box {
      max-width: 1200px; } }
  @media (max-width: 428px) {
    ul.pickup_list_box {
      gap: 0 10%; } }
  ul.pickup_list_box li {
    width: 22.5%;
    margin-bottom: 3.33%;
    box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease; }
    @media not all and (min-resolution: 0.001dpcm) {
      @supports not (translate: none) {
        ul.pickup_list_box li {
          margin-right: 3.33%; }
          ul.pickup_list_box li:nth-child(4n) {
            margin-right: 0; }
          @media (max-width: 428px) {
            ul.pickup_list_box li {
              margin-right: 10%; }
              ul.pickup_list_box li:nth-child(2n) {
                margin-right: 0; } } } }
    @media (max-width: 428px) {
      ul.pickup_list_box li {
        width: 45%;
        margin-bottom: 8vw;
        transition: none; } }
    ul.pickup_list_box li:hover {
      transform: scale(1.05, 1.05); }
      @media (max-width: 428px) {
        ul.pickup_list_box li:hover {
          transform: none; } }
    ul.pickup_list_box li p {
      padding: 0 5% 10%;
      font-size: 1.245vw;
      line-height: 1.5;
      text-align: center; }
      @media (min-width: 1366px) {
        ul.pickup_list_box li p {
          font-size: 17px; } }
      @media (max-width: 428px) {
        ul.pickup_list_box li p {
          font-size: 3.738vw; } }

section.pickup .text_box {
  margin-bottom: 10%; }
  @media (max-width: 428px) {
    section.pickup .text_box {
      margin-bottom: 5%; } }
  section.pickup .text_box.custom h4 {
    font-size: 2.196vw;
    color: #003461;
    font-family: "Noto Sans JP";
    font-weight: 500;
    text-align: center;
    line-height: 1.8;
    margin-bottom: 3%; }
    @media (min-width: 1366px) {
      section.pickup .text_box.custom h4 {
        font-size: 30px; } }
    @media (max-width: 428px) {
      section.pickup .text_box.custom h4 {
        font-size: 4.673vw; } }
    section.pickup .text_box.custom h4:before {
      content: none; }
    section.pickup .text_box.custom h4.margin01 {
      color: #000; }
      @media (max-width: 428px) {
        section.pickup .text_box.custom h4.margin01 {
          font-size: 2.196vw; } }
      section.pickup .text_box.custom h4.margin01 span {
        font-size: 1.26vw;
        color: #000;
        margin-top: 2%; }
        @media (min-width: 1366px) {
          section.pickup .text_box.custom h4.margin01 span {
            font-size: 16px; } }
    section.pickup .text_box.custom h4 span {
      display: block;
      font-size: 1.318vw; }
  section.pickup .text_box.custom img {
    width: 100%;
    height: auto;
    margin: 0; }
  section.pickup .text_box.custom.number02 {
    color: #333;
    font-family: 'BIZ UDPGothic', sans-serif; }
    section.pickup .text_box.custom.number02 h4 {
      font-family: 'BIZ UDPGothic', sans-serif;
      margin-bottom: 1%; }
    section.pickup .text_box.custom.number02 p.margin01 {
      font-size: 1.26vw;
      text-align: center;
      line-height: calc(30/16);
      margin-bottom: 7%; }
      @media (min-width: 1366px) {
        section.pickup .text_box.custom.number02 p.margin01 {
          font-size: 16px; } }
    section.pickup .text_box.custom.number02 .work_box {
      position: relative;
      margin-bottom: 10%; }
      section.pickup .text_box.custom.number02 .work_box h5 {
        position: relative;
        font-size: 1.83vw;
        font-weight: 700;
        padding: calc((25/1200)*100%) calc((60/1200)*100%) calc((15/1200)*100%);
        z-index: 1; }
        @media (min-width: 1366px) {
          section.pickup .text_box.custom.number02 .work_box h5 {
            font-size: 25px; } }
        section.pickup .text_box.custom.number02 .work_box h5.yellow {
          background: #EDCF4F; }
          section.pickup .text_box.custom.number02 .work_box h5.yellow span {
            color: #9A8C54; }
        section.pickup .text_box.custom.number02 .work_box h5.blue {
          background: #BDD7EE; }
          section.pickup .text_box.custom.number02 .work_box h5.blue span {
            color: #6089AC; }
        section.pickup .text_box.custom.number02 .work_box h5.pink {
          background: #FFB7B7; }
          section.pickup .text_box.custom.number02 .work_box h5.pink span {
            color: #C36472; }
        section.pickup .text_box.custom.number02 .work_box h5 span {
          display: block;
          position: absolute;
          top: -38%;
          left: 3%;
          font-family: "Roboto";
          font-size: 1.575vw;
          font-weight: 500; }
          @media (min-width: 1366px) {
            section.pickup .text_box.custom.number02 .work_box h5 span {
              font-size: 20px; } }
          section.pickup .text_box.custom.number02 .work_box h5 span em {
            font-size: 2.343vw; }
            @media (min-width: 1366px) {
              section.pickup .text_box.custom.number02 .work_box h5 span em {
                font-size: 32px; } }
      section.pickup .text_box.custom.number02 .work_box .main_box {
        position: relative;
        display: flex;
        justify-content: space-between;
        margin-top: -4%;
        margin-left: auto;
        margin-right: auto;
        z-index: 2;
        width: calc((1100/1200)*100%); }
        section.pickup .text_box.custom.number02 .work_box .main_box p {
          width: calc((360/1100)*100%);
          padding-top: 8%;
          font-size: 1.26vw;
          line-height: calc(30/16); }
          @media (min-width: 1366px) {
            section.pickup .text_box.custom.number02 .work_box .main_box p {
              font-size: 16px; } }
          section.pickup .text_box.custom.number02 .work_box .main_box p.wide01 {
            width: calc((340/1100)*100%); }
          section.pickup .text_box.custom.number02 .work_box .main_box p.wide02 {
            width: calc((400/1100)*100%); }
          section.pickup .text_box.custom.number02 .work_box .main_box p a {
            display: inline-block;
            width: calc((159/382)*100%);
            margin-top: 5%;
            transition: opacity 0.2s; }
            section.pickup .text_box.custom.number02 .work_box .main_box p a:hover {
              opacity: 0.6; }
            section.pickup .text_box.custom.number02 .work_box .main_box p a.wide01 {
              width: calc((192/382)*100%);
              margin-left: 5%; }
        section.pickup .text_box.custom.number02 .work_box .main_box div {
          width: calc((584/1100)*100%); }
      section.pickup .text_box.custom.number02 .work_box .works01_box {
        display: flex;
        justify-content: space-between;
        width: calc((1128/1200)*100%);
        margin-left: auto;
        margin-right: calc((50/1200)*100%); }
        section.pickup .text_box.custom.number02 .work_box .works01_box li {
          display: flex;
          justify-content: space-between;
          align-items: flex-end;
          width: calc((550/1128)*100%);
          border: 1px solid #A8A8A8;
          background: url("../../page-images/pickup/pickup07/works01_bg.png") no-repeat left top;
          background-size: calc((37/550)*100%) auto;
          padding: calc((37/1128)*100%);
          margin-top: calc((40/1128)*100%); }
          section.pickup .text_box.custom.number02 .work_box .works01_box li p {
            width: calc((220/476)*100%); }
            section.pickup .text_box.custom.number02 .work_box .works01_box li p strong {
              display: block;
              font-size: 1.83vw;
              font-weight: 700;
              letter-spacing: 0.1em;
              color: #003461;
              text-align: center; }
              @media (min-width: 1366px) {
                section.pickup .text_box.custom.number02 .work_box .works01_box li p strong {
                  font-size: 25px; } }
            section.pickup .text_box.custom.number02 .work_box .works01_box li p:last-child {
              width: calc((205/476)*100%);
              font-size: 1.025vw;
              line-height: calc(25/14); }
              @media (min-width: 1366px) {
                section.pickup .text_box.custom.number02 .work_box .works01_box li p:last-child {
                  font-size: 14px; } }
              section.pickup .text_box.custom.number02 .work_box .works01_box li p:last-child.wide01 {
                width: calc((202/476)*100%); }
  section.pickup .text_box.custom .system_chart_box {
    width: calc((1133/1200)*100%);
    margin-left: auto;
    margin-bottom: calc((173/1200)*100%); }
  section.pickup .text_box.custom .topics_box h5 {
    text-align: center;
    font-size: 1.83vw;
    letter-spacing: 0.1em;
    margin-bottom: calc((52/1200)*100%); }
    @media (min-width: 1366px) {
      section.pickup .text_box.custom .topics_box h5 {
        font-size: 25px; } }
    section.pickup .text_box.custom .topics_box h5:after {
      display: block;
      content: '　';
      width: calc((244/1200)*100%);
      height: 2px;
      background: #EDCF4F;
      margin: 0 auto; }
    section.pickup .text_box.custom .topics_box h5 span {
      font-size: 1.318vw; }
      @media (min-width: 1366px) {
        section.pickup .text_box.custom .topics_box h5 span {
          font-size: 18px; } }
  section.pickup .text_box.custom .topics_box .pankuzu {
    display: block;
    margin-bottom: calc((40/1200)*100%); }
  section.pickup .text_box.custom .topics_box .list_box {
    display: flex;
    flex-flow: wrap; }
    section.pickup .text_box.custom .topics_box .list_box li {
      position: relative;
      width: calc((361/1200)*100%);
      margin: 0 calc((52/1200)*100%) calc((48/1200)*100%) 0; }
      section.pickup .text_box.custom .topics_box .list_box li:nth-child(3n) {
        margin-right: 0; }
      section.pickup .text_box.custom .topics_box .list_box li .cat {
        position: absolute;
        display: inline-block;
        padding: 1px 0;
        width: calc((130/350)*100%);
        font-size: 1.26vw;
        font-weight: 700;
        color: #fff;
        text-align: center; }
        @media (min-width: 1367px) {
          section.pickup .text_box.custom .topics_box .list_box li .cat {
            font-size: 16px; } }
        section.pickup .text_box.custom .topics_box .list_box li .cat.brown {
          background: rgba(218, 174, 140, 0.8); }
        section.pickup .text_box.custom .topics_box .list_box li .cat.pink {
          background: rgba(252, 136, 136, 0.8); }
        section.pickup .text_box.custom .topics_box .list_box li .cat.blue {
          background: rgba(62, 123, 178, 0.8); }
        section.pickup .text_box.custom .topics_box .list_box li .cat.yellow {
          background: rgba(232, 191, 65, 0.8); }
      section.pickup .text_box.custom .topics_box .list_box li div {
        width: calc((350/361)*100%);
        margin-top: 5%;
        margin-left: auto; }
        section.pickup .text_box.custom .topics_box .list_box li div img {
          display: block;
          margin: 0 auto 5%;
          box-shadow: 5px 5px 10px 0 rgba(0, 0, 0, 0.3); }
          @media (max-width: 428px) {
            section.pickup .text_box.custom .topics_box .list_box li div img {
              box-shadow: 2px 2px 5px 0 rgba(0, 0, 0, 0.3);
              margin-bottom: 8%; } }
        section.pickup .text_box.custom .topics_box .list_box li div .day {
          margin-bottom: 10%; }
          section.pickup .text_box.custom .topics_box .list_box li div .day:after {
            display: block;
            content: '　';
            height: 2px;
            background: #EDCF4F;
            margin-top: -5%;
            margin-bottom: 5%; }
            @media (max-width: 428px) {
              section.pickup .text_box.custom .topics_box .list_box li div .day:after {
                height: 1px;
                margin-top: -6%;
                margin-bottom: 6%; } }
          section.pickup .text_box.custom .topics_box .list_box li div .day em {
            position: relative;
            display: block;
            width: calc((212/350)*100%);
            background: #fff;
            margin: 0 auto;
            font-family: "Noto Sans JP";
            font-weight: 500;
            text-align: center;
            z-index: 2; }
            @media (max-width: 428px) {
              section.pickup .text_box.custom .topics_box .list_box li div .day em {
                font-size: 1.26vw; } }
        section.pickup .text_box.custom .topics_box .list_box li div p {
          text-align: center;
          line-height: calc(25/16); }
          @media (max-width: 428px) {
            section.pickup .text_box.custom .topics_box .list_box li div p {
              font-size: 1.26vw; } }
          section.pickup .text_box.custom .topics_box .list_box li div p.letter {
            letter-spacing: -0.05em; }
  section.pickup .text_box .gray_box {
    background: #F8F8F8;
    padding: 9% 0 0;
    overflow: hidden; }
    section.pickup .text_box .gray_box dl {
      width: 79.16%;
      margin: 0 auto 9%;
      background: #fff; }
      section.pickup .text_box .gray_box dl.flex {
        display: flex;
        justify-content: space-between;
        align-items: center; }
        section.pickup .text_box .gray_box dl.flex dt {
          width: 61.36%; }
        section.pickup .text_box .gray_box dl.flex dd {
          width: calc(100% - 61.36%);
          padding: 0 5%; }
          section.pickup .text_box .gray_box dl.flex dd p {
            font-family: "Noto Serif JP";
            line-height: 1.6;
            color: #003461;
            font-size: 1.26vw;
            text-align: center; }
            @media (min-width: 1366px) {
              section.pickup .text_box .gray_box dl.flex dd p {
                font-size: 16px; } }
            section.pickup .text_box .gray_box dl.flex dd p.right {
              text-align: right;
              margin-top: 8%; }
      section.pickup .text_box .gray_box dl.absolute {
        position: relative; }
        section.pickup .text_box .gray_box dl.absolute dt {
          z-index: 1; }
        section.pickup .text_box .gray_box dl.absolute dd {
          position: absolute;
          bottom: 5%;
          left: 0;
          width: 45%;
          padding: 5% 5%;
          background: rgba(255, 255, 255, 0.9);
          z-index: 2; }
          section.pickup .text_box .gray_box dl.absolute dd strong {
            display: block;
            font-family: "Noto Sans JP";
            font-weight: 500;
            font-size: 1.83vw;
            text-align: center;
            margin-bottom: 5%; }
            @media (min-width: 1366px) {
              section.pickup .text_box .gray_box dl.absolute dd strong {
                font-size: 25px; } }
          section.pickup .text_box .gray_box dl.absolute dd p {
            font-size: 1.26vw;
            line-height: 1.6;
            text-align: center; }
            @media (min-width: 1366px) {
              section.pickup .text_box .gray_box dl.absolute dd p {
                font-size: 16px; } }
            section.pickup .text_box .gray_box dl.absolute dd p span {
              display: inline-block;
              text-align: left; }
          section.pickup .text_box .gray_box dl.absolute dd ul {
            list-style: disc;
            padding-left: 1em;
            margin-left: 1em;
            font-size: 1.025vw;
            line-height: 1.4; }
            @media (min-width: 1366px) {
              section.pickup .text_box .gray_box dl.absolute dd ul {
                font-size: 14px; } }
            section.pickup .text_box .gray_box dl.absolute dd ul li {
              margin-bottom: 5%; }
              section.pickup .text_box .gray_box dl.absolute dd ul li:last-child {
                margin-bottom: 0; }

.message_box .title_box {
  display: flex;
  justify-content: space-between;
  margin-bottom: 5%; }
  @media (max-width: 428px) {
    .message_box .title_box {
      flex-flow: column-reverse; } }
  .message_box .title_box .img {
    width: 40%; }
    @media (max-width: 428px) {
      .message_box .title_box .img {
        width: 100%; } }
  .message_box .title_box .title {
    width: 55%; }
    @media (max-width: 428px) {
      .message_box .title_box .title {
        width: 100%;
        margin-bottom: 1%; } }
.message_box h4.message {
  color: #D7344B;
  font-size: 1.83vw;
  font-weight: 500;
  letter-spacing: 0.1em;
  margin-bottom: 1%; }
  @media (min-width: 1366px) {
    .message_box h4.message {
      font-size: 25px; } }
  @media (max-width: 428px) {
    .message_box h4.message {
      font-size: 5.37vw; } }
  .message_box h4.message:before {
    display: none; }
.message_box p {
  margin-bottom: 2%; }
  @media (max-width: 428px) {
    .message_box p {
      margin-bottom: 7%; } }
  .message_box p strong {
    font-weight: bold; }
  .message_box p.ceo {
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
    letter-spacing: 0.1em; }
    @media (max-width: 428px) {
      .message_box p.ceo {
        text-align: right; } }
    .message_box p.ceo span {
      display: block;
      text-align: right; }
      @media (max-width: 428px) {
        .message_box p.ceo span {
          float: left; } }
      .message_box p.ceo span strong {
        font-size: 1.611vw; }
        @media (min-width: 1366px) {
          .message_box p.ceo span strong {
            font-size: 22px; } }
        @media (max-width: 428px) {
          .message_box p.ceo span strong {
            font-size: 5.14vw; } }
    @media (max-width: 428px) {
      .message_box p.ceo img {
        margin: 0 0 0 5%;
        width: 25%; } }

.company_table01 {
  width: 100%; }
  @media (max-width: 428px) {
    .company_table01 {
      margin-bottom: 10%; } }
  .company_table01 th,
  .company_table01 td {
    border-bottom: 1px solid #EAE9E5;
    padding: 1% 0; }
    @media (max-width: 428px) {
      .company_table01 th,
      .company_table01 td {
        display: block;
        padding: 1% 2%;
        border-bottom: none; } }
  .company_table01 th {
    padding-right: 1em;
    white-space: nowrap;
    vertical-align: top;
    font-weight: 500; }
    @media (max-width: 428px) {
      .company_table01 th {
        display: block;
        border: 0;
        background: #F8F8F8; } }
  @media (max-width: 428px) {
    .company_table01 td {
      padding-bottom: 5%; } }

.history_photo {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 5%; }
  .history_photo li {
    width: 46.66%;
    margin-bottom: 5%;
    line-height: 1.8; }

.company_table02 {
  width: 100%; }
  @media (max-width: 428px) {
    .company_table02 {
      margin-bottom: 10%; } }
  .company_table02 thead {
    border-top: 2px solid #EFEFEF;
    border-bottom: 1px solid #EFEFEF; }
    @media (max-width: 428px) {
      .company_table02 thead {
        display: none; } }
    .company_table02 thead td {
      width: 15%;
      background: #F8F8F8;
      text-align: center;
      padding: 1%;
      color: #003461;
      font-weight: 500; }
      .company_table02 thead td:nth-child(2) {
        width: 85%; }
  .company_table02 tbody td {
    padding: 1%;
    border-bottom: 1px solid #EFEFEF; }
    @media (max-width: 428px) {
      .company_table02 tbody td {
        display: block;
        border-bottom: none;
        padding: 1% 2%;
        margin-bottom: 5%; }
        .company_table02 tbody td:first-child {
          background: #F8F8F8;
          margin-bottom: 0; } }
    .company_table02 tbody td a {
      color: #0067BF;
      text-decoration: underline; }
      .company_table02 tbody td a:hover {
        text-decoration: none; }

.company_link_box {
  display: flex;
  justify-content: space-between;
  text-align: center;
  border: 1px solid #EAE9E5;
  border-right: none;
  margin-top: 10%;
  font-weight: 500; }
  @media (max-width: 428px) {
    .company_link_box {
      flex-wrap: wrap;
      border-top: none;
      margin-top: 20%; }
      .company_link_box:after {
        content: ' ';
        display: block;
        width: 100%; } }
  .company_link_box dt {
    background: #003461;
    color: #fff;
    width: 20.83%;
    padding: 1%; }
    @media (max-width: 428px) {
      .company_link_box dt {
        width: 33.33%;
        order: 0; } }
  .company_link_box dd {
    width: 26.38%;
    border-right: 1px solid #EAE9E5;
    padding: 1%;
    background-position: right 25% bottom 55%;
    background-image: url("../images/red_arrow.png");
    background-size: 7% auto;
    background-repeat: no-repeat;
    transition: background 0.3s ease; }
    @media (max-width: 428px) {
      .company_link_box dd {
        width: 50%;
        order: 1;
        border-top: 1px solid #EAE9E5;
        background-image: none !important; } }
    .company_link_box dd.wide {
      background-position: right 17% bottom 55%; }
    .company_link_box dd.wide02 {
      background-position: right 10% bottom 55%; }
    .company_link_box dd.active {
      background-position: right 25% bottom 55%;
      background-color: #F8F8F8;
      background-image: url("../images/red_arrow.png");
      background-size: 7% auto;
      background-repeat: no-repeat; }
      @media (max-width: 428px) {
        .company_link_box dd.active {
          font-weight: 500; }
          .company_link_box dd.active a {
            color: #D7344B; } }
      .company_link_box dd.active.wide {
        background-position: right 17% bottom 55%; }
      .company_link_box dd.active.wide02 {
        background-position: right 10% bottom 55%; }
    .company_link_box dd:hover {
      background-position: right 22% bottom 55%;
      background-color: #F8F8F8;
      background-image: url("../images/red_arrow.png");
      background-size: 7% auto;
      background-repeat: no-repeat; }
      .company_link_box dd:hover.wide {
        background-position: right 14% bottom 55%; }
      .company_link_box dd:hover.wide02 {
        background-position: right 7% bottom 55%; }
    .company_link_box dd a {
      display: block; }

.head_office_box {
  background: url(../../page-images/company/company_house_bg.jpg) no-repeat right top;
  background-size: 59.75% auto; }
  @media (max-width: 428px) {
    .head_office_box {
      background: none; } }
  .head_office_box .flex02 {
    align-items: flex-end; }
    @media (max-width: 428px) {
      .head_office_box .flex02 {
        display: block; } }
    .head_office_box .flex02 .box {
      width: 55%; }
      @media (max-width: 428px) {
        .head_office_box .flex02 .box {
          width: 100%; } }
      .head_office_box .flex02 .box:last-child {
        width: 36.16%; }
        @media (max-width: 428px) {
          .head_office_box .flex02 .box:last-child {
            width: 100%;
            margin: -20% 0 0 auto;
            padding: 30% 0 0 0;
            background: url(../../page-images/company/company_house_bg.jpg) no-repeat right top;
            background-size: 100% auto; }
            .head_office_box .flex02 .box:last-child img {
              display: block;
              width: 75%;
              margin: 0 0 0 auto; } }
      .head_office_box .flex02 .box p.right {
        text-align: right;
        font-size: 1.025vw;
        font-weight: 500; }
        @media (min-width: 1366px) {
          .head_office_box .flex02 .box p.right {
            font-size: 14px; } }
        @media (max-width: 428px) {
          .head_office_box .flex02 .box p.right {
            font-size: 3.271vw; } }
        .head_office_box .flex02 .box p.right a {
          padding-left: 4%;
          background: url("../../company/zoom_icon.png") no-repeat left center;
          background-size: auto 100%;
          text-decoration: underline; }
          @media (max-width: 428px) {
            .head_office_box .flex02 .box p.right a {
              padding-left: 8%; } }
          .head_office_box .flex02 .box p.right a:hover {
            text-decoration: none; }
      .head_office_box .flex02 .box .gmap {
        height: 0;
        overflow: hidden;
        padding-bottom: 52.5%;
        position: relative;
        margin-top: 8%;
        border: 10px solid #fff;
        box-sizing: border-box; }
        @media (max-width: 428px) {
          .head_office_box .flex02 .box .gmap {
            border: none; } }
      .head_office_box .flex02 .box .gmap iframe {
        position: absolute;
        left: 0;
        top: 0;
        height: 100%;
        width: 100%; }

.company_group {
  max-width: 937px;
  flex-wrap: wrap;
  display: flex;
  align-items: flex-start;
  justify-content: space-between;
  margin: 0 auto calc((100/937)*100%); }
  @media (max-width: 428px) {
    .company_group {
      border-bottom: 1px solid #eee;
      margin-bottom: 10%;
      padding-bottom: 10%; } }
  .company_group .text_box {
    line-height: calc(30/18); }
    @media (max-width: 428px) {
      .company_group .text_box {
        width: calc((340/570)*100%); } }
    .company_group .text_box h3 {
      font-size: 1.575vw;
      font-weight: 500;
      letter-spacing: 0.2em;
      margin-bottom: 2%; }
      @media (min-width: 937px) {
        .company_group .text_box h3 {
          font-size: 20px; } }
      @media (max-width: 428px) {
        .company_group .text_box h3 {
          font-size: 4.206vw;
          letter-spacing: 0; } }
    .company_group .text_box p {
      margin-left: 3em; }
      @media (max-width: 428px) {
        .company_group .text_box p {
          margin-left: 0; } }
      .company_group .text_box p.margin01 {
        margin-bottom: 8%; }
      .company_group .text_box p strong {
        font-weight: 500; }
        @media (max-width: 428px) {
          .company_group .text_box p strong {
            display: block; } }
  .company_group .media_cover_box {
    width: calc((390/937)*100%); }
    @media (max-width: 428px) {
      .company_group .media_cover_box {
        width: calc((140/352)*100%); } }
    .company_group .media_cover_box .media_box {
      width: 100%; }
      .company_group .media_cover_box .media_box.margin01 {
        margin-top: 5%; }
  .company_group .media_box {
    width: calc((390/937)*100%);
    display: flex;
    justify-content: space-between;
    align-items: flex-end; }
    @media (max-width: 428px) {
      .company_group .media_box {
        width: calc((140/352)*100%); }
        .company_group .media_box.margin01 {
          align-items: flex-start; } }
    .company_group .media_box .map_icon {
      width: calc((80/390)*100%); }
      @media (max-width: 428px) {
        .company_group .media_box .map_icon {
          width: calc((120/390)*100%); } }
      .company_group .media_box .map_icon a {
        display: block;
        width: 100%;
        position: relative;
        background: url("../../company/map_icon_bg.png") no-repeat center center;
        background-size: 0% auto;
        transition: background 0.3s ease; }
        .company_group .media_box .map_icon a.margin01 {
          margin-top: 20%; }
          @media (max-width: 428px) {
            .company_group .media_box .map_icon a.margin01 {
              margin-top: 10%; } }
        .company_group .media_box .map_icon a:hover {
          background-size: 100% auto;
          background-position: center center; }
          .company_group .media_box .map_icon a:hover i {
            background-position: center bottom; }
        .company_group .media_box .map_icon a i {
          display: block;
          background: url("../../company/map_icon.png") no-repeat center center;
          background-size: 100% auto;
          padding-bottom: 70%;
          transition: background 0.3s ease; }
          @media (max-width: 428px) {
            .company_group .media_box .map_icon a i {
              background-position: center bottom; } }
    .company_group .media_box .photo_box {
      width: calc((286/390)*100%);
      line-height: 0;
      box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.2); }
      @media (max-width: 428px) {
        .company_group .media_box .photo_box {
          width: calc((270/390)*100%); } }
  .company_group .box {
    margin-bottom: 5%; }
    .company_group .box.margin01 {
      margin-bottom: 0; }
      .company_group .box.margin01 dd {
        padding-top: 0; }
    .company_group .box dt {
      background: #F8F8F8;
      font-weight: 500;
      padding: 1% 2%;
      letter-spacing: 0.1em; }
      .company_group .box dt:before {
        content: '\f107';
        font-family: "Font Awesome 5 Free";
        font-weight: 500;
        color: #D7344B;
        margin-right: 0.5vw; }
    .company_group .box dd {
      padding: 6% 0 0 0;
      display: flex;
      justify-content: space-between;
      align-items: flex-end;
      line-height: 1.8; }
      .company_group .box dd.margin01 .map_icon,
      .company_group .box dd.margin01 .photo_box {
        margin-bottom: 6%; }
      .company_group .box dd.margin02 {
        justify-content: flex-start; }
      .company_group .box dd .text_box {
        width: calc((343/570)*100%); }
      .company_group .box dd p {
        margin-bottom: 2%; }
        .company_group .box dd p strong {
          display: block;
          font-weight: 500; }
      .company_group .box dd .map_icon {
        width: 12.78%; }
        .company_group .box dd .map_icon a {
          display: block;
          width: 100%;
          position: relative;
          background: url("../../company/map_icon_bg.png") no-repeat center center;
          background-size: 0% auto;
          transition: background 0.3s ease; }
          .company_group .box dd .map_icon a:hover {
            background-size: 100% auto;
            background-position: center center; }
            .company_group .box dd .map_icon a:hover i {
              background-position: center top 4px; }
          .company_group .box dd .map_icon a i {
            display: block;
            background: url("../../company/map_icon.png") no-repeat center top;
            background-size: 100% auto;
            padding-bottom: 70%;
            transition: background 0.3s ease; }
      .company_group .box dd .photo_box {
        width: calc((150/570)*100%); }

.group_img {
  width: 73.16%;
  margin: 20% auto 0; }
  @media (max-width: 428px) {
    .group_img {
      width: 100%; } }

.privacypolicy_box {
  width: 80%;
  margin: auto; }
  @media (max-width: 428px) {
    .privacypolicy_box {
      width: 100%; } }

.mw_searchcat_box {
  display: flex;
  width: 100%;
  border: 1px solid #EAE9E5;
  font-size: 1.318vw;
  font-weight: 500; }
  @media (min-width: 1366px) {
    .mw_searchcat_box {
      font-size: 18px; } }
  @media (max-width: 428px) {
    .mw_searchcat_box {
      display: block;
      border: none;
      border-bottom: 1px solid #EAE9E5;
      font-size: 3.738vw; } }
  .mw_searchcat_box.first {
    border-bottom: none; }
  .mw_searchcat_box dt,
  .mw_searchcat_box dd {
    padding: 1vw 2vw; }
  .mw_searchcat_box dt {
    background: #F5F5F5; }
  @media (max-width: 428px) {
    .mw_searchcat_box dd {
      padding: 4vw 2vw; } }
  .mw_searchcat_box dd ul {
    display: flex; }
    @media (max-width: 428px) {
      .mw_searchcat_box dd ul {
        flex-wrap: wrap; } }
    .mw_searchcat_box dd ul li {
      margin-right: 2vw; }
      @media (max-width: 428px) {
        .mw_searchcat_box dd ul li {
          margin-right: 4vw; } }
      .mw_searchcat_box dd ul li:last-child {
        margin-right: 0; }
      .mw_searchcat_box dd ul li a {
        text-decoration: underline;
        display: block; }
        .mw_searchcat_box dd ul li a:hover {
          text-decoration: none; }

ul.mw_list_box {
  display: flex;
  flex-wrap: wrap;
  margin-top: 5%; }
  @media (min-width: 1366px) {
    ul.mw_list_box {
      max-width: 1200px; } }
  @media (max-width: 428px) {
    ul.mw_list_box {
      margin-top: 10%;
      display: block; } }
  ul.mw_list_box li {
    width: 30%;
    margin-right: 5%;
    margin-bottom: 5%;
    box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.1);
    transition: all 0.3s ease;
    line-height: 1.8; }
    @media (max-width: 428px) {
      ul.mw_list_box li {
        width: 100%;
        transition: none;
        margin-right: 0;
        margin-bottom: 10vw;
        font-size: 4.206vw; } }
    ul.mw_list_box li:nth-child(3n) {
      margin-right: 0; }
    ul.mw_list_box li:hover {
      transform: scale(1.05, 1.05); }
      @media (max-width: 428px) {
        ul.mw_list_box li:hover {
          transform: none; } }
    ul.mw_list_box li a {
      display: block; }
      ul.mw_list_box li a p {
        background: url("../images/red_arrow.png") no-repeat right 2% top 35%;
        background-size: 17px auto;
        margin: 0 5% 0;
        padding-right: 10%;
        padding-bottom: 4%;
        transition: all 0.3s ease; }
      ul.mw_list_box li a:hover p {
        background: url("../images/red_arrow.png") no-repeat right top 35%;
        background-size: 17px auto; }

h3.mw_title {
  font-size: 2.196vw;
  text-align: center;
  font-weight: 500;
  letter-spacing: 0.05em;
  margin-top: 2em; }
  @media (min-width: 1366px) {
    h3.mw_title {
      font-size: 30px; } }
  @media (max-width: 428px) {
    h3.mw_title {
      font-size: 4.673vw; } }
  h3.mw_title:after {
    content: '　';
    display: block;
    line-height: 0;
    width: 3.7vw;
    border-bottom: solid 5px #D7344B;
    text-align: center;
    margin: 0.25em auto 0; }
    @media (max-width: 428px) {
      h3.mw_title:after {
        width: 37px; } }

section.mw_detail_box {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 10em; }
  @media (max-width: 428px) {
    section.mw_detail_box {
      display: block;
      width: 100%;
      padding: 0;
      margin-bottom: 0; } }
  section.mw_detail_box .photo_box {
    width: 61.6%;
    background: #fff;
    box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.1); }
    @media (max-width: 428px) {
      section.mw_detail_box .photo_box {
        width: 100%;
        padding: 0 7.24% 7.24%;
        box-shadow: 0 10px 10px rgba(0, 0, 0, 0.1); } }
    section.mw_detail_box .photo_box .slider_sum {
      padding: 3.378%;
      display: flex;
      line-height: 0; }
      @media (max-width: 428px) {
        section.mw_detail_box .photo_box .slider_sum {
          padding: 7.24% 0 0; } }
      section.mw_detail_box .photo_box .slider_sum a {
        display: block;
        max-width: 13.51%;
        margin-right: 3.378%;
        opacity: 0.5;
        transition: all 0.3s ease; }
        section.mw_detail_box .photo_box .slider_sum a:last-child {
          margin-right: 0; }
        section.mw_detail_box .photo_box .slider_sum a:hover, section.mw_detail_box .photo_box .slider_sum a.active {
          opacity: 1; }
        @media (max-width: 428px) {
          section.mw_detail_box .photo_box .slider_sum a {
            max-width: 17.44%;
            margin-right: 7.24%; } }
  section.mw_detail_box .text_box {
    width: 31.91%; }
    @media (max-width: 428px) {
      section.mw_detail_box .text_box {
        width: 100%;
        padding: 7.24%; } }
    section.mw_detail_box .text_box .title_box {
      border-bottom: 1px solid #EAE9E5;
      padding-bottom: 0.5em;
      margin-bottom: 2em; }
      section.mw_detail_box .text_box .title_box h3 {
        font-weight: 500;
        font-size: 1.575vw;
        letter-spacing: 0.05em;
        line-height: 1.8; }
        @media (min-width: 1366px) {
          section.mw_detail_box .text_box .title_box h3 {
            font-size: 20px; } }
        @media (max-width: 428px) {
          section.mw_detail_box .text_box .title_box h3 {
            font-size: 4.673vw; } }
    section.mw_detail_box .text_box .data_box strong {
      display: block;
      color: #003461;
      font-weight: 500;
      border-bottom: 1px solid #EAE9E5;
      padding-bottom: 0.5em;
      margin-bottom: 0.5em; }
    section.mw_detail_box .text_box .data_box dl {
      display: flex;
      border-bottom: 1px solid #EAE9E5;
      padding-bottom: 0.5em;
      margin-bottom: 0.5em; }
      section.mw_detail_box .text_box .data_box dl:last-child {
        border-bottom: none; }
      section.mw_detail_box .text_box .data_box dl dt {
        width: 30%; }
      section.mw_detail_box .text_box .data_box dl dd {
        width: 70%; }

h4 {
  font-weight: 500;
  margin-bottom: 1%; }
  h4:before {
    content: '●';
    color: #D7344B; }

.cmt_about_box .col_box {
  display: flex;
  justify-content: space-between;
  align-items: flex-start;
  margin-bottom: 3%; }
  @media (max-width: 428px) {
    .cmt_about_box .col_box {
      display: block; } }
  .cmt_about_box .col_box p {
    width: 63.3%; }
    @media (max-width: 428px) {
      .cmt_about_box .col_box p {
        width: 100%;
        margin-bottom: 5%; } }
    .cmt_about_box .col_box p.wide {
      width: 46.6%; }
      @media (max-width: 428px) {
        .cmt_about_box .col_box p.wide {
          width: 100%; } }
  .cmt_about_box .col_box ul {
    width: 24.25%; }
    @media (max-width: 428px) {
      .cmt_about_box .col_box ul {
        width: 100%;
        margin-bottom: 15%; } }
    .cmt_about_box .col_box ul li {
      margin-bottom: 3%; }
      .cmt_about_box .col_box ul li a {
        display: block;
        background: url("../images/white_arrow02.png") no-repeat right 20px center, #D7344B;
        background-size: 17px auto;
        color: #fff;
        padding: 3% 5%;
        transition: background 0.3s, opacity 0.3s; }
        .cmt_about_box .col_box ul li a.pdf {
          background-color: #0067BF; }
          .cmt_about_box .col_box ul li a.pdf span {
            padding-right: 20%;
            background: url("../images/pdf_icon_white.png") no-repeat right center;
            background-size: auto 80%; }
        .cmt_about_box .col_box ul li a:hover {
          opacity: 0.8;
          background-position: right 15px center; }
  .cmt_about_box .col_box dl {
    width: 46.6%;
    border: 2px solid #003461;
    text-align: center; }
    .cmt_about_box .col_box dl dt {
      background: #003461;
      color: #fff;
      padding: 5px 0; }
    .cmt_about_box .col_box dl dd {
      padding: 10px; }
      .cmt_about_box .col_box dl dd strong {
        display: block;
        font-size: 1.903vw;
        font-weight: 500;
        color: #D7344B; }
      .cmt_about_box .col_box dl dd em {
        color: #D7344B; }

.attention_box {
  border: 2px solid #D7344B;
  position: relative;
  margin-bottom: 3%; }
  @media (max-width: 428px) {
    .attention_box {
      margin-bottom: 10%; } }
  .attention_box strong {
    position: absolute;
    top: -20%;
    left: 20px;
    display: inline-block;
    background: #fff;
    color: #D7344B;
    font-size: 1.611vw;
    font-weight: 500;
    padding: 0 10px; }
    @media (min-width: 1366px) {
      .attention_box strong {
        font-size: 22px; } }
    @media (max-width: 428px) {
      .attention_box strong {
        font-size: 4.206vw;
        top: -7%;
        left: 3%; } }
  .attention_box ul {
    display: flex;
    flex-wrap: wrap;
    padding: 2.5% 30px 2%; }
    @media (max-width: 428px) {
      .attention_box ul {
        display: block;
        padding: 5%; } }
    .attention_box ul li {
      width: 50%; }
      @media (max-width: 428px) {
        .attention_box ul li {
          width: 100%;
          text-indent: -1.2em;
          padding-left: 1.2em;
          margin-bottom: 2%; } }
      .attention_box ul li:before {
        content: '●';
        color: #D7344B;
        margin-right: 1%; }

h5.blue_color {
  color: #003461;
  font-size: 1.611vw;
  font-weight: 500;
  border-bottom: 1px solid #EAE9E5;
  margin-bottom: 1%; }
  @media (min-width: 1366px) {
    h5.blue_color {
      font-size: 22px; } }
  @media (max-width: 428px) {
    h5.blue_color {
      font-size: 4.206vw; } }

table.topics_box td {
  padding-right: 20px; }

.wp-block-table thead {
  border-bottom: 0 !important; }

.wp-block-table.topics_table {
  margin-bottom: 5%; }
  @media (max-width: 428px) {
    .wp-block-table.topics_table {
      margin-bottom: 15%; } }
  .wp-block-table.topics_table table {
    border: none; }
  @media (max-width: 428px) {
    .wp-block-table.topics_table tr {
      display: block; } }
  .wp-block-table.topics_table th {
    border: none; }
  .wp-block-table.topics_table td {
    border: none; }
    @media (max-width: 428px) {
      .wp-block-table.topics_table td {
        display: block; }
        .wp-block-table.topics_table td:nth-child(odd) {
          padding-top: 3%; }
        .wp-block-table.topics_table td:nth-child(even) {
          padding-bottom: 3%;
          padding-left: 1em;
          border-bottom: 1px solid #EAE9E5; } }

.wp-block-column.wide {
  width: 46.6%; }

.cmt_tec_box {
  gap: 4em !important;
  justify-content: space-between; }
  @media not all and (min-resolution: 0.001dpcm) {
    @supports not (translate: none) {
      .cmt_tec_box .wp-block-column {
        margin-right: 5%; }
        .cmt_tec_box .wp-block-column:last-child {
          margin-right: 0; }
        @media (max-width: 428px) {
          .cmt_tec_box .wp-block-column {
            margin-right: 0; } } } }
  @media (max-width: 428px) {
    .cmt_tec_box {
      gap: 0 !important; } }
  .cmt_tec_box .wp-block-column {
    width: 45%; }
  .cmt_tec_box table {
    margin: 0 0 1em 1em;
    border-top: 1px solid #EFEFEF;
    width: calc(100% - 1em) !important; }
    @media (max-width: 428px) {
      .cmt_tec_box table {
        margin: 0 0 1em 0;
        width: 100% !important; } }
    .cmt_tec_box table tr:nth-child(even) {
      background: #FAF9F4; }
    .cmt_tec_box table th {
      border: none; }
    .cmt_tec_box table td {
      border: none;
      border-bottom: 1px solid #EFEFEF;
      line-height: 1.6;
      vertical-align: top;
      padding: 2% 0; }
      .cmt_tec_box table td:first-child {
        width: 18%; }
      .cmt_tec_box table td:nth-child(2) {
        width: 52%; }
        @media (max-width: 428px) {
          .cmt_tec_box table td:nth-child(2) {
            width: 42%; } }
      .cmt_tec_box table td:last-child {
        width: 30%;
        text-indent: -1.3em;
        padding-left: 1.3em; }
        @media (max-width: 428px) {
          .cmt_tec_box table td:last-child {
            width: 40%; } }

.cmt_works_box {
  gap: 4em !important; }
  @media not all and (min-resolution: 0.001dpcm) {
    @supports not (translate: none) {
      .cmt_works_box .wp-block-column {
        margin-right: 5%; }
        .cmt_works_box .wp-block-column:last-child {
          margin-right: 0; }
        @media (max-width: 428px) {
          .cmt_works_box .wp-block-column {
            margin-right: 0; } } } }
  @media (max-width: 428px) {
    .cmt_works_box {
      gap: 1em !important; } }

.cmt_works_table {
  width: 46.6%; }
  .cmt_works_table table {
    border: 2px solid #003461;
    padding-bottom: 2%;
    letter-spacing: 0.1em; }
    @media (max-width: 428px) {
      .cmt_works_table table {
        letter-spacing: 0; } }
    .cmt_works_table table thead {
      background: #003461;
      color: #fff; }
      .cmt_works_table table thead th {
        padding: 5px 0;
        font-weight: 500; }
    .cmt_works_table table td {
      padding: 2% 0;
      font-weight: 500; }
      .cmt_works_table table td strong {
        display: block;
        font-size: 1.903vw;
        color: #D7344B;
        font-weight: 500; }
        @media (max-width: 428px) {
          .cmt_works_table table td strong {
            font-size: 6.075vw; } }
      .cmt_works_table table td em {
        color: #D7344B;
        font-weight: 500; }

.department_contact_box {
  display: flex;
  justify-content: center;
  margin: 10% auto 0;
  word-break: break-word;
  overflow-wrap: anywhere; }
  .department_contact_box .inbox {
    display: flex;
    flex-wrap: nowrap;
    text-align: center;
    letter-spacing: 0.1em;
    font-weight: 500; }
    @media (max-width: 428px) {
      .department_contact_box .inbox {
        width: 100%;
        display: block;
        position: relative; } }
    .department_contact_box .inbox dt {
      background: #003461;
      color: #fff;
      padding: 10px 5%;
      box-sizing: border-box;
      white-space: nowrap; }
      @media (max-width: 428px) {
        .department_contact_box .inbox dt {
          width: 30%;
          padding: 5px 5%; } }
    .department_contact_box .inbox dd {
      background: #F5F5F5;
      padding: 10px 5%;
      box-sizing: border-box;
      white-space: nowrap; }
      @media (max-width: 428px) {
        .department_contact_box .inbox dd {
          width: 100%;
          padding: 10px 0; } }

.cmt_list_box dl {
  padding: 1% 2%;
  display: flex;
  justify-content: space-between;
  border-bottom: 1px solid #EFEFEF;
  box-sizing: border-box; }
  .cmt_list_box dl:nth-child(2n+1) {
    background: #FAF9F4; }
  @media (max-width: 428px) {
    .cmt_list_box dl {
      padding: 4% 4% 2%;
      display: block;
      border-bottom: 1px solid #EAE9E5; } }
  .cmt_list_box dl.title {
    color: #003461;
    font-weight: 500;
    text-align: center;
    background: #F5F5F5; }
    @media (max-width: 428px) {
      .cmt_list_box dl.title {
        display: none; } }
    .cmt_list_box dl.title dd {
      text-align: center !important; }
      @media (max-width: 428px) {
        .cmt_list_box dl.title dd {
          text-align: left !important; } }
  .cmt_list_box dl dt {
    width: 67.5%;
    margin-left: 2.5%; }
    .cmt_list_box dl dt a {
      color: #0067BF;
      text-decoration: underline;
      background: url("../../cmt/pen_icon.png") no-repeat left 50%;
      background-size: 3% auto;
      display: block;
      padding-left: 5%; }
      @media (max-width: 428px) {
        .cmt_list_box dl dt a {
          padding-left: 8%;
          background-size: 5% auto;
          background-position: left 2.3vw; } }
      .cmt_list_box dl dt a:hover {
        text-decoration: none; }
    @media (max-width: 428px) {
      .cmt_list_box dl dt {
        display: block;
        width: 100%;
        margin: 0.5em 0; } }
  .cmt_list_box dl dd {
    width: 10%;
    text-align: center; }
    @media (max-width: 428px) {
      .cmt_list_box dl dd {
        width: auto;
        display: block;
        margin-right: 3%;
        text-align: left; }
        .cmt_list_box dl dd:before {
          content: '日付：';
          color: #003461;
          font-weight: 500; } }
    .cmt_list_box dl dd:nth-child(2) {
      width: 10%;
      margin-left: 2.5%;
      text-align: left; }
      @media (max-width: 428px) {
        .cmt_list_box dl dd:nth-child(2) {
          width: auto;
          margin-left: 0; }
          .cmt_list_box dl dd:nth-child(2):before {
            content: '担当者名：'; } }
    .cmt_list_box dl dd:nth-child(3) {
      width: 10%;
      text-align: left;
      margin-left: 2.5%; }
      @media (max-width: 428px) {
        .cmt_list_box dl dd:nth-child(3) {
          width: auto;
          display: block;
          margin-left: 0; }
          .cmt_list_box dl dd:nth-child(3):before {
            content: '担当者名：'; }
          .cmt_list_box dl dd:nth-child(3) p {
            display: inline-block; }
            .cmt_list_box dl dd:nth-child(3) p:before {
              display: inline;
              content: '、'; } }

.cmt_detail_box .date_box {
  text-align: right;
  margin-bottom: 5%; }
  @media (max-width: 428px) {
    .cmt_detail_box .date_box p {
      display: inline-block; }
      .cmt_detail_box .date_box p:before {
        content: '、'; } }
.cmt_detail_box h4 {
  font-weight: 500;
  margin-bottom: 1%; }
  .cmt_detail_box h4:before {
    content: '●';
    color: #D7344B; }
.cmt_detail_box .table_box {
  border: 1px solid #EAE9E5;
  border-bottom: none;
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 8%; }
  @media (max-width: 428px) {
    .cmt_detail_box .table_box {
      display: block; } }
  .cmt_detail_box .table_box dt {
    width: 20%;
    padding: 1% 2%;
    background: #FAF9F4;
    border-bottom: 1px solid #EAE9E5; }
    @media (max-width: 428px) {
      .cmt_detail_box .table_box dt {
        width: 100%;
        padding: 2% 3%; }
        .cmt_detail_box .table_box dt p {
          display: inline-block; }
          .cmt_detail_box .table_box dt p:before {
            content: '　'; } }
    .cmt_detail_box .table_box dt.v_center {
      display: flex;
      align-items: center; }
      .cmt_detail_box .table_box dt.v_center span {
        display: block; }
  .cmt_detail_box .table_box dd {
    width: 80%;
    padding: 1% 2%;
    border-bottom: 1px solid #EAE9E5; }
    @media (max-width: 428px) {
      .cmt_detail_box .table_box dd {
        width: 100%;
        padding: 3% 3%; } }
    .cmt_detail_box .table_box dd dl {
      display: flex;
      flex-wrap: wrap;
      border: 1px solid #EAE9E5;
      border-bottom: none;
      max-width: 500px; }
      .cmt_detail_box .table_box dd dl dt {
        background: #F5F5F5;
        text-align: center;
        width: 20%; }
      .cmt_detail_box .table_box dd dl dd {
        width: 80%;
        padding: 1% 5%; }
        @media (max-width: 428px) {
          .cmt_detail_box .table_box dd dl dd {
            padding: 2% 3%; } }
    .cmt_detail_box .table_box dd img {
      width: 48.5%;
      margin-top: 1%;
      margin-right: 3%; }
      .cmt_detail_box .table_box dd img:last-child {
        margin-right: 0; }
      @media (max-width: 428px) {
        .cmt_detail_box .table_box dd img {
          width: 100%;
          margin: 0 auto; }
          .cmt_detail_box .table_box dd img:last-child {
            margin-bottom: 0; } }

ul.disaster_center_img {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap; }
  @media (max-width: 428px) {
    ul.disaster_center_img {
      margin-bottom: 10%; } }
  ul.disaster_center_img li {
    width: 48.75%;
    margin-bottom: 1%; }

table.disaster_center_table {
  width: 100%; }
  table.disaster_center_table tr {
    background: #FAF9F4; }
    table.disaster_center_table tr:nth-child(even) {
      background: #fff; }
    table.disaster_center_table tr td {
      border-bottom: 1px solid #EFEFEF;
      padding: 1% 2%; }
      table.disaster_center_table tr td:nth-child(even) {
        text-align: right;
        padding-right: 5em; }
        @media (max-width: 428px) {
          table.disaster_center_table tr td:nth-child(even) {
            padding-right: 1em; } }

.wp-block-columns.wide_banner_box {
  width: calc((900/1200)*100%);
  margin-left: auto;
  margin-right: auto; }
  @media (max-width: 428px) {
    .wp-block-columns.wide_banner_box {
      width: 100%; } }

.wp-block-table.border_table02 {
  width: 100%;
  margin: auto;
  word-break: break-all; }
  .wp-block-table.border_table02 a {
    color: #0067BF;
    text-decoration: underline; }
    .wp-block-table.border_table02 a:hover {
      text-decoration: none; }
  .wp-block-table.border_table02 table {
    border: none;
    border: 1px solid #EFEFEF;
    line-height: 1.7; }
    @media (max-width: 428px) {
      .wp-block-table.border_table02 table {
        border: none;
        display: block; } }
    .wp-block-table.border_table02 table th,
    .wp-block-table.border_table02 table td {
      border: none;
      border-top: 1px solid #EFEFEF;
      padding: 1% 2%; }
      @media (max-width: 428px) {
        .wp-block-table.border_table02 table th,
        .wp-block-table.border_table02 table td {
          display: block;
          border-top: none;
          padding: 2%; } }
    .wp-block-table.border_table02 table th {
      background: #F5F5F5;
      text-align: right;
      vertical-align: top; }
      @media (max-width: 428px) {
        .wp-block-table.border_table02 table th {
          text-align: left;
          font-weight: 500; } }
    @media (max-width: 428px) {
      .wp-block-table.border_table02 table td {
        padding-bottom: 5%; } }
    .wp-block-table.border_table02 table dl {
      display: flex;
      margin-bottom: 1%; }
      @media (max-width: 428px) {
        .wp-block-table.border_table02 table dl {
          width: 100%; } }
      .wp-block-table.border_table02 table dl dt,
      .wp-block-table.border_table02 table dl dd {
        margin-right: 1em; }
      .wp-block-table.border_table02 table dl dt {
        white-space: nowrap; }

.csr_main_photo_box {
  margin: 5% auto 5%;
  max-width: 1200px; }
  @media (max-width: 428px) {
    .csr_main_photo_box {
      margin-top: 0; } }

section.csr_detail_box {
  padding-top: 0;
  margin-bottom: 5%; }
  @media (max-width: 428px) {
    section.csr_detail_box {
      margin-bottom: 20%; } }
  section.csr_detail_box h3.csr_title {
    display: flex;
    justify-content: space-between;
    align-items: baseline;
    font-size: 1.611vw;
    font-weight: 500;
    color: #fff;
    letter-spacing: 0.1em;
    border-radius: 100px;
    background: linear-gradient(left, #0067bf 53%, #55d3c4 100%);
    background: url("../../csr/h3_bg.png"), -moz-linear-gradient(left, #0067bf 53%, #55d3c4 100%);
    background: url("../../csr/h3_bg.png"), -webkit-linear-gradient(left, #0067bf 53%, #55d3c4 100%);
    background: url("../../csr/h3_bg.png"), linear-gradient(to right, #0067bf 53%, #55d3c4 100%);
    filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#0067bf', endColorstr='#55d3c4', GradientType=1);
    background-repeat: no-repeat, no-repeat;
    background-size: 92px auto, auto auto;
    background-position: right -30px top 15px, center center;
    padding: 0.75% 1.5em;
    margin-bottom: 3%; }
    @media (min-width: 1366px) {
      section.csr_detail_box h3.csr_title {
        font-size: 22px; } }
    @media (max-width: 428px) {
      section.csr_detail_box h3.csr_title {
        font-size: 3.738vw;
        display: block;
        line-height: 1.6;
        border-radius: 10px;
        padding: 1em 1em;
        background-position: right -30px top 50px, center center;
        margin-bottom: 5%; } }
    section.csr_detail_box h3.csr_title span {
      font-size: 1.26vw;
      letter-spacing: 0;
      background: url("../../csr/h3_bg.png") no-repeat left center;
      background-size: 1.4vw auto;
      padding-left: 25px; }
      @media (min-width: 1366px) {
        section.csr_detail_box h3.csr_title span {
          font-size: 16px;
          background-size: 14px auto; } }
      @media (max-width: 428px) {
        section.csr_detail_box h3.csr_title span {
          display: block;
          font-size: 3.271vw;
          text-align: right;
          margin-top: 3%;
          background-position: right 38% center;
          background-size: 12px auto; } }
  section.csr_detail_box .column_box {
    display: flex;
    justify-content: space-between;
    margin-left: calc((33/1140)*100%); }
    @media (max-width: 428px) {
      section.csr_detail_box .column_box {
        display: block; } }
    section.csr_detail_box .column_box.row01 div {
      width: calc((618/1140)*100%); }
      @media (max-width: 428px) {
        section.csr_detail_box .column_box.row01 div {
          width: 100%; }
          section.csr_detail_box .column_box.row01 div p {
            margin-bottom: 5%; } }
      section.csr_detail_box .column_box.row01 div:last-child {
        width: auto; }
    section.csr_detail_box .column_box.row02 {
      margin-bottom: 5%; }
      section.csr_detail_box .column_box.row02 div {
        width: calc((353/1140)*100%); }
        @media (max-width: 428px) {
          section.csr_detail_box .column_box.row02 div {
            width: 100%;
            margin-bottom: 10%; } }
        section.csr_detail_box .column_box.row02 div:last-child {
          width: calc((740/1140)*100%); }
          @media (max-width: 428px) {
            section.csr_detail_box .column_box.row02 div:last-child {
              width: 100%; } }
        section.csr_detail_box .column_box.row02 div p {
          margin-bottom: 2%; }
          @media (max-width: 428px) {
            section.csr_detail_box .column_box.row02 div p {
              margin-bottom: 5%; } }
    section.csr_detail_box .column_box.row03 {
      margin-bottom: 5%;
      flex-wrap: wrap;
      align-items: flex-start; }
      section.csr_detail_box .column_box.row03:after {
        width: 100%;
        content: '　';
        display: block;
        clear: both; }
      section.csr_detail_box .column_box.row03 div {
        width: calc((490/1140)*100%); }
        @media (max-width: 428px) {
          section.csr_detail_box .column_box.row03 div {
            width: 100%; } }
        section.csr_detail_box .column_box.row03 div:last-child {
          width: calc((593/1140)*100%);
          position: relative; }
          @media (max-width: 428px) {
            section.csr_detail_box .column_box.row03 div:last-child {
              width: 100%; } }
        section.csr_detail_box .column_box.row03 div ul li {
          padding-left: calc((35/472)*100%);
          margin-bottom: 5%;
          background-image: url("../../csr/no_list01.png");
          background-position: left top 5px;
          background-size: calc((28/472)*100%), auto;
          background-repeat: no-repeat; }
          section.csr_detail_box .column_box.row03 div ul li:nth-child(2) {
            background-image: url("../../csr/no_list02.png"); }
          section.csr_detail_box .column_box.row03 div ul li:nth-child(3) {
            background-image: url("../../csr/no_list03.png"); }
          section.csr_detail_box .column_box.row03 div ul li:nth-child(4) {
            background-image: url("../../csr/no_list04.png"); }
          section.csr_detail_box .column_box.row03 div ul li:nth-child(5) {
            background-image: url("../../csr/no_list05.png"); }
          section.csr_detail_box .column_box.row03 div ul li:nth-child(6) {
            background-image: url("../../csr/no_list06.png"); }
          section.csr_detail_box .column_box.row03 div ul li:nth-child(7) {
            background-image: url("../../csr/no_list07.png"); }
          section.csr_detail_box .column_box.row03 div ul li:nth-child(8) {
            background-image: url("../../csr/no_list08.png"); }
          section.csr_detail_box .column_box.row03 div ul li:nth-child(9) {
            background-image: url("../../csr/no_list09.png"); }
          section.csr_detail_box .column_box.row03 div ul li:nth-child(10) {
            background-image: url("../../csr/no_list10.png"); }
          @media (max-width: 428px) {
            section.csr_detail_box .column_box.row03 div ul li {
              line-height: 1.6; } }
        section.csr_detail_box .column_box.row03 div p {
          width: calc((518/593)*100%); }
          @media (max-width: 428px) {
            section.csr_detail_box .column_box.row03 div p {
              width: 100%; } }
          section.csr_detail_box .column_box.row03 div p img {
            display: block;
            line-height: 0; }
          section.csr_detail_box .column_box.row03 div p:last-child {
            position: absolute;
            width: calc((169/593)*100%);
            right: 0;
            bottom: -20%;
            text-align: center;
            line-height: calc(25/16); }
            @media (max-width: 428px) {
              section.csr_detail_box .column_box.row03 div p:last-child {
                position: relative;
                width: 70%;
                margin: 0 auto; } }
  section.csr_detail_box ol {
    list-style: decimal;
    padding-left: 1em;
    margin-left: 1em; }
    section.csr_detail_box ol li {
      margin-bottom: 1em; }
  section.csr_detail_box a {
    display: inline-block;
    color: #0067BF;
    border-bottom: 1px solid #0067BF;
    margin-bottom: 1.5%;
    background-image: url("../../csr/arrow_blue.png");
    background-repeat: no-repeat;
    background-position: left top 7px;
    background-size: 1.5vw auto;
    padding-left: 1.5em;
    margin-right: 2em;
    transition: color 0.3s ease; }
    @media (min-width: 1366px) {
      section.csr_detail_box a {
        background-position: left top 10px;
        background-size: 19px auto; } }
    @media (max-width: 428px) {
      section.csr_detail_box a {
        background-size: 14px auto;
        background-position: left top 3px;
        padding-left: 1.5em;
        padding-bottom: 0.5em;
        margin-bottom: 1em;
        margin-right: 0;
        line-height: 1.6; } }
    section.csr_detail_box a[href$=".pdf"]:after,
    section.csr_detail_box a [href$=".xls"]:after,
    section.csr_detail_box a [href$=".docx"]:after {
      content: "　";
      display: inline-block;
      width: 3.5vw;
      margin-left: 1em;
      background: url("../images/pdf_icon_red.png") no-repeat center center;
      background-size: contain; }
      @media (min-width: 1366px) {
        section.csr_detail_box a[href$=".pdf"]:after,
        section.csr_detail_box a [href$=".xls"]:after,
        section.csr_detail_box a [href$=".docx"]:after {
          width: 43px; } }
      @media (max-width: 428px) {
        section.csr_detail_box a[href$=".pdf"]:after,
        section.csr_detail_box a [href$=".xls"]:after,
        section.csr_detail_box a [href$=".docx"]:after {
          width: 33px;
          margin-left: 0.5em; } }
    section.csr_detail_box a:hover {
      color: #D7344B; }
    section.csr_detail_box a.post-edit-link {
      background: none;
      padding-left: 0;
      margin-right: 0; }
  section.csr_detail_box img {
    margin-top: 1%; }
    @media (max-width: 428px) {
      section.csr_detail_box img {
        margin-top: 3%; } }
  section.csr_detail_box sub {
    font-size: 0.878vw;
    vertical-align: baseline; }
    @media (min-width: 1366px) {
      section.csr_detail_box sub {
        font-size: 12px; } }
    @media (max-width: 428px) {
      section.csr_detail_box sub {
        font-size: 2.804vw; } }
  section.csr_detail_box .text_box {
    margin-left: calc((33/1140)*100%); }
  section.csr_detail_box h4 {
    font-weight: 500;
    margin-bottom: 1%;
    padding-left: 1em;
    border-left: 10px solid #D7344B;
    border-left: 10px solid #52CFC4;
    line-height: 1.8; }
    @media (max-width: 428px) {
      section.csr_detail_box h4 {
        border-left: 5px solid #D7344B; } }
    section.csr_detail_box h4:before {
      content: none; }
    @media (max-width: 428px) {
      section.csr_detail_box h4 {
        margin-bottom: 3%; } }
  section.csr_detail_box .wp-block-columns.flex01 {
    margin-bottom: 0; }
    @media not all and (min-resolution: 0.001dpcm) {
      @supports not (translate: none) {
        section.csr_detail_box .wp-block-columns.flex01 div {
          margin-right: 5%; }
          section.csr_detail_box .wp-block-columns.flex01 div:last-child {
            margin-right: 0; }
          @media (max-width: 428px) {
            section.csr_detail_box .wp-block-columns.flex01 div {
              margin-right: 0; } } } }
  @media (max-width: 428px) {
    section.csr_detail_box .wp-block-column.flex01 {
      flex-basis: 40% !important; } }
  section.csr_detail_box figure,
  section.csr_detail_box figcaption {
    text-align: center; }
    @media (max-width: 428px) {
      section.csr_detail_box figure img,
      section.csr_detail_box figcaption img {
        width: 80%; } }
    section.csr_detail_box figure a:after,
    section.csr_detail_box figcaption a:after {
      content: none !important; }

footer {
  background: url("../images/footer_bg03.jpg") no-repeat center bottom;
  background-size: auto 69.693vw;
  position: relative; }
  @media (max-width: 1623px) {
    footer {
      background-size: auto 75vw; } }
  @media (min-width: 1366px) {
    footer {
      background-position: center top bottom; } }
  @media (max-width: 428px) {
    footer {
      background-size: auto 65%;
      background-position: center top 58vw; } }
  footer .contact_box {
    padding-top: 14.012vw;
    margin: 0 auto; }
    @media (min-width: 1366px) {
      footer .contact_box {
        width: 1366px;
        padding-top: 128px;
        margin: 0 auto;
        background-size: 771px auto; } }
    @media (max-width: 428px) {
      footer .contact_box {
        padding-top: 13vw;
        background: none;
        margin-bottom: 10vw; } }
    footer .contact_box .inbox {
      background: #fff;
      box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.1);
      padding: 2.5vw 4.392vw; }
      @media (min-width: 1366px) {
        footer .contact_box .inbox {
          padding: 40px 80px; } }
      @media (max-width: 428px) {
        footer .contact_box .inbox {
          background: none;
          box-shadow: none;
          padding: 0; } }
      footer .contact_box .inbox dl {
        display: flex;
        justify-content: space-between; }
        @media (max-width: 428px) {
          footer .contact_box .inbox dl {
            display: block; } }
        footer .contact_box .inbox dl p {
          font-size: 1.26vw;
          margin-top: 2%;
          line-height: 1.8; }
          @media (min-width: 1366px) {
            footer .contact_box .inbox dl p {
              font-size: 16px; } }
          @media (max-width: 428px) {
            footer .contact_box .inbox dl p {
              font-size: 3.738vw; } }
        footer .contact_box .inbox dl dt {
          width: 49%;
          border-right: 1px solid #EFEFEF; }
          @media (max-width: 428px) {
            footer .contact_box .inbox dl dt {
              width: 100%;
              text-align: center;
              border-right: none; }
              footer .contact_box .inbox dl dt p {
                font-size: 3.738vw;
                margin-top: 3vw;
                margin-bottom: 5vw; } }
        footer .contact_box .inbox dl dd {
          text-align: center; }
          @media (max-width: 428px) {
            footer .contact_box .inbox dl dd {
              background: #fff;
              box-shadow: 10px 10px 30px rgba(0, 0, 0, 0.1);
              padding: 4.392vw 0; } }
          footer .contact_box .inbox dl dd strong {
            font-size: 4.392vw;
            color: #003461;
            font-weight: 500;
            line-height: 2;
            background: url("../images/phone_icon.png") no-repeat left 2vw;
            background-size: 3.111vw auto;
            padding-left: 4vw; }
            @media (min-width: 1366px) {
              footer .contact_box .inbox dl dd strong {
                font-size: 60px;
                background: url("../images/phone_icon.png") no-repeat left 25px;
                background-size: 42.5px auto;
                padding-left: 50px; } }
            @media (max-width: 428px) {
              footer .contact_box .inbox dl dd strong {
                padding-left: 6.5vw;
                font-size: 8.178vw;
                line-height: 1.6;
                background: url("../images/phone_icon.png") no-repeat left center;
                background-size: 6vw auto; } }
            footer .contact_box .inbox dl dd strong a {
              color: #003461; }
          footer .contact_box .inbox dl dd p {
            padding-left: 3%;
            line-height: 1;
            margin-top: 0; }
            @media (max-width: 428px) {
              footer .contact_box .inbox dl dd p {
                font-size: 3.271vw; } }
  footer section.link_site {
    padding-top: 8.9vw; }
    @media (max-width: 428px) {
      footer section.link_site {
        padding-top: 0; } }
    footer section.link_site .link_box {
      text-align: center;
      margin-bottom: 10vw; }
      footer section.link_site .link_box ul {
        max-width: calc((360px * 3) + 2em);
        margin-left: auto;
        margin-right: auto;
        display: flex;
        justify-content: center;
        flex-flow: wrap;
        gap: 2em; }
        footer section.link_site .link_box ul.gap {
          margin-bottom: 2em; }
          @media (max-width: 428px) {
            footer section.link_site .link_box ul.gap {
              margin-bottom: 0; } }
        @media (max-width: 428px) {
          footer section.link_site .link_box ul {
            display: block;
            margin-bottom: 20vw; } }
        footer section.link_site .link_box ul li {
          line-height: 0;
          width: calc((100% - 4em * 1) / 3);
          box-shadow: 10px 10px 20px rgba(0, 0, 0, 0.1);
          transition: all 0.3s ease; }
          @media (max-width: 428px) {
            footer section.link_site .link_box ul li {
              width: 100%;
              margin-bottom: 8%; } }
          footer section.link_site .link_box ul li:hover,
          footer section.link_site .link_box ul li a:active {
            transform: scale(1.05, 1.05); }
            @media (max-width: 428px) {
              footer section.link_site .link_box ul li:hover,
              footer section.link_site .link_box ul li a:active {
                transform: none; } }
  footer .footer_box {
    position: relative; }
    @media (max-width: 428px) {
      footer .footer_box {
        background: #003461;
        padding: 12.850vw 0; } }
    footer .footer_box .inbox {
      padding: 4.392vw 4.392vw 2.392vw 4.392vw;
      color: #fff;
      display: flex;
      justify-content: space-between;
      flex-wrap: wrap;
      mix-blend-mode: luminosity;
      position: relative;
      z-index: 2; }
      @media (min-width: 1366px) {
        footer .footer_box .inbox {
          max-width: 1200px;
          padding: 20px 0 40px;
          margin: 0 auto; } }
      @media (max-width: 428px) {
        footer .footer_box .inbox {
          display: block;
          width: 85%;
          padding: 0;
          margin: 0 auto; } }
      footer .footer_box .inbox a {
        color: #fff; }
        footer .footer_box .inbox a:hover {
          text-decoration: underline; }
      footer .footer_box .inbox ul {
        display: flex;
        justify-content: space-between;
        margin-bottom: 2.928vw; }
        @media (min-width: 1366px) {
          footer .footer_box .inbox ul {
            margin-bottom: 40px; } }
        @media (max-width: 428px) {
          footer .footer_box .inbox ul {
            display: none; } }
        footer .footer_box .inbox ul li {
          width: 10.981vw;
          border-left: 1px solid rgba(255, 255, 255, 0.45);
          padding-left: 1.3vw;
          box-sizing: border-box; }
          footer .footer_box .inbox ul li:last-child {
            border-right: 1px solid rgba(255, 255, 255, 0.45); }
          @media (min-width: 1366px) {
            footer .footer_box .inbox ul li {
              width: 150px;
              padding-left: 15px; } }
          footer .footer_box .inbox ul li dt {
            margin-bottom: 15%;
            font-size: 1.26vw;
            font-weight: 500;
            line-height: 2; }
            @media (min-width: 1366px) {
              footer .footer_box .inbox ul li dt {
                font-size: 16px; } }
            footer .footer_box .inbox ul li dt a {
              display: block; }
              footer .footer_box .inbox ul li dt a:hover i {
                padding-left: 3%; }
              footer .footer_box .inbox ul li dt a i {
                display: inline-block;
                font-style: normal;
                transition: all 0.2s ease; }
                footer .footer_box .inbox ul li dt a i:after {
                  content: '\f105';
                  font-family: "Font Awesome 5 Free";
                  font-weight: 600;
                  color: #fff; }
            footer .footer_box .inbox ul li dt span {
              display: block;
              font-size: 0.805vw;
              color: rgba(255, 255, 255, 0.4);
              line-height: 1.6; }
              @media (min-width: 1366px) {
                footer .footer_box .inbox ul li dt span {
                  font-size: 11px; } }
          footer .footer_box .inbox ul li dd {
            font-size: 1.025vw;
            width: 100%; }
            @media (min-width: 1366px) {
              footer .footer_box .inbox ul li dd {
                font-size: 14px; } }
            footer .footer_box .inbox ul li dd a {
              display: block;
              margin-top: 5%; }
              footer .footer_box .inbox ul li dd a:before {
                display: inline-block;
                content: '\f105';
                font-family: "Font Awesome 5 Free";
                font-weight: 600;
                color: #fff;
                margin-right: 4%;
                transition: all 0.2s ease; }
              footer .footer_box .inbox ul li dd a:hover:before {
                margin-right: 2%;
                margin-left: 2%; }
      footer .footer_box .inbox .address_box {
        font-size: 1.318vw;
        white-space: nowrap; }
        @media (min-width: 1366px) {
          footer .footer_box .inbox .address_box {
            font-size: 18px; } }
        @media (max-width: 428px) {
          footer .footer_box .inbox .address_box {
            text-align: center;
            font-size: 3.271vw; } }
        footer .footer_box .inbox .address_box img {
          width: 15.739vw;
          margin-bottom: 5%; }
          @media (min-width: 1366px) {
            footer .footer_box .inbox .address_box img {
              width: 215px; } }
          @media (max-width: 428px) {
            footer .footer_box .inbox .address_box img {
              width: 54.26%; } }
      footer .footer_box .inbox .copy_box {
        font-size: 1.025vw; }
        @media (min-width: 1366px) {
          footer .footer_box .inbox .copy_box {
            font-size: 14px; } }
        @media (max-width: 428px) {
          footer .footer_box .inbox .copy_box {
            text-align: center;
            font-size: 3.271vw;
            margin-top: 8vw; } }
    footer .footer_box .blue_bg {
      position: absolute;
      bottom: 0;
      left: 0;
      z-index: 1;
      line-height: 0;
      width: 100%;
      height: 27vw;
      background: #003461;
      mix-blend-mode: multiply; }
      @media (min-width: 1366px) {
        footer .footer_box .blue_bg {
          height: 366px; } }
      @media (max-width: 428px) {
        footer .footer_box .blue_bg {
          display: none; } }

#topBtn {
  position: fixed;
  right: 0;
  display: block;
  width: 50px;
  text-align: center;
  box-sizing: content-box;
  background: #fff;
  box-shadow: -10px -10px 30px rgba(0, 0, 0, 0.1);
  z-index: 99;
  font-size: 1.4em;
  font-weight: 600;
  color: #003461;
  padding: 1%; }
  #topBtn:before {
    content: '\f106';
    font-family: "Font Awesome 5 Free";
    font-weight: 600;
    display: block;
    line-height: 1; }
  @media (max-width: 428px) {
    #topBtn {
      font-size: 3.738vw; } }
