@charset "UTF-8";
body, div,
dl, dt, dd, ul, ol, li,
h1, h2, h3, h4, h5, h6,
pre, form, fieldset, input, textarea,
p, blockquote, th, td, figure {
  margin: 0;
  padding: 0; }

img {
  border: 0;
  vertical-align: bottom; }

address, caption, cite, code, dfn, em, strong, th, var {
  font-style: normal;
  font-weight: normal; }

ul {
  list-style: none; }

caption, th {
  text-align: left; }

@font-face {
  font-family: 'noto sans';
  src: url("../fonts/NotoSansCJKjp-Regular.woff") format("truetype");
  font-display: swap; }
@font-face {
  font-family: 'Noto Serif';
  src: url("../fonts/NotoSerifJP-Regular.woff") format("truetype");
  font-display: swap; }
@font-face {
  font-family: 'Jost';
  src: url("../fonts/Jost-Medium.ttf") format("truetype");
  font-display: swap; }
@font-face {
  font-family: 'Crimson';
  src: url("../fonts/CrimsonText-Roman.ttf") format("truetype");
  font-display: swap; }
/* html
------------------------------------------------- */
html {
  overflow-y: scroll;
  height: 100%;
  scroll-behavior: smooth; }

/* body
------------------------------------------------- */
body {
  width: 100%;
  height: 100%;
  color: #1e232e;
  font-size: 16px;
  font-family: 'noto sans';
  line-height: 1.6;
  _display: inline;
  _zoom: 1; }
  body .pc {
    display: block; }
  body .sp {
    display: none; }

@media (min-device-width: 641px) and (max-device-width: 1024px) {
  body {
    min-width: 1024px; } }
@media (max-width: 640px) {
  body {
    min-width: 320px;
    max-width: 640px;
    font-size: 14px; }
    body img {
      width: 100%;
      height: auto; }
    body .pc {
      display: none; }
    body .sp {
      display: block; } }
.wrap {
  overflow: hidden; }

/* wrapper
------------------------------------------------- */
#wrapper {
  width: 100%;
  height: 100%;
  min-height: 100%;
  margin: 0 auto;
  padding: 0;
  text-align: left;
  position: relative; }

/* header
------------------------------------------------- */
.header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 9999; }
  .header__inner {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: space-between;
    background: #fff;
    width: 100%;
    padding: 10px 0;
    position: relative; }
    .header__inner h1 {
      width: 240px;
      margin: 5px 0 0 20px; }
      .header__inner h1 img {
        width: 100%;
        height: auto;
        vertical-align: top; }
    .header__inner--right {
      display: flex;
      flex-wrap: wrap;
      align-items: center;
      justify-content: flex-end;
      width: calc(100% - 300px); }
      .header__inner--right .gnav {
        margin-right: 20px; }
        .header__inner--right .gnav nav > ul {
          display: flex;
          flex-wrap: wrap; }
          .header__inner--right .gnav nav > ul > li {
            margin: 0 10px; }
            .header__inner--right .gnav nav > ul > li:first-child {
              margin: 0 10px 0 0; }
            .header__inner--right .gnav nav > ul > li a {
              display: block;
              padding: 25px 0;
              font-weight: bold;
              line-height: 1.4;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }
              .header__inner--right .gnav nav > ul > li a:hover {
                color: #006faf;
                text-decoration: none;
                -moz-transition: .5s;
                -webkit-transition: .5s;
                -o-transition: .5s;
                -ms-transition: .5s;
                transition: .5s; }
            .header__inner--right .gnav nav > ul > li.drop {
              display: block;
              position: relative; }
              .header__inner--right .gnav nav > ul > li.drop:hover p {
                color: #006faf;
                -moz-transition: .5s;
                -webkit-transition: .5s;
                -o-transition: .5s;
                -ms-transition: .5s;
                transition: .5s; }
              .header__inner--right .gnav nav > ul > li.drop:hover ul.sub {
                top: 113%;
                visibility: visible;
                opacity: 1; }
              .header__inner--right .gnav nav > ul > li.drop p {
                display: block;
                padding: 25px 0;
                font-weight: bold;
                line-height: 1.4;
                position: relative;
                transition: .5s;
                pointer-events: none;
                -webkit-transition: 0.3s ease-in-out;
                -moz-transition: 0.3s ease-in-out;
                -o-transition: 0.3s ease-in-out;
                transition: 0.3s ease-in-out; }
              .header__inner--right .gnav nav > ul > li.drop ul.sub {
                position: absolute;
                top: 113%;
                left: 50%;
                visibility: hidden;
                z-index: 999;
                opacity: 0;
                transition: .5s;
                transform: translateX(-50%); }
                .header__inner--right .gnav nav > ul > li.drop ul.sub:before {
                  content: "";
                  position: absolute;
                  top: -23px;
                  left: 50%;
                  width: 8px;
                  height: 8px;
                  border-top: 2px solid #012063;
                  border-right: 2px solid #012063;
                  transform: rotate(135deg); }
                .header__inner--right .gnav nav > ul > li.drop ul.sub.sm01 {
                  width: 235px; }
                .header__inner--right .gnav nav > ul > li.drop ul.sub.sm02 {
                  width: 175px; }
                .header__inner--right .gnav nav > ul > li.drop ul.sub.sm03 {
                  width: 220px; }
                .header__inner--right .gnav nav > ul > li.drop ul.sub.sm04 {
                  width: 150px; }
                .header__inner--right .gnav nav > ul > li.drop ul.sub.sm05 {
                  width: 260px; }
                .header__inner--right .gnav nav > ul > li.drop ul.sub:hover {
                  visibility: visible; }
                .header__inner--right .gnav nav > ul > li.drop ul.sub > li {
                  border-bottom: 1px solid #fff;
                  width: 100%; }
                  .header__inner--right .gnav nav > ul > li.drop ul.sub > li:last-child {
                    border-bottom: none; }
                  .header__inner--right .gnav nav > ul > li.drop ul.sub > li > a {
                    display: block;
                    background: rgba(0, 32, 99, 0.8);
                    margin: 0 auto;
                    padding: 20px 20px;
                    color: #fff;
                    font-size: 14px;
                    font-weight: bold;
                    position: relative;
                    -webkit-transition: 0.3s ease-in-out;
                    -moz-transition: 0.3s ease-in-out;
                    -o-transition: 0.3s ease-in-out;
                    transition: 0.3s ease-in-out; }
                    .header__inner--right .gnav nav > ul > li.drop ul.sub > li > a:after {
                      content: "";
                      position: absolute;
                      top: 50%;
                      right: 20px;
                      background: url("../img/common/icon_arw_w.png") no-repeat center center/cover;
                      width: 15px;
                      height: 12px;
                      transform: translateY(-50%); }
                    .header__inner--right .gnav nav > ul > li.drop ul.sub > li > a:hover {
                      color: #ddd;
                      text-decoration: none;
                      -moz-transition: .5s;
                      -webkit-transition: .5s;
                      -o-transition: .5s;
                      -ms-transition: .5s;
                      transition: .5s; }
              .header__inner--right .gnav nav > ul > li.drop:hover .sub {
                visibility: visible; }
      .header__inner--right .tel {
        margin-right: 20px;
        text-align: center; }
        .header__inner--right .tel .number {
          line-height: 1.0; }
          .header__inner--right .tel .number a {
            pointer-events: none;
            padding-left: 25px;
            color: #006faf;
            font-size: 30px;
            font-weight: bold;
            font-family: 'Jost';
            position: relative; }
            .header__inner--right .tel .number a:before {
              content: "";
              position: absolute;
              top: 50%;
              left: 0;
              background: url("../img/common/icon_tel.png") no-repeat center center/cover;
              width: 20px;
              height: 20px;
              transform: translateY(-50%); }
            .header__inner--right .tel .number a:hover {
              text-decoration: none; }
        .header__inner--right .tel .time {
          font-size: 14px; }
      .header__inner--right .btn_con {
        width: 250px;
        margin-right: 20px; }
        .header__inner--right .btn_con a {
          display: block;
          border-radius: 8px;
          background: #006faf;
          padding: 18px 0;
          text-align: center;
          color: #fff;
          font-weight: bold;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          .header__inner--right .btn_con a span {
            padding-left: 28px;
            position: relative; }
            .header__inner--right .btn_con a span:before {
              content: "";
              position: absolute;
              top: 50%;
              left: 0;
              background: url("../img/common/icon_mail.png") no-repeat center center/cover;
              width: 20px;
              height: 15px;
              transform: translateY(-50%); }
          .header__inner--right .btn_con a:hover {
            background: #2990cb;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }
    .header__inner .hamburger-menu {
      display: none; }
    .header__inner .menu {
      display: none; }

@media (min-width: 1401px) and (max-width: 1550px) {
  .header__inner h1 {
    width: 220px;
    margin: 5px 0 0 20px; }
  .header__inner--right {
    width: calc(100% - 300px); }
    .header__inner--right .gnav {
      margin-right: 20px; }
      .header__inner--right .gnav nav > ul > li {
        margin: 0 10px; }
        .header__inner--right .gnav nav > ul > li:first-child {
          margin: 0 10px 0 0; }
        .header__inner--right .gnav nav > ul > li a {
          font-size: 14px; }
        .header__inner--right .gnav nav > ul > li.drop p {
          font-size: 14px; }
    .header__inner--right .tel .number a {
      font-size: 28px; }
    .header__inner--right .btn_con {
      width: 220px;
      margin-right: 10px; }
      .header__inner--right .btn_con a {
        font-size: 14px; } }
@media (min-width: 641px) and (max-width: 1400px) {
  .header__inner {
    padding: 0; }
    .header__inner h1 {
      width: 20%;
      margin: 1.5% 0 2% 3%; }
      .header__inner h1 img {
        vertical-align: middle; }
    .header__inner--right {
      display: none; }
    .header__inner .hamburger-menu {
      display: block;
      width: 5%; }
      .header__inner .hamburger-menu.active .hamburger-icon span {
        background: #fff; }
        .header__inner .hamburger-menu.active .hamburger-icon span:nth-child(1) {
          transform: translateY(12px) rotate(45deg); }
        .header__inner .hamburger-menu.active .hamburger-icon span:nth-child(2) {
          opacity: 0; }
        .header__inner .hamburger-menu.active .hamburger-icon span:nth-child(3) {
          transform: translateY(-10px) rotate(-45deg); }
      .header__inner .hamburger-menu .hamburger-icon {
        cursor: pointer;
        display: flex;
        flex-direction: column;
        gap: 5px;
        width: 30px;
        height: 25px;
        justify-content: center;
        align-items: center;
        position: relative;
        z-index: 1001; }
        .header__inner .hamburger-menu .hamburger-icon span {
          width: 30px;
          height: 3px;
          background: #333;
          transition: transform 0.3s, opacity 0.3s;
          position: absolute; }
          .header__inner .hamburger-menu .hamburger-icon span:nth-child(1) {
            top: 0; }
          .header__inner .hamburger-menu .hamburger-icon span:nth-child(2) {
            top: 50%;
            height: 2.5px;
            transform: translateY(-50%); }
          .header__inner .hamburger-menu .hamburger-icon span:nth-child(3) {
            bottom: 0; }
  .header .menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.9);
    display: flex;
    flex-direction: column;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out; }
    .header .menu.active {
      opacity: 1;
      visibility: visible; }
    .header .menu .menu-box {
      overflow: scroll;
      -ms-overflow-style: none;
      scrollbar-width: none;
      width: 100%;
      padding: 10% 0; }
      .header .menu .menu-box ul.menu-box-nav {
        padding: 0;
        margin: 0;
        border-top: 1px solid #c7d3e3;
        width: 600px;
        margin: 0 auto 50px; }
        .header .menu .menu-box ul.menu-box-nav > li {
          border-bottom: 1px solid #c7d3e3;
          padding: 20px 0;
          text-align: center; }
          .header .menu .menu-box ul.menu-box-nav > li p {
            color: #fff;
            font-size: 20px;
            font-weight: bold;
            position: relative;
            cursor: pointer; }
            .header .menu .menu-box ul.menu-box-nav > li p:after {
              content: "";
              background: url("../img/common/icon_open.png") no-repeat center center;
              background-size: 100% auto;
              position: absolute;
              top: 50%;
              right: 10px;
              width: 18px;
              height: 18px;
              transform: translateY(-50%); }
            .header .menu .menu-box ul.menu-box-nav > li p.open:after {
              background: url("../img/common/icon_close.png") no-repeat center center;
              background-size: 100% auto; }
          .header .menu .menu-box ul.menu-box-nav > li > a {
            color: #fff;
            font-size: 20px; }
          .header .menu .menu-box ul.menu-box-nav > li .sub {
            display: none;
            padding-top: 15px; }
            .header .menu .menu-box ul.menu-box-nav > li .sub li {
              margin-bottom: 15px; }
              .header .menu .menu-box ul.menu-box-nav > li .sub li:last-child {
                margin-bottom: 0; }
              .header .menu .menu-box ul.menu-box-nav > li .sub li a {
                color: #c7d3e3;
                letter-spacing: 0.1em; }
      .header .menu .menu-box .tel {
        margin-bottom: 1%;
        text-align: center;
        line-height: 1.0; }
        .header .menu .menu-box .tel a {
          pointer-events: none;
          padding-left: 25px;
          color: #006faf;
          font-size: 32px;
          font-weight: bold;
          font-family: 'Jost';
          letter-spacing: 0.05em;
          position: relative; }
          .header .menu .menu-box .tel a:before {
            content: "";
            position: absolute;
            top: 50%;
            left: 0;
            background: url("../img/common/icon_tel.png") no-repeat center center/cover;
            width: 20px;
            height: 20px;
            transform: translateY(-50%); }
          .header .menu .menu-box .tel a:hover {
            text-decoration: none; }
      .header .menu .menu-box .time {
        margin-bottom: 50px;
        text-align: center;
        color: #fff;
        font-size: 14px; }
      .header .menu .menu-box .btn_con {
        width: 350px;
        margin: 0 auto; }
        .header .menu .menu-box .btn_con a {
          display: block;
          border-radius: 8px;
          background: #006faf;
          padding: 15px 0;
          text-align: center;
          color: #fff;
          font-weight: bold; }
          .header .menu .menu-box .btn_con a span {
            padding-left: 28px;
            position: relative; }
            .header .menu .menu-box .btn_con a span:before {
              content: "";
              position: absolute;
              top: 50%;
              left: 0;
              background: url("../img/common/icon_mail.png") no-repeat center center/cover;
              width: 20px;
              height: 15px;
              transform: translateY(-50%); }
          .header .menu .menu-box .btn_con a:hover {
            text-decoration: none; } }
@media (max-width: 640px) {
  .header__inner {
    padding: 0; }
    .header__inner h1 {
      width: 45%;
      margin: 1% 0 2% 3%; }
      .header__inner h1 img {
        vertical-align: middle; }
    .header__inner--right {
      display: none; }
    .header__inner .hamburger-menu {
      display: block;
      width: 12%; }
      .header__inner .hamburger-menu.active .hamburger-icon span {
        background: #fff; }
        .header__inner .hamburger-menu.active .hamburger-icon span:nth-child(1) {
          transform: translateY(12px) rotate(45deg); }
        .header__inner .hamburger-menu.active .hamburger-icon span:nth-child(2) {
          opacity: 0; }
        .header__inner .hamburger-menu.active .hamburger-icon span:nth-child(3) {
          transform: translateY(-10px) rotate(-45deg); }
      .header__inner .hamburger-menu .hamburger-icon {
        cursor: pointer;
        display: flex;
        flex-direction: column;
        gap: 5px;
        width: 30px;
        height: 25px;
        justify-content: center;
        align-items: center;
        position: relative;
        z-index: 1001; }
        .header__inner .hamburger-menu .hamburger-icon span {
          width: 30px;
          height: 3px;
          background: #333;
          transition: transform 0.3s, opacity 0.3s;
          position: absolute; }
          .header__inner .hamburger-menu .hamburger-icon span:nth-child(1) {
            top: 0; }
          .header__inner .hamburger-menu .hamburger-icon span:nth-child(2) {
            top: 50%;
            height: 2.5px;
            transform: translateY(-50%); }
          .header__inner .hamburger-menu .hamburger-icon span:nth-child(3) {
            bottom: 0; }
  .header .menu {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100vh;
    background: rgba(0, 0, 0, 0.9);
    display: flex;
    flex-direction: column;
    opacity: 0;
    visibility: hidden;
    transition: opacity 0.3s ease-in-out; }
    .header .menu.active {
      opacity: 1;
      visibility: visible; }
    .header .menu .menu-box {
      overflow: scroll;
      width: 80%;
      padding: 20% 10%; }
      .header .menu .menu-box ul.menu-box-nav {
        padding: 0;
        margin: 0;
        border-top: 1px solid #c7d3e3;
        width: 100%;
        margin-bottom: 8%; }
        .header .menu .menu-box ul.menu-box-nav > li {
          border-bottom: 1px solid #c7d3e3;
          padding: 6% 0;
          text-align: center; }
          .header .menu .menu-box ul.menu-box-nav > li p {
            color: #fff;
            font-size: 16px;
            font-weight: bold;
            position: relative; }
            .header .menu .menu-box ul.menu-box-nav > li p:after {
              content: "";
              background: url("../img/common/icon_open.png") no-repeat center center;
              background-size: 100% auto;
              position: absolute;
              top: 50%;
              right: 10px;
              width: 12px;
              height: 12px;
              transform: translateY(-50%); }
            .header .menu .menu-box ul.menu-box-nav > li p.open:after {
              background: url("../img/common/icon_close.png") no-repeat center center;
              background-size: 100% auto; }
          .header .menu .menu-box ul.menu-box-nav > li > a {
            color: #fff;
            font-size: 16px; }
          .header .menu .menu-box ul.menu-box-nav > li .sub {
            display: none;
            padding-top: 5%; }
            .header .menu .menu-box ul.menu-box-nav > li .sub li {
              margin-bottom: 5%; }
              .header .menu .menu-box ul.menu-box-nav > li .sub li:last-child {
                margin-bottom: 0; }
              .header .menu .menu-box ul.menu-box-nav > li .sub li a {
                color: #c7d3e3;
                letter-spacing: 0.1em; }
      .header .menu .menu-box .tel {
        margin-bottom: 1%;
        text-align: center;
        line-height: 1.0; }
        .header .menu .menu-box .tel a {
          padding-left: 25px;
          color: #006faf;
          font-size: 32px;
          font-weight: bold;
          font-family: 'Jost';
          letter-spacing: 0.05em;
          position: relative; }
          .header .menu .menu-box .tel a:before {
            content: "";
            position: absolute;
            top: 50%;
            left: 0;
            background: url("../img/common/icon_tel.png") no-repeat center center/cover;
            width: 20px;
            height: 20px;
            transform: translateY(-50%); }
          .header .menu .menu-box .tel a:hover {
            text-decoration: none; }
      .header .menu .menu-box .time {
        margin-bottom: 8%;
        text-align: center;
        color: #fff;
        font-size: 14px; }
      .header .menu .menu-box .btn_con {
        width: 80%;
        margin: 0 auto; }
        .header .menu .menu-box .btn_con a {
          display: block;
          border-radius: 8px;
          background: #006faf;
          padding: 15px 0;
          text-align: center;
          color: #fff;
          font-weight: bold; }
          .header .menu .menu-box .btn_con a span {
            padding-left: 28px;
            position: relative; }
            .header .menu .menu-box .btn_con a span:before {
              content: "";
              position: absolute;
              top: 50%;
              left: 0;
              background: url("../img/common/icon_mail.png") no-repeat center center/cover;
              width: 20px;
              height: 15px;
              transform: translateY(-50%); }
          .header .menu .menu-box .btn_con a:hover {
            text-decoration: none; } }
/* article
------------------------------------------------- */
.anchor {
  margin-top: -92px;
  padding-top: 92px; }

@media (max-width: 640px) {
  .anchor {
    margin-top: -14.0%;
    padding-top: 14.0%; } }
.mv {
  background: url("../img/top/img_mv.jpg") no-repeat center center/cover;
  margin: 92px 0 0;
  position: relative; }
  .mv__inner {
    max-width: 1660px;
    width: 100%;
    margin: 0 auto;
    padding: 70px 0; }
    .mv__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      padding: 0 20px; }
      .mv__inner--block .block01 {
        width: 45%; }
        .mv__inner--block .block01 h2 {
          margin-bottom: 30px;
          color: #012063;
          font-size: clamp(30px, 4.25vw, 60px);
          font-weight: bold;
          font-family: 'Noto Serif'; }
        .mv__inner--block .block01 .txt {
          margin-bottom: 50px;
          font-size: 18px;
          font-weight: bold;
          letter-spacing: 0.05em;
          line-height: 2.2; }
        .mv__inner--block .block01 .btn {
          width: 360px; }
          .mv__inner--block .block01 .btn a {
            display: block;
            border-radius: 8px;
            background: #006faf;
            padding: 22px 0;
            text-align: center;
            color: #fff;
            font-size: 18px;
            font-weight: bold;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            .mv__inner--block .block01 .btn a span {
              padding-left: 28px;
              position: relative; }
              .mv__inner--block .block01 .btn a span:before {
                content: "";
                position: absolute;
                top: 50%;
                left: 0;
                background: url("../img/common/icon_mail.png") no-repeat center center/cover;
                width: 20px;
                height: 15px;
                transform: translateY(-50%); }
            .mv__inner--block .block01 .btn a:hover {
              background: #2990cb;
              text-decoration: none;
              -moz-transition: .5s;
              -webkit-transition: .5s;
              -o-transition: .5s;
              -ms-transition: .5s;
              transition: .5s; }
      .mv__inner--block .block02 {
        width: 50%; }
        .mv__inner--block .block02 ul {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between;
          align-items: stretch; }
          .mv__inner--block .block02 ul li {
            border-radius: 10px;
            filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, 0.1));
            background: #fff;
            width: 32%;
            margin-bottom: 15px;
            padding-bottom: 15px;
            text-align: center; }
            .mv__inner--block .block02 ul li:nth-child(n+7) {
              margin-bottom: 0; }
            .mv__inner--block .block02 ul li.pb {
              padding-bottom: 25px; }
            .mv__inner--block .block02 ul li .icon {
              width: 60%;
              margin: 0 auto 15px; }
              .mv__inner--block .block02 ul li .icon img {
                width: 100%;
                height: auto; }
            .mv__inner--block .block02 ul li .item {
              font-size: 18px;
              font-weight: bold;
              line-height: 1.2; }
            .mv__inner--block .block02 ul li .value {
              color: #c7a44c;
              font-size: 20px;
              font-weight: bold;
              font-family: 'Noto Serif'; }
              .mv__inner--block .block02 ul li .value span {
                margin-right: 5px;
                font-size: 70px;
                font-weight: normal;
                font-family: 'Crimson';
                line-height: 1.0; }
            .mv__inner--block .block02 ul li .sub01 {
              font-size: 14px; }
            .mv__inner--block .block02 ul li .sub02 {
              font-weight: bold; }
            .mv__inner--block .block02 ul li .sub03 {
              color: #c7a44c;
              font-size: 20px; }
  .mv figure img {
    width: 100%;
    height: auto; }

