@charset "utf-8";

/*** 基本指定 ***/
.wrap {
  max-width: 92%;
  margin: 0 auto;
  width: 1200px;
}
.page_wrap {
  max-width: 92%;
  margin: 0 auto;
  width: 1000px;
}
.procedure .page_wrap,
.address .page_wrap,
.benefit .page_wrap {
  width: 860px;
}

* {
  letter-spacing: 0.05em;
}
body,
select,
textarea,
input,
div,
p {
  font-family: "Noto Sans JP", "Helvetica Neue", Helvetica, Arial, sans-serif;
  font-size: 14px;
  font-weight: 400;
  line-height: 1.7em;
  letter-spacing: 0.1em;
  color: #323232;
}
.home body,
.home select,
.home textarea,
.home input,
.home div,
.home p {
  font-weight: 500;
  font-size: 15px;
}

a {
  color: #333;
  transition: 0.3s;
}

::selection {
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
}
::-moz-selection {
  background: rgba(0, 0, 0, 0.7);
  color: #fff;
}
.body_x {
  overflow-x: hidden;
}
.open_fixed {
  position: fixed;
}

@media (max-width: 767px) {
  body,
  select,
  textarea,
  input,
  div,
  p {
    letter-spacing: 0.05em;
    font-size: 13px;
  }
  .home body,
  .home select,
  .home textarea,
  .home input,
  .home div,
  .home p {
    font-weight: 500;
    font-size: 13.5px;
  }

  .page_wrap {
    max-width: 88%;
  }
}

@media (max-width: 320px) {
  body,
  select,
  textarea,
  input,
  div,
  p {
    font-size: 12.5px;
  }
  .home body,
  .home select,
  .home textarea,
  .home input,
  .home div,
  .home p {
    font-weight: 500;
    font-size: 13px;
  }
}

/*** ローディング ***/
.spinner {
  width: 40px;
  height: 40px;
  background-color: #197cd4;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  border-radius: 100%;
  -webkit-animation: sk-scaleout 1s infinite ease-in-out;
  animation: sk-scaleout 1s infinite ease-in-out;
}

@-webkit-keyframes sk-scaleout {
  0% {
    -webkit-transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
    opacity: 0;
  }
}

@keyframes sk-scaleout {
  0% {
    -webkit-transform: scale(0);
    transform: scale(0);
  }
  100% {
    -webkit-transform: scale(1);
    transform: scale(1);
    opacity: 0;
  }
}

/*** 共通：見出し ***/
.titleArea h1 {
  font-size: 32px;
  padding-bottom: 20px;
  position: relative;
  margin-bottom: 18px;
  text-align: center;
  line-height: 1.2em;
  letter-spacing: 0;
}
.anDetail .titleArea h1 {
  font-size: 30px;
  text-align: left;
  padding-top: 23px;
}
.titleArea h1 .sub_ttl {
  font-size: 18px;
  display: inline-block;
  padding-bottom: 6px;
  color: #005bac;
  line-height: 1.2em;
}
.titleArea h1:after {
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 3px;
  content: "";
  border-radius: 3px;
  background-image: linear-gradient(to right, #005bac 0%, #d4e5f3 35%);
}
.titleArea p {
  line-height: 2em;
  font-size: 15px;
}
.page_ttl h2 {
  font-size: 26px;
  padding: 7px 10px 11px;
  border-left: 5px solid #005bac;
  line-height: 1.25em;
  margin-bottom: 15px;
}
.page_ttl h3 {
  font-size: 20px;
  color: #005bac;
  line-height: 1.25em;
}
.title_color {
  color: #005bac;
}
.pager {
  text-align: center;
}
.page-numbers {
  background: #90b8cf;
  color: #fff;
  padding: 5px 10px;
  margin: 40px 2px 0;
  display: inline-block;
}
.page-numbers:hover {
  opacity: 0.7;
}
.page-numbers.current {
  background: #efefef;
  color: #a1a0a0;
}
.page-numbers.current:hover {
  opacity: 1;
}
.page-numbers.next,
.page-numbers.prev {
  background: none;
  color: #333;
  padding: 0;
  margin: 0;
  display: inline-flex;
}
.page-numbers.next img,
.page-numbers.prev img {
  width: 12px;
  height: 12px;
  vertical-align: middle;
  margin: 0 2px;
}

@media (max-width: 768px) {
  .titleArea h1 {
    font-size: 28px;
    padding-bottom: 18px;
    margin-bottom: 14px;
  }
  .anDetail .titleArea h1 {
    font-size: 26px;
    padding-top: 20px;
  }
  .titleArea h1 .sub_ttl {
    font-size: 17.5px;
  }
  .titleArea p {
    font-size: 14.5px;
  }
  .page_ttl h2 {
    font-size: 24px;
    padding: 6px 10px 8px;
    margin-bottom: 12px;
  }
  .page_ttl h3 {
    font-size: 18px;
  }
}
@media (max-width: 767px) {
  .titleArea h1 {
    font-size: 23px;
    padding-bottom: 15px;
    margin-bottom: 12px;
  }
  .anDetail .titleArea h1 {
    font-size: 21px;
    padding-top: 20px;
  }
  .titleArea h1 .sub_ttl {
    font-size: 15px;
  }
  .titleArea p {
    font-size: 14px;
    line-height: 1.8em;
  }
  .page_ttl h2 {
    font-size: 20px;
    line-height: 1.2em;
    padding: 6px 0 8px 8px;
    margin-bottom: 10px;
  }
  .page_ttl h3 {
    font-size: 16.5px;
  }
  #MAIN .regulationsArea .provision {
    font-size: 15px;
  }
  .page-numbers.next img,
  .page-numbers.prev img {
    width: 11px;
    height: 11px;
  }
  .page-numbers {
    margin: 25px 2px 0;
  }
}
@media (max-width: 320px) {
  .titleArea h1 {
    font-size: 22px;
    padding-bottom: 14px;
    margin-bottom: 11px;
  }
  .anDetail .titleArea h1 {
    font-size: 19px;
  }
  .titleArea h1 .sub_ttl {
    font-size: 15px;
  }

  .page_ttl h2 {
    font-size: 18px;
    padding: 5px 0 7px 7px;
    margin-bottom: 9px;
  }
}

/** Header **/
header {
  padding: 24px 0 0;
}
header > div {
  display: flex;
  align-items: center;
}
.home header {
  position: absolute;
  margin: 0 auto;
  left: 0;
  right: 0;
  z-index: 100;
  max-width: 92%;
  margin: 0 auto;
  width: 1200px;
}

.head_logo {
  display: inline-block;
  max-width: 50%;
  width: 180px;
}
.home .head_logo {
  width: 166px;
}
.home .head_logo {
  margin-left: 10px;
  margin-bottom: 10px;
}

@media (max-width: 768px) {
  .head_logo {
    width: 170px;
  }
}
@media (max-width: 767px) {
  header {
    padding: 22px 0 0;
  }

  .head_logo {
    width: 150px;
  }
  .home header {
    max-width: 100%;
    padding-top: 18px;
  }
}

/** Menu / フローティングボタン **/
.head_menu_btn {
  position: fixed;
  right: 30px;
  top: 18px;
  border-radius: 50%;
  background: #005bac;
  width: 52px;
  height: 52px;
  cursor: pointer;
  z-index: 200;
  transition: 0.3s;
}
.head_menu_btn:hover {
  opacity: 0.9;
}
.head_menu_btn > span {
  width: 20px;
  height: 8px;
  display: block;
  position: absolute;
  transform: translateY(-50%);
  left: 0;
  right: 0;
  margin: 0 auto;
  top: 50%;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}

@media (max-width: 1024px) {
  .head_menu_btn {
    right: 20px;
    width: 50px;
    height: 50px;
  }
}
@media (max-width: 768px) {
  .head_menu_btn {
    right: 10px;
    top: 15px;
    width: 45px;
    height: 45px;
  }
}
@media (max-width: 767px) {
  .head_menu_btn {
    top: 12px;
    right: 10px;
    width: 46px;
    height: 46px;
  }
  .head_menu_btn > span {
    width: 18px;
  }
}

@media (max-width: 320px) {
  .head_menu_btn {
    width: 42px;
    height: 42px;
  }
}

