@charset "UTF-8";
/* ***********************************
 *    Ire's CSS Reset & Base
 * *********************************** */
/* Reset margin, padding, border */
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&display=swap");
html, body,
h1, h2, h3, h4, h5, h6,
a, p, span,
em, small, strong,
sub, sup,
mark, del, ins, strike,
abbr, dfn,
blockquote, q, cite,
code, pre,
ol, ul, li, dl, dt, dd,
div, section, article,
main, aside, nav,
header, hgroup, footer,
img, figure, figcaption,
address, time,
audio, video,
iframe,
details, summary,
fieldset, form, label, legend,
table, caption,
tbody, tfoot, thead,
tr, th, td {
  margin: 0;
  padding: 0;
  border: 0;
}

* {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  font-family: inherit;
  font-size: inherit;
  line-height: inherit;
  word-wrap: break-word;
}
*:before, *:after {
  -webkit-box-sizing: inherit;
          box-sizing: inherit;
}

a:visited {
  color: inherit;
}

/* Layout */
article,
aside,
footer,
header,
nav,
section,
main {
  display: block;
}

/* Elements */
table {
  border-collapse: collapse;
  border-spacing: 0;
}

ol, ul {
  list-style: none;
}

img, video {
  max-width: 100%;
}

img {
  border-style: none;
}

blockquote {
  quotes: none;
}
blockquote:after, blockquote:before {
  content: "";
  content: none;
}

q {
  quotes: none;
}
q:after, q:before {
  content: "";
  content: none;
}

/* Attributes & states */
[hidden] {
  display: none !important;
}

[disabled] {
  cursor: not-allowed;
}

:focus:not(:focus-visible) {
  outline: none;
}

/* Utility classes */
.sr-only {
  position: absolute;
  clip: rect(1px, 1px, 1px, 1px);
  left: -9999px;
  top: -9999px;
}