@media (max-width: 640px) {
  .mv {
    background: url("../img/top/img_mv.jpg") no-repeat 40% center/cover;
    width: 100%;
    margin: 14.0% auto 0; }
    .mv__inner {
      padding: 8% 0; }
      .mv__inner--block {
        padding: 0 3%; }
        .mv__inner--block .block01 {
          width: 100%;
          margin-bottom: 8%; }
          .mv__inner--block .block01 h2 {
            margin-bottom: 6%;
            font-size: 32px; }
          .mv__inner--block .block01 .txt {
            margin-bottom: 6%;
            font-size: 14px;
            line-height: 2.0; }
          .mv__inner--block .block01 .btn {
            width: 70%; }
            .mv__inner--block .block01 .btn a {
              padding: 15px 0;
              font-size: 14px; }
              .mv__inner--block .block01 .btn a span {
                padding-left: 28px;
                position: relative; }
                .mv__inner--block .block01 .btn a span:before {
                  content: "";
                  position: absolute;
                  top: 50%;
                  left: 0;
                  background: url("../img/common/icon_mail.png") no-repeat center center/cover;
                  width: 20px;
                  height: 15px;
                  transform: translateY(-50%); }
              .mv__inner--block .block01 .btn a:hover {
                background: #006faf; }
        .mv__inner--block .block02 {
          width: 100%; }
          .mv__inner--block .block02 ul li {
            margin-bottom: 10px;
            padding-bottom: 10px; }
            .mv__inner--block .block02 ul li.pb {
              padding-bottom: 20px; }
            .mv__inner--block .block02 ul li .icon {
              width: 50%;
              margin: 0 auto 4%; }
            .mv__inner--block .block02 ul li .item {
              font-size: 12px; }
            .mv__inner--block .block02 ul li .value {
              font-size: 12px; }
              .mv__inner--block .block02 ul li .value span {
                margin-right: 5px;
                font-size: 40px; }
            .mv__inner--block .block02 ul li .sub01 {
              font-size: 10px; }
            .mv__inner--block .block02 ul li .sub02 {
              font-size: 12px; }
            .mv__inner--block .block02 ul li .sub03 {
              color: #c7a44c;
              font-size: 12px; } }
.mvlow {
  display: flex;
  align-items: center;
  margin: 92px auto 0;
  position: relative; }
  .mvlow.tri {
    background: url("../img/business/img_mv_trial.jpg") no-repeat center top/cover; }
  .mvlow.flo {
    background: url("../img/business/img_mv_flow.jpg") no-repeat center top/cover; }
  .mvlow.sta {
    background: url("../img/business/img_mv_staff.jpg") no-repeat center top/cover; }
  .mvlow.hac {
    background: url("../img/certification/img_mv_haccp.jpg") no-repeat center top/cover; }
  .mvlow.iso {
    background: url("../img/certification/img_mv_fssc.jpg") no-repeat center top/cover; }
  .mvlow.jfs {
    background: url("../img/certification/img_mv_jfs.jpg") no-repeat center top/cover; }
  .mvlow.cou {
    background: url("../img/course/img_mv_course.jpg") no-repeat center top/cover; }
  .mvlow.cas {
    background: url("../img/case/img_mv_case.jpg") no-repeat center top/cover; }
  .mvlow.out {
    background: url("../img/company/img_mv_outline.jpg") no-repeat center top/cover; }
  .mvlow.gre {
    background: url("../img/company/img_mv_greeting.jpg") no-repeat center top/cover; }
  .mvlow.new {
    background: url("../img/system/img_mv_news.jpg") no-repeat center top/cover; }
  .mvlow.con {
    background: url("../img/system/img_mv_contact.jpg") no-repeat center top/cover; }
  .mvlow.pri {
    background: url("../img/system/img_mv_privacy.jpg") no-repeat center top/cover; }
  .mvlow__inner {
    max-width: 1160px;
    width: 100%;
    margin: 0 auto;
    padding: 200px 20px;
    position: relative; }
    .mvlow__inner--block .h2_en {
      margin-bottom: 5px;
      color: #fff;
      font-size: 13px;
      font-family: 'Jost';
      letter-spacing: 0.2em; }
    .mvlow__inner--block h2 {
      color: #fff;
      font-size: 50px;
      letter-spacing: 0.1em;
      line-height: 1.0; }
    .mvlow__inner--bread {
      position: absolute;
      right: 0;
      bottom: 20px;
      margin-left: auto; }
      .mvlow__inner--bread ul {
        display: flex;
        flex-wrap: wrap; }
        .mvlow__inner--bread ul li {
          color: #fff;
          font-size: 14px;
          letter-spacing: 0.1em; }
          .mvlow__inner--bread ul li a {
            color: #fff;
            font-size: 14px;
            text-decoration: none; }
            .mvlow__inner--bread ul li a:hover {
              text-decoration: underline; }
          .mvlow__inner--bread ul li a::after {
            display: inline-block;
            content: '/';
            margin: 0 15px;
            color: #fff; }

@media (max-width: 640px) {
  .mvlow {
    width: 100%;
    min-height: 0;
    margin: 14.0% auto 0; }
    .mvlow__inner {
      max-width: 90%;
      padding: 22% 0; }
      .mvlow__inner--box {
        width: 60%;
        padding: 6% 0; }
      .mvlow__inner .h2_en {
        margin-bottom: 1%;
        font-size: 14px; }
      .mvlow__inner h2 {
        font-size: 30px;
        letter-spacing: 0.05em; }
      .mvlow__inner--bread {
        bottom: 15px; }
        .mvlow__inner--bread ul li {
          font-size: 12px; }
          .mvlow__inner--bread ul li a {
            font-size: 12px; }
          .mvlow__inner--bread ul li a::after {
            margin: 0 10px; } }
.cta {
  padding: 120px 0 0;
  min-height: 570px; }
  .cta.tri {
    background: url("../img/business/bg_cta01.png") no-repeat center top; }
  .cta.flo {
    background: url("../img/business/bg_cta02.png") no-repeat center top; }
  .cta.sta {
    background: url("../img/business/bg_cta03.png") no-repeat center top; }
  .cta.hac {
    background: url("../img/certification/bg_cta01.png") no-repeat center top; }
  .cta.iso {
    background: url("../img/certification/bg_cta02.png") no-repeat center top; }
  .cta.jfs {
    background: url("../img/certification/bg_cta03.png") no-repeat center top; }
  .cta.cas {
    background: url("../img/case/bg_cta01.png") no-repeat center top; }
  .cta.out {
    background: url("../img/company/bg_cta01.png") no-repeat center top; }
  .cta.gre {
    background: url("../img/company/bg_cta02.png") no-repeat center top; }
  .cta.new {
    background: url("../img/system/bg_cta.png") no-repeat center top; }
  .cta__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    .cta__inner--block {
      width: 50%; }
      .cta__inner--block h3 {
        margin-bottom: 30px;
        color: #fff;
        font-size: 32px;
        line-height: 1.8;
        letter-spacing: 0.05em; }
      .cta__inner--block .txt {
        margin-bottom: 40px;
        color: #fff;
        line-height: 2.0; }
      .cta__inner--block .btn {
        width: 440px; }
        .cta__inner--block .btn a {
          display: block;
          border-radius: 8px;
          background: #fff;
          padding: 25px 0;
          text-align: center;
          color: #006faf;
          font-size: 18px;
          font-weight: bold;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          .cta__inner--block .btn a span {
            padding-left: 38px;
            position: relative; }
            .cta__inner--block .btn a span:before {
              content: "";
              position: absolute;
              top: 50%;
              left: 0;
              background: url("../img/common/icon_mail_bl.png") no-repeat center center/cover;
              width: 27px;
              height: 20px;
              transform: translateY(-50%); }
          .cta__inner--block .btn a:hover {
            background: #d2e8f5;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }

@media (max-width: 640px) {
  .cta {
    border-radius: 15px 15px 0 0;
    padding: 10% 0;
    min-height: 0; }
    .cta.tri {
      background: #006faf; }
    .cta.flo {
      background: #006faf; }
    .cta.sta {
      background: #006faf; }
    .cta.hac {
      background: #006faf; }
    .cta.iso {
      background: #006faf; }
    .cta.jfs {
      background: #006faf; }
    .cta.cas {
      background: #006faf; }
    .cta.out {
      background: #006faf; }
    .cta.gre {
      background: #006faf; }
    .cta.new {
      background: #006faf; }
    .cta__inner {
      max-width: 90%;
      padding: 0; }
      .cta__inner--block {
        width: 100%; }
        .cta__inner--block h3 {
          margin-bottom: 5%;
          font-size: 18px; }
        .cta__inner--block .txt {
          margin-bottom: 8%;
          letter-spacing: 0.04em;
          line-height: 2.2; }
        .cta__inner--block .btn {
          width: 80%; }
          .cta__inner--block .btn a {
            padding: 15px 0;
            font-size: 16px; }
            .cta__inner--block .btn a span {
              padding-left: 30px; }
              .cta__inner--block .btn a span:before {
                width: 20px;
                height: 15px; }
            .cta__inner--block .btn a:hover {
              background: #fff; } }
* html #pageTop {
  position: absolute; }

#pageTop {
  position: fixed;
  width: 60px;
  height: 60px;
  right: 0;
  bottom: 0;
  z-index: 900; }

@media (max-width: 640px) {
  * html #pageTopSp {
    position: absolute; }

  #pageTop {
    position: fixed;
    width: 12%;
    height: auto;
    right: 0;
    bottom: 0;
    z-index: 9997; } }
/* footer
------------------------------------------------- */
.footer {
  background: #012063;
  padding: 90px 0 100px; }
  .footer__inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    border-bottom: 1px solid #41598b;
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px 50px; }
    .footer__inner--profile {
      width: 420px; }
      .footer__inner--profile h1 {
        width: 60%;
        margin-bottom: 20px; }
        .footer__inner--profile h1 img {
          width: 100%;
          height: auto; }
      .footer__inner--profile .address {
        margin-bottom: 50px;
        color: #fff;
        line-height: 2.0;
        letter-spacing: 0.1em; }
      .footer__inner--profile .btn {
        width: 300px; }
        .footer__inner--profile .btn a {
          display: block;
          border-radius: 8px;
          background: #006faf;
          padding: 18px 0;
          text-align: center;
          color: #fff;
          font-weight: bold;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          .footer__inner--profile .btn a span {
            padding-left: 28px;
            position: relative; }
            .footer__inner--profile .btn a span:before {
              content: "";
              position: absolute;
              top: 50%;
              left: 0;
              background: url("../img/common/icon_mail.png") no-repeat center center/cover;
              width: 20px;
              height: 15px;
              transform: translateY(-50%); }
          .footer__inner--profile .btn a:hover {
            background: #2990cb;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }
    .footer__inner--fnav {
      display: flex;
      flex-wrap: wrap;
      width: 560px; }
      .footer__inner--fnav ul.fnav {
        width: 50%; }
        .footer__inner--fnav ul.fnav li p {
          margin-bottom: 15px;
          color: #fff;
          font-weight: bold; }
        .footer__inner--fnav ul.fnav li > a {
          display: block;
          margin-bottom: 30px;
          color: #fff;
          font-weight: bold; }
        .footer__inner--fnav ul.fnav li .sub {
          margin-bottom: 30px; }
          .footer__inner--fnav ul.fnav li .sub a {
            display: block;
            margin-bottom: 15px;
            color: #c7d3e3;
            font-size: 14px;
            font-weight: bold;
            line-height: 1.4;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            .footer__inner--fnav ul.fnav li .sub a:hover {
              color: #fff;
              text-decoration: none;
              -moz-transition: .5s;
              -webkit-transition: .5s;
              -o-transition: .5s;
              -ms-transition: .5s;
              transition: .5s; }
  .footer__copy {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1160px;
    margin: 0 auto;
    padding-top: 40px; }
    .footer__copy .privacy a {
      color: #fff;
      font-size: 14px;
      letter-spacing: 0.1em; }
    .footer__copy .copy {
      color: #fff;
      font-size: 14px;
      letter-spacing: 0.1em; }

@media (max-width: 640px) {
  .footer {
    padding: 10% 0; }
    .footer__inner {
      max-width: 90%;
      padding: 0 0 6%; }
      .footer__inner--profile {
        width: 100%;
        margin-bottom: 10%; }
        .footer__inner--profile h1 {
          width: 60%;
          margin: 0 auto 4%; }
        .footer__inner--profile .address {
          margin-bottom: 6%;
          text-align: center;
          font-size: 13px;
          line-height: 2.0; }
        .footer__inner--profile .btn {
          width: 90%;
          margin: 0 auto; }
          .footer__inner--profile .btn a {
            padding: 15px 0; }
            .footer__inner--profile .btn a:hover {
              background: #006faf; }
      .footer__inner--fnav {
        justify-content: space-between;
        width: 100%; }
        .footer__inner--fnav ul.fnav {
          width: 46%; }
          .footer__inner--fnav ul.fnav li p {
            margin-bottom: 6%; }
          .footer__inner--fnav ul.fnav li > a {
            margin-bottom: 12%; }
          .footer__inner--fnav ul.fnav li .sub {
            margin-bottom: 12%; }
            .footer__inner--fnav ul.fnav li .sub a {
              margin-bottom: 8%;
              font-size: 12px; }
              .footer__inner--fnav ul.fnav li .sub a:hover {
                color: #c7d3e3; }
    .footer__copy {
      max-width: 90%;
      padding-top: 6%; }
      .footer__copy .privacy {
        width: 100%;
        margin-bottom: 5%;
        text-align: center; }
        .footer__copy .privacy a {
          font-size: 12px; }
      .footer__copy .copy {
        text-align: center;
        font-size: 12px;
        letter-spacing: 0.1em; } }
/* link
------------------------------------------------- */
a:link,
a:visited {
  color: #000;
  text-decoration: none; }

a:hover,
a:active {
  color: #000;
  text-decoration: underline; }

/* alpha
------------------------------------------------- */
a.alpha img {
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out; }

a.alpha:hover img {
  opacity: 0.8;
  filter: alpha(opacity=80);
  -moz-transition: .5s;
  -webkit-transition: .5s;
  -o-transition: .5s;
  -ms-transition: .5s;
  transition: .5s; }

/* clearfix
------------------------------------------------- */
.clearfix:after {
  content: ".";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden; }

/* *******************************************
     トップ
******************************************* */
#top .sec01 {
  background: #012063;
  padding: 30px 0; }
  #top .sec01__inner {
    max-width: 1620px;
    margin: 0 auto;
    padding: 0 20px; }
    #top .sec01__inner ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center; }
      #top .sec01__inner ul li:first-child {
        width: 28%;
        margin-right: 2%;
        text-align: center;
        color: #fff;
        font-size: clamp(14px, 1.2vw, 20px); }
        #top .sec01__inner ul li:first-child p {
          position: relative; }
          #top .sec01__inner ul li:first-child p:before {
            content: "";
            position: absolute;
            top: 50%;
            left: 0;
            background: url("../img/top/icon_reef01.png") no-repeat center center/cover;
            width: 27px;
            height: 70px;
            transform: translateY(-50%); }
          #top .sec01__inner ul li:first-child p:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            background: url("../img/top/icon_reef02.png") no-repeat center center/cover;
            width: 27px;
            height: 70px;
            transform: translateY(-50%); }
      #top .sec01__inner ul li:nth-child(n+2) {
        width: 13.5%; }
        #top .sec01__inner ul li:nth-child(n+2) img {
          width: 100%;
          height: auto; }

@media (max-width: 640px) {
  #top .sec01 {
    padding: 8% 0; }
    #top .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #top .sec01__inner ul li:first-child {
        width: 100%;
        margin: 0 0 7%;
        font-size: 14px; }
        #top .sec01__inner ul li:first-child p:before {
          width: 22px;
          height: 52px; }
        #top .sec01__inner ul li:first-child p:after {
          width: 20px;
          height: 52px; }
      #top .sec01__inner ul li:nth-child(n+2) {
        width: 48%;
        margin-bottom: 3%; }
      #top .sec01__inner ul li:last-child {
        margin: 0 0 0 25%; } }
#top .sec02 {
  background: url("../img/top/bg_sec02.png") no-repeat center top/100% auto;
  padding: 150px 0 70px;
  position: relative; }
  #top .sec02__inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #top .sec02__inner figure {
      order: 2;
      width: 53%; }
      #top .sec02__inner figure img {
        width: 100%;
        height: auto; }
      #top .sec02__inner figure + div {
        order: 1;
        width: 45%; }
        #top .sec02__inner figure + div h2 {
          margin-bottom: 20px;
          color: #012063;
          font-size: 40px;
          font-weight: bold;
          font-family: 'Noto Serif'; }
        #top .sec02__inner figure + div .txt {
          margin-bottom: 70px;
          font-size: 18px;
          line-height: 2.2; }
        #top .sec02__inner figure + div .more a {
          color: #012063;
          font-size: 18px;
          font-weight: bold;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          #top .sec02__inner figure + div .more a span {
            padding-right: 75px;
            position: relative; }
            #top .sec02__inner figure + div .more a span:after {
              content: "";
              position: absolute;
              top: 50%;
              right: 0;
              background: url("../img/common/icon_arw_sq.png") no-repeat center center/cover;
              width: 55px;
              height: 55px;
              transform: translateY(-50%); }
          #top .sec02__inner figure + div .more a:hover {
            color: #006faf;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }
  #top .sec02 .en {
    position: absolute;
    top: 100px;
    left: 0;
    width: 5%; }
    #top .sec02 .en img {
      width: 100%;
      height: auto; }

@media (max-width: 640px) {
  #top .sec02 {
    background: url("../img/top/bg_sec02.png") no-repeat center top/300% auto;
    padding: 10% 0 15%; }
    #top .sec02__inner {
      max-width: 90%;
      padding: 0; }
      #top .sec02__inner figure {
        width: 100%; }
        #top .sec02__inner figure + div {
          width: 100%;
          margin-bottom: 8%; }
          #top .sec02__inner figure + div h2 {
            margin-bottom: 4%;
            font-size: 30px; }
          #top .sec02__inner figure + div .txt {
            margin-bottom: 6%;
            font-size: 14px;
            line-height: 2.0; }
          #top .sec02__inner figure + div .more {
            text-align: right; }
            #top .sec02__inner figure + div .more a {
              font-size: 16px; }
              #top .sec02__inner figure + div .more a span {
                padding-right: 30px; }
                #top .sec02__inner figure + div .more a span:after {
                  content: "";
                  position: absolute;
                  top: 50%;
                  right: 0;
                  background: url("../img/common/icon_arw_bl.png") no-repeat center center/cover;
                  width: 17px;
                  height: 14px;
                  transform: translateY(-50%); }
              #top .sec02__inner figure + div .more a:hover {
                color: #012063; }
    #top .sec02 .en {
      display: none; } }
#top .sec03 {
  background: url("../img/top/bg_sec03.png") no-repeat center top;
  padding: 70px 0 280px; }
  #top .sec03__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #top .sec03__inner--title {
      margin-bottom: 50px;
      position: relative; }
      #top .sec03__inner--title h2 {
        font-size: 40px; }
      #top .sec03__inner--title .h2_en {
        color: #012063;
        font-size: 20px;
        font-family: 'Jost'; }
        #top .sec03__inner--title .h2_en span {
          color: #006faf; }
      #top .sec03__inner--title .more {
        position: absolute;
        bottom: 0;
        right: 0; }
        #top .sec03__inner--title .more a {
          padding-right: 30px;
          position: relative;
          color: #012063;
          font-size: 18px;
          font-weight: bold;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          #top .sec03__inner--title .more a:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            background: url("../img/common/icon_arw_bl.png") no-repeat center center/cover;
            width: 17px;
            height: 14px;
            transform: translateY(-50%); }
          #top .sec03__inner--title .more a:hover {
            color: #006faf;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }
    #top .sec03__inner--news {
      border-top: 1px solid #c7d3e3; }
      #top .sec03__inner--news a {
        display: block;
        border-bottom: 1px solid #c7d3e3;
        padding: 35px 10px;
        position: relative;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out; }
        #top .sec03__inner--news a:after {
          content: "";
          position: absolute;
          top: 50%;
          right: 10px;
          background: url("../img/common/icon_arw_bl.png") no-repeat center center/cover;
          width: 17px;
          height: 14px;
          transform: translateY(-50%); }
        #top .sec03__inner--news a:hover {
          background: #f5f8ff;
          text-decoration: none;
          -moz-transition: .5s;
          -webkit-transition: .5s;
          -o-transition: .5s;
          -ms-transition: .5s;
          transition: .5s; }
        #top .sec03__inner--news a dl {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between;
          align-items: center; }
          #top .sec03__inner--news a dl dt {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            align-items: center;
            width: 250px; }
            #top .sec03__inner--news a dl dt .date {
              font-family: 'Jost'; }
            #top .sec03__inner--news a dl dt .cate {
              border-radius: 5px;
              border: 1px solid #012063;
              background: #fff;
              width: 120px;
              padding: 3px 0;
              text-align: center;
              color: #012063;
              font-size: 14px; }
          #top .sec03__inner--news a dl dd {
            width: calc(100% - 350px);
            margin-right: 50px; }

@media (max-width: 640px) {
  #top .sec03 {
    background: url("../img/top/bg_sec03.png") no-repeat 70% 60%/200% auto;
    padding: 0 0 15%; }
    #top .sec03__inner {
      max-width: 90%;
      padding: 0; }
      #top .sec03__inner--title {
        margin-bottom: 5%; }
        #top .sec03__inner--title h2 {
          font-size: 30px; }
        #top .sec03__inner--title .h2_en {
          font-size: 18px; }
      #top .sec03__inner--news {
        margin-bottom: 5%; }
        #top .sec03__inner--news a {
          padding: 5% 0; }
          #top .sec03__inner--news a:hover {
            background: none; }
          #top .sec03__inner--news a dl dt {
            margin-bottom: 2%;
            justify-content: flex-start;
            width: 100%; }
            #top .sec03__inner--news a dl dt .date {
              margin-right: 3%;
              font-size: 14px; }
            #top .sec03__inner--news a dl dt .cate {
              width: 100px;
              padding: 1px 0;
              font-size: 12px; }
          #top .sec03__inner--news a dl dd {
            width: 90%;
            margin-right: 0; }
      #top .sec03__inner .more {
        text-align: right; }
        #top .sec03__inner .more a {
          padding-right: 30px;
          position: relative;
          color: #012063;
          font-size: 16px;
          font-weight: bold;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          #top .sec03__inner .more a:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            background: url("../img/common/icon_arw_bl.png") no-repeat center center/cover;
            width: 17px;
            height: 14px;
            transform: translateY(-50%); }
          #top .sec03__inner .more a:hover {
            color: #012063;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; } }