/*** Menu / ハンバーガー ***/
#slide_menu {
  position: fixed;
  top: -100px;
  left: 0;
  width: 100%;
  background: rgb(11 109 195 / 96%);
  padding: 50px 20px 40px 20px;
  box-sizing: border-box;
  opacity: 0;
  pointer-events: none;
  z-index: 800;
  transition: 0.5s;
  overflow-y: auto;
}
.open #slide_menu {
  opacity: 1;
  pointer-events: all;
  top: 0;
}
.slide_wrap {
  width: 800px;
  max-width: 90%;
  margin: 0 auto;
}
.slide_inner {
  position: relative;
}
.hbg_btn {
  cursor: pointer;
}
#slide_menu .slide_mn {
  display: flex;
  flex-wrap: wrap;
  margin: 0 -1.5%;
}
#slide_menu .slide_mn li {
  width: 47%;
  margin: 0 1.5%;
  text-align: center;
  border-bottom: 1px solid #75a9d6;
}
#slide_menu .slide_mn .mn_home {
  width: 100%;
}
#slide_menu .slide_mn li a {
  display: block;
  padding: 16px 5px;
  letter-spacing: 0.1em;
  color: #dce2ef;
  font-size: 16px;
  transition: 0.3s;
  line-height: 1.1em;
}
#slide_menu .slide_mn li a:hover {
  color: #ffffff;
  background: rgba(255, 255, 255, 0.1);
}
#slide_menu span.hbg_btn {
  position: absolute;
  width: 2em;
  height: 2em;
  right: 0;
  top: -30px;
}

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

  #slide_menu {
    min-height: 100%;
    padding: 50px;
    border-bottom: 0;
  }
  .slide_wrap {
    max-width: 80%;
    top: 80px;
    left: 0;
    right: 0;
    margin: auto;
    position: absolute;
  }
  #slide_menu .slide_mn {
    margin: 0;
    padding-bottom: 80px;
  }
  #slide_menu .slide_mn li {
    width: 100%;
  }
  #slide_menu .slide_mn li a {
    letter-spacing: 0.08em;
    font-size: 14px;
    padding: 13px 3px;
  }
}

/** Home / main **/
.home_main {
  height: 95vh;
  position: relative;
  z-index: 50;
}
.home_main > h1 {
  position: absolute;
  width: 100%;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
  font-size: 48px;
  font-weight: 900;
  line-height: 1.5em;
  letter-spacing: 0.2em;
  text-align: center;
}

@media (max-width: 1024px) {
  .home_main {
    height: 73vh;
  }
}
@media (max-width: 768px) {
  .home_main {
    height: 60vh;
  }
  .home_main > h1 {
    font-size: 43px;
    line-height: 1.45em;
  }
}
@media (max-width: 767px) {
  .home_main {
    height: 55vh;
  }
  .home_main > h1 {
    font-size: 32px;
    letter-spacing: 0.1em;
  }
}
@media (max-width: 375px) {
  .home_main > h1 {
    font-size: 29px;
  }
}
@media (max-width: 320px) {
  .home_main > h1 {
    font-size: 25px;
    line-height: 1.4em;
  }
}

/** Home / main / video **/
.main_video {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 1;
}
.main_video video {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/** Home / main / スクロールダウン **/
.scrolldown {
  position: absolute;
  bottom: -5vh;
  left: 50%;
}
.scrolldown:before {
  content: "";
  position: absolute;
  bottom: 0;
  left: -4px;
  width: 9px;
  height: 9px;
  border-radius: 50%;
  background: #eee;
  animation: circlemove 1.6s ease-in-out infinite,
    cirlemovehide 1.6s ease-out infinite;
}

@keyframes circlemove {
  0% {
    bottom: 90px;
  }
  100% {
    bottom: -5px;
  }
}

@keyframes cirlemovehide {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  80% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
  }
}

.scrolldown:after {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 1px;
  height: 90px;
  background: #eee;
}

/** Home / コンセプト枠 **/
.home_concept_wrap {
  background: rgba(0, 110, 207, 0.9);
  padding: 180px 0 200px;
  position: relative;
  z-index: 10;
  border-top-right-radius: 2000px 300px;
  border-top-left-radius: 2000px 300px;
  border-bottom-right-radius: 2000px 300px;
  border-bottom-left-radius: 2000px 300px;
  margin-left: -200px;
  margin-right: -200px;
  padding-left: 200px;
  padding-right: 200px;
}
@media (max-width: 1500px) {
  .home_concept_wrap {
    margin-left: 0;
    margin-right: 0;
    padding-left: 0;
    padding-right: 0;
  }
}
@media (max-width: 1024px) {
  .home_concept_wrap {
    padding: 130px 0 150px;
  }
}
@media (max-width: 768px) {
  .home_concept_wrap {
    padding: 110px 0 120px;
  }
}
@media (max-width: 767px) {
  .home_concept_wrap {
    padding: 80px 15px 90px;
  }
}
@media (max-width: 375px) {
  .home_concept_wrap {
    padding: 70px 10px 80px;
  }
}
@media (max-width: 320px) {
  .home_concept_wrap {
    padding: 65px 10px;
  }
}

/** Home / 見出し **/
.home-ttl__main {
  font-size: 34px;
  color: #205e94;
  font-weight: bold;
  padding-top: 4px;
}

@media (max-width: 1024px) {
  .home-ttl__main {
    font-size: 31px;
  }
}
@media (max-width: 768px) {
  .home-ttl__main {
    font-size: 29px;
  }
  .home-ttl__sub {
    font-size: 13px;
  }
}
@media (max-width: 767px) {
  .home-ttl__main {
    font-size: 28px;
  }
  .home-ttl__sub {
    font-size: 12.5px;
  }
}
@media (max-width: 375px) {
  .home-ttl__main {
    font-size: 27px;
  }
  .home-ttl__sub {
    font-size: 12px;
    padding-top: 3px;
  }
}

/** Home / コンセプト **/
.home_concept {
  text-align: center;
}
.home_concept * {
  color: #fff;
}
.home_concept_title {
  padding-bottom: 30px;
}
.home_concept_title .home_concept_title_sub {
  display: inline-block;
  position: relative;
  padding: 0 27px 13px;
  font-weight: 700;
  font-size: 26px;
}
.home_concept_title h2 {
  font-size: 43px;
  font-weight: 900;
  line-height: 1.3em;
}
.home_concept_text {
  line-height: 2.2em;
  font-size: 16px;
}

.home_concept_title .home_concept_title_sub::before,
.home_concept_title .home_concept_title_sub::after {
  content: "";
  width: 16px;
  height: 26px;
  position: absolute;
  top: 0;
}
.home_concept_title .home_concept_title_sub::before {
  left: 0;
  background: url("../images/home_title_sotsugyo_l.png") no-repeat;
}
.home_concept_title .home_concept_title_sub::after {
  right: 0;
  background: url("../images/home_title_sotsugyo_r.png") no-repeat;
}

@media (max-width: 1024px) {
  .home_concept_title {
    padding-bottom: 28px;
  }
  .home_concept_title h2 {
    font-size: 39px;
  }
  .home_concept_text {
    line-height: 2.1em;
    font-size: 15.5px;
  }
  .home_concept_title .home_concept_title_sub {
    padding: 0 27px 12px;
    font-size: 25px;
  }
}
@media (max-width: 768px) {
  .home_concept_title {
    padding-bottom: 24px;
  }
  .home_concept_title h2 {
    font-size: 35px;
  }
  .home_concept_text {
    line-height: 2em;
    font-size: 15px;
  }

  .home_concept_title .home_concept_title_sub {
    padding: 0 27px 10px;
    font-size: 24px;
  }
}
@media (max-width: 767px) {
  .home_concept_title h2 {
    font-size: 27px;
    letter-spacing: 0;
  }

  .home_concept_text {
    line-height: 1.8em;
    font-size: 14px;
  }

  .home_concept_title .home_concept_title_sub {
    padding: 0px 24px 10px;
    font-size: 20px;
  }
  .home_concept_title .home_concept_title_sub::before,
  .home_concept_title .home_concept_title_sub::after {
    height: 22px;
    top: 2px;
  }
}
@media (max-width: 413px) {
  .home_concept_title h2 {
    font-size: 24px;
  }
}
@media (max-width: 320px) {
  .home_concept_text {
    font-size: 13.5px;
  }
}

/** Home / メッセージ **/
.home_message {
  text-align: center;
}
.home_message * {
  color: #fff;
}
.home_message_title {
  font-size: 30px;
  line-height: 1.4em;
  padding: 130px 0 50px;
  position: relative;
}
.home_message_title::before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  left: 0;
  width: 1px;
  height: 90px;
  background: rgba(255, 255, 255, 0.6);
  margin: 0 auto;
}

.home_message_wrap {
  justify-content: center;
  gap: 5%;
  padding-top: 80px;
}
.message_box {
  padding: 0 4%;
}
.message_box a {
  transition: 0.3s;
  display: block;
}
.message_box a:hover {
  opacity: 0.7;
}
.message_box a img:hover {
  opacity: 1;
}
.message_box figure {
  padding-bottom: 13px;
}
.message_box figcaption {
  font-weight: 500;
  font-size: 14px;
}
.message_box figcaption span {
  display: block;
  font-size: 16px;
  padding-top: 3px;
}

