@charset "UTF-8";
/*====================================================================================================
//////////////////////////////////////////////////////////////////////////////////////////////////////

    version: 1.0
    created: 2017/01/01
    update : -

//////////////////////////////////////////////////////////////////////////////////////////////////////
====================================================================================================*/
@font-face {
  font-family: "icon";
  src: url("../../fonts/icon.woff");
}
.icon-mod_ico_anchor {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e001";
  vertical-align: middle;
}

.icon-mod_ico_arrow {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e002";
  vertical-align: middle;
}

.icon-mod_ico_blank {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e003";
  vertical-align: middle;
}

.icon-mod_ico_check {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e004";
  vertical-align: middle;
}

.icon-mod_ico_error {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e005";
  vertical-align: middle;
}

.icon-mod_ico_facebook {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e006";
  vertical-align: middle;
}

.icon-mod_ico_mail {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e007";
  vertical-align: middle;
}

.icon-mod_ico_pdf {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e008";
  vertical-align: middle;
}

.icon-mod_ico_plus {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e009";
  vertical-align: middle;
}

.icon-mod_ico_twitter {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00a";
  vertical-align: middle;
}

.icon-mod_ico_youtube {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00b";
  vertical-align: middle;
}

/*====================================================================================================

format

====================================================================================================*/
html {
  overflow-y: scroll;
}

body {
  margin: 0;
  padding: 0;
  -webkit-text-size-adjust: 100%;
          text-size-adjust: 100%;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
}

p {
  margin-top: 0;
}

ul,
ol {
  padding-left: 0;
  list-style: none;
  letter-spacing: -0.3em;
}

li {
  letter-spacing: 0;
}

table {
  border-spacing: 0;
  border-collapse: collapse;
}

table th > *:last-child,
table td > *:last-child {
  margin-bottom: 0 !important;
}

hr {
  display: none;
}

img {
  border: none;
  vertical-align: middle;
}

li img {
  vertical-align: middle;
}

button,
input,
select,
textarea {
  vertical-align: middle;
}

button,
input[type=button],
input[type=submit],
input[type=reset] {
  cursor: pointer;
}

button,
input[type=button],
input[type=submit],
input[type=reset],
select {
  -webkit-appearance: none;
          appearance: none;
}

button {
  display: inline-block;
  border: none;
  padding: 0;
  background: none;
}

button::-moz-focus-inner {
  border: none;
  padding: 0;
}

:placeholder-shown {
  color: #DEE1E3;
}

::-webkit-input-placeholder {
  color: #DEE1E3;
}

::-moz-placeholder {
  color: #DEE1E3;
  opacity: 1;
}

:-ms-input-placeholder {
  color: #DEE1E3;
}

em,
address,
small {
  font-style: normal;
}

em {
  font-weight: 700;
}

article,
aside,
dialog,
figure,
footer,
header,
menu,
nav,
section,
mark,
audio,
video,
picture,
source,
main {
  display: block;
  margin: 0;
  border: 0;
  padding: 0;
  outline: 0;
}

fieldset {
  margin: 0;
  border: none;
  padding: 0;
}

/*====================================================================================================

base

====================================================================================================*/
body {
  color: #1A2229;
  font-family: "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", sans-serif;
  -moz-osx-font-smoothing: grayscale;
  -webkit-font-smoothing: antialiased;
}
@media (min-width: 768px) {
  body {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media screen and (max-width: 767px) {
  body {
    font-size: 0.875rem;
    line-height: 1.5;
  }
}

a {
  color: #1A407B;
  text-underline-offset: 2px;
}
@media (min-width: 768px) {
  a {
    text-decoration: underline;
  }
  a:hover {
    text-decoration: none;
  }
  a[href*="tel:"] {
    cursor: text;
    text-decoration: none;
    pointer-events: none;
    color: #1A2229;
  }
  a[href*="tel:"] img {
    cursor: default;
  }
}
button,
input,
select,
textarea {
  font-family: "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", sans-serif;
  color: #1A2229;
}
@media (min-width: 768px) {
  button,
input,
select,
textarea {
    font-size: 1rem;
    line-height: 1.5;
  }
}
@media screen and (max-width: 767px) {
  button,
input,
select,
textarea {
    font-size: 0.875rem;
    line-height: 1.5;
  }
}

#document {
  position: relative;
  overflow: hidden;
  margin: 0 auto;
}
@media (min-width: 768px) {
  #document {
    min-width: 1100px;
  }
}
@media screen and (max-width: 767px) {
  #document {
    min-width: 320px;
  }
}

.loadWindow {
  position: fixed;
  width: 100vw;
  height: 100vh;
  background-color: #ffffff;
  z-index: 9999;
  transition: opacity 0.3s ease;
}
.loadWindow.is_anim {
  opacity: 0;
}

/* Header
--------------------------------------------------------------------------------------------------- */
#gheader {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  z-index: 100;
  -webkit-backdrop-filter: blur(30px) brightness(1.3);
          backdrop-filter: blur(30px) brightness(1.3);
}
@media (min-width: 768px) {
  #gheader {
    padding: 0 40px;
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  #gheader {
    padding: 12px 10px 12px 20px;
  }
}
#gheader .gheaderInner {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
#gheader .gheaderInner .logo {
  position: relative;
  z-index: 101;
  margin: 0;
}
@media (min-width: 768px) {
  #gheader .gheaderInner .logo > a {
    overflow: hidden;
    display: inline-block;
    text-indent: 200%;
    white-space: nowrap;
    line-height: 1;
    background-image: url("../../images/common/mod_img_sprite.png");
    width: 110px;
    height: 38.5px;
    background-position: 0px -62.5px;
    background-size: 270px 141px;
  }
}
@media screen and (max-width: 767px) {
  #gheader .gheaderInner .logo > a {
    overflow: hidden;
    display: inline-block;
    text-indent: 200%;
    white-space: nowrap;
    line-height: 1;
    background-image: url("../../images/common/mod_img_sprite.png");
    width: 100px;
    height: 35px;
    background-position: -170px 0px;
    background-size: 270px 141px;
  }
}
@media (min-width: 768px) {
  #gheader .menu {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  #gheader .menu {
    position: relative;
    z-index: 101;
  }
  #gheader .menu button {
    box-sizing: content-box;
    display: block;
    width: 20px;
    height: 16px;
    position: relative;
    padding: 10px;
    overflow: hidden;
    white-space: nowrap;
    text-indent: 200%;
  }
  #gheader .menu button::before, #gheader .menu button::after {
    display: block;
    height: 2px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: calc(100% - 20px);
    margin: auto;
    background: #1A2229;
  }
  #gheader .menu button::before {
    content: "";
    transition: 0.3s;
  }
  #gheader .menu button > span {
    width: calc(100% - 20px);
    height: 100%;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
  }
  #gheader .menu button > span::before, #gheader .menu button > span::after {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    transition: 0.3s;
  }
  #gheader .menu button > span::before {
    top: 10px;
  }
  #gheader .menu button > span::after {
    bottom: 10px;
  }
  #gheader .menu button span::before, #gheader .menu button span::after {
    height: 2px;
    background: #1A2229;
  }
  #gheader .menu button.is_active::before {
    opacity: 0;
    right: -10px;
  }
  #gheader .menu button.is_active span::before {
    top: 50%;
    margin-top: -2px;
    transform: rotate(45deg);
  }
  #gheader .menu button.is_active span::after {
    bottom: 50%;
    transform: rotate(-45deg);
  }
}
#gheader:not(.home):not(.is_float) {
  background-color: #ffffff;
}
@media (min-width: 768px) {
  #gheader.home:not(.is_float):not(.is_active) {
    -webkit-backdrop-filter: none;
            backdrop-filter: none;
  }
}
@media screen and (max-width: 767px) {
  #gheader.home:not(.is_float) {
    -webkit-backdrop-filter: none;
            backdrop-filter: none;
  }
}
@media (min-width: 768px) {
  #gheader.home:not(.is_float) .logo > a {
    overflow: hidden;
    display: inline-block;
    text-indent: 200%;
    white-space: nowrap;
    line-height: 1;
    background-image: url("../../images/common/mod_img_sprite.png");
    width: 165px;
    height: 57.5px;
    background-position: 0px 0px;
    background-size: 270px 141px;
  }
}
@media screen and (max-width: 767px) {
  #gheader.home:not(.is_float) .logo > a {
    overflow: hidden;
    display: inline-block;
    text-indent: 200%;
    white-space: nowrap;
    line-height: 1;
    background-image: url("../../images/common/mod_img_sprite.png");
    width: 100px;
    height: 35px;
    background-position: 0px -106px;
    background-size: 270px 141px;
  }
}
#gheader.home:not(.is_float) .menu button::before,
#gheader.home:not(.is_float) .menu button span::before,
#gheader.home:not(.is_float) .menu button span::after {
  background: #ffffff;
}
@media (min-width: 768px) {
  #gheader.home:not(.is_float) .primary > li {
    color: #ffffff;
  }
}
@media (min-width: 768px) {
  #gheader.home:not(.is_float) .primary > li > a::before {
    background: #ffffff;
  }
}
@media screen and (max-width: 767px) {
  #gheader.is_active .logo > a {
    overflow: hidden;
    display: inline-block;
    text-indent: 200%;
    white-space: nowrap;
    line-height: 1;
    background-image: url("../../images/common/mod_img_sprite.png");
    width: 100px;
    height: 35px;
    background-position: 0px -106px;
    background-size: 270px 141px;
  }
}
@media screen and (max-width: 767px) {
  #gheader.is_active .menu button {
    box-sizing: content-box;
    display: block;
    width: 20px;
    height: 16px;
    position: relative;
    padding: 10px;
    overflow: hidden;
    white-space: nowrap;
    text-indent: 200%;
  }
  #gheader.is_active .menu button::before, #gheader.is_active .menu button::after {
    display: block;
    height: 2px;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: calc(100% - 20px);
    margin: auto;
    background: #ffffff;
  }
  #gheader.is_active .menu button::before {
    content: "";
    transition: 0.3s;
  }
  #gheader.is_active .menu button > span {
    width: calc(100% - 20px);
    height: 100%;
    display: block;
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    margin: auto;
  }
  #gheader.is_active .menu button > span::before, #gheader.is_active .menu button > span::after {
    content: "";
    display: block;
    width: 100%;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    transition: 0.3s;
  }
  #gheader.is_active .menu button > span::before {
    top: 10px;
  }
  #gheader.is_active .menu button > span::after {
    bottom: 10px;
  }
  #gheader.is_active .menu button span::before, #gheader.is_active .menu button span::after {
    height: 2px;
    background: #ffffff;
  }
  #gheader.is_active .menu button.is_active::before {
    opacity: 0;
    right: -10px;
  }
  #gheader.is_active .menu button.is_active span::before {
    top: 50%;
    margin-top: -2px;
    transform: rotate(45deg);
  }
  #gheader.is_active .menu button.is_active span::after {
    bottom: 50%;
    transform: rotate(-45deg);
  }
}
#gheader.is_float {
  background: rgba(255, 255, 255, 0.8);
}
.win #gheader.home {
  -webkit-backdrop-filter: none;
          backdrop-filter: none;
}
.win #gheader.home.is_float {
  background: #ffffff;
}

/* GlobalNavigation
--------------------------------------------------------------------------------------------------- */
@media screen and (max-width: 767px) {
  #gnav .gnavInner {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 100;
    padding: 80px 20px;
    overflow-y: auto;
    width: 100%;
    height: 100vh;
    background: rgba(26, 64, 123, 0.97);
    box-sizing: border-box;
    transform: translateX(100%);
    transition: transform 0.3s ease;
  }
}
#gnav .gnavInner .primary {
  margin: 0;
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary {
    display: flex;
  }
}
#gnav .gnavInner .primary > li {
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-size: 1rem;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary > li {
    display: flex;
    align-items: center;
    height: 120px;
    font-weight: 400;
    color: #1A2229;
    transition: height 0.3s ease;
  }
}
@media screen and (max-width: 767px) {
  #gnav .gnavInner .primary > li {
    position: relative;
    font-weight: 500;
    color: #ffffff;
    border-bottom: 1px solid rgba(255, 255, 255, 0.1);
  }
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary > li:not(:first-of-type) {
    margin-left: 40px;
  }
}
#gnav .gnavInner .primary > li > a {
  position: relative;
  display: block;
  color: inherit;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  #gnav .gnavInner .primary > li > a {
    padding: 13px 0;
  }
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary > li > a::before {
    position: absolute;
    right: 0;
    bottom: -3px;
    left: 0;
    content: "";
    width: 100%;
    height: 1px;
    background: #1A2229;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
    display: block;
  }
}
@media screen and (max-width: 767px) {
  #gnav .gnavInner .primary > li > a::after {
    position: absolute;
    top: 50%;
    right: 6px;
    content: "";
    transform: translateY(-50%);
    display: inline-block;
    font-family: "icon";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    speak: none;
    text-decoration: none;
    text-transform: none;
    content: "\e002";
    font-size: 10px;
    line-height: 10px;
    vertical-align: middle;
  }
}
#gnav .gnavInner .primary > li.contact > a::after {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e007";
  font-size: 10px;
  line-height: 10px;
  vertical-align: middle;
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary > li.contact > a::after {
    margin-left: 10px;
    transform: translateY(-1px);
  }
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary > li.subnav .secondary {
    position: absolute;
    left: 0;
    right: 0;
    top: 120px;
    padding: 10px 0 15px;
    opacity: 0;
    background: rgba(255, 255, 255, 0.9);
    pointer-events: none;
    transition: opacity 0.3s ease;
  }
}
@media screen and (max-width: 767px) {
  #gnav .gnavInner .primary > li.subnav .secondary {
    padding: 0 0 13px;
    margin-left: 20px;
  }
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary > li.subnav .secondary .secondaryInner {
    margin: 0 auto;
    width: 1100px;
  }
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary > li.subnav .secondary .secondaryInner .list {
    display: flex;
    justify-content: center;
  }
}
@media screen and (max-width: 767px) {
  #gnav .gnavInner .primary > li.subnav .secondary .secondaryInner .list > *:last-child {
    margin-bottom: 0 !important;
  }
}
#gnav .gnavInner .primary > li.subnav .secondary .secondaryInner .list > li {
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary > li.subnav .secondary .secondaryInner .list > li {
    font-size: 1rem;
    color: #1A2229;
    letter-spacing: 0.05em;
    transition: color 0.3s ease;
  }
}
@media screen and (max-width: 767px) {
  #gnav .gnavInner .primary > li.subnav .secondary .secondaryInner .list > li {
    font-size: 0.875rem;
  }
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary > li.subnav .secondary .secondaryInner .list > li:not(:first-of-type) {
    margin-left: 50px;
  }
}
#gnav .gnavInner .primary > li.subnav .secondary .secondaryInner .list > li > a {
  position: relative;
  display: block;
  color: inherit;
  text-decoration: none;
}
@media screen and (max-width: 767px) {
  #gnav .gnavInner .primary > li.subnav .secondary .secondaryInner .list > li > a {
    padding: 5px 0;
  }
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary > li.subnav .secondary .secondaryInner .list > li > a::before {
    position: absolute;
    right: 0;
    bottom: -3px;
    left: 0;
    content: "";
    width: 100%;
    height: 1px;
    background: #1A407B;
    transform: scaleX(0);
    transform-origin: left;
    transition: transform 0.3s ease;
    display: block;
  }
}
@media screen and (max-width: 767px) {
  #gnav .gnavInner .primary > li.subnav .secondary .secondaryInner .list > li > a::after {
    position: absolute;
    top: 50%;
    right: 6px;
    content: "";
    transform: translateY(-50%);
    display: inline-block;
    font-family: "icon";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    speak: none;
    text-decoration: none;
    text-transform: none;
    content: "\e002";
    font-size: 10px;
    line-height: 10px;
    vertical-align: middle;
  }
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary > li.subnav .secondary .secondaryInner .list > li > a:hover {
    color: #1A407B;
  }
}
@media (min-width: 768px) {
  #gnav .gnavInner .primary > li.subnav .secondary .secondaryInner .list > li > a:hover::before {
    transform: scaleX(1);
  }
}
#gnav .gnavInner .primary > li.subnav:hover .secondary {
  opacity: 1;
  pointer-events: auto;
}
#gnav .gnavInner .primary > li.is_current > a::before, #gnav .gnavInner .primary > li:hover > a::before {
  transform: scaleX(1);
}
@media screen and (max-width: 767px) {
  #gnav .gnavInner.is_active {
    transform: translateX(0);
  }
}
@media (min-width: 768px) {
  .is_float #gnav .primary > li {
    height: 62px;
  }
}
@media (min-width: 768px) {
  .is_float #gnav .primary > li.subnav .secondary {
    top: 62px;
  }
}

/* Breadcrumb
--------------------------------------------------------------------------------------------------- */
#breadcrumb {
  order: 3;
  padding: 20px 0;
}
#breadcrumb ol {
  position: relative;
  margin: 0;
}
#breadcrumb ol > li {
  display: inline;
  margin-right: 17px;
  font-size: 0.75rem;
  color: #4C5262;
  text-transform: uppercase;
}
#breadcrumb ol > li:nth-child(n+2)::before {
  margin-right: 17px;
  text-align: center;
  display: inline-block;
  content: ">";
}
#breadcrumb ol > li > a {
  color: inherit;
  text-decoration: none;
}
@media (min-width: 768px) {
  #breadcrumb ol > li > a {
    text-decoration: none;
  }
  #breadcrumb ol > li > a:hover {
    text-decoration: underline;
  }
}
#breadcrumb ol > li > em {
  font-weight: 400;
  color: rgba(171, 183, 193, 0.5);
}
.service #breadcrumb {
  position: relative;
}
.service #breadcrumb::before {
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #EDF0F5;
}
@media (min-width: 1101px) {
  .service #breadcrumb::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  .service #breadcrumb::before {
    left: -20px;
    right: -20px;
  }
}

/* MainContents
--------------------------------------------------------------------------------------------------- */
#container {
  position: relative;
  display: flex;
  flex-direction: column;
  margin: 0 auto;
}
@media (min-width: 768px) {
  #container {
    padding: 120px 0 0;
    width: 1100px;
  }
}
@media screen and (max-width: 767px) {
  #container {
    padding: 60px 20px 0;
  }
}
#container:not([class*=service]):not([class*=plain]) #mainContents::before {
  position: absolute;
  top: 0;
  z-index: -1;
  background: rgba(245, 246, 247, 0.8);
  transform: skewX(30deg);
  display: block;
  content: "";
}
@media (min-width: 768px) {
  #container:not([class*=service]):not([class*=plain]) #mainContents::before {
    right: -60px;
    width: 50px;
    height: 1350px;
  }
}
@media screen and (max-width: 767px) {
  #container:not([class*=service]):not([class*=plain]) #mainContents::before {
    right: -120px;
    width: 26px;
    height: 950px;
  }
}
#container[class*=service] #mainContents {
  margin-bottom: 0;
}
#container[class*=service] #mainContents::before {
  position: absolute;
  right: 0;
  content: "";
  z-index: -1;
  clip-path: polygon(0 0, 100% 0%, 100% 100%);
  background: rgba(20, 41, 75, 0.3);
  display: inline-block;
}
@media (min-width: 768px) {
  #container[class*=service] #mainContents::before {
    top: 120px;
    width: 560px;
    height: 980px;
  }
}
@media (min-width: 1101px) {
  #container[class*=service] #mainContents::before {
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  #container[class*=service] #mainContents::before {
    top: 60px;
    right: -20px;
    width: 245px;
    height: 438px;
  }
}
#container[class*=service-] #mainContents::before {
  background: #F7F9FC;
}

#mainContents {
  order: 1;
}
#mainContents > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  #mainContents {
    margin: 80px 0 160px;
  }
}
@media screen and (max-width: 767px) {
  #mainContents {
    margin: 80px 0 80px;
  }
}

/* SubContents
--------------------------------------------------------------------------------------------------- */
@media (min-width: 768px) {
  #subContents {
    flex-basis: 200px;
  }
}
/* Footer
--------------------------------------------------------------------------------------------------- */
#gfooter {
  margin: 0 auto;
  background: #F5F6F7;
}
@media (min-width: 768px) {
  #gfooter {
    padding: 70px 0;
  }
}
@media screen and (max-width: 767px) {
  #gfooter {
    padding: 50px 20px;
  }
}
#gfooter .gfooterInner {
  margin: 0 auto;
}
@media (min-width: 768px) {
  #gfooter .gfooterInner {
    position: relative;
    display: grid;
    grid-template-columns: 380px 1fr 255px;
    grid-template-rows: min-content 1fr min-content;
    gap: 0px 0px;
    grid-template-areas: "logo sitemap unav";
    width: 1100px;
  }
}
@media (min-width: 768px) {
  #gfooter .gfooterInner .logo {
    grid-area: logo;
  }
}
@media screen and (max-width: 767px) {
  #gfooter .gfooterInner .logo {
    margin-bottom: 30px;
    text-align: center;
  }
}
@media (min-width: 768px) {
  #gfooter .gfooterInner .sitemap {
    grid-area: sitemap;
    gap: 0 50px;
    display: flex;
  }
}
@media screen and (max-width: 767px) {
  #gfooter .gfooterInner .sitemap {
    display: none;
  }
}
#gfooter .gfooterInner .sitemap .column > li {
  margin-bottom: 20px;
  font-size: 0.875rem;
  font-weight: 500;
}
@media (min-width: 768px) {
  #gfooter .gfooterInner .sitemap .column > li > ul {
    margin-top: 12px;
  }
}
@media screen and (max-width: 767px) {
  #gfooter .gfooterInner .sitemap .column > li > ul {
    margin-top: 10px;
  }
}
#gfooter .gfooterInner .sitemap .column > li > ul > li {
  font-size: 0.75rem;
  font-weight: 400;
  color: #1A2229;
}
#gfooter .gfooterInner .sitemap .column > li > ul > li::before {
  display: inline-block;
  content: "-";
}
@media (min-width: 768px) {
  #gfooter .gfooterInner .unav {
    grid-area: unav;
    padding-left: 60px;
    width: 255px;
    border-left: 1px solid #707070;
    box-sizing: border-box;
  }
}
@media (min-width: 768px){
  #gfooter .gfooterInner .logo {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  #gfooter .gfooterInner .sitemap {
    -ms-grid-row: 1;
    -ms-grid-column: 3;
  }
  #gfooter .gfooterInner .unav {
    -ms-grid-row: 1;
    -ms-grid-column: 5;
  }
}
#gfooter .gfooterInner ul {
  margin: 0;
}
#gfooter .gfooterInner ul > *:last-child {
  margin-bottom: 0 !important;
}
#gfooter .gfooterInner ul > li {
  color: #1A2229;
}
@media (min-width: 768px) {
  #gfooter .gfooterInner ul > li {
    margin-bottom: 13px;
    font-size: 0.75rem;
  }
}
@media screen and (max-width: 767px) {
  #gfooter .gfooterInner ul > li {
    margin-bottom: 10px;
    font-size: 0.875rem;
  }
}
#gfooter .gfooterInner ul > li > a {
  color: inherit;
  text-decoration: none;
}
@media (min-width: 768px) {
  #gfooter .gfooterInner ul > li > a {
    transition: color 0.3s ease;
  }
}
@media (min-width: 768px) {
  #gfooter .gfooterInner ul > li > a:hover {
    color: #1A407B;
  }
}
#gfooter .gfooterInner .info > *:last-child {
  margin-bottom: 0 !important;
}
@media screen and (max-width: 767px) {
  #gfooter .gfooterInner .info {
    margin-top: 30px;
  }
}
#gfooter .gfooterInner .info .social {
  display: flex;
  margin-bottom: 4px;
}
@media screen and (max-width: 767px) {
  #gfooter .gfooterInner .info .social {
    justify-content: center;
    margin-bottom: 24px;
  }
}
#gfooter .gfooterInner .info .social li {
  margin-bottom: 0;
}
#gfooter .gfooterInner .info .social li > a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 38px;
  height: 38px;
  color: #1A407B;
  background: #ffffff;
  border-radius: 50%;
}
@media (min-width: 768px) {
  #gfooter .gfooterInner .info .social li > a {
    transition: background 0.3s ease;
  }
}
#gfooter .gfooterInner .info .social li > a span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
@media (min-width: 768px) {
  #gfooter .gfooterInner .info .social li > a:hover {
    color: #ffffff;
    background: #1A407B;
  }
}
#gfooter .gfooterInner .info .social li:not(:first-of-type) {
  margin-left: 15px;
}
#gfooter .gfooterInner .info .social li.facebook > a::before {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e006";
  font-size: 16px;
  line-height: 16px;
  vertical-align: middle;
}
#gfooter .gfooterInner .info .social li.youtube > a::before {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00b";
  font-size: 16px;
  line-height: 16px;
  vertical-align: middle;
}
#gfooter .gfooterInner .info .social li.twitter > a::before {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e00a";
  font-size: 16px;
  line-height: 16px;
  vertical-align: middle;
}
@media screen and (max-width: 767px) {
  #gfooter .gfooterInner .info .copyright {
    text-align: center;
  }
}
#gfooter .gfooterInner .info .copyright small {
  font-size: 0.75rem;
}