#top .sec04 {
  background: url("../img/top/bg_sec04.png") no-repeat center top;
  margin: -130px 0 0;
  padding: 130px 0 260px; }
  #top .sec04__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #top .sec04__inner h2 {
      color: #fff;
      font-size: 40px; }
    #top .sec04__inner .h2_en {
      margin-bottom: 50px;
      color: #fff;
      font-size: 20px;
      font-family: 'Jost'; }
    #top .sec04__inner--box {
      border-radius: 15px;
      filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, 0.1));
      background-image: linear-gradient(0deg, white 40%, #eaedf2); }
      #top .sec04__inner--box ul {
        display: flex;
        flex-wrap: wrap;
        align-items: stretch; }
        #top .sec04__inner--box ul li {
          padding: 35px 0;
          width: 33.3333%; }
          #top .sec04__inner--box ul li:first-child:hover {
            border-radius: 15px 0 0 15px; }
          #top .sec04__inner--box ul li:last-child:hover {
            border-radius: 0 15px 15px 0; }
          #top .sec04__inner--box ul li:last-child a {
            border-right: none; }
          #top .sec04__inner--box ul li a {
            display: flex;
            flex-direction: column;
            border-right: 1px solid #c7d3e3;
            height: 85%;
            padding: 40px 10% 10%; }
            #top .sec04__inner--box ul li a h3 {
              margin-bottom: 20px;
              text-align: center;
              color: #012063;
              font-size: 24px; }
            #top .sec04__inner--box ul li a .icon {
              margin-bottom: 20px;
              text-align: center; }
            #top .sec04__inner--box ul li a .txt {
              letter-spacing: 0.1em;
              line-height: 2.0; }
            #top .sec04__inner--box ul li a .btn {
              width: 60px;
              margin: auto auto 0; }
            #top .sec04__inner--box ul li a:hover {
              text-decoration: none; }
          #top .sec04__inner--box ul li:hover {
            background: #f5f8ff; }

@media (max-width: 640px) {
  #top .sec04 {
    background: url("../img/top/bg_sec04.png") no-repeat center top;
    margin: 0;
    padding: 10% 0 15%; }
    #top .sec04__inner {
      max-width: 90%;
      padding: 0; }
      #top .sec04__inner h2 {
        font-size: 30px; }
      #top .sec04__inner .h2_en {
        margin-bottom: 8%;
        font-size: 16px; }
      #top .sec04__inner--box ul li {
        padding: 0;
        width: 100%; }
        #top .sec04__inner--box ul li a {
          border-right: none;
          border-bottom: 1px solid #c7d3e3;
          height: auto;
          padding: 5% 10% 8%; }
          #top .sec04__inner--box ul li a h3 {
            margin-bottom: 4%;
            font-size: 18px; }
          #top .sec04__inner--box ul li a .icon {
            width: 30%;
            margin: 0 auto 4%; }
          #top .sec04__inner--box ul li a .txt {
            padding-right: 50px;
            letter-spacing: 0.1em;
            line-height: 2.0;
            position: relative; }
            #top .sec04__inner--box ul li a .txt:after {
              content: "";
              position: absolute;
              bottom: 20px;
              right: 0;
              background: url("../img/common/icon_arw_sq.png") no-repeat center center/cover;
              width: 40px;
              height: 40px; }
          #top .sec04__inner--box ul li a .btn {
            display: none;
            width: 40px; }
        #top .sec04__inner--box ul li:hover {
          background: none; } }
#top .sec05 {
  padding: 0 0 150px; }
  #top .sec05__inner--title {
    max-width: 1160px;
    margin: 0 auto 60px;
    padding: 0 20px;
    position: relative; }
    #top .sec05__inner--title h2 {
      font-size: 40px; }
    #top .sec05__inner--title .h2_en {
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #top .sec05__inner--title .h2_en span {
        color: #006faf; }
    #top .sec05__inner--title .read {
      position: absolute;
      bottom: 0;
      left: 350px;
      line-height: 1.8; }
  #top .sec05__inner--service ul {
    display: flex;
    flex-wrap: wrap; }
    #top .sec05__inner--service ul li {
      width: 33.3333333%;
      position: relative; }
      #top .sec05__inner--service ul li figure img {
        width: 100%;
        height: auto; }
      #top .sec05__inner--service ul li figure + div {
        position: absolute;
        bottom: 0;
        left: 0;
        padding: 0 10% 5%; }
        #top .sec05__inner--service ul li figure + div h3 {
          margin-bottom: 10px;
          color: #fff;
          font-size: 32px;
          letter-spacing: 0.1em; }
        #top .sec05__inner--service ul li figure + div .txt {
          padding-right: 90px;
          color: #fff;
          letter-spacing: 0.05em;
          position: relative; }
          #top .sec05__inner--service ul li figure + div .txt:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            background: url("../img/common/icon_arw_sq_w.png") no-repeat center center/cover;
            width: 60px;
            height: 60px;
            transform: translateY(-50%); }

@media (max-width: 640px) {
  #top .sec05 {
    padding: 0 0 15%; }
    #top .sec05__inner--title {
      max-width: 90%;
      margin: 0 auto 5%;
      padding: 0; }
      #top .sec05__inner--title h2 {
        font-size: 30px; }
      #top .sec05__inner--title .h2_en {
        margin-bottom: 5%;
        font-size: 16px; }
      #top .sec05__inner--title .read {
        position: relative;
        bottom: 0;
        left: 0;
        line-height: 1.8; }
    #top .sec05__inner--service ul li {
      width: 100%; }
      #top .sec05__inner--service ul li figure + div {
        position: absolute;
        bottom: 0;
        left: 0;
        padding: 0 10% 8%; }
        #top .sec05__inner--service ul li figure + div h3 {
          margin-bottom: 2%;
          font-size: 24px; }
        #top .sec05__inner--service ul li figure + div .txt {
          padding-right: 60px; }
          #top .sec05__inner--service ul li figure + div .txt:after {
            width: 40px;
            height: 40px; } }
#top .sec06 {
  background: url("../img/top/bg_sec06.png") no-repeat center top;
  min-height: 670px;
  margin: 0 0 150px;
  padding: 150px 0 0;
  position: relative; }
  #top .sec06__inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #top .sec06__inner--title {
      width: 350px; }
      #top .sec06__inner--title h2 {
        font-size: 40px; }
      #top .sec06__inner--title .h2_en {
        margin-bottom: 50px;
        color: #012063;
        font-size: 20px;
        font-family: 'Jost'; }
        #top .sec06__inner--title .h2_en span {
          color: #006faf; }
      #top .sec06__inner--title .read {
        margin-bottom: 60px;
        line-height: 1.8; }
      #top .sec06__inner--title .more a {
        color: #012063;
        font-size: 18px;
        font-weight: bold;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out; }
        #top .sec06__inner--title .more a span {
          padding-right: 75px;
          position: relative; }
          #top .sec06__inner--title .more a span:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            background: url("../img/common/icon_arw_sq.png") no-repeat center center/cover;
            width: 55px;
            height: 55px;
            transform: translateY(-50%); }
        #top .sec06__inner--title .more a:hover {
          color: #006faf;
          text-decoration: none;
          -moz-transition: .5s;
          -webkit-transition: .5s;
          -o-transition: .5s;
          -ms-transition: .5s;
          transition: .5s; }
    #top .sec06__inner--case {
      position: absolute;
      top: 150px;
      right: 0;
      max-width: 62%; }
      #top .sec06__inner--case .case_slider li a {
        display: block; }
        #top .sec06__inner--case .case_slider li a figure {
          margin-bottom: 10px;
          height: 300px;
          overflow: hidden;
          position: relative; }
          #top .sec06__inner--case .case_slider li a figure img {
            border-radius: 15px;
            width: 100%;
            height: 100%;
            object-fit: cover; }
          #top .sec06__inner--case .case_slider li a figure .cate {
            position: absolute;
            bottom: 0;
            left: 0;
            border-radius: 0 15px 0 15px;
            background: #006faf;
            width: 130px;
            padding: 5px 0;
            text-align: center;
            color: #fff; }
        #top .sec06__inner--case .case_slider li a:hover {
          text-decoration: none; }
      #top .sec06__inner--case .bx-controls {
        position: absolute;
        bottom: -100px;
        left: 0;
        right: 0;
        max-width: 1160px;
        margin: 0 auto; }
      #top .sec06__inner--case .bx-wrapper {
        box-shadow: none;
        border: none;
        background: none; }
      #top .sec06__inner--case .bx-wrapper .bx-controls-direction a {
        left: 0;
        width: 60px;
        height: 60px;
        z-index: 9998; }
      #top .sec06__inner--case .bx-wrapper .bx-prev {
        background: url("../img/top/btn_prev.png") no-repeat center center/cover; }
      #top .sec06__inner--case .bx-wrapper .bx-next {
        right: none;
        left: 80px !important;
        background: url("../img/top/btn_next.png") no-repeat center center/cover; }
      #top .sec06__inner--case .bx-wrapper .bx-pager {
        width: calc(100% - 160px);
        margin-left: 160px;
        padding-top: 0;
        text-align: left; }
      #top .sec06__inner--case .bx-wrapper .bx-pager, #top .sec06__inner--case .bx-wrapper .bx-controls-auto {
        bottom: -20px; }
      #top .sec06__inner--case .bx-wrapper .bx-pager .bx-pager-item {
        display: inline-block; }
      #top .sec06__inner--case .bx-wrapper .bx-pager.bx-default-pager a {
        background: #c7d3e3;
        text-indent: -9999px;
        display: block;
        width: 50px;
        height: 6px;
        margin: 0;
        border-radius: 0;
        transition: background 0.3s; }
      #top .sec06__inner--case .bx-wrapper .bx-pager.bx-default-pager a:hover,
      #top .sec06__inner--case .bx-wrapper .bx-pager.bx-default-pager a.active {
        background: #012063;
        border-radius: 2px; }

@media (max-width: 640px) {
  #top .sec06 {
    background: #f2f7fb;
    min-height: 0;
    margin: 0 0 15%;
    padding: 12% 0; }
    #top .sec06__inner {
      max-width: 90%;
      padding: 0; }
      #top .sec06__inner--title {
        width: 100%; }
        #top .sec06__inner--title h2 {
          font-size: 30px; }
        #top .sec06__inner--title .h2_en {
          margin-bottom: 6%;
          font-size: 16px; }
        #top .sec06__inner--title .read {
          margin-bottom: 8%; }
      #top .sec06__inner--case {
        position: relative;
        top: 0;
        right: 0;
        max-width: 100%;
        margin-bottom: 10%; }
        #top .sec06__inner--case .case_slider li a figure {
          height: 200px;
          margin-bottom: 3%; }
          #top .sec06__inner--case .case_slider li a figure .cate {
            width: 110px;
            padding: 3px 0;
            font-size: 12px; }
        #top .sec06__inner--case .bx-controls {
          bottom: -40px;
          max-width: 100%; }
        #top .sec06__inner--case .bx-wrapper .bx-controls-direction a {
          width: 40px;
          height: 40px; }
        #top .sec06__inner--case .bx-wrapper .bx-next {
          right: none;
          left: 50px !important; }
        #top .sec06__inner--case .bx-wrapper .bx-pager {
          width: calc(100% - 110px);
          margin-left: 110px;
          padding-top: 0; }
        #top .sec06__inner--case .bx-wrapper .bx-pager, #top .sec06__inner--case .bx-wrapper .bx-controls-auto {
          bottom: -7px; }
        #top .sec06__inner--case .bx-wrapper .bx-pager.bx-default-pager a {
          width: 25px;
          height: 5px; }
      #top .sec06__inner .more {
        width: 100%;
        text-align: right; }
        #top .sec06__inner .more a {
          padding-right: 30px;
          position: relative;
          color: #012063;
          font-size: 16px;
          font-weight: bold;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          #top .sec06__inner .more a:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            background: url("../img/common/icon_arw_bl.png") no-repeat center center/cover;
            width: 17px;
            height: 14px;
            transform: translateY(-50%); }
          #top .sec06__inner .more a:hover {
            color: #012063;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; } }
#top .sec07 {
  background: url("../img/top/bg_sec07.png") no-repeat center top;
  min-height: 410px;
  margin: 0 0 200px;
  padding: 150px 0 0; }
  #top .sec07__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative; }
    #top .sec07__inner h2 {
      background: url("../img/top/bg_h2.png") no-repeat left center;
      max-width: 590px;
      margin-bottom: 50px;
      padding: 10px 0;
      text-align: center;
      color: #fff;
      font-size: 48px;
      letter-spacing: 0.1em; }
    #top .sec07__inner .read {
      padding-left: 20px;
      color: #fff;
      font-size: 18px;
      letter-spacing: 0.05em;
      line-height: 2.0; }
    #top .sec07__inner .more {
      position: absolute;
      top: 50%;
      right: 0; }
      #top .sec07__inner .more a {
        color: #fff;
        font-size: 18px;
        font-weight: bold;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out; }
        #top .sec07__inner .more a span {
          padding-right: 75px;
          position: relative; }
          #top .sec07__inner .more a span:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            background: url("../img/common/icon_arw_sq_w.png") no-repeat center center/cover;
            width: 55px;
            height: 55px;
            transform: translateY(-50%); }
        #top .sec07__inner .more a:hover {
          color: #ccc;
          text-decoration: none;
          -moz-transition: .5s;
          -webkit-transition: .5s;
          -o-transition: .5s;
          -ms-transition: .5s;
          transition: .5s; }

@media (max-width: 640px) {
  #top .sec07 {
    background: url("../img/top/bg_sec07_sp.jpg") no-repeat center bottom/cover;
    min-height: 0;
    margin: 0 0 15%;
    padding: 15% 0 20%; }
    #top .sec07__inner {
      max-width: 90%;
      padding: 0; }
      #top .sec07__inner h2 {
        background: url("../img/top/bg_h2.png") no-repeat left center/100% auto;
        max-width: 590px;
        margin-bottom: 5%;
        padding: 10px 0;
        font-size: 24px;
        letter-spacing: 0.2em; }
      #top .sec07__inner .read {
        margin-bottom: 8%;
        padding-left: 3%;
        color: #fff;
        font-size: 14px;
        letter-spacing: 0.05em;
        line-height: 1.8; }
      #top .sec07__inner .more {
        position: relative;
        top: 0;
        right: 0;
        text-align: right; }
        #top .sec07__inner .more a {
          font-size: 16px; }
          #top .sec07__inner .more a span {
            padding-right: 55px; }
            #top .sec07__inner .more a span:after {
              top: 50%;
              right: 0;
              width: 40px;
              height: 40px; }
          #top .sec07__inner .more a:hover {
            color: #fff; } }
#top .sec08 {
  background: url("../img/top/bg_sec08.jpg") no-repeat center bottom/100% auto;
  min-height: 490px;
  padding-bottom: 140px;
  position: relative; }
  #top .sec08__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #top .sec08__inner--title {
      position: relative; }
      #top .sec08__inner--title h2 {
        font-size: 40px; }
      #top .sec08__inner--title .h2_en {
        margin-bottom: 50px;
        color: #012063;
        font-size: 20px;
        font-family: 'Jost'; }
        #top .sec08__inner--title .h2_en span {
          color: #006faf; }
      #top .sec08__inner--title .read {
        position: absolute;
        bottom: 0;
        left: 280px;
        line-height: 1.8; }
    #top .sec08__inner--company ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #top .sec08__inner--company ul li {
        width: 48%; }
        #top .sec08__inner--company ul li a figure {
          margin-bottom: 15px; }
          #top .sec08__inner--company ul li a figure img {
            border-radius: 15px;
            width: 100%;
            height: auto; }
          #top .sec08__inner--company ul li a figure + div {
            display: flex;
            flex-wrap: wrap;
            align-items: flex-end; }
            #top .sec08__inner--company ul li a figure + div h3 {
              margin-right: 15px;
              font-size: 28px; }
            #top .sec08__inner--company ul li a figure + div .h3_en {
              color: #012063;
              font-family: 'Jost'; }
        #top .sec08__inner--company ul li a:hover {
          text-decoration: none; }

@media (max-width: 640px) {
  #top .sec08 {
    background: url("../img/top/bg_sec08.jpg") no-repeat center bottom/250% auto;
    min-height: 0;
    padding-bottom: 15%; }
    #top .sec08__inner {
      max-width: 90%;
      padding: 0; }
      #top .sec08__inner--title h2 {
        font-size: 30px; }
      #top .sec08__inner--title .h2_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #top .sec08__inner--title .read {
        position: relative;
        bottom: 0;
        left: 0;
        margin-bottom: 8%; }
      #top .sec08__inner--company ul li {
        width: 100%; }
        #top .sec08__inner--company ul li:first-child {
          margin-bottom: 8%; }
        #top .sec08__inner--company ul li figure {
          margin-bottom: 3%; }
          #top .sec08__inner--company ul li figure + div h3 {
            margin-right: 3%;
            font-size: 20px; }
          #top .sec08__inner--company ul li figure + div .h3_en {
            color: #012063;
            font-family: 'Jost'; } }
#top .sec09 {
  background: url("../img/top/bg_sec09.jpg") no-repeat center top/cover;
  min-height: 620px;
  padding-top: 100px;
  position: relative; }
  #top .sec09__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #top .sec09__inner h2 {
      margin-bottom: 50px;
      text-align: center;
      color: #fff;
      font-size: clamp(24px, 3vw, 36px);
      letter-spacing: 0.15em;
      position: relative; }
      #top .sec09__inner h2:before {
        content: "";
        position: absolute;
        top: 50%;
        left: 50px;
        background: url("../img/top/icon_reef03.png") no-repeat center center/cover;
        width: 57px;
        height: 120px;
        transform: translateY(-50%); }
      #top .sec09__inner h2:after {
        content: "";
        position: absolute;
        top: 50%;
        right: 50px;
        background: url("../img/top/icon_reef04.png") no-repeat center center/cover;
        width: 57px;
        height: 120px;
        transform: translateY(-50%); }
    #top .sec09__inner .read {
      margin-bottom: 50px;
      text-align: center;
      color: #fff;
      letter-spacing: 0.1em;
      line-height: 2.0; }
    #top .sec09__inner--contact {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #top .sec09__inner--contact li {
        border-radius: 15px;
        border: 1px solid #fff;
        width: 38%;
        padding: 30px 5%;
        text-align: center; }
        #top .sec09__inner--contact li h3 {
          margin-bottom: 20px;
          color: #fff;
          letter-spacing: 0.05em; }
        #top .sec09__inner--contact li .tel {
          margin-bottom: 20px;
          line-height: 1.0; }
          #top .sec09__inner--contact li .tel a {
            pointer-events: none;
            padding-left: 40px;
            color: #fff;
            font-size: 44px;
            font-weight: bold;
            font-family: 'Jost';
            letter-spacing: 0.1em;
            position: relative; }
            #top .sec09__inner--contact li .tel a:before {
              content: "";
              position: absolute;
              top: 50%;
              left: 0;
              background: url("../img/common/icon_tel_w.png") no-repeat center center/cover;
              width: 31px;
              height: 30px;
              transform: translateY(-50%); }
            #top .sec09__inner--contact li .tel a:hover {
              text-decoration: none; }
        #top .sec09__inner--contact li .time {
          color: #fff;
          letter-spacing: 0.1em; }
        #top .sec09__inner--contact li .btn a {
          display: block;
          border-radius: 8px;
          background: #fff;
          padding: 25px 0;
          text-align: center;
          color: #006faf;
          font-size: 18px;
          font-weight: bold;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          #top .sec09__inner--contact li .btn a span {
            padding-left: 38px;
            position: relative; }
            #top .sec09__inner--contact li .btn a span:before {
              content: "";
              position: absolute;
              top: 50%;
              left: 0;
              background: url("../img/common/icon_mail_bl.png") no-repeat center center/cover;
              width: 27px;
              height: 20px;
              transform: translateY(-50%); }
          #top .sec09__inner--contact li .btn a:hover {
            background: #d2e8f5;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }

@media (max-width: 640px) {
  #top .sec09 {
    background: url("../img/top/bg_sec09.jpg") no-repeat center top/cover;
    min-height: 0;
    padding: 12% 0; }
    #top .sec09__inner {
      max-width: 90%;
      padding: 0; }
      #top .sec09__inner h2 {
        margin-bottom: 6%;
        font-size: 18px;
        letter-spacing: 0.15em; }
        #top .sec09__inner h2:before {
          left: 0;
          width: 35px;
          height: 74px; }
        #top .sec09__inner h2:after {
          right: 0;
          width: 35px;
          height: 74px; }
      #top .sec09__inner .read {
        margin-bottom: 8%;
        letter-spacing: 0.05em; }
      #top .sec09__inner--contact li {
        width: 90%;
        padding: 6% 5%; }
        #top .sec09__inner--contact li:first-child {
          margin-bottom: 5%; }
        #top .sec09__inner--contact li h3 {
          margin-bottom: 5%; }
        #top .sec09__inner--contact li .tel {
          margin-bottom: 5%; }
          #top .sec09__inner--contact li .tel a {
            pointer-events: auto;
            padding-left: 30px;
            font-size: 28px; }
            #top .sec09__inner--contact li .tel a:before {
              width: 23px;
              height: 22px; }
        #top .sec09__inner--contact li .btn a {
          padding: 20px 0;
          font-size: 16px; }
          #top .sec09__inner--contact li .btn a span {
            padding-left: 34px; }
            #top .sec09__inner--contact li .btn a span:before {
              width: 24px;
              height: 18px; }
          #top .sec09__inner--contact li .btn a:hover {
            background: none; } }
#top .sec10 {
  background: url("../img/top/bg_sec10.png") no-repeat center top;
  min-height: 870px; }
  #top .sec10__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px;
    position: relative; }
    #top .sec10__inner--block .box {
      max-width: 660px;
      margin-left: auto;
      padding-top: 120px; }
      #top .sec10__inner--block .box h2 {
        font-size: 40px; }
      #top .sec10__inner--block .box .h2_en {
        margin-bottom: 50px;
        color: #012063;
        font-size: 20px;
        font-family: 'Jost'; }
        #top .sec10__inner--block .box .h2_en span {
          color: #006faf; }
      #top .sec10__inner--block .box .read {
        margin-bottom: 60px;
        line-height: 2.0; }
      #top .sec10__inner--block .box ul {
        border-top: 1px solid #c7d3e3; }
        #top .sec10__inner--block .box ul li a {
          display: block;
          border-bottom: 1px solid #c7d3e3;
          padding: 25px 10px;
          position: relative;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          #top .sec10__inner--block .box ul li a .txt {
            margin-bottom: 5px;
            font-size: 14px;
            letter-spacing: 0.05em; }
          #top .sec10__inner--block .box ul li a h3 {
            color: #012063;
            font-size: 24px;
            letter-spacing: 0.1em; }
          #top .sec10__inner--block .box ul li a:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 10px;
            background: url("../img/common/icon_arw_bl.png") no-repeat center center/cover;
            width: 17px;
            height: 14px;
            transform: translateY(-50%); }
          #top .sec10__inner--block .box ul li a:hover {
            background: #f5f8ff;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }

@media (max-width: 640px) {
  #top .sec10 {
    background: url("../img/top/bg_sec10.png") no-repeat center top/350% auto;
    min-height: 0;
    padding: 10% 0; }
    #top .sec10__inner {
      max-width: 90%;
      padding: 0; }
      #top .sec10__inner--block .box {
        max-width: 100%;
        margin-left: 0;
        padding-top: 0; }
        #top .sec10__inner--block .box h2 {
          font-size: 30px; }
        #top .sec10__inner--block .box .h2_en {
          margin-bottom: 6%;
          font-size: 16px; }
        #top .sec10__inner--block .box .read {
          margin-bottom: 8%;
          line-height: 2.0; }
        #top .sec10__inner--block .box ul li a {
          padding: 5% 0; }
          #top .sec10__inner--block .box ul li a .txt {
            margin-bottom: 1%;
            font-size: 12px; }
          #top .sec10__inner--block .box ul li a h3 {
            font-size: 18px; }
          #top .sec10__inner--block .box ul li a:hover {
            background: none; } }
/* *******************************************
     業務・サービス　-　おためしHACCP
******************************************* */
#trial .sec01 {
  padding: 120px 0 100px; }
  #trial .sec01__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #trial .sec01__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center; }
      #trial .sec01__inner--block figure {
        width: 50vw;
        margin-left: calc(50% - 50vw); }
        #trial .sec01__inner--block figure img {
          border-radius: 0 20px 20px 0;
          width: 100%;
          height: auto; }
        #trial .sec01__inner--block figure + div {
          width: 43%; }
          #trial .sec01__inner--block figure + div h3 {
            margin-bottom: 30px;
            color: #012063;
            font-size: 40px;
            font-weight: bold;
            font-family: 'Noto Serif';
            line-height: 1.4; }
          #trial .sec01__inner--block figure + div .txt {
            font-size: 16px;
            line-height: 2.2; }

@media (max-width: 640px) {
  #trial .sec01 {
    padding: 12% 0 10%; }
    #trial .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #trial .sec01__inner--block figure {
        order: 2;
        width: 100%;
        margin-left: 0; }
        #trial .sec01__inner--block figure img {
          border-radius: 10px; }
        #trial .sec01__inner--block figure + div {
          order: 1;
          width: 100%;
          margin-bottom: 8%; }
          #trial .sec01__inner--block figure + div h3 {
            margin-bottom: 5%;
            font-size: 30px; }
          #trial .sec01__inner--block figure + div .txt {
            font-size: 14px;
            line-height: 2.0; } }
#trial .sec02 {
  background: #ebeff7;
  padding: 100px 0; }
  #trial .sec02__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #trial .sec02__inner h3 {
      font-size: 40px; }
    #trial .sec02__inner .h3_en {
      margin-bottom: 40px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #trial .sec02__inner .h3_en span {
        color: #006faf; }
    #trial .sec02__inner .read {
      margin-bottom: 30px;
      line-height: 1.8; }
    #trial .sec02__inner ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      border-radius: 15px;
      background: #fff;
      padding: 30px 30px; }
      #trial .sec02__inner ul li {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        width: 18%; }
        #trial .sec02__inner ul li .icon {
          border-radius: 10px;
          background: #012063;
          width: 40px;
          height: 40px;
          margin-bottom: 8px;
          text-align: center;
          color: #fff;
          font-size: 24px;
          font-weight: bold; }
        #trial .sec02__inner ul li h4 {
          min-height: 88px;
          color: #012063;
          font-size: 18px;
          line-height: 1.4; }
        #trial .sec02__inner ul li figure {
          width: 70%;
          margin: 0 auto 10px; }
          #trial .sec02__inner ul li figure img {
            width: 100%;
            height: auto; }
        #trial .sec02__inner ul li .txt {
          flex-grow: 1; }

@media (max-width: 640px) {
  #trial .sec02 {
    padding: 10% 0; }
    #trial .sec02__inner {
      max-width: 90%;
      padding: 0; }
      #trial .sec02__inner h3 {
        margin-bottom: 2%;
        font-size: 30px;
        line-height: 1.3; }
      #trial .sec02__inner .h3_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #trial .sec02__inner .read {
        margin-bottom: 6%; }
      #trial .sec02__inner ul {
        padding: 5% 5%; }
        #trial .sec02__inner ul li {
          width: 100%;
          margin-bottom: 8%; }
          #trial .sec02__inner ul li:last-child {
            margin-bottom: 0; }
          #trial .sec02__inner ul li .icon {
            border-radius: 10px;
            background: #012063;
            width: 30px;
            height: 30px;
            margin-bottom: 2%;
            text-align: center;
            color: #fff;
            font-size: 20px;
            line-height: 1.4; }
          #trial .sec02__inner ul li h4 {
            min-height: 0;
            margin-bottom: 2%;
            font-size: 16px;
            line-height: 1.6; }
          #trial .sec02__inner ul li figure {
            width: 40%;
            margin: 0 auto 3%; }
          #trial .sec02__inner ul li .txt {
            flex-grow: 1; } }
#trial .sec03 {
  padding: 100px 0; }
  #trial .sec03__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #trial .sec03__inner h3 {
      font-size: 40px; }
    #trial .sec03__inner .h3_en {
      margin-bottom: 40px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #trial .sec03__inner .h3_en span {
        color: #006faf; }
    #trial .sec03__inner .read {
      margin-bottom: 40px;
      line-height: 1.8; }
    #trial .sec03__inner ul li {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 40px; }
      #trial .sec03__inner ul li:last-child {
        margin-bottom: 0; }
      #trial .sec03__inner ul li figure {
        width: 42%;
        position: relative; }
        #trial .sec03__inner ul li figure img {
          width: 100%;
          height: auto; }
        #trial .sec03__inner ul li figure span {
          position: absolute;
          top: -10px;
          right: -10px;
          border-radius: 10px;
          background: #012063;
          width: 50px;
          height: 45px;
          padding-top: 5px;
          text-align: center;
          color: #fff;
          font-size: 36px;
          font-weight: bold;
          line-height: 1.0; }
        #trial .sec03__inner ul li figure + div {
          width: 53%; }
          #trial .sec03__inner ul li figure + div h4 {
            margin-bottom: 15px;
            color: #012063;
            font-size: 20px; }
          #trial .sec03__inner ul li figure + div .txt {
            line-height: 1.8; }

@media (max-width: 640px) {
  #trial .sec03 {
    padding: 10% 0; }
    #trial .sec03__inner {
      max-width: 90%;
      padding: 0; }
      #trial .sec03__inner h3 {
        font-size: 30px; }
      #trial .sec03__inner .h3_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #trial .sec03__inner .read {
        margin-bottom: 6%; }
      #trial .sec03__inner ul li {
        margin-bottom: 8%; }
        #trial .sec03__inner ul li figure {
          width: 100%;
          margin-bottom: 5%; }
          #trial .sec03__inner ul li figure span {
            width: 40px;
            height: 36px;
            padding-top: 4px;
            font-size: 30px; }
          #trial .sec03__inner ul li figure + div {
            width: 100%; }
            #trial .sec03__inner ul li figure + div h4 {
              margin-bottom: 2%;
              font-size: 18px; } }
#trial .sec04 {
  padding: 100px 0 150px; }
  #trial .sec04__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #trial .sec04__inner h3 {
      font-size: 40px; }
    #trial .sec04__inner .h3_en {
      margin-bottom: 40px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #trial .sec04__inner .h3_en span {
        color: #006faf; }
    #trial .sec04__inner ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #trial .sec04__inner ul li {
        display: flex;
        flex-direction: column;
        align-items: stretch;
        width: 23%; }
        #trial .sec04__inner ul li .step {
          background: url("../img/business/bg_step.jpg") no-repeat right center #012063;
          background-size: auto 100%;
          min-height: 47px;
          margin-bottom: 15px;
          padding: 1px 20px 4px;
          color: #fff;
          font-size: 20px;
          font-weight: bold;
          line-height: 1.4;
          letter-spacing: 0.08em; }
          #trial .sec04__inner ul li .step span {
            margin-left: 3px;
            font-size: 30px; }
        #trial .sec04__inner ul li h4 {
          min-height: 68px;
          color: #012063;
          font-size: 20px;
          font-weight: bold;
          line-height: 1.4; }
        #trial .sec04__inner ul li figure {
          width: 80%;
          margin: 0 auto 15px; }
          #trial .sec04__inner ul li figure img {
            width: 100%;
            height: auto; }
        #trial .sec04__inner ul li .txt {
          line-height: 1.8; }

@media (max-width: 640px) {
  #trial .sec04 {
    padding: 6% 0 16%; }
    #trial .sec04__inner {
      max-width: 90%;
      padding: 0; }
      #trial .sec04__inner h3 {
        font-size: 30px; }
      #trial .sec04__inner .h3_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #trial .sec04__inner ul li {
        width: 48%; }
        #trial .sec04__inner ul li:nth-child(-n+2) {
          margin-bottom: 6%; }
        #trial .sec04__inner ul li .step {
          background: url("../img/business/bg_step.jpg") no-repeat right center #012063;
          min-height: 0;
          margin-bottom: 5%;
          padding: 2% 5% 3%;
          font-size: 14px;
          line-height: 1.6; }
          #trial .sec04__inner ul li .step span {
            font-size: 20px; }
        #trial .sec04__inner ul li h4 {
          min-height: 0;
          margin-bottom: 5%;
          font-size: 16px; }
        #trial .sec04__inner ul li figure {
          width: 60%;
          margin: 0 auto 3%; }
        #trial .sec04__inner ul li .txt {
          line-height: 1.8; } }
/* *******************************************
     業務・サービス　-　コンサルティングの流れ
******************************************* */
#flow .sec01 {
  padding: 120px 0 100px; }
  #flow .sec01__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #flow .sec01__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center; }
      #flow .sec01__inner--block figure {
        width: 50vw;
        margin-left: calc(50% - 50vw); }
        #flow .sec01__inner--block figure img {
          border-radius: 0 20px 20px 0;
          width: 100%;
          height: auto; }
        #flow .sec01__inner--block figure + div {
          width: 43%; }
          #flow .sec01__inner--block figure + div h3 {
            margin-bottom: 30px;
            color: #012063;
            font-size: 40px;
            font-weight: bold;
            font-family: 'Noto Serif';
            line-height: 1.4; }
          #flow .sec01__inner--block figure + div .txt {
            margin-bottom: 40px;
            font-size: 16px;
            line-height: 2.2; }
          #flow .sec01__inner--block figure + div .btn {
            width: 280px;
            margin: 0 auto; }
            #flow .sec01__inner--block figure + div .btn a {
              display: block;
              border-radius: 10px;
              background: #006faf;
              padding: 15px 0;
              text-align: center;
              color: #fff;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }
              #flow .sec01__inner--block figure + div .btn a span {
                padding-left: 32px;
                position: relative; }
                #flow .sec01__inner--block figure + div .btn a span:before {
                  content: "";
                  position: absolute;
                  top: 50%;
                  left: 0;
                  background: url("../img/business/icon_staff.png") no-repeat center center/cover;
                  width: 23px;
                  height: 27px;
                  transform: translateY(-50%); }
              #flow .sec01__inner--block figure + div .btn a:hover {
                background: #2990cb;
                text-decoration: none;
                -moz-transition: .5s;
                -webkit-transition: .5s;
                -o-transition: .5s;
                -ms-transition: .5s;
                transition: .5s; }

@media (max-width: 640px) {
  #flow .sec01 {
    padding: 12% 0 10%; }
    #flow .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #flow .sec01__inner--block figure {
        order: 2;
        width: 100%;
        margin-left: 0; }
        #flow .sec01__inner--block figure img {
          border-radius: 10px; }
        #flow .sec01__inner--block figure + div {
          order: 1;
          width: 100%;
          margin-bottom: 8%; }
          #flow .sec01__inner--block figure + div h3 {
            margin-bottom: 5%;
            font-size: 30px; }
          #flow .sec01__inner--block figure + div .txt {
            margin-bottom: 6%;
            font-size: 14px;
            line-height: 2.0; }
          #flow .sec01__inner--block figure + div .btn a:hover {
            background: #006faf; } }
#flow .sec02 {
  background: #ebeff7;
  padding: 100px 0; }
  #flow .sec02__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #flow .sec02__inner h3 {
      margin-bottom: 50px;
      text-align: center;
      font-size: 40px;
      letter-spacing: 0.05em; }
    #flow .sec02__inner ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #flow .sec02__inner ul li {
        border-radius: 10px;
        background: #fff;
        width: 32%;
        padding: 30px 0 20px;
        text-align: center; }
        #flow .sec02__inner ul li:nth-child(-n+3) {
          margin-bottom: 20px; }
        #flow .sec02__inner ul li figure {
          margin-bottom: 10px; }
        #flow .sec02__inner ul li h4 {
          color: #012063;
          font-size: 20px; }

@media (max-width: 640px) {
  #flow .sec02 {
    padding: 10% 0; }
    #flow .sec02__inner {
      max-width: 90%;
      padding: 0; }
      #flow .sec02__inner h3 {
        margin-bottom: 6%;
        font-size: 30px;
        line-height: 1.4; }
      #flow .sec02__inner ul li {
        width: 48%;
        margin-bottom: 5%;
        padding: 5% 0 3%; }
        #flow .sec02__inner ul li:nth-child(-n+3) {
          margin-bottom: 5%; }
        #flow .sec02__inner ul li:nth-child(n+5) {
          margin-bottom: 0; }
        #flow .sec02__inner ul li figure {
          width: 50%;
          margin: 0 auto 3%; }
        #flow .sec02__inner ul li h4 {
          font-size: 14px; } }
#flow .sec03 {
  padding: 100px 0; }
  #flow .sec03__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #flow .sec03__inner h3 {
      font-size: 40px; }
    #flow .sec03__inner .h3_en {
      margin-bottom: 40px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #flow .sec03__inner .h3_en span {
        color: #006faf; }
    #flow .sec03__inner .read {
      margin-bottom: 30px;
      line-height: 1.8; }
    #flow .sec03__inner figure img {
      width: 100%;
      height: auto; }

@media (max-width: 640px) {
  #flow .sec03 {
    padding: 10% 0; }
    #flow .sec03__inner {
      max-width: 90%;
      padding: 0; }
      #flow .sec03__inner h3 {
        font-size: 30px; }
      #flow .sec03__inner .h3_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #flow .sec03__inner .read {
        margin-bottom: 6%; }
      #flow .sec03__inner .wrap_figure {
        overflow-x: scroll; }
        #flow .sec03__inner .wrap_figure figure {
          width: 1160px; } }
#flow .sec04 {
  background: #ebeff7;
  padding: 100px 0; }
  #flow .sec04__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #flow .sec04__inner h3 {
      font-size: 40px; }
    #flow .sec04__inner .h3_en {
      margin-bottom: 40px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #flow .sec04__inner .h3_en span {
        color: #006faf; }
    #flow .sec04__inner .read {
      margin-bottom: 30px;
      line-height: 1.8; }
    #flow .sec04__inner ul.howto {
      margin: 0 20px; }
      #flow .sec04__inner ul.howto > li {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        border-radius: 10px;
        background: #fff;
        margin-bottom: 40px;
        padding: 20px 30px;
        position: relative; }
        #flow .sec04__inner ul.howto > li:after {
          content: "";
          position: absolute;
          bottom: -30px;
          left: 50%;
          width: 0;
          height: 0;
          border-style: solid;
          border-right: 50px solid transparent;
          border-left: 50px solid transparent;
          border-top: 30px solid #fff;
          border-bottom: 0;
          transform: translateX(-50%); }
        #flow .sec04__inner ul.howto > li:last-child {
          margin-bottom: 0; }
          #flow .sec04__inner ul.howto > li:last-child:after {
            display: none; }
        #flow .sec04__inner ul.howto > li figure {
          width: 25%; }
          #flow .sec04__inner ul.howto > li figure img {
            width: 100%;
            height: auto; }
          #flow .sec04__inner ul.howto > li figure + div {
            width: 72%; }
            #flow .sec04__inner ul.howto > li figure + div h4 {
              margin-bottom: 10px;
              color: #012063;
              font-size: 20px; }
              #flow .sec04__inner ul.howto > li figure + div h4 span {
                display: inline-block;
                border-radius: 10px;
                background: #012063;
                width: 38px;
                margin-right: 10px;
                padding: 0;
                text-align: center;
                color: #fff;
                font-size: 24px; }

@media (max-width: 640px) {
  #flow .sec04 {
    padding: 10% 0; }
    #flow .sec04__inner {
      max-width: 90%;
      padding: 0; }
      #flow .sec04__inner h3 {
        font-size: 30px; }
      #flow .sec04__inner .h3_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #flow .sec04__inner .read {
        margin-bottom: 8%; }
      #flow .sec04__inner ul.howto {
        margin: 0; }
        #flow .sec04__inner ul.howto > li {
          padding: 5% 5%; }
          #flow .sec04__inner ul.howto > li figure {
            order: 2;
            width: 100%; }
            #flow .sec04__inner ul.howto > li figure + div {
              order: 1;
              width: 100%;
              margin-bottom: 6%; }
              #flow .sec04__inner ul.howto > li figure + div h4 {
                margin-bottom: 3%;
                font-size: 18px; }
                #flow .sec04__inner ul.howto > li figure + div h4 span {
                  width: 32px;
                  margin-right: 10px;
                  font-size: 20px; } }
#flow .sec05 {
  background: url("../img/business/bg_flow_sec05.jpg") no-repeat center bottom/cover;
  padding: 100px 0; }
  #flow .sec05__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #flow .sec05__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #flow .sec05__inner--block figure {
        order: 2;
        width: 50vw;
        margin-right: calc(50% - 50vw); }
        #flow .sec05__inner--block figure img {
          border-radius: 20px 0 0 20px;
          width: 100%;
          height: auto; }
        #flow .sec05__inner--block figure + div {
          order: 1;
          width: 45%;
          padding-top: 50px; }
          #flow .sec05__inner--block figure + div h3 {
            font-size: 40px; }
          #flow .sec05__inner--block figure + div .h3_en {
            margin-bottom: 40px;
            color: #012063;
            font-size: 20px;
            font-family: 'Jost'; }
            #flow .sec05__inner--block figure + div .h3_en span {
              color: #006faf; }
          #flow .sec05__inner--block figure + div .txt {
            font-size: 16px;
            line-height: 2.2; }

@media (max-width: 640px) {
  #flow .sec05 {
    padding: 10% 0; }
    #flow .sec05__inner {
      max-width: 90%;
      padding: 0; }
      #flow .sec05__inner--block figure {
        width: 100%;
        margin: 0; }
        #flow .sec05__inner--block figure img {
          border-radius: 10px; }
        #flow .sec05__inner--block figure + div {
          width: 100%;
          margin-bottom: 5%;
          padding-top: 0; }
          #flow .sec05__inner--block figure + div h3 {
            font-size: 30px;
            line-height: 1.4; }
          #flow .sec05__inner--block figure + div .h3_en {
            margin-bottom: 6%;
            font-size: 16px; }
          #flow .sec05__inner--block figure + div .txt {
            font-size: 14px;
            line-height: 2.2; } }
#flow .sec06 {
  background: #ebeff7;
  margin-bottom: 120px;
  padding: 100px 0; }
  #flow .sec06__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #flow .sec06__inner h3 {
      font-size: 40px; }
    #flow .sec06__inner .h3_en {
      margin-bottom: 40px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #flow .sec06__inner .h3_en span {
        color: #006faf; }
    #flow .sec06__inner .read {
      margin-bottom: 40px;
      line-height: 1.8; }
    #flow .sec06__inner--box {
      background: #fff;
      padding: 50px 70px 20px; }
      #flow .sec06__inner--box dl {
        border-bottom: 1.5px dashed #b7b8b8;
        margin-bottom: 55px;
        padding-bottom: 30px; }
        #flow .sec06__inner--box dl dt {
          border-bottom: 2px solid #012063;
          margin-bottom: 15px;
          padding-left: 55px;
          padding-bottom: 7px;
          color: #012063;
          font-size: 20px;
          font-weight: bold;
          line-height: 1.8;
          position: relative; }
          #flow .sec06__inner--box dl dt:before {
            position: absolute;
            top: 40%;
            left: 0;
            color: #012063;
            font-size: 28px;
            font-weight: normal;
            font-family: 'Jost';
            line-height: 1.0;
            transform: translateY(-50%); }
        #flow .sec06__inner--box dl dd {
          padding-left: 55px;
          line-height: 1.8;
          position: relative; }
          #flow .sec06__inner--box dl dd:before {
            position: absolute;
            top: 0;
            left: 2px;
            color: #9fa0a0;
            font-size: 28px;
            font-weight: normal;
            font-family: 'Jost';
            line-height: 1.0; }
        #flow .sec06__inner--box dl.q1 dt:before {
          content: "Q1"; }
        #flow .sec06__inner--box dl.q1 dd:before {
          content: "A1"; }
        #flow .sec06__inner--box dl.q2 dt:before {
          content: "Q2"; }
        #flow .sec06__inner--box dl.q2 dd:before {
          content: "A2"; }
        #flow .sec06__inner--box dl.q3 dt:before {
          content: "Q3"; }
        #flow .sec06__inner--box dl.q3 dd:before {
          content: "A3"; }
        #flow .sec06__inner--box dl.q4 dt:before {
          content: "Q4"; }
        #flow .sec06__inner--box dl.q4 dd:before {
          content: "A4"; }
        #flow .sec06__inner--box dl.q5 dt:before {
          content: "Q5"; }
        #flow .sec06__inner--box dl.q5 dd:before {
          content: "A5"; }
        #flow .sec06__inner--box dl.q6 dt:before {
          content: "Q6"; }
        #flow .sec06__inner--box dl.q6 dd:before {
          content: "A6"; }
        #flow .sec06__inner--box dl.q7 dt:before {
          content: "Q7"; }
        #flow .sec06__inner--box dl.q7 dd:before {
          content: "A7"; }
        #flow .sec06__inner--box dl.q8 dt:before {
          content: "Q8"; }
        #flow .sec06__inner--box dl.q8 dd:before {
          content: "A8"; }