.message_box_btn_wrap {
  width: 35%;
  text-align: center;
}
.message_box_btn_wrap a {
  border: rgba(0, 110, 207, 0.9) solid 1px;
  color: #205e94;
  background-color: #fff;
  padding: 10px 15px;
  display: flex;
  font-size: 20px;
  line-height: 1.4em;
  justify-content: center;
  transition: linear 0.25s;
  border-radius: 40px;
  position: relative;
}
.message_box_btn_wrap a:hover {
  transition: linear 0.25s;
}
.message_box_btn_wrap a::before {
  position: absolute;
  content: "";
  -webkit-mask-image: url(../images/icon_arr_btn.svg);
  mask-image: url(../images/icon_arr_btn.svg);
  mask-size: contain;
  mask-repeat: no-repeat;
  mask-position: center center;
  width: 16px;
  height: 16px;
  top: 50%;
  right: 20px;
  transform: translateY(-50%);
  background-color: #205e94;
  transition: linear 0.25s;
}
.message_box_btn_wrap a:hover::before {
  transition: linear 0.25s;
  right: 12px;
}

@media (max-width: 1024px) {
  .home_message_title {
    padding: 110px 0 45px;
    font-size: 28px;
  }
  .home_message_title::before {
    height: 70px;
    top: 16px;
  }

  .message_box_btn_wrap a {
    font-size: 20px;
  }
}
@media (max-width: 768px) {
  .home_message_title {
    padding: 90px 0 40px;
    font-size: 25px;
  }
  .home_message_title::before {
    height: 60px;
    top: 16px;
  }

  .home_message_wrap {
    flex-wrap: wrap;
    gap: 15px;
    padding-top: 50px;
  }

  .message_box {
    padding: 0 3%;
  }
  .message_box figure img {
    max-width: 88%;
  }
  .message_box figcaption {
    font-size: 13px;
  }
  .message_box figcaption span {
    font-size: 15px;
    padding-top: 1px;
  }

  .message_box_btn_wrap a {
    font-size: 16px;
  }
}
@media (max-width: 767px) {
  .home_message_title {
    padding: 70px 0 28px;
    font-size: 20px;
  }
  .home_message_title::before {
    height: 50px;
    top: 5px;
  }

  .home_message_wrap {
    flex-wrap: wrap;
  }
  .message_box {
    padding: 0 3%;
    width: 48%;
  }
  .message_box:last-child {
    margin-top: 35px;
  }
  .message_box figcaption {
    font-size: 12.5px;
    line-height: 1.4em;
  }
  .message_box figcaption span {
    font-size: 14px;
    padding-top: 5px;
  }
  .message_box_btn_wrap {
    width: 100%;
  }
}
@media (max-width: 320px) {
  .home_message_title {
    font-size: 18px;
    padding: 60px 0 24px;
  }
  .home_message_title::before {
    height: 45px;
    top: 3px;
  }

  .message_box figcaption {
    font-size: 12px;
  }
  .message_box figcaption span {
    font-size: 13px;
  }
}

/** Home / メッセージ **/
.home .contents_wrap {
  position: relative;
  z-index: 5;
  padding: 250px 0 200px;
  background: linear-gradient(
    0deg,
    rgba(255, 255, 255, 0.88) 93%,
    rgba(255, 255, 255, 0) 100%
  );
  margin-top: -80px;
}

@media (max-width: 1024px) {
  .home .contents_wrap {
    padding: 240px 0 180px;
  }
}
@media (max-width: 768px) {
  .home .contents_wrap {
    padding: 200px 0 160px;
  }
}
@media (max-width: 767px) {
  .home .contents_wrap {
    padding: 180px 0 100px;
  }
}
@media (max-width: 320px) {
  .home .contents_wrap {
    padding: 160px 0 80px;
  }
}

/** Home / contents **/
.home .contents_inner {
  padding: 0 100px;
  max-width: 100%;
  margin: 0 auto;
  width: 1200px;
}

.home-point-box {
  justify-content: space-between;
  align-items: center;
}
.home-point-box + .home-point-box {
  padding-top: 80px;
}
.home-point-box__img {
  position: relative;
  width: 43%;
}
.home-point-box__img span {
  position: absolute;
  right: 36px;
  top: -6px;
  font-size: 103px;
  color: #215e94;
  font-weight: 100;
  opacity: 0.6;
  font-style: italic;
  font-family: "Noto Sans JP";
}

.home-point-box__txt {
  width: 50%;
  text-align: left;
}
.home-point-box__txt h3 {
  font-size: 30px;
  color: #205e94;
  font-weight: bold;
  padding-bottom: 20px;
  margin-bottom: 16px;
  border-bottom: 1px solid #bcc6cf;
  line-height: 1.2em;
}
.home-point-box__txt p {
  font-weight: 400;
}
.home-point-box__txt ul {
  padding-top: 30px;
}
.home-point-box__txt ul li {
  width: 294px;
  position: relative;
  z-index: 0;
  border-radius: 100px;
}
.home-point-box__txt ul li + li {
  margin-top: 7px;
}
.home-point-box__txt ul li a {
  font-weight: bold;
  display: block;
  padding-left: 45px;
  line-height: 1em;
  padding: 12px 0 14px 45px;
  transition: 0.3s;
}
.home-point-box__txt ul li a:hover {
  color: #333;
}
.home-point-box__txt ul li a span {
  position: relative;
}
.home-point-box__txt ul li a span::before {
  content: "";
  background: url("../images/icon_arr_r.svg") no-repeat center;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 50%;
  left: -22px;
  transform: translateY(-50%);
}