/*====================================================================================================

    module

====================================================================================================*/
/* section module
--------------------------------------------------------------------------------------------------- */
.m_section {
  position: relative;
}
.m_section > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_section {
    margin-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  .m_section {
    margin-bottom: 80px;
  }
}
.m_section[class*=_border]::before {
  position: absolute;
  right: 0;
  left: 0;
  content: "";
  z-index: -1;
}
.m_section[class*=_borderTop]::before {
  top: 0;
  border-top: 1px solid;
}
.m_section[class*=_borderBottom]::before {
  bottom: 0;
  border-bottom: 1px solid;
}
@media (min-width: 768px) {
  .m_section[class*=_narrow] {
    margin: 0 auto;
    width: 800px;
  }
}

.m_entry {
  margin: 0 auto 60px;
}
@media (min-width: 768px) {
  .m_entry .m_enHeading {
    margin-left: -150px;
    margin-right: -150px;
    width: 1100px;
  }
}
.m_entry h1:not(.m_enHeading) {
  margin-top: 0;
  letter-spacing: 0.08em;
}
@media (min-width: 768px) {
  .m_entry h1:not(.m_enHeading) {
    margin-bottom: 100px;
    font-size: 3.125rem;
  }
}
@media screen and (max-width: 767px) {
  .m_entry h1:not(.m_enHeading) {
    margin-bottom: 80px;
    font-size: 1.875rem;
  }
}
.m_entry h2 {
  position: relative;
  padding-bottom: 15px;
  border-bottom: 2px solid #ECEEEF;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_entry h2 {
    margin: 60px 0;
    font-size: 1.625rem;
  }
}
@media screen and (max-width: 767px) {
  .m_entry h2 {
    margin: 40px 0;
    font-size: 1.25rem;
  }
}
.m_entry h2::after {
  position: absolute;
  bottom: -2px;
  left: 0;
  content: "";
  border-bottom: 2px solid #1A407B;
}
@media (min-width: 768px) {
  .m_entry h2::after {
    width: 100px;
  }
}
@media screen and (max-width: 767px) {
  .m_entry h2::after {
    width: 40px;
  }
}
.m_entry h3 {
  padding: 15px 20px;
  background: #F5F6F7;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_entry h3 {
    margin: 60px 0;
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  .m_entry h3 {
    margin: 40px 0;
    font-size: 1.125rem;
  }
}
.m_entry h4 {
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_entry h4 {
    margin: 60px 0;
    font-size: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .m_entry h4 {
    margin: 40px 0;
    font-size: 0.875rem;
  }
}
@media (min-width: 768px) {
  .m_entry p {
    font-size: 1rem;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  .m_entry p {
    font-size: 0.875rem;
    line-height: 2;
  }
}
@media (min-width: 768px) {
  .m_entry > p,
.m_entry > div:not([class]) {
    margin: 60px 0;
  }
}
@media screen and (max-width: 767px) {
  .m_entry > p,
.m_entry > div:not([class]) {
    margin: 40px 0;
  }
}
.m_entry a {
  text-decoration: none;
}
@media (min-width: 768px) {
  .m_entry a:hover {
    text-decoration: underline;
  }
}
.m_entry a[target=_blank]::after {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e003";
  font-size: 14px;
  line-height: 14px;
  vertical-align: middle;
  margin: 0 10px 0 5px;
  transform: translateY(-1px);
}
.m_entry a[href*=".pdf"]::after {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e008";
  font-size: 14px;
  line-height: 14px;
  vertical-align: middle;
  margin: 0 10px 0 5px;
  transform: translateY(-1px);
}
@media (min-width: 768px) {
  .m_entry ul:not([class]),
.m_entry ul.wp-block-list,
.m_entry ol:not([class]),
.m_entry ol.wp-block-list {
    margin: 60px 0;
  }
}
@media screen and (max-width: 767px) {
  .m_entry ul:not([class]),
.m_entry ul.wp-block-list,
.m_entry ol:not([class]),
.m_entry ol.wp-block-list {
    margin: 40px 0;
  }
}
.m_entry .mw_wp_form_confirm .m_checkbox {
  display: none;
}
.m_entry .mw_wp_form_confirm .m_select::after {
  content: none;
}
@media (min-width: 768px) {
  .m_entry[class*=_narrow] {
    width: 800px;
  }
}
@media (min-width: 768px) {
  #container:not([class*=service-]) .m_entry {
    width: 800px;
  }
}
@media (min-width: 768px) {
  [class*=service-] .m_entry {
    margin-bottom: 160px;
  }
}
[class*=service-] .m_entry h1 span {
  display: block;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-weight: 500;
  color: #1A407B;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  [class*=service-] .m_entry h1 span {
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 767px) {
  [class*=service-] .m_entry h1 span {
    font-size: 0.875rem;
  }
}
[class*=service-] .m_entry h2 {
  border-bottom: none;
}
[class*=service-] .m_entry h2::after {
  content: none;
}
[class*=service-] .m_entry h3 {
  padding: 0;
  background: transparent;
}
[class*=service-] .m_entry h3 span {
  display: block;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-weight: 500;
  color: #1A407B;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  [class*=service-] .m_entry h3 span {
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  [class*=service-] .m_entry h3 span {
    font-size: 1.125rem;
  }
}
@media (min-width: 768px) {
  [class*=service-] .m_entry h4 {
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  [class*=service-] .m_entry h4 {
    font-size: 1.125rem;
  }
}

/* heading module
--------------------------------------------------------------------------------------------------- */
.m_enHeading {
  font-weight: 500;
  color: #4C5262;
}
@media (min-width: 768px) {
  .m_enHeading {
    margin-bottom: 60px;
    font-size: 0.875rem;
    letter-spacing: 0.08em;
  }
}
@media screen and (max-width: 767px) {
  .m_enHeading {
    margin-bottom: 40px;
    font-size: 0.75rem;
  }
}
.m_enHeading .labelEn {
  display: block;
  margin-bottom: 10px;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  color: #1A407B;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .m_enHeading .labelEn {
    font-size: 4.0625rem;
    line-height: 1;
  }
}
@media screen and (max-width: 767px) {
  .m_enHeading .labelEn {
    font-size: 2.625rem;
    line-height: 1;
  }
}
@media (min-width: 768px) {
  .m_enHeading[class*=_middle] {
    font-size: 1.25rem;
  }
}
@media (min-width: 768px) {
  .m_enHeading[class*=_middle] .labelEn {
    font-size: 5rem;
    line-height: 1;
  }
}
@media screen and (max-width: 767px) {
  .m_enHeading[class*=_middle] .labelEn {
    font-size: 2.5rem;
    line-height: 1;
  }
}
@media (min-width: 768px) {
  .m_enHeading[class*=_large] .labelEn {
    font-size: 5.9375rem;
    line-height: 1;
  }
}
@media screen and (max-width: 767px) {
  .m_enHeading[class*=_large] .labelEn {
    font-size: 3.875rem;
    line-height: 1;
  }
}
.m_enHeading[class*=_colorType04] .labelEn {
  color: #ffffff;
}
.m_enHeading[class*=_relationService]::before {
  position: absolute;
  content: "";
  z-index: -1;
  background: url(/bdx-website/images/common/service/common_heading_ico.png) no-repeat 0 0/cover;
}
@media (min-width: 768px) {
  .m_enHeading[class*=_relationService]::before {
    top: 45px;
    left: -75px;
    width: 234px;
    height: 187px;
  }
}
@media screen and (max-width: 767px) {
  .m_enHeading[class*=_relationService]::before {
    top: 30px;
    left: -65px;
    width: 195px;
    height: 150px;
  }
}
@media (min-width: 768px) {
  .m_enHeading + .m_text[class*=_lead] {
    margin-top: -20px;
  }
}

.m_borderHeading {
  position: relative;
  font-weight: 700;
  border-bottom: 2px solid #ECEEEF;
  letter-spacing: 0.08em;
}
@media (min-width: 768px) {
  .m_borderHeading {
    padding-bottom: 15px;
    margin: 40px 0 60px;
    font-size: 1.625rem;
  }
}
@media screen and (max-width: 767px) {
  .m_borderHeading {
    padding-bottom: 10px;
    margin: 40px 0;
    font-size: 1.25rem;
  }
}
.m_borderHeading::after {
  position: absolute;
  right: 0;
  bottom: -2px;
  left: 0;
  content: "";
  height: 2px;
  background: #1A407B;
}
@media (min-width: 768px) {
  .m_borderHeading::after {
    width: 100px;
  }
}
@media screen and (max-width: 767px) {
  .m_borderHeading::after {
    width: 40px;
  }
}
.m_borderHeading[class*=_small] {
  padding-bottom: 10px;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_borderHeading[class*=_small] {
    margin-bottom: 25px;
    font-size: 1.375rem;
  }
}
@media screen and (max-width: 767px) {
  .m_borderHeading[class*=_small] {
    margin-bottom: 20px;
    font-size: 1.125rem;
  }
}

.m_textHeading {
  margin: 40px 0 20px;
  font-weight: 500;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_textHeading {
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  .m_textHeading {
    font-size: 1.125rem;
  }
}
.m_textHeading .labelEn {
  display: block;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-weight: 500;
  color: #1A407B;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .m_textHeading .labelEn {
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  .m_textHeading .labelEn {
    font-size: 1.125rem;
  }
}
.m_textHeading[class*=_title] {
  margin: 0 0 60px;
}
@media (min-width: 768px) {
  .m_textHeading[class*=_title] {
    font-size: 3.125rem;
  }
}
@media screen and (max-width: 767px) {
  .m_textHeading[class*=_title] {
    font-size: 1.875rem;
  }
}
.m_textHeading[class*=_large] {
  margin: 0 0 60px;
}
@media (min-width: 768px) {
  .m_textHeading[class*=_large] {
    font-size: 1.75rem;
  }
}
@media screen and (max-width: 767px) {
  .m_textHeading[class*=_large] {
    font-size: 1.5rem;
  }
}

.m_entryHeading {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto 60px;
}
.m_entryHeading > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_entryHeading {
    width: 800px;
  }
}
.m_entryHeading .category {
  order: 1;
  margin: 0;
}
.m_entryHeading .category > li {
  display: inline-block;
  padding: 2px;
  margin: 5px 5px 5px 0;
  min-width: 100px;
  font-size: 0.75rem;
  color: #1A407B;
  border: 1px solid #1A407B;
  box-sizing: border-box;
  text-align: center;
}
.m_entryHeading .update {
  order: 2;
  align-self: center;
  font-size: 0.75rem;
  color: #ABB7C1;
}
@media (min-width: 768px) {
  .m_entryHeading .update {
    margin-left: 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_entryHeading .update {
    margin-left: auto;
  }
}
.m_entryHeading .title {
  order: 3;
  width: 100%;
  font-weight: 700;
}
@media (min-width: 768px) {
  .m_entryHeading .title {
    font-size: 1.875rem;
  }
}
@media screen and (max-width: 767px) {
  .m_entryHeading .title {
    font-size: 1.625rem;
  }
}
.m_entryHeading .detail {
  order: 4;
}
@media (min-width: 768px) {
  .m_entryHeading .detail {
    font-size: 1rem;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  .m_entryHeading .detail {
    font-size: 0.875rem;
    line-height: 2;
  }
}

@media (min-width: 768px) {
  .m_serviceHeading {
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceHeading {
    margin-bottom: 50px;
  }
}
@media (min-width: 768px) {
  .m_serviceHeading .title {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceHeading .title {
    margin-top: 20px;
  }
}
.m_serviceHeading .title .english {
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-weight: 500;
  color: #1A407B;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .m_serviceHeading .title .english {
    font-size: 5rem;
    line-height: 1;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceHeading .title .english {
    font-size: 2.5rem;
    line-height: 1;
  }
}
.m_serviceHeading .title .japanese {
  display: block;
  font-weight: 500;
  letter-spacing: 0.08em;
}
@media (min-width: 768px) {
  .m_serviceHeading .title .japanese {
    margin-top: 20px;
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceHeading .title .japanese {
    margin-top: 15px;
    font-size: 0.875rem;
  }
}
.m_serviceHeading .image {
  position: absolute;
  z-index: -1;
}
@media (min-width: 768px) {
  .m_serviceHeading .image {
    top: 120px;
    width: 720px;
  }
}
@media (min-width: 1101px) {
  .m_serviceHeading .image {
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  .m_serviceHeading .image {
    top: 60px;
    right: -20px;
    width: 220px;
  }
}
.m_serviceHeading .image img {
  width: 100%;
}

.m_headingBox {
  position: relative;
}
@media (min-width: 768px) {
  .m_headingBox {
    margin: -80px calc(50% - 50vw) 60px;
  }
}
@media screen and (max-width: 767px) {
  .m_headingBox {
    margin: -60px -20px 40px;
  }
}
.m_headingBox .m_enHeading {
  position: absolute;
  z-index: 2;
  margin-bottom: 0;
}
@media (min-width: 768px) {
  .m_headingBox .m_enHeading {
    bottom: 60px;
    left: calc((100% - 1100px) / 2);
  }
}
@media screen and (max-width: 767px) {
  .m_headingBox .m_enHeading {
    bottom: 15px;
    left: 20px;
  }
}
.m_headingBox .imageWrap .mask {
  position: absolute;
  top: 0;
  right: 0;
}
@media screen and (max-width: 767px) {
  .m_headingBox .imageWrap .mask img {
    width: 100%;
  }
}
.m_headingBox .imageWrap .image {
  margin-left: auto;
}
@media (min-width: 768px) {
  .m_headingBox .imageWrap .image {
    width: 650px;
  }
}
@media screen and (max-width: 767px) {
  .m_headingBox .imageWrap .image {
    width: 210px;
    height: 168px;
  }
}
.m_headingBox .imageWrap .image img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  .m_headingBox .imageWrap .image img {
    height: 100%;
    object-fit: cover;
  }
}

.m_bulletHeading {
  position: relative;
  padding: 1px 0 2px 24px;
}
@media (min-width: 768px) {
  .m_bulletHeading {
    margin: 0 0 18px;
    font-size: 1.25rem;
    line-height: 1.2;
  }
}
@media screen and (max-width: 767px) {
  .m_bulletHeading {
    margin: 0 0 17px;
    font-size: 1.125rem;
    line-height: 1.3333333333;
  }
}
.m_bulletHeading::before {
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 0;
  border-left: 4px solid #1A407B;
}

.m_bgHeading {
  font-size: 1rem;
  font-weight: 500;
  background: #1A407B;
  color: #ffffff;
  text-align: center;
}
@media (min-width: 768px) {
  .m_bgHeading {
    padding: 20px;
    margin-bottom: 40px;
  }
}
@media screen and (max-width: 767px) {
  .m_bgHeading {
    padding: 12px;
    margin-bottom: 20px;
  }
}

.m_numHeading {
  font-weight: 500;
  letter-spacing: 0.02em;
}
@media (min-width: 768px) {
  .m_numHeading {
    margin-block: 30px;
    font-size: 1.75rem;
  }
}
@media screen and (max-width: 767px) {
  .m_numHeading {
    display: flex;
    align-items: center;
    margin-block: 50px 20px;
    font-size: 1.5rem;
  }
}
.m_numHeading::before {
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  color: rgba(26, 64, 123, 0.4);
  display: inline-block;
  content: attr(data-label-num);
}
@media (min-width: 768px) {
  .m_numHeading::before {
    margin-right: 20px;
    font-size: 6rem;
    line-height: 1;
    transform: translateY(3px);
  }
}
@media screen and (max-width: 767px) {
  .m_numHeading::before {
    margin-right: 12px;
    font-size: 4.125rem;
    line-height: 1;
  }
}

/* box module
--------------------------------------------------------------------------------------------------- */
.m_box {
  padding: 20px;
  margin: 0 0 20px;
  background: #F5F6F7;
  box-sizing: border-box;
}
.m_box > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_box {
    margin-left: auto;
    margin-right: auto;
    width: 800px;
  }
}
.m_box[class*=_nobg] {
  padding: 0;
  background-color: transparent;
}

.m_boxList > .item {
  background: #ffffff;
}
.m_boxList > .item > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_boxList > .item {
    padding: 30px;
  }
}
@media screen and (max-width: 767px) {
  .m_boxList > .item {
    padding: 35px 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_boxList > .item:not(:first-of-type) {
    margin-top: 40px;
  }
}
@media (min-width: 768px) {
  .m_boxList[class*=_pcCol] {
    display: flex;
    margin-right: -40px;
  }
}
@media (min-width: 768px) {
  .m_boxList[class*=_pcCol] > .item {
    margin-right: 40px;
  }
}
@media (min-width: 768px) {
  .m_boxList[class*=_pcCol2] {
    display: flex;
  }
}
@media (min-width: 768px) {
  .m_boxList[class*=_pcCol2] > .item {
    width: calc(50% - 40px);
  }
}

.m_media {
  display: grid;
  grid-template-columns: 1fr 1fr;
  grid-template-rows: min-content 1fr;
}
@media screen and (max-width: 767px) {
  .m_media {
    display: flex;
    flex-direction: column;
    margin-bottom: 30px;
  }
}
@media (min-width: 768px) {
  .m_media .heading {
    grid-area: heading;
  }
}
@media screen and (max-width: 767px) {
  .m_media .heading {
    order: 1;
  }
}
.m_media .body > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_media .body {
    grid-area: body;
  }
}
@media screen and (max-width: 767px) {
  .m_media .body {
    order: 3;
  }
}
.m_media .body .title {
  margin-top: 0;
  font-weight: 500;
}
@media (min-width: 768px) {
  .m_media .body .title {
    font-size: 1.75rem;
    letter-spacing: 0.03em;
  }
}
@media screen and (max-width: 767px) {
  .m_media .body .title {
    font-size: 1.5rem;
  }
}
@media (min-width: 768px) {
  .m_media .image {
    grid-area: image;
  }
}
@media screen and (max-width: 767px) {
  .m_media .image {
    order: 2;
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  .m_media .image img {
    width: 100%;
    height: auto;
  }
}
@media (min-width: 768px) {
  .m_media:not([class*=_flipped]) {
    grid-template-areas: "heading image" "body image";
  }
  .m_media .heading {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .m_media .body {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .m_media .image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2;
  }
}
@media (min-width: 768px) {
  .m_media:not([class*=_flipped]) .heading {
    margin-right: 60px;
  }
}
@media (min-width: 768px) {
  .m_media:not([class*=_flipped]) .body {
    margin-right: 60px;
  }
}
@media (min-width: 768px) {
  .m_media[class*=_flipped] {
    grid-template-areas: "image heading" "image body";
  }
  .m_media[class*=_flipped] > .heading {
    -ms-grid-row: 1;
    -ms-grid-column: 2;
  }
  .m_media[class*=_flipped] > .body {
    -ms-grid-row: 2;
    -ms-grid-column: 2;
  }
  .m_media[class*=_flipped] > .image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
  }
}
@media (min-width: 768px) {
  .m_media[class*=_flipped] .heading {
    margin-left: 90px;
  }
}
@media (min-width: 768px) {
  .m_media[class*=_flipped] .body {
    margin-left: 90px;
  }
}

.m_panel > *:last-child {
  margin-bottom: 0 !important;
}
.m_panel .item {
  display: flex;
  background: #F5F6F7;
}
@media (min-width: 768px) {
  .m_panel .item {
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  .m_panel .item {
    flex-direction: column;
    margin-bottom: 40px;
  }
}
.m_panel .item .body {
  order: 2;
}
.m_panel .item .body > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_panel .item .body {
    flex: 1;
    display: flex;
    flex-direction: column;
    padding: 35px 40px;
  }
}
@media screen and (max-width: 767px) {
  .m_panel .item .body {
    padding: 20px 20px 25px;
  }
}
.m_panel .item .body .heading {
  position: relative;
  padding-bottom: 10px;
  margin: 0 0 20px;
  font-weight: 700;
  border-bottom: 2px solid #ECEEEF;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_panel .item .body .heading {
    font-size: 1.375rem;
  }
}
@media screen and (max-width: 767px) {
  .m_panel .item .body .heading {
    font-size: 1.125rem;
  }
}
.m_panel .item .body .heading::after {
  position: absolute;
  right: 0;
  bottom: -2px;
  left: 0;
  content: "";
  width: 100px;
  height: 2px;
  background: #1A407B;
}
.m_panel .item .body .title {
  font-size: 0.75rem;
  font-weight: 500;
  color: rgba(26, 64, 123, 0.6);
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .m_panel .item .body .title {
    margin-top: 25px;
  }
}
.m_panel .item .body .title > span {
  margin-right: 10px;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-weight: 500;
  color: #1A407B;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  .m_panel .item .body .title > span {
    font-size: 1.375rem;
  }
}
@media screen and (max-width: 767px) {
  .m_panel .item .body .title > span {
    font-size: 1.25rem;
  }
}
.m_panel .item .body p:not([class]) {
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_panel .item .body p:not([class]) {
    font-size: 1rem;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  .m_panel .item .body p:not([class]) {
    font-size: 0.875rem;
    line-height: 2;
  }
}
@media (min-width: 768px) {
  .m_panel .item .body .m_textLink {
    margin-top: auto;
  }
}
.m_panel .item .image {
  order: 1;
  overflow: hidden;
}
@media (min-width: 768px) {
  .m_panel .item .image {
    flex-basis: 270px;
    width: 270px;
  }
}
@media screen and (max-width: 767px) {
  .m_panel .item .image > a {
    pointer-events: none;
  }
}
@media (min-width: 768px) {
  .m_panel .item .image > a picture {
    height: 100%;
  }
}
@media (min-width: 768px) {
  .m_panel .item .image > a picture img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: transform 0.3s ease;
  }
}
@media screen and (max-width: 767px) {
  .m_panel .item .image > a picture img {
    width: 100%;
  }
}
@media (min-width: 768px) {
  .m_panel .item .image > a:hover img {
    transform: scale(1.1);
  }
}

@media (min-width: 768px) {
  .m_column {
    margin-top: 60px;
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  .m_column {
    margin-top: 40px;
    margin-bottom: 40px;
  }
}
.m_column .inner {
  display: flex;
  justify-content: space-between;
}
@media (min-width: 768px) {
  .m_column .inner {
    gap: 40px;
  }
}
@media screen and (max-width: 767px) {
  .m_column .inner {
    gap: 25px;
  }
}
.m_column .inner .item {
  flex: 1;
  padding: 25px 20px;
  background: rgba(245, 246, 247, 0.3);
  border: 1px solid #DEE1E3;
  box-sizing: border-box;
}
.m_column .inner .item > *:last-child {
  margin-bottom: 0 !important;
}
.m_column .inner .item .heading {
  margin-bottom: 15px;
  text-align: center;
}
.m_column .inner .item .heading > *:last-child {
  margin-bottom: 0 !important;
}
.m_column .inner .item .heading .title {
  margin-bottom: 5px;
  font-size: 1rem;
  font-weight: 600;
  color: #4C5262;
}
.m_column .inner .item .heading .subTitle {
  font-size: 0.875rem;
  color: #4C5262;
}
.m_column .inner .item .body {
  margin-top: auto;
  border-top: 1px solid #ECEEEF;
}
.m_column .inner .item .body > *:last-child {
  margin-bottom: 0 !important;
}
.m_column .inner .item .body .list > *:last-child {
  margin-bottom: 0 !important;
}
.m_column .inner .item .body .list li {
  position: relative;
  padding-left: 28px;
  margin-bottom: 10px;
  color: #484848;
}
.m_column .inner .item .body .list li::before {
  position: absolute;
  left: 0;
  color: #ABB7C1;
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e004";
  font-size: 10px;
  line-height: 10px;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .m_column .inner .item .body .list li::before {
    top: 0.8em;
  }
}
@media screen and (max-width: 767px) {
  .m_column .inner .item .body .list li::before {
    top: 0.5em;
  }
}
@media screen and (max-width: 767px) {
  .m_column:not([class*=_scrollBar]) .inner {
    flex-direction: column;
  }
}
@media screen and (max-width: 767px) {
  .m_column[class*=_scrollBar] {
    margin-left: -20px;
    margin-right: -20px;
    overflow-x: auto;
  }
}
@media screen and (max-width: 767px) {
  .m_column[class*=_scrollBar] .inner {
    margin-left: 20px;
    margin-right: 20px;
    width: 890px;
  }
}
@media screen and (max-width: 767px) {
  .m_column[class*=_scrollBar] .inner .item {
    flex-shrink: 0;
    flex-basis: 280px;
  }
}

@media (min-width: 768px) {
  .m_columnImage,
.m_entry .wp-block-columns {
    display: flex;
    justify-content: space-between;
    gap: 80px;
    margin: 60px 0;
  }
}
@media screen and (max-width: 767px) {
  .m_columnImage,
.m_entry .wp-block-columns {
    margin: 40px 0;
  }
}
.m_columnImage .column,
.m_columnImage .wp-block-column,
.m_entry .wp-block-columns .column,
.m_entry .wp-block-columns .wp-block-column {
  flex-basis: 100%;
  width: auto;
}
@media screen and (max-width: 767px) {
  .m_columnImage .column,
.m_columnImage .wp-block-column,
.m_entry .wp-block-columns .column,
.m_entry .wp-block-columns .wp-block-column {
    margin-bottom: 25px;
  }
}
.m_columnImage .column .m_liquidImage,
.m_columnImage .column .wp-block-image,
.m_columnImage .wp-block-column .m_liquidImage,
.m_columnImage .wp-block-column .wp-block-image,
.m_entry .wp-block-columns .column .m_liquidImage,
.m_entry .wp-block-columns .column .wp-block-image,
.m_entry .wp-block-columns .wp-block-column .m_liquidImage,
.m_entry .wp-block-columns .wp-block-column .wp-block-image {
  margin: 0;
}
.m_columnImage .column h2, .m_columnImage .column h3, .m_columnImage .column h4,
.m_columnImage .wp-block-column h2,
.m_columnImage .wp-block-column h3,
.m_columnImage .wp-block-column h4,
.m_entry .wp-block-columns .column h2,
.m_entry .wp-block-columns .column h3,
.m_entry .wp-block-columns .column h4,
.m_entry .wp-block-columns .wp-block-column h2,
.m_entry .wp-block-columns .wp-block-column h3,
.m_entry .wp-block-columns .wp-block-column h4 {
  padding: 0;
  margin: 15px 0;
  color: #1A407B;
  text-align: center;
}
@media (min-width: 768px) {
  .m_columnImage .column h2, .m_columnImage .column h3, .m_columnImage .column h4,
.m_columnImage .wp-block-column h2,
.m_columnImage .wp-block-column h3,
.m_columnImage .wp-block-column h4,
.m_entry .wp-block-columns .column h2,
.m_entry .wp-block-columns .column h3,
.m_entry .wp-block-columns .column h4,
.m_entry .wp-block-columns .wp-block-column h2,
.m_entry .wp-block-columns .wp-block-column h3,
.m_entry .wp-block-columns .wp-block-column h4 {
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 767px) {
  .m_columnImage .column h2, .m_columnImage .column h3, .m_columnImage .column h4,
.m_columnImage .wp-block-column h2,
.m_columnImage .wp-block-column h3,
.m_columnImage .wp-block-column h4,
.m_entry .wp-block-columns .column h2,
.m_entry .wp-block-columns .column h3,
.m_entry .wp-block-columns .column h4,
.m_entry .wp-block-columns .wp-block-column h2,
.m_entry .wp-block-columns .wp-block-column h3,
.m_entry .wp-block-columns .wp-block-column h4 {
    font-size: 1rem;
  }
}
.m_columnImage .column p,
.m_columnImage .wp-block-column p,
.m_entry .wp-block-columns .column p,
.m_entry .wp-block-columns .wp-block-column p {
  margin: 10px 0;
}

.m_bgColumns {
  order: 2;
}
@media (min-width: 768px) {
  .m_bgColumns {
    display: flex;
  }
}
@media (min-width: 1101px) {
  .m_bgColumns {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  .m_bgColumns {
    margin-left: -20px;
    margin-right: -20px;
  }
}
.m_bgColumns .item {
  position: relative;
}
.m_bgColumns .item > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_bgColumns .item {
    display: flex;
    flex-direction: column;
    padding: 80px calc((50% - 460px) / 2) 80px;
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .m_bgColumns .item {
    padding: 80px 20px 100px;
  }
}
.m_bgColumns .item .body > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_bgColumns .item .body {
    margin-bottom: 40px;
  }
}
.m_bgColumns .item .body .m_enHeading {
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  .m_bgColumns .item .m_textLink {
    margin-top: auto;
  }
}
.m_bgColumns .item .image {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100%;
}
.m_bgColumns .item .image img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  object-position: 50% 0;
}

@media (min-width: 768px) {
  .m_messageColumn {
    display: grid;
    grid-template-columns: 1fr auto;
    grid-template-rows: min-content min-content;
    grid-template-areas: "body image" "name image";
  }
  .m_messageColumn > .body {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .m_messageColumn > .image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2;
  }
}
@media screen and (max-width: 767px) {
  .m_messageColumn {
    display: flex;
    flex-direction: column;
  }
  .m_messageColumn > *:last-child {
    margin-bottom: 0 !important;
  }
}
.m_messageColumn .body > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_messageColumn .body {
    grid-area: body;
  }
}
@media screen and (max-width: 767px) {
  .m_messageColumn .body {
    order: 1;
  }
}
@media (min-width: 768px) {
  .m_messageColumn .body .text {
    font-size: 1rem;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  .m_messageColumn .body .text {
    font-size: 0.875rem;
    line-height: 2;
  }
}
.m_messageColumn .name {
  font-weight: 700;
}
@media (min-width: 768px) {
  .m_messageColumn .name {
    grid-area: name;
    margin-top: 40px;
    font-size: 1.25rem;
    text-align: right;
  }
}
@media screen and (max-width: 767px) {
  .m_messageColumn .name {
    order: 3;
    margin-top: 20px;
    font-size: 1.125rem;
    text-align: center;
  }
}
.m_messageColumn .name .position {
  font-weight: 400;
}
@media (min-width: 768px) {
  .m_messageColumn .name .position {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 767px) {
  .m_messageColumn .name .position {
    font-size: 0.75rem;
  }
}
@media (min-width: 768px) {
  .m_messageColumn .image {
    grid-area: image;
    margin-left: 40px;
  }
}
@media (min-width: 768px){
  .m_messageColumn .body {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .m_media[class*=_flipped] > .body {
    -ms-grid-row: 2;
    -ms-grid-column: 2;
  }
  .m_messageColumn > .body {
    -ms-grid-row: 1;
    -ms-grid-column: 1;
  }
  .m_messageColumn .name {
    -ms-grid-row: 2;
    -ms-grid-column: 1;
  }
  .m_messageColumn .image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2;
  }
  .m_media[class*=_flipped] > .image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 1;
  }
  .m_messageColumn > .image {
    -ms-grid-row: 1;
    -ms-grid-row-span: 2;
    -ms-grid-column: 2;
  }
}
@media screen and (max-width: 767px) {
  .m_messageColumn .image {
    order: 2;
    margin-top: 40px;
    margin-left: auto;
    margin-right: auto;
    width: 170px;
  }
}
@media screen and (max-width: 767px) {
  .m_messageColumn .image img {
    width: 100%;
  }
}

.m_purposeBox {
  margin: 40px 0;
}
@media screen and (max-width: 767px) {
  .m_purposeBox {
    padding: 20px;
  }
}
@media (min-width: 768px) {
  .m_purposeBox .drawing {
    display: flex;
    justify-content: center;
  }
}
.m_purposeBox .drawing .item {
  position: relative;
  display: flex;
  flex-direction: column;
  justify-content: center;
  width: 250px;
  height: 250px;
  background: rgba(26, 64, 123, 0.8);
  border: 15px solid #ffffff;
  border-radius: 50%;
}
.m_purposeBox .drawing .item > *:last-child {
  margin-bottom: 0 !important;
}
@media screen and (max-width: 767px) {
  .m_purposeBox .drawing .item {
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 768px) {
  .m_purposeBox .drawing .item:not(:first-of-type) {
    margin-left: 120px;
  }
}
@media screen and (max-width: 767px) {
  .m_purposeBox .drawing .item:not(:first-of-type) {
    margin-top: 70px;
  }
}
.m_purposeBox .drawing .item:first-of-type::after {
  position: absolute;
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e009";
  font-size: 40px;
  line-height: 40px;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .m_purposeBox .drawing .item:first-of-type::after {
    top: 50%;
    right: -95px;
    transform: translateY(-50%);
  }
}
@media screen and (max-width: 767px) {
  .m_purposeBox .drawing .item:first-of-type::after {
    bottom: -70px;
    left: 50%;
    transform: translateX(-50%);
  }
}
.m_purposeBox .drawing .item .heading {
  margin-bottom: 20px;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-size: 0.75rem;
  color: rgba(255, 255, 255, 0.7);
  letter-spacing: 0.08em;
  text-align: center;
}
.m_purposeBox .drawing .item .heading .em {
  font-size: 1.625rem;
  line-height: 1.0769230769;
  letter-spacing: 0.03em;
}
.m_purposeBox .drawing .item .text {
  font-size: 0.875rem;
  line-height: 1.7142857143;
  color: #ffffff;
  text-align: center;
}

.m_ourService {
  position: relative;
  text-align: center;
}
.m_ourService > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_ourService {
    padding: 80px 0;
  }
}
@media (min-width: 1101px) {
  .m_ourService {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  .m_ourService {
    padding: 60px 0;
    margin-left: -20px;
    margin-right: -20px;
  }
}
.m_ourService::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  background-color: #1A407B;
  background-size: cover;
}
@media (min-width: 768px) {
  .m_ourService::before {
    background-image: url(/bdx-website/images/common/service/common_ourService_bg.png);
  }
}
@media (min-width: 1101px) {
  .m_ourService::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  .m_ourService::before {
    left: -20px;
    right: -20px;
    background-image: url(/bdx-website/images/common/service/common_ourService_bg_@2x.png);
  }
}
.m_ourService .heading {
  margin: 0 0 25px;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-weight: 500;
  letter-spacing: 0.05em;
  text-align: center;
}
@media (min-width: 768px) {
  .m_ourService .heading {
    font-size: 2.5rem;
  }
}
@media screen and (max-width: 767px) {
  .m_ourService .heading {
    font-size: 1.875rem;
  }
}
@media (min-width: 768px) {
  .m_ourService .text {
    font-size: 1rem;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  .m_ourService .text {
    font-size: 0.875rem;
    line-height: 2;
  }
}
@media (min-width: 768px) {
  .m_ourService[class*=_type01] {
    padding-top: 140px;
    padding-bottom: 140px;
  }
}
@media screen and (max-width: 767px) {
  .m_ourService[class*=_type01] {
    padding-top: 100px;
    padding-bottom: 100px;
  }
}

.m_serviceColumns {
  position: relative;
  display: flex;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .m_serviceColumns {
    flex-direction: column;
  }
}
.m_serviceColumns::before {
  position: absolute;
  right: 0;
  left: 0;
  content: "";
  z-index: -1;
  background-size: cover;
}
@media (min-width: 768px) {
  .m_serviceColumns::before {
    height: 600px;
    background-image: url(/bdx-website/images/common/service/common_serviceColumns_bg.png);
  }
}
@media (min-width: 1101px) {
  .m_serviceColumns::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns::before {
    left: -20px;
    right: -20px;
    height: 590px;
    background-image: url(/bdx-website/images/common/service/common_serviceColumns_bg_@2x.png);
  }
}
.m_serviceColumns .body > *:last-child {
  margin-bottom: 0 !important;
}
.m_serviceColumns .body .title {
  margin-top: 0;
  font-weight: 500;
}
@media (min-width: 768px) {
  .m_serviceColumns .body .title {
    font-size: 1.625rem;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns .body .title {
    font-size: 1.25rem;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns .figure {
    margin: -80px 0 0 0;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns .figure {
    display: flex;
    justify-content: center;
    margin: 0 -20px 30px;
  }
}
.m_serviceColumns .figure .hexagon {
  position: relative;
  z-index: 1;
  margin: 0;
  box-sizing: border-box;
}
@media screen and (max-width: 767px) {
  .m_serviceColumns .figure .hexagon {
    width: 335px;
    height: 313px;
  }
}
.m_serviceColumns .figure .hexagon > li {
  position: absolute;
}
@media screen and (max-width: 767px) {
  .m_serviceColumns .figure .hexagon > li {
    width: 105px;
    height: 117px;
  }
}
.m_serviceColumns .figure .hexagon > li .image {
  position: relative;
  display: block;
}
.m_serviceColumns .figure .hexagon > li .image img {
  width: 100%;
}
.m_serviceColumns .figure .hexagon > li > a {
  display: block;
}
@media (min-width: 768px) {
  .m_serviceColumns .figure .hexagon > li > a {
    transition: opacity 0.3s;
  }
  .m_serviceColumns .figure .hexagon > li > a:hover {
    opacity: 0.7;
  }
}
.m_serviceColumns .figure .hexagon > li > a::after {
  position: absolute;
  left: 50%;
  color: #ffffff;
  transform: translateX(-50%);
}
@media (min-width: 768px) {
  .m_serviceColumns .figure .hexagon > li > a::after {
    display: inline-block;
    font-family: "icon";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    speak: none;
    text-decoration: none;
    text-transform: none;
    content: "\e001";
    font-size: 16px;
    line-height: 16px;
    vertical-align: middle;
    bottom: 65px;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns .figure .hexagon > li > a::after {
    display: inline-block;
    font-family: "icon";
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-style: normal;
    font-variant: normal;
    font-weight: 400;
    speak: none;
    text-decoration: none;
    text-transform: none;
    content: "\e001";
    font-size: 12px;
    line-height: 12px;
    vertical-align: middle;
    bottom: 30px;
  }
}
.m_serviceColumns .figure .hexagon > li.core {
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
@media (min-width: 768px) {
  .m_serviceColumns .figure .hexagon > li.core > a::after {
    bottom: 45px;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns .figure .hexagon > li.core > a::after {
    bottom: 20px;
  }
}
.m_serviceColumns .figure .hexagon > li.n01 {
  left: 0;
}
@media (min-width: 768px) {
  .m_serviceColumns .figure .hexagon > li.n01 {
    top: 185px;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns .figure .hexagon > li.n01 {
    top: 97px;
  }
}
.m_serviceColumns .figure .hexagon > li.n02 {
  bottom: 0;
}
@media (min-width: 768px) {
  .m_serviceColumns .figure .hexagon > li.n02 {
    left: 112px;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns .figure .hexagon > li.n02 {
    left: 56px;
  }
}
.m_serviceColumns .figure .hexagon > li.n03 {
  bottom: 0;
}
@media (min-width: 768px) {
  .m_serviceColumns .figure .hexagon > li.n03 {
    right: 112px;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns .figure .hexagon > li.n03 {
    right: 56px;
  }
}
.m_serviceColumns .figure .hexagon > li.n04 {
  right: 0;
}
@media (min-width: 768px) {
  .m_serviceColumns .figure .hexagon > li.n04 {
    top: 185px;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns .figure .hexagon > li.n04 {
    top: 97px;
  }
}
.m_serviceColumns .figure .hexagon > li.n05 {
  top: 0;
}
@media (min-width: 768px) {
  .m_serviceColumns .figure .hexagon > li.n05 {
    right: 112px;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns .figure .hexagon > li.n05 {
    right: 56px;
  }
}
.m_serviceColumns .figure .hexagon > li.n06 {
  top: 0;
}
@media (min-width: 768px) {
  .m_serviceColumns .figure .hexagon > li.n06 {
    left: 112px;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns .figure .hexagon > li.n06 {
    left: 56px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns:not([class*=_home]) {
    padding-bottom: 90px;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns:not([class*=_home]) {
    padding-bottom: 30px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns:not([class*=_home])::before {
    bottom: -100px;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns:not([class*=_home])::before {
    bottom: -50px;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns:not([class*=_home]) .body {
    margin-bottom: 40px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns:not([class*=_home]) .figure {
    margin-right: 30px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns:not([class*=_home]) .figure .hexagon {
    width: 600px;
    height: 555px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns:not([class*=_home]) .figure .hexagon > li {
    width: 190px;
    height: 210px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns:not([class*=_home]) .figure .hexagon > li.n01 {
    top: 172px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns:not([class*=_home]) .figure .hexagon > li.n02 {
    left: 102px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns:not([class*=_home]) .figure .hexagon > li.n03 {
    right: 102px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns:not([class*=_home]) .figure .hexagon > li.n04 {
    top: 172px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns:not([class*=_home]) .figure .hexagon > li.n05 {
    right: 102px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns:not([class*=_home]) .figure .hexagon > li.n06 {
    left: 102px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns[class*=_home] {
    padding-bottom: 160px;
  }
}
.m_serviceColumns[class*=_home]::before {
  bottom: 0;
}
@media screen and (max-width: 767px) {
  .m_serviceColumns[class*=_home] .body {
    order: 2;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns[class*=_home] .body .title {
    font-size: 1.75rem;
  }
}
@media screen and (max-width: 767px) {
  .m_serviceColumns[class*=_home] .body .title {
    font-size: 1.5rem;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns[class*=_home] .figure {
    margin-top: -150px;
    margin-right: -30px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns[class*=_home] .figure .hexagon {
    width: 650px;
    height: 600px;
  }
}
@media (min-width: 768px) {
  .m_serviceColumns[class*=_home] .figure .hexagon > li {
    width: 206px;
    height: 227px;
  }
}

@media (min-width: 768px) {
  .m_consultantColumn {
    display: flex;
    justify-content: space-between;
    margin: 60px 0;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantColumn {
    margin: 40px 0;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantColumn .thum {
    margin: 0 88px 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantColumn .thum img {
    max-width: 100%;
    height: auto;
  }
}
.m_consultantColumn .body > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_consultantColumn .body {
    margin-left: 75px;
  }
}
.m_consultantColumn .body .name {
  margin-bottom: 35px;
}
@media screen and (max-width: 767px) {
  .m_consultantColumn .body .name {
    text-align: center;
  }
}
.m_consultantColumn .body .name .text {
  margin-bottom: 5px;
  font-weight: 700;
}
@media (min-width: 768px) {
  .m_consultantColumn .body .name .text {
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantColumn .body .name .text {
    font-size: 1.125rem;
  }
}
.m_consultantColumn .body .name .position {
  color: #4C5262;
}
@media (min-width: 768px) {
  .m_consultantColumn .body .name .position {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantColumn .body .name .position {
    font-size: 0.75rem;
  }
}
.m_consultantColumn .body .detail {
  margin-bottom: 35px;
}
.m_consultantColumn .body .detail .title {
  margin-bottom: 5px;
  font-weight: 700;
}
@media (min-width: 768px) {
  .m_consultantColumn .body .detail p:not([class]) {
    font-size: 1rem;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantColumn .body .detail p:not([class]) {
    font-size: 0.875rem;
    line-height: 2;
  }
}
.m_consultantColumn .body .box {
  padding: 20px;
  margin-bottom: 35px;
  background: rgba(245, 246, 247, 0.3);
}
.m_consultantColumn .body .box > *:last-child {
  margin-bottom: 0 !important;
}
.m_consultantColumn .body .box .title {
  margin-bottom: 5px;
  font-size: 1rem;
  font-weight: 700;
}

@media (min-width: 768px) {
  .m_consultantBox {
    margin: 60px 0;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantBox {
    margin: 40px 0;
  }
}
.m_consultantBox .consultantBoxInner .item {
  position: relative;
}
@media (min-width: 768px) {
  .m_consultantBox .consultantBoxInner .item {
    margin-right: 30px;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantBox .consultantBoxInner .item {
    margin-right: 15px;
  }
}
@media (min-width: 768px) {
  .m_consultantBox .consultantBoxInner .item .thum img {
    max-width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantBox .consultantBoxInner .item .thum img {
    width: 100%;
    height: auto;
  }
}
.m_consultantBox .consultantBoxInner .item .body {
  letter-spacing: 0.03em;
}
.m_consultantBox .consultantBoxInner .item .body > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_consultantBox .consultantBoxInner .item .body {
    margin-top: 15px;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantBox .consultantBoxInner .item .body {
    margin-top: 10px;
  }
}
.m_consultantBox .consultantBoxInner .item .body .text {
  margin-bottom: 0.4em;
}
.m_consultantBox .consultantBoxInner .item .body .name {
  margin-bottom: 5px;
  font-weight: 700;
}
@media (min-width: 768px) {
  .m_consultantBox .consultantBoxInner .item .body .name {
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantBox .consultantBoxInner .item .body .name {
    font-size: 1.125rem;
  }
}
.m_consultantBox .consultantBoxInner .item .body .name > a {
  color: inherit;
  text-decoration: none;
}
.m_consultantBox .consultantBoxInner .item .body .name > a::before {
  width: 100%;
  height: 100%;
  position: absolute;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 1;
}
.m_consultantBox .consultantBoxInner .item .body .position {
  color: #4C5262;
}
@media (min-width: 768px) {
  .m_consultantBox .consultantBoxInner .item .body .position {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantBox .consultantBoxInner .item .body .position {
    font-size: 0.75rem;
  }
}
@media (min-width: 768px) {
  .m_consultantBox .consultantBoxInner .item[class*=_modal] {
    cursor: pointer;
    transition: opacity 0.3s;
  }
  .m_consultantBox .consultantBoxInner .item[class*=_modal]:hover {
    opacity: 0.7;
  }
}
.m_consultantBox .consultantBoxInner:not([class*=js_slider]) {
  display: flex;
  flex-wrap: wrap;
}
@media (min-width: 768px) {
  .m_consultantBox .consultantBoxInner:not([class*=js_slider]) {
    margin-right: -30px;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantBox .consultantBoxInner:not([class*=js_slider]) {
    margin-right: -15px;
  }
}
@media (min-width: 768px) {
  .m_consultantBox .consultantBoxInner:not([class*=js_slider]) .item {
    margin-right: 30px;
    width: calc(33.3333333333% - 30px);
  }
}
@media screen and (max-width: 767px) {
  .m_consultantBox .consultantBoxInner:not([class*=js_slider]) .item {
    margin-right: 15px;
    width: calc(50% - 15px);
  }
}
@media screen and (max-width: 767px) {
  .m_consultantBox .consultantBoxInner:not([class*=js_slider]) .item:nth-of-type(even) {
    margin-right: 0;
  }
}
@media (min-width: 768px) {
  .m_consultantBox .consultantBoxInner:not([class*=js_slider]) .item:nth-of-type(3n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantBox .consultantBoxInner:not([class*=js_slider]) .item:nth-of-type(n+3) {
    margin-top: 40px;
  }
}
@media (min-width: 768px) {
  .m_consultantBox .consultantBoxInner:not([class*=js_slider]) .item:nth-of-type(n+4) {
    margin-top: 40px;
  }
}
.m_consultantBox .consultantBoxInner[class*=js_slider] .slick-list {
  overflow: visible;
}

.m_modalWrap {
  display: none;
}

.m_consultantModal {
  background: #ffffff;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  .m_consultantModal {
    display: flex;
    padding: 80px;
    margin: auto;
    width: 960px;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantModal {
    padding: 40px 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantModal .thum {
    margin: auto;
    width: 220px;
    height: 220px;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantModal .thum img {
    width: 100%;
    height: auto;
  }
}
@media (min-width: 768px) {
  .m_consultantModal .body {
    margin-left: 100px;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantModal .body {
    margin-top: 40px;
  }
}
.m_consultantModal .body .name {
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_consultantModal .body .name {
    margin-bottom: 35px;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantModal .body .name {
    margin-bottom: 15px;
  }
}
.m_consultantModal .body .name .text {
  margin-bottom: 15px;
  font-weight: 700;
}
@media (min-width: 768px) {
  .m_consultantModal .body .name .text {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .m_consultantModal .body .name .text {
    font-size: 1.125rem;
  }
}
.m_consultantModal .body .name .text .ruby {
  display: block;
  font-size: 0.75rem;
  font-weight: 400;
}
.m_consultantModal .body .name .position {
  color: #4C5262;
  font-weight: 500;
}
@media (min-width: 768px) {
  .m_consultantModal .body .detail .item + .item {
    margin-top: 35px;
  }
}
.m_consultantModal .body .detail .item .title {
  font-size: 1rem;
  font-weight: 700;
}
@media (min-width: 768px) {
  .m_consultantModal .body .detail .item p:not([class]) {
    font-size: 0.875rem;
    line-height: 2;
  }
}

.m_slider .slick-arrow {
  position: absolute;
  top: 50%;
  z-index: 10;
  transform: translateY(-50%);
}
.m_slider .slick-arrow.slick-prev {
  left: 0;
}
.m_slider .slick-arrow.slick-next {
  right: 0;
}

/* paragraph module
--------------------------------------------------------------------------------------------------- */
.m_liquidImage,
.m_entry .wp-block-image {
  margin: auto;
  text-align: center;
}
@media (min-width: 768px) {
  .m_liquidImage,
.m_entry .wp-block-image {
    margin: 60px auto;
  }
}
@media screen and (max-width: 767px) {
  .m_liquidImage,
.m_entry .wp-block-image {
    margin: 40px auto;
  }
}
.m_liquidImage img,
.m_entry .wp-block-image img {
  max-width: 100%;
  height: auto;
}
.m_liquidImage figcaption,
.m_entry .wp-block-image figcaption {
  font-size: 0.75rem;
  color: #606E79;
  text-align: left;
}
@media (min-width: 768px) {
  .m_liquidImage figcaption,
.m_entry .wp-block-image figcaption {
    margin-top: 10px;
  }
}
@media screen and (max-width: 767px) {
  .m_liquidImage figcaption,
.m_entry .wp-block-image figcaption {
    margin-top: 5px;
  }
}
.m_liquidImage.size-full,
.m_entry .wp-block-image.size-full {
  width: 100%;
}
.m_liquidImage.size-full img,
.m_entry .wp-block-image.size-full img {
  width: 100%;
  height: auto;
}

.m_text {
  margin: 30px 0;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_text {
    font-size: 1rem;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  .m_text {
    font-size: 0.875rem;
    line-height: 2;
  }
}
.m_text a {
  text-decoration: none;
}
@media (min-width: 768px) {
  .m_text a:hover {
    text-decoration: underline;
  }
}
.m_text a[target=_blank]::after {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e003";
  font-size: 14px;
  line-height: 14px;
  vertical-align: middle;
  margin: 0 10px 0 5px;
  transform: translateY(-1px);
}
.m_text a[href*=".pdf"]::after {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e008";
  font-size: 14px;
  line-height: 14px;
  vertical-align: middle;
  margin: 0 10px 0 5px;
  transform: translateY(-1px);
}
@media (min-width: 768px) {
  .m_text[class*=_lead] {
    margin-bottom: 50px;
  }
}
@media screen and (max-width: 767px) {
  .m_text[class*=_lead] {
    margin-bottom: 30px;
  }
}

@media (min-width: 768px) {
  .m_video,
.m_entry .wp-block-video {
    margin: 60px auto;
    width: 700px;
  }
}
@media screen and (max-width: 767px) {
  .m_video,
.m_entry .wp-block-video {
    margin: 40px 0;
  }
}
.m_video video,
.m_entry .wp-block-video video {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
@media (min-width: 768px) {
  [class*=service-] .m_video,
[class*=service-] .m_entry .wp-block-video {
    width: 800px;
  }
}

@media (min-width: 768px) {
  .m_movie,
.m_entry .wp-block-embed-youtube {
    margin: 60px auto;
    width: 700px;
  }
}
@media screen and (max-width: 767px) {
  .m_movie,
.m_entry .wp-block-embed-youtube {
    margin: 40px 0;
  }
}
.m_movie iframe,
.m_entry .wp-block-embed-youtube iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
}
@media (min-width: 768px) {
  [class*=service-] .m_movie,
[class*=service-] .m_entry .wp-block-embed-youtube {
    width: 800px;
  }
}

.m_map {
  margin: 30px 0;
}
@media screen and (max-width: 767px) {
  .m_map iframe {
    width: 100%;
    height: 335px;
  }
}

/* list module
--------------------------------------------------------------------------------------------------- */
.m_list,
.m_entry > ul:not([class]),
.m_entry > ul.wp-block-list {
  margin-top: 0;
}
.m_list > *:last-child,
.m_entry > ul:not([class]) > *:last-child,
.m_entry > ul.wp-block-list > *:last-child {
  margin-bottom: 0 !important;
}
.m_list > li,
.m_entry > ul:not([class]) > li,
.m_entry > ul.wp-block-list > li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 10px;
}
@media (min-width: 768px) {
  .m_list > li,
.m_entry > ul:not([class]) > li,
.m_entry > ul.wp-block-list > li {
    font-size: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .m_list > li,
.m_entry > ul:not([class]) > li,
.m_entry > ul.wp-block-list > li {
    font-size: 0.875rem;
  }
}
.m_list > li::before,
.m_entry > ul:not([class]) > li::before,
.m_entry > ul.wp-block-list > li::before {
  position: absolute;
  top: 0.3em;
  left: 0;
  font-size: 0.75rem;
  color: #1A2229;
  display: inline-block;
  content: "●";
}
.m_list > li ul,
.m_list > li ol,
.m_entry > ul:not([class]) > li ul,
.m_entry > ul:not([class]) > li ol,
.m_entry > ul.wp-block-list > li ul,
.m_entry > ul.wp-block-list > li ol {
  margin-top: 10px;
}
.m_list > li ul > li,
.m_list > li ol > li,
.m_entry > ul:not([class]) > li ul > li,
.m_entry > ul:not([class]) > li ol > li,
.m_entry > ul.wp-block-list > li ul > li,
.m_entry > ul.wp-block-list > li ol > li {
  position: relative;
  padding-left: 1em;
}
.m_list > li ul > li::before,
.m_list > li ol > li::before,
.m_entry > ul:not([class]) > li ul > li::before,
.m_entry > ul:not([class]) > li ol > li::before,
.m_entry > ul.wp-block-list > li ul > li::before,
.m_entry > ul.wp-block-list > li ol > li::before {
  position: absolute;
  top: 0.2em;
  left: 0;
  font-size: 0.75rem;
  color: #1A2229;
  display: inline-block;
  content: "・";
}
.m_list[class*=_pcSmall],
.m_entry > ul:not([class])[class*=_pcSmall],
.m_entry > ul.wp-block-list[class*=_pcSmall] {
  margin: 10px 0;
}
.m_list[class*=_pcSmall] > li,
.m_entry > ul:not([class])[class*=_pcSmall] > li,
.m_entry > ul.wp-block-list[class*=_pcSmall] > li {
  padding-left: 20px;
}
@media (min-width: 768px) {
  .m_list[class*=_pcSmall] > li,
.m_entry > ul:not([class])[class*=_pcSmall] > li,
.m_entry > ul.wp-block-list[class*=_pcSmall] > li {
    font-size: 0.875rem;
  }
}
@media (min-width: 768px) {
  .m_list[class*=_pcSmall] > li::before,
.m_entry > ul:not([class])[class*=_pcSmall] > li::before,
.m_entry > ul.wp-block-list[class*=_pcSmall] > li::before {
    top: 0.3em;
    font-size: 0.625rem;
  }
}
@media (min-width: 768px) {
  .m_list[class*=_small] > li,
.m_entry > ul:not([class])[class*=_small] > li,
.m_entry > ul.wp-block-list[class*=_small] > li {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 767px) {
  .m_list[class*=_small] > li,
.m_entry > ul:not([class])[class*=_small] > li,
.m_entry > ul.wp-block-list[class*=_small] > li {
    font-size: 0.75rem;
  }
}
.m_list[class*=_type01] > li,
.m_entry > ul:not([class])[class*=_type01] > li,
.m_entry > ul.wp-block-list[class*=_type01] > li {
  padding-left: 1em;
}
.m_list[class*=_type01] > li::before,
.m_entry > ul:not([class])[class*=_type01] > li::before,
.m_entry > ul.wp-block-list[class*=_type01] > li::before {
  top: 0.1em;
  content: "・";
}
.m_list[class*=_square] > li,
.m_entry > ul:not([class])[class*=_square] > li,
.m_entry > ul.wp-block-list[class*=_square] > li {
  padding-left: 16px;
}
.m_list[class*=_square] > li::before,
.m_entry > ul:not([class])[class*=_square] > li::before,
.m_entry > ul.wp-block-list[class*=_square] > li::before {
  top: 0.5em;
  width: 12px;
  height: 12px;
  background: rgba(26, 64, 123, 0.4);
  border-radius: 2px;
  content: "";
}
.m_list[class*=_unstyled] > li,
.m_entry > ul:not([class])[class*=_unstyled] > li,
.m_entry > ul.wp-block-list[class*=_unstyled] > li {
  padding-left: 0;
}
.m_list[class*=_unstyled] > li::before,
.m_entry > ul:not([class])[class*=_unstyled] > li::before,
.m_entry > ul.wp-block-list[class*=_unstyled] > li::before {
  content: none;
}

.m_numberList,
.m_entry > ol:not([class]),
.m_entry > ol.wp-block-list {
  counter-reset: li;
}
.m_numberList > *:last-child,
.m_entry > ol:not([class]) > *:last-child,
.m_entry > ol.wp-block-list > *:last-child {
  margin-bottom: 0 !important;
}
.m_numberList > li,
.m_entry > ol:not([class]) > li,
.m_entry > ol.wp-block-list > li {
  position: relative;
  padding-left: 30px;
  margin-bottom: 10px;
}
.m_numberList > li::before,
.m_entry > ol:not([class]) > li::before,
.m_entry > ol.wp-block-list > li::before {
  position: absolute;
  top: 0;
  left: 0;
  counter-increment: li;
  content: counter(li);
}
.m_numberList ul,
.m_numberList ol,
.m_entry > ol:not([class]) ul,
.m_entry > ol:not([class]) ol,
.m_entry > ol.wp-block-list ul,
.m_entry > ol.wp-block-list ol {
  margin-top: 10px;
}
.m_numberList[class*=_type01] > li,
.m_entry > ol:not([class])[class*=_type01] > li,
.m_entry > ol.wp-block-list[class*=_type01] > li {
  padding-left: 0;
}
.m_numberList[class*=_type01] > li::before,
.m_entry > ol:not([class])[class*=_type01] > li::before,
.m_entry > ol.wp-block-list[class*=_type01] > li::before {
  position: initial;
  content: counter(li) ".";
}
.m_numberList[class*=_type01] > li > ul,
.m_entry > ol:not([class])[class*=_type01] > li > ul,
.m_entry > ol.wp-block-list[class*=_type01] > li > ul {
  margin-left: 0.5em;
}
.m_numberList[class*=_unstyled] > li,
.m_entry > ol:not([class])[class*=_unstyled] > li,
.m_entry > ol.wp-block-list[class*=_unstyled] > li {
  padding-left: 0;
}
.m_numberList[class*=_unstyled] > li::before,
.m_entry > ol:not([class])[class*=_unstyled] > li::before,
.m_entry > ol.wp-block-list[class*=_unstyled] > li::before {
  content: none;
}
.m_numberList[class*=_unstyled] > li > ul,
.m_entry > ol:not([class])[class*=_unstyled] > li > ul,
.m_entry > ol.wp-block-list[class*=_unstyled] > li > ul {
  margin-left: 1em;
}
@media (min-width: 768px) {
  .m_numberList[class*=_marginLarge] > li,
.m_entry > ol:not([class])[class*=_marginLarge] > li,
.m_entry > ol.wp-block-list[class*=_marginLarge] > li {
    margin-top: 40px;
  }
}
@media screen and (max-width: 767px) {
  .m_numberList[class*=_marginLarge] > li,
.m_entry > ol:not([class])[class*=_marginLarge] > li,
.m_entry > ol.wp-block-list[class*=_marginLarge] > li {
    margin-top: 30px;
  }
}

.m_notesList {
  margin-top: 0;
}
.m_notesList > li {
  display: table-row;
}
.m_notesList > li > *:last-child {
  margin-bottom: 0 !important;
}
.m_notesList > li::before {
  display: table-cell;
  content: "※";
  text-align: center;
}
@media (min-width: 768px) {
  .m_notesList[class*=_small] > li {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 767px) {
  .m_notesList[class*=_small] > li {
    font-size: 0.75rem;
  }
}
.m_notesList[class*=_mark] > li .mark {
  display: table-cell;
  text-align: right;
}
.m_notesList[class*=_mark] > li::before {
  content: none;
}

.m_linkList > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_linkList {
    margin: 0 0;
  }
}
@media screen and (max-width: 767px) {
  .m_linkList {
    margin: 0 0;
  }
}
.m_linkList > li {
  position: relative;
  padding-left: 16px;
  text-indent: -16px;
  margin-bottom: 10px;
  font-size: 0.875rem;
  color: #1A407B;
}
.m_linkList > li > *:last-child {
  margin-bottom: 0 !important;
}
.m_linkList > li::before {
  margin-right: 10px;
  width: 6px;
  height: 6px;
  border: solid #1A407B;
  border-width: 1px 1px 0 0;
  transform: rotate(45deg) translateX(-2px);
  display: inline-block;
  content: "";
}
.m_linkList > li > a {
  color: inherit;
  text-decoration: none;
}
@media (min-width: 768px) {
  .m_linkList > li > a {
    text-decoration: none;
  }
  .m_linkList > li > a:hover {
    text-decoration: underline;
  }
}

.m_detailList > *:last-child {
  margin-bottom: 0 !important;
}
.m_detailList dt {
  font-size: 0.75rem;
  font-weight: 700;
}
.m_detailList dd {
  margin-bottom: 15px;
  margin-left: 0;
  font-size: 0.875rem;
}
.m_detailList[class*=_type01] dt {
  margin-bottom: 0.5em;
  font-size: 1rem;
}
@media (min-width: 768px) {
  .m_detailList[class*=_type01] dd {
    margin-bottom: 25px;
  }
}
@media screen and (max-width: 767px) {
  .m_detailList[class*=_type01] dd {
    margin-bottom: 20px;
  }
}

[class*=List][class*=_horizontal] > li {
  margin-right: 20px;
  display: inline-block;
  vertical-align: top;
}

.m_indexList > li {
  display: flex;
}
@media screen and (max-width: 767px) {
  .m_indexList > li {
    flex-direction: column;
  }
}
@media (min-width: 768px) {
  .m_indexList > li:not(:first-child) {
    margin-top: 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_indexList > li:not(:first-child) {
    margin-top: 40px;
  }
}
.m_indexList > li .body {
  order: 2;
}
.m_indexList > li .body > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_indexList > li .body {
    flex: 1;
    margin-left: 40px;
  }
}
.m_indexList > li .body p {
  letter-spacing: 0.03em;
}
.m_indexList > li .body > * {
  margin-top: 0;
}
.m_indexList > li .image {
  order: 1;
}
@media screen and (max-width: 767px) {
  .m_indexList > li .image {
    margin-bottom: 15px;
  }
}
@media screen and (max-width: 767px) {
  .m_indexList > li .image img {
    width: 100%;
    height: auto;
  }
}

.m_imageList {
  margin: 70px 0;
}
.m_imageList > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_imageList {
    display: flex;
    flex-wrap: wrap;
    margin-right: -40px;
  }
}
.m_imageList .item {
  position: relative;
  display: flex;
  flex-direction: column;
  background: #ffffff;
  box-shadow: 8px 8px 30px rgba(30, 52, 88, 0.08);
}
@media (min-width: 768px) {
  .m_imageList .item {
    margin-right: 40px;
    width: calc(33.3333333333% - 40px);
    transition: box-shadow 0.3s ease;
  }
}
@media screen and (max-width: 767px) {
  .m_imageList .item {
    margin-bottom: 25px;
  }
}
@media (min-width: 768px) {
  .m_imageList .item:nth-of-type(n+4) {
    margin-top: 40px;
  }
}
.m_imageList .item .body {
  order: 2;
  padding: 25px;
}
.m_imageList .item .body > *:last-child {
  margin-bottom: 0 !important;
}
.m_imageList .item .body .title {
  margin-bottom: 10px;
  font-weight: 700;
  color: #1A407B;
}
@media (min-width: 768px) {
  .m_imageList .item .body .title {
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 767px) {
  .m_imageList .item .body .title {
    font-size: 1rem;
  }
}
.m_imageList .item .body .title > a {
  display: block;
  color: inherit;
  text-decoration: none;
}
.m_imageList .item .body .title > a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 1;
}
.m_imageList .item .body .title > a > span {
  position: relative;
  display: block;
  padding-right: 30px;
}
.m_imageList .item .body .title > a > span::after {
  position: absolute;
  right: 0;
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e002";
  font-size: 10px;
  line-height: 10px;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .m_imageList .item .body .title > a > span::after {
    top: 0.9em;
    transition: right 0.3s ease;
  }
}
@media screen and (max-width: 767px) {
  .m_imageList .item .body .title > a > span::after {
    top: 0.7em;
  }
}
.m_imageList .item .image {
  order: 1;
  overflow: hidden;
}
.m_imageList .item .image img {
  width: 100%;
}
@media (min-width: 768px) {
  .m_imageList .item .image img {
    transition: transform 0.3s ease;
  }
}
@media (min-width: 768px) {
  .m_imageList .item:hover {
    box-shadow: 8px 8px 40px rgba(30, 52, 88, 0.18);
  }
}
@media (min-width: 768px) {
  .m_imageList .item:hover .body .title > a > span::after {
    right: -3px;
  }
}
@media (min-width: 768px) {
  .m_imageList .item:hover .image img {
    transform: scale(1.1);
  }
}

@media (min-width: 768px) {
  .m_newsList {
    margin: 60px 0;
  }
}
@media screen and (max-width: 767px) {
  .m_newsList {
    margin: 40px 0;
  }
}
.m_newsList .item {
  position: relative;
  display: flex;
}
.m_newsList .item .body {
  order: 2;
  display: flex;
  flex-wrap: wrap;
}
.m_newsList .item .body > *:last-child {
  margin-bottom: 0 !important;
}
.m_newsList .item .body .category {
  margin: 0;
}
.m_newsList .item .body .category > li {
  display: inline-block;
  padding: 2px;
  margin-right: 5px;
  margin-bottom: 5px;
  min-width: 100px;
  font-size: 0.75rem;
  color: #1A407B;
  border: 1px solid #1A407B;
  box-sizing: border-box;
  text-align: center;
}
.m_newsList .item .body .update {
  font-size: 0.75rem;
  color: #ABB7C1;
}
.m_newsList .item .body .title {
  flex-basis: 100%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  margin: 10px 0;
  font-size: 1rem;
  line-height: 1.625;
  font-weight: 500;
  color: #1A2229;
}
@media (min-width: 768px) {
  .m_newsList .item .body .title {
    -webkit-line-clamp: 2;
    transition: color 0.3s ease;
  }
}
@media screen and (max-width: 767px) {
  .m_newsList .item .body .title {
    -webkit-line-clamp: 3;
  }
}
.m_newsList .item .body .title > a {
  color: inherit;
  text-decoration: none;
}
.m_newsList .item .body .title > a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 1;
}
.m_newsList .item .body .detail {
  flex-basis: 100%;
  display: -webkit-box;
  -webkit-box-orient: vertical;
  overflow: hidden;
  font-size: 0.875rem;
  line-height: 1.7142857143;
  color: #606E79;
}
@media (min-width: 768px) {
  .m_newsList .item .body .detail {
    -webkit-line-clamp: 2;
  }
}
@media screen and (max-width: 767px) {
  .m_newsList .item .body .detail {
    -webkit-line-clamp: 3;
  }
}
.m_newsList .item .image {
  order: 1;
  overflow: hidden;
}
.m_newsList .item .image img {
  aspect-ratio: 16/9;
  object-fit: cover;
  width: 100%;
}
@media (min-width: 768px) {
  .m_newsList .item .image img {
    transition: transform 0.3s ease;
  }
}
@media screen and (max-width: 767px) {
  .m_newsList .item .image img {
    height: auto;
  }
}
@media (min-width: 768px) {
  .m_newsList .item:hover .body .title {
    color: #004B9F;
  }
}
@media (min-width: 768px) {
  .m_newsList .item:hover .image img {
    transform: scale(1.1);
  }
}
@media screen and (max-width: 767px) {
  .m_newsList:not([class*=_home]) .item {
    flex-direction: column;
  }
}
@media (min-width: 768px) {
  .m_newsList:not([class*=_home]) .item:not(:first-of-type) {
    padding-top: 40px;
    margin-top: 40px;
    border-top: 1px solid #ECEEEF;
  }
}
@media screen and (max-width: 767px) {
  .m_newsList:not([class*=_home]) .item:not(:first-of-type) {
    margin-top: 40px;
  }
}
@media (min-width: 768px) {
  .m_newsList:not([class*=_home]) .item .body {
    display: block;
    flex-basis: calc(100% - 324px);
  }
}
@media (min-width: 768px) {
  .m_newsList:not([class*=_home]) .item .body .category {
    display: inline-block;
  }
}
@media screen and (max-width: 767px) {
  .m_newsList:not([class*=_home]) .item .body .update {
    margin-left: auto;
  }
}
@media (min-width: 768px) {
  .m_newsList:not([class*=_home]) .item .image {
    margin-right: 40px;
    width: 284px;
  }
}
@media screen and (max-width: 767px) {
  .m_newsList:not([class*=_home]) .item .image {
    margin-bottom: 20px;
  }
}
@media (min-width: 768px) {
  .m_newsList:not([class*=_home]) .item .image img {
    width: 100%;
  }
}
.m_newsList[class*=_home] {
  display: flex;
}
@media (min-width: 768px) {
  .m_newsList[class*=_home] {
    flex-wrap: wrap;
    gap: 40px 30px;
  }
}
@media screen and (max-width: 767px) {
  .m_newsList[class*=_home] {
    overflow-x: auto;
    margin-left: -20px;
    margin-right: -20px;
  }
}
.m_newsList[class*=_home] .item {
  flex-direction: column;
}
@media (min-width: 768px) {
  .m_newsList[class*=_home] .item {
    width: 346px;
  }
}
@media screen and (max-width: 767px) {
  .m_newsList[class*=_home] .item {
    flex-shrink: 0;
    flex-basis: calc(100% - 65px);
    padding-right: 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_newsList[class*=_home] .item:first-child {
    margin-left: 20px;
  }
}
@media (min-width: 768px) {
  .m_newsList[class*=_home] .item:nth-of-type(-n+2) {
    width: 535px;
  }
}
@media (min-width: 768px) {
  .m_newsList[class*=_home] .item:not(:nth-of-type(-n+2)) .body .detail {
    display: none;
  }
}
.m_newsList[class*=_home] .item .body .update {
  margin-left: auto;
}
.m_newsList[class*=_home] .item .image {
  margin-bottom: 20px;
}

@media (min-width: 768px) {
  .m_flowList {
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 60px;
    width: 800px;
  }
}
@media (min-width: 768px) {
  .m_flowList > li {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  .m_flowList > li {
    margin-bottom: 40px;
  }
}
.m_flowList > li .item {
  display: flex;
}
.m_flowList > li .item .number {
  display: flex;
  flex-direction: column;
  justify-content: center;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  color: #ffffff;
  background: #1A407B;
  box-sizing: border-box;
  letter-spacing: 0.05em;
  text-align: center;
}
@media (min-width: 768px) {
  .m_flowList > li .item .number {
    padding: 20px;
    width: 100px;
    font-size: 2.5rem;
    line-height: 1;
  }
}
@media screen and (max-width: 767px) {
  .m_flowList > li .item .number {
    padding: 20px;
    width: 88px;
    font-size: 1.875rem;
    line-height: 1;
  }
}
.m_flowList > li .item .number .step {
  font-size: 1.125rem;
  line-height: 1;
}
.m_flowList > li .item .text {
  flex: 1;
  display: flex;
  flex-direction: column;
  justify-content: center;
  padding: 10px 20px;
  background: #DCE2EB;
}
.m_flowList > li .item .text > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_flowList > li .item .text {
    margin-left: 15px;
  }
}
@media screen and (max-width: 767px) {
  .m_flowList > li .item .text {
    margin-left: 10px;
  }
}
.m_flowList > li .item .text > .inner {
  font-weight: 700;
  letter-spacing: 0.08em;
}
@media (min-width: 768px) {
  .m_flowList > li .item .text > .inner {
    margin-bottom: 10px;
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 767px) {
  .m_flowList > li .item .text > .inner {
    margin-bottom: 5px;
    font-size: 1.125rem;
  }
}
.m_flowList > li:not(:last-child) .item .number {
  position: relative;
}
.m_flowList > li:not(:last-child) .item .number::after {
  position: absolute;
  right: 0;
  left: 0;
  content: "";
  z-index: 1;
  border-top: 15px solid #1A407B;
  border-right: 50px solid transparent;
  border-left: 50px solid transparent;
  display: inline-block;
  content: "";
}
@media (min-width: 768px) {
  .m_flowList > li:not(:last-child) .item .number::after {
    bottom: -14px;
  }
}
@media screen and (max-width: 767px) {
  .m_flowList > li:not(:last-child) .item .number::after {
    bottom: -15px;
    border-right-width: 44px;
    border-left-width: 44px;
  }
}

.m_memberList {
  display: grid;
}
.m_memberList .image img {
  width: 100%;
  height: auto;
}
.m_memberList .title {
  font-weight: 700;
}
.m_memberList .title a {
  color: #1A2229;
  text-decoration: none;
}
.m_memberList .title a::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 10;
}
.m_memberList .career {
  color: #4C5262;
}
.m_memberList > li {
  position: relative;
  background: #ffffff;
}
.m_memberList > li > *:last-child {
  margin-bottom: 0 !important;
}
.m_memberList > li.is_disabled {
  display: none;
}
@media (min-width: 768px) {
  .m_memberList {
    grid-template-columns: repeat(3, 1fr);
    gap: 30px;
  }
  .m_memberList .image {
    margin: 0;
  }
  .m_memberList .title {
    margin: 25px 0 0;
    font-size: 1.25rem;
    line-height: 1.6;
  }
  .m_memberList .data {
    margin: 12px 0 0;
    font-size: 0.875rem;
    line-height: 1.5;
  }
  .m_memberList > li {
    transition: opacity 0.3s;
  }
  .m_memberList > li:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .m_memberList {
    grid-template-columns: repeat(2, 1fr);
    gap: 40px 15px;
  }
  .m_memberList .title {
    margin: 10px 0 0;
    font-size: 1rem;
    line-height: 1.75;
  }
  .m_memberList .data {
    margin: 7px 0 0;
    font-size: 0.75rem;
    line-height: 1.75;
  }
}

/* table module
--------------------------------------------------------------------------------------------------- */
@media (min-width: 768px) {
  .m_table,
.m_entry .wp-block-table {
    margin: 60px 0;
  }
}
@media screen and (max-width: 767px) {
  .m_table,
.m_entry .wp-block-table {
    margin: 40px -20px;
    overflow-x: auto;
  }
}
.m_table table,
.m_entry .wp-block-table table {
  width: 100%;
  border-top: 1px solid #DEE1E3;
  box-sizing: border-box;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_table table,
.m_entry .wp-block-table table {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 767px) {
  .m_table table,
.m_entry .wp-block-table table {
    margin-left: 20px;
    margin-right: 20px;
    width: 800px;
    font-size: 0.75rem;
  }
}
.m_table table thead tr th:last-of-type,
.m_entry .wp-block-table table thead tr th:last-of-type {
  border-right: none;
}
.m_table table tr th, .m_table table tr td,
.m_entry .wp-block-table table tr th,
.m_entry .wp-block-table table tr td {
  font-size: 0.875rem;
  border-bottom: 1px solid #DEE1E3;
  box-sizing: border-box;
  text-align: left;
}
.m_table table tr th,
.m_entry .wp-block-table table tr th {
  padding: 20px 10px;
  background: #F5F6F7;
  border-right: 1px solid #DEE1E3;
  text-align: center;
}
.m_table table tr td,
.m_entry .wp-block-table table tr td {
  padding: 20px;
  border-right: 1px solid #DEE1E3;
}
.m_table table tr td:last-of-type,
.m_entry .wp-block-table table tr td:last-of-type {
  border-right: none;
}

@media (min-width: 768px) {
  .m_indexTable {
    margin: 60px auto;
    width: 800px;
  }
}
@media screen and (max-width: 767px) {
  .m_indexTable {
    margin-top: 40px;
    margin-bottom: 40px;
  }
}
.m_indexTable table {
  width: 100%;
  box-sizing: border-box;
  letter-spacing: 0.03em;
}
@media screen and (max-width: 767px) {
  .m_indexTable table tr {
    display: block;
    padding: 20px 0;
  }
}
@media (min-width: 768px) {
  .m_indexTable table tr:first-of-type th,
.m_indexTable table tr:first-of-type td {
    padding-top: 0;
  }
}
@media screen and (max-width: 767px) {
  .m_indexTable table tr:first-of-type {
    padding-top: 0;
  }
}
.m_indexTable table tr:not(:last-of-type) {
  border-bottom: 1px solid #ECEEEF;
}
.m_indexTable table tr th {
  font-weight: 500;
  color: #4C5262;
  text-align: left;
}
@media (min-width: 768px) {
  .m_indexTable table tr th {
    padding: 25px 0;
  }
}
@media (min-width: 768px) {
  .m_indexTable table tr td {
    padding: 25px 0;
  }
}
@media screen and (max-width: 767px) {
  .m_indexTable table tr td {
    display: block;
  }
}
.m_indexTable table tr td .member .position {
  display: inline-block;
}
@media (min-width: 768px) {
  .m_indexTable table tr td .member .position {
    font-size: 0.875rem;
    min-width: 100px;
  }
}
@media screen and (max-width: 767px) {
  .m_indexTable table tr td .member .position {
    font-size: 0.75rem;
    min-width: 90px;
  }
}
@media (min-width: 768px) {
  .m_indexTable table tr td .member .name {
    margin-left: 40px;
  }
}
@media screen and (max-width: 767px) {
  .m_indexTable table tr td .member .name {
    margin-left: 25px;
  }
}
.m_indexTable table tbody tr th {
  vertical-align: top;
}
@media (min-width: 768px) {
  .m_indexTable table tbody tr th {
    padding-right: 60px;
    width: 165px;
  }
}
@media screen and (max-width: 767px) {
  .m_indexTable table tbody tr th {
    display: block;
    margin-bottom: 5px;
  }
}

@media (min-width: 768px) {
  .m_courseTable {
    margin-top: 60px;
    margin-bottom: 60px;
  }
}
@media screen and (max-width: 767px) {
  .m_courseTable {
    margin: 40px -20px;
    overflow-x: auto;
  }
}
@media screen and (max-width: 767px) {
  .m_courseTable .inner {
    margin-left: 20px;
    margin-right: 20px;
    width: 950px;
  }
}
.m_courseTable .inner table {
  table-layout: fixed;
  border-collapse: collapse;
}
.m_courseTable .inner table thead tr th {
  padding: 15px 10px 15px;
  color: #ffffff;
  background: #1A407B;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_courseTable .inner table thead tr th {
    font-size: 1.125rem;
  }
}
@media screen and (max-width: 767px) {
  .m_courseTable .inner table thead tr th {
    font-size: 1rem;
  }
}
.m_courseTable .inner table thead tr th:not(:first-of-type) {
  border-left: solid #ffffff;
}
@media (min-width: 768px) {
  .m_courseTable .inner table thead tr th:not(:first-of-type) {
    border-width: 0 0 0 40px;
  }
}
@media screen and (max-width: 767px) {
  .m_courseTable .inner table thead tr th:not(:first-of-type) {
    border-width: 0 0 0 25px;
  }
}
.m_courseTable .inner table thead tr th .paling {
  display: inline-block;
  margin-bottom: 10px;
  padding: 2px 18px;
  font-size: 0.75rem;
  font-weight: 500;
  border: 1px solid #ABB7C1;
  letter-spacing: 0;
}
.m_courseTable .inner table tbody tr td {
  padding: 20px;
  font-size: 0.875rem;
  vertical-align: top;
}
.m_courseTable .inner table tbody tr td .title {
  margin-bottom: 10px;
  font-size: 0.875rem;
  font-weight: 700;
}
.m_courseTable .inner table tbody tr td:not(:first-of-type) {
  border-left: solid #ffffff;
}
@media (min-width: 768px) {
  .m_courseTable .inner table tbody tr td:not(:first-of-type) {
    border-width: 0 0 0 40px;
  }
}
@media screen and (max-width: 767px) {
  .m_courseTable .inner table tbody tr td:not(:first-of-type) {
    border-width: 0 0 0 25px;
  }
}
.m_courseTable .inner table tr {
  background: #F5F6F7;
  border: solid #ffffff;
  border-width: 10px 0;
}

@media screen and (max-width: 767px) {
  .m_spTabTable {
    margin-left: -20px;
    margin-right: -20px;
  }
}
.m_spTabTable .headingBox {
  display: flex;
}
@media (min-width: 768px) {
  .m_spTabTable .headingBox {
    margin: 0 0 0 180px;
  }
}
@media screen and (max-width: 767px) {
  .m_spTabTable .headingBox {
    margin-bottom: 0;
    border-bottom: 3px solid #1A407B;
  }
}
.m_spTabTable .headingBox > li {
  flex: 1;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-weight: 500;
  color: #ffffff;
  background: #1A407B;
  letter-spacing: 0.05em;
  text-align: center;
}
@media (min-width: 768px) {
  .m_spTabTable .headingBox > li {
    padding: 17px;
    font-size: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .m_spTabTable .headingBox > li {
    padding: 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_spTabTable .headingBox > li {
    font-size: 0.8125rem;
  }
}
@media (min-width: 768px) {
  .m_spTabTable .headingBox > li:not(:first-of-type) {
    margin-left: 10px;
  }
}
@media screen and (max-width: 767px) {
  .m_spTabTable .headingBox > li:not(:first-of-type) {
    margin-left: 5px;
  }
}
@media (min-width: 768px) {
  .m_spTabTable .headingBox > li .name {
    font-size: 1.625rem;
  }
}
@media screen and (max-width: 767px) {
  .m_spTabTable .headingBox > li .name {
    font-size: 1.5rem;
  }
}
@media screen and (max-width: 767px) {
  .m_spTabTable .headingBox > li:not(.is_active) {
    color: #1A407B;
    background: rgba(171, 183, 193, 0.2);
  }
}
@media (min-width: 768px) {
  .m_spTabTable table {
    margin-left: -10px;
    margin-right: -10px;
    width: calc(100% + 20px);
    table-layout: fixed;
    border-spacing: 10px;
    border-collapse: separate;
  }
}
@media screen and (max-width: 767px) {
  .m_spTabTable table {
    display: block;
    padding-top: 30px;
    background: #ffffff;
  }
}
@media screen and (max-width: 767px) {
  .m_spTabTable table tbody tr {
    display: block;
    padding: 0 20px 40px;
  }
}
.m_spTabTable table tbody tr th {
  font-size: 1rem;
  font-weight: 500;
  color: #1A407B;
  background: #DCE2EB;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  .m_spTabTable table tbody tr th {
    width: 170px;
  }
}
@media screen and (max-width: 767px) {
  .m_spTabTable table tbody tr th {
    display: block;
    padding: 10px;
    width: 100%;
  }
}
.m_spTabTable table tbody tr td {
  vertical-align: top;
  background: #ffffff;
  box-sizing: border-box;
}
@media (min-width: 768px) {
  .m_spTabTable table tbody tr td {
    padding: 25px 30px;
  }
}
@media screen and (max-width: 767px) {
  .m_spTabTable table tbody tr td {
    display: block;
    padding: 20px 10px 10px;
    width: 100%;
  }
}
@media screen and (max-width: 767px) {
  .m_spTabTable table tbody tr td.hidden {
    display: none;
  }
}

/* form module
--------------------------------------------------------------------------------------------------- */
.m_form {
  display: flex;
  flex-wrap: wrap;
}
.m_form > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_form {
    gap: 40px 0;
    margin: 40px 0 0;
  }
}
@media screen and (max-width: 767px) {
  .m_form {
    margin: 60px 0 0;
  }
}
.m_form dt {
  font-size: 1rem;
  font-weight: 700;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_form dt {
    position: relative;
    flex-basis: 235px;
  }
}
@media screen and (max-width: 767px) {
  .m_form dt {
    margin-bottom: 15px;
  }
}
.m_form dt label {
  display: block;
}
@media (min-width: 768px) {
  .m_form dt label {
    position: relative;
  }
}
.m_form dt .require {
  display: inline-block;
  padding: 3px 0;
  min-width: 80px;
  font-size: 0.75rem;
  font-weight: 500;
  color: #DD083C;
  border: 1px solid #DD083C;
  box-sizing: border-box;
  letter-spacing: 0.12em;
  text-align: center;
}
@media (min-width: 768px) {
  .m_form dt .require {
    position: absolute;
    top: 0;
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .m_form dt .require {
    margin-left: 20px;
  }
}
.m_form dd {
  font-size: 1rem;
}
.m_form dd > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  .m_form dd {
    flex-basis: 514px;
    margin-left: 50px;
  }
}
@media screen and (max-width: 767px) {
  .m_form dd {
    flex-basis: 100%;
    margin-left: 0;
    margin-bottom: 40px;
  }
}

.m_select {
  position: relative;
}
.m_select::after {
  position: absolute;
  top: 50%;
  right: 20px;
  content: "";
  width: 5px;
  height: 5px;
  border: solid #1A407B;
  border-width: 0 2px 2px 0;
  transform: translateY(-50%) rotate(45deg);
}
.m_select select {
  -webkit-appearance: none;
          appearance: none;
  padding: 15px 40px 15px 20px;
  width: 100%;
  font-size: 1rem;
  background: #ffffff;
  border: 1px solid #ABB7C1;
  border-radius: 5px;
  box-sizing: border-box;
  letter-spacing: 0.03em;
}

.m_input {
  padding: 15px 20px;
  width: 100%;
  font-size: 1rem;
  border: 1px solid #ABB7C1;
  border-radius: 5px;
  box-sizing: border-box;
  letter-spacing: 0.03em;
}
.m_input:-webkit-autofill {
  box-shadow: 0 0 0 1000px #ffffff inset;
}

.m_textarea {
  padding: 15px 20px;
  width: 100%;
  font-size: 1rem;
  border: 1px solid #ABB7C1;
  border-radius: 5px;
  box-sizing: border-box;
  letter-spacing: 0.03em;
}
@media (min-width: 768px) {
  .m_textarea {
    height: 325px;
  }
}
@media screen and (max-width: 767px) {
  .m_textarea {
    height: 300px;
  }
}
.m_textarea:-webkit-autofill {
  box-shadow: 0 0 0 1000px #ffffff inset;
}

.m_error {
  margin-top: 10px;
  font-size: 0.9375rem;
  color: #E60039;
  letter-spacing: 0.03em;
}
.m_error::before {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e005";
  font-size: 16px;
  line-height: 16px;
  vertical-align: middle;
  margin-right: 5px;
  transform: translateY(-1px);
}

@media (min-width: 768px) {
  .m_checkbox {
    margin-top: 30px;
    text-align: center;
  }
}
@media screen and (max-width: 767px) {
  .m_checkbox {
    margin-top: 20px;
  }
}
.m_checkbox p:not(:first-child) {
  margin-top: -5px;
}

.m_inputCheckBox {
  position: relative;
  display: inline-block;
  padding-left: 27px;
  font-size: 1rem;
  cursor: pointer;
  letter-spacing: 0.03em;
}
.m_inputCheckBox input[type=checkbox] {
  position: absolute;
  top: 4px;
  left: 0;
  -webkit-appearance: none;
          appearance: none;
  margin: auto 0;
  opacity: 0;
  width: 17px;
  height: 17px;
}
.m_inputCheckBox input[type=checkbox] + span::before {
  position: absolute;
  top: 8px;
  left: 0;
  content: "";
  width: 17px;
  height: 17px;
  border: 2px solid #ABB7C1;
  border-radius: 2px;
  box-sizing: border-box;
}
.m_inputCheckBox input[type=checkbox] + span::after {
  position: absolute;
  top: 12px;
  left: 2px;
  content: "";
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e004";
  font-size: 10px;
  line-height: 10px;
  vertical-align: middle;
  opacity: 0;
  color: #1A407B;
  transform: scale(0.8);
  transition: opacity 0.3s ease;
}
.m_inputCheckBox input[type=checkbox]:checked + span::after {
  opacity: 1;
}
.m_inputCheckBox input[type=checkbox]:focus + span::before {
  border: 2px solid #1A2229;
}

/* navigation module
--------------------------------------------------------------------------------------------------- */
.m_button {
  margin: 30px 0;
  text-align: center;
}
.m_button:empty {
  display: none;
}
.m_button a,
.m_button button,
.m_button input[type=button],
.m_button input[type=submit],
.m_button input[type=reset],
.m_button span {
  position: relative;
  display: inline-block;
  padding: 12px 10px;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-size: 0.875rem;
  color: #ffffff;
  background: #1A407B;
  border: 1px solid #1A407B;
  border-radius: 30px;
  box-sizing: border-box;
  letter-spacing: 0.08em;
  text-decoration: none;
}
@media (min-width: 768px) {
  .m_button a,
.m_button button,
.m_button input[type=button],
.m_button input[type=submit],
.m_button input[type=reset],
.m_button span {
    min-width: 200px;
    transition: opacity 0.3s;
  }
  .m_button a:hover,
.m_button button:hover,
.m_button input[type=button]:hover,
.m_button input[type=submit]:hover,
.m_button input[type=reset]:hover,
.m_button span:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .m_button a,
.m_button button,
.m_button input[type=button],
.m_button input[type=submit],
.m_button input[type=reset],
.m_button span {
    min-width: 150px;
  }
}
.m_button a.is_disabled, .m_button a[disabled],
.m_button button.is_disabled,
.m_button button[disabled],
.m_button input[type=button].is_disabled,
.m_button input[type=button][disabled],
.m_button input[type=submit].is_disabled,
.m_button input[type=submit][disabled],
.m_button input[type=reset].is_disabled,
.m_button input[type=reset][disabled],
.m_button span.is_disabled,
.m_button span[disabled] {
  color: #4C5262;
  background: #DEE1E3;
  border-color: #DEE1E3;
  pointer-events: none;
}
.m_button a.is_disabled::after, .m_button a[disabled]::after,
.m_button button.is_disabled::after,
.m_button button[disabled]::after,
.m_button input[type=button].is_disabled::after,
.m_button input[type=button][disabled]::after,
.m_button input[type=submit].is_disabled::after,
.m_button input[type=submit][disabled]::after,
.m_button input[type=reset].is_disabled::after,
.m_button input[type=reset][disabled]::after,
.m_button span.is_disabled::after,
.m_button span[disabled]::after {
  content: none;
}
.m_button a::after,
.m_button button::after,
.m_button input[type=button]::after,
.m_button input[type=submit]::after,
.m_button input[type=reset]::after,
.m_button span::after {
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e002";
  font-size: 10px;
  line-height: 10px;
  vertical-align: middle;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  .m_button > li {
    margin: 0 5px;
    display: inline-block;
    vertical-align: top;
  }
}
@media screen and (max-width: 767px) {
  .m_button > li:nth-child(n+2) {
    margin-top: 10px;
  }
}
.m_button span {
  background: #c1c1c1;
}
.m_button:not([class*=_prev]) a::after,
.m_button:not([class*=_prev]) button::after,
.m_button:not([class*=_prev]) input[type=button]::after,
.m_button:not([class*=_prev]) input[type=submit]::after,
.m_button:not([class*=_prev]) input[type=reset]::after,
.m_button:not([class*=_prev]) span::after {
  right: 20px;
}
.m_button[class*=_prev] a::after,
.m_button[class*=_prev] button::after,
.m_button[class*=_prev] input[type=button]::after,
.m_button[class*=_prev] input[type=submit]::after,
.m_button[class*=_prev] input[type=reset]::after,
.m_button[class*=_prev] span::after {
  left: 20px;
  transform: scale(-1, 1) translateY(-50%);
}
.m_button[class*=_flipped] a,
.m_button[class*=_flipped] button,
.m_button[class*=_flipped] input[type=button],
.m_button[class*=_flipped] input[type=submit],
.m_button[class*=_flipped] input[type=reset],
.m_button[class*=_flipped] span {
  color: #1A407B;
  background: #ffffff;
}
.m_button[class*=_large] a,
.m_button[class*=_large] button,
.m_button[class*=_large] input[type=button],
.m_button[class*=_large] input[type=submit],
.m_button[class*=_large] input[type=reset],
.m_button[class*=_large] span {
  font-size: 1rem;
}
@media (min-width: 768px) {
  .m_button[class*=_large] a,
.m_button[class*=_large] button,
.m_button[class*=_large] input[type=button],
.m_button[class*=_large] input[type=submit],
.m_button[class*=_large] input[type=reset],
.m_button[class*=_large] span {
    min-width: 300px;
  }
}
@media screen and (max-width: 767px) {
  .m_button[class*=_large] a,
.m_button[class*=_large] button,
.m_button[class*=_large] input[type=button],
.m_button[class*=_large] input[type=submit],
.m_button[class*=_large] input[type=reset],
.m_button[class*=_large] span {
    margin-left: 20px;
    margin-right: 20px;
    width: calc(100% - 35px);
    min-width: auto;
  }
}

.m_buttonBox {
  display: flex;
  justify-content: center;
  margin-top: 30px;
}
@media (min-width: 768px) {
  .m_buttonBox {
    gap: 60px;
  }
}
@media screen and (max-width: 767px) {
  .m_buttonBox {
    gap: 30px;
  }
}

.m_textLink,
.m_entry .wp-block-button {
  margin: 30px 0;
  text-align: center;
}
.m_textLink > a,
.m_textLink > button,
.m_entry .wp-block-button > a,
.m_entry .wp-block-button > button {
  position: relative;
  display: inline-block;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-size: 0.875rem;
  color: #1A407B;
  letter-spacing: 0.08em;
  text-decoration: none;
}
.m_textLink > a::before,
.m_textLink > button::before,
.m_entry .wp-block-button > a::before,
.m_entry .wp-block-button > button::before {
  position: absolute;
  top: 0;
  bottom: 0;
  margin: auto;
  width: 45px;
  height: 45px;
  border: 1px solid #1A407B;
  border-radius: 50%;
  box-sizing: border-box;
  content: "";
}
@media (min-width: 768px) {
  .m_textLink > a::before,
.m_textLink > button::before,
.m_entry .wp-block-button > a::before,
.m_entry .wp-block-button > button::before {
    transition: background 0.3s ease;
  }
}
.m_textLink > a::after,
.m_textLink > button::after,
.m_entry .wp-block-button > a::after,
.m_entry .wp-block-button > button::after {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e002";
  font-size: 10px;
  line-height: 10px;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .m_textLink > a::after,
.m_textLink > button::after,
.m_entry .wp-block-button > a::after,
.m_entry .wp-block-button > button::after {
    transition: color 0.3s ease, right 0.3s ease, left 0.3s ease;
  }
}
.m_textLink > a > span:not(.m_br):not(.m_pcbr):not(.m_spbr),
.m_textLink > button > span:not(.m_br):not(.m_pcbr):not(.m_spbr),
.m_entry .wp-block-button > a > span:not(.m_br):not(.m_pcbr):not(.m_spbr),
.m_entry .wp-block-button > button > span:not(.m_br):not(.m_pcbr):not(.m_spbr) {
  position: relative;
}
.m_textLink > a > span:not(.m_br):not(.m_pcbr):not(.m_spbr)::before,
.m_textLink > button > span:not(.m_br):not(.m_pcbr):not(.m_spbr)::before,
.m_entry .wp-block-button > a > span:not(.m_br):not(.m_pcbr):not(.m_spbr)::before,
.m_entry .wp-block-button > button > span:not(.m_br):not(.m_pcbr):not(.m_spbr)::before {
  position: absolute;
  right: 0;
  bottom: -4px;
  left: 0;
  content: "";
  height: 1px;
  background: #1A407B;
}
@media (min-width: 768px) {
  .m_textLink > a:hover::before,
.m_textLink > button:hover::before,
.m_entry .wp-block-button > a:hover::before,
.m_entry .wp-block-button > button:hover::before {
    background-color: #1A407B;
  }
}
@media (min-width: 768px) {
  .m_textLink > a:hover::after,
.m_textLink > button:hover::after,
.m_entry .wp-block-button > a:hover::after,
.m_entry .wp-block-button > button:hover::after {
    color: #ffffff;
  }
}
@media (min-width: 768px) {
  .m_textLink > a:hover > span:not(.m_br):not(.m_pcbr):not(.m_spbr)::before,
.m_textLink > button:hover > span:not(.m_br):not(.m_pcbr):not(.m_spbr)::before,
.m_entry .wp-block-button > a:hover > span:not(.m_br):not(.m_pcbr):not(.m_spbr)::before,
.m_entry .wp-block-button > button:hover > span:not(.m_br):not(.m_pcbr):not(.m_spbr)::before {
    animation: line 0.3s ease;
    transform-origin: left;
  }
}
.m_textLink[class*=_colorType04] > a,
.m_textLink[class*=_colorType04] > button,
.m_entry .wp-block-button[class*=_colorType04] > a,
.m_entry .wp-block-button[class*=_colorType04] > button {
  color: #ffffff;
}
.m_textLink[class*=_colorType04] > a::before,
.m_textLink[class*=_colorType04] > button::before,
.m_entry .wp-block-button[class*=_colorType04] > a::before,
.m_entry .wp-block-button[class*=_colorType04] > button::before {
  border-color: #ffffff;
}
.m_textLink[class*=_colorType04] > a > span:not(.m_br):not(.m_pcbr):not(.m_spbr)::before,
.m_textLink[class*=_colorType04] > button > span:not(.m_br):not(.m_pcbr):not(.m_spbr)::before,
.m_entry .wp-block-button[class*=_colorType04] > a > span:not(.m_br):not(.m_pcbr):not(.m_spbr)::before,
.m_entry .wp-block-button[class*=_colorType04] > button > span:not(.m_br):not(.m_pcbr):not(.m_spbr)::before {
  background: #ffffff;
}
@media (min-width: 768px) {
  .m_textLink[class*=_colorType04] > a:hover::before,
.m_textLink[class*=_colorType04] > button:hover::before,
.m_entry .wp-block-button[class*=_colorType04] > a:hover::before,
.m_entry .wp-block-button[class*=_colorType04] > button:hover::before {
    background-color: #ffffff;
  }
}
@media (min-width: 768px) {
  .m_textLink[class*=_colorType04] > a:hover::after,
.m_textLink[class*=_colorType04] > button:hover::after,
.m_entry .wp-block-button[class*=_colorType04] > a:hover::after,
.m_entry .wp-block-button[class*=_colorType04] > button:hover::after {
    color: #1A407B;
  }
}
.m_textLink:not([class*=_prev]) > a,
.m_textLink:not([class*=_prev]) > button,
.m_entry .wp-block-button:not([class*=_prev]) > a,
.m_entry .wp-block-button:not([class*=_prev]) > button {
  padding: 12px 65px 12px 0;
}
.m_textLink:not([class*=_prev]) > a::before,
.m_textLink:not([class*=_prev]) > button::before,
.m_entry .wp-block-button:not([class*=_prev]) > a::before,
.m_entry .wp-block-button:not([class*=_prev]) > button::before {
  right: 0;
}
.m_textLink:not([class*=_prev]) > a::after,
.m_textLink:not([class*=_prev]) > button::after,
.m_entry .wp-block-button:not([class*=_prev]) > a::after,
.m_entry .wp-block-button:not([class*=_prev]) > button::after {
  right: 17px;
}
@media (min-width: 768px) {
  .m_textLink:not([class*=_prev]) > a:hover::after,
.m_textLink:not([class*=_prev]) > button:hover::after,
.m_entry .wp-block-button:not([class*=_prev]) > a:hover::after,
.m_entry .wp-block-button:not([class*=_prev]) > button:hover::after {
    right: 14px;
  }
}
.m_textLink[class*=_prev] > a,
.m_textLink[class*=_prev] > button,
.m_entry .wp-block-button[class*=_prev] > a,
.m_entry .wp-block-button[class*=_prev] > button {
  padding: 12px 0 12px 65px;
}
.m_textLink[class*=_prev] > a::before,
.m_textLink[class*=_prev] > button::before,
.m_entry .wp-block-button[class*=_prev] > a::before,
.m_entry .wp-block-button[class*=_prev] > button::before {
  left: 0;
}
.m_textLink[class*=_prev] > a::after,
.m_textLink[class*=_prev] > button::after,
.m_entry .wp-block-button[class*=_prev] > a::after,
.m_entry .wp-block-button[class*=_prev] > button::after {
  left: 17px;
  transform: translateY(-50%) rotate(180deg);
}
@media (min-width: 768px) {
  .m_textLink[class*=_prev] > a:hover::after,
.m_textLink[class*=_prev] > button:hover::after,
.m_entry .wp-block-button[class*=_prev] > a:hover::after,
.m_entry .wp-block-button[class*=_prev] > button:hover::after {
    left: 14px;
  }
}

.m_tabs {
  display: flex;
}
@media (min-width: 768px) {
  .m_tabs {
    margin: 60px 0;
  }
}
@media screen and (max-width: 767px) {
  .m_tabs {
    margin: 40px 0;
  }
}
.m_tabs > li {
  font-size: 0.875rem;
  font-weight: 500;
  color: #1A407B;
  border-bottom: 1px solid #DEE1E3;
  text-align: center;
}
@media (min-width: 768px) {
  .m_tabs > li {
    flex: 1;
  }
}
.m_tabs > li:not(:last-of-type) > a {
  position: relative;
}
.m_tabs > li:not(:last-of-type) > a::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  content: "";
  width: 1px;
  height: 25px;
  background: #ECEEEF;
}
.m_tabs > li > a {
  display: block;
  padding-bottom: 20px;
  color: inherit;
  border-bottom: 4px solid transparent;
  text-decoration: none;
}
@media (min-width: 768px) {
  .m_tabs > li > a {
    transition: border 0.3s ease;
  }
}
@media (min-width: 768px) {
  .m_tabs > li > a:hover {
    border-color: #1A407B;
  }
}
.m_tabs > li.is_current > a {
  border-color: #1A407B;
}
@media (min-width: 768px) {
  .m_tabs[class*=_large] > li {
    font-size: 1rem;
  }
}
@media screen and (max-width: 767px) {
  .m_tabs[class*=_large] > li {
    font-size: 0.875rem;
  }
}
@media screen and (max-width: 767px) {
  .m_tabs:not([class*=_scroll]) > li {
    flex: 1;
  }
}
@media screen and (max-width: 767px) {
  .m_tabs[class*=_scroll] {
    overflow-x: auto;
    margin-left: -20px;
    margin-right: -20px;
  }
}
@media screen and (max-width: 767px) {
  .m_tabs[class*=_scroll] > li {
    flex-shrink: 0;
    flex-basis: 120px;
  }
}
@media screen and (max-width: 767px) {
  .m_tabs[class*=_scroll] > li:first-child {
    margin-left: 20px;
  }
}
@media screen and (max-width: 767px) {
  .m_tabs[class*=_scroll] > li:last-child {
    margin-right: 20px;
  }
}

.m_pager {
  display: flex;
  justify-content: center;
  align-items: center;
}
@media (min-width: 768px) {
  .m_pager {
    margin: 60px 0;
  }
}
@media screen and (max-width: 767px) {
  .m_pager {
    margin: 40px 0;
  }
}
.m_pager > li {
  font-size: 1rem;
}
.m_pager > li > a {
  box-sizing: border-box;
  text-decoration: none;
}
.m_pager > li:not([class]) a, .m_pager > li.is_current a {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 45px;
  height: 45px;
  text-decoration: none;
}
@media (min-width: 768px) {
  .m_pager > li:not([class]) a {
    transition: opacity 0.3s;
  }
  .m_pager > li:not([class]) a:hover {
    opacity: 0.7;
  }
}
.m_pager > li.is_current a {
  color: #ffffff;
  background: #1A407B;
  border-radius: 50%;
}
.m_pager > li.prev > a, .m_pager > li.next > a {
  position: relative;
  display: block;
  width: 45px;
  height: 45px;
  border: 1px solid #1A407B;
  border-radius: 50%;
}
@media (min-width: 768px) {
  .m_pager > li.prev > a, .m_pager > li.next > a {
    transition: background 0.3s ease;
  }
}
.m_pager > li.prev > a::after, .m_pager > li.next > a::after {
  position: absolute;
  top: 50%;
  right: 17px;
  transform: translateY(-50%);
  display: inline-block;
  font-family: "icon";
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  font-style: normal;
  font-variant: normal;
  font-weight: 400;
  speak: none;
  text-decoration: none;
  text-transform: none;
  content: "\e002";
  font-size: 10px;
  line-height: 10px;
  vertical-align: middle;
}
@media (min-width: 768px) {
  .m_pager > li.prev > a::after, .m_pager > li.next > a::after {
    transition: color 0.3s ease, right 0.3s ease;
  }
}
.m_pager > li.prev > a > span, .m_pager > li.next > a > span {
  position: absolute !important;
  width: 1px !important;
  height: 1px !important;
  padding: 0 !important;
  margin: -1px !important;
  overflow: hidden !important;
  clip: rect(0, 0, 0, 0) !important;
  white-space: nowrap !important;
  border: 0 !important;
}
@media (min-width: 768px) {
  .m_pager > li.prev > a:hover, .m_pager > li.next > a:hover {
    color: #ffffff;
    background-color: #1A407B;
  }
}
.m_pager > li.prev {
  transform: scale(-1, 1);
}
@media (min-width: 768px) {
  .m_pager > li.prev {
    margin-right: 30px;
  }
}
@media (min-width: 768px) {
  .m_pager > li.next {
    margin-left: 30px;
  }
}
@media (min-width: 768px) {
  .m_pager > li .dots {
    margin: 0 12px;
  }
}

.m_fixedNav {
  position: fixed;
  z-index: 99;
  opacity: 0;
  background: rgba(26, 34, 41, 0.9);
  transition: opacity 0.3s ease;
}
@media (min-width: 768px) {
  .m_fixedNav {
    top: 62px;
  }
}
@media (min-width: 1101px) {
  .m_fixedNav {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  .m_fixedNav {
    display: none;
  }
}
.m_fixedNav > ul {
  display: flex;
  justify-content: center;
  margin: 15px auto;
  width: 1100px;
}
.m_fixedNav > ul > li {
  font-size: 0.875rem;
  color: #ffffff;
}
.m_fixedNav > ul > li:not(:first-of-type) {
  margin-left: 40px;
}
.m_fixedNav > ul > li > a {
  color: inherit;
  text-decoration: none;
  transition: opacity 0.3s;
}
.m_fixedNav > ul > li > a:hover {
  opacity: 0.7;
}
.m_fixedNav > ul > li > a::before {
  margin-right: 5px;
  width: 6px;
  height: 6px;
  border: solid #ffffff;
  border-width: 0 1px 1px 0;
  transform: rotate(-45deg) translateX(-2px) translateY(-4px);
  display: inline-block;
  content: "";
}
.m_fixedNav > ul > li > a[href*="#"]::before {
  transform: rotate(45deg) translateX(-4px);
}
.m_fixedNav > ul > li > a .labelEn {
  margin-right: 1em;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
}
.m_fixedNav > ul > li.core {
  padding-left: 60px;
  margin-left: 60px;
  border-left: 1px solid #707070;
}
.m_fixedNav[class*=_type01] > ul > li:not(:last-of-type) {
  padding-right: 100px;
  margin-right: 60px;
  border-right: 1px solid #707070;
}

.m_pagetop {
  position: absolute;
  z-index: 10;
  bottom: 20px;
  opacity: 0;
  margin-bottom: 0;
  width: 55px;
  height: 55px;
}
@media (min-width: 768px) {
  .m_pagetop {
    right: 20px;
    transition: opacity 0.3s;
  }
  .m_pagetop:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .m_pagetop {
    right: 14px;
  }
}
.m_pagetop > a {
  display: block;
  padding: 10px 10px;
  width: 100%;
  height: 100%;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-size: 0.6875rem;
  line-height: 1;
  font-weight: 500;
  background: #ffffff;
  border-radius: 50%;
  box-shadow: 5px 5px 20px rgba(30, 52, 88, 0.15);
  box-sizing: border-box;
  letter-spacing: 0.08em;
  text-align: center;
  text-decoration: none;
}
@media (min-width: 768px) {
  .m_pagetop > a {
    transition: opacity 0.3s;
  }
  .m_pagetop > a:hover {
    opacity: 0.7;
  }
}
.m_pagetop > a::before {
  margin: 8px auto 6px;
  width: 6px;
  height: 6px;
  border: solid #1A407B;
  border-width: 1px 1px 0 0;
  transform: rotate(-45deg);
  display: block;
  content: "";
}

@keyframes line {
  0% {
    opacity: 0;
    transform: scaleX(0);
  }
  100% {
    opacity: 1;
    transform: scaleX(100%);
  }
}
/* inline module
--------------------------------------------------------------------------------------------------- */
.m_br[class*=_before]::before,
.m_br::after {
  content: "\a";
  white-space: pre;
}

.m_br[class*=_before]::after {
  content: none;
}

@media (min-width: 768px) {
  .m_pcHide {
    display: none !important;
  }
  .m_pcbr[class*=_before]::before,
.m_pcbr::after {
    content: "\a";
    white-space: pre;
  }
  .m_pcbr[class*=_before]::after {
    content: none;
  }
}
@media screen and (max-width: 767px) {
  .m_spHide {
    display: none !important;
  }
  .m_spbr[class*=_before]::before,
.m_spbr::after {
    content: "\a";
    white-space: pre;
  }
  .m_spbr[class*=_before]::after {
    content: none;
  }
}
/* modifier module
--------------------------------------------------------------------------------------------------- */
/* text align */
[class*=_alignLeft] {
  text-align: left !important;
}

@media (min-width: 768px) {
  [class*=_pcAlignLeft] {
    text-align: left !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spAlignLeft] {
    text-align: left !important;
  }
}
[class*=_alignCenter] {
  text-align: center !important;
}

@media (min-width: 768px) {
  [class*=_pcAlignCenter] {
    text-align: center !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spAlignCenter] {
    text-align: center !important;
  }
}
[class*=_alignRight] {
  text-align: right !important;
}

@media (min-width: 768px) {
  [class*=_pcAlignRight] {
    text-align: right !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spAlignRight] {
    text-align: right !important;
  }
}
[class*=_alignTop] {
  vertical-align: top !important;
}

@media (min-width: 768px) {
  [class*=_pcAlignTop] {
    vertical-align: top !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spAlignTop] {
    vertical-align: top !important;
  }
}
[class*=_alignMiddle] {
  vertical-align: middle !important;
}

@media (min-width: 768px) {
  [class*=_pcAlignMiddle] {
    vertical-align: middle !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spAlignMiddle] {
    vertical-align: middle !important;
  }
}
[class*=_alignBottom] {
  vertical-align: bottom !important;
}

@media (min-width: 768px) {
  [class*=_pcAlignBottom] {
    vertical-align: bottom !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spAlignBottom] {
    vertical-align: bottom !important;
  }
}
/* margin style */
[class*=_mt0] {
  margin-top: 0 !important;
}

@media (min-width: 768px) {
  [class*=_pcmt0] {
    margin-top: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spmt0] {
    margin-top: 0 !important;
  }
}
[class*=_mt60] {
  margin-top: 60px !important;
}

@media (min-width: 768px) {
  [class*=_pcmt60] {
    margin-top: 60px !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spmt60] {
    margin-top: 60px !important;
  }
}
[class*=_mt70] {
  margin-top: 70px !important;
}

@media (min-width: 768px) {
  [class*=_pcmt70] {
    margin-top: 70px !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spmt70] {
    margin-top: 70px !important;
  }
}
[class*=_mt80] {
  margin-top: 80px !important;
}

@media (min-width: 768px) {
  [class*=_pcmt80] {
    margin-top: 80px !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spmt80] {
    margin-top: 80px !important;
  }
}
[class*=_mt90] {
  margin-top: 90px !important;
}

@media (min-width: 768px) {
  [class*=_pcmt90] {
    margin-top: 90px !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spmt90] {
    margin-top: 90px !important;
  }
}
[class*=_mt100] {
  margin-top: 100px !important;
}

@media (min-width: 768px) {
  [class*=_pcmt100] {
    margin-top: 100px !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spmt100] {
    margin-top: 100px !important;
  }
}
[class*=_mb0] {
  margin-bottom: 0 !important;
}

@media (min-width: 768px) {
  [class*=_pcmb0] {
    margin-bottom: 0 !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spmb0] {
    margin-bottom: 0 !important;
  }
}
[class*=_mb60] {
  margin-bottom: 60px !important;
}

@media (min-width: 768px) {
  [class*=_pcmb60] {
    margin-bottom: 60px !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spmb60] {
    margin-bottom: 60px !important;
  }
}
[class*=_mb70] {
  margin-bottom: 70px !important;
}

@media (min-width: 768px) {
  [class*=_pcmb70] {
    margin-bottom: 70px !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spmb70] {
    margin-bottom: 70px !important;
  }
}
[class*=_mb80] {
  margin-bottom: 80px !important;
}

@media (min-width: 768px) {
  [class*=_pcmb80] {
    margin-bottom: 80px !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spmb80] {
    margin-bottom: 80px !important;
  }
}
[class*=_mb90] {
  margin-bottom: 90px !important;
}

@media (min-width: 768px) {
  [class*=_pcmb90] {
    margin-bottom: 90px !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spmb90] {
    margin-bottom: 90px !important;
  }
}
[class*=_mb100] {
  margin-bottom: 100px !important;
}

@media (min-width: 768px) {
  [class*=_pcmb100] {
    margin-bottom: 100px !important;
  }
}
@media screen and (max-width: 767px) {
  [class*=_spmb100] {
    margin-bottom: 100px !important;
  }
}
/* font style */
[class*=_fontBold] {
  font-weight: 700;
}

[class*=_fontItalic] {
  font-style: italic;
}

[class*=_fontNormal] {
  font-weight: 400 !important;
  font-style: normal !important;
}

[class*=_fontSmall] {
  font-size: 70% !important;
}

/* fontColor */
[class*=_colorType01] {
  color: #1A2229;
}

[class*=_colorType02] {
  color: #ABB7C1;
}

[class*=_colorType03] {
  color: #4C5262;
}

[class*=_colorType04] {
  color: #ffffff;
}

[class*=_colorType05] {
  color: #606E79;
}

[class*=_colorType06] {
  color: #ECEEEF;
}

[class*=_colorType07] {
  color: #DEE1E3;
}

[class*=_colorType08] {
  color: #F5F6F7;
}

[class*=_colorType09] {
  color: #EDF0F5;
}

[class*=_colorType10] {
  color: #1A407B;
}

[class*=_colorType11] {
  color: #004B9F;
}

[class*=_colorType12] {
  color: #DD083C;
}

/* groundColor */
[class*=_bgColorType01] {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  [class*=_bgColorType01] {
    padding-top: 110px;
    padding-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType01] {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
[class*=_bgColorType01]::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #1A2229;
}
@media (min-width: 1101px) {
  [class*=_bgColorType01]::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType01]::before {
    left: -20px;
    right: -20px;
  }
}

[class*=_bgColorType02] {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  [class*=_bgColorType02] {
    padding-top: 110px;
    padding-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType02] {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
[class*=_bgColorType02]::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #ABB7C1;
}
@media (min-width: 1101px) {
  [class*=_bgColorType02]::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType02]::before {
    left: -20px;
    right: -20px;
  }
}

[class*=_bgColorType03] {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  [class*=_bgColorType03] {
    padding-top: 110px;
    padding-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType03] {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
[class*=_bgColorType03]::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #4C5262;
}
@media (min-width: 1101px) {
  [class*=_bgColorType03]::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType03]::before {
    left: -20px;
    right: -20px;
  }
}

[class*=_bgColorType04] {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  [class*=_bgColorType04] {
    padding-top: 110px;
    padding-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType04] {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
[class*=_bgColorType04]::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #ffffff;
}
@media (min-width: 1101px) {
  [class*=_bgColorType04]::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType04]::before {
    left: -20px;
    right: -20px;
  }
}

[class*=_bgColorType05] {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  [class*=_bgColorType05] {
    padding-top: 110px;
    padding-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType05] {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
[class*=_bgColorType05]::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #606E79;
}
@media (min-width: 1101px) {
  [class*=_bgColorType05]::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType05]::before {
    left: -20px;
    right: -20px;
  }
}

[class*=_bgColorType06] {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  [class*=_bgColorType06] {
    padding-top: 110px;
    padding-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType06] {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
[class*=_bgColorType06]::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #ECEEEF;
}
@media (min-width: 1101px) {
  [class*=_bgColorType06]::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType06]::before {
    left: -20px;
    right: -20px;
  }
}

[class*=_bgColorType07] {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  [class*=_bgColorType07] {
    padding-top: 110px;
    padding-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType07] {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
[class*=_bgColorType07]::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #DEE1E3;
}
@media (min-width: 1101px) {
  [class*=_bgColorType07]::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType07]::before {
    left: -20px;
    right: -20px;
  }
}

[class*=_bgColorType08] {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  [class*=_bgColorType08] {
    padding-top: 110px;
    padding-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType08] {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
[class*=_bgColorType08]::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #F5F6F7;
}
@media (min-width: 1101px) {
  [class*=_bgColorType08]::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType08]::before {
    left: -20px;
    right: -20px;
  }
}

[class*=_bgColorType09] {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  [class*=_bgColorType09] {
    padding-top: 110px;
    padding-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType09] {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
[class*=_bgColorType09]::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #EDF0F5;
}
@media (min-width: 1101px) {
  [class*=_bgColorType09]::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType09]::before {
    left: -20px;
    right: -20px;
  }
}

[class*=_bgColorType10] {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  [class*=_bgColorType10] {
    padding-top: 110px;
    padding-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType10] {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
[class*=_bgColorType10]::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #1A407B;
}
@media (min-width: 1101px) {
  [class*=_bgColorType10]::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType10]::before {
    left: -20px;
    right: -20px;
  }
}

[class*=_bgColorType11] {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  [class*=_bgColorType11] {
    padding-top: 110px;
    padding-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType11] {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
[class*=_bgColorType11]::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #004B9F;
}
@media (min-width: 1101px) {
  [class*=_bgColorType11]::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType11]::before {
    left: -20px;
    right: -20px;
  }
}

[class*=_bgColorType12] {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  [class*=_bgColorType12] {
    padding-top: 110px;
    padding-bottom: 160px;
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType12] {
    padding-top: 80px;
    padding-bottom: 80px;
  }
}
[class*=_bgColorType12]::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -1;
  height: 100%;
  background: #DD083C;
}
@media (min-width: 1101px) {
  [class*=_bgColorType12]::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  [class*=_bgColorType12]::before {
    left: -20px;
    right: -20px;
  }
}

/* block width */
/* ※※ module
--------------------------------------------------------------------------------------------------- */
/*====================================================================================================

    libs

====================================================================================================*/
/* colorbox
--------------------------------------------------------------------------------------------------- */
/*
    Colorbox Core Style:
    The following CSS is consistent between example themes and should not be altered.
*/
:root {
  --cbox-overlay: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAB4AAAAeCAAAAAAeW/F+AAAAOklEQVR4Ae3QIQrAUADD0Lj2AIV//5uO+RE59asKz4U177rz9VAdqkU1qAbVoBpUg2pR3V/VbrVb7QHULigVcx3ZmQAAAABJRU5ErkJggg==);
  --cbox-controls: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAALAAAAAyCAMAAADLEaG/AAAAxlBMVEUAAAD///8AAAAAAAAAAAAAAAAAAAAAAABmZmbMzMy1tbXe3t7i4+PMzMzv7+/m5uYqTIX///9SUlKlpaby9PbW1tZqgaiEhIRed6FZWVm9vb3ExcVmZmaZmZno6/Ctra2Qob739/fX3efk6O95j7JEYpR4eHiKioqzvtJsg6s2VYvGzt3g5ey1tbV0iq6vu9Grt86hsMhie6TN1OFycnKHmrpac5+ZqMN9kbOClbZOaZgyUolRbZuKnLtWcJ06WY28xteGmbhVJeX1AAAAC3RSTlOIADNVdwARZpndzGjEPW4AAAPLSURBVHhe7ZqHjts4EIbdsm1Y1eXay/b0Xu7e/6VCaqlQEkVjJSc07pCBAQH6MIsP1GJM/XSnXPyPVDevXn/QOVCDfu9FXrrbbGgvvCCLBsI9bWt37h0tTEMsK6StgBY+O+88q87PjhImwghRSpGQIBUAlBJKQQNbR+Y76DyzBmdHCAMOp4F87ItgGmIoAiAKECgCVOpAGbD42o1bCwNGevUIwlAAwS8QaGB0ICV83mlQ522FidLSYuQXWBTAQgFbhxgPnUbVaymMQ1K6QUKsAFQAYHuHFB40Ex60E6aYigsaDhHno+FI3cnAVAmFaj2nOaAKQPFviAVuWL1WwmG2XMEkngSjOA6zJx5qIGs4QZzXgJnPuQbdflPhfith9Y+K4vh+F88kWADWgALALN6BATjx4wmIykF30FR4cIwwF8srFjkDRa9hLGubDguASoB2T2Cbg26ncbUUVkNgt01HvCTMlfDb1PO8+zKg0nc79jz3wmq6+kIqJUpYg9k49WRNqgCPxwKcRHiRXcQapt5W/atqgH3f33rp0ADC2BsLeJ8DU/jikhfq8uL3CIfZ1CdSduR5MzUMcpCVn4obJoC3Wz0laoSveKWuDOH2c3jk+1TOKb84h5HyGam5iypzmPilOWzztRu3/KbDpLp1swL7N50hfMFr6uJ3CBMMpZ0BSE8FimJEA7PDFL6sE748UlhvIota0A507ati8zpiP0xJtrsltLIfxkgBhDHYOxwLc4KFDlAAcSUmAA3sHe2F3b/TORBu/3JsdrgUPr7+t8J/hQlgWUCsecnhDvdjLQRKKYSH8hJrh3NhWopFqDVhsXY4FqalWAQwtSYs1g6HwmYsAva8xATuNz/2IMUO3G8vzSDl5Xx+y4MP8/k0v5NfJLyTlzrgegOvY5G7KHqYvoyiV8W8JH/u84dlXZAS/Bs5f0XSucQ+ij6KT1DNS273+70A/5hByp24vVwu37h+Cc2f7zyKotcrI5eYR7Le/1jnIO+4fZDg9YadKkiZRslmzU3hTJcxdl0Gb5QuY6cKUtY3wmppBCmfPm++MFFfV2UQfPu+uWGyThSkvGJsIz5BNS95lySJELs2AF8L2USUyzBQxyJLxm5W14yt64KUhL3j3ASPjLmOW/VUXSfJIw/Eeq1qxu31Y/0cXt44CLSbfNNhBQJbkLI6xZEBp0YsQq15ibXD5aEMh6JYcCgvsXY4O/bSsciTQEDDA3mJtcPlwaJ6xjgERBGEGFNrXmLtcHp0qwWyen6QglQHcnw4rosQYs1LrB0Ofn7wn/iBx0+cH2kdOV60OgAAAABJRU5ErkJggg==);
  --cbox-border: url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAAAEAAAAyCAQAAAA38nkBAAAAE0lEQVR4AWNgaCAW/f9PISLeLgDrojnVPQEingAAAABJRU5ErkJggg==);
  --cbox-loading-background: url(data:image/gif;base64,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);
  --cbox-loading: url(data:image/gif;base64,R0lGODlhIAAgAPUAAP///wAAAPr6+sTExOjo6PDw8NDQ0H5+fpqamvb29ubm5vz8/JKSkoaGhuLi4ri4uKCgoOzs7K6urtzc3D4+PlZWVmBgYHx8fKioqO7u7kpKSmxsbAwMDAAAAM7OzsjIyNjY2CwsLF5eXh4eHkxMTLCwsAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACH+GkNyZWF0ZWQgd2l0aCBhamF4bG9hZC5pbmZvACH5BAAKAAAAIf8LTkVUU0NBUEUyLjADAQAAACwAAAAAIAAgAAAG/0CAcEgkFjgcR3HJJE4SxEGnMygKmkwJxRKdVocFBRRLfFAoj6GUOhQoFAVysULRjNdfQFghLxrODEJ4Qm5ifUUXZwQAgwBvEXIGBkUEZxuMXgAJb1dECWMABAcHDEpDEGcTBQMDBQtvcW0RbwuECKMHELEJF5NFCxm1AAt7cH4NuAOdcsURy0QCD7gYfcWgTQUQB6Zkr66HoeDCSwIF5ucFz3IC7O0CC6zx8YuHhW/3CvLyfPX4+OXozKnDssBdu3G/xIHTpGAgOUPrZimAJCfDPYfDin2TQ+xeBnWbHi37SC4YIYkQhdy7FvLdpwWvjA0JyU/ISyIx4xS6sgfkNS4me2rtVKkgw0JCb8YMZdjwqMQ2nIY8BbcUQNVCP7G4MQq1KRivR7tiDEuEFrggACH5BAAKAAEALAAAAAAgACAAAAb/QIBwSCQmNBpCcckkEgREA4ViKA6azM8BEZ1Wh6LOBls0HA5fgJQ6HHQ6InKRcWhA1d5hqMMpyIkOZw9Ca18Qbwd/RRhnfoUABRwdI3IESkQFZxB4bAdvV0YJQwkDAx9+bWcECQYGCQ5vFEQCEQoKC0ILHqUDBncCGA5LBiHCAAsFtgqoQwS8Aw64f8m2EXdFCxO8INPKomQCBgPMWAvL0n/ff+jYAu7vAuxy8O/myvfX8/f7/Arq+v0W0HMnr9zAeE0KJlQkJIGCfE0E+PtDq9qfDMogDkGmrIBCbNQUZIDosNq1kUsEZJBW0dY/b0ZsLViQIMFMW+RKKgjFzp4fNokPIdki+Y8JNVxA79jKwHAI0G9JGw5tCqDWTiFRhVhtmhVA16cMJTJ1OnVIMo1cy1KVI5NhEAAh+QQACgACACwAAAAAIAAgAAAG/0CAcEgkChqNQnHJJCYWRMfh4CgamkzFwBOdVocNCgNbJAwGhKGUOjRQKA1y8XOGAtZfgIWiSciJBWcTQnhCD28Qf0UgZwJ3XgAJGhQVcgKORmdXhRBvV0QMY0ILCgoRmIRnCQIODgIEbxtEJSMdHZ8AGaUKBXYLIEpFExZpAG62HRRFArsKfn8FIsgjiUwJu8FkJLYcB9lMCwUKqFgGHSJ5cnZ/uEULl/CX63/x8KTNu+RkzPj9zc/0/Cl4V0/APDIE6x0csrBJwybX9DFhBhCLgAilIvzRVUriKHGlev0JtyuDvmsZUZlcIiCDnYu7KsZ0UmrBggRP7n1DqcDJEzciOgHwcwTyZEUmIKEMFVIqgyIjpZ4tjdTxqRCMPYVMBYDV6tavUZ8yczpkKwBxHsVWtaqo5tMgACH5BAAKAAMALAAAAAAgACAAAAb/QIBwSCQuBgNBcck0FgvIQtHRZCYUGSJ0IB2WDo9qUaBQKIXbLsBxOJTExUh5mB4iDo0zXEhWJNBRQgZtA3tPZQsAdQINBwxwAnpCC2VSdQNtVEQSEkOUChGSVwoLCwUFpm0QRAMVFBQTQxllCqh0kkIECF0TG68UG2O0foYJDb8VYVa0alUXrxoQf1WmZnsTFA0EhgCJhrFMC5Hjkd57W0jpDsPDuFUDHfHyHRzstNN78PPxHOLk5dwcpBuoaYk5OAfhXHG3hAy+KgLkgNozqwzDbgWYJQyXsUwGXKNA6fnYMIO3iPeIpBwyqlSCBKUqEQk5E6YRmX2UdAT5kEnHKkQ5hXjkNqTPtKAARl1sIrGoxSFNuSEFMNWoVCxEpiqyRlQY165wEHELAgAh+QQACgAEACwAAAAAIAAgAAAG/0CAcEgsKhSLonJJTBIFR0GxwFwmFJlnlAgaTKpFqEIqFJMBhcEABC5GjkPz0KN2tsvHBH4sJKgdd1NHSXILah9tAmdCC0dUcg5qVEQfiIxHEYtXSACKnWoGXAwHBwRDGUcKBXYFi0IJHmQEEKQHEGGpCnp3AiW1DKFWqZNgGKQNA65FCwV8bQQHJcRtds9MC4rZitVgCQbf4AYEubnKTAYU6eoUGuSpu3fo6+ka2NrbgQAE4eCmS9xVAOW7Yq7IgA4Hpi0R8EZBhDshOnTgcOtfM0cAlTigILFDiAFFNjk8k0GZgAxOBozouIHIOyKbFixIkECmIyIHOEiEWbPJTTQ5FxcVOMCgzUVCWwAcyZJvzy45ADYVZNIwTlIAVfNB7XRVDLxEWLQ4E9JsKq+rTdsMyhcEACH5BAAKAAUALAAAAAAgACAAAAb/QIBwSCwqFIuicklMEgVHQVHKVCYUmWeUWFAkqtOtEKqgAsgFcDFyHJLNmbZa6x2Lyd8595h8C48RagJmQgtHaX5XZUYKQ4YKEYSKfVKPaUMZHwMDeQBxh04ABYSFGU4JBpsDBmFHdXMLIKofBEyKCpdgspsOoUsLXaRLCQMgwky+YJ1FC4POg8lVAg7U1Q5drtnHSw4H3t8HDdnZy2Dd4N4Nzc/QeqLW1bnM7rXuV9tEBhQQ5UoCbJDmWKBAQcMDZNhwRVNCYANBChZYEbkVCZOwASEcCDFQ4SEDIq6WTVqQIMECBx06iCACQQPBiSabHDqzRUTKARMhSFCDrc+WNQIcOoRw5+ZIHj8ADqSEQBQAwKKLhIzowEEeGKQ0owIYkPKjHihZoBKi0KFE01b4zg7h4y4IACH5BAAKAAYALAAAAAAgACAAAAb/QIBwSCwqFIuicklMEgVHQVHKVCYUmWeUWFAkqtOtEKqgAsgFcDFyHJLNmbZa6x2Lyd8595h8C48RagJmQgtHaX5XZUUJeQCGChGEin1SkGlubEhDcYdOAAWEhRlOC12HYUd1eqeRokOKCphgrY5MpotqhgWfunqPt4PCg71gpgXIyWSqqq9MBQPR0tHMzM5L0NPSC8PCxVUCyeLX38+/AFfXRA4HA+pjmoFqCAcHDQa3rbxzBRD1BwgcMFIlidMrAxYICHHA4N8DIqpsUWJ3wAEBChQaEBnQoB6RRr0uARjQocMAAA0w4nMz4IOaU0lImkSngYKFc3ZWyTwJAALGK4fnNA3ZOaQCBQ22wPgRQlSIAYwSfkHJMrQkTyEbKFzFydQq15ccOAjUEwQAIfkEAAoABwAsAAAAACAAIAAABv9AgHBILCoUi6JySUwSBUdBUcpUJhSZZ5RYUCSq060QqqACyAVwMXIcks2ZtlrrHYvJ3zn3mHwLjxFqAmZCC0dpfldlRQl5AIYKEYSKfVKQaW5sSENxh04ABYSFGU4LXYdhR3V6p5GiQ4oKmGCtjkymi2qGBZ+6eo+3g8KDvYLDxKrJuXNkys6qr0zNygvHxL/V1sVD29K/AFfRRQUDDt1PmoFqHgPtBLetvMwG7QMes0KxkkIFIQNKDhBgKvCh3gQiqmxt6NDBAAEIEAgUOHCgBBEH9Yg06uWAIQUABihQMACgBEUHTRwoUEOBIcqQI880OIDgm5ABDA8IgUkSwAAyij1/jejAARPPIQwONBCnBAJDCEOOCnFA8cOvEh1CEJEqBMIBEDaLcA3LJIEGDe/0BAEAIfkEAAoACAAsAAAAACAAIAAABv9AgHBILCoUi6JySUwSBUdBUcpUJhSZZ5RYUCSq060QqqACyAVwMXIcks2ZtlrrHYvJ3zn3mHwLjxFqAmZCC0dpfldlRQl5AIYKEYSKfVKQaW5sSENxh04ABYSFGU4LXYdhR3V6p5GiQ4oKmGCtjkymi2qGBZ+6eo+3g8KDvYLDxKrJuXNkys6qr0zNygvHxL/V1sVDDti/BQccA8yrYBAjHR0jc53LRQYU6R0UBnO4RxmiG/IjJUIJFuoVKeCBigBN5QCk43BgFgMKFCYUGDAgFEUQRGIRYbCh2xACEDcAcHDgQDcQFGf9s7VkA0QCI0t2W0DRw68h8ChAEELSJE8xijBvVqCgIU9PjwA+UNzG5AHEB9xkDpk4QMGvARQsEDlKxMCALDeLcA0rqEEDlWCCAAAh+QQACgAJACwAAAAAIAAgAAAG/0CAcEgsKhSLonJJTBIFR0FRylQmFJlnlFhQJKrTrRCqoALIBXAxchySzZm2Wusdi8nfOfeYfAuPEWoCZkILR2l+V2VFCXkAhgoRhIp9UpBpbmxIQ3GHTgAFhIUZTgtdh2FHdXqnkaJDigqYYK2OTKaLaoYFn7p6j0wOA8PEAw6/Z4PKUhwdzs8dEL9kqqrN0M7SetTVCsLFw8d6C8vKvUQEv+dVCRAaBnNQtkwPFRQUFXOduUoTG/cUNkyYg+tIBlEMAFYYMAaBuCekxmhaJeSeBgiOHhw4QECAAwcCLhGJRUQCg3RDCmyUVmBYmlOiGqmBsPGlyz9YkAlxsJEhqCubABS9AsPgQAMqLQfM0oTMwEZ4QpLOwvMLxAEEXIBG5aczqtaut4YNXRIEACH5BAAKAAoALAAAAAAgACAAAAb/QIBwSCwqFIuicklMEgVHQVHKVCYUmWeUWFAkqtOtEKqgAsgFcDFyHJLNmbZa6x2Lyd8595h8C48RahAQRQtHaX5XZUUJeQAGHR0jA0SKfVKGCmlubEhCBSGRHSQOQwVmQwsZTgtdh0UQHKIHm2quChGophuiJHO3jkwOFB2UaoYFTnMGegDKRQQG0tMGBM1nAtnaABoU3t8UD81kR+UK3eDe4nrk5grR1NLWegva9s9czfhVAgMNpWqgBGNigMGBAwzmxBGjhACEgwcgzAPTqlwGXQ8gMgAhZIGHWm5WjelUZ8jBBgPMTBgwIMGCRgsygVSkgMiHByD7DWDmx5WuMkZqDLCU4gfAq2sACrAEWFSRLjUfWDopCqDTNQIsJ1LF0yzDAA90UHV5eo0qUjB8mgUBACH5BAAKAAsALAAAAAAgACAAAAb/QIBwSCwqFIuickk0FIiCo6A4ZSoZnRBUSiwoEtYipNOBDKOKKgD9DBNHHU4brc4c3cUBeSOk949geEQUZA5rXABHEW4PD0UOZBSHaQAJiEMJgQATFBQVBkQHZKACUwtHbX0RR0mVFp0UFwRCBSQDSgsZrQteqEUPGrAQmmG9ChFqRAkMsBd4xsRLBBsUoG6nBa14E4IA2kUFDuLjDql4peilAA0H7e4H1udH8/Ps7+3xbmj0qOTj5mEWpEP3DUq3glYWOBgAcEmUaNI+DBjwAY+dS0USGJg4wABEXMYyJNvE8UOGISKVCNClah4xjg60WUKyINOCUwrMzVRARMGENWQ4n/jpNTKTm15J/CTK2e0MoD+UKmHEs4onVDVVmyqdpAbNR4cKTjqNSots07EjzzJh1S0IADsAAAAAAAAAAAA=);
}

#colorbox, #cboxOverlay, #cboxWrapper {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 9999;
  overflow: visible;
  -webkit-transform: translate3d(0, 0, 0);
}

#cboxWrapper {
  max-width: none;
}

#cboxOverlay {
  position: fixed;
  width: 100%;
  height: 100%;
}

#cboxMiddleLeft, #cboxBottomLeft {
  clear: left;
}

#cboxContent {
  position: relative;
}

#cboxLoadedContent {
  overflow: auto;
  -webkit-overflow-scrolling: touch;
}

#cboxTitle {
  margin: 0;
}

#cboxLoadingOverlay, #cboxLoadingGraphic {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}

#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow {
  cursor: pointer;
}

.cboxPhoto {
  float: left;
  margin: auto;
  border: 0;
  display: block;
  max-width: none;
  -ms-interpolation-mode: bicubic;
}

.cboxIframe {
  width: 100%;
  height: 100%;
  display: block;
  border: 0;
  padding: 0;
  margin: 0;
}

#colorbox, #cboxContent, #cboxLoadedContent {
  box-sizing: content-box;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
}

/*
    User Style:
    Change the following styles to modify the appearance of Colorbox.  They are
    ordered & tabbed in a way that represents the nesting of the generated HTML.
*/
/* #cboxOverlay{background: var(--cbox-overlay) repeat 0 0; opacity: 0.9; filter: alpha(opacity = 90);} */
#colorbox {
  outline: 0;
}

/* #cboxTopLeft{width:21px; height:21px; background:var(--cbox-controls) no-repeat -101px 0;} */
/* #cboxTopRight{width:21px; height:21px; background:var(--cbox-controls) no-repeat -130px 0;} */
/* #cboxBottomLeft{width:21px; height:21px; background:var(--cbox-controls) no-repeat -101px -29px;} */
/* #cboxBottomRight{width:21px; height:21px; background:var(--cbox-controls) no-repeat -130px -29px;} */
/* #cboxMiddleLeft{width:21px; background:var(--cbox-controls) left top repeat-y;} */
/* #cboxMiddleRight{width:21px; background:var(--cbox-controls) right top repeat-y;} */
/* #cboxTopCenter{height:21px; background:var(--cbox-border) 0 0 repeat-x;} */
/* #cboxBottomCenter{height:21px; background:var(--cbox-border) 0 -29px repeat-x;} */
#cboxContent {
  background: #fff;
  overflow: visible;
}

.cboxIframe {
  background: #fff;
}

#cboxError {
  padding: 50px;
  border: 1px solid #ccc;
}

/* #cboxLoadedContent{margin-bottom:28px;} */
#cboxTitle {
  position: absolute;
  bottom: 4px;
  left: 0;
  text-align: center;
  width: 100%;
  color: #949494;
}

#cboxCurrent {
  position: absolute;
  bottom: 4px;
  left: 58px;
  color: #949494;
}

#cboxLoadingOverlay {
  background: var(--cbox-loading-background) no-repeat center center;
}

#cboxLoadingGraphic {
  background: var(--cbox-loading) no-repeat center center;
}

/* these elements are buttons, and may need to have additional styles reset to avoid unwanted base styles */
#cboxPrevious, #cboxNext, #cboxSlideshow, #cboxClose {
  border: 0;
  padding: 0;
  margin: 0;
  overflow: visible;
  width: auto;
  background: none;
}

/* avoid outlines on :active (mouseclick), but preserve outlines on :focus (tabbed navigating) */
#cboxPrevious:active, #cboxNext:active, #cboxSlideshow:active, #cboxClose:active {
  outline: 0;
}

#cboxSlideshow {
  position: absolute;
  bottom: 4px;
  right: 30px;
  color: #0092ef;
}

#cboxPrevious {
  position: absolute;
  bottom: 0;
  left: 0;
  background: var(--cbox-controls) no-repeat -75px 0;
  width: 25px;
  height: 25px;
  text-indent: -9999px;
}

#cboxPrevious:hover {
  background-position: -75px -25px;
}

#cboxNext {
  position: absolute;
  bottom: 0;
  left: 27px;
  background: var(--cbox-controls) no-repeat -50px 0;
  width: 25px;
  height: 25px;
  text-indent: -9999px;
}

#cboxNext:hover {
  background-position: -50px -25px;
}

#cboxClose {
  position: absolute;
  bottom: 0;
  right: 0;
  text-indent: -9999px;
}

/* #cboxClose:hover{background-position:-25px -25px;} */
/*
  The following fixes a problem where IE7 and IE8 replace a PNG's alpha transparency with a black fill
  when an alpha filter (opacity change) is set on the element or ancestor element.  This style is not applied to or needed in IE9.
  See: http://jacklmoore.com/notes/ie-transparency-problems/
*/
.cboxIE #cboxTopLeft,
.cboxIE #cboxTopCenter,
.cboxIE #cboxTopRight,
.cboxIE #cboxBottomLeft,
.cboxIE #cboxBottomCenter,
.cboxIE #cboxBottomRight,
.cboxIE #cboxMiddleLeft,
.cboxIE #cboxMiddleRight {
  filter: progid:DXImageTransform.icrosoft.gradient(startColorstr=#00FFFFFF,endColorstr=#00FFFFFF);
}

#cboxOverlay {
  background: rgba(34, 41, 38, 0.5);
}

#cboxClose {
  top: -40px;
  bottom: auto;
  overflow: hidden;
  display: inline-block;
  text-indent: 200%;
  white-space: nowrap;
  line-height: 1;
  background-image: url("../../images/common/mod_img_sprite.png");
  width: 30px;
  height: 30px;
  background-position: -170px -40px;
  background-size: 270px 141px;
}

/* slick
--------------------------------------------------------------------------------------------------- */
/* Slider */
.slick-slider {
  position: relative;
  display: block;
  box-sizing: border-box;
  -webkit-user-select: none;
  user-select: none;
  -webkit-touch-callout: none;
  -khtml-user-select: none;
  touch-action: pan-y;
  -webkit-tap-highlight-color: transparent;
}

.slick-list {
  overflow: hidden;
  position: relative;
  display: block;
  margin: 0;
  padding: 0;
}
.slick-list:focus {
  outline: none;
}
.slick-list.dragging {
  cursor: pointer;
  cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
  transform: translate3d(0, 0, 0);
}

.slick-track {
  position: relative;
  top: 0;
  left: 0;
  display: block;
  margin-right: auto;
  margin-left: auto;
}
.slick-track:before, .slick-track:after {
  display: table;
  content: "";
}
.slick-track:after {
  clear: both;
}
.slick-loading .slick-track {
  visibility: hidden;
}

.slick-slide {
  float: left;
  display: none;
  height: 100%;
  min-height: 1px;
}
[dir=rtl] .slick-slide {
  float: right;
}
.slick-slide img {
  display: block;
}
.slick-slide.slick-loading img {
  display: none;
}
.slick-slide.dragging img {
  pointer-events: none;
}
.slick-initialized .slick-slide {
  display: block;
}
.slick-loading .slick-slide {
  visibility: hidden;
}
.slick-vertical .slick-slide {
  display: block;
  border: 1px solid transparent;
  height: auto;
}

.slick-arrow.slick-hidden {
  display: none;
}

/*====================================================================================================

    unique

====================================================================================================*/
/* home
--------------------------------------------------------------------------------------------------- */
#container.home {
  padding-top: 0;
  padding-bottom: 0;
}
#container.home .a_mainvisual {
  position: relative;
}
@media (min-width: 1101px) {
  #container.home .a_mainvisual {
    margin-left: calc(50% - 50vw);
    margin-right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  #container.home .a_mainvisual {
    margin-left: -20px;
    margin-right: -20px;
  }
}
#container.home .a_mainvisual::before, #container.home .a_mainvisual::after {
  position: absolute;
  top: 0;
  z-index: 2;
  height: 100%;
  display: block;
  content: "";
}
#container.home .a_mainvisual::before {
  background: rgba(255, 255, 255, 0.15);
  transform: skewX(30deg);
}
@media (min-width: 768px) {
  #container.home .a_mainvisual::before {
    right: 370px;
    width: 50px;
  }
}
@media screen and (max-width: 767px) {
  #container.home .a_mainvisual::before {
    right: 250px;
    width: 35px;
  }
}
#container.home .a_mainvisual::after {
  right: 0;
  background: rgba(255, 255, 255, 0.15);
  clip-path: polygon(100% 0, 0 50%, 100% 100%);
}
@media (min-width: 768px) {
  #container.home .a_mainvisual::after {
    width: 230px;
  }
}
@media screen and (max-width: 767px) {
  #container.home .a_mainvisual::after {
    width: 160px;
  }
}
#container.home .a_mainvisual .movie::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 1;
  background: rgba(56, 87, 121, 0.4);
}
#container.home .a_mainvisual .movie video {
  width: 100%;
}
@media screen and (max-width: 767px) {
  #container.home .a_mainvisual .movie video {
    height: 570px;
    object-fit: cover;
  }
}
#container.home .a_mainvisual .body {
  position: absolute;
  top: 50%;
  z-index: 2;
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  #container.home .a_mainvisual .body {
    left: calc((100% - 1100px) / 2);
    margin: -20px 0 0 0;
  }
}
@media screen and (max-width: 767px) {
  #container.home .a_mainvisual .body {
    left: 30px;
    right: 30px;
    margin: 30px 0 0 0;
  }
}
#container.home .a_mainvisual .body .heading {
  margin-top: 0;
}
@media (min-width: 768px) {
  #container.home .a_mainvisual .body .heading {
    margin-bottom: 30px;
  }
}
@media screen and (max-width: 767px) {
  #container.home .a_mainvisual .body .heading {
    margin-bottom: 20px;
  }
}
@media screen and (max-width: 340px) {
  #container.home .a_mainvisual .body .heading img {
    width: 100%;
  }
}
#container.home .a_mainvisual .body .copy {
  color: #ffffff;
  letter-spacing: 0.05em;
}
@media (min-width: 768px) {
  #container.home .a_mainvisual .body .copy {
    font-size: 1.125rem;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  #container.home .a_mainvisual .body .copy {
    font-size: 0.875rem;
    line-height: 2;
  }
}
#container.home .a_mainvisual .scroll {
  display: flex;
  align-items: center;
  position: absolute;
  right: 20px;
  bottom: 80px;
  content: "";
  z-index: 2;
  width: 86px;
  font-family: "EB Garamond", "Noto Sans JP", "Original Yu Gothic", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", serif;
  font-size: 0.9375rem;
  line-height: 1;
  color: #ffffff;
  letter-spacing: 0.04em;
  transform: rotate(90deg);
}
@media (min-width: 768px) {
  #container.home .a_mainvisual .scroll {
    margin-right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  #container.home .a_mainvisual .scroll {
    display: none;
  }
}
#container.home .a_mainvisual .scroll span {
  position: relative;
  display: inline-block;
  overflow: hidden;
  margin-left: 10px;
  width: 40px;
  height: 1px;
  transform: translateY(1px);
}
#container.home .a_mainvisual .scroll span::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  content: "";
  width: 100%;
  height: 1px;
  background: #ffffff;
  animation: bar 1.5s ease-in-out infinite;
  display: inline-block;
  content: "";
}
#container.home .a_news {
  position: relative;
}
@media (min-width: 768px) {
  #container.home .a_news {
    padding: 120px 0 160px;
  }
}
@media screen and (max-width: 767px) {
  #container.home .a_news {
    padding: 80px 0 100px;
  }
}
#container.home .a_service {
  position: relative;
}
@media (min-width: 768px) {
  #container.home .a_service {
    padding: 120px 0 0;
  }
}
@media screen and (max-width: 767px) {
  #container.home .a_service {
    padding: 80px 0 100px;
  }
}
#container.home .a_about {
  position: relative;
}
@media (min-width: 768px) {
  #container.home .a_about {
    padding: 120px 0 160px;
  }
}
@media screen and (max-width: 767px) {
  #container.home .a_about {
    padding: 80px 0 100px;
  }
}
@media (min-width: 768px) {
  #container.home .a_about .m_media:not([class*=_flipped]) .image {
    margin-right: -90px;
  }
}
@media screen and (max-width: 767px) {
  #container.home .a_about .m_media:not([class*=_flipped]) .image {
    margin-left: -20px;
  }
}
@media (min-width: 768px) {
  #container.home .a_about .m_media[class*=_flipped] .image {
    margin-left: -90px;
  }
}
@media screen and (max-width: 767px) {
  #container.home .a_about .m_media[class*=_flipped] .image {
    margin-right: -20px;
  }
}