@media (max-width: 640px) {
  #flow .sec06 {
    margin-bottom: 12%;
    padding: 10% 0; }
    #flow .sec06__inner {
      max-width: 90%;
      padding: 0; }
      #flow .sec06__inner h3 {
        font-size: 30px; }
      #flow .sec06__inner .h3_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #flow .sec06__inner .read {
        margin-bottom: 8%; }
      #flow .sec06__inner--box {
        padding: 5% 5% 1%; }
        #flow .sec06__inner--box dl {
          margin-bottom: 10%;
          padding-bottom: 5%; }
          #flow .sec06__inner--box dl dt {
            border-bottom: 1.5px solid #012063;
            margin-bottom: 4%;
            padding-left: 50px;
            padding-bottom: 2%;
            font-size: 16px;
            line-height: 1.6; }
            #flow .sec06__inner--box dl dt:before {
              top: 15px;
              left: 0;
              font-size: 24px; }
          #flow .sec06__inner--box dl dd {
            padding-left: 50px;
            line-height: 1.8; }
            #flow .sec06__inner--box dl dd:before {
              left: 2px;
              font-size: 24px; } }
/* *******************************************
     業務・サービス　-　スタッフ紹介
******************************************* */
#staff .sec01 {
  background: url("../img/business/bg_staff_sec01.jpg") no-repeat center center/cover;
  margin: 120px 0 0;
  padding: 80px 0 100px; }
  #staff .sec01__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #staff .sec01__inner--box {
      background: rgba(255, 255, 255, 0.75);
      padding: 50px 50px;
      text-align: center;
      filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, 0.1)); }
      #staff .sec01__inner--box h3 {
        margin-bottom: 20px;
        text-align: center;
        color: #012063;
        font-size: 40px;
        font-weight: bold;
        font-family: 'Noto Serif'; }
      #staff .sec01__inner--box .txt01 {
        margin-bottom: 20px;
        color: #012063;
        font-size: 24px;
        font-weight: bold; }
      #staff .sec01__inner--box .txt02 {
        line-height: 1.8; }

@media (max-width: 640px) {
  #staff .sec01 {
    margin: 12% 0 0;
    padding: 8% 0 10%; }
    #staff .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #staff .sec01__inner--box {
        padding: 5% 5%; }
        #staff .sec01__inner--box h3 {
          margin-bottom: 5%;
          font-size: 30px;
          line-height: 1.4; }
        #staff .sec01__inner--box .txt01 {
          margin-bottom: 4%;
          font-size: 18px; }
        #staff .sec01__inner--box .txt02 {
          line-height: 1.8; } }
#staff .sec02 {
  background: #eff7f9;
  margin: 100px 0 0;
  padding: 100px 0; }
  #staff .sec02__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #staff .sec02__inner h3 {
      font-size: 40px; }
    #staff .sec02__inner .h3_en {
      margin-bottom: 40px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #staff .sec02__inner .h3_en span {
        color: #006faf; }
    #staff .sec02__inner .read {
      margin-bottom: 40px;
      line-height: 1.8; }
    #staff .sec02__inner ul li {
      border-radius: 20px;
      background: #fff;
      margin-bottom: 40px;
      padding: 50px 50px; }
      #staff .sec02__inner ul li:last-child {
        margin-bottom: 0; }
      #staff .sec02__inner ul li .block {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        border-top: 2px solid #012063;
        padding-top: 50px;
        position: relative; }
        #staff .sec02__inner ul li .block:before {
          content: "";
          position: absolute;
          top: 0;
          left: 0;
          background: #012063;
          width: 150px;
          height: 10px; }
        #staff .sec02__inner ul li .block figure {
          order: 2;
          width: 30%; }
          #staff .sec02__inner ul li .block figure img {
            width: 100%;
            height: auto; }
          #staff .sec02__inner ul li .block figure + div {
            order: 1;
            width: 65%; }
            #staff .sec02__inner ul li .block figure + div .name {
              margin-bottom: 20px;
              color: #012063;
              font-size: 20px;
              font-weight: bold; }
              #staff .sec02__inner ul li .block figure + div .name span {
                font-size: 32px; }
            #staff .sec02__inner ul li .block figure + div p {
              margin-bottom: 30px; }
      #staff .sec02__inner ul li h4 {
        font-size: 16px; }
        #staff .sec02__inner ul li h4 span {
          color: #006faf; }
      #staff .sec02__inner ul li p {
        line-height: 2.0; }

@media (max-width: 640px) {
  #staff .sec02 {
    margin: 10% 0 0;
    padding: 10% 0; }
    #staff .sec02__inner {
      max-width: 90%;
      padding: 0; }
      #staff .sec02__inner h3 {
        font-size: 30px; }
      #staff .sec02__inner .h3_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #staff .sec02__inner .read {
        margin-bottom: 8%; }
      #staff .sec02__inner ul li {
        margin-bottom: 8%;
        padding: 8% 5% 5%; }
        #staff .sec02__inner ul li .block {
          padding-top: 10%; }
          #staff .sec02__inner ul li .block:before {
            width: 100px; }
          #staff .sec02__inner ul li .block figure {
            order: 1;
            width: 70%;
            margin: 0 auto 5%; }
            #staff .sec02__inner ul li .block figure + div {
              order: 2;
              width: 100%; }
              #staff .sec02__inner ul li .block figure + div .name {
                margin-bottom: 5%;
                text-align: center;
                font-size: 16px;
                line-height: 1.6; }
                #staff .sec02__inner ul li .block figure + div .name span {
                  font-size: 24px; }
              #staff .sec02__inner ul li .block figure + div p {
                margin-bottom: 6%;
                line-height: 2.0; }
        #staff .sec02__inner ul li h4 {
          font-size: 14px; } }
#staff .sec03 {
  padding: 120px 0 80px; }
  #staff .sec03__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #staff .sec03__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center; }
      #staff .sec03__inner--block figure {
        width: 50vw;
        margin-left: calc(50% - 50vw); }
        #staff .sec03__inner--block figure img {
          border-radius: 0 20px 20px 0;
          width: 100%;
          height: auto; }
        #staff .sec03__inner--block figure + div {
          width: 43%; }
          #staff .sec03__inner--block figure + div h3 {
            font-size: 40px; }
          #staff .sec03__inner--block figure + div .h3_en {
            margin-bottom: 40px;
            color: #012063;
            font-size: 20px;
            font-family: 'Jost'; }
            #staff .sec03__inner--block figure + div .h3_en span {
              color: #006faf; }
          #staff .sec03__inner--block figure + div .txt {
            font-size: 16px;
            line-height: 2.2; }

@media (max-width: 640px) {
  #staff .sec03 {
    padding: 12% 0 10%; }
    #staff .sec03__inner {
      max-width: 90%;
      padding: 0; }
      #staff .sec03__inner--block figure {
        order: 2;
        width: 100%;
        margin-left: 0; }
        #staff .sec03__inner--block figure img {
          border-radius: 10px; }
        #staff .sec03__inner--block figure + div {
          order: 1;
          width: 100%;
          margin-bottom: 5%; }
          #staff .sec03__inner--block figure + div h3 {
            font-size: 30px; }
          #staff .sec03__inner--block figure + div .h3_en {
            margin-bottom: 6%; }
          #staff .sec03__inner--block figure + div .txt {
            font-size: 14px;
            line-height: 2.2; } }
#staff .sec04 {
  padding: 0 0 120px; }
  #staff .sec04__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #staff .sec04__inner h4 {
      margin-bottom: 10px;
      font-size: 24px; }
    #staff .sec04__inner ul {
      display: flex;
      flex-wrap: wrap;
      margin-bottom: 50px; }
      #staff .sec04__inner ul li {
        border-radius: 5px;
        background: #e4edf4;
        margin-right: 10px;
        margin-bottom: 10px;
        padding: 8px 15px;
        font-size: 20px; }
    #staff .sec04__inner .txt {
      font-size: 20px;
      line-height: 1.8; }

@media (max-width: 640px) {
  #staff .sec04 {
    padding: 0 0 12%; }
    #staff .sec04__inner {
      max-width: 90%;
      padding: 0; }
      #staff .sec04__inner h4 {
        margin-bottom: 2%;
        font-size: 18px; }
      #staff .sec04__inner ul {
        margin-bottom: 6%; }
        #staff .sec04__inner ul li {
          border-radius: 5px;
          background: #e4edf4;
          margin-right: 10px;
          margin-bottom: 10px;
          padding: 5px 12px;
          font-size: 14px; }
      #staff .sec04__inner .txt {
        font-size: 16px; } }
/* *******************************************
     認証サービス　-　HACCP　・　ISO　・　JFS
******************************************* */
#certification .sec01 {
  padding: 120px 0 100px; }
  #certification .sec01__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #certification .sec01__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center; }
      #certification .sec01__inner--block figure {
        width: 50vw;
        margin-left: calc(50% - 50vw); }
        #certification .sec01__inner--block figure img {
          border-radius: 0 20px 20px 0;
          width: 100%;
          height: auto; }
        #certification .sec01__inner--block figure + div {
          width: 43%; }
          #certification .sec01__inner--block figure + div h3 {
            margin-bottom: 30px;
            color: #012063;
            font-size: 40px;
            font-weight: bold;
            font-family: 'Noto Serif';
            line-height: 1.4; }
          #certification .sec01__inner--block figure + div .txt {
            font-size: 16px;
            line-height: 2.2; }

@media (max-width: 640px) {
  #certification .sec01 {
    padding: 12% 0; }
    #certification .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #certification .sec01__inner--block figure {
        order: 2;
        width: 100%;
        margin-left: 0; }
        #certification .sec01__inner--block figure img {
          border-radius: 10px; }
        #certification .sec01__inner--block figure + div {
          order: 1;
          width: 100%;
          margin-bottom: 8%; }
          #certification .sec01__inner--block figure + div h3 {
            margin-bottom: 5%;
            font-size: 30px; }
          #certification .sec01__inner--block figure + div .txt {
            font-size: 14px;
            line-height: 2.0; } }
#certification .sec02 {
  padding: 0 0 100px; }
  #certification .sec02__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #certification .sec02__inner h3 {
      font-size: 40px; }
    #certification .sec02__inner .h3_en {
      margin-bottom: 40px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #certification .sec02__inner .h3_en span {
        color: #006faf; }
    #certification .sec02__inner .read {
      margin-bottom: 40px;
      line-height: 1.8; }
    #certification .sec02__inner ul.type01 {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-around;
      margin-bottom: 50px; }
      #certification .sec02__inner ul.type01.mb0 {
        margin-bottom: 0; }
      #certification .sec02__inner ul.type01 li {
        width: 48%; }
        #certification .sec02__inner ul.type01 li:first-child {
          border-radius: 10px;
          border: 1.5px solid #012063; }
          #certification .sec02__inner ul.type01 li:first-child h4 {
            background: #012063; }
        #certification .sec02__inner ul.type01 li:last-child {
          border-radius: 10px;
          border: 1.5px solid #509bd8; }
          #certification .sec02__inner ul.type01 li:last-child h4 {
            background: #509bd8; }
        #certification .sec02__inner ul.type01 li h4 {
          border-radius: 10px 10px 0 0;
          padding: 15px 20px;
          color: #fff;
          font-size: 18px;
          font-weight: bold; }
          #certification .sec02__inner ul.type01 li h4 span {
            font-size: 24px; }
          #certification .sec02__inner ul.type01 li h4 + div {
            padding: 10px; }
            #certification .sec02__inner ul.type01 li h4 + div figure img {
              width: 100%;
              height: auto; }
            #certification .sec02__inner ul.type01 li h4 + div .txt {
              padding: 20px 10px;
              line-height: 1.8; }
    #certification .sec02__inner ul.type02 li {
      width: 100%;
      margin-bottom: 30px; }
      #certification .sec02__inner ul.type02 li:first-child {
        border-radius: 10px;
        border: 1.5px solid #012063; }
        #certification .sec02__inner ul.type02 li:first-child h4 {
          background: #012063; }
      #certification .sec02__inner ul.type02 li:nth-child(2) {
        border-radius: 10px;
        border: 1.5px solid #bbb; }
        #certification .sec02__inner ul.type02 li:nth-child(2) h4 {
          background: #bbb; }
      #certification .sec02__inner ul.type02 li:last-child {
        border-radius: 10px;
        border: 1.5px solid #509bd8;
        margin-bottom: 0; }
        #certification .sec02__inner ul.type02 li:last-child h4 {
          background: #509bd8; }
      #certification .sec02__inner ul.type02 li h4 {
        border-radius: 10px 10px 0 0;
        padding: 15px 20px;
        color: #fff;
        font-size: 24px;
        font-weight: bold; }
        #certification .sec02__inner ul.type02 li h4 + div {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between;
          padding: 30px; }
          #certification .sec02__inner ul.type02 li h4 + div figure {
            width: 35%; }
            #certification .sec02__inner ul.type02 li h4 + div figure img {
              width: 100%;
              height: auto; }
          #certification .sec02__inner ul.type02 li h4 + div .txt {
            width: 60%;
            line-height: 2.0; }
    #certification .sec02__inner .ttl {
      margin-bottom: 20px;
      font-size: 24px;
      font-weight: bold; }
    #certification .sec02__inner .read {
      margin-bottom: 30px;
      line-height: 1.8; }
    #certification .sec02__inner .table_difference {
      border-top: 1px solid #bbb;
      border-left: 1px solid #bbb;
      width: 100%; }
      #certification .sec02__inner .table_difference th {
        border-right: 1px solid #bbb;
        border-bottom: 1px solid #bbb;
        padding: 12px 0;
        text-align: center;
        font-size: 20px;
        font-weight: bold; }
        #certification .sec02__inner .table_difference th:nth-child(1) {
          background: #012063;
          width: 41%;
          color: #fff; }
        #certification .sec02__inner .table_difference th:nth-child(2) {
          background: #ebeff7;
          font-size: 16px; }
        #certification .sec02__inner .table_difference th:nth-child(3) {
          background: #509bd8;
          width: 41%;
          color: #fff; }
      #certification .sec02__inner .table_difference td {
        border-right: 1px solid #bbb;
        border-bottom: 1px solid #bbb;
        padding: 15px 20px;
        vertical-align: top; }
        #certification .sec02__inner .table_difference td:nth-child(2) {
          background: #ebeff7;
          text-align: center;
          font-weight: bold;
          vertical-align: middle; }
        #certification .sec02__inner .table_difference td .fwb {
          font-weight: bold; }
        #certification .sec02__inner .table_difference td .sml {
          color: #012063;
          font-size: 14px; }

@media (max-width: 640px) {
  #certification .sec02 {
    padding: 0 0 10%; }
    #certification .sec02__inner {
      max-width: 90%;
      padding: 0; }
      #certification .sec02__inner h3 {
        font-size: 30px; }
      #certification .sec02__inner .h3_en {
        margin-bottom: 5%;
        font-size: 16px; }
      #certification .sec02__inner .read {
        margin-bottom: 6%; }
      #certification .sec02__inner ul.type01 {
        margin-bottom: 8%; }
        #certification .sec02__inner ul.type01 li {
          width: 100%; }
          #certification .sec02__inner ul.type01 li:first-child {
            margin-bottom: 5%; }
          #certification .sec02__inner ul.type01 li h4 {
            padding: 3% 5%;
            font-size: 14px; }
            #certification .sec02__inner ul.type01 li h4 span {
              font-size: 18px; }
            #certification .sec02__inner ul.type01 li h4 + div {
              padding: 3%; }
              #certification .sec02__inner ul.type01 li h4 + div .txt {
                padding: 3%; }
      #certification .sec02__inner ul.type02 li {
        margin-bottom: 6%; }
        #certification .sec02__inner ul.type02 li h4 {
          padding: 3% 5%;
          font-size: 18px; }
          #certification .sec02__inner ul.type02 li h4 + div {
            padding: 3%; }
            #certification .sec02__inner ul.type02 li h4 + div figure {
              width: 100%;
              margin-bottom: 5%; }
            #certification .sec02__inner ul.type02 li h4 + div .txt {
              margin-bottom: 2%;
              width: 100%;
              line-height: 1.8; }
      #certification .sec02__inner .ttl {
        margin-bottom: 4%;
        font-size: 20px; }
      #certification .sec02__inner .read {
        margin-bottom: 6%; }
      #certification .sec02__inner .table_difference th {
        padding: 3% 0;
        font-size: 14px; }
        #certification .sec02__inner .table_difference th:nth-child(1) {
          width: 40%; }
        #certification .sec02__inner .table_difference th:nth-child(2) {
          font-size: 13px; }
        #certification .sec02__inner .table_difference th:nth-child(3) {
          width: 40%; }
      #certification .sec02__inner .table_difference td {
        padding: 2% 2%;
        font-size: 12px; }
        #certification .sec02__inner .table_difference td .sml {
          color: #012063;
          font-size: 11px; } }
#certification .sec03 {
  background: #ebeff7;
  padding: 100px 0; }
  #certification .sec03__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #certification .sec03__inner h3 {
      margin-bottom: 50px;
      text-align: center;
      font-size: 40px;
      letter-spacing: 0.05em; }
    #certification .sec03__inner .read {
      margin-bottom: 30px;
      line-height: 1.8; }
    #certification .sec03__inner ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #certification .sec03__inner ul li {
        border-radius: 10px;
        background: #fff;
        width: 28%;
        padding: 30px 2% 30px; }
        #certification .sec03__inner ul li:nth-child(-n+3) {
          margin-bottom: 20px; }
        #certification .sec03__inner ul li h4 {
          margin-bottom: 15px;
          text-align: center;
          color: #012063;
          font-size: 18px;
          line-height: 1.4; }
        #certification .sec03__inner ul li figure {
          width: 35%;
          margin: 0 auto; }
          #certification .sec03__inner ul li figure img {
            width: 100%;
            height: auto; }
        #certification .sec03__inner ul li .txt {
          margin-top: 15px;
          line-height: 1.8; }

@media (max-width: 640px) {
  #certification .sec03 {
    padding: 10% 0; }
    #certification .sec03__inner {
      max-width: 90%;
      padding: 0; }
      #certification .sec03__inner h3 {
        margin-bottom: 6%;
        font-size: 30px;
        line-height: 1.4; }
      #certification .sec03__inner .read {
        margin-bottom: 3%; }
      #certification .sec03__inner ul li {
        width: 42%;
        margin-bottom: 5%;
        padding: 5% 3%; }
        #certification .sec03__inner ul li:nth-child(-n+3) {
          margin-bottom: 5%; }
        #certification .sec03__inner ul li:nth-child(n+5) {
          margin-bottom: 0; }
        #certification .sec03__inner ul li h4 {
          margin-bottom: 6%;
          font-size: 14px; }
        #certification .sec03__inner ul li figure {
          width: 50%;
          margin: 0 auto; }
        #certification .sec03__inner ul li .txt {
          margin-top: 4%; } }
#certification .sec04 {
  padding: 100px 0; }
  #certification .sec04__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #certification .sec04__inner h3 {
      font-size: 40px; }
    #certification .sec04__inner .h3_en {
      margin-bottom: 50px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #certification .sec04__inner .h3_en span {
        color: #006faf; }
    #certification .sec04__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #certification .sec04__inner--block figure {
        order: 2;
        width: 50vw;
        margin-right: calc(50% - 50vw); }
        #certification .sec04__inner--block figure img {
          border-radius: 20px 0 0 20px;
          width: 100%;
          height: auto; }
        #certification .sec04__inner--block figure + div {
          order: 1;
          width: 45%; }
          #certification .sec04__inner--block figure + div h4 {
            margin-bottom: 30px;
            color: #012063;
            font-size: 40px;
            font-weight: bold;
            font-family: 'Noto Serif';
            line-height: 1.4; }
          #certification .sec04__inner--block figure + div .txt {
            font-size: 16px;
            line-height: 2.2; }

@media (max-width: 640px) {
  #certification .sec04 {
    padding: 10% 0; }
    #certification .sec04__inner {
      max-width: 90%;
      padding: 0; }
      #certification .sec04__inner h3 {
        margin-bottom: 2%;
        font-size: 30px;
        line-height: 1.4; }
      #certification .sec04__inner .h3_en {
        margin-bottom: 5%;
        font-size: 16px; }
      #certification .sec04__inner--block figure {
        width: 100%;
        margin: 0; }
        #certification .sec04__inner--block figure img {
          border-radius: 10px; }
        #certification .sec04__inner--block figure + div {
          width: 100%;
          margin-bottom: 5%;
          padding-top: 0; }
          #certification .sec04__inner--block figure + div h4 {
            margin-bottom: 4%;
            font-size: 30px;
            line-height: 1.4; }
          #certification .sec04__inner--block figure + div .txt {
            font-size: 14px;
            line-height: 2.2; } }
#certification .sec05 {
  background: #ebeff7;
  padding: 100px 0; }
  #certification .sec05.bg_w {
    background: #fff; }
  #certification .sec05__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #certification .sec05__inner h3 {
      font-size: 40px; }
    #certification .sec05__inner .h3_en {
      margin-bottom: 40px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #certification .sec05__inner .h3_en span {
        color: #006faf; }
    #certification .sec05__inner .read {
      margin-bottom: 30px;
      line-height: 1.8; }
    #certification .sec05__inner ul.flow > li {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      border-radius: 10px;
      border: 1.5px solid #012063;
      box-shadow: 3px 3px 0px 0px #012063;
      background: #fff;
      margin-bottom: 15px;
      padding: 20px 30px; }
      #certification .sec05__inner ul.flow > li:last-child {
        margin-bottom: 0; }
      #certification .sec05__inner ul.flow > li .step {
        width: 5%;
        padding-top: 20px;
        text-align: center;
        color: #012063;
        font-size: 24px;
        font-family: 'Jost';
        line-height: 1.2;
        position: relative; }
        #certification .sec05__inner ul.flow > li .step:before {
          content: "";
          position: absolute;
          top: 0;
          left: 50%;
          background: #012063;
          width: 30px;
          height: 4px;
          transform: translateX(-50%); }
        #certification .sec05__inner ul.flow > li .step span {
          font-size: 32px; }
      #certification .sec05__inner ul.flow > li figure {
        width: 25%; }
        #certification .sec05__inner ul.flow > li figure img {
          width: 100%;
          height: auto; }
        #certification .sec05__inner ul.flow > li figure + div {
          width: 63%;
          padding-right: 2%; }
          #certification .sec05__inner ul.flow > li figure + div h4 {
            margin-bottom: 15px;
            color: #012063;
            font-size: 20px; }

@media (max-width: 640px) {
  #certification .sec05 {
    padding: 10% 0; }
    #certification .sec05__inner {
      max-width: 90%;
      padding: 0; }
      #certification .sec05__inner h3 {
        margin-bottom: 2%;
        font-size: 30px;
        line-height: 1.4; }
      #certification .sec05__inner .h3_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #certification .sec05__inner .read {
        margin-bottom: 8%; }
      #certification .sec05__inner ul.flow > li {
        padding: 5% 5%; }
        #certification .sec05__inner ul.flow > li .step {
          order: 1;
          width: 10%;
          padding-top: 10px;
          font-size: 20px; }
          #certification .sec05__inner ul.flow > li .step:before {
            height: 2px; }
          #certification .sec05__inner ul.flow > li .step span {
            font-size: 28px; }
        #certification .sec05__inner ul.flow > li figure {
          order: 3;
          width: 65%;
          margin: 0 auto; }
          #certification .sec05__inner ul.flow > li figure + div {
            order: 2;
            width: 80%;
            margin-bottom: 6%; }
            #certification .sec05__inner ul.flow > li figure + div h4 {
              margin-bottom: 3%;
              font-size: 18px; }
              #certification .sec05__inner ul.flow > li figure + div h4 span {
                width: 32px;
                margin-right: 10px;
                font-size: 20px; } }