.home-point-box__txt ul li:before {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -1;
  left: 0;
  top: 0;
  transition: 0.3s;
  background: linear-gradient(-216deg, #bfddf5 0%, transparent 70%);
  border-radius: 100px;
}
.home-point-box__txt ul li:after {
  content: "";
  width: 100%;
  height: 100%;
  position: absolute;
  z-index: -2;
  left: 0;
  top: 0;
  background: linear-gradient(-216deg, #1686df 0%, transparent 70%);
  border-radius: 100px;
  opacity: 0;
  transition: 0.3s;
}
.home-point-box__txt ul li:hover:before {
  opacity: 0;
}
.home-point-box__txt ul li:hover:after {
  opacity: 1;
}

@media (max-width: 1024px) {
  .home .contents_inner {
    padding: 0 80px;
  }

  .home-point-box__img span {
    top: -15px;
    font-size: 92px;
    right: 30px;
  }

  .home-point-box__txt h3 {
    font-size: 28px;
    padding-bottom: 17px;
    margin-bottom: 13px;
  }
  .home-point-box__txt ul {
    padding-top: 25px;
  }
}
@media (max-width: 1023px) {
  .home .contents_inner {
    padding: 0 20px;
    max-width: 92%;
  }
}
@media (max-width: 768px) {
  .home-point-box__img {
    width: 43.5%;
  }
  .home-point-box__img span {
    font-size: 80px;
    right: 23px;
  }

  .home-point-box__txt h3 {
    font-size: 25px;
    padding-bottom: 14px;
    margin-bottom: 11px;
  }
  .home-point-box__txt {
    width: 49%;
  }
  .home-point-box__txt ul {
    padding-top: 22px;
  }
  .home-point-box__txt ul li a {
    padding: 10px 0 12px 45px;
    font-size: 13px;
  }
}
@media (max-width: 767px) {
  .home .contents_inner {
    padding: 0 30px;
  }

  .home-point-box {
    flex-direction: column;
  }
  .home-point-box + .home-point-box {
    padding-top: 80px;
  }

  .home-point-box__img {
    width: 100%;
    order: 1;
    padding-bottom: 17px;
  }
  .home-point-box__img span {
    font-size: 75px;
    right: 13px;
  }

  .home-point-box__txt h3 {
    font-size: 22px;
    letter-spacing: 0.005em;
    padding-bottom: 12px;
    margin-bottom: 9px;
  }
  .home-point-box__txt {
    width: 100%;
    order: 2;
  }
  .home-point-box__txt ul {
    padding-top: 16px;
  }
  .home-point-box__txt ul li {
    width: 90%;
    margin: 0 auto;
    position: relative;
    background: linear-gradient(-216deg, #bfddf5 0%, #ebf6ff 80%);
  }
  .home-point-box__txt ul li:before {
    content: "";
    background: url("../images/icon_arr_r.svg") no-repeat center;
    width: 10px;
    height: 10px;
    position: absolute;
    top: 50%;
    left: 20px;
    transform: translateY(-50%);
  }
  .home-point-box__txt ul li:after {
    content: none;
  }
  .home-point-box__txt ul li a {
    text-align: center;
    padding: 10px 0 12px 0;
    font-size: 12.5px;
  }
  .home-point-box__txt ul li a span::before {
    content: none;
  }
}
@media (max-width: 399px) {
  .home .contents_inner {
    padding: 0 15px;
  }

  .home-point-box__txt ul {
    padding-top: 20px;
  }
}
@media (max-width: 375px) {
  .home-point-box + .home-point-box {
    padding-top: 75px;
  }

  .home-point-box__img {
    padding-bottom: 15px;
  }
  .home-point-box__img span {
    font-size: 70px;
    right: 10px;
  }

  .home-point-box__txt h3 {
    font-size: 20px;
  }
  .home-point-box__txt ul li {
    width: 100%;
  }
}
@media (max-width: 320px) {
  .home .contents_inner {
    padding: 0 10px;
  }

  .home-point-box + .home-point-box {
    padding-top: 70px;
  }

  .home-point-box__img span {
    font-size: 60px;
    right: 10px;
  }

  .home-point-box__txt h3 {
    font-size: 19px;
  }
  .home-point-box__txt ul {
    padding-top: 17px;
  }
  .home-point-box__txt ul li:before {
    left: 16px;
  }
  .home-point-box__txt ul li a {
    letter-spacing: 0;
    font-size: 12px;
  }
}

/** Home / news **/
.home-news {
  margin-top: 175px;
}
.home-news-list {
  padding: 15px 0 30px;
}

.home-news-list__link {
  display: block;
  padding: 12px 10px 13px;
  transition: 0.3s;
  border-bottom: 1px solid #dfe4e8;
}
.home-news-list__link:hover {
  background: #f3f9ff;
}

.home-news-list__head {
  display: flex;
  font-size: 13px;
  color: #2d6598;
  padding-bottom: 6px;
}
.home-news-list__date {
  padding-right: 12px;
  padding-top: 2px;
}
.home-news-list__category {
  display: flex;
  flex-wrap: wrap;
}
.home-news-list__category a {
  margin: 0 2.5px 2.5px;
  background: #e7edf3;
  border-radius: 20px;
  padding: 0 15px 1px;
  letter-spacing: 0.005em;
  transition: 0.3s;
  white-space: nowrap;
  font-size: 13px;
  color: #2d6598;
}

.home-news-list__category a:nth-child(1):hover {
  background: #005bac;
  color: #fff;
}

.home-news-list__ttl {
  font-size: 16px;
  display: block;
  font-weight: 500;
  text-align: left;
}

.home-news-btn a {
  border: 3px solid #e7edf3;
  background: #fff;
  padding: 9px 32px 10px 56px;
  display: inline-block;
  border-radius: 200px;
  letter-spacing: 0.01em;
  transition: 0.3s;
}
.home-news-btn a:hover {
  background: #005bac;
  border: 3px solid #005bac;
}
.home-news-btn a span {
  color: #2d6598;
  position: relative;
  transition: 0.3s;
}
.home-news-btn a:hover span {
  color: #fff;
  transition: 0.3s;
}
.home-news-btn a span::before {
  content: "";
  background: url("../images/icon_arr_r.svg") no-repeat center;
  width: 12px;
  height: 12px;
  position: absolute;
  top: 50%;
  left: -20px;
  transform: translateY(-50%);
  transition: 0.3s;
}
.home-news-btn a:hover span::before {
  background: url("../images/icon_arr_r_w.svg") no-repeat center;
  width: 12px;
  height: 12px;
}

@media (max-width: 1024px) {
  .home-news {
    margin-top: 125px;
  }

  .home-news-list__ttl {
    font-size: 15.5px;
  }
}
@media (max-width: 768px) {
  .home-news {
    margin-top: 95px;
  }
  .home-news-list__head {
    font-size: 12px;
  }

  .home-news-list__category a {
    font-size: 12px;
  }

  .home-news-list__ttl {
    font-size: 15px;
  }

  .home-news-btn a:hover {
    background: #fff;
    border: 3px solid #e7edf3;
  }
  .home-news-btn a:hover a span {
    color: #2d6598;
  }
  .home-news-btn a:hover a span::before {
    background: url("../images/icon_arr_r.svg") no-repeat center;
  }
}
@media (max-width: 767px) {
  .home-news {
    margin-top: 70px;
  }
  .home-news-list {
    padding: 22px 0 30px;
  }

  .home-news-list__link {
    display: block;
    padding: 13px 10px 11px;
  }
  .home-news-list__head {
    font-size: 11.5px;
  }
  .home-news-list__category a {
    font-size: 11.5px;
  }

  .home-news-list__ttl {
    font-size: 13.5px;
    line-height: 1.5em;
  }
}
@media (max-width: 375px) {
  .home-news {
    margin-top: 55px;
  }
}
@media (max-width: 320px) {
  .home-news-list {
    padding: 19px 0 30px;
  }

  .home-news-list__head {
    font-size: 11px;
  }
  .home-news-list__date {
    padding-right: 10px;
  }
  .home-news-list__category a {
    font-size: 11px;
  }
}

/** footer **/
footer {
  background: #005bac;
  padding: 40px 0;
  position: relative;
  z-index: 50;
}
.home footer > div {
  width: 1200px;
}

.foot_bnrs a {
  position: relative;
  display: inline-block;
}
.foot_bnrs a img:nth-child(2) {
  cursor: pointer;
  position: absolute;
  top: 0;
  left: 0;
}
.foot_bnrs a img:hover {
  opacity: 1;
}
.foot_bnrs a:hover img:nth-child(2) {
  opacity: 0;
  transition: opacity 0.3s;
}

.foot_nav {
  margin: auto;
}
.foot_nav li a {
  color: #ffffff;
  line-height: 1.4em;
  font-weight: 400;
  letter-spacing: 0.1em;
  font-size: 13px;
  transition: 0.3s;
}
.foot_nav li a:hover {
  color: #c6e4ff;
}
.foot_nav li + li {
  margin-left: 15px;
  padding-left: 15px;
  border-left: 1px solid #7a96c3;
}

.copy {
  text-align: center;
  font-size: 11px !important;
  color: #9fbae9;
  padding-top: 40px;
}
@media (max-width: 1024px) {
  .foot_nav {
    padding-right: 27px;
  }
}
@media (max-width: 768px) {
  .foot_nav {
    padding-right: 0;
  }

  .foot_bnrs a img:nth-child(1) {
    display: none;
  }
  .foot_bnrs a img:nth-child(2) {
    position: static;
  }
  .foot_bnrs a:hover img:nth-child(2) {
    opacity: 1;
  }
}
@media (max-width: 767px) {
  footer {
    padding: 30px 0 20px;
  }
  footer > div > .flex {
    flex-direction: column;
  }

  .foot_bnrs {
    text-align: center;
  }

  .foot_nav {
    margin: 0 auto;
    padding-top: 10px;
  }
  .foot_nav li a {
    font-size: 12px;
  }
}

/** サイドバナー **/
.side-bnr {
  position: fixed;
  bottom: 20px;
  right: 0;
  z-index: 800;
}

.side-bnr-list__item {
  width: 100%;
}
.side-bnr-list__hbg {
  display: none;
}

.side-bnr-list__item a {
  color: #fff;
  display: block;
  width: 100%;
  line-height: 1.25em;
  border: 2px solid #fff;
  border-right: 0;
  transition: 0.3s;
}
.side-bnr-list__company a {
  background: #00ab99;
  border-radius: 20px 0 0 0;
}
.side-bnr-list__support a {
  background: #c65669;
  border-top: 0;
  border-bottom: 0;
}
.side-bnr-list__company a,
.side-bnr-list__support a {
  writing-mode: vertical-rl;
  display: flex;
  align-items: center;
  font-size: 15.5px;
  font-weight: bold;
  padding: 12px 12px;
}
.side-bnr-list__song a {
  background: #005bac;
  text-align: center;
  font-size: 13.5px;
  padding: 7px 0 13px;
  border-radius: 0 0 0 20px;
}

.side-bnr-list__item a img {
  transition: 0.3s;
}
.side-bnr-list__item a:hover img {
  opacity: 0.7;
}
.side-bnr-list__company a:hover {
  background-color: #56bbc5;
  opacity: 1;
}
.side-bnr-list__support a:hover {
  background-color: #da7283;
  opacity: 1;
}
.side-bnr-list__song a:hover {
  background: #1c7ace;
  opacity: 1;
}
.side-bnr-list__song a:hover img {
  opacity: 1;
}

.side-bnr-list__company a figure,
.side-bnr-list__support a figure {
  background: #fff;
  border-radius: 50%;
  width: 41px;
  height: 41px;
  text-align: center;
  margin-bottom: 5px;
  position: relative;
}
.side-bnr-list__song a figure {
  margin-bottom: 3px;
}

.side-bnr-list__company a figure::before,
.side-bnr-list__support a figure::before {
  content: "";
  position: absolute;
  width: 25px;
  height: 25px;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
}

.side-bnr-list__company a figure::before {
  background: url("../images/icon_side_btn01.svg") no-repeat center;
}
.side-bnr-list__support a figure::before {
  background: url("../images/icon_side_btn02.svg") no-repeat center;
}
.side-bnr-list__song a figure img {
  width: 30px;
  height: 30px;
}

.side-bnr-list__item a span {
  position: relative;
}
.side-bnr-list__song a span {
  letter-spacing: 0;
}

@media (max-width: 1024px) {
  .side-bnr-list__company a,
  .side-bnr-list__support a {
    font-size: 13px;
    padding: 11px 7px;
  }
  .side-bnr-list__song a {
    font-size: 12px;
    padding: 7px 3px 13px;
  }

  .side-bnr-list__company a figure,
  .side-bnr-list__support a figure {
    width: 36px;
    height: 36px;
  }

  .side-bnr-list__company a figure::before,
  .side-bnr-list__support a figure::before {
    width: 21px;
    height: 21px;
  }
  .side-bnr-list__song a figure img {
    width: 27px;
    height: 27px;
  }
}
@media (max-width: 768px) {
  .side-bnr {
    bottom: 0;
    top: auto;
    width: 100%;
    z-index: 2000;
  }

  .side-bnr-list {
    display: flex;
    justify-content: center;
    padding: 7px 5px;
    background: #eaeaea;
  }

  .side-bnr-list__item {
    margin: 0 1%;
  }
  .side-bnr-list__company,
  .side-bnr-list__support {
    width: 40%;
  }
  .side-bnr-list__song {
    display: none;
  }
  .side-bnr-list__hbg {
    display: block;
    width: 8%;
    padding: 20px 0;
    position: relative;
    background: #fff;
    align-self: center;
    border-radius: 9px;
  }

  .side-bnr-list__item a {
    display: flex;
    justify-content: center;
    border: none;
    border-radius: 9px;
    transition: 0.3s;
  }
  .side-bnr-list__company a,
  .side-bnr-list__support a {
    font-size: 16px;
    padding: 10px 7px;
    writing-mode: initial;
  }

  .side-bnr-list__company a:hover,
  .side-bnr-list__support a:hover {
    opacity: 0.7;
  }

  .side-bnr-list__company a:hover {
    background-color: #00ab99;
  }
  .side-bnr-list__support a:hover {
    background-color: #c65669;
  }

  .side-bnr-list__company a figure,
  .side-bnr-list__support a figure {
    margin-bottom: 0;
    margin-right: 6px;
    width: 32px;
    height: 32px;
  }

  .side-bnr-list__company a figure::before,
  .side-bnr-list__support a figure::before {
    width: 18px;
    height: 18px;
  }

  .side-bnr-list__item a span br {
    display: none;
  }

  @media (max-width: 500px) {
    .side-bnr-list__hbg {
      display: block;
      width: 12%;
    }

    .side-bnr-list__item a {
      font-size: 12px;
    }

    .side-bnr-list__company a figure,
    .side-bnr-list__support a figure {
      margin-right: 7px;
      width: 30px;
      height: 30px;
    }

    .side-bnr-list__item a span br {
      display: block;
    }
  }
  @media (max-width: 375px) {
    .side-bnr-list__company a figure,
    .side-bnr-list__support a figure {
      margin-right: 5px;
    }
  }
  @media (max-width: 320px) {
    .side-bnr-list {
      margin: 0 -1%;
    }

    .side-bnr-list__item a {
      font-size: 11px;
    }

    .side-bnr-list__company a,
    .side-bnr-list__support a {
      padding: 8px 6px;
    }

    .side-bnr-list__company a figure,
    .side-bnr-list__support a figure {
      width: 26px;
      height: 26px;
    }

    .side-bnr-list__company a figure::before,
    .side-bnr-list__support a figure::before {
      width: 16px;
      height: 16px;
    }
  }

  /** サイドバナー: SPハンバーガーボタン **/
  .menu-trigger,
  .menu-trigger span {
    display: inline-block;
    transition: all 0.4s;
    box-sizing: border-box;
  }
  .menu-trigger {
    position: absolute;
    width: 25px;
    height: 21px;
    background: none;
    border: none;
    appearance: none;
    cursor: pointer;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
  }
  .menu-trigger span {
    position: absolute;
    left: 0;
    width: 100%;
    height: 3px;
    background-color: #000;
    border-radius: 4px;
  }
  .menu-trigger span:nth-of-type(1) {
    top: 0;
  }
  .menu-trigger span:nth-of-type(2) {
    top: 9px;
  }
  .menu-trigger span:nth-of-type(3) {
    bottom: 0;
  }

  .menu-trigger span:nth-of-type(2)::after {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 3px;
    background-color: #000;
    border-radius: 4px;
    transition: all 0.4s;
  }
  .menu-trigger.active span:nth-of-type(1) {
    transform: translate(50%) scale(0);
  }
  .menu-trigger.active span:nth-of-type(2) {
    transform: rotate(45deg);
  }
  .menu-trigger.active span:nth-of-type(2)::after {
    transform: rotate(90deg);
  }
  .menu-trigger.active span:nth-of-type(3) {
    transform: translate(-50%) scale(0);
  }
}

/** グローバルメニュー **/
#navWrp {
  display: block;
  position: relative;
}

.gnavi_new {
  display: none;
  width: 100%;
  height: 100%;
  position: fixed;
  top: 0;
  right: 0;
  z-index: 1800;
  overflow: auto;
  background: rgb(0 91 172 / 95%);
}
.gnavi_inner {
  width: 700px;
  margin: 0 auto;
  padding-top: 24px;
  max-width: 90%;
}
.navi--header {
  display: flex;
  align-items: center;
}
.navi--header--logo img {
  transition: 0.3s;
}
.navi--header--logo img:hover {
  opacity: 0.8;
}
.navi--header--logo figure {
  max-width: 180px;
}
.navi--header--song {
  margin-left: auto;
  margin-right: 18px;
  cursor: pointer;
  transition: 0.3s;
}
.navi--header--song:hover {
  opacity: 0.8;
}
.navi--header--song figure img {
  width: 38px;
  height: 38px;
}
.navi--header--search {
  display: flex;
  align-items: center;
}
.navi--header--close {
  cursor: pointer;
  position: fixed;
  right: 30px;
  top: 18px;
  transition: 0.3s;
}
.navi--header--close:hover {
  opacity: 0.8;
}
.navi--header--close img {
  width: 52px;
  height: 52px;
}
.navi--first {
  margin-top: 15px;
  margin-bottom: 33px;
}
.navi--first strong {
  border-top: 1px solid #74a1ce;
  border-bottom: 1px solid #74a1ce;
  display: block;
}
.navi--first strong a {
  text-align: center;
  display: block;
  color: #fff;
  font-size: 18px;
  padding: 20px 0;
  transition: 0.3s;
}
.navi--first strong a:hover {
  background: #2274be;
}
.navi--first ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.navi--first ul li {
  width: 48%;
}
.navi--first ul li a {
  padding: 16px 18px;
  font-size: 14px;
  color: #fff;
  display: block;
  margin: 0 30px;
  border-bottom: 1px solid #74a1ce;
  transition: 0.3s;
}
.navi--first ul li a:hover {
  background: #2274be;
}
.navi--second {
  display: flex;
  justify-content: space-between;
}
.navi--second--box {
  width: 48%;
  padding: 25px 30px 15px;
  background: #0258a5;
  border-radius: 10px;
}
.navi--second--box strong {
  padding-bottom: 13px;
  font-size: 16px;
  color: #fff;
  text-align: center;
  display: block;
}
.navi--second--box ul {
  display: flex;
  flex-wrap: wrap;
}
.navi--second--box ul li {
  width: 100%;
  border-top: 1px solid #74a1ce;
}
.navi--second--box ul li a {
  padding: 13px 18px;
  font-size: 14px;
  color: #fff;
  display: block;
  transition: 0.3s;
}
.navi--second--box ul li a:hover {
  background: #1971c1;
}
.navi--third {
  margin-top: 35px;
  border-top: 1px solid #74a1ce;
  border-bottom: 1px solid #74a1ce;
}
.navi--third a {
  text-align: center;
  display: block;
  color: #fff;
  font-size: 18px;
  padding: 20px 0;
  display: block;
  transition: 0.3s;
}
.navi--third a:hover {
  background: #2274be;
}
.navi--first ul li a,
.navi--second--box ul li a,
.navi--first strong a,
.navi--third a {
  position: relative;
}

.navi--first ul li a::before,
.navi--second--box ul li a::before,
.navi--first strong a::before,
.navi--third a::before {
  content: "";
  background: url("../images/icon_arr_nav.svg") no-repeat center;
  position: absolute;
  top: 50%;
  right: 5px;
  transform: translateY(-50%);
}
.navi--first ul li a::before,
.navi--second--box ul li a::before {
  width: 14px;
  height: 14px;
}

.navi--first strong a::before,
.navi--third a::before {
  width: 16px;
  height: 16px;
}
@media (max-width: 1024px) {
  .navi--header--close {
    right: 20px;
  }
  .navi--header--close img {
    width: 50px;
    height: 50px;
  }
}
@media (max-width: 768px) {
  .navi--header--search {
    margin-right: 70px;
  }
  .navi--header--close {
    right: 38px;
    top: 23px;
  }
  .navi--header--close img {
    width: 45px;
    height: 45px;
  }
  .navi--first strong a {
    font-size: 17.5px;
  }
  .navi--first ul li a {
    font-size: 13.5px;
  }
  .navi--second--box strong {
    font-size: 15.5px;
  }
  .navi--third a {
    font-size: 17.5px;
  }
}
@media (max-width: 767px) {
  .gnavi_inner {
    max-width: 88%;
  }
  .navi--header--logo figure {
    max-width: 125px;
  }
  .navi--header--song {
    margin-right: 13px;
  }
  .navi--header--song figure img {
    width: 35px;
    height: 35px;
  }
  .navi--header--search {
    margin-right: 0;
  }
  .navi--header--close {
    display: none;
  }
  .gnavi_inner {
    padding-bottom: 100px;
  }
  .navi--first strong a {
    font-size: 16.5px;
    padding: 18px 0;
  }
  .navi--first {
    margin-bottom: 30px;
  }
  .navi--first ul li {
    width: 100%;
  }
  .navi--first ul li a {
    font-size: 13px;
    padding: 11px 15px;
  }
  .navi--second {
    flex-wrap: wrap;
  }
  .navi--second--box {
    width: 100%;
  }
  .navi--second--box + .navi--second--box {
    margin-top: 20px;
  }
  .navi--second--box strong {
    font-size: 15px;
  }
  .navi--second--box ul li a {
    font-size: 13px;
    padding: 10px 15px;
  }
  .navi--third {
    margin-top: 32px;
  }
  .navi--third a {
    font-size: 16.5px;
    padding: 18px 0;
  }

  .navi--first ul li a::before,
  .navi--second--box ul li a::before {
    width: 12px;
    height: 12px;
  }

  .navi--first strong a::before,
  .navi--third a::before {
    width: 14px;
    height: 14px;
  }
  .gsc-results-wrapper-overlay {
    width: 90% !important;
    left: 50% !important;
    transform: translateX(-50%) !important;
    padding: 30px 25px !important;
  }
  .gsc-control-cse .gs-spelling,
  .gsc-control-cse .gs-result .gs-title,
  .gsc-control-cse .gs-result .gs-title * {
    font-size: 14px !important;
    line-height: 1.5em;
  }
}
@media (max-width: 375px) {
  .navi--header--logo figure {
    max-width: 120px;
  }
  .navi--first ul li a {
    margin: 0 25px;
  }
  .navi--second--box {
    padding: 20px 25px;
  }
}
@media (max-width: 320px) {
  .gnavi_inner {
    padding-bottom: 90px;
  }
  .navi--header--logo figure {
    max-width: 105px;
  }
  .navi--header--song figure img {
    width: 33px;
    height: 33px;
  }
  .navi--first {
    margin-top: 12px;
  }
  .navi--first strong a {
    font-size: 16px;
    padding: 16px 0;
  }
  .navi--first ul li a {
    font-size: 12.5px;
    letter-spacing: 0;
    padding: 10px 14px;
  }
  .navi--second--box strong {
    font-size: 14.5px;
  }
  .navi--second--box ul li a {
    font-size: 12.5px;
    letter-spacing: 0;
    padding: 9px 14px;
  }
  .navi--third a {
    font-size: 16.5px;
    padding: 16px 0;
  }
}

/** モーダル：SONG **/
.ui-dialog {
  z-index: 2100 !important;
}
.ui-widget-overlay {
  z-index: 2000 !important;
}

/* 多様な子育て支援
------------------------------------------ */
.childcare_box_wrap {
  margin: 55px 0 0;
}
.childcare_box {
  display: flex;
  border: 1px solid #e0e0e0;
  border-radius: 10px;
  position: relative;
}
.childcare_box + .page_ttl {
  margin-top: 70px;
}

.childcare_box--img {
  width: 35%;
}
.childcare_box--img {
  position: absolute;
  border-radius: 10px 0 0 10px;
  height: 100%;
  width: 34%;
}
.childcare_box--img01 {
  background: url("../images/childcare_01.png") no-repeat 28% top #eef0f2;
}
.childcare_box--img02 {
  background: url("../images/childcare_02.png") no-repeat 40% top #eef0f2;
}
.childcare_box--txtWrapper {
  padding: 45px 60px 30px 0;
  padding-left: 39%;
}
.childcare_box--txt {
  display: flex;
  align-items: center;
}
.childcare_box--txt:not(:last-child) {
  padding-bottom: 20px;
}
.childcare_box--txt + .childcare_box--txt {
  padding-top: 30px;
  border-top: 1px solid #e0e0e0;
}
.childcare_box--txt figure {
  width: 26%;
  margin-right: 7%;
}

.childcare_box--txt > div {
  width: 67%;
}
.childcare_box--txt strong {
  font-size: 20px;
}
.childcare_box--txt p {
  padding: 6px 0 11px;
}
.childcare_box--btn {
  text-align: right;
}
.childcare_box--btn a {
  background: #90b8cf;
  color: #fff;
  padding: 4px 50px 6px;
  border-radius: 100px;
  display: inline-block;
  position: relative;
  transition: 0.3s;
  font-size: 13px;
}
.childcare_box--txt a:hover {
  opacity: 0.8;
}
.childcare_box--txt a::before {
  content: "";
  background: url("../images/icon_arr_btn.svg") no-repeat center;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 48%;
  right: 10px;
  transform: translateY(-50%);
  transition: 0.3s;
}
.childcare_box--txt a:hover::before {
  right: 7px;
}

@media (max-width: 768px) {
  .childcare_box_wrap {
    margin: 45px 0 0;
  }
  .childcare_box--img {
    width: 30%;
  }
  .childcare_box--txtWrapper {
    padding: 30px 50px 28px 0;
    padding-left: 35%;
  }
  .childcare_box--txt + .childcare_box--txt {
    padding-top: 25px;
  }
  .childcare_box--txt strong {
    font-size: 17px;
  }
  .childcare_box--txt a {
    padding: 3px 40px 4px;
    font-size: 12px;
  }
  .childcare_box--txt a::before {
    width: 9px;
    height: 9px;
  }
  .childcare_box--txt p {
    padding: 5px 0 7px;
  }
  .childcare_box--txt:not(:last-child) {
    padding-bottom: 17px;
  }
  .childcare_box--txt figure {
    width: 33%;
    margin-right: 7%;
  }
  .childcare_box--txt > div {
    width: 60%;
  }
}
.childcare_box + .page_ttl {
  margin-top: 60px;
}
@media (max-width: 767px) {
  .childcare_box_wrap {
    margin: 40px 0 0;
  }
  .childcare_box {
    flex-wrap: wrap;
  }
  .childcare_box--img {
    position: static;
    height: 250px;
    width: 100%;
    border-radius: 0 0 10px 10px;
    background-size: cover;
    order: 2;
  }
  .childcare_box--img01 {
    background: url("../images/childcare_01.png") no-repeat center;
    background-size: cover;
  }
  .childcare_box--img02 {
    background: url("../images/childcare_02.png") no-repeat center;
    background-size: cover;
  }
  .childcare_box--txtWrapper {
    order: 1;
    padding: 45px 20px 45px 20px;
  }
  .childcare_box--txt {
    flex-wrap: wrap;
  }
  .childcare_box--txt:not(:last-child) {
    padding-bottom: 25px;
  }
  .childcare_box--txt a {
    font-size: 11.5px;
  }
  .childcare_box--txt figure {
    width: 154px;
    margin: 0 auto 15px;
  }
  .childcare_box--txt > div {
    width: 100%;
    text-align: center;
  }
  .childcare_box--txt strong {
    font-size: 16px;
  }
  .childcare_box--btn {
    text-align: center;
  }
}
.childcare_box + .page_ttl {
  margin-top: 55px;
}
@media (max-width: 320px) {
  .childcare_box_wrap {
    margin: 35px 0 0;
  }
  .childcare_box + .page_ttl {
    margin-top: 50px;
  }
}

/* SANKOの講座・教育機関
------------------------------------------ */
.skill_up h2 {
  margin: 70px auto 20px;
}
.skill_link_box_wrap .skill_link_box {
  padding: 16px 12px;
  border-bottom: 1px solid #e4eaef;
  margin: 0 6px;
  align-items: center;
}
.skill_link_box_wrap .skill_link_box {
  display: flex;
  align-items: center;
  justify-content: space-between;
}
.skill_link_box_wrap .skill_link_box .skill_link_box_txt {
  width: 75%;
}
.skill_link_box_wrap .skill_link_box .skill_link_box_txt h3 {
  color: #005bac;
  padding-bottom: 3px;
}
.skill_link_box_wrap .skill_link_box .skill_link_box_txt p {
  line-height: 1.8em;
}
.skill_link_box_wrap .skill_link_box .skill_link_box_btn {
  width: 20%;
  max-width: 181px;
  text-align: center;
}
.skill_link_box_wrap .skill_link_box .skill_link_box_btn a {
  background: #90b8cf;
  color: #fff;
  padding: 4px 0 6px;
  border-radius: 100px;
  display: block;
  position: relative;
  transition: 0.3s;
  font-size: 13px;
  width: 100%;
}
.skill_link_box_wrap .skill_link_box .skill_link_box_btn a:hover {
  opacity: 0.8;
}
.skill_link_box_wrap .skill_link_box .skill_link_box_btn a:hover::before {
  right: 7px;
}
.skill_link_box_wrap .skill_link_box .skill_link_box_btn a::before {
  content: "";
  background: url("../images/icon_arr_btn.svg") no-repeat center;
  width: 10px;
  height: 10px;
  position: absolute;
  top: 48%;
  right: 10px;
  transform: translateY(-50%);
  transition: 0.3s;
}
.skill_note {
  text-indent: -1em;
  margin-left: 1em;
  display: inline-block;
  padding-top: 3px;
  padding-bottom: 1px;
}
@media (max-width: 1023px) {
  .skill_up h2 {
    margin: 55px auto 15px;
  }
  .skill_link_box_wrap .skill_link_box .skill_link_box_txt {
    width: 70%;
  }

  .skill_link_box_wrap .skill_link_box .skill_link_box_btn {
    width: 25%;
  }

  .skill_link_box_wrap .skill_link_box .skill_link_box_btn a {
    padding: 4px 37px 6px;
    font-size: 12.5px;
  }
}
@media (max-width: 767px) {
  .skill_up h2 {
    margin: 45px auto 10px;
  }
  .skill_link_box_wrap .skill_link_box {
    flex-wrap: wrap;
  }
  .skill_link_box_wrap .skill_link_box .skill_link_box_txt {
    width: 100%;
  }
  .skill_link_box_wrap .skill_link_box .skill_link_box_txt {
    font-size: 12.5px;
  }
  .skill_link_box_wrap .skill_link_box .skill_link_box_btn {
    margin-left: auto;
    width: 100%;
    margin-top: 5px;
    max-width: 155px;
  }

  .skill_link_box_wrap .skill_link_box .skill_link_box_btn a {
    padding: 4px 32px 5px;
    font-size: 11.5px;
  }
  .skill_link_box_wrap .skill_link_box .skill_link_box_btn a::before {
    width: 9px;
    height: 9px;
  }
}

/* 母校で活躍したい人へ
------------------------------------------ */
.board_link_list {
  margin-top: 34px;
}
.board_link_list li {
  margin-bottom: 12px;
}
.board_link_list li .link_area {
  display: flex;
  align-items: center;
  text-decoration: none;
  width: 640px;
  height: 58px;
  margin: 0 auto;
}
.board_link_list li a.link_area:hover {
  opacity: 0.5;
}
.board_link_list li .link_area figure {
  margin: 0;
  margin-right: 15px;
  width: 41px;
  display: flex;
  justify-content: center;
}
.board_link_list li .link_area figure img {
  width: auto;
}
.board_link_list li .link_area strong {
  font-size: 18px;
  color: #3e3e3e;
}
.board_link_list li .link_area .board_link_list_right {
  margin-left: auto;
}
.board_link_list li .link_area .board_link_list_right span {
  color: #54bada;
  font-weight: bold;
  font-size: 12px;
}
.arr_right {
  margin-left: -3px;
}
.board_link_list li .link_area .board_link_list_right .board_link_list_mark {
  padding-left: 3px;
  vertical-align: sub;
}
.board_link_list li .link_area .board_link_list_right .link_box {
  display: flex;
  text-align: center;
  align-items: center;
}
.board_link_list li .link_area .board_link_list_right .link_box + .link_box {
  margin-left: 12px;
}
.board_link_list li .link_area .board_link_list_right .link_box img {
  height: 7px;
  width: 6px;
}
.board_link_list li .link_area .board_link_list_right .link_box a {
  text-decoration: none;
  color: #54bada;
  font-weight: bold;
  padding-left: 6px;
  font-size: 12px;
  line-height: 1.6em;
}
.board_link_list li .link_area .board_link_list_right .link_box a br {
  display: block;
}
.link_box_wrap {
  display: flex;
}
.board_link_list li .board_link_list_right_sp {
  display: none;
}
.link_box:hover {
  opacity: 0.5;
}

@media (max-width: 769px) {
  .board_link_list li {
    margin: 0 auto 30px;
  }
  .board_link_list li .link_area {
    height: auto;
    width: 86%;
  }
  .board_link_list li .link_area strong {
    font-size: 16px;
  }
  .board_link_list li .link_area .board_link_list_right {
    display: none;
  }
  .board_link_list li .link_area .board_link_list_right .link_box {
    justify-content: flex-end;
  }
  .board_link_list li .link_area .board_link_list_right.list_double {
    display: block;
  }
  .board_link_list li .link_area .board_link_list_right .link_box a br {
    display: none;
  }
}
@media (max-width: 767px) {
  .board_link_list li .link_area .board_link_list_right.list_double {
    display: none;
  }
  .board_link_list li .board_link_list_right_sp {
    display: block;
    width: 86%;
    margin: 3px auto 0;
    text-align: right;
  }
  .board_link_list li .board_link_list_right_sp > div {
    display: flex;
    justify-content: flex-end;
    align-items: center;
  }
  .board_link_list li .board_link_list_right_sp > div > a {
    text-decoration: none;
    color: #54bada;
    font-weight: bold;
    padding: 0 5px;
  }
}

.main_img {
  position: fixed;
  left: 0;
  top: 0;
  width: 100%;
  height: 100vh;
  z-index: 1;
  background: url("../images/sanko-main.png") no-repeat center;
  background-size: cover;
}
@media (max-width: 767px) {
  .main_img {
    background: url("../images/sanko-main-sp.png") no-repeat center;
    background-size: cover;
  }
}

/* 夢を実現「独立支援講座」
------------------------------------------ */
.know_how_wrap {
  padding-top: 35px;
}
.know_how_table {
  margin-bottom: 20px;
}
.know_how_table h2 {
  padding-bottom: 10px;
  font-size: 18px;
}
.know_how_table table {
  word-break: break-all;
  table-layout: fixed;
  width: 100%;
}
.know_how_table th,
.know_how_table td {
  vertical-align: middle;
  padding: 12px 10px;
  border: 1px solid #ddd;
}
.know_how_table thead th {
  background: #4482ba;
  color: #fff;
}
.know_how_table .know_how_table_th1 {
  width: 9%;
}
.know_how_table .know_how_table_th2 {
  width: 34%;
}
.know_how_table .know_how_table_th3 {
  width: 24%;
}
.know_how_table .know_how_table_th4 {
  width: 33%;
}
.know_how_table a {
  color: #005bac;
  text-decoration: underline;
  transition: 0.3s;
}
.know_how_table a:hover {
  opacity: 0.7;
}
.application_conditions,
.application_method {
  padding-top: 50px;
}
.application_conditions h2,
.application_method h2 {
  color: #005bac;
  border-bottom: 1px solid;
  padding-bottom: 9px;
  margin-bottom: 13px;
}
.application_conditions ol {
  list-style-type: auto;
  padding-left: 20px;
}
.application_conditions ol li {
  list-style-type: auto;
}
.application_conditions ol li + li {
  padding-top: 0.5em;
}
.application_conditions ol li span {
  display: block;
  margin-left: 1em;
  text-indent: -1em;
}
.application_conditions ol li span {
  padding-top: 5px;
  font-size: 0.95em;
}
.application_conditions ol li span + span {
  padding-top: 3px;
  padding-bottom: 5px;
}
.application_method ul {
  padding: 10px 0;
}
.application_method ul li a {
  color: #005bac;
  text-decoration: underline;
  transition: 0.3s;
}
.application_method ul li a:hover {
  opacity: 0.7;
}
.application_method .application_method_note {
  font-size: 0.95em;
  text-indent: -1em;
  margin-left: 1em;
}

@media (max-width: 767px) {
  .know_how_wrap {
    padding-top: 30px;
  }
  .know_how_table {
    overflow-x: auto;
    padding-bottom: 15px;
  }
  .know_how_table table {
    width: 700px;
    table-layout: auto;
  }
  .know_how_table::-webkit-scrollbar {
    height: 5px;
  }
  .know_how_table::-webkit-scrollbar-track {
    background: #eee;
  }
  .know_how_table::-webkit-scrollbar-thumb {
    background: #4482ba;
    border: none;
    border-radius: 10px;
  }
  .know_how_table::-webkit-scrollbar-thumb:hover {
    background: #999;
  }
  .know_how_table th,
  .know_how_table td {
    padding: 10px;
  }
  .application_conditions,
  .application_method {
    padding-top: 41px;
  }
}

.confirm_txt_privacy + span {
  display: none;
}
#MAIN .formArea .confirmSec li.privacy_link_list {
  font-size: 13px;
}
#MAIN .formArea .confirmSec li.privacy_link_list a {
  color: #005bac;
  text-decoration: underline;
  transition: 0.3s;
}
#MAIN .formArea .confirmSec li.privacy_link_list a:hover {
  opacity: 0.7;
}