@keyframes bar {
  0% {
    transform: translateX(-100%);
  }
  100% {
    transform: translateX(100%);
  }
}
/* service
--------------------------------------------------------------------------------------------------- */
#container.service .a_service {
  margin-top: -80px;
}
#container.service .a_service::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: -2;
  height: 100%;
  background: #1A407B;
}
@media (min-width: 1101px) {
  #container.service .a_service::before {
    left: calc(50% - 50vw);
    right: calc(50% - 50vw);
  }
}
@media screen and (max-width: 767px) {
  #container.service .a_service::before {
    left: -20px;
    right: -20px;
  }
}

/* recruitment
--------------------------------------------------------------------------------------------------- */
#container.recruitment {
  padding-top: 0;
  padding-bottom: 0;
}
#container.recruitment #mainContents {
  margin-bottom: 0;
}
@media (min-width: 768px) {
  #container.recruitment #mainContents {
    margin-top: 0;
  }
}
@media screen and (max-width: 767px) {
  #container.recruitment #mainContents {
    margin-top: 60px;
  }
}
#container.recruitment #mainContents::before {
  content: none;
}
#container.recruitment .a_mainvisual {
  position: relative;
}
@media (min-width: 1101px) {
  #container.recruitment .a_mainvisual {
    margin: 0 calc(50% - 50vw) 140px;
  }
}
@media screen and (max-width: 767px) {
  #container.recruitment .a_mainvisual {
    display: flex;
    flex-direction: column;
    margin: 0 -20px 40px;
  }
}
@media screen and (max-width: 767px) {
  #container.recruitment .a_mainvisual .movie {
    order: 1;
    position: relative;
    height: 410px;
  }
}
#container.recruitment .a_mainvisual .movie::before {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  z-index: 1;
  background-size: cover;
  background-position: 50%;
}
@media (min-width: 768px) {
  #container.recruitment .a_mainvisual .movie::before {
    background-image: url(/bdx-website/images/recruitment/recruitment_mv_bg_mask.png);
  }
}
@media screen and (max-width: 767px) {
  #container.recruitment .a_mainvisual .movie::before {
    background-image: url(/bdx-website/images/recruitment/recruitment_mv_bg_mask_@2x.png);
  }
}
#container.recruitment .a_mainvisual .movie::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  content: "";
  background: rgba(56, 87, 121, 0.4);
}
#container.recruitment .a_mainvisual .movie video {
  width: 100%;
}
@media (min-width: 768px) {
  #container.recruitment .a_mainvisual .movie video {
    margin-left: auto;
    margin-right: -330px;
    width: calc(100% - 70px);
  }
}
@media screen and (max-width: 767px) {
  #container.recruitment .a_mainvisual .movie video {
    height: 410px;
    object-fit: cover;
  }
}
@media (min-width: 768px) {
  #container.recruitment .a_mainvisual .body {
    position: absolute;
    z-index: 2;
    bottom: 80px;
    left: calc((100% - 1100px) / 2);
    margin: -20px 0 0 0;
  }
}
@media screen and (max-width: 767px) {
  #container.recruitment .a_mainvisual .body {
    order: 2;
    position: relative;
    z-index: 2;
    margin: -20px 30px 0 30px;
  }
}
#container.recruitment .a_mainvisual .body .heading {
  margin-top: 0;
  margin-bottom: 0;
  font-weight: 700;
  color: #1A2229;
  letter-spacing: 0.04em;
}
@media (min-width: 768px) {
  #container.recruitment .a_mainvisual .body .heading {
    font-size: 3.375rem;
    line-height: 1.3703703704;
  }
}
@media screen and (max-width: 767px) {
  #container.recruitment .a_mainvisual .body .heading {
    font-size: 1.75rem;
    line-height: 1.4285714286;
  }
}
#container.recruitment .a_mainvisual .body .text {
  margin-top: -20px;
  text-align: right;
}
@media (min-width: 768px) {
  #container.recruitment .a_mainvisual .body .text {
    margin-right: -100px;
  }
}
@media screen and (max-width: 767px) {
  #container.recruitment .a_mainvisual .body .text {
    margin-right: 20px;
  }
}
@media (min-width: 768px) {
  #container.recruitment .growthBox {
    margin-inline: 60px;
  }
}
@media (min-width: 768px) {
  #container.recruitment .growthBox .item .m_bgHeading {
    margin-inline: -60px;
  }
}
@media screen and (max-width: 767px) {
  #container.recruitment .growthBox .item .m_bgHeading {
    margin-inline: -20px;
  }
}
#container.recruitment .growthBox .item .image img {
  width: 100%;
}
@media screen and (max-width: 767px) {
  #container.recruitment .growthBox .item .image + .m_numHeading {
    margin-block-start: 30px;
  }
}
@media screen and (max-width: 767px) {
  #container.recruitment .growthBox .item .m_numHeading + .m_borderHeading {
    margin-block-start: 30px;
  }
}
#container.recruitment .growthBox .item:not(:first-of-type) {
  margin-block-start: 80px;
}