button {
  margin: 0;
  padding: 0;
  background: none;
  border: none;
  border-radius: 0;
  outline: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

/* Typography */
@view-transition {
  navigation: auto;
}
html {
  font-size: 62.5%;
  line-height: 1.6;
  word-break: break-all;
  scroll-behavior: smooth;
}

body {
  color: #333333;
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
  font-size: 16px;
  font-optical-sizing: auto;
  font-style: normal;
  letter-spacing: 0.2px;
  font-display: fallback;
  position: relative;
}

a {
  color: #333333;
}
a:link {
  color: #333333;
}
a:visited {
  color: #333333;
}
a:hover {
  color: #333333;
}

input, select {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  border-radius: 0;
  border: 1px solid #333333;
}

/*color set*/
html {
  scroll-behavior: smooth;
}

.d_pc {
  display: none;
}
@media screen and (min-width: 769px) {
  .d_pc {
    display: block;
  }
}

.d_pc_only {
  display: none;
}
@media screen and (min-width: 981px) {
  .d_pc_only {
    display: block;
  }
}

@media screen and (min-width: 981px) {
  .d_sp_tb {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .d_sp {
    display: none;
  }
}
@media screen and (min-width: 981px) {
  .d_sp {
    display: none;
  }
}

.bg_gry {
  background: #F8F8F8;
}
.bg_pink {
  background: #F7F1F6;
}

/*- - - - - - -
header
- - - - - - - */
.hd_wrap {
  background-color: #fff;
  -webkit-box-shadow: 0.2rem 0.2rem 3rem rgba(0, 0, 0, 0.2);
          box-shadow: 0.2rem 0.2rem 3rem rgba(0, 0, 0, 0.2);
  padding: min(1.2rem, 3vw);
  position: fixed;
  width: 100%;
  z-index: 10;
}
@media screen and (min-width: 769px) {
  .hd_wrap {
    padding: 1rem 0;
  }
}
.hd_inner {
  margin: auto;
  max-width: 98rem;
  padding: 2rem 0;
}
.hd_logo {
  display: block;
  line-height: 0;
  padding: 0.8rem 1rem;
  width: min(51.282vw, 20rem);
}
@media screen and (min-width: 769px) {
  .hd_logo {
    max-width: 35rem;
    padding: 2rem 3rem;
    width: 100%;
  }
}
.hd_logo__wrap {
  width: 50%;
}
.hd_menu {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-left: min(8vw, 15.4rem);
  text-align: right;
  /*width: 50%;*/
}
@media screen and (min-width: 769px) {
  .hd_menu {
    padding: 1rem 0;
    padding-left: min(8vw, 15.4rem);
  }
}
.hd_link__wrap {
  padding-right: 2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  line-height: 1em;
}
.hd_link__item {
  background: url(../img/icon_hd_nav01.svg) no-repeat center 0/2.8rem;
  padding: 0 1rem;
}
@media screen and (min-width: 769px) {
  .hd_link__item {
    background: url(../img/icon_hd_nav01.svg) no-repeat center 0.8rem/2.8rem;
    border-right: 2px solid #ddd;
    padding: 0.7rem 1rem;
  }
  .hd_link__item:first-child {
    border-left: 2px solid #ddd;
  }
}
.hd_link__item a {
  display: block;
  font-size: 1.1rem;
  padding-top: 3.4rem;
  text-decoration: none;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .hd_link__item a {
    width: 8.2rem;
  }
}
.hd_link__item.__contact {
  background-image: url(../img/icon_hd_nav02.svg);
}
.hd_link__item.__link {
  background-image: url(../img/icon_hd_nav03.svg);
}
.hd_nav__btn {
  background: #000E2F;
  border-radius: 5rem;
  cursor: pointer;
  height: clamp(4rem, 10.256vw, 6.4rem);
  width: clamp(4rem, 10.256vw, 6.4rem);
  position: relative;
}
@media screen and (min-width: 769px) {
  .hd_nav__btn {
    height: 6.4rem;
    width: 6.4rem;
  }
}
.hd_nav__btn span {
  display: block;
  border-bottom: 0.2rem solid #fff;
  position: absolute;
  left: 0;
  right: 0;
  margin: auto;
  top: 1.4rem;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  width: 1.3rem;
}
@media screen and (min-width: 769px) {
  .hd_nav__btn span {
    top: 2.4rem;
    width: 2rem;
  }
}
.hd_nav__btn span:nth-child(2) {
  top: 1.9rem;
}
@media screen and (min-width: 769px) {
  .hd_nav__btn span:nth-child(2) {
    top: 3.2rem;
  }
}
.hd_nav__btn span:last-child {
  top: 2.4rem;
}
@media screen and (min-width: 769px) {
  .hd_nav__btn span:last-child {
    top: 4rem;
  }
}
.hd_nav__btn.active {
  right: 1rem;
  position: fixed;
  z-index: 101;
}
@media screen and (min-width: 769px) {
  .hd_nav__btn.active {
    right: 1rem;
  }
}
@media screen and (min-width: 981px) {
  .hd_nav__btn.active {
    left: calc(50% + 39.2rem);
  }
}
.hd_nav__btn.active span {
  left: 0;
  right: 0;
  position: absolute;
  padding-top: 0;
  width: 2rem;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  top: 50%;
}
@media screen and (min-width: 769px) {
  .hd_nav__btn.active span {
    width: 3rem;
  }
}
.hd_nav__btn.active span:nth-child(2) {
  display: none;
}
.hd_nav__btn.active span:last-child {
  -webkit-transform: rotate(-45deg);
          transform: rotate(-45deg);
  padding-top: 0;
}
.hd_nav__wrap {
  background: #fff;
  color: #000E2F;
  right: -100vw;
  padding: 2rem;
  position: fixed;
  text-align: left;
  top: 0;
  height: 100vh;
  width: 100%;
  z-index: -100;
  opacity: 0;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
}
@media screen and (min-width: 769px) {
  .hd_nav__wrap {
    background: #F5F5F5;
    padding: 3rem 5rem;
    top: 0;
    width: 50%;
  }
}
.hd_nav__wrap.active {
  right: 0;
  opacity: 1;
  z-index: 100;
}
.hd_nav__ttl {
  font-size: 3.2rem;
  font-weight: 400;
}
.hd_nav__inner {
  max-width: 39rem;
}
@media screen and (min-width: 769px) {
  .hd_nav__inner {
    padding-top: 3.8rem;
  }
}
.hd_nav__item {
  border-bottom: 1px solid #000E2F;
  color: #000E2F;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-size: 1.5rem;
  font-weight: 400;
  line-height: 1em;
  padding: 1rem 0;
}
@media screen and (min-width: 769px) {
  .hd_nav__item {
    display: block;
  }
}
.hd_nav__item_link {
  color: #000E2F;
  border-right: 1px solid #ddd;
  display: block;
  padding: 0.5rem 0;
  position: relative;
  text-decoration: none;
  width: min(76.923vw, 30rem);
}
@media screen and (min-width: 769px) {
  .hd_nav__item_link {
    border-right: none;
    width: 100%;
  }
}
.hd_nav__item_link:before {
  border-right: 2px solid #B474A5;
  border-bottom: 2px solid #B474A5;
  content: "";
  height: 0.6rem;
  right: 1rem;
  position: absolute;
  top: calc(50% - 0.3rem);
  width: 0.6rem;
  -webkit-transform: rotate(315deg);
          transform: rotate(315deg);
}

.bl_main {
  padding-top: clamp(4rem, 10.256vw, 11.4rem);
}

/*- - - - - - -
navi
- - - - - - - */
.bl_page_nav {
  margin: auto;
  max-width: 98rem;
}
.bl_page_nav__item {
  display: block;
  margin-bottom: 1.4rem;
  padding-left: 4rem;
  position: relative;
  text-decoration: none;
}
.bl_page_nav__item:before {
  background: url(../img/icon_circle__btm.svg) no-repeat left center/2.5rem;
  content: "";
  height: 2.5rem;
  left: 0;
  position: absolute;
  top: 0;
  width: 2.5rem;
}

.mv_pages {
  padding: 10rem 0 0 2rem;
  min-height: 47.4rem;
  max-width: 192rem;
  margin: auto;
}
@media screen and (min-width: 981px) {
  .mv_pages {
    padding: 18rem 0 0;
  }
}

/*- - - - - - -
txt
- - - - - - - */
.el {
  /*hdline*/
}
.el_hdline {
  color: #2B63F6;
  font-size: 2rem;
  font-weight: 500;
  max-width: 98rem;
  margin: 0 auto 1rem;
  padding-bottom: 1rem;
  position: relative;
}
@media screen and (min-width: 981px) {
  .el_hdline {
    font-size: clamp(2.2rem, 5.641vw, 2.4rem);
    margin: 0 auto 4rem;
  }
}
.el_hdline:before {
  bottom: 0;
  border-bottom: 0.2rem solid #2B63F6;
  content: "";
  height: 0.2rem;
  right: 0;
  position: absolute;
  width: 100%;
  /*width: calc(100% - 2rem);*/
}
@media screen and (min-width: 769px) {
  .el_hdline:before {
    left: 0;
    max-width: 61rem;
    width: 31.7vw;
    z-index: -1;
  }
}
.el_hdline__sec {
  line-height: 1em;
  margin: clamp(5rem, 12.82vw, 7.5rem) auto 4rem;
  position: relative;
}
.el_hdline__sec span {
  font-size: 1.2rem;
  font-weight: normal;
  padding-left: 3.5rem;
}
.el_hdline__sec p {
  padding-top: 2.5rem;
  font-size: 2.4rem;
}
@media screen and (min-width: 769px) {
  .el_hdline__sec p {
    font-size: min(1.875vw, 3.6rem);
  }
}
.el_hdline__sec:before {
  background: url(../img/icon_circle.svg) no-repeat left center/2.5rem;
  content: "";
  height: 2.5rem;
  left: 0;
  position: absolute;
  top: 0;
  width: 2.5rem;
}
.el_hdline__sub {
  color: #2B63F6;
  font-size: 2rem;
  padding: 5rem 0 2rem;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .el_hdline__sub {
    font-size: 2.2rem;
  }
}
.el_lead {
  font-size: clamp(1.6rem, 4.1vw, 1.8rem);
  padding: 4rem 0 5rem;
}
.el_txt__c {
  text-align: center;
}

/*- - - - - - -
link
- - - - - - - */
.link_icon {
  display: inline-block;
  color: #2B63F6 !important;
  position: relative;
  padding-right: 2.2rem;
}
.link_icon:before {
  content: "";
  background: url(../img/icon_link.svg) no-repeat right top/100%;
  width: 1.4rem;
  height: 1.4rem;
  position: absolute;
  right: 0;
  top: 0.7rem;
}
.link_arw {
  text-align: right;
  display: block;
  margin: 1rem auto;
  position: relative;
  padding-right: 2rem;
  color: #293a8d !important;
  /*		display: inline-block;
  		color: $color-mid!important;
  		position: relative;
  		padding-right: 4rem;*/
}
@media screen and (min-width: 981px) {
  .link_arw:hover {
    text-decoration: none;
  }
}
.link_arw:before {
  content: "";
  border-right: 0.2rem solid #293a8d;
  border-bottom: 0.2rem solid #293a8d;
  position: absolute;
  right: 0;
  top: calc(50% - 0.2rem);
  width: 1rem;
  height: 1rem;
  -webkit-transform: rotate(315deg);
          transform: rotate(315deg);
  /*			content: "";
  			background: url(../img/icon_more_arw.svg)no-repeat right top / 100%;
  			width: 3rem;
  			height: 3rem;
  			position: absolute;
  			right: 0;
  			top: -.25rem;*/
}

.el_list__checkbox li {
  background: url(../img/icon_checkbox_check.svg) no-repeat left 0.5rem/2rem;
  padding-left: 3.5rem;
}
@media screen and (min-width: 769px) {
  .el_list__checkbox li {
    background: url(../img/icon_checkbox_check.svg) no-repeat left 0.5rem/2.5rem;
    font-size: 1.8rem;
  }
}
.el_list__circle li {
  background: url(../img/icon_list_circle.svg) no-repeat left 0.63rem/1.26rem;
  font-size: 1.4rem;
  line-height: 1.6em;
  margin-bottom: 1rem;
  padding-left: 2rem;
}
@media screen and (min-width: 769px) {
  .el_list__circle li {
    background: url(../img/icon_list_circle.svg) no-repeat left 0.63rem/1.26rem;
  }
}

/*- - - - - - -
block
- - - - - - - */
.bl_white__box {
  background: #fff;
  -webkit-box-shadow: 0.5rem 0.5rem 2rem rgba(0, 0, 0, 0.16);
          box-shadow: 0.5rem 0.5rem 2rem rgba(0, 0, 0, 0.16);
  border-radius: 1rem;
  margin: 4rem auto;
  padding: 4rem;
}
.bl_bgbox {
  border-radius: 1rem;
  padding: 1rem clamp(2rem, 5.128vw, 4rem);
}
.bl_bgbox.__rnd {
  border-radius: 1rem;
}
.bl_bgbox.__gry {
  background: #F5F5F5;
}
.bl_mv {
  min-height: clamp(30rem, 76.923vw, 40rem);
}

/*- - - - - - -
footer
- - - - - - - */
.ft {
  background: #000E2F;
  color: #fff;
}
.ft_wrap {
  padding: 5rem 2rem 9rem;
  position: relative;
}
@media screen and (min-width: 769px) {
  .ft_wrap {
    padding: 4rem 3rem;
  }
}
.ft_logo {
  margin: auto;
  max-width: 28.2rem;
  display: block;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .ft_logo {
    margin-left: -6rem;
  }
}
.ft_ttl {
  font-size: 2rem;
  padding: 0.5rem 0 2rem;
  font-weight: 400;
}
.ft_l {
  margin-bottom: 3rem;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .ft_l {
    margin-bottom: 0;
    text-align: left;
    padding-left: 6rem;
    width: 50%;
  }
}
@media screen and (min-width: 769px) {
  .ft_r {
    padding-left: min(6.77vw, 13rem);
    width: 50%;
  }
}
.ft_adress {
  font-size: clamp(1.3rem, 3.33vw, 1.5rem);
}
.ft_nav__item {
  width: 50%;
}
.ft_nav__list li {
  margin-bottom: 2rem;
  line-height: 1em;
}
.ft_nav__list a {
  background: url(../img/icon_arw.svg) no-repeat left center/0.6rem;
  color: #fff;
  font-size: 1.4rem;
  display: inline-block;
  line-height: 1em;
  padding: 0.5rem 0 0.3rem;
  padding-left: 1.6rem;
  position: relative;
  text-decoration: none;
}
.ft_nav__list a:before {
  content: "";
  border-bottom: 1px solid #2B63F6;
  bottom: 0;
  left: 1.6rem;
  width: 0;
  height: 1px;
  position: absolute;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
@media screen and (min-width: 981px) {
  .ft_nav__list a:hover:before {
    width: 100%;
  }
}
.ft_goTop {
  background: #2B63F6;
  bottom: 0;
  border-radius: 1rem 1rem 0 0;
  border: 0.1rem solid #fff;
  border-bottom: none;
  display: block;
  line-height: 1em;
  padding: 1.1rem 2.2rem 1.4rem;
  position: absolute;
  right: 0;
}
.ft_copy {
  font-size: clamp(1.1rem, 2.82vw, 1.2rem);
}
@media screen and (min-width: 981px) {
  .ft_copy {
    padding-left: 6rem;
  }
}

/*------------------------------------------------------------------
  block
------------------------------------------------------------------*/
@media screen and (min-width: 981px) {
  .bl_link {
    padding-top: 5rem;
  }
}

/*column*/
.bl_column__list {
  padding-bottom: 2.5rem;
}
.bl_column__item {
  background: #fff;
  -webkit-box-shadow: 0.2rem 0.2rem 0.5rem rgba(0, 0, 0, 0.2);
          box-shadow: 0.2rem 0.2rem 0.5rem rgba(0, 0, 0, 0.2);
  padding: 2rem;
  text-decoration: none;
}
.bl_column__item data {
  display: block;
  font-size: 1.2rem;
  padding-right: 4.8rem;
}

/*support program*/
.bl_support {
  padding: 10rem 0;
}
@media screen and (min-width: 769px) {
  .bl_support {
    padding: 15rem 0;
  }
}
.bl_support__inner {
  margin: auto;
  max-width: 90rem;
}
.bl_support__list {
  margin: 4rem auto;
}
.bl_support__date {
  font-size: 1.2rem;
  display: block;
  padding: 1rem 0;
}
.bl_support__item {
  background: #fff;
  border-radius: 1rem;
  -webkit-box-shadow: 0.2rem 0.2rem 0.5rem 0 rgba(0, 0, 0, 0.2);
          box-shadow: 0.2rem 0.2rem 0.5rem 0 rgba(0, 0, 0, 0.2);
  padding: 1rem 1rem 4rem;
  width: 100%;
}
@media screen and (min-width: 769px) {
  .bl_support__item {
    width: 32%;
    max-width: 28rem;
  }
}
.bl_support__item img {
  width: 100%;
}

/* parts */
.txt_point {
  color: #2B63F6;
}

.txt_r {
  text-align: right;
}

.pdB20 {
  padding-bottom: 2rem;
}

/* pager */
.pager_area {
  text-align: center;
}

.btn {
  display: block;
  margin: 2rem auto;
  position: relative;
  text-decoration: none;
  width: min(71.8vw, 34rem);
}
.btn:before {
  border-bottom: 0.2rem solid #333;
  border-right: 0.2rem solid #333;
  content: "";
  height: 1rem;
  position: absolute;
  right: 2rem;
  top: calc(50% - 0.5rem);
  width: 1rem;
  -webkit-transform: rotate(315deg);
          transform: rotate(315deg);
}
.btn_cmn {
  background: #2B63F6;
  padding: 2rem;
  border-radius: 1rem;
  border: 0.2rem solid #2B63F6;
  color: #fff !important;
  font-size: 2rem;
  text-align: center;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  -webkit-box-shadow: 0.2rem 0.2rem 0.5rem rgba(0, 0, 0, 0.16);
          box-shadow: 0.2rem 0.2rem 0.5rem rgba(0, 0, 0, 0.16);
}
.btn_cmn:before {
  border-color: #fff;
}
@media screen and (min-width: 981px) {
  .btn_cmn:hover {
    border: 0.2rem solid #fff;
    -webkit-box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
            box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
  }
}
.btn_produts {
  color: #2B63F6 !important;
  border: 0.2rem solid #2B63F6;
  border-radius: 10rem;
  -webkit-box-shadow: 0.2rem 0.2rem 1rem rgba(0, 0, 0, 0.2);
          box-shadow: 0.2rem 0.2rem 1rem rgba(0, 0, 0, 0.2);
  display: inline-block;
  font-size: clamp(1.6rem, 4.1vw, 1.8rem);
  line-height: 1.4em;
  margin: 4rem auto 6rem;
  padding: 1rem 4rem 1rem 2rem;
  text-align: left;
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  width: auto;
}
.btn_produts:before {
  border-color: #2B63F6;
}
@media screen and (min-width: 769px) {
  .btn_produts {
    padding: 1.8rem 4rem;
  }
}
@media screen and (min-width: 981px) {
  .btn_produts:hover {
    background: #e2e8f0;
    -webkit-box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
            box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
  }
}

.bl_newslist__pagination {
  display: -webkit-inline-box;
  display: -ms-inline-flexbox;
  display: inline-flex;
  margin: 2rem auto 5rem;
}
.bl_newslist__pagination li.pagenumber {
  background: #ddd;
  padding: 1rem 1.5rem;
  margin: 0 1rem;
  border-radius: 0.5rem;
  line-height: 1em;
  color: #fff;
  /* text-decoration: none; */
}
.bl_newslist__pagination li.pagenumber.current {
  background: #B474A5;
  padding: 1rem 1.5rem;
  margin: 0 1rem;
  border-radius: 0.5rem;
  line-height: 1em;
  color: #fff;
}
.bl_newslist__pagination li.pagenumber a {
  text-decoration: none;
  color: #AFAFAF;
}

/*------------------------------------------------------------------
  layout style
------------------------------------------------------------------*/
/*パララックス*/
.ly_bg_fxd {
  background-image: url(../img/bg_ptn.webp);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center bottom;
  background-attachment: fixed;
}
@media (min-width: 769px) {
  .ly_bg_fxd {
    background-image: url(../img/bg_ptn.webp);
  }
}

.ly_flx {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.ly_flx.__wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}
.ly_flx.__row {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}
.ly_flx.__bt {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
@media (min-width: 769px) {
  .ly_flx__tb {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.ly_flx__tb._btw {
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.ly_flx__tb.__wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.ly_col__2 {
  width: 50%;
}
.ly_col__2._tb {
  width: 100%;
}
@media screen and (min-width: 769px) {
  .ly_col__2._tb {
    width: 50%;
  }
}
.ly_bg__blu {
  background: -webkit-gradient(linear, left top, left bottom, from(#48A9FF), to(#00B0FF));
  background: linear-gradient(180deg, #48A9FF, #00B0FF);
}

.ly_inner {
  max-width: 98rem;
  margin: auto;
  width: 89.743589vw;
}
.ly_inner__full {
  max-width: 192rem;
  margin: auto;
  width: 100%;
}

/*------------------------------------------------------------------
  bg color
------------------------------------------------------------------*/
.bg_pink {
  background: #F7F1F6;
}

.bl_section {
  padding: 4rem 0;
}
@media screen and (min-width: 769px) {
  .bl_section {
    padding: 5rem 0;
  }
}
.bl_topics__wrap {
  padding: 2rem 1rem;
}
.bl_topics__list {
  margin: 2rem;
  max-width: 70rem;
}
@media screen and (min-width: 769px) {
  .bl_topics__list {
    margin: 2rem auto;
  }
}
.bl_topics__item {
  background: #fff;
  border-radius: 0.5rem;
  font-size: clamp(1.6rem, 4.1vw, 1.8rem);
  margin-bottom: 2rem;
  -webkit-box-shadow: 0.2rem 0.2rem 0.5rem rgba(0, 0, 0, 0.16);
          box-shadow: 0.2rem 0.2rem 0.5rem rgba(0, 0, 0, 0.16);
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.bl_topics__item a {
  display: block;
  position: relative;
  text-decoration: none;
}
.bl_topics__item a:before {
  border-bottom: 0.2rem solid #333;
  border-right: 0.2rem solid #333;
  content: "";
  height: 1rem;
  position: absolute;
  right: 2rem;
  top: calc(50% - 0.5rem);
  width: 1rem;
  -webkit-transform: rotate(315deg);
          transform: rotate(315deg);
}
@media screen and (min-width: 981px) {
  .bl_topics__item:hover {
    -webkit-box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
            box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
  }
}
.bl_topics__box {
  padding: 1.5rem 2rem;
  position: relative;
}
.bl_topics__box .tag_cate {
  font-size: 1.1rem;
  display: inline-block;
  margin-bottom: 0.5rem;
  background: #ccc;
  padding: 0.5rem 1rem;
  border-radius: 2rem;
  line-height: 1em;
}
.bl_mv__logo {
  margin: 2rem auto;
  width: clamp(20rem, 51vw, 40rem);
}

@media screen and (min-width: 769px) {
  .trouble_list {
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}
.trouble_item {
  margin: 1rem;
  /*width: calc(50% - 2rem);	*/
}
@media screen and (min-width: 769px) {
  .trouble_item {
    text-align: center;
    width: calc(25% - 2rem);
  }
}

/* parts */
.tag {
  background: #fff;
  border: 0.1rem solid #f7f7f7;
  border-radius: 0.4rem;
  font-weight: 500;
  display: block;
  padding: 2rem;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
  -webkit-box-shadow: 0.2rem 0.2rem 0.5rem rgba(0, 0, 0, 0.16);
          box-shadow: 0.2rem 0.2rem 0.5rem rgba(0, 0, 0, 0.16);
}
@media screen and (min-width: 981px) {
  .tag:hover {
    -webkit-box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
            box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
  }
}

/*------------------------------------------------------------------
  post page style
------------------------------------------------------------------*/
.bl_post__ttl {
  font-size: 2rem;
  padding: 1rem;
  border-bottom: 0.1rem solid #ccc;
  margin-bottom: 4rem;
}
@media screen and (min-width: 769px) {
  .bl_post__ttl {
    font-size: 2.8rem;
  }
}
.bl_post__inner h2 {
  border-left: 0.4rem solid #293A8D;
  color: #293A8D;
  font-size: 1.8rem;
  margin: 4rem auto 1rem;
  padding: 0 0 0 1rem;
}
@media screen and (min-width: 769px) {
  .bl_post__inner h2 {
    font-size: 2.4rem;
  }
}
.bl_post__inner h3 {
  font-size: 1.8rem;
  margin: 4rem auto 2rem;
}
@media screen and (min-width: 769px) {
  .bl_post__inner h3 {
    font-size: 2.4rem;
  }
}
.bl_post__inner h4 {
  color: #006699;
  font-weight: normal;
  padding: 2rem 0;
}
@media screen and (min-width: 769px) {
  .bl_post__inner h4 {
    font-size: 1.8rem;
  }
}
.bl_post__inner p {
  padding: 1rem 0;
}
.bl_post__inner ol {
  list-style-type: decimal;
  padding: 2rem 1rem;
}
@media screen and (min-width: 769px) {
  .bl_post__inner ol {
    padding: 2rem;
    margin-left: 4rem;
  }
}
.bl_post__inner ol li {
  margin-bottom: 1.5rem;
}
.bl_post__inner ul {
  list-style-type: disc;
  padding-left: 2rem 1rem;
}
@media screen and (min-width: 769px) {
  .bl_post__inner ul {
    padding: 2rem;
    margin-left: 4rem;
  }
}
.bl_post__inner ul li {
  margin-bottom: 1.5rem;
}
.bl_post__inner blockquote {
  quotes: none;
  background: #ebf4f8;
  margin: 1rem auto;
  padding: 1rem;
  border-radius: 2rem;
}
@media screen and (min-width: 769px) {
  .bl_post__inner blockquote {
    padding: 2rem;
  }
}
.bl_post__inner dl dt {
  font-weight: bold;
  font-size: clamp(1.7rem, 4.3589vw, 1.8rem);
}
.bl_post__inner em {
  font-style: normal;
  color: #cc0000;
}

@media screen and (min-width: 769px) {
  .ly_flx__pc {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
}
.ly_flx__pc figure {
  padding: 1rem;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .ly_flx__pc figure {
    padding: 2rem;
  }
}
@media screen and (min-width: 769px) {
  .ly_flx__pc ol {
    margin-left: auto;
  }
}
@media screen and (min-width: 769px) {
  .ly_flx__pc .col_2 {
    padding: 2rem;
    width: 50%;
  }
}

/*------------------------------------------------------------------
  parts style
------------------------------------------------------------------*/
.el_hdline__main {
  color: #2B63F6;
  font-size: 2.2rem;
  padding: 3rem 0 2rem;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .el_hdline__main {
    font-size: min(3.64vw, 3.6rem);
    padding: 5rem 0 3rem;
  }
}
.el_hdline__cont {
  font-size: 1.8rem;
  font-weight: 600;
  padding: 2rem 0 1rem;
  margin-bottom: 2rem;
  text-align: center;
  position: relative;
}
@media screen and (min-width: 769px) {
  .el_hdline__cont {
    font-size: min(2.6vw, 2rem);
    padding: 3rem 0 2rem;
  }
}
.el_hdline__cont:before {
  content: "";
  border-bottom: 0.2rem solid #333;
  width: 4rem;
  height: 0.2rem;
  left: 0;
  right: 0;
  margin: auto;
  position: absolute;
  bottom: 0;
}

.el_txt__c {
  text-align: center;
}
.el_txt__s {
  font-size: 1.2rem;
}
.el_txt__wht {
  color: #fff !important;
}

.el_box__shadow {
  -webkit-box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
          box-shadow: 0.5rem 0.5rem 0.5rem rgba(0, 0, 0, 0.2);
}

.tag_cate {
  font-size: 1.1rem;
  display: inline-block;
  margin-bottom: 0.5rem;
  background: #ccc;
  padding: 0.5rem 1rem;
  border-radius: 2rem;
  line-height: 1em;
}
.tag_cate:nth-child(2) {
  margin-left: 0.5rem;
}
.tag_cate.connect_mini {
  background: #FF337B;
  color: #fff;
}
.tag_cate.goanzenni {
  background: #00B3CB;
  color: #fff;
}
.tag_cate.gokinzyo {
  background: #40c6a5;
  color: #fff;
}
.tag_cate.mic {
  background: #2d6fa2;
  color: #fff;
}

/*------------------------------------------------------------------
  tab style
------------------------------------------------------------------*/
.top {
  padding-bottom: 120px;
}

.tabs {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.tab {
  background: #ffffff;
  border-radius: 4px 4px 0 0;
  display: inline-block;
  padding: 15px 10px;
  margin-right: 5px;
  margin-left: 0;
  width: calc(50% - 5px);
  font-size: 1.6rem;
  font-weight: 500;
  color: #333;
  text-align: center;
}
@media screen and (min-width: 769px) {
  .tab {
    font-size: 2rem;
    width: calc(33% - 5px);
  }
}
.tab._col {
  margin: 0 1rem;
  width: calc(50% - 2rem);
  max-width: 30rem;
}
.tab strong {
  font-size: 1.8rem;
  font-weight: 500;
  color: #2b63f6;
}
@media screen and (min-width: 769px) {
  .tab strong {
    font-size: 2.2rem;
  }
}

.tab-content dt {
  font-size: 18px;
  font-weight: bold;
  padding: 20px;
}

.tab-content dd {
  padding: 20px;
}

.tab-content {
  background: rgba(255, 255, 255, 0.2);
  display: none;
  padding: 2rem 0 4rem;
}

.tab-content.active {
  display: block;
}

.tab.active {
  background: #000e2f;
  color: #fff;
  padding: 10px;
  margin-top: 5px;
}
.tab.active strong {
  color: #fff;
}

.gotop {
  background: #a1c3d1;
  display: block;
  position: fixed;
  right: 10px;
  bottom: 10px;
  width: 80px;
  text-align: center;
  font-size: 12px;
  padding: 10px;
  border-radius: 4px;
}