#MAIN .formArea .confirmSec .checkPolicy-link .privacy_link_text {
  font-size: 13px;
}
#MAIN .formArea .confirmSec .checkPolicy-link .privacy_link_text {
  color: #005bac;
  text-decoration: underline;
  transition: 0.3s;
}
#MAIN .formArea .confirmSec .checkPolicy-link .privacy_link_text2 {
  padding-left: 10px;
}
#MAIN .formArea .confirmSec .mwform-checkbox-field-text {
  display: none;
}

/* 三幸学園ファミリー奨学生制度
------------------------------------------ */
.family_note {
  padding-top: 3px;
  font-size: 0.95em;
  margin-left: 2em;
  text-indent: -2em;
}
.family_list_school {
  min-width: 20.5em;
  display: inline-block;
}
ul.family_list {
  padding: 5px 0 20px;
}
@media (max-width: 767px) {
  .family_list_school {
    min-width: 20em;
  }
}
@media (max-width: 375px) {
  .family_list_school {
    min-width: 19.5em;
  }
}

/* 夢をかなえた卒業生企業の紹介​
------------------------------------------ */
.deals_btns_wrap {
  justify-content: center;
  gap: 20px;
  margin-top: 15px;
}
.deals_btn {
  width: 40%;
  text-align: center;
}
.deals_btn a {
  background: #90b8cf;
  color: #fff;
  padding: 14px 0 16px;
  border-radius: 100px;
  display: block;
  position: relative;
  transition: 0.3s;
  font-size: 16px;
  width: 100%;
}
.deals_btn a::before {
  content: "";
  background: url(../images/icon_arr_btn.svg) no-repeat center;
  width: 16px;
  height: 16px;
  position: absolute;
  top: 48%;
  right: 10px;
  transform: translateY(-50%);
  transition: 0.3s;
}
.deals_btn a:hover::before {
  right: 7px;
}
.deals_btn a:hover {
  opacity: 0.8;
}

