@charset "UTF-8";
/* font
========================================================================== */
@import url(https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+Antique:wght@500;700;900&display=swap);
/* mixin
========================================================================== */
/* reset
========================================================================== */
body, h1, h2, h3, h4, div, p, ul, ol, li, dl, dt, dd, header, nav, section, main {
  margin: 0;
  padding: 0;
}

h1, h2, h3, h4 {
  font-weight: normal;
}

header, nav, section, main {
  display: block;
}

input {
  vertical-align: middle;
}

ol, ul {
  list-style: none;
}

em {
  font-style: normal;
}

table {
  width: 100%;
  border-spacing: 0;
  border-collapse: collapse;
  table-layout: fixed;
}

table th,
table td {
  word-break: break-all;
}

img,
a img {
  border: none;
}

img {
  vertical-align: top;
  font-size: 0;
  line-height: 0;
}

:root * {
  box-sizing: border-box;
}

a {
  word-wrap: break-word;
  text-decoration: none;
  color: #000000;
}

*:focus {
  outline: none;
}

html {
  font-size: 62.5%;
}
@media screen and (max-width: 767px) {
  html {
    height: -webkit-fill-available;
  }
}

body {
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
  font-weight: 500;
  color: #000000;
  font-size: 1.8rem;
  line-height: 2;
  padding-top: 85px;
}
@media screen and (max-width: 1060px) {
  body {
    padding-top: 60px;
  }
}
@media screen and (max-width: 767px) {
  body {
    min-width: 100%;
    min-height: 100vh;
    min-height: -webkit-fill-available;
    font-size: 1.6rem;
    position: relative;
  }
}

input[type="submit"],
input[type="text"],
input[type="email"],
button, textarea, select {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font-size: 18px;
  line-height: 2;
  color: #000000;
  font-family: 'Zen Kaku Gothic Antique', sans-serif;
}

::placeholder {
  color: #ccc;
}

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

select::-ms-expand {
  display: none;
}

/* layout
--------------------------------------------- */
main {
  padding: 10px 0 80px 0;
}
@media screen and (max-width: 767px) {
  main {
    padding: 50px 0 60px 0;
  }
  main > section {
    padding-top: 0;
  }
}

section,
.section {
  padding: 56px 0 0 0;
}

.l_inner {
  width: 100%;
  max-width: 1220px;
  margin: 0 auto;
  padding:0 30px;
}
@media screen and (max-width: 767px) {
  .l_inner {
    width: 100%;
    padding: 0 20px;
  }
}
.l_inner_type02 {
  width: 100%;
  max-width: 960px;
}
@media screen and (max-width: 767px) {
  .l_inner_type02 {
    width: 100%;
  }
}

.l_right {
  display: flex;
  justify-content: flex-end;
}

.l_center {
  width: 100%;
  display: flex;
  justify-content: center;
}

.is_sp {
  display: none;
}
@media screen and (max-width: 767px) {
  .is_sp {
    display: block;
  }
}

.l_font {
  font-size: 110%;
}

@media screen and (max-width: 767px) {
  .is_pc {
    display: none;
  }
}

.topicpath {
  display: flex;
  flex-wrap: wrap;
  margin: 0 30px;
}
@media screen and (max-width: 767px) {
  .topicpath {
    display: none;
  }
}
.topicpath li {
  font-size: 1.2rem;
  position: relative;
}
.topicpath li + li {
  padding-left: 15px;
}
.topicpath li + li:before {
  content: '>';
  position: absolute;
  top: -1px;
  left: 4px;
}

/* header
--------------------------------------------- */
header {
  width: 100%;
  height: 85px;
  padding: 5px  30px 0;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-bottom: 1px solid #D1DAE1;
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 30;
  /* nav */
}
@media screen and (max-width: 1350px){
  header{
    padding: 0 20px;
  }
}
@media screen and (max-width: 981px) {
  header {
    display: block;
    width: 100%;
    height: 100vh;
    height: auto;
    padding: 0;
    border-bottom: none;
  }
}
header > div {
  line-height: 1;
}
@media screen and (max-width: 980px) {
  header > div {
    height: 60px;
    padding: 20px 10px;
    border-bottom: 1px solid #D1DAE1;
    background: #ffffff;
    position: relative;
    z-index: 22;
  }
}
header > div .logo {
  display: block;
}
@media screen and (max-width: 1350px) {
  header>div .logo img {
    width: 120px;
    height: 30px;
  }
}
@media screen and (max-width: 1060px) {
  header > div .logo img {
    width: 110px;
    height: 20px;
  }
}
header > div svg {
  fill: #2A6AB2;
}
header > div .nav_btn {
  width: 46px;
  height: 46px;
  position: fixed;
  top: 7px;
  right: 0;
  text-align: center;
}
@media screen and (min-width: 981px) {
  header > div .nav_btn {
    display: none;
  }
}
header > div .nav_btn span {
  display: block;
  position: absolute;
  top: 50%;
  left: 50%;
  background: #000000;
  width: 20px;
  height: 4px;
  margin-left: -10px;
  transition: all 0.3s ease-out;
  cursor: pointer;
}
header > div .nav_btn span:nth-child(1) {
  margin-top: 3px;
}
header > div .nav_btn span:nth-child(2) {
  margin-top: -7px;
}
@media screen and (max-width: 980px) {
  header > nav {
    position: fixed;
    left: 0;
    top: -110vh;
    z-index: -1;
    width: 100%;
    height: calc(100vh - 60px);
    background: #006AB6;
    padding: 13px 0 0 0;
    z-index: 20;
    transition: all 0.3s ease;
    overflow-y: auto;
  }
}
header > nav .nav {
  display: flex;
  position: relative;
}
@media screen and (max-width: 980px) {
  header > nav .nav {
    flex-direction: column;
  }
}
header > nav .nav > li {
  display: flex;
  align-items: center;
  justify-content: center;
  position: relative;
  height: 85px;
}
@media screen and (max-width: 980px) {
  header > nav .nav > li {
    display: block;
    height: auto;
    padding: 0 16px;
  }
  header > nav .nav > li + li {
    border-top: 1px solid rgba(255, 255, 255, 0.5);
  }
}
header > nav .nav li.disabled {
  opacity: 0.2;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  header > nav .nav li.disabled {
    display: none;
  }
}
header > nav .nav > li > a:not(.btn) {
  display: block;
  padding: 20px 10px 20px 10px;
  font-size: 1.6rem;
  letter-spacing: -0.025em;
  font-weight: 900;
  z-index: 10;
}
@media screen and (max-width: 1350px) {
  header>nav .nav>li>a:not(.btn) {
    font-size: 1.2rem;
    padding-right: 7.5px;
    padding-left: 7.5px;
  }
}
@media screen and (max-width: 980px) {
  header > nav .nav > li > a:not(.btn) {
    padding-right: 12px;
    padding-left: 12px;
  }
}
@media screen and (min-width: 901px) {
  header > nav .nav > li > a:not(.btn) {
    transition: opacity 0.5s ease-out;
  }
  header > nav .nav > li > a:not(.btn):hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 980px) {
  header > nav .nav > li > a:not(.btn) {
    padding: 9px 0 10px 0;
    font-size: 1.6rem;
    color: #ffffff;
    position: relative;
  }
  header > nav .nav > li > a:not(.btn).nav_arrow:after {
    content: '';
    display: block;
    width: 6px;
    height: 6px;
    border-top: 2px solid #ffffff;
    border-right: 2px solid #ffffff;
    position: absolute;
    top: 50%;
    right: 2px;
    margin-top: -4px;
    transform: rotate(135deg);
  }
  header > nav .nav > li > a:not(.btn).nav_arrow.is_open:after {
    transform: rotate(-45deg);
  }
}
@media screen and (min-width: 901px) {
  header > nav .nav > li:hover .nav_second {
    visibility: visible;
    opacity: 1;
    top: 85px;
  }
}
header > nav .nav > li.header_btn {
  margin-left: 20px;
}
@media screen and (max-width: 1200px) {
  header > nav .nav > li.header_btn {
    margin-left: 8px;
  }
}
@media screen and (max-width: 980px) {
  header > nav .nav > li.header_btn {
    margin-left: 0;
    padding: 20px 50px;
  }
}
@media screen and (max-width: 980px) {
  .header_btn_pc {
    display: none;
  }
}
@media screen and (min-width: 980px) {
  .header_btn_sp {
    display: none;
  }
}