/* interview
--------------------------------------------------------------------------------------------------- */
#container.interview .leadBox {
  display: grid;
}
#container.interview .leadBox .lead {
  z-index: 10;
  grid-column: 1/2;
  grid-row: 1/2;
  align-self: end;
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
#container.interview .leadBox .lead span {
  display: inline-block;
  background: #ffffff;
}
#container.interview .leadBox .bg {
  grid-column: 1/2;
  grid-row: 1/2;
}
#container.interview .leadBox .bg img {
  max-width: 100%;
  max-height: 100%;
  height: auto;
  object-fit: cover;
}
#container.interview .leadBox[class*=_flipped] .lead {
  align-items: flex-end;
}
@media (min-width: 768px) {
  #container.interview .leadBox {
    margin: 0 0 50px;
  }
  #container.interview .leadBox .lead {
    gap: 10px;
    margin: 0 0 20px;
    font-size: 2.875rem;
    line-height: 1.8695652174;
  }
  #container.interview .leadBox .lead span {
    padding: 0 20px;
  }
}
@media screen and (max-width: 767px) {
  #container.interview .leadBox {
    margin: 0 -20px 66px;
  }
  #container.interview .leadBox .lead {
    gap: 5px;
    margin: 0 20px 20px;
    line-height: 1.84;
    font-size: clamp(18px, 5.6818181818vw, 25px);
  }
  #container.interview .leadBox .lead span {
    padding: 0 10px;
  }
}
#container.interview .media .image img {
  max-width: 100%;
  max-height: 100%;
  height: auto;
  object-fit: cover;
}
#container.interview .media .body > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  #container.interview .media {
    display: flex;
    gap: 40px;
    margin: 80px 0;
  }
  #container.interview .media .image {
    margin: 0 0 0 -90px;
  }
  #container.interview .media .body {
    width: 530px;
    font-size: 1rem;
    line-height: 2;
  }
  #container.interview .media[class*=_pcFlipped] {
    flex-direction: row-reverse;
  }
  #container.interview .media[class*=_pcFlipped] .image {
    margin: 0 -90px 0 0;
  }
  #container.interview .media + .textSection {
    margin-bottom: 80px;
  }
}
@media screen and (max-width: 767px) {
  #container.interview .media {
    margin: 50px 0;
  }
  #container.interview .media .body {
    margin: 20px 0 0;
    font-size: 0.875rem;
    line-height: 1.8571428571;
  }
  #container.interview .media + .textSection {
    margin-bottom: 50px;
  }
}
#container.interview .messageBox {
  background: #F5F6F7 no-repeat;
}
#container.interview .messageBox .body > *:last-child {
  margin-bottom: 0 !important;
}
@media (min-width: 768px) {
  #container.interview .messageBox {
    margin: 80px 0;
    padding: 60px 60px 60px;
    background-image: url(/bdx-website/images/recruitment/interview/cmn_bg_messageBox.png);
    background-size: 191px 195px;
    background-position: 0 0;
  }
  #container.interview .messageBox .heading {
    margin: 0 0 20px;
    font-size: 1.25rem;
    line-height: 1.2;
  }
  #container.interview .messageBox .body {
    font-size: 1rem;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  #container.interview .messageBox {
    margin: 50px 0;
    padding: 40px 20px 40px;
    background-image: url(/bdx-website/images/recruitment/interview/cmn_bg_messageBox_@2x.png);
    background-size: 180px 155px;
    background-position: 100% 0;
  }
  #container.interview .messageBox .heading {
    margin: 0 0 20px;
    font-size: 1.25rem;
    line-height: 1.2;
  }
  #container.interview .messageBox .body {
    font-size: 0.875rem;
    line-height: 1.8571428571;
  }
}
@media (min-width: 768px) {
  #container.interview .textSection {
    width: 800px;
    margin: 0 auto;
    font-size: 1rem;
    line-height: 2;
  }
}
@media screen and (max-width: 767px) {
  #container.interview .textSection {
    font-size: 0.875rem;
    line-height: 1.8571428571;
  }
}
#container.interview .m_memberList + .m_textLink {
  margin-top: 60px;
}