#certification .sec06 {
  padding: 100px 0 150px; }
  #certification .sec06.bg_b {
    background: #ebeff7;
    margin-bottom: 120px;
    padding: 100px 0; }
    #certification .sec06.bg_b .sec06__inner--box {
      background: #fff; }
  #certification .sec06__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #certification .sec06__inner h3 {
      font-size: 40px; }
    #certification .sec06__inner .h3_en {
      margin-bottom: 40px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #certification .sec06__inner .h3_en span {
        color: #006faf; }
    #certification .sec06__inner .read {
      margin-bottom: 40px;
      line-height: 1.8; }
    #certification .sec06__inner--box {
      background: #ebeff7;
      padding: 50px 70px 20px; }
      #certification .sec06__inner--box dl {
        border-bottom: 1.5px dashed #b7b8b8;
        margin-bottom: 55px;
        padding-bottom: 30px; }
        #certification .sec06__inner--box dl.lst {
          border-bottom: none;
          margin-bottom: 0;
          padding-bottom: 50px; }
        #certification .sec06__inner--box dl dt {
          border-bottom: 2px solid #012063;
          margin-bottom: 15px;
          padding-left: 55px;
          padding-bottom: 7px;
          color: #012063;
          font-size: 20px;
          font-weight: bold;
          line-height: 1.8;
          position: relative; }
          #certification .sec06__inner--box dl dt:before {
            position: absolute;
            top: 40%;
            left: 0;
            color: #012063;
            font-size: 28px;
            font-weight: normal;
            font-family: 'Jost';
            line-height: 1.0;
            transform: translateY(-50%); }
        #certification .sec06__inner--box dl dd {
          padding-left: 55px;
          line-height: 1.8;
          position: relative; }
          #certification .sec06__inner--box dl dd:before {
            position: absolute;
            top: 0;
            left: 2px;
            color: #9fa0a0;
            font-size: 28px;
            font-weight: normal;
            font-family: 'Jost';
            line-height: 1.0; }
        #certification .sec06__inner--box dl.q1 dt:before {
          content: "Q1"; }
        #certification .sec06__inner--box dl.q1 dd:before {
          content: "A1"; }
        #certification .sec06__inner--box dl.q2 dt:before {
          content: "Q2"; }
        #certification .sec06__inner--box dl.q2 dd:before {
          content: "A2"; }
        #certification .sec06__inner--box dl.q3 dt:before {
          content: "Q3"; }
        #certification .sec06__inner--box dl.q3 dd:before {
          content: "A3"; }
        #certification .sec06__inner--box dl.q4 dt:before {
          content: "Q4"; }
        #certification .sec06__inner--box dl.q4 dd:before {
          content: "A4"; }
        #certification .sec06__inner--box dl.q5 dt:before {
          content: "Q5"; }
        #certification .sec06__inner--box dl.q5 dd:before {
          content: "A5"; }
        #certification .sec06__inner--box dl.q6 dt:before {
          content: "Q6"; }
        #certification .sec06__inner--box dl.q6 dd:before {
          content: "A6"; }
        #certification .sec06__inner--box dl.q7 dt:before {
          content: "Q7"; }
        #certification .sec06__inner--box dl.q7 dd:before {
          content: "A7"; }
        #certification .sec06__inner--box dl.q8 dt:before {
          content: "Q8"; }
        #certification .sec06__inner--box dl.q8 dd:before {
          content: "A8"; }
        #certification .sec06__inner--box dl.q9 dt:before {
          content: "Q9"; }
        #certification .sec06__inner--box dl.q9 dd:before {
          content: "A9"; }
        #certification .sec06__inner--box dl.q10 dt {
          padding-left: 65px; }
          #certification .sec06__inner--box dl.q10 dt:before {
            content: "Q10"; }
        #certification .sec06__inner--box dl.q10 dd {
          padding-left: 65px; }
          #certification .sec06__inner--box dl.q10 dd:before {
            content: "A10"; }

@media (max-width: 640px) {
  #certification .sec06 {
    padding: 10% 0 15%; }
    #certification .sec06.bg_b {
      margin-bottom: 15%;
      padding: 10% 0; }
    #certification .sec06__inner {
      max-width: 90%;
      padding: 0; }
      #certification .sec06__inner h3 {
        font-size: 30px; }
      #certification .sec06__inner .h3_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #certification .sec06__inner .read {
        margin-bottom: 8%; }
      #certification .sec06__inner--box {
        padding: 5% 5% 1%; }
        #certification .sec06__inner--box dl {
          margin-bottom: 10%;
          padding-bottom: 5%; }
          #certification .sec06__inner--box dl dt {
            border-bottom: 1.5px solid #012063;
            margin-bottom: 4%;
            padding-left: 50px;
            padding-bottom: 2%;
            font-size: 16px;
            line-height: 1.6; }
            #certification .sec06__inner--box dl dt:before {
              top: 15px;
              left: 0;
              font-size: 24px; }
          #certification .sec06__inner--box dl dd {
            padding-left: 50px;
            line-height: 1.8; }
            #certification .sec06__inner--box dl dd:before {
              left: 2px;
              font-size: 24px; } }
/* *******************************************
     HACCP責任者養成講座
******************************************* */
#course .sec01 {
  padding: 120px 0 100px; }
  #course .sec01__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #course .sec01__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center; }
      #course .sec01__inner--block figure {
        width: 50vw;
        margin-left: calc(50% - 50vw); }
        #course .sec01__inner--block figure img {
          border-radius: 0 20px 20px 0;
          width: 100%;
          height: auto; }
        #course .sec01__inner--block figure + div {
          width: 43%; }
          #course .sec01__inner--block figure + div h3 {
            margin-bottom: 30px;
            color: #012063;
            font-size: 40px;
            font-weight: bold;
            font-family: 'Noto Serif';
            line-height: 1.4; }
          #course .sec01__inner--block figure + div .txt {
            line-height: 2.2; }

@media (max-width: 640px) {
  #course .sec01 {
    padding: 12% 0 10%; }
    #course .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #course .sec01__inner--block figure {
        order: 2;
        width: 100%;
        margin-left: 0; }
        #course .sec01__inner--block figure img {
          border-radius: 10px; }
        #course .sec01__inner--block figure + div {
          order: 1;
          width: 100%;
          margin-bottom: 8%; }
          #course .sec01__inner--block figure + div h3 {
            margin-bottom: 5%;
            font-size: 30px; }
          #course .sec01__inner--block figure + div .txt {
            line-height: 2.0; } }
#course .sec02 {
  background: #ebeff7;
  padding: 100px 0; }
  #course .sec02__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #course .sec02__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center; }
      #course .sec02__inner--block figure {
        order: 2;
        width: 43vw;
        margin-right: calc(50% - 50vw); }
        #course .sec02__inner--block figure img {
          border-radius: 20px 0 0 20px;
          width: 100%;
          height: auto; }
        #course .sec02__inner--block figure + div {
          order: 1;
          width: 53%; }
          #course .sec02__inner--block figure + div h3 {
            margin-bottom: 20px;
            font-size: 40px;
            line-height: 1.4; }
          #course .sec02__inner--block figure + div h4 {
            margin-bottom: 30px;
            color: #012063;
            font-size: 24px; }
          #course .sec02__inner--block figure + div .txt {
            line-height: 2.0; }

@media (max-width: 640px) {
  #course .sec02 {
    padding: 10% 0; }
    #course .sec02__inner {
      max-width: 90%;
      padding: 0; }
      #course .sec02__inner--block figure {
        order: 2;
        width: 100%;
        margin-right: 0; }
        #course .sec02__inner--block figure img {
          border-radius: 10px; }
        #course .sec02__inner--block figure + div {
          order: 1;
          width: 100%;
          margin-bottom: 8%; }
          #course .sec02__inner--block figure + div h3 {
            margin-bottom: 5%;
            font-size: 30px; }
          #course .sec02__inner--block figure + div h4 {
            margin-bottom: 5%;
            font-size: 18px; } }
#course .sec03 {
  padding: 100px 0; }
  #course .sec03__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #course .sec03__inner h3 {
      margin-bottom: 30px;
      text-align: center;
      font-size: 40px; }
    #course .sec03__inner .read {
      margin-bottom: 30px;
      line-height: 1.8; }
    #course .sec03__inner ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #course .sec03__inner ul li {
        border-radius: 10px;
        border: 1.5px solid #012063;
        padding: 25px 0 15px;
        text-align: center; }
        #course .sec03__inner ul li:nth-child(-n+4) {
          width: 23.8%;
          margin-bottom: 15px; }
        #course .sec03__inner ul li:nth-child(n+5) {
          width: 32.2%; }
        #course .sec03__inner ul li:nth-child(2) h4, #course .sec03__inner ul li:nth-child(3) h4, #course .sec03__inner ul li:nth-child(4) h4 {
          padding-top: 10px; }
        #course .sec03__inner ul li figure {
          width: 136px;
          margin: 0 auto 5px; }
          #course .sec03__inner ul li figure img {
            width: 100%;
            height: auto; }
        #course .sec03__inner ul li h4 {
          color: #012063;
          font-size: 18px;
          line-height: 1.4; }

@media (max-width: 640px) {
  #course .sec03 {
    padding: 10% 0; }
    #course .sec03__inner {
      max-width: 90%;
      padding: 0; }
      #course .sec03__inner h3 {
        margin-bottom: 5%;
        font-size: 30px;
        line-height: 1.4; }
      #course .sec03__inner .read {
        margin-bottom: 5%; }
      #course .sec03__inner ul li {
        padding: 5% 3% 3%;
        margin-bottom: 3%; }
        #course .sec03__inner ul li:nth-child(-n+4) {
          width: 42%;
          margin-bottom: 3%; }
        #course .sec03__inner ul li:nth-child(n+5) {
          width: 42%; }
        #course .sec03__inner ul li:nth-child(2) h4, #course .sec03__inner ul li:nth-child(3) h4, #course .sec03__inner ul li:nth-child(4) h4 {
          padding-top: 0; }
        #course .sec03__inner ul li:last-child {
          margin-left: 25%;
          margin-bottom: 0; }
        #course .sec03__inner ul li figure {
          width: 40%;
          margin: 0 auto 2%; }
        #course .sec03__inner ul li h4 {
          font-size: 16px; } }
#course .sec04 {
  background: #ebeff7;
  padding: 100px 0; }
  #course .sec04__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #course .sec04__inner h3 {
      font-size: 40px; }
    #course .sec04__inner .h3_en {
      margin-bottom: 40px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #course .sec04__inner .h3_en span {
        color: #006faf; }
    #course .sec04__inner .read {
      margin-bottom: 40px;
      line-height: 1.8; }
    #course .sec04__inner ul {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #course .sec04__inner ul li {
        border-radius: 10px;
        background: #fff;
        width: 28.8%;
        margin-bottom: 8px;
        padding: 20px 2% 30px; }
        #course .sec04__inner ul li h4 {
          margin-bottom: 10px;
          color: #012063;
          font-size: 19px; }
          #course .sec04__inner ul li h4 span {
            display: inline-block;
            border-radius: 50%;
            background: #012063;
            width: 30px;
            height: 30px;
            margin-right: 5px;
            text-align: center;
            color: #fff;
            line-height: 1.4;
            font-size: 20px; }
        #course .sec04__inner ul li figure {
          width: 136px;
          margin: 0 auto 15px; }
          #course .sec04__inner ul li figure img {
            width: 100%;
            height: auto; }

@media (max-width: 640px) {
  #course .sec04 {
    padding: 10% 0; }
    #course .sec04__inner {
      max-width: 90%;
      padding: 0; }
      #course .sec04__inner h3 {
        font-size: 30px; }
      #course .sec04__inner .h3_en {
        margin-bottom: 5%;
        font-size: 16px; }
      #course .sec04__inner .read {
        margin-bottom: 5%; }
      #course .sec04__inner ul li {
        width: 90%;
        margin-bottom: 3%;
        padding: 5% 5% 3%; }
        #course .sec04__inner ul li h4 {
          margin-bottom: 2%;
          font-size: 16px; }
          #course .sec04__inner ul li h4 span {
            width: 24px;
            height: 24px;
            margin-right: 5px;
            font-size: 16px; }
        #course .sec04__inner ul li figure {
          width: 40%;
          margin: 0 auto 2%; } }
#course .sec05 {
  background: url("../img/course/bg_course.jpg") no-repeat center center/cover;
  padding: 120px 0; }
  #course .sec05__inner {
    max-width: 890px;
    margin: 0 auto;
    padding: 0 20px; }
    #course .sec05__inner--box {
      border: 1.5px solid #012063;
      background: #fff;
      padding: 50px 100px; }
      #course .sec05__inner--box h3 {
        margin-bottom: 20px;
        text-align: center;
        color: #012063;
        font-size: 32px; }
      #course .sec05__inner--box .txt {
        margin-bottom: 20px; }
      #course .sec05__inner--box .btn {
        width: 280px;
        margin: 0 auto; }
        #course .sec05__inner--box .btn a {
          display: block;
          border-radius: 8px;
          background: #006faf;
          padding: 18px 0;
          text-align: center;
          color: #fff;
          font-weight: bold;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          #course .sec05__inner--box .btn a span {
            padding-left: 28px;
            position: relative; }
            #course .sec05__inner--box .btn a span:before {
              content: "";
              position: absolute;
              top: 50%;
              left: 0;
              background: url("../img/common/icon_mail.png") no-repeat center center/cover;
              width: 20px;
              height: 15px;
              transform: translateY(-50%); }
          #course .sec05__inner--box .btn a:hover {
            background: #2990cb;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }

@media (max-width: 640px) {
  #course .sec05 {
    padding: 12% 0; }
    #course .sec05__inner {
      max-width: 90%;
      padding: 0; }
      #course .sec05__inner--box {
        padding: 5% 5%; }
        #course .sec05__inner--box h3 {
          margin-bottom: 4%;
          font-size: 24px;
          line-height: 1.4; }
        #course .sec05__inner--box .txt {
          margin-bottom: 5%; }
        #course .sec05__inner--box .btn {
          width: 80%; }
          #course .sec05__inner--box .btn a {
            padding: 15px 0; }
            #course .sec05__inner--box .btn a:hover {
              background: #006faf; } }
#course .sec06 {
  padding: 100px 0 150px; }
  #course .sec06__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #course .sec06__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between; }
      #course .sec06__inner--block figure {
        order: 2;
        width: 22%;
        padding: 0 8%; }
        #course .sec06__inner--block figure img {
          border: 1px solid #ddd;
          width: 100%;
          height: auto; }
        #course .sec06__inner--block figure + div {
          order: 1;
          width: 58%; }
          #course .sec06__inner--block figure + div h3 {
            font-size: 40px; }
          #course .sec06__inner--block figure + div .h3_en {
            margin-bottom: 40px;
            color: #012063;
            font-size: 20px;
            font-family: 'Jost'; }
            #course .sec06__inner--block figure + div .h3_en span {
              color: #006faf; }
          #course .sec06__inner--block figure + div .txt {
            line-height: 1.8; }

@media (max-width: 640px) {
  #course .sec06 {
    padding: 10% 0 15%; }
    #course .sec06__inner {
      max-width: 90%;
      padding: 0; }
      #course .sec06__inner--block figure {
        width: 50%;
        margin: 0 auto;
        padding: 0; }
        #course .sec06__inner--block figure + div {
          width: 100%;
          margin-bottom: 8%; }
          #course .sec06__inner--block figure + div h3 {
            font-size: 30px; }
          #course .sec06__inner--block figure + div .h3_en {
            margin-bottom: 6%;
            font-size: 16px; } }
/* *******************************************
     実績・事例紹介
******************************************* */
#case .sec01 {
  padding: 120px 0 100px; }
  #case .sec01__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #case .sec01__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center; }
      #case .sec01__inner--block figure {
        width: 50vw;
        margin-left: calc(50% - 50vw); }
        #case .sec01__inner--block figure img {
          border-radius: 0 20px 20px 0;
          width: 100%;
          height: auto; }
        #case .sec01__inner--block figure + div {
          width: 43%; }
          #case .sec01__inner--block figure + div h3 {
            margin-bottom: 30px;
            color: #012063;
            font-size: 40px;
            font-weight: bold;
            font-family: 'Noto Serif';
            line-height: 1.4; }
          #case .sec01__inner--block figure + div .txt {
            font-size: 16px;
            line-height: 2.2; }

@media (max-width: 640px) {
  #case .sec01 {
    padding: 12% 0 10%; }
    #case .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #case .sec01__inner--block figure {
        order: 2;
        width: 100%;
        margin-left: 0; }
        #case .sec01__inner--block figure img {
          border-radius: 10px; }
        #case .sec01__inner--block figure + div {
          order: 1;
          width: 100%;
          margin-bottom: 8%; }
          #case .sec01__inner--block figure + div h3 {
            margin-bottom: 5%;
            font-size: 30px; }
          #case .sec01__inner--block figure + div .txt {
            font-size: 14px;
            line-height: 2.0; } }
#case .sec02 {
  background: #ebeff7;
  padding: 80px 0; }
  #case .sec02.det {
    margin-top: 120px; }
  #case .sec02__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #case .sec02__inner h3 {
      margin-bottom: 20px;
      text-align: center;
      color: #012063;
      font-size: 24px; }
    #case .sec02__inner--block {
      max-width: 760px;
      margin: 0 auto; }
      #case .sec02__inner--block dl dt {
        margin-bottom: 5px;
        color: #012063;
        font-size: 20px;
        font-weight: bold; }
      #case .sec02__inner--block dl dd {
        margin-bottom: 15px; }
        #case .sec02__inner--block dl dd .search {
          display: flex;
          flex-wrap: wrap;
          justify-content: space-between;
          align-items: center; }
          #case .sec02__inner--block dl dd .search input[type=text] {
            border-radius: 5px;
            border: 1.5px solid #ddd;
            background: #fff;
            width: calc(100% - 135px);
            padding: 15px 15px;
            font-size: 16px; }
          #case .sec02__inner--block dl dd .search select {
            border-radius: 5px;
            border: 1.5px solid #ddd;
            background: #fff;
            width: calc(100% - 100px);
            padding: 15px 15px;
            font-size: 16px; }
          #case .sec02__inner--block dl dd .search input[type=submit] {
            border-radius: 5px;
            border: none;
            background: #012063;
            width: 90px;
            padding: 11px 0;
            text-align: center;
            color: #fff;
            font-size: 18px;
            font-weight: bold;
            letter-spacing: 0.1em;
            cursor: pointer;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }
            #case .sec02__inner--block dl dd .search input[type=submit]:hover {
              background: #123785;
              -webkit-transition: 0.3s ease-in-out;
              -moz-transition: 0.3s ease-in-out;
              -o-transition: 0.3s ease-in-out;
              transition: 0.3s ease-in-out; }
        #case .sec02__inner--block dl dd ul {
          display: flex;
          flex-wrap: wrap; }
          #case .sec02__inner--block dl dd ul li {
            border-radius: 5px;
            background: #85aed6;
            margin-right: 5px;
            margin-bottom: 5px;
            padding: 5px 12px;
            color: #fff;
            font-size: 20px; }

@media (max-width: 640px) {
  #case .sec02 {
    padding: 8% 0; }
    #case .sec02.det {
      margin-top: 12%; }
    #case .sec02__inner {
      max-width: 90%;
      padding: 0; }
      #case .sec02__inner h3 {
        margin-bottom: 5%;
        font-size: 18px; }
      #case .sec02__inner--block {
        max-width: 100%; }
        #case .sec02__inner--block dl dt {
          margin-bottom: 2%;
          font-size: 16px; }
        #case .sec02__inner--block dl dd {
          margin-bottom: 4%; }
          #case .sec02__inner--block dl dd .search input[type=text] {
            width: calc(100% - 125px);
            font-size: 14px; }
          #case .sec02__inner--block dl dd .search select {
            width: calc(100% - 90px);
            font-size: 14px; }
          #case .sec02__inner--block dl dd .search input[type=submit] {
            width: 80px;
            font-size: 16px; }
            #case .sec02__inner--block dl dd .search input[type=submit]:hover {
              background: #012063; }
          #case .sec02__inner--block dl dd ul li {
            padding: 5px 10px;
            font-size: 14px; } }