header > nav .nav > li.header_btn .btn {
  width: 200px;
  height: 54px;
  font-size: 1.6rem;
}
@media screen and (max-width: 1350px) {
  header>nav .nav>li.header_btn .btn {
    width: 130px;
    height: 40px;
    padding-right: 15px;
    padding-left: 15px;
    font-size: 1.4rem;
  }
}
@media screen and (max-width: 980px) {
  header > nav .nav > li.header_btn .btn {
    width: 170px;
    height: 54px;
    padding-right: 20px;
    font-size: 1.6rem;
    padding-left: 20px;
  }
}
@media screen and (max-width: 980px) {
  header > nav .nav > li.header_btn .btn {
    width: 100%;
    height: 64px;
    color: #006AB6;
    font-size: 1.8rem;
    background: #ffffff;
  }
  header > nav .nav > li.header_btn .btn + .btn {
    margin-top: 30px;
  }
}
header > nav .nav > li.header_btn .btn:before {
  right: 18px;
}
@media screen and (max-width: 1060px) {
  header > nav .nav > li.header_btn .btn:before {
    right: 22px;
    background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13px 11px"><path fill="%23006AB6" d="M760.218,370.788h-2.793l-.017.018,4.483,4.482h-8.9v2h8.83l-4.408,4.407.093.093h2.643l5.538-5.538Z" transform="translate(-752.985 -370.788)" /></svg>');
  }
}
header > nav .nav > li.header_btn .nav_second {
  border-color: header > nav .nav > li.header_btn .nav_second color01;
}
header > nav .nav > li.header_btn .nav_second li + li {
  border-top: 1px solid #ffffff;
}
header > nav .nav > li.header_btn .nav_second li a {
  background: #2A6AB2;
  color: #ffffff;
}
header > nav .nav_second {
  width: 170px;
  position: absolute;
  top: 80px;
  left: 50%;
  margin-left: -85px;
  border: 1px solid #D1DAE1;
  visibility: hidden;
  opacity: 0;
  z-index: 1;
  border-top: none;
}
@media screen and (min-width: 1061px) {
  header > nav .nav_second {
    transition: all .3s ease;
  }
}
@media screen and (max-width: 900px) {
  header > nav .nav_second {
    width: 100%;
    padding: 12px 0 22px 0;
    margin-left: 0;
    visibility: visible;
    opacity: 1;
    position: relative;
    top: auto;
    left: auto;
    border: none;
    border-top: 1px solid rgba(255, 255, 255, 0.2);
    display: none;
  }
}
header > nav .nav_second li {
  border-top: 1px solid #D1DAE1;
}
@media screen and (max-width: 1060px) {
  header > nav .nav_second li {
    border-top: none;
    text-align: left;
  }
}
header > nav .nav_second li a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 50px;
  font-size: 1.6rem;
  background: #ffffff;
}
@media screen and (min-width: 901px) {
header>nav .nav_second li a {
    font-size: 1.4rem;
    height: 40px;
  }
}
@media screen and (min-width: 901px) {
  header > nav .nav_second li a:hover {
    opacity: 1;
    color: #2A6AB2;
  }
}
@media screen and (max-width: 980px) {
  header > nav .nav_second li a {
    display: block;
    height: auto;
    padding: 0 16px;
    background: none;
    line-height: 2.7;
    font-size: 1.4rem;
    color: #ffffff;
  }
}
@media screen and (max-width: 1060px) {
  header.is_active {
    position: fixed;
    z-index: 1000;
  }
  header.is_active .nav_btn span:nth-child(1) {
    margin-top: -2px;
    transform: rotate(45deg);
  }
  header.is_active .nav_btn span:nth-child(2) {
    margin-top: -2px;
    transform: rotate(135deg);
  }
}
header.is_active nav {
  top: 60px;
  z-index: 2000;
}


@media screen and (min-width: 1061px) {
  header > nav .nav > .header_mypage:before {
    content: '';
    display: block;
    width: 1px;
    height: 16px;
    background: #D1DAE1;
    margin-left: 10px;
  }
  header > nav .nav > .header_mypage > a:not(.btn) {
    display: flex;
    align-items: center;
    padding-left: 30px;
  }
  header .header_mypage_icon {
    display: block;
    width: 18px;
    font-size: 0;
    margin-right: 10px;
  }
  header .header_mypage_icon img {
    width: 100%;
  }
  header .header_mypage_icon_sp {
    display: none;
  }
}
@media screen and (max-width: 1200px) {
  header > nav .nav > .header_mypage:before {
    margin-left: 3px;
  }
  header > nav .nav > .header_mypage > a:not(.btn) {
    padding-left: 15px;
  }
}
@media screen and (max-width: 1060px) {
  header > nav .nav > .header_mypage {
    padding-top: 10px;
    padding-right: 0;
    padding-left: 0;
  }
  header > nav .nav > .header_mypage > a:not(.btn) {
    border-top:1px solid rgba(255, 255, 255, 0.5);
    padding-right: 16px;
    padding-left: 16px;
    display: flex;
    align-items: center;
  }
  header .header_mypage_icon {
    display: block;
    width: 18px;
    font-size: 0;
    margin-right: 12px;
  }
  header .header_mypage_icon img {
    width: 100%;
  }
  header .header_mypage_icon_pc {
    display: none;
  }
}