@media (max-width: 767px) {
  .deals_btns_wrap {
    flex-wrap: wrap;
    gap: 15px;
  }
  .deals_btn {
    width: 80%;
  }
  .deals_btn a {
    font-size: 14px;
    padding: 8px 10px;
  }
  .deals_btn a::before {
    width: 12px;
    height: 12px;
  }
}

.deals_wrap {
  padding-top: 60px;
}

.shop-information_box {
  padding: 30px;
  border: 2px solid #ddd;
  border-radius: 25px;
  gap: 35px;
}
.shop-information_box:nth-child(n + 2) {
  margin-top: 25px;
}

.shop-information_box .image_area {
  width: 20%;
  display: flex;
  align-items: center;
}
/* .shop-information_box .image_area figure{aspect-ratio: 1/1;} */
.shop-information_box .image_area figure img {
  width: 100%;
  height: 100%; /*object-fit: cover; object-position: center center; */
}

.shop-information_box .text_area {
  width: 75%;
  display: flex;
  flex-direction: column;
  align-items: center;
}
.shop-information_box .text_area dl {
  width: 100%;
  display: flex;
  padding-bottom: 8px;
  margin-bottom: 10px;
  gap: 15px;
  border-bottom: 1px solid #e0e0e0;
  padding-left: 10px;
  padding-right: 10px;
}
.shop-information_box strong {
  font-size: 16px;
}