#case .sec03 {
  padding: 70px 0 120px; }
  #case .sec03__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #case .sec03__inner ul.list {
      margin-bottom: 50px; }
      #case .sec03__inner ul.list li {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        border-bottom: 1.5px dashed #012063;
        padding: 30px 0; }
        #case .sec03__inner ul.list li figure {
          width: 25%; }
          #case .sec03__inner ul.list li figure img {
            width: 100%;
            height: auto; }
          #case .sec03__inner ul.list li figure + div {
            width: 70%; }
            #case .sec03__inner ul.list li figure + div .name {
              margin-bottom: 10px;
              color: #012063;
              font-size: 24px;
              font-weight: bold; }
            #case .sec03__inner ul.list li figure + div .cate {
              display: inline-block;
              border-radius: 5px;
              margin-bottom: 10px;
              padding: 2px 10px;
              color: #fff;
              font-size: 14px;
              font-weight: bold; }
              #case .sec03__inner ul.list li figure + div .cate.cate01 {
                background: #ac80ce; }
              #case .sec03__inner ul.list li figure + div .cate.cate02 {
                background: #006faf; }
              #case .sec03__inner ul.list li figure + div .cate.cate03 {
                background: #8ac43f; }
              #case .sec03__inner ul.list li figure + div .cate.cate04 {
                background: #ff8524; }
              #case .sec03__inner ul.list li figure + div .cate.cate05 {
                background: #00a79b; }
              #case .sec03__inner ul.list li figure + div .cate.cate06 {
                background: #00c2ee; }
              #case .sec03__inner ul.list li figure + div .cate.cate07 {
                background: #ff8387; }
            #case .sec03__inner ul.list li figure + div .txt {
              margin-bottom: 12px;
              line-height: 1.8; }
            #case .sec03__inner ul.list li figure + div .btn {
              width: 150px; }
              #case .sec03__inner ul.list li figure + div .btn a {
                display: block;
                border-radius: 10px;
                background: #85aed6;
                padding: 10px 0;
                text-align: center;
                color: #fff;
                font-weight: bold;
                -webkit-transition: 0.3s ease-in-out;
                -moz-transition: 0.3s ease-in-out;
                -o-transition: 0.3s ease-in-out;
                transition: 0.3s ease-in-out; }
                #case .sec03__inner ul.list li figure + div .btn a:hover {
                  background: #a8c8e7;
                  text-decoration: none;
                  -moz-transition: .5s;
                  -webkit-transition: .5s;
                  -o-transition: .5s;
                  -ms-transition: .5s;
                  transition: .5s; }
    #case .sec03__inner .pager ul.pageNav {
      display: flex;
      flex-wrap: wrap;
      justify-content: center; }
      #case .sec03__inner .pager ul.pageNav li {
        margin: 0 4px; }
        #case .sec03__inner .pager ul.pageNav li.current span {
          display: block;
          background: #012063;
          width: 30px;
          height: 28px;
          padding-top: 2px;
          text-align: center;
          color: #fff; }
        #case .sec03__inner .pager ul.pageNav li.prev a {
          background: none;
          display: inline-block;
          vertical-align: middle;
          line-height: 1;
          border: 0.1em solid currentColor;
          border-left: 0;
          border-bottom: 0;
          width: 0.6em;
          height: 0.6em;
          box-sizing: border-box;
          margin-right: 10px;
          padding-top: 0;
          color: #333;
          transform: translateY(5%) rotate(225deg); }
          #case .sec03__inner .pager ul.pageNav li.prev a:hover {
            background: none;
            color: #999; }
        #case .sec03__inner .pager ul.pageNav li.next a {
          background: none;
          display: inline-block;
          vertical-align: middle;
          line-height: 1;
          border: 0.1em solid currentColor;
          border-left: 0;
          border-bottom: 0;
          width: 0.6em;
          height: 0.6em;
          box-sizing: border-box;
          margin-left: 10px;
          padding-top: 0;
          color: #333;
          transform: translateY(5%) rotate(45deg); }
          #case .sec03__inner .pager ul.pageNav li.next a:hover {
            background: none;
            color: #999; }
        #case .sec03__inner .pager ul.pageNav li a {
          display: block;
          background: #ddd;
          width: 30px;
          height: 28px;
          padding-top: 2px;
          text-align: center;
          color: #fff;
          font-weight: bold;
          text-decoration: none;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          #case .sec03__inner .pager ul.pageNav li a:hover {
            background: #012063;
            color: #fff;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }
    #case .sec03__inner--detail .profile {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      margin-bottom: 40px; }
      #case .sec03__inner--detail .profile figure {
        width: 35%; }
        #case .sec03__inner--detail .profile figure img {
          width: 100%;
          height: auto; }
        #case .sec03__inner--detail .profile figure + div {
          width: 60%; }
          #case .sec03__inner--detail .profile figure + div .name {
            margin-bottom: 5px;
            font-size: 32px;
            font-weight: bold; }
          #case .sec03__inner--detail .profile figure + div .cate {
            display: inline-block;
            border-radius: 5px;
            margin-bottom: 10px;
            padding: 2px 10px;
            color: #fff;
            font-size: 18px;
            font-weight: bold; }
            #case .sec03__inner--detail .profile figure + div .cate.cate01 {
              background: #ac80ce; }
            #case .sec03__inner--detail .profile figure + div .cate.cate02 {
              background: #006faf; }
            #case .sec03__inner--detail .profile figure + div .cate.cate03 {
              background: #8ac43f; }
            #case .sec03__inner--detail .profile figure + div .cate.cate04 {
              background: #ff8524; }
            #case .sec03__inner--detail .profile figure + div .cate.cate05 {
              background: #00a79b; }
            #case .sec03__inner--detail .profile figure + div .cate.cate06 {
              background: #00c2ee; }
            #case .sec03__inner--detail .profile figure + div .cate.cate07 {
              background: #ff8387; }
          #case .sec03__inner--detail .profile figure + div .txt {
            line-height: 1.8; }
    #case .sec03__inner--detail .results {
      border-radius: 10px;
      border: 1.5px solid #012063;
      box-shadow: 5px 5px 0px 0px #012063;
      margin: 0 10px 50px;
      padding: 50px 50px 40px; }
      #case .sec03__inner--detail .results h3 {
        margin-bottom: 40px;
        color: #012063;
        font-size: 30px; }
        #case .sec03__inner--detail .results h3 span {
          padding-right: 50px;
          position: relative; }
          #case .sec03__inner--detail .results h3 span:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            background: #012063;
            width: 36px;
            height: 2px; }
      #case .sec03__inner--detail .results dl dt {
        margin-bottom: 5px;
        color: #012063;
        font-size: 20px;
        font-weight: bold; }
      #case .sec03__inner--detail .results dl dd {
        margin-bottom: 30px;
        line-height: 1.8; }
    #case .sec03__inner--detail .interview {
      margin: 0 50px; }
      #case .sec03__inner--detail .interview h3 {
        margin-bottom: 40px;
        color: #012063;
        font-size: 36px;
        font-family: 'Jost';
        font-weight: normal; }
        #case .sec03__inner--detail .interview h3 span {
          padding-right: 50px;
          position: relative; }
          #case .sec03__inner--detail .interview h3 span:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 0;
            background: #012063;
            width: 36px;
            height: 2px; }
      #case .sec03__inner--detail .interview dl {
        border-bottom: 1.5px dashed #b7b8b8;
        margin-bottom: 55px;
        padding-bottom: 30px; }
        #case .sec03__inner--detail .interview dl.lst {
          border-bottom: none;
          margin-bottom: 0;
          padding-bottom: 0; }
        #case .sec03__inner--detail .interview dl dt {
          border-bottom: 2px solid #012063;
          margin-bottom: 15px;
          padding-left: 55px;
          padding-bottom: 7px;
          color: #012063;
          font-size: 20px;
          font-weight: bold;
          line-height: 1.8;
          position: relative; }
          #case .sec03__inner--detail .interview dl dt:before {
            position: absolute;
            top: 40%;
            left: 0;
            color: #012063;
            font-size: 28px;
            font-weight: normal;
            font-family: 'Jost';
            line-height: 1.0;
            transform: translateY(-50%); }
        #case .sec03__inner--detail .interview dl dd {
          padding-left: 55px;
          line-height: 1.8;
          position: relative; }
          #case .sec03__inner--detail .interview dl dd:before {
            position: absolute;
            top: 0;
            left: 2px;
            color: #9fa0a0;
            font-size: 28px;
            font-weight: normal;
            font-family: 'Jost';
            line-height: 1.0; }
        #case .sec03__inner--detail .interview dl.q1 dt:before {
          content: "Q1"; }
        #case .sec03__inner--detail .interview dl.q1 dd:before {
          content: "A1"; }
        #case .sec03__inner--detail .interview dl.q2 dt:before {
          content: "Q2"; }
        #case .sec03__inner--detail .interview dl.q2 dd:before {
          content: "A2"; }
        #case .sec03__inner--detail .interview dl.q3 dt:before {
          content: "Q3"; }
        #case .sec03__inner--detail .interview dl.q3 dd:before {
          content: "A3"; }
        #case .sec03__inner--detail .interview dl.q4 dt:before {
          content: "Q4"; }
        #case .sec03__inner--detail .interview dl.q4 dd:before {
          content: "A4"; }
        #case .sec03__inner--detail .interview dl.q5 dt:before {
          content: "Q5"; }
        #case .sec03__inner--detail .interview dl.q5 dd:before {
          content: "A5"; }
        #case .sec03__inner--detail .interview dl.q6 dt:before {
          content: "Q6"; }
        #case .sec03__inner--detail .interview dl.q6 dd:before {
          content: "A6"; }
        #case .sec03__inner--detail .interview dl.q7 dt:before {
          content: "Q7"; }
        #case .sec03__inner--detail .interview dl.q7 dd:before {
          content: "A7"; }
        #case .sec03__inner--detail .interview dl.q8 dt:before {
          content: "Q8"; }
        #case .sec03__inner--detail .interview dl.q8 dd:before {
          content: "A8"; }
        #case .sec03__inner--detail .interview dl.q9 dt:before {
          content: "Q9"; }
        #case .sec03__inner--detail .interview dl.q9 dd:before {
          content: "A9"; }
        #case .sec03__inner--detail .interview dl.q10 dt {
          padding-left: 65px; }
          #case .sec03__inner--detail .interview dl.q10 dt:before {
            content: "Q10"; }
        #case .sec03__inner--detail .interview dl.q10 dd {
          padding-left: 65px; }
          #case .sec03__inner--detail .interview dl.q10 dd:before {
            content: "A10"; }

@media (max-width: 640px) {
  #case .sec03 {
    padding: 8% 0 12%; }
    #case .sec03__inner {
      max-width: 90%;
      padding: 0; }
      #case .sec03__inner ul.list {
        margin-bottom: 8%; }
        #case .sec03__inner ul.list li {
          padding: 5% 0; }
          #case .sec03__inner ul.list li figure {
            width: 100%;
            margin-bottom: 5%; }
            #case .sec03__inner ul.list li figure + div {
              width: 100%; }
              #case .sec03__inner ul.list li figure + div .name {
                margin-bottom: 2%;
                font-size: 18px; }
              #case .sec03__inner ul.list li figure + div .cate {
                margin-bottom: 3%;
                padding: 2px 10px;
                font-size: 13px;
                letter-spacing: 0.05em; }
              #case .sec03__inner ul.list li figure + div .txt {
                margin-bottom: 3%; }
              #case .sec03__inner ul.list li figure + div .btn {
                width: 150px; }
                #case .sec03__inner ul.list li figure + div .btn a {
                  background: #85aed6;
                  padding: 8px 0; }
                  #case .sec03__inner ul.list li figure + div .btn a:hover {
                    background: #85aed6; }
      #case .sec03__inner .pager ul.pageNav li {
        margin: 0 4px; }
        #case .sec03__inner .pager ul.pageNav li.current span {
          width: 30px;
          height: 27px;
          padding-top: 3px; }
        #case .sec03__inner .pager ul.pageNav li.prev a:hover {
          color: #333; }
        #case .sec03__inner .pager ul.pageNav li.next a:hover {
          color: #333; }
        #case .sec03__inner .pager ul.pageNav li a {
          width: 30px;
          height: 27px;
          padding-top: 3px; }
          #case .sec03__inner .pager ul.pageNav li a:hover {
            background: #ddd; }
      #case .sec03__inner--detail .profile {
        margin-bottom: 8%; }
        #case .sec03__inner--detail .profile figure {
          width: 100%;
          margin-bottom: 4%; }
          #case .sec03__inner--detail .profile figure + div {
            width: 100%; }
            #case .sec03__inner--detail .profile figure + div .name {
              margin-bottom: 2%;
              font-size: 24px; }
            #case .sec03__inner--detail .profile figure + div .cate {
              margin-bottom: 3%;
              padding: 2px 10px;
              font-size: 14px; }
      #case .sec03__inner--detail .results {
        box-shadow: 3px 3px 0px 0px #012063;
        margin: 0 0 8%;
        padding: 5% 5% 2%; }
        #case .sec03__inner--detail .results h3 {
          margin-bottom: 6%;
          font-size: 24px; }
        #case .sec03__inner--detail .results dl dt {
          margin-bottom: 1%;
          font-size: 16px; }
        #case .sec03__inner--detail .results dl dd {
          margin-bottom: 8%;
          line-height: 1.8; }
      #case .sec03__inner--detail .interview {
        margin: 0; }
        #case .sec03__inner--detail .interview h3 {
          margin-bottom: 6%;
          font-size: 30px; }
        #case .sec03__inner--detail .interview dl {
          margin-bottom: 10%;
          padding-bottom: 5%; }
          #case .sec03__inner--detail .interview dl dt {
            border-bottom: 1.5px solid #012063;
            margin-bottom: 4%;
            padding-left: 50px;
            padding-bottom: 2%;
            font-size: 16px;
            line-height: 1.6; }
            #case .sec03__inner--detail .interview dl dt:before {
              top: 15px;
              font-size: 24px; }
          #case .sec03__inner--detail .interview dl dd {
            padding-left: 50px; }
            #case .sec03__inner--detail .interview dl dd:before {
              left: 2px;
              font-size: 24px; } }
#case .sec04 {
  background: #ebeff7;
  padding: 100px 0; }
  #case .sec04__inner {
    max-width: 1060px;
    margin: 0 auto;
    padding: 0 20px; }
    #case .sec04__inner h3 {
      margin-bottom: 20px;
      color: #012063;
      font-size: 30px; }
      #case .sec04__inner h3 span {
        padding-right: 50px;
        position: relative; }
        #case .sec04__inner h3 span:after {
          content: "";
          position: absolute;
          top: 50%;
          right: 0;
          background: #012063;
          width: 36px;
          height: 2px; }
    #case .sec04__inner .name {
      margin-bottom: 15px;
      font-size: 24px;
      font-weight: bold; }
    #case .sec04__inner .txt {
      margin-bottom: 25px;
      line-height: 1.8; }
    #case .sec04__inner dl {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      border-bottom: 1.5px dashed #012063;
      max-width: 760px;
      width: 100%;
      padding: 5px 0; }
      #case .sec04__inner dl.fst {
        border-top: 1.5px dashed #012063; }
      #case .sec04__inner dl dt {
        width: 185px;
        padding-left: 5px; }
      #case .sec04__inner dl dd {
        width: calc(100% - 190px); }

@media (max-width: 640px) {
  #case .sec04 {
    padding: 10% 0; }
    #case .sec04__inner {
      max-width: 90%;
      padding: 0; }
      #case .sec04__inner h3 {
        margin-bottom: 5%;
        font-size: 24px; }
      #case .sec04__inner .name {
        margin-bottom: 3%;
        font-size: 18px; }
      #case .sec04__inner .txt {
        margin-bottom: 5%; }
      #case .sec04__inner dl {
        max-width: 100%;
        padding: 2% 0; }
        #case .sec04__inner dl dt {
          width: 85px;
          padding-left: 0;
          color: #012063;
          font-weight: bold; }
        #case .sec04__inner dl dd {
          width: calc(100% - 90px);
          overflow-wrap: anywhere; } }
#case .sec05 {
  padding: 100px 0 120px; }
  #case .sec05__inner {
    max-width: 1060px;
    margin: 0 auto;
    padding: 0 20px; }
    #case .sec05__inner h3 {
      margin-bottom: 25px;
      color: #012063;
      font-size: 30px; }
      #case .sec05__inner h3 span {
        padding-right: 50px;
        position: relative; }
        #case .sec05__inner h3 span:after {
          content: "";
          position: absolute;
          top: 50%;
          right: 0;
          background: #012063;
          width: 36px;
          height: 2px; }
    #case .sec05__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      margin-bottom: 80px; }
      #case .sec05__inner--block figure {
        width: 42%; }
        #case .sec05__inner--block figure img {
          border-radius: 10px;
          width: 100%;
          height: auto; }
        #case .sec05__inner--block figure + div {
          width: 53%; }
          #case .sec05__inner--block figure + div h4 {
            margin-bottom: 20px;
            font-size: 24px; }
          #case .sec05__inner--block figure + div .txt {
            line-height: 2.0; }
    #case .sec05__inner .btn {
      width: 150px;
      margin: 0 auto; }
      #case .sec05__inner .btn a {
        display: block;
        border-radius: 8px;
        border: 1.5px solid #012063;
        padding: 10px 0;
        text-align: center;
        color: #012063;
        font-size: 18px;
        font-weight: bold;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out; }
        #case .sec05__inner .btn a:hover {
          background: #dce5f4;
          text-decoration: none;
          -moz-transition: .5s;
          -webkit-transition: .5s;
          -o-transition: .5s;
          -ms-transition: .5s;
          transition: .5s; }

@media (max-width: 640px) {
  #case .sec05 {
    padding: 10% 0 15%; }
    #case .sec05__inner {
      max-width: 90%;
      padding: 0; }
      #case .sec05__inner h3 {
        margin-bottom: 5%;
        font-size: 24px; }
      #case .sec05__inner--block {
        margin-bottom: 15%; }
        #case .sec05__inner--block figure {
          width: 100%;
          margin-bottom: 5%; }
          #case .sec05__inner--block figure + div {
            width: 100%; }
            #case .sec05__inner--block figure + div h4 {
              margin-bottom: 4%;
              font-size: 18px; }
      #case .sec05__inner .btn {
        width: 200px; }
        #case .sec05__inner .btn a {
          padding: 10px 0;
          font-size: 16px; }
          #case .sec05__inner .btn a:hover {
            background: #fff; } }
/* *******************************************
     会社案内　-　会社概要
******************************************* */
#outline .sec01 {
  padding: 120px 0; }
  #outline .sec01__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #outline .sec01__inner h3 {
      font-size: 40px; }
    #outline .sec01__inner .h3_en {
      margin-bottom: 50px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #outline .sec01__inner .h3_en span {
        color: #006faf; }
    #outline .sec01__inner--outline {
      border-top: 1px solid #c7d3e3; }
      #outline .sec01__inner--outline dl {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        border-bottom: 1px solid #c7d3e3;
        padding: 40px 10px; }
        #outline .sec01__inner--outline dl dt {
          width: 180px;
          color: #012063;
          font-weight: bold;
          letter-spacing: 0.05em; }
        #outline .sec01__inner--outline dl dd {
          width: calc(100% - 180px);
          letter-spacing: 0.05em; }
          #outline .sec01__inner--outline dl dd a {
            color: #012063;
            text-decoration: underline; }
          #outline .sec01__inner--outline dl dd ul li {
            margin-bottom: 5px; }
            #outline .sec01__inner--outline dl dd ul li:last-child {
              margin-bottom: 0; }

@media (max-width: 640px) {
  #outline .sec01 {
    padding: 10% 0; }
    #outline .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #outline .sec01__inner h3 {
        font-size: 30px; }
      #outline .sec01__inner .h3_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #outline .sec01__inner--outline dl {
        padding: 5% 0; }
        #outline .sec01__inner--outline dl dt {
          width: 100px; }
        #outline .sec01__inner--outline dl dd {
          width: calc(100% - 100px); }
          #outline .sec01__inner--outline dl dd ul li {
            text-indent: -1.0em;
            margin-left: 1.0em;
            margin-bottom: 3%; } }
#outline .sec02 {
  padding: 0 0 100px; }
  #outline .sec02__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #outline .sec02__inner h3 {
      font-size: 40px; }
    #outline .sec02__inner .h3_en {
      margin-bottom: 50px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #outline .sec02__inner .h3_en span {
        color: #006faf; }
    #outline .sec02__inner--office {
      margin-bottom: 30px;
      border-left: 5px solid #012063;
      padding: 5px 0 5px 25px; }
      #outline .sec02__inner--office h4 {
        margin-bottom: 5px;
        color: #012063;
        font-size: 24px;
        letter-spacing: 0.05em; }
    #outline .sec02__inner--map {
      display: flex;
      flex-wrap: wrap;
      align-items: stretch;
      margin-bottom: 70px; }
      #outline .sec02__inner--map figure {
        width: 50%; }
        #outline .sec02__inner--map figure img {
          width: 100%;
          height: auto; }
      #outline .sec02__inner--map .map {
        width: 50%; }
        #outline .sec02__inner--map .map iframe {
          width: 100%;
          height: 100%; }

@media (max-width: 640px) {
  #outline .sec02 {
    padding: 0 0 8%; }
    #outline .sec02__inner {
      max-width: 90%;
      padding: 0; }
      #outline .sec02__inner h3 {
        font-size: 30px; }
      #outline .sec02__inner .h3_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #outline .sec02__inner--office {
        margin-bottom: 5%;
        border-left: 3px solid #012063;
        padding: 5px 0 5px 20px; }
        #outline .sec02__inner--office h4 {
          margin-bottom: 1%;
          font-size: 18px; }
      #outline .sec02__inner--map {
        margin-bottom: 10%; }
        #outline .sec02__inner--map figure {
          width: 100%; }
        #outline .sec02__inner--map .map {
          width: 100%; }
          #outline .sec02__inner--map .map iframe {
            width: 100%;
            height: 280px; } }
/* *******************************************
     会社案内　-　代表者挨拶
******************************************* */
#greeting .sec01 {
  background: url("../img/company/bg_greeting_sec01.jpg") no-repeat center center/cover;
  margin: 120px 0 0;
  padding: 80px 0 100px; }
  #greeting .sec01__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #greeting .sec01__inner--box {
      background: rgba(255, 255, 255, 0.75);
      padding: 50px 50px;
      text-align: center;
      filter: drop-shadow(2px 2px 5px rgba(0, 0, 0, 0.1)); }
      #greeting .sec01__inner--box h3 {
        margin-bottom: 20px;
        text-align: center;
        color: #012063;
        font-size: 40px;
        font-weight: bold;
        font-family: 'Noto Serif'; }
      #greeting .sec01__inner--box .txt01 {
        margin-bottom: 20px;
        color: #012063;
        font-size: 24px;
        font-weight: bold; }
      #greeting .sec01__inner--box .txt02 {
        line-height: 1.8; }

@media (max-width: 640px) {
  #greeting .sec01 {
    margin: 12% 0 0;
    padding: 8% 0 10%; }
    #greeting .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #greeting .sec01__inner--box {
        padding: 5% 5%; }
        #greeting .sec01__inner--box h3 {
          margin-bottom: 5%;
          font-size: 30px;
          line-height: 1.4; }
        #greeting .sec01__inner--box .txt01 {
          margin-bottom: 4%;
          font-size: 18px; }
        #greeting .sec01__inner--box .txt02 {
          line-height: 1.8; } }
#greeting .sec02 {
  margin: 100px 0 150px; }
  #greeting .sec02__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #greeting .sec02__inner--block {
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
      align-items: center;
      margin-bottom: 30px; }
      #greeting .sec02__inner--block figure {
        order: 2;
        width: 30%; }
        #greeting .sec02__inner--block figure img {
          width: 100%;
          height: auto; }
        #greeting .sec02__inner--block figure + div {
          order: 1;
          width: 65%; }
          #greeting .sec02__inner--block figure + div h3 {
            font-size: 40px; }
          #greeting .sec02__inner--block figure + div .h3_en {
            margin-bottom: 50px;
            color: #012063;
            font-size: 20px;
            font-family: 'Jost'; }
            #greeting .sec02__inner--block figure + div .h3_en span {
              color: #006faf; }
          #greeting .sec02__inner--block figure + div .catch {
            color: #012063;
            font-size: 24px;
            font-weight: bold;
            line-height: 1.6; }
    #greeting .sec02__inner .txt {
      margin-bottom: 40px;
      line-height: 2.0; }
    #greeting .sec02__inner .name {
      text-align: right;
      color: #012063;
      font-size: 20px;
      font-family: 'Noto Serif';
      font-weight: bold;
      line-height: 1.4; }
      #greeting .sec02__inner .name span {
        font-size: 30px; }