header>nav .nav>li.recruit_link {
  display: none;
}
@media screen and (min-width: 981px){
header>nav .nav > li.is_sp{
  display: none;
}
header>nav .nav>li.recruit_link {
  display: block; 
  position: absolute;
  right: 19%;
  line-height: 1.2;
  top: 10%;
  z-index: 10;
  height: auto;
}
header>nav .nav>li.recruit_link>a{
  color: #2A6AB2;
  font-size: 1.2rem;
  font-weight: 900;
  padding:0;
}
}
@media screen and (min-width: 1350px){
  header>nav .nav>li.recruit_link {
    right: 21%;
    top: 12.5%;
  }
  header>nav .nav>li.recruit_link>a {
    font-size: 1.3rem;
  }
}


/* module
========================================================================== */
/* btn
--------------------------------------------- */
input[type="submit"].btn,
.btn {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 73px;
  padding: 0 40px;
  border-radius: 80px;
  background: #2A6AB2;
  font-size: 2.1rem;
  font-weight: 900;
  color: #ffffff;
  position: relative;
  border: none;
  cursor: pointer;
  /* pattern */
}
@media screen and (min-width: 768px) {
  input[type="submit"].btn,
  .btn {
    transition: opacity 0.5s ease-out;
  }
  input[type="submit"].btn:hover,
  .btn:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 1000px) {
  .btn {
    font-size: 1.9rem;
  }
}
@media screen and (max-width: 767px) {
  input[type="submit"].btn,
  .btn {
    font-size: 1.7rem;
  }
}
input[type="submit"].btn_contact_type01,
.btn_contact_type01 {
  background: #2a49b2;
  background: linear-gradient(90deg, #2a49b2 0%, #0ab190 100%);
}
input[type="submit"].btn_contact_type02,
.btn_contact_type02 {
  background: #c065db;
  background: linear-gradient(90deg, #c065db 0%, #d8be33 100%);
}
input[type="submit"].btn_contact_type03,
.btn_contact_type03 {
  background: #2B2B2B;
}
input[type="submit"].btn_back,
.btn_back {
  width: 286px;
  border: 3px solid #2A6AB2;
  background: #ffffff;
  color: #2A6AB2;
}

/* hl
--------------------------------------------- */
.hl_h1 {
  margin-bottom: 50px;
  font-size: 3.6rem;
  font-weight: 900;
  text-align: center;
  line-height: 1.8;
}
@media screen and (max-width: 767px) {
  .hl_h1 {
    font-size: 3.0rem;
    margin-bottom: 38px;
  }
}


.hl_h1_block {
  margin-bottom: 50px;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .hl_h1_block {
    margin-bottom: 38px;
  }
}
.hl_h1_block h1,
.hl_h1_block h2 {
  font-size: 3.6rem;
  font-weight: 900;
  letter-spacing: -0.025em;
}
@media(max-width: 767px) {
  .hl_h1_block h1,
  .hl_h1_block h2 {
    line-height: 1.5;
    font-size: 3.0rem;
  }
}
.hl_h1_block h1 + p {
  margin-top: 36px;
  line-height: 1.75;
}
@media screen and (max-width: 767px) {
  .hl_h1_block h1 + p {
    text-align: left;
  }
}

.hl_h1_logo {
  padding: 50px 0;
  position: relative;
}
@media screen and (max-width: 767px) {
  .hl_h1_logo {
    margin-top: -10px;
    padding: 0 0 40px 0;
  }
}

.hl_h1_logo_partner {
  padding: 50px 0 0 0;
  position: relative;
}
@media screen and (max-width: 767px) {
  .hl_h1_logo_partner {
    margin-top: -10px;
    padding: 0 0 10px 0;
  }
}

.l_inner_flex {
  display: flex;
  justify-content: space-between;
}

.l_inner_felx_item1 {
  width: 65%;
}

.l_inner_felx_item2 {
  width: 40%;
  text-align: center;
}

.l_inner_felx_item2 img{
  width: 30%;
}

.ma_badge {
  display: none;
}

.youtube_ma {
  width: 60%;
  aspect-ratio: 16 / 9;
  margin: 0 auto;
  margin-top: 30px;
}

.youtube_ma iframe {
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 767px) {
  .youtube_ma {
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .l_inner_flex {
    
  }

  .l_inner_felx_item1 {
    width:80%;
    margin-bottom: 15px;
  }
  
  .l_inner_felx_item2 {
    width: 20%;
    text-align: center;
    margin: 0 auto;
  }

  .l_inner_felx_item2 img{
    width: 90%;
    margin-top: 10px;
  }
  
}

@media screen and (max-width: 450px) {
  .ma_badge {
    right: 10;
    top: 0;
    width: 17%;
  }
}
.hl_h1_logo h1 img {
  max-width: 60%;
}

.hl_h1_logo_partner h1 img {
  max-width: 100%;
}
.hl_h1_logo_ttl {
  margin-top: 46px;
  font-size: 2.6rem;
  letter-spacing: -0.025em;
  font-weight: 900;
  line-height: 1.615;
}
@media screen and (max-width: 767px) {
  .hl_h1_logo_ttl {
    margin-top: 28px;
    font-size: 2.4rem;
    line-height: 1.75;
  }
}

.hl_h1_logo_ttl_patner {
  margin-top: 46px;
  font-size: 3.2rem;
  letter-spacing: -0.025em;
  font-weight: 900;
  line-height: 1.615;
}

@media screen and (max-width: 767px) {
  .hl_h1_logo_ttl_patner {
    margin-top: 28px;
    font-size: 2.8rem;
    line-height: 1.75;
  }
}
.hl_h1_logo_txt {
  margin-top: 12px;
}
@media screen and (max-width: 767px) {
  .hl_h1_logo_txt {
    margin-top: 18px;
    line-height: 1.75;
  }
}

.hl_h2 {
  margin-bottom: 14px;
  font-size: 3.2rem;
  letter-spacing: -0.025em;
  font-weight: 900;
}
.hl_h2_sub {
  display: block;
  font-size: 2.4rem;
}
.hl_h2_large {
  font-size: 3.6rem;
  font-weight: 800;
}
@media screen and (max-width: 767px) {
  .hl_h2 {
    margin-bottom: 12px;
    font-size: 2.4rem;
    line-height: 1.75;
    font-weight: 700;
  }
  .hl_h2_large {
    font-size: 3rem;
  }
  .hl_h2_sub {
    font-size: 1.6rem;
  }
}

.hl_h2_block {
  margin-bottom: 70px;
}
@media screen and (max-width: 767px) {
  .hl_h2_block {
    margin-bottom: 35px;
  }
}
.hl_h2_block_border {
  border-bottom: 1px solid #D1DAE1;
  padding-top: 45px;
  padding-bottom: 70px;
}
@media screen and (max-width: 767px) {
  .hl_h2_block_border {
    padding-top: 30px;
    padding-bottom: 50px;
  }
}
.hl_h2_block .hl_h2 {
  margin-bottom: 0;
}

.hl_num {
  display: flex;
  align-items: flex-end;
}
.hl_num .num {
  font-size: 12rem;
  letter-spacing: -0.025em;
  font-weight: 900;
  color: #2A6AB2;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .hl_num .num {
    font-size: 7.6rem;
  }
}
.hl_num .txt {
  margin-left: 20px;
  font-size: 3.2rem;
  letter-spacing: -0.025em;
  line-height: 1.5;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .hl_num .txt {
    margin-left: 10px;
    font-size: 2.4rem;
  }
}

.hl_service {
  padding-top: 80px;
  border-top: 1px solid #D1DAE1;
}
@media screen and (max-width: 767px) {
  .hl_service {
    padding-top: 60px;
  }
}
.hl_service_logo img {
  height: 56px;
}
@media screen and (max-width: 767px) {
  .hl_service_logo img {
    height: 32px;
  }
}
.hl_service_ttl {
  margin-top: 46px;
  font-size: 2.2rem;
  font-weight: 900;
}
@media screen and (max-width: 767px) {
  .hl_service_ttl {
    margin-top: 20px;
    font-size: 2.0rem;
    line-height: 1.75;
  }
}
.hl_service_txt {
  margin-top: 8px;
}
@media screen and (max-width: 767px) {
  .hl_service_txt {
    margin-top: 20px;
    font-size: 1.6rem;
  }
}
.hl_service .btn {
  width: 286px;
  margin-top: 24px;
}
@media screen and (max-width: 767px) {
  .hl_service .btn {
    width: calc(100% - 50px);
    margin: 20px 25px 0 25px;
  }
}

/* txt
--------------------------------------------- */
.txt_lead {
  letter-spacing: -0.025em;
}

.txt_bold {
  font-weight: 700;
}

.txt_exbold {
  font-weight: 900;
}

/* pager
--------------------------------------------- */
.wp-pagenavi {
  margin-top: 100px;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .wp-pagenavi {
    margin-top: 72px;
  }
}
.wp-pagenavi .nextpostslink,
.wp-pagenavi .previouspostslink {
  width: 13px;
  height: 11px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13px 11px"><path fill="%23000000" d="M760.218,370.788h-2.793l-.017.018,4.483,4.482h-8.9v2h8.83l-4.408,4.407.093.093h2.643l5.538-5.538Z" transform="translate(-752.985 -370.788)" /></svg>');
  position: relative;
  top: 2px;
}
@media screen and (min-width: 768px) {
  .wp-pagenavi .nextpostslink,
  .wp-pagenavi .previouspostslink {
    transition: opacity 0.5s ease-out;
  }
  .wp-pagenavi .nextpostslink:hover,
  .wp-pagenavi .previouspostslink:hover {
    opacity: 0.7;
  }
}
.wp-pagenavi .nextpostslink {
  margin-left: 25px;
}
@media screen and (max-width: 767px) {
  .wp-pagenavi .nextpostslink {
    margin-left: 5px;
  }
}
.wp-pagenavi .previouspostslink {
  margin-right: 25px;
  transform: rotate(180deg);
}
@media screen and (max-width: 767px) {
  .wp-pagenavi .previouspostslink {
    margin-right: 5px;
  }
}
.wp-pagenavi .page,
.wp-pagenavi .current {
  padding: 10px;
  margin: 0 15px;
  font-size: 3rem;
  font-weight: 700;
  cursor: pointer;
  color: #2A6AB2;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .wp-pagenavi .page,
  .wp-pagenavi .current {
    transition: opacity 0.5s ease-out;
  }
  .wp-pagenavi .page:hover,
  .wp-pagenavi .current:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .wp-pagenavi .page,
  .wp-pagenavi .current {
    padding: 5px;
    margin: 0 5px;
    font-size: 1.6rem;
  }
}
.wp-pagenavi .current {
  color: #000000;
}

.nav_page {
  margin-top: 100px;
  display: flex;
  align-items: center;
}
@media screen and (max-width: 767px) {
  .nav_page {
    margin-top: 72px;
  }
}
.nav_page_prev, .nav_page_next {
  width: 13px;
  height: 11px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13px 11px"><path fill="%23000000" d="M760.218,370.788h-2.793l-.017.018,4.483,4.482h-8.9v2h8.83l-4.408,4.407.093.093h2.643l5.538-5.538Z" transform="translate(-752.985 -370.788)" /></svg>');
  position: relative;
  top: 2px;
}
@media screen and (min-width: 768px) {
  .nav_page_prev, .nav_page_next {
    transition: opacity 0.5s ease-out;
  }
  .nav_page_prev:hover, .nav_page_next:hover {
    opacity: 0.7;
  }
}
.nav_page_prev {
  margin-right: 25px;
  transform: rotate(180deg);
}
@media screen and (max-width: 767px) {
  .nav_page_prev {
    margin-right: 5px;
  }
}
.nav_page_next {
  margin-left: 25px;
}
@media screen and (max-width: 767px) {
  .nav_page_next {
    margin-left: 5px;
  }
}
.nav_page ul {
  display: flex;
}
.nav_page ul li {
  padding: 10px;
  margin: 0 15px;
  font-size: 3rem;
  font-weight: 700;
  cursor: pointer;
  color: #2A6AB2;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .nav_page ul li {
    transition: opacity 0.5s ease-out;
  }
  .nav_page ul li:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .nav_page ul li {
    padding: 5px;
    margin: 0 5px;
    font-size: 1.6rem;
  }
}
.nav_page ul li.is_active {
  color: #000000;
}

/* nav
--------------------------------------------- */
.nav_category {
  margin-bottom: 70px;
}
@media screen and (max-width: 767px) {
  .nav_category {
    margin-bottom: 24px;
  }
}
.nav_category ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 930px;
  margin-right: auto;
  margin-left: auto;
  padding-right: 20px;
  padding-left: 20px;
}
@media screen and (max-width: 767px) {
  .nav_category ul {
    margin-left: -5px;
    margin-right: -5px;
    justify-content: center;
    padding-right: 0;
    padding-left: 0;
  }
}
.nav_category ul li {
  margin: 10px 0;
}
@media screen and (max-width: 767px) {
  .nav_category ul li {
    margin: 5px 10px;
  }
}
.nav_category ul li a {
  display: inline-block;
  padding-bottom: 10px;
  font-size: 2.2rem;
  text-align: center;
  position: relative;
  line-height: 1;
}
@media screen and (min-width: 768px) {
  .nav_category ul li a {
    transition: opacity 0.5s ease-out;
  }
  .nav_category ul li a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .nav_category ul li a {
    font-size: 1.4rem;
  }
}
.nav_category ul li.is_active a {
  color: #2A6AB2;
}
.nav_category ul li.is_active a:after {
  content: '';
  display: block;
  width: calc(100% + 50px);
  height: 3px;
  background: #2A6AB2;
  position: absolute;
  bottom: 0;
  left: -25px;
}
@media screen and (max-width: 767px) {
  .nav_category ul li.is_active a:after {
    width: calc(100% + 10px);
    left: -5px;
  }
}