.shop-information_box .text_area dt {
  width: 30%;
  color: #205e94;
  font-weight: bold;
  line-height: 1.4em;
}
.shop-information_box .text_area dd {
  width: 65%;
}
.shop-information_box .text_area .concept dd {
  overflow: hidden;
  display: -webkit-box;
  text-overflow: ellipsis;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 2;
}

.shop-information_box .text_area .shop_info dd a {
  color: #205e94;
  text-decoration: underline;
  transition: linear 0.2s;
}
.shop-information_box .text_area .shop_info dd a:hover {
  color: rgba(32, 94, 148, 0.75);
  text-decoration: none;
  transition: linear 0.2s;
}

.shop-information_box .text_area dl:last-child {
  margin-bottom: 0;
}

@media (max-width: 767px) {
  .deals_wrap {
    padding-top: 45px;
  }

  .shop-information_box {
    flex-wrap: wrap;
    padding: 25px 20px;
    gap: 20px;
  }
  .shop-information_box .image_area {
    width: 70%;
    margin: 0 auto;
  }

  .shop-information_box .text_area {
    width: 100%;
  }
  .shop-information_box .text_area dl {
    flex-wrap: wrap;
    gap: 5px;
  }
  .shop-information_box .text_area dt,
  .shop-information_box .text_area dd {
    width: 100%;
  }
}