@media (max-width: 640px) {
  #greeting .sec02 {
    margin: 10% 0 15%; }
    #greeting .sec02__inner {
      max-width: 90%;
      padding: 0; }
      #greeting .sec02__inner--block {
        margin-bottom: 5%; }
        #greeting .sec02__inner--block figure {
          width: 70%;
          margin: 0 auto; }
          #greeting .sec02__inner--block figure + div {
            width: 100%;
            margin-bottom: 5%; }
            #greeting .sec02__inner--block figure + div h3 {
              font-size: 30px; }
            #greeting .sec02__inner--block figure + div .h3_en {
              margin-bottom: 6%;
              font-size: 16px; }
            #greeting .sec02__inner--block figure + div .catch {
              font-size: 18px; }
      #greeting .sec02__inner .txt {
        margin-bottom: 5%; }
      #greeting .sec02__inner .name {
        font-size: 16px; }
        #greeting .sec02__inner .name span {
          font-size: 24px; } }
/* *******************************************
     お問い合わせ
******************************************* */
#contact .sec01 {
  padding: 120px 0; }
  #contact .sec01__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #contact .sec01__inner h3 {
      font-size: 40px; }
    #contact .sec01__inner .h3_en {
      margin-bottom: 50px;
      color: #012063;
      font-size: 20px;
      font-family: 'Jost'; }
      #contact .sec01__inner .h3_en span {
        color: #006faf; }
    #contact .sec01__inner .read {
      margin-bottom: 50px;
      line-height: 1.8;
      letter-spacing: 0.05em; }
    #contact .sec01__inner--form {
      border-top: 1px solid #c7d3e3; }
      #contact .sec01__inner--form dl {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between;
        border-bottom: 1px solid #c7d3e3;
        padding: 25px 10px; }
        #contact .sec01__inner--form dl.single {
          align-items: center; }
        #contact .sec01__inner--form dl dt {
          width: 230px;
          padding-top: 5px;
          color: #012063;
          font-weight: bold;
          position: relative; }
          #contact .sec01__inner--form dl dt.required:after {
            content: '必須';
            position: absolute;
            top: 10px;
            right: 0;
            background: #f00;
            padding: 2px 10px;
            color: #fff;
            font-size: 12px;
            line-height: 1.2; }
        #contact .sec01__inner--form dl dd {
          width: calc(100% - 320px); }
          #contact .sec01__inner--form dl dd input[type=text] {
            border: 1px solid #999;
            padding: 9px 15px;
            font-size: 16px; }
            #contact .sec01__inner--form dl dd input[type=text].size01 {
              width: 70%; }
            #contact .sec01__inner--form dl dd input[type=text].size02 {
              width: 60%; }
            #contact .sec01__inner--form dl dd input[type=text].size03 {
              width: 10%; }
            #contact .sec01__inner--form dl dd input[type=text].size04 {
              width: 15%; }
            #contact .sec01__inner--form dl dd input[type=text].size05 {
              width: 65%; }
          #contact .sec01__inner--form dl dd ul.cb {
            display: flex;
            flex-wrap: wrap; }
            #contact .sec01__inner--form dl dd ul.cb li {
              width: 40%;
              margin: 0 0 10px; }
              #contact .sec01__inner--form dl dd ul.cb li:nth-child(n+5) {
                margin: 0; }
              #contact .sec01__inner--form dl dd ul.cb li input[type=checkbox] {
                display: none; }
              #contact .sec01__inner--form dl dd ul.cb li label {
                display: inline-block;
                font-size: 16px;
                cursor: pointer; }
              #contact .sec01__inner--form dl dd ul.cb li input[type=checkbox] + span {
                padding-left: 2.2em;
                display: inline-block;
                position: relative; }
              #contact .sec01__inner--form dl dd ul.cb li input[type=checkbox] + span::after,
              #contact .sec01__inner--form dl dd ul.cb li input[type=checkbox] + span::before {
                content: '';
                display: block;
                position: absolute;
                border-radius: 3px;
                border: 1px solid #aaa;
                width: 20px;
                height: 20px;
                top: 3px;
                left: 0; }
              #contact .sec01__inner--form dl dd ul.cb li input[type=checkbox] + span::after {
                opacity: 0;
                width: 8px;
                height: 13px;
                transform: rotate(45deg);
                left: 6px;
                border: none;
                border-right: 3.5px solid #012063;
                border-bottom: 3.5px solid #012063; }
              #contact .sec01__inner--form dl dd ul.cb li input[type=checkbox]:checked + span::after {
                opacity: 1; }
          #contact .sec01__inner--form dl dd select {
            border: 1px solid #999;
            width: 32%;
            padding: 9px 15px;
            font-size: 16px; }
          #contact .sec01__inner--form dl dd textarea {
            border: 1px solid #999;
            width: 70%;
            height: 150px;
            padding: 9px 15px;
            font-size: 16px; }
          #contact .sec01__inner--form dl dd input[type=button].search {
            margin-left: 20px;
            padding: 7.5px 20px;
            cursor: pointer; }
          #contact .sec01__inner--form dl dd .name {
            display: flex;
            flex-wrap: wrap; }
            #contact .sec01__inner--form dl dd .name li {
              width: 35%; }
              #contact .sec01__inner--form dl dd .name li:first-child {
                margin-right: 3%; }
              #contact .sec01__inner--form dl dd .name li span {
                display: inline-block;
                width: 40px;
                margin-right: 5px;
                text-align: center; }
          #contact .sec01__inner--form dl dd .add li {
            display: flex;
            flex-wrap: wrap;
            align-items: center;
            margin-bottom: 18px; }
            #contact .sec01__inner--form dl dd .add li:last-child {
              margin-bottom: 0; }
            #contact .sec01__inner--form dl dd .add li .ttl_add {
              width: 10%;
              margin-right: 3%;
              text-align: right; }
            #contact .sec01__inner--form dl dd .add li .in_add {
              width: 87%; }
            #contact .sec01__inner--form dl dd .add li .bar {
              margin: 0 10px; }
          #contact .sec01__inner--form dl dd .sub {
            margin-left: 10px; }
    #contact .sec01__inner--doui {
      margin-bottom: 40px;
      padding-top: 40px;
      text-align: center; }
      #contact .sec01__inner--doui a {
        margin: 0 5px;
        color: #012063;
        text-decoration: underline;
        cursor: pointer; }
        #contact .sec01__inner--doui a:hover {
          text-decoration: underline; }
      #contact .sec01__inner--doui input[type=checkbox] {
        display: none; }
      #contact .sec01__inner--doui label {
        display: inline-block;
        font-size: 16px;
        cursor: pointer; }
      #contact .sec01__inner--doui input[type=checkbox] + span {
        padding-left: 2.2em;
        display: inline-block;
        position: relative; }
      #contact .sec01__inner--doui input[type=checkbox] + span::after,
      #contact .sec01__inner--doui input[type=checkbox] + span::before {
        content: '';
        display: block;
        position: absolute;
        border-radius: 3px;
        border: 1px solid #aaa;
        width: 20px;
        height: 20px;
        top: 3px;
        left: 0; }
      #contact .sec01__inner--doui input[type=checkbox] + span::after {
        opacity: 0;
        width: 8px;
        height: 13px;
        transform: rotate(45deg);
        left: 6px;
        border: none;
        border-right: 3.5px solid #012063;
        border-bottom: 3.5px solid #012063; }
      #contact .sec01__inner--doui input[type=checkbox]:checked + span::after {
        opacity: 1; }
    #contact .sec01__inner .btn_area {
      width: 350px;
      margin: 0 auto; }
      #contact .sec01__inner .btn_area .button {
        display: block;
        border-radius: 10px;
        border: none;
        background: #012063;
        width: 100%;
        padding: 22px 0;
        text-align: center;
        color: #fff;
        font-size: 20px;
        font-weight: bold;
        letter-spacing: 0.1em;
        cursor: pointer;
        -moz-transition: .5s;
        -webkit-transition: .5s;
        -o-transition: .5s;
        -ms-transition: .5s;
        transition: .5s; }
        #contact .sec01__inner .btn_area .button:hover {
          background: #123785;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }

@media (max-width: 640px) {
  #contact .sec01 {
    padding: 12% 0; }
    #contact .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #contact .sec01__inner h3 {
        font-size: 30px; }
      #contact .sec01__inner .h3_en {
        margin-bottom: 6%;
        font-size: 16px; }
      #contact .sec01__inner .read {
        margin-bottom: 8%; }
      #contact .sec01__inner--form {
        border-top: none; }
        #contact .sec01__inner--form dl {
          border-bottom: none;
          padding: 0 0 8%; }
          #contact .sec01__inner--form dl dt {
            background: #d9e2ed;
            width: 100%;
            margin: 0 0 3%;
            padding: 3% 3%; }
            #contact .sec01__inner--form dl dt.required:after {
              position: relative;
              top: 0;
              right: 0;
              display: inline-block;
              margin-left: 5%;
              padding: 2px 10px;
              font-size: 11px;
              line-height: 1.2; }
          #contact .sec01__inner--form dl dd {
            width: 100%; }
            #contact .sec01__inner--form dl dd input[type=text] {
              padding: 10px 3%;
              font-size: 14px; }
              #contact .sec01__inner--form dl dd input[type=text].size01 {
                width: 65%; }
              #contact .sec01__inner--form dl dd input[type=text].size02 {
                width: 93.5%; }
              #contact .sec01__inner--form dl dd input[type=text].size03 {
                width: 13%; }
              #contact .sec01__inner--form dl dd input[type=text].size04 {
                width: 16%; }
              #contact .sec01__inner--form dl dd input[type=text].size05 {
                width: 93.5%; }
            #contact .sec01__inner--form dl dd ul.cb li {
              width: 100%;
              margin: 0 0 3% 2%; }
              #contact .sec01__inner--form dl dd ul.cb li:nth-child(5) {
                margin: 0 0 3% 2%; }
              #contact .sec01__inner--form dl dd ul.cb li:last-child {
                margin: 0 0 0 2%; }
              #contact .sec01__inner--form dl dd ul.cb li label {
                font-size: 14px; }
              #contact .sec01__inner--form dl dd ul.cb li input[type=checkbox] + span::after,
              #contact .sec01__inner--form dl dd ul.cb li input[type=checkbox] + span::before {
                top: 1px; }
            #contact .sec01__inner--form dl dd select {
              width: 45%;
              padding: 10px 3%;
              font-size: 14px; }
            #contact .sec01__inner--form dl dd textarea {
              width: 93.5%;
              height: 120px;
              padding: 10px 3%;
              font-size: 14px; }
            #contact .sec01__inner--form dl dd input[type=button].search {
              margin-left: 5%;
              padding: 5px 10px; }
            #contact .sec01__inner--form dl dd .name li {
              width: 50%; }
              #contact .sec01__inner--form dl dd .name li:first-child {
                margin-right: 0; }
              #contact .sec01__inner--form dl dd .name li span {
                width: 30px;
                margin-right: 5px; }
            #contact .sec01__inner--form dl dd .add li {
              margin-bottom: 3%; }
              #contact .sec01__inner--form dl dd .add li .ttl_add {
                width: 100%;
                margin: 0 0 1%;
                text-align: left; }
              #contact .sec01__inner--form dl dd .add li .in_add {
                width: 100%; }
      #contact .sec01__inner--doui {
        margin-bottom: 8%;
        padding-top: 0; }
        #contact .sec01__inner--doui label {
          font-size: 14px; }
        #contact .sec01__inner--doui input[type=checkbox] + span::after,
        #contact .sec01__inner--doui input[type=checkbox] + span::before {
          top: 1px; }
      #contact .sec01__inner .btn_area {
        width: 90%; }
        #contact .sec01__inner .btn_area .button {
          padding: 4% 0;
          font-size: 16px; }
          #contact .sec01__inner .btn_area .button:hover {
            color: #fff; } }
/* *******************************************
     新着情報
******************************************* */
#news .sec01 {
  padding: 120px 0; }
  #news .sec01__inner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #news .sec01__inner--main {
      width: calc(100% - 350px); }
      #news .sec01__inner--main .news {
        border-top: 1px solid #c7d3e3;
        margin-bottom: 50px; }
        #news .sec01__inner--main .news a {
          display: block;
          border-bottom: 1px solid #c7d3e3;
          padding: 30px 10px;
          position: relative;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          #news .sec01__inner--main .news a:after {
            content: "";
            position: absolute;
            top: 50%;
            right: 10px;
            background: url("../img/common/icon_arw_bl.png") no-repeat center center/cover;
            width: 17px;
            height: 14px;
            transform: translateY(-50%); }
          #news .sec01__inner--main .news a:hover {
            background: #f5f8ff;
            text-decoration: none;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }
          #news .sec01__inner--main .news a dl {
            display: flex;
            flex-wrap: wrap;
            justify-content: space-between;
            align-items: center; }
            #news .sec01__inner--main .news a dl dt {
              display: flex;
              flex-wrap: wrap;
              justify-content: space-between;
              align-items: center;
              width: 220px; }
              #news .sec01__inner--main .news a dl dt .date {
                font-family: 'Jost'; }
              #news .sec01__inner--main .news a dl dt .cate {
                border-radius: 5px;
                border: 1px solid #012063;
                background: #fff;
                width: 110px;
                padding: 3px 0;
                text-align: center;
                color: #012063;
                font-size: 14px; }
            #news .sec01__inner--main .news a dl dd {
              width: calc(100% - 320px);
              margin-right: 50px; }
      #news .sec01__inner--main .pager ul.pageNav {
        display: flex;
        flex-wrap: wrap;
        justify-content: center; }
        #news .sec01__inner--main .pager ul.pageNav li {
          margin: 0 5px; }
          #news .sec01__inner--main .pager ul.pageNav li.current span {
            display: block;
            background: #012063;
            width: 45px;
            height: 35px;
            padding-top: 10px;
            text-align: center;
            color: #fff; }
          #news .sec01__inner--main .pager ul.pageNav li a {
            display: block;
            background: #f0f0f0;
            width: 45px;
            height: 35px;
            padding-top: 10px;
            text-align: center;
            color: #333;
            font-weight: bold;
            text-decoration: none;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
            #news .sec01__inner--main .pager ul.pageNav li a:hover {
              background: #012063;
              color: #fff;
              -moz-transition: .5s;
              -webkit-transition: .5s;
              -o-transition: .5s;
              -ms-transition: .5s;
              transition: .5s; }
      #news .sec01__inner--main .news_d .kiji_head {
        display: flex;
        flex-wrap: wrap;
        border-bottom: 1px solid #c7d3e3;
        margin-bottom: 50px;
        padding-bottom: 10px; }
        #news .sec01__inner--main .news_d .kiji_head .date {
          padding-top: 3px;
          color: #666;
          font-size: 16px;
          font-weight: bold;
          font-family: 'Jost'; }
        #news .sec01__inner--main .news_d .kiji_head .cate {
          border-radius: 5px;
          border: 1px solid #012063;
          background: #fff;
          width: 110px;
          margin-left: 20px;
          padding: 3px 0;
          text-align: center;
          color: #012063;
          font-size: 14px; }
        #news .sec01__inner--main .news_d .kiji_head .title {
          width: 100%;
          padding-top: 15px;
          font-size: 24px;
          font-weight: bold; }
      #news .sec01__inner--main .news_d .kiji_cont {
        border-bottom: 1px solid #c7d3e3;
        margin-bottom: 50px;
        padding-bottom: 80px; }
      #news .sec01__inner--main .news_d .btn_back {
        width: 320px;
        margin: 0 auto; }
        #news .sec01__inner--main .news_d .btn_back a {
          display: block;
          border-radius: 10px;
          background: #012063;
          width: 100%;
          padding: 22px 0;
          text-align: center;
          color: #fff;
          font-size: 16px;
          font-weight: bold;
          -moz-transition: .5s;
          -webkit-transition: .5s;
          -o-transition: .5s;
          -ms-transition: .5s;
          transition: .5s; }
          #news .sec01__inner--main .news_d .btn_back a:hover {
            background: #123785;
            text-decoration: none;
            -webkit-transition: 0.3s ease-in-out;
            -moz-transition: 0.3s ease-in-out;
            -o-transition: 0.3s ease-in-out;
            transition: 0.3s ease-in-out; }
    #news .sec01__inner--side {
      width: 250px; }
      #news .sec01__inner--side h3 {
        border-radius: 5px;
        background: #012063;
        margin-bottom: 10px;
        padding: 10px 20px;
        color: #fff;
        font-size: 16px; }
      #news .sec01__inner--side ul.side_new {
        margin-bottom: 50px; }
        #news .sec01__inner--side ul.side_new li a {
          display: block;
          padding: 5px 0;
          color: #012063;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          #news .sec01__inner--side ul.side_new li a span {
            color: #666;
            font-size: 13px;
            font-weight: bold;
            font-family: 'Jost'; }
          #news .sec01__inner--side ul.side_new li a:hover {
            text-decoration: none;
            color: #006faf;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }
      #news .sec01__inner--side ul.side_archive {
        margin-bottom: 50px; }
        #news .sec01__inner--side ul.side_archive li a {
          display: block;
          margin-left: 10px;
          padding: 5px 0;
          color: #012063;
          -webkit-transition: 0.3s ease-in-out;
          -moz-transition: 0.3s ease-in-out;
          -o-transition: 0.3s ease-in-out;
          transition: 0.3s ease-in-out; }
          #news .sec01__inner--side ul.side_archive li a:hover {
            text-decoration: none;
            color: #006faf;
            -moz-transition: .5s;
            -webkit-transition: .5s;
            -o-transition: .5s;
            -ms-transition: .5s;
            transition: .5s; }
      #news .sec01__inner--side ul.side_cate li a {
        display: block;
        margin-left: 10px;
        padding: 5px 0;
        color: #012063;
        -webkit-transition: 0.3s ease-in-out;
        -moz-transition: 0.3s ease-in-out;
        -o-transition: 0.3s ease-in-out;
        transition: 0.3s ease-in-out; }
        #news .sec01__inner--side ul.side_cate li a:hover {
          text-decoration: none;
          color: #006faf;
          -moz-transition: .5s;
          -webkit-transition: .5s;
          -o-transition: .5s;
          -ms-transition: .5s;
          transition: .5s; }

@media (max-width: 640px) {
  #news .sec01 {
    padding: 10% 0; }
    #news .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #news .sec01__inner--main {
        width: 100%;
        margin-bottom: 12%; }
        #news .sec01__inner--main .news {
          margin-bottom: 10%; }
          #news .sec01__inner--main .news a {
            padding: 4% 3%; }
            #news .sec01__inner--main .news a dl dt {
              justify-content: flex-start;
              width: 100%;
              margin: 0 0 2%; }
              #news .sec01__inner--main .news a dl dt .date {
                margin-right: 4%;
                margin-left: 0;
                font-size: 12px; }
              #news .sec01__inner--main .news a dl dt .cate {
                padding: 2px 0;
                font-size: 11px; }
            #news .sec01__inner--main .news a dl dd {
              width: 100%; }
            #news .sec01__inner--main .news a:hover {
              background: #fff; }
        #news .sec01__inner--main .pager ul.pageNav li {
          margin: 0 4px; }
          #news .sec01__inner--main .pager ul.pageNav li.current span {
            width: 30px;
            height: 28px;
            padding-top: 6px; }
          #news .sec01__inner--main .pager ul.pageNav li a {
            width: 30px;
            height: 28px;
            padding-top: 6px; }
            #news .sec01__inner--main .pager ul.pageNav li a:hover {
              background: #f0f0f0;
              color: #333; }
        #news .sec01__inner--main .news_d .kiji_head {
          margin-bottom: 8%;
          padding-bottom: 4%; }
          #news .sec01__inner--main .news_d .kiji_head .date {
            padding-top: 2px;
            font-size: 14px; }
          #news .sec01__inner--main .news_d .kiji_head .cate {
            margin-left: 4%;
            font-size: 12px; }
          #news .sec01__inner--main .news_d .kiji_head .title {
            font-size: 18px; }
        #news .sec01__inner--main .news_d .kiji_cont {
          margin-bottom: 10%;
          padding-bottom: 10%; }
        #news .sec01__inner--main .news_d .btn_back {
          width: 70%; }
          #news .sec01__inner--main .news_d .btn_back a {
            padding: 5% 0;
            font-size: 14px; }
            #news .sec01__inner--main .news_d .btn_back a:hover {
              color: #fff; }
      #news .sec01__inner--side {
        width: 100%;
        margin-left: 0; }
        #news .sec01__inner--side h3 {
          margin-bottom: 3%;
          padding: 3% 3%;
          font-size: 14px; }
        #news .sec01__inner--side ul.side_new {
          width: 90%;
          margin: 0 auto 8%; }
          #news .sec01__inner--side ul.side_new li a {
            padding: 2% 0; }
            #news .sec01__inner--side ul.side_new li a span {
              font-size: 12px; }
            #news .sec01__inner--side ul.side_new li a:hover {
              color: #012063; }
        #news .sec01__inner--side ul.side_archive {
          display: flex;
          flex-wrap: wrap;
          width: 90%;
          margin: 0 auto 8%; }
          #news .sec01__inner--side ul.side_archive li {
            width: 50%; }
            #news .sec01__inner--side ul.side_archive li a {
              margin-left: 0;
              padding: 3% 0; }
              #news .sec01__inner--side ul.side_archive li a:hover {
                color: #012063; }
        #news .sec01__inner--side ul.side_cate {
          display: flex;
          flex-wrap: wrap;
          width: 90%;
          margin: 0 auto; }
          #news .sec01__inner--side ul.side_cate li {
            width: 50%; }
            #news .sec01__inner--side ul.side_cate li a {
              margin-left: 0;
              padding: 3% 0; }
              #news .sec01__inner--side ul.side_cate li a:hover {
                color: #012063; } }
/* *******************************************
     プライバシーポリシー
******************************************* */
#privacy .sec01 {
  padding: 120px 0; }
  #privacy .sec01__inner {
    max-width: 1160px;
    margin: 0 auto;
    padding: 0 20px; }
    #privacy .sec01__inner .read {
      margin-bottom: 50px;
      line-height: 2.0; }
    #privacy .sec01__inner dl dt {
      border-bottom: 1px solid #012063;
      margin-bottom: 10px;
      padding-bottom: 5px;
      color: #012063;
      font-size: 18px;
      font-weight: bold; }
    #privacy .sec01__inner dl dd {
      margin-bottom: 50px;
      line-height: 2.0; }
      #privacy .sec01__inner dl dd .list {
        margin-top: 10px; }

@media (max-width: 640px) {
  #privacy .sec01 {
    padding: 10% 0; }
    #privacy .sec01__inner {
      max-width: 90%;
      padding: 0; }
      #privacy .sec01__inner .read {
        margin-bottom: 8%; }
      #privacy .sec01__inner dl dt {
        margin-bottom: 3%;
        padding-bottom: 2%;
        font-size: 16px; }
      #privacy .sec01__inner dl dd {
        margin-bottom: 8%; } }