.nav_tab {
  display: flex;
  width: 100%;
  margin-top: 60px;
}
@media screen and (max-width: 767px) {
  .nav_tab {
    margin-top: 68px;
  }
}
.nav_tab li {
  padding-bottom: 30px;
  font-size: 2.2rem;
  color: #DDDDDD;
  font-weight: 900;
  text-align: center;
  border-bottom: 4px solid #DDDDDD;
  cursor: pointer;
  letter-spacing: -0.025em;
}
@media screen and (min-width: 768px) {
  .nav_tab li {
    transition: opacity 0.5s ease-out;
  }
  .nav_tab li:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .nav_tab li {
    padding-bottom: 15px;
    font-size: 1.8rem;
  }
}
.nav_tab li.is_active {
  color: #000000;
  border-color: #000000;
}

.tab_content > div {
  display: none;
}
.tab_content > div:nth-child(1) {
  display: block;
}

/* box
--------------------------------------------- */
.box_column {
  display: flex;
  align-items: flex-end;
  flex-wrap: wrap;
}
.box_column + .box_column {
  margin-top: 120px;
}
@media screen and (max-width: 767px) {
  .box_column + .box_column {
    margin-top: 62px;
  }
}
.box_column > div {
  width: calc(50% - 20px);
}
@media screen and (max-width: 767px) {
  .box_column > div {
    width: 100%;
  }
}
.box_column > div + div {
  margin-left: 40px;
}
@media screen and (max-width: 767px) {
  .box_column > div + div {
    margin-left: 0;
  }
}
.box_column > div.box_column_w {
  width: 100%;
  margin: 52px 0 0 0;
}
@media screen and (max-width: 767px) {
  .box_column > div.box_column_w {
    margin-top: 38px;
  }
}
.box_column > div.box_column_w img {
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .box_column_img {
    margin-top: 38px;
    order: 2;
    text-align: center;
  }
}
.box_column_img img {
  max-width: 100%;
}
@media screen and (max-width: 767px) {
  .box_column_img img {
    width: 90%;
  }
}
@media screen and (max-width: 767px) {
  .box_column_info {
    order: 1;
  }
}
.box_column_ttl {
  margin-top: 22px;
  font-size: 2.2rem;
  font-weight: 700;
  letter-spacing: -0.025em;
}
@media screen and (max-width: 767px) {
  .box_column_ttl {
    margin-top: 24px;
    font-size: 1.8rem;
  }
}
.box_column_txt {
  margin-top: 10px;
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .box_column_txt {
    margin-top: 8px;
    line-height: 2;
  }
}