/* 就職・転職・学び直しサポート 
-------------------------------------------------------*/
#MAIN .onelineArea.carSupport .create_link ul.create_link_tel {
  justify-content: space-between;
}
#MAIN .onelineArea.carSupport .create_link ul.create_link_tel li {
  width: 35%;
}
#MAIN .onelineArea.carSupport .create_link ul.create_link_tel li:last-child {
  width: 64%;
}
#MAIN .onelineArea.carSupport .create_link ul .tel_link {
  /* width: 32%; */
  display: flex;
  justify-content: center;
  gap: 5%;
}
/* #MAIN .onelineArea.carSupport .create_link ul .tel_link:last-child {
  width: 32%;
} */
#MAIN .onelineArea.carSupport .create_link ul .tel_link a {
  display: block;
}
#MAIN .onelineArea.carSupport .create_link ul .tel_link span {
  display: block;
  text-align: center;
  font-weight: 700;
  font-size: 16px;
  line-height: 1.5;
  white-space: nowrap;
  color: #005bac;
}
#MAIN .onelineArea.carSupport .create_link ul .tel_link span.tel_num {
  font-size: 1.85em;
  color: #323232;
}

@media (max-width: 980px) {
  #MAIN .onelineArea.carSupport .create_link ul.create_link_tel {
    flex-direction: column;
    align-items: center;
    gap: 15px;
    margin-top: 15px;
  }
  #MAIN .onelineArea.carSupport .create_link ul.create_link_tel li {
    width: 100%;
  }
  #MAIN .onelineArea.carSupport .create_link ul.create_link_tel li figure {
    max-width: 280px;
    margin: 0 auto;
  }
  #MAIN .onelineArea.carSupport .create_link ul.create_link_tel li:last-child {
    width: 100%;
  }
}
@media (max-width: 767px) {
  #MAIN .onelineArea.carSupport .create_link ul .tel_link {
    flex-direction: column;
    gap: 10px;
  }
  #MAIN .onelineArea.carSupport .create_link ul .tel_link span {
    font-size: 15px;
  }
  #MAIN .onelineArea.carSupport .create_link ul .tel_link span.tel_num {
    font-size: 1.75em;
  }
}