.box_service {
  padding: 114px 0 95px 0;
  border-top: 1px solid #D1DAE1;
}
@media screen and (max-width: 767px) {
  .box_service {
    padding: 58px 0 60px 0;
  }
}
.box_service_ttl {
  font-size: 4.8rem;
  font-weight: 900;
  line-height: 1.75;
  letter-spacing: -0.025em;
}
@media screen and (max-width: 767px) {
  .box_service_ttl {
    font-size: 3.0rem;
    line-height: 1.5;
  }
}
.box_service_ttl + .box_column {
  margin-top: 95px;
}
@media screen and (max-width: 767px) {
  .box_service_ttl + .box_column {
    margin-top: 46px;
  }
}
.box_service_list {
  display: flex;
  margin-top: 68px;
  border-left: 1px solid #D1DAE1;
  border-right: 1px solid #D1DAE1;
}
@media screen and (max-width: 767px) {
  .box_service_list {
    flex-wrap: wrap;
    margin-top: 74px;
    border-left: none;
    border-right: none;
  }
}
.box_service_list li {
  width: 33%;
  padding: 8px 30px 0 30px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
@media screen and (max-width: 767px) {
  .box_service_list li {
    width: 100%;
    padding: 0 20px;
    display: block;
  }
}
.box_service_list li + li {
  border-left: 1px solid #D1DAE1;
}
@media screen and (max-width: 767px) {
  .box_service_list li + li {
    margin-top: 50px;
    padding-top: 46px;
    border-left: none;
    border-top: 1px solid #D1DAE1;
  }
}
.box_service_list_ttl {
  font-size: 3.2rem;
  font-weight: 700;
  line-height: 1.4;
  letter-spacing: -0.025em;
}
@media screen and (max-width: 767px) {
  .box_service_list_ttl {
    font-size: 2.4rem;
    line-height: 2;
  }
}
.box_service_list_txt {
  margin-top: 5px;
  font-size: 1.6rem;
}
@media screen and (max-width: 767px) {
  .box_service_list_txt {
    margin-top: 3px;
  }
}
.box_service_list .btn {
  margin-top: 40px;
  padding-right: 20px;
  padding-left: 20px;
}
@media screen and (max-width: 767px) {
  .box_service_list .btn {
    margin-top: 35px;
  }
}
.box_service:last-child {
  padding: 80px 0 0 0;
}
@media screen and (max-width: 767px) {
  .box_service:last-child {
    padding: 60px 0 0 0;
  }
}
.box_service_ma + .box_service_ma {
  padding-bottom: 120px;
}
@media screen and (max-width: 767px) {
  .box_service_ma + .box_service_ma {
    padding-bottom: 60px;
  }
}
.box_service_ma + .box_service_ma .l_inner {
  max-width: 1130px;
}
@media screen and (max-width: 767px) {
  .box_service_ma + .box_service_ma .l_inner {
    width: 100%;
  }
}

/* link
--------------------------------------------- */
.link_txt {
  font-size: 1.3rem;
  padding-right: 20px;
  position: relative;
}
@media screen and (min-width: 768px) {
  .link_txt {
    transition: opacity 0.5s ease-out;
  }
  .link_txt:hover {
    opacity: 0.7;
  }
}
.link_txt:before {
  content: '';
  display: block;
  width: 13px;
  height: 11px;
  position: absolute;
  right: 0;
  top: 50%;
  margin-top: -5px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13px 11px"><path fill="%23000000" d="M760.218,370.788h-2.793l-.017.018,4.483,4.482h-8.9v2h8.83l-4.408,4.407.093.093h2.643l5.538-5.538Z" transform="translate(-752.985 -370.788)" /></svg>');
}

/* icon
--------------------------------------------- */
.icon_category {
  display: flex;
  align-items: center;
  height: 34px;
  padding: 0 15px;
  border: 2px solid #000000;
  border-radius: 80px;
  font-size: 1.6rem;
  line-height: 1;
}

/* list
--------------------------------------------- */
.list_news li {
  display: flex;
  flex-direction: column;
  align-items: flex-start;
}
.list_news li + li {
  margin-top: 42px;
}
@media screen and (max-width: 767px) {
  .list_news li + li {
    margin-top: 32px;
  }
}
.list_news li a {
  display: inline-block;
  color: #2A6AB2;
  font-size: 3.0rem;
  font-weight: 700;
  text-decoration: underline;
  text-decoration-thickness: 3.5px;
  text-underline-offset: 10px;
}
@media screen and (min-width: 768px) {
  .list_news li a {
    transition: opacity 0.5s ease-out;
  }
  .list_news li a:hover {
    opacity: 0.7;
  }
}
@media screen and (max-width: 767px) {
  .list_news li a {
    font-size: 1.6rem;
    text-decoration-thickness: 3px;
    text-underline-offset: 6px;
  }
}
.list_news .icon_category {
  margin-bottom: 3px;
}
@media screen and (max-width: 767px) {
  .list_news .icon_category {
    margin-bottom: 8px;
  }
}
.list_news_date {
  margin-top: 6px;
  font-size: 2.6rem;
  font-weight: 900;
  line-height: 1;
  letter-spacing: 0.1em;
}
@media screen and (max-width: 767px) {
  .list_news_date {
    margin-top: 12px;
    font-size: 1.6rem;
  }
}

.list_sns {
  display: flex;
  margin-top: 87px;
}
@media screen and (max-width: 767px) {
  .list_sns {
    margin-top: 60px;
  }
}
.list_sns li {
  line-height: 1;
}
.list_sns li + li {
  margin-left: 10px;
}
@media screen and (max-width: 767px) {
  .list_sns li + li {
    margin-left: 5px;
  }
}

.list_info dt {
  margin-bottom: 12px;
  font-weight: 700;
  font-size: 2.2rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  .list_info dt {
    margin-bottom: 16px;
    font-size: 2.0rem;
  }
}
.list_info dd {
  font-size: 1.6rem;
}

.list_disc {
  margin-top: 32px;
}
@media screen and (max-width: 767px) {
  .list_disc {
    margin-top: 28px;
  }
}
.list_disc li {
  text-indent: -1em;
  padding-left: 1em;
  line-height: 1.75;
}
.list_disc li:before {
  content: '・';
}

.list_company {
  font-size: 2.2rem;
  display: flex;
}
.list_company li {
  border-bottom: 1px solid #D1DAE1;
}
.list_company_ttl {
  font-weight: 900;
}

.list_number {
  counter-reset: number 0;
}
.list_number .list_number {
  margin-top: 10px;
}
.list_number > li {
  position: relative;
  padding-left: 1.7em;
}
.list_number.list_number_brackets > li {
  padding-left: 2.2em;
}
.list_number.list_number_alphabet > li {
  padding-left: 0.8em;
  margin-left: 15px;
}
.list_number.list_number_upperalpha > li {
  padding-left: 0.8em;
  margin-left: 15px;
}
.list_number > li:not(:last-child) {
  margin-bottom: 8px;
}
.list_number > li::before {
  counter-increment: number 1;
  content: counter(number)'. ';
  font-size: 110%;
  position: absolute;
  top: -2px;
  left: 0;
}
.list_number.list_number_brackets > li::before {
  content:'（'counter(number)'）';
  left: -15px;
}
.list_number.list_number_alphabet > li::before {
  content:counter(number,lower-alpha)'.';
  left: -15px;
}
.list_number.list_number_upperalpha > li::before {
  content:counter(number,upper-alpha);
  left: -15px;
}
.list_number.list_number_roman > li::before {
  content:'（'counter(number,lower-roman)'）';
  left: -15px;
}
@media screen and (max-width: 767px) {
  .list_number > li::before {
    top: -1px;
  }
}
.list_number_link {
  text-decoration: underline;
  color:#2A6AB2 !important;
  transition: opacity .6s;
}
@media screen and (min-width: 768px) {
  .list_number_link:hover {
    opacity: 0.7;
  }
}

/* table
--------------------------------------------- */
.tbl_type01 {
  width: 100%;
}
.tbl_type01 th,
.tbl_type01 td {
  padding: 50px 5px;
  font-size: 2.2rem;
  vertical-align: middle;
  line-height: 1.75;
  border-bottom: 1px solid #D1DAE1;
}
.tbl_type01 th {
  width: 20%;
  font-weight: 900;
  text-align: left;
}

.tbl_type01 td img {
  width: 100%;
}


@media screen and (max-width: 767px) {
  .tbl_type01 th,
  .tbl_type01 td {
    display: block;
    padding: 0;
    width: 100%;
    line-height: 2;
  }

  .tbl_type01 td img {
    width: 80%;
  }
}

@media screen and (max-width: 767px) {
  .tbl_type01 th {
    padding: 26px 0 5px 10px;
    font-size: 1.8rem;
    border-bottom: none;
  }
}
@media screen and (max-width: 767px) {
  .tbl_type01 td {
    font-size: 1.6rem;
    padding: 5px 0 26px 10px;
  }
}

.tbl_type01 td a {
  text-decoration: underline;
  color: #2A6AB2;
  transition: opacity .5s;
}
@media screen and (min-width: 768px) {
  .tbl_type01 td a:hover {
    opacity: 0.65;
  }
}

/* document（privacy / terms）
--------------------------------------------- */
.document * :not(h1) {
  color: #222222;
  line-height: 1.75;
}
.document_box {
  margin-top: 45px;
}
.document_ttl {
  margin-bottom: 14px;
  font-weight: 900;
  font-size: 2.2rem;
}
@media screen and (max-width: 767px) {
  .document_ttl {
    margin-bottom: 16px;
  }
}

/* partnership
--------------------------------------------- */
.partner_box {
  margin-top: 25px;
}
.partner_ttl {
  margin-bottom: 10px;
  font-weight: 900;
}
@media screen and (max-width: 767px) {
  .partner_ttl {
    margin-bottom: 5px;
  }
}


.partner_cta_ttl p {
  margin: 0 auto;
  text-align: center;
  font-weight: 700;
  font-size: 2.4rem;
  height: 80px;
  color: #333333;
}
@media screen and (max-width: 767px) {
  .partner_cta_ttl p {
    font-size: 2.0rem;
  }
}


.wrapper {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  gap: 2rem;
  margin-top: 35px;
  margin-bottom: 100px;
}

.card {
  display: flex;
  flex-direction: column;
  flex-basis: 30%;
  padding: 2rem 1rem 1rem 1rem;
  word-wrap: break-word;
  background-color: #fff;
  box-sizing: border-box;
  border-radius: 0.25rem;
  border: 1px solid #2A6AB2;
  color: #333;
  text-decoration: none;
  align-items: center;
}

.card-image {
  width: 30%;
  object-fit: contain;
}

.card-box {
  padding: 1rem 0 0 0;
}

.card-title {
  margin-bottom: 0.5rem;
  font-size: 1.6rem;
  font-weight: bold;
  line-height: 1.5;
  text-align: center;
}

.card-description {
  margin-bottom: 0.5rem;
  line-height: 1.5;
  font-size: 1.5rem;
  display: -webkit-box;
	-webkit-box-orient: vertical;
  height: 100px;
  overflow: scroll;
  overflow-y: scroll;
}

@media screen and (max-width: 767px) {
  .wrapper {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
    gap: 1rem;
    margin-top: 35px;
    margin-bottom: 50px;
  }

  .card {
    flex-basis: 48%;
  }
  
  
}


.ptn_flex{
  display: flex;
  align-items: center;
}

.ptn_flex_item {
  margin-right: 10px;
}

.ptn_flex_item img{
  width: 30px;
}
/* service
--------------------------------------------- */
/* OUR SERVICES */
.service_box h3 img {
  height: 100px;
}
@media screen and (max-width: 767px) {
  .service_box h3 img {
    height: 50px;
    max-width: 100%;
  }
}
.service_box + .service_box {
  padding-top: 50px;
    margin-top: 80px;
    border-top: 1px solid #D1DAE1;
}
@media screen and (max-width: 767px) {
  .service_box + .service_box {
    padding-top: 40px;
    margin-top: 40px;
  }
}
.service_ttl {
  margin-top: 42px;
  font-size: 2.2rem;
  line-height: 1.9;
  font-weight: 900;
  letter-spacing: -0.025em;
}
@media screen and (max-width: 767px) {
  .service_ttl {
    margin-top: 26px;
    font-size: 2.0rem;
    line-height: 1.75;
  }
}
.service_txt {
  margin-top: 8px;
  font-size: 1.8rem;
}

@media screen and (max-width: 767px) {
  .service_txt {
    margin-top: 14px;
    font-size: 1.6rem;
  }
}
.service_btn {
  margin-top: 25px;
}
@media screen and (max-width: 767px) {
  .service_btn {
    margin-top: 26px;
    padding: 0 25px;
  }
}
.service_btn .btn {
  width: 286px;
}
@media screen and (max-width: 767px) {
  .service_btn .btn {
    width: 100%;
  }
}

.sigyou_btn {
  margin-top: 25px;
}
@media screen and (max-width: 767px) {
  .sigyou_btn {
    margin-top: 26px;
    padding: 0 25px;
  }
}
.sigyou_btn .btn {
  width: 286px;
  margin: 0 auto;
}
@media screen and (max-width: 767px) {
  .sigyou_btn .btn {
    width: 100%;
  }
}

/* content
--------------------------------------------- */
.contact {
  background: #2A6AB2;
  padding: 100px 0;
  box-shadow: inset 0 3px 5px 0 rgba(0, 0, 0, 0.16);
}
@media screen and (max-width: 767px) {
  .contact {
    padding: 80px 20px;
  }
}
.contact_box {
  margin: 0 auto;
  padding: 72px 0 60px 0;
  background: #ffffff;
  border-radius: 10px;
}
@media screen and (max-width: 767px) {
  .contact_box {
    padding: 52px 20px 63px 20px;
  }
}
.contact_box_type01 {
  max-width: 1160px;
  width: calc(100% - 60px);
  padding-right: 30px;
  padding-left: 30px;
}
@media screen and (max-width: 767px) {
  .contact_box_type01 {
    width: 100%;
  }
}
.contact.ma-page .contact_box_type01,
.contact.wealth-page .contact_box_type01 {
  max-width: 800px;
  
}
@media screen and (max-width: 767px) {
  .contact_box_type02 {
    width: 100%;
  }
}
.contact_ttl {
  font-size: 4.2rem;
  text-align: center;
  font-weight: 700;
}
@media screen and (max-width: 767px) {
  .contact_ttl {
    font-size: 3.2rem;
    line-height: 1.75;
  }
}
.contact_btn {
  display: flex;
  justify-content: center;
  margin-top: 56px;
  margin-right: auto;
  margin-left: auto;
  max-width: 920px;
}

@media screen and (max-width: 767px) {
  .contact_btn {
    display: block;
    margin-top: 45px;
  }
}
.contact_btn li {
  width: 50%;
}
@media screen and (max-width: 767px) {
  .contact_btn li {
    width: 100%;
  }
}
.contact_btn li + li {
  margin-left: 3%;
}
@media screen and (max-width: 767px) {
  .contact_btn li + li {
    margin-left: 0;
    margin-top: 30px;
  }
}
@media screen and (min-width: 768px) {
  .contact_btn li .btn {
    padding-right: 20px;
    padding-left: 20px;
  }
}
@media screen and (max-width: 767px) {
  .contact_btn li .btn {
    height: 66px;
  }
}
.contact_info {
  margin-top: 60px;
  text-align: center;
  line-height: 1;
}
@media screen and (max-width: 767px) {
  .contact_info {
    margin-top: 66px;
  }
}
.contact_info_ttl {
  font-size: 2.2rem;
  font-weight: 700;
}
.contact_info_tel {
  margin-top: 16px;
  font-size: 4.2rem;
  font-weight: 900;
}
.contact_info_time {
  margin-top: 8px;
  font-size: 1.6rem;
}

/* tab
--------------------------------------------- */
.tab_list {
  display: flex;
  margin-bottom: 45px;
}
@media screen and (max-width: 767px) {
  .tab_list {
    display: block;
  }
  .tab_list li {
    width: 100%;
    margin-bottom: 20px;
  }
  .tab_list li:last-child {
    margin-bottom: 0;
  }
}
@media screen and (min-width: 768px) {
  .tab_list_large {
    margin-bottom: 80px;
  }
  .tab_list li {
    width: calc((100% - 80px) / 3);
    margin-right: 40px;
  }
  .tab_list li:nth-child(3n) {
    margin-right: 0px;
  }
  .tab_list.tab_list_large li {
    width: calc((100% - 84px) / 2);
    margin-right: 84px;
  }
  .tab_list.tab_list_large li:nth-child(2n) {
    margin-right: 0px;
  }
}
.tab_list li a {
  min-height: 80px;
  display: flex;
  align-items: center;
  justify-content: center;
  border:1px solid #2A6AB2;
  transition: opacity .5s;
  cursor: pointer;
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.75;
  color: #2A6AB2;
}
.tab_list_large li a {
  min-height: 90px;
}
.tab_list_text {
  color:inherit !important;
}
@media screen and (min-width: 768px) {
  .tab_list_large li a {
    min-height: 100px;
  }
  .tab_list li:not(.is_current) a:hover {
    opacity: 0.65;
  }
}
.tab_list li.is_current a {
  background: #2A6AB2;
}
.tab_list li.is_current .tab_list_text {
  color: #fff !important;
}

/* 切り替え動作 */

.js_tab_body [data-tab]:not(.is_active) {
  display: none;
}


/* footer
--------------------------------------------- */
footer {
  border-top: 1px solid #E3EBF1;
  padding: 40px 30px 20px 30px;
}
@media screen and (max-width: 900px) {
  footer {
    padding: 40px 25px 32px 25px;
  }
}
footer .top,
footer .foot {
  display: flex;
  justify-content: space-between;
}
footer .top{
  align-items: start;
}
footer .foot{
  align-items: center;
}
@media screen and (max-width: 900px) {
  footer .top,
  footer .foot {
    display: block;
  }
}
footer .top .wrap,
footer .foot ul {
  display: flex;
  flex-wrap: wrap;
}
footer .top .wrap{
  justify-content: end;
  align-items: start;
  gap: 0px 150px;
}
footer .top .wrap.sp{
  display: none;
}
footer .foot ul{
  justify-content: start;
}
footer .top li.disabled {
  opacity: 0.2;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  footer .top .wrap.sp {
    display: flex;
  }
  footer .top .wrap.pc {
    display: none;
  }
  footer .top .wrap {
    justify-content: space-between;
    gap: 15px;
    margin-top: 36px;
  }
  footer .top li.disabled {
    display: none;
  }
  footer .foot ul {
    display: block;
  }
}
@media screen and (min-width: 901px) {
  footer .top ul li a,
  footer .foot ul li a {
    transition: opacity 0.5s ease-out;
  }
  footer .top ul li a:hover,
  footer .foot ul li a:hover {
    opacity: 0.7;
  }
}
footer .top div {
  line-height: 1;
}
footer .top div img {
  width: 240px;
}
footer .top .top_admin {
  margin-top: 12px;
  font-size: 12px;
  letter-spacing: 0.05rem;
}
@media screen and (max-width: 900px) {
  footer .top .top_admin {
    letter-spacing: 0.05em;
  }
}
footer .top  ul{
  padding: 20px 0;
  &:not(:last-child){
    position: relative;
    &::after{
      position: absolute;
      content: "";
      background: #a9a9a9;
      width: 1px;
      height: 100%;
      top: 0;
      bottom: 0;
      right: -75px;
    }
  }
}
footer .top ul li {
  &:not(:last-child){
    margin-bottom: 25px;
  }
  &.child{
    margin-left: 15px;
  }
}
@media screen and (max-width: 900px) {
  footer .top  ul{
  padding: 0;
  &:not(:last-child){
    &::after{
      display: none;
    }
  }
  }
  footer .top ul li {
    &:not(:last-child){
      margin-bottom: 15px;
    }
    &.child{
      margin-left: 10px;
    }
  }
}
footer .top ul li a,
footer .top ul li span {
  font-size: 1.6rem;
  letter-spacing: -0.025em;
  display: block;
  width: 100%;
  padding-right: 45px;
}
footer .top ul li a{
  position: relative;
  &::after{
    position: absolute;
    content: "＞";
    top: 50%;
    line-height: 0.1;
    transform: translateY(-50%);
      -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
    right: 0px;
    font-size: 1.25rem;
  }
}
@media screen and (max-width: 900px) {
  footer .top ul li a,
  footer .top ul li span {
    letter-spacing: 0.1em;
    font-size: 1.2rem;
    padding-right: 25px;
  }
  footer .top ul li a{
    &::after{
      font-size: 0.8rem;
    }
  }
}
footer .foot {
  font-size: 1.1rem;
  letter-spacing: 0.1em;
}
footer .foot ul li {
  margin-right: 20px;
}
footer .foot ul li:last-child {
  margin-right: 0;
}
@media screen and (max-width: 900px) {
  footer .foot p {
    margin-top: 5px;
  }
}

footer .logos{
  margin: 100px 0 0 auto;
  width: fit-content;
  & ul{
    display: flex;
    justify-content: start;
    align-items: center;
    gap: 15px;
  }
  & li{
    width: 150px;
    & a,
    & img{
      display: block;
      width: 100%;
    }
    & img{
      object-fit: contain;
      border: 1px solid white;
    }
  }
  & li.small{
    width: 75px;
  }
}
@media screen and (max-width: 768px) {
  footer .logos {
    margin: 33px auto 15px 0;
    & ul {
      width: 100%;
      flex-wrap: wrap;
      gap: 0 10px;
    }
    & li {
      width: 152px;
      height: 75px;
      & a,
      & img{
        height: 75px;
      }
    }
    & li.small {
      width:90px;
    }
  }
}
/* slick
========================================================================== */
.slick_prev, .slick_next {
  display: block;
  width: 50px;
  height: 50px;
  background-color: #2A6AB2;
  background-position: 50% 50%;
  border-radius: 50px;
  position: absolute;
  top: 100px;
  z-index: 10;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .slick_prev, .slick_next {
    transition: opacity 0.5s ease-out;
  }
  .slick_prev:hover, .slick_next:hover {
    opacity: 0.7;
  }
}
.slick_prev.slick-disabled, .slick_next.slick-disabled {
  cursor: auto;
  opacity: 0.5;
}
.slick_prev:before, .slick_next:before {
  content: '';
  display: block;
  width: 13px;
  height: 11px;
  position: absolute;
  top: 50%;
  left: 50%;
  margin-top: -5px;
  margin-left: -6px;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 13px 11px"><path fill="%23ffffff" d="M760.218,370.788h-2.793l-.017.018,4.483,4.482h-8.9v2h8.83l-4.408,4.407.093.093h2.643l5.538-5.538Z" transform="translate(-752.985 -370.788)" /></svg>');
}
.slick_prev {
  left: 30px;
}
.slick_prev:before {
  transform: rotate(180deg);
  margin-left: -7px;
}
.slick_next {
  right: 30px;
}

/* datepicker
========================================================================== */
.ui-datepicker-calendar td.ui-datepicker-week-end:first-child a.ui-state-default,
.ui-datepicker-calendar thead th:nth-child(1) {
  color: #f00;
}

.ui-datepicker-calendar td.ui-datepicker-week-end:last-child a.ui-state-default,
.ui-datepicker-calendar thead th:nth-child(7) {
  color: #00f;
}

p:empty{display: none;}

/*# sourceMappingURL=common.css.map */
