@charset "UTF-8";
/* CSS Document */
/********** .container設定 **********/
@import url("https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400;500;700;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Open+Sans:ital,wght@0,300..800;1,300..800&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Lato:ital,wght@0,100;0,300;0,400;0,700;0,900;1,100;1,300;1,400;1,700;1,900&display=swap");
.container {
  width: 100%;
  max-width: none;
  max-width: inherit;
  padding-right: 20px;
  padding-left: 20px;
  margin-right: auto;
  margin-left: auto;
}
@media (min-width: 1080px) {
  .container {
    max-width: 1280px;
  }
}

/********** ガター設定 **********/
.gutter-50 {
  margin-left: -25px;
  margin-right: -25px;
}

.gutter-50 > [class*=col-] {
  padding-left: 25px;
  padding-right: 25px;
}

.gutter-40 {
  margin-left: -20px;
  margin-right: -20px;
}

.gutter-30 > [class*=col-] {
  padding-left: 15px;
  padding-right: 15px;
}

.gutter-30 {
  margin-left: -15px;
  margin-right: -15px;
}

.gutter-40 > [class*=col-] {
  padding-left: 20px;
  padding-right: 20px;
}

.gutter-20 {
  margin-left: -10px;
  margin-right: -10px;
}

.gutter-20 > [class*=col-] {
  padding-left: 10px;
  padding-right: 10px;
}

.gutter-16 {
  margin-left: -8px;
  margin-right: -8px;
}

.gutter-16 > [class*=col-] {
  padding-left: 8px;
  padding-right: 8px;
}

.gutter-10 {
  margin-left: -5px;
  margin-right: -5px;
}

.gutter-10 > [class*=col-] {
  padding-left: 5px;
  padding-right: 5px;
}

.gutter-00 {
  margin-left: 0px;
  margin-right: 0px;
}

.gutter-00 > [class*=col-] {
  padding-left: 0px;
  padding-right: 0px;
}

@media (min-width: 0px) {
  .gutter-xs-50 {
    margin-left: -25px;
    margin-right: -25px;
  }
  .gutter-xs-50 > [class*=col-] {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 576px) {
  .gutter-sm-50 {
    margin-left: -25px;
    margin-right: -25px;
  }
  .gutter-sm-50 > [class*=col-] {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 768px) {
  .gutter-md-50 {
    margin-left: -25px;
    margin-right: -25px;
  }
  .gutter-md-50 > [class*=col-] {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 1080px) {
  .gutter-lg-50 {
    margin-left: -25px;
    margin-right: -25px;
  }
  .gutter-lg-50 > [class*=col-] {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 1200px) {
  .gutter-xl-50 {
    margin-left: -25px;
    margin-right: -25px;
  }
  .gutter-xl-50 > [class*=col-] {
    padding-left: 25px;
    padding-right: 25px;
  }
}
@media (min-width: 0px) {
  .gutter-xs-30 {
    margin-left: -15px;
    margin-right: -15px;
  }
  .gutter-xs-30 > [class*=col-] {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (min-width: 576px) {
  .gutter-sm-30 {
    margin-left: -15px;
    margin-right: -15px;
  }
  .gutter-sm-30 > [class*=col-] {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (min-width: 768px) {
  .gutter-md-30 {
    margin-left: -15px;
    margin-right: -15px;
  }
  .gutter-md-30 > [class*=col-] {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (min-width: 1080px) {
  .gutter-lg-30 {
    margin-left: -15px;
    margin-right: -15px;
  }
  .gutter-lg-30 > [class*=col-] {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (min-width: 1200px) {
  .gutter-xl-30 {
    margin-left: -15px;
    margin-right: -15px;
  }
  .gutter-xl-30 > [class*=col-] {
    padding-left: 15px;
    padding-right: 15px;
  }
}
@media (min-width: 0px) {
  .gutter-xs-40 {
    margin-left: -20px;
    margin-right: -20px;
  }
  .gutter-xs-40 > [class*=col-] {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (min-width: 576px) {
  .gutter-sm-40 {
    margin-left: -20px;
    margin-right: -20px;
  }
  .gutter-sm-40 > [class*=col-] {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (min-width: 768px) {
  .gutter-md-40 {
    margin-left: -20px;
    margin-right: -20px;
  }
  .gutter-md-40 > [class*=col-] {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (min-width: 1080px) {
  .gutter-lg-40 {
    margin-left: -20px;
    margin-right: -20px;
  }
  .gutter-lg-40 > [class*=col-] {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (min-width: 1200px) {
  .gutter-xl-40 {
    margin-left: -20px;
    margin-right: -20px;
  }
  .gutter-xl-40 > [class*=col-] {
    padding-left: 20px;
    padding-right: 20px;
  }
}
@media (min-width: 0px) {
  .gutter-xs-20 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .gutter-xs-20 > [class*=col-] {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (min-width: 576px) {
  .gutter-sm-20 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .gutter-sm-20 > [class*=col-] {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (min-width: 768px) {
  .gutter-md-20 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .gutter-md-20 > [class*=col-] {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (min-width: 1080px) {
  .gutter-lg-20 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .gutter-lg-20 > [class*=col-] {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (min-width: 1200px) {
  .gutter-xl-20 {
    margin-left: -10px;
    margin-right: -10px;
  }
  .gutter-xl-20 > [class*=col-] {
    padding-left: 10px;
    padding-right: 10px;
  }
}
@media (min-width: 0px) {
  .gutter-xs-16 {
    margin-left: -8px;
    margin-right: -8px;
  }
  .gutter-xs-16 > [class*=col-] {
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media (min-width: 576px) {
  .gutter-sm-16 {
    margin-left: -8px;
    margin-right: -8px;
  }
  .gutter-sm-16 > [class*=col-] {
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media (min-width: 768px) {
  .gutter-md-16 {
    margin-left: -8px;
    margin-right: -8px;
  }
  .gutter-md-16 > [class*=col-] {
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media (min-width: 1080px) {
  .gutter-lg-16 {
    margin-left: -8px;
    margin-right: -8px;
  }
  .gutter-lg-16 > [class*=col-] {
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media (min-width: 1200px) {
  .gutter-xl-16 {
    margin-left: -8px;
    margin-right: -8px;
  }
  .gutter-xl-16 > [class*=col-] {
    padding-left: 8px;
    padding-right: 8px;
  }
}
@media (min-width: 0px) {
  .gutter-xs-10 {
    margin-left: -5px;
    margin-right: -5px;
  }
  .gutter-xs-10 > [class*=col-] {
    padding-left: 5px;
    padding-right: 5px;
  }
}
@media (min-width: 576px) {
  .gutter-sm-10 {
    margin-left: -5px;
    margin-right: -5px;
  }
  .gutter-sm-10 > [class*=col-] {
    padding-left: 5px;
    padding-right: 5px;
  }
}
@media (min-width: 768px) {
  .gutter-md-10 {
    margin-left: -5px;
    margin-right: -5px;
  }
  .gutter-md-10 > [class*=col-] {
    padding-left: 5px;
    padding-right: 5px;
  }
}
@media (min-width: 1080px) {
  .gutter-lg-10 {
    margin-left: -5px;
    margin-right: -5px;
  }
  .gutter-lg-10 > [class*=col-] {
    padding-left: 5px;
    padding-right: 5px;
  }
}
@media (min-width: 1200px) {
  .gutter-xl-10 {
    margin-left: -5px;
    margin-right: -5px;
  }
  .gutter-xl-10 > [class*=col-] {
    padding-left: 5px;
    padding-right: 5px;
  }
}
@media (min-width: 0px) {
  .gutter-xs-00 {
    margin-left: 0;
    margin-right: 0;
  }
  .gutter-xs-00 > [class*=col-] {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 576px) {
  .gutter-sm-00 {
    margin-left: 0;
    margin-right: 0;
  }
  .gutter-sm-00 > [class*=col-] {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 768px) {
  .gutter-md-00 {
    margin-left: 0;
    margin-right: 0;
  }
  .gutter-md-00 > [class*=col-] {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 1080px) {
  .gutter-lg-00 {
    margin-left: 0;
    margin-right: 0;
  }
  .gutter-lg-00 > [class*=col-] {
    padding-left: 0;
    padding-right: 0;
  }
}
@media (min-width: 1200px) {
  .gutter-xl-00 {
    margin-left: 0;
    margin-right: 0;
  }
  .gutter-xl-00 > [class*=col-] {
    padding-left: 0;
    padding-right: 0;
  }
}
/********** 5分割設定 **********/
/*
ex)
col-5-1 20%
col-sm-5-3 60%
col-md-5-4 80%
*/
.col-xl-5-5, .col-xl-5-4, .col-xl-5-3, .col-xl-5-2, .col-xl-5-1, .col-lg-5-5, .col-lg-5-4, .col-lg-5-3, .col-lg-5-2, .col-lg-5-1, .col-md-5-5, .col-md-5-4, .col-md-5-3, .col-md-5-2, .col-md-5-1, .col-sm-5-5, .col-sm-5-4, .col-sm-5-3, .col-sm-5-2, .col-sm-5-1, .col-xs-5-5, .col-5-5, .col-xs-5-4, .col-5-4, .col-xs-5-3, .col-5-3, .col-xs-5-2, .col-5-2, .col-xs-5-1, .col-5-1 {
  position: relative;
  padding-right: 15px;
  padding-left: 15px;
}

@media (min-width: 0px) {
  .col-xs-5-1 {
    flex: 0 0 20%;
    max-width: percentagepercentage(0.2);
  }
  .col-xs-5-2 {
    flex: 0 0 40%;
    max-width: percentagepercentage(0.4);
  }
  .col-xs-5-3 {
    flex: 0 0 60%;
    max-width: percentagepercentage(0.6);
  }
  .col-xs-5-4 {
    flex: 0 0 80%;
    max-width: percentagepercentage(0.8);
  }
  .col-xs-5-5 {
    flex: 0 0 100%;
    max-width: percentagepercentage(1);
  }
}
@media (min-width: 576px) {
  .col-sm-5-1 {
    flex: 0 0 20%;
    max-width: percentagepercentage(0.2);
  }
  .col-sm-5-2 {
    flex: 0 0 40%;
    max-width: percentagepercentage(0.4);
  }
  .col-sm-5-3 {
    flex: 0 0 60%;
    max-width: percentagepercentage(0.6);
  }
  .col-sm-5-4 {
    flex: 0 0 80%;
    max-width: percentagepercentage(0.8);
  }
  .col-sm-5-5 {
    flex: 0 0 100%;
    max-width: percentagepercentage(1);
  }
}
@media (min-width: 768px) {
  .col-md-5-1 {
    flex: 0 0 20%;
    max-width: percentagepercentage(0.2);
  }
  .col-md-5-2 {
    flex: 0 0 40%;
    max-width: percentagepercentage(0.4);
  }
  .col-md-5-3 {
    flex: 0 0 60%;
    max-width: percentagepercentage(0.6);
  }
  .col-md-5-4 {
    flex: 0 0 80%;
    max-width: percentagepercentage(0.8);
  }
  .col-md-5-5 {
    flex: 0 0 100%;
    max-width: percentagepercentage(1);
  }
}
@media (min-width: 1080px) {
  .col-lg-5-1 {
    flex: 0 0 20%;
    max-width: percentagepercentage(0.2);
  }
  .col-lg-5-2 {
    flex: 0 0 40%;
    max-width: percentagepercentage(0.4);
  }
  .col-lg-5-3 {
    flex: 0 0 60%;
    max-width: percentagepercentage(0.6);
  }
  .col-lg-5-4 {
    flex: 0 0 80%;
    max-width: percentagepercentage(0.8);
  }
  .col-lg-5-5 {
    flex: 0 0 100%;
    max-width: percentagepercentage(1);
  }
}
@media (min-width: 1200px) {
  .col-xl-5-1 {
    flex: 0 0 20%;
    max-width: percentagepercentage(0.2);
  }
  .col-xl-5-2 {
    flex: 0 0 40%;
    max-width: percentagepercentage(0.4);
  }
  .col-xl-5-3 {
    flex: 0 0 60%;
    max-width: percentagepercentage(0.6);
  }
  .col-xl-5-4 {
    flex: 0 0 80%;
    max-width: percentagepercentage(0.8);
  }
  .col-xl-5-5 {
    flex: 0 0 100%;
    max-width: percentagepercentage(1);
  }
}
/********** Justify設定 **********/
.text-justify {
  text-align: justify !important;
  text-justify: inter-ideograph !important;
}

@media (min-width: 0px) {
  .text-xs-justify {
    text-align: justify !important;
    text-justify: inter-ideograph !important;
  }
}
@media (min-width: 576px) {
  .text-sm-justify {
    text-align: justify !important;
    text-justify: inter-ideograph !important;
  }
}
@media (min-width: 768px) {
  .text-md-justify {
    text-align: justify !important;
    text-justify: inter-ideograph !important;
  }
}
@media (min-width: 1080px) {
  .text-lg-justify {
    text-align: justify !important;
    text-justify: inter-ideograph !important;
  }
}
@media (min-width: 1200px) {
  .text-xl-justify {
    text-align: justify !important;
    text-justify: inter-ideograph !important;
  }
}
/********** フォント設定 **********/
:root {
  --viewWidth: 100vw;
  --headerHeight: 200px;
  --topArticleHeight: 1000px;
  interpolate-size: allow-keywords;
  scroll-padding: var(--headerHeight);
  scroll-behavior: smooth;
}

html, body {
  font-size: 62.5%;
  font-family: "Zen Kaku Gothic New", "ヒラギノ角ゴ ProN W3", Hiragino Kaku Gothic ProN, Arial, Meiryo, sans-serif;
  line-height: 1;
  -webkit-text-size-adjust: 100%;
}

html {
  background-color: #e2effa;
}
html.open {
  overflow: hidden;
}

/********** ベースタグ設定 **********/
* {
  max-height: 99999px;
}

img {
  max-width: 100%;
  vertical-align: bottom;
}

a {
  text-decoration: none;
  outline: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  color: inherit;
}
a:hover, a:active, a:focus {
  text-decoration: none;
  outline: none;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}

a {
  transition: opacity 0.5s ease;
}
@media (min-width: 768px) {
  a:hover {
    opacity: 0.75;
  }
}

.dummyBox {
  display: block;
  width: 100%;
  height: 1000px;
}

/********** #wrapper **********/
#wrapper {
  font-size: 1.5rem;
  font-weight: 500;
  line-height: 1.7;
  width: 100%;
  color: #232323;
}

/********** #header **********/
#header {
  position: sticky;
  top: 0;
  left: 0;
  z-index: 100;
  background-color: #e2effa;
}
@media (min-width: 768px) {
  #header .header_upper {
    display: flex;
    justify-content: space-between;
    align-items: center;
  }
}
#header .header_upper .pc_logo {
  display: none;
}
@media (min-width: 768px) {
  #header .header_upper .pc_logo {
    display: block;
    width: calc(50% - 30px);
  }
}
@media (min-width: 768px) {
  #header .header_block {
    width: 50%;
  }
}
#header .header_lead {
  text-align: right;
  position: relative;
}
#header .header_lead:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  right: 0;
  width: calc((var(--viewWidth) - 100%) / 2);
  height: 100%;
  transform: translateX(100%);
  background-color: #00a6c5;
}
@media (min-width: 768px) {
  #header .header_lead:before {
    width: calc((var(--viewWidth) - 200%) / 2);
  }
}
#header .header_lead .inner_txt {
  display: inline-block;
  background-color: #00a6c5;
  color: #ffffff;
  font-size: 1.5rem;
  padding: 0.2em 0 0.2em calc(1.1em + 10px);
  border-radius: 0 0 0 15px;
}
@media (min-width: 768px) {
  #header .header_lead .inner_txt {
    padding: 0.2em 0 0.2em 2em;
    font-size: min(2.4rem, 24 / 1240 * var(--viewWidth));
  }
}
#header .header_links {
  text-align: right;
  line-height: 1;
  padding: 10px 0;
}
@media (min-width: 768px) {
  #header .header_links {
    padding: 20px 0;
  }
}
#header .header_links > a {
  display: inline-block;
  font-size: 1.1rem;
}
@media (min-width: 768px) {
  #header .header_links > a {
    font-size: min(1.8rem, 18 / 1240 * var(--viewWidth));
  }
}
#header .header_links > a:not(:first-of-type) {
  margin-left: 1em;
}
#header .header_links > a > img {
  vertical-align: middle;
  height: 16px;
  width: auto;
  margin-right: 0.5em;
}
@media (min-width: 768px) {
  #header .header_links > a > img {
    height: 31px;
  }
}
#header .header_links > a > span {
  position: relative;
  top: 0.1em;
}

/********** #mainMenu **********/
#mainMenu {
  background-color: #ffffff;
}
#mainMenu .sp_nav {
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 15px 20px;
}
@media (min-width: 768px) {
  #mainMenu .sp_nav {
    display: none;
  }
}
#mainMenu .sp_nav .sp_logo {
  width: calc(100% - 100px);
}
#mainMenu .sp_nav .sp_menu_btn {
  background-color: #d0340f;
  color: #ffffff;
  width: 80px;
  line-height: 1;
  padding: 10px 0;
  flex-shrink: 0;
  border-radius: 1000px;
  text-align: center;
  font-size: 1rem;
  align-content: center;
}
#mainMenu .sp_nav .sp_menu_btn i {
  margin-left: 0.5em;
  width: 12px;
  height: 6px;
  display: inline-block;
  border-top: 1px #ffffff solid;
  border-bottom: 1px #ffffff solid;
}
#mainMenu .baseMenu {
  position: fixed;
  top: 0;
  left: 0;
  padding-top: 10px;
  width: var(--viewWidth);
  transform: translateX(100%);
  transition: transform 0.5s ease;
  height: 100dvh;
  overflow-y: scroll;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu {
    padding-top: 0;
    position: relative;
    transform: translateX(0);
    height: auto;
    overflow-y: visible;
  }
}
#mainMenu .baseMenu.active {
  transform: translateX(0);
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner {
    width: 100%;
    display: flex;
    justify-content: space-between;
    max-width: 1280px;
    padding-right: 20px;
    padding-left: 20px;
    margin-left: auto;
    margin-right: auto;
  }
}
#mainMenu .baseMenu .menuInner > li.inquiry {
  padding: 20px;
  background-color: #f2ecd2;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner > li.inquiry {
    padding: 0;
    background-color: transparent;
  }
}
#mainMenu .baseMenu .menuInner > li.inquiry > a {
  background-color: #d0340f;
  color: #ffffff;
  display: block;
  font-size: 1.8rem;
  padding: 0.6em 2em 0.6em;
  text-align: center;
  position: relative;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner > li.inquiry > a {
    font-size: min(1.8rem, 18 / 1240 * var(--viewWidth));
  }
}
#mainMenu .baseMenu .menuInner > li.inquiry > a:after {
  content: "";
  width: 15px;
  height: 15px;
  display: block;
  position: absolute;
  right: 5px;
  bottom: 5px;
  background-color: #ffffff;
  clip-path: polygon(100% 0, 0% 100%, 100% 100%);
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner > li.inquiry > a:after {
    width: 12px;
    height: 12px;
  }
}
#mainMenu .baseMenu .menuInner .sp_menu_title {
  background-color: #d1340f;
  color: #ffffff;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 10px 20px;
}
#mainMenu .baseMenu .menuInner .sp_menu_title .txt {
  font-size: 2.4rem;
  line-height: 1;
}
#mainMenu .baseMenu .menuInner .sp_menu_title .btn {
  font-size: 1.2rem;
  padding: 5px;
}
#mainMenu .baseMenu .menuInner .sp_menu_title .btn i {
  display: block;
  width: 32px;
  height: 15px;
  position: relative;
}
#mainMenu .baseMenu .menuInner .sp_menu_title .btn i:before, #mainMenu .baseMenu .menuInner .sp_menu_title .btn i:after {
  content: "";
  display: block;
  width: 100%;
  height: 2px;
  background-color: #ffffff;
  position: absolute;
  top: calc(50% - 1px);
  left: 0;
}
#mainMenu .baseMenu .menuInner .sp_menu_title .btn i:before {
  transform: rotate(25deg);
}
#mainMenu .baseMenu .menuInner .sp_menu_title .btn i:after {
  transform: rotate(-25deg);
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .sp_menu_title {
    display: none;
  }
}
#mainMenu .baseMenu .menuInner .menuInner_inner {
  background-color: #f2ecd2;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner {
    flex-grow: 1;
    background-color: #ffffff;
  }
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul {
    display: flex;
    justify-content: center;
  }
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li {
  position: relative;
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li:after {
  content: "";
  display: block;
  position: absolute;
  left: 20px;
  right: 20px;
  bottom: 0;
  height: 1px;
  background-color: #ffffff;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li:after {
    content: none;
  }
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn {
  display: flex;
  align-items: center;
  justify-content: space-between;
  font-size: 1.9rem;
  color: #4f4f4f;
  padding: 20px;
  cursor: pointer;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn {
    display: block;
    padding: 0.6em 2em 0.6em;
    color: #282828;
    font-size: min(1.8rem, 18 / 1240 * var(--viewWidth));
  }
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn.current {
  color: #b43719;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn.current {
    color: #282828;
  }
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn > i {
  display: block;
  width: 1.5em;
  height: 1.5em;
  background-color: #ffffff;
  border-radius: 1000px;
  border: 1px #d1340f solid;
  position: relative;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn > i {
    display: none;
  }
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn > i:before, #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn > i:after {
  content: "";
  display: block;
  width: 60%;
  height: 2px;
  position: absolute;
  top: calc(50% - 1px);
  left: 20%;
  background-color: #d1340f;
  transition: transform 0.5s ease;
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn > i:after {
  transform: rotate(90deg);
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn.active > i:after {
  transform: rotate(0deg);
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn.link > i {
  color: #d1340f;
  text-align: center;
  line-height: 1.4em;
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn.link > i:after {
  content: none;
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .dropbtnBtn.link > i:before {
  content: "→";
  width: auto;
  height: auto;
  background-color: transparent;
  position: static;
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .submenu {
  display: none;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .submenu {
    display: block !important;
    position: absolute;
    transition: all 0.5s ease;
    height: 0;
    overflow-y: hidden;
    background-color: #ffffff;
  }
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .submenu > ul {
  padding-bottom: 20px;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .submenu > ul {
    padding-top: 20px;
  }
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .submenu > ul > li {
  padding: 0 20px;
  font-size: 1.5rem;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .submenu > ul > li {
    font-size: min(1.8rem, 18 / 1240 * var(--viewWidth));
  }
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .submenu > ul > li a {
  padding: 0.5em 1em;
  display: flex;
  color: #4f4f4f;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .submenu > ul > li a {
    white-space: nowrap;
  }
}
#mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .submenu > ul > li a.current {
  color: #50a5c3;
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .submenu > ul > li a.current {
    color: #4f4f4f;
  }
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li .submenu > ul > li a > *:first-of-type {
    color: #32559b;
  }
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li.dropbtn:hover .dropbtnBtn {
    color: #00a6c5;
  }
}
@media (min-width: 768px) {
  #mainMenu .baseMenu .menuInner .menuInner_inner > ul > li.dropbtn:hover .submenu {
    height: auto;
  }
}

/********** #footer **********/
#footer .footer_upper {
  background-color: #ffffff;
  padding: 40px 0;
}
@media (min-width: 768px) {
  #footer .footer_upper {
    padding: 70px 0 40px;
  }
}
#footer .footer_upper .logo {
  display: block;
  margin-bottom: 40px;
}
@media (min-width: 768px) {
  #footer .footer_upper .footer_upper_cont {
    display: flex;
    justify-content: end;
  }
}
@media (min-width: 768px) {
  #footer .footer_upper .footer_upper_cont > *:not(:first-of-type) {
    margin-left: 12.9032258065%;
  }
}
#footer .footer_upper .footer_upper_cont .links {
  display: flex;
  justify-content: space-between;
  margin-top: 50px;
}
@media (min-width: 768px) {
  #footer .footer_upper .footer_upper_cont .links {
    margin-top: 80px;
  }
}
#footer .footer_upper .footer_upper_cont .links .quick > *:nth-of-type(2) {
  margin-top: 20px;
}
#footer .footer_upper .footer_upper_cont .links .quick > *:nth-of-type(3) {
  margin-top: 10px;
}
#footer .footer_upper .footer_upper_cont .links .secom {
  text-align: right;
  width: 100px;
  padding-top: 100px;
}
@media (min-width: 1080px) {
  #footer .footer_upper .footer_upper_cont .links .secom {
    width: 200px;
  }
}
#footer .footer_upper .tel {
  margin-top: 10px;
  display: flex;
  align-items: center;
}
#footer .footer_upper .tel a {
  font-size: 3.6rem;
  font-family: "Open Sans", sans-serif;
  color: #d0340f;
  line-height: 1;
  margin-left: 0.2em;
  position: relative;
  top: -0.05em;
  font-weight: 700;
  letter-spacing: -0.05em;
}
@media (min-width: 768px) {
  #footer .footer_upper .tel a {
    cursor: default;
    margin-left: 0.5em;
    pointer-events: none;
    letter-spacing: 0;
  }
}
#footer .footer_upper .footer_btn {
  background-color: #e88778;
  border-radius: 10px;
  display: flex;
  align-items: center;
  color: #ffffff;
  padding: 0.5em 1em;
  width: 200px;
  display: flex;
  justify-content: space-between;
}
#footer .footer_upper .footer_btn img {
  height: 18px;
  width: auto;
  margin-right: 10px;
}
#footer .footer_upper .items {
  display: inline-block;
  color: #d0340f;
  background-color: #fdefea;
  border-radius: 1000px;
  padding: 0.3em 1.5em;
  vertical-align: middle;
  line-height: 1;
  font-size: 1.5rem;
}
@media (min-width: 768px) {
  #footer .footer_upper .items {
    font-size: 1.6rem;
  }
}

#copyright {
  background-color: #50a5c3;
  color: #ffffff;
  padding: 1em 0;
}
#copyright small {
  display: block;
  text-align: center;
}
#copyright small > * {
  display: block;
}
@media (min-width: 768px) {
  #copyright small > * {
    display: inline-block;
  }
}
#copyright small > *:nth-of-type(1) {
  font-size: 1.4rem;
}
@media (min-width: 768px) {
  #copyright small > *:nth-of-type(1) {
    font-size: 1.5rem;
    margin-right: 30px;
  }
}
#copyright small > *:nth-of-type(2) {
  font-size: 1.2rem;
  font-family: "Open Sans", sans-serif;
}
@media (min-width: 768px) {
  #copyright small > *:nth-of-type(2) {
    font-size: 1.2rem;
  }
}

#underLinks {
  position: sticky;
  left: 0;
  bottom: 0;
  z-index: 50;
  background-color: #0b549e;
}
#underLinks > ul {
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 20px;
}
@media (min-width: 768px) {
  #underLinks > ul {
    padding: 10px 40px;
    max-width: 1200px;
    margin-left: auto;
    margin-right: auto;
  }
}
#underLinks > ul > *:nth-of-type(2) {
  margin-left: 2%;
}
#underLinks > ul > *:nth-of-type(3) {
  margin-left: 1%;
}
@media (min-width: 768px) {
  #underLinks > ul > *:nth-of-type(3) a {
    cursor: default;
    pointer-events: none;
  }
}
#underLinks > ul picture,
#underLinks > ul img {
  display: block;
}
#underLinks > ul img {
  width: 100%;
  height: auto;
}

/********** .breadcrumbs **********/
.breadcrumbs {
  display: none;
  font-size: 1.4rem;
  color: #6f9bcf;
  padding-top: 30px;
}
@media (min-width: 768px) {
  .breadcrumbs {
    display: flex;
  }
}
.breadcrumbs > *:not(:last-of-type):after {
  content: "＞";
  padding: 0 1em;
}

/********** .twoColumnContents **********/
.twoColumnContents {
  padding-top: 30px;
}
@media (min-width: 768px) {
  .twoColumnContents {
    display: flex;
    justify-content: space-between;
    padding-top: 60px;
    align-items: flex-start;
  }
}
.twoColumnContents .sideMenu {
  display: none;
  width: 26.6129032258%;
  left: 0;
  position: sticky;
}
@media (min-width: 768px) {
  .twoColumnContents .sideMenu {
    display: block;
  }
}
.twoColumnContents .sideMenu .sameLevel {
  background-color: #ffffff;
  border-radius: 10px;
  padding: 10px 20px;
}
.twoColumnContents .sideMenu .sameLevel > li:not(:last-of-type) {
  border-bottom: 1px #c8e1eb solid;
}
.twoColumnContents .sideMenu .sameLevel a {
  display: flex;
  padding: 10px 0;
  align-items: center;
  font-size: min(1.6rem, 16 / 1240 * var(--viewWidth));
}
.twoColumnContents .sideMenu .sameLevel a.current:after {
  content: "▶";
  color: #0b549e;
  margin-left: 0.3em;
}
@media (min-width: 768px) {
  .twoColumnContents .sideMenu .connection_information {
    margin-top: 0;
    max-width: none;
    max-width: inherit;
    display: block;
    padding: 10px 20px;
  }
  .twoColumnContents .sideMenu .connection_information > *.ttl {
    text-align: left;
    padding: 0.8em 0;
  }
  .twoColumnContents .sideMenu .connection_information > *.ttl:before {
    content: none;
  }
  .twoColumnContents .sideMenu .connection_information > *.link a {
    text-align: left;
    border-top: 1px #82bed2 solid;
  }
  .twoColumnContents .sideMenu .connection_information > *.link a i {
    display: none;
  }
}
.twoColumnContents .mainContents {
  position: relative;
}
@media (min-width: 768px) {
  .twoColumnContents .mainContents {
    padding: 40px;
    width: 70.9677419355%;
    background-color: #ffffff;
    border-radius: 10px;
  }
}
.twoColumnContents .mainContents .sp_mainContents {
  background-color: #ffffff;
  border-radius: 10px;
  padding: 20px;
}
@media (min-width: 768px) {
  .twoColumnContents .mainContents .sp_mainContents {
    border-radius: 0;
    padding: 0;
  }
}

/********** common parts **********/
.page_icn {
  position: absolute;
  top: 0;
  right: 20px;
  height: auto;
  transform: translateY(-50%);
}
@media (min-width: 768px) {
  .page_icn {
    right: 40px;
  }
}

main {
  padding-bottom: 90px;
}
@media (min-width: 768px) {
  main {
    padding-bottom: 180px;
  }
}
main section.first_section {
  margin-top: 20px;
}
@media (min-width: 768px) {
  main section.first_section {
    margin-top: 50px;
  }
}
main section.normal_section {
  margin-top: 50px;
}
@media (min-width: 768px) {
  main section.normal_section {
    margin-top: 100px;
  }
}

.category_name {
  font-size: 1.4rem;
  font-weight: 700;
  color: #6f9bcf;
}
@media (min-width: 768px) {
  .category_name {
    font-size: 2rem;
  }
}

.connection_information {
  width: 72.2222222222%;
  background-color: #ffffff;
  margin-left: auto;
  margin-right: auto;
  color: #00a6c5;
  padding: 0 20px;
  border-radius: 10px;
  font-size: 1.3rem;
  margin-top: 30px;
}
@media (min-width: 768px) {
  .connection_information {
    width: auto;
    max-width: 680px;
    display: flex;
    flex-wrap: wrap;
    font-size: 1.6rem;
    margin-top: 80px;
  }
}
@media (min-width: 768px) {
  .connection_information > *.ttl {
    position: relative;
  }
  .connection_information > *.ttl:before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #00a6c5;
    position: absolute;
    left: 0;
    top: 50%;
  }
}
.connection_information > *.ttl p {
  display: block;
  padding: 0.8em 0;
  position: relative;
}
@media (min-width: 768px) {
  .connection_information > *.ttl {
    width: 100%;
    text-align: center;
  }
  .connection_information > *.ttl p {
    padding: 0;
    display: inline-block;
    background-color: #ffffff;
    padding: 0 0.5em;
  }
}
.connection_information > *.link a {
  display: block;
  padding: 0.8em 0;
  border-top: 1px #00a6c5 solid;
}
.connection_information > *.link a i {
  display: none;
}
@media (min-width: 768px) {
  .connection_information > *.link {
    flex-grow: 1;
  }
  .connection_information > *.link a {
    border-top: none;
    text-align: center;
  }
  .connection_information > *.link a i {
    width: 1em;
    height: 1em;
    background-color: #00a6c5;
    display: inline-block;
    position: relative;
    top: 0.175em;
    border-radius: 1000px;
    position: relative;
    margin-left: 0.3em;
  }
  .connection_information > *.link a i:before {
    content: "▶";
    color: #ffffff;
    font-size: 0.5em;
    position: absolute;
    left: 50%;
    top: 50%;
    transform: translate(-50%, -50%);
  }
}

.h1_txt {
  font-size: 2.2rem;
  color: #0b549e;
  font-weight: 700;
  line-height: 1.2;
  margin-top: 20px;
}
@media (min-width: 768px) {
  .h1_txt {
    font-size: 4.4rem;
    margin-top: 40px;
  }
}

.h2_bar {
  font-size: 1.5rem;
  color: #ffffff;
  background: linear-gradient(to right, rgba(93, 190, 211, 0.99) 0%, rgba(189, 225, 235, 0.99) 100%);
  position: relative;
  padding: 0.2em 0.2em 0.2em 1.5em;
}
@media (min-width: 768px) {
  .h2_bar {
    font-size: 2rem;
  }
}
.h2_bar:before {
  content: "";
  width: 1em;
  height: 1px;
  background-color: #ffffff;
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
}
.h2_bar.linkbtn {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.h2_bar.linkbtn > a {
  background-color: #00a6c5;
  display: flex;
  align-items: center;
  justify-content: space-between;
  border-radius: 5px;
  padding: 0.3em 0.8em;
}
.h2_bar.linkbtn > a .txt {
  font-size: 1rem;
  color: #ffffff;
  line-height: 1.1;
  margin-right: 0.3em;
}
@media (min-width: 768px) {
  .h2_bar.linkbtn > a .txt {
    font-size: 1.5rem;
  }
}
.h2_bar.linkbtn > a .txt > span {
  display: block;
}
@media (min-width: 768px) {
  .h2_bar.linkbtn > a .txt > span {
    display: inline;
  }
}
.h2_bar.linkbtn > a i {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: #ffffff;
  position: relative;
  top: 0.1em;
  margin-left: 0.2em;
  border-radius: 1000px;
}
.h2_bar.linkbtn > a i:before {
  content: "▶";
  line-height: 1;
  color: #00a6c5;
  font-size: 50%;
  position: absolute;
  left: 22%;
  top: 20%;
}

.h3_udline {
  color: #0b549e;
  display: flex;
  line-height: 1.8;
  border-top: 1px #0b549e solid;
  border-bottom: 1px #0b549e solid;
  padding: 0.3em 0;
}
.h3_udline:before {
  content: "";
  display: inline-block;
  width: 0.9em;
  height: 0.9em;
  background-color: #0b549e;
  position: relative;
  top: 0.45em;
  margin-right: 0.5em;
  flex-shrink: 0;
}

.h3_alline {
  font-size: 1.5rem;
  color: #0b549e;
  border: 1px #0b549e solid;
  line-height: 1.8;
  padding: 0 0.4em;
}

.h3_linkbtn {
  display: flex;
  justify-content: space-between;
}
.h3_linkbtn > p {
  color: #0b549e;
  border-bottom: 1px #0b549e solid;
  border-left: 9px #0b549e solid;
  font-size: 1.5rem;
  font-weight: 700;
  padding-left: 0.2em;
  align-content: center;
  line-height: 1;
}
.h3_linkbtn > p.lsm01 {
  letter-spacing: -0.1em;
}
@media (min-width: 768px) {
  .h3_linkbtn > p.lsm01 {
    letter-spacing: normal;
  }
}
@media (min-width: 768px) {
  .h3_linkbtn > p {
    font-size: 2.4rem;
    line-height: 1.2;
    padding: 0.2em 0.5em;
  }
}
.h3_linkbtn > a {
  background-color: #0b549e;
  display: flex;
  align-items: center;
  border-radius: 5px;
  padding: 0.5em 0.8em;
}
.h3_linkbtn > a .txt {
  font-size: 1rem;
  color: #ffffff;
  line-height: 1.1;
  margin-right: 0.3em;
}
@media (min-width: 768px) {
  .h3_linkbtn > a .txt {
    font-size: 1.5rem;
  }
}
.h3_linkbtn > a .txt > span {
  display: block;
}
@media (min-width: 768px) {
  .h3_linkbtn > a .txt > span {
    display: inline;
  }
}
.h3_linkbtn > a i {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: #ffffff;
  position: relative;
  top: 0.1em;
  margin-left: 0.2em;
  border-radius: 1000px;
}
.h3_linkbtn > a i:before {
  content: "▶";
  line-height: 1;
  color: #0b549e;
  font-size: 50%;
  position: absolute;
  left: 22%;
  top: 20%;
}

.h4_blueback > span {
  display: inline-block;
  background-color: #e2effa;
  color: #0b549e;
  font-size: 1.4rem;
  padding: 0 0.5em;
}
@media (min-width: 768px) {
  .h4_blueback > span {
    font-size: 1.5rem;
  }
}

.list_custom > li {
  display: flex;
}
.list_custom > li i {
  flex-shrink: 0;
}
.list_custom > li i:before {
  content: "";
  display: inline-block;
  width: 1em;
  height: 1em;
}
.list_custom.type01 {
  font-size: 1.2rem;
}
@media (min-width: 768px) {
  .list_custom.type01 {
    font-size: 1.3rem;
  }
}
.list_custom.type01 > li {
  margin-top: 0.7em;
}
.list_custom.type01 > li i {
  padding-top: 0.1em;
  padding-right: 0.5em;
}
.list_custom.type01 > li i:before {
  background-color: #e1cd93;
  border-radius: 1000px;
}
.list_custom.type01.ver2 > li i:before {
  background-color: #6f9cd0;
  border-radius: 1000px;
}
.list_custom.type02 {
  font-size: 1.4rem;
}
@media (min-width: 768px) {
  .list_custom.type02 {
    font-size: 1.5rem;
  }
}
.list_custom.type02 > li i {
  padding-top: 0.1em;
  padding-right: 0.5em;
}
.list_custom.type02 > li i:before {
  background-color: #6f9cd0;
}

@media (min-width: 768px) {
  .bubble_list {
    display: flex;
  }
}
.bubble_list > dt {
  color: #0b549e;
  background-color: #ffffff;
  border: 1px #0b549e solid;
  text-align: center;
  font-size: 1.5rem;
  position: relative;
}
@media (min-width: 768px) {
  .bubble_list > dt {
    align-content: center;
    flex-shrink: 0;
  }
}
.bubble_list > dt:after {
  content: "";
  width: 10px;
  height: 7px;
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  background-color: #0b549e;
  transform: translate(-50%, 100%);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}
@media (min-width: 768px) {
  .bubble_list > dt:after {
    width: 10px;
    height: 8px;
    bottom: 50%;
    left: auto;
    right: 0;
    transform: translate(100%, 50%);
    clip-path: polygon(0 100%, 0 0, 100% 50%);
  }
}
@media (min-width: 768px) {
  .bubble_list > dd {
    padding-left: 20px;
  }
}
.bubble_list > dd a {
  display: inline-block;
  /*background-color: #797979;*/
  font-weight: 700;
  font-size: 1.5rem;
  color: #ffffff;
  /*padding: 0.2em 0.7em;*/
  border-radius: 5px;
}
@media (min-width: 768px) {
  .bubble_list > dd a {
    font-size: 1.7rem;
    /*padding: 0.2em 1.0em;*/
  }
}

.linkbk {
  color: #0b549e;
}
.linkbk i {
  display: inline-block;
  flex-shrink: 0;
  width: 1em;
  height: 1em;
  background-color: #0b549e;
  position: relative;
  top: 0.1em;
  margin-left: 0.2em;
  border-radius: 1000px;
}
.linkbk i:before {
  content: "▶";
  line-height: 1;
  color: #ffffff;
  font-size: 50%;
  position: absolute;
  left: 30%;
  top: 20%;
}

.dw_btn {
  color: #ffffff;
  background: linear-gradient(to bottom, rgba(239, 160, 150, 0.99) 0%, rgb(225, 110, 89) 100%);
  font-size: 0.9rem;
  display: block;
  width: 78.125%;
  margin-left: auto;
  margin-right: auto;
  padding: 0.5em 0;
  text-align: center;
  border-radius: 5px;
  margin-top: 15px;
}
@media (min-width: 768px) {
  .dw_btn {
    width: 81.0810810811%;
    padding: 0.2em 0;
    margin-top: 20px;
    font-size: min(1.8rem, 18 / 1240 * var(--viewWidth));
  }
}

.inquiry_box {
  border: 1px #0b549e solid;
  padding: 25px 10px;
  position: relative;
  margin-top: 60px;
}
@media (min-width: 768px) {
  .inquiry_box {
    margin-top: 120px;
    padding: 40px 30px;
  }
}
.inquiry_box .inquiry_inner_grid {
  border-bottom: 1px #0b549e dotted;
  padding-bottom: 10px;
  display: grid;
  grid-template-columns: 100px 1fr;
  grid-template-rows: auto auto;
  gap: 10px 5px;
}
@media (min-width: 768px) {
  .inquiry_box .inquiry_inner_grid {
    padding-bottom: 20px;
    grid-template-columns: 33.7837837838% 1fr;
    gap: 0 15px;
  }
}
.inquiry_box .inquiry_inner_grid .grid-1 {
  background-color: #0b549e;
  display: block;
  color: #ffffff;
  border-radius: 10px;
  align-content: center;
  padding: 0 1em;
  word-break: break-all;
  font-size: 0.8rem;
  grid-column: 1/2;
  grid-row: 1/2;
  padding: 10px;
}
@media (min-width: 768px) {
  .inquiry_box .inquiry_inner_grid .grid-1 {
    font-size: 1.6rem;
    grid-row: 1/3;
  }
}
.inquiry_box .inquiry_inner_grid .grid-1 span {
  display: block;
  line-height: 1;
  text-align: center;
}
@media (min-width: 768px) {
  .inquiry_box .inquiry_inner_grid .grid-1 span {
    font-size: 1.6rem;
  }
}
.inquiry_box .inquiry_inner_grid .grid-1 i {
  width: 1em;
  height: 1em;
  display: inline-block;
  background: url(../img/common/icn_mail.svg) no-repeat center/contain;
  position: relative;
  top: 0.2em;
}
.inquiry_box .inquiry_inner_grid .grid-2 {
  grid-column: 2/3;
  grid-row: 1/2;
  font-size: 0.9rem;
  align-content: center;
}
@media (min-width: 768px) {
  .inquiry_box .inquiry_inner_grid .grid-2 {
    font-size: 1.4rem;
  }
}
.inquiry_box .inquiry_inner_grid .grid-3 {
  grid-column: 1/3;
  grid-row: 2/3;
  font-size: 0.8rem;
}
@media (min-width: 768px) {
  .inquiry_box .inquiry_inner_grid .grid-3 {
    grid-column: 2/3;
    grid-row: 2/3;
    font-size: 1.4rem;
  }
}
.inquiry_box .ttl {
  font-size: 1.4rem;
  background-color: #9db9dd;
  color: #ffffff;
  border: 1px #0b549e solid;
  border-radius: 1000px;
  text-align: center;
  width: 100%;
  max-width: 180px;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translate(-50%, -50%);
}
@media (min-width: 768px) {
  .inquiry_box .ttl {
    font-size: 2rem;
    max-width: 360px;
  }
}
.inquiry_box .btn_mail {
  background-color: #0b549e;
  display: block;
  color: #ffffff;
  border-radius: 10px;
  align-content: center;
  padding: 0 1em;
  word-break: break-all;
  font-size: 0.8rem;
  width: 100px;
}
@media (min-width: 768px) {
  .inquiry_box .btn_mail {
    font-size: 1.6rem;
    width: 33.7837837838%;
  }
}
.inquiry_box .btn_mail span {
  display: block;
  line-height: 1;
  text-align: center;
}
@media (min-width: 768px) {
  .inquiry_box .btn_mail span {
    font-size: 1.6rem;
  }
}
.inquiry_box .btn_mail i {
  width: 1em;
  height: 1em;
  display: inline-block;
  background: url(../img/common/icn_mail.svg) no-repeat center/contain;
  position: relative;
  top: 0.2em;
}
.inquiry_box .tel_box {
  margin-top: 10px;
}
@media (min-width: 768px) {
  .inquiry_box .tel_box {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin-top: 20px;
  }
}
.inquiry_box .tel_box .tel_inner {
  display: flex;
  margin-top: 10px;
}
@media (min-width: 768px) {
  .inquiry_box .tel_box .tel_inner {
    margin-top: 0;
  }
}
.inquiry_box .tel_box .tel_inner .tel_ttl {
  font-size: 0.8rem;
  color: #0b549e;
  background-color: #e2effa;
  width: 40px;
  text-align: center;
  align-content: center;
}
@media (min-width: 768px) {
  .inquiry_box .tel_box .tel_inner .tel_ttl {
    font-size: 1.8rem;
  }
}
.inquiry_box .tel_box .tel_inner a {
  font-size: 3rem;
  font-family: "Open Sans", sans-serif;
  color: #0b549e;
  line-height: 1;
  font-weight: 700;
}
@media (min-width: 768px) {
  .inquiry_box .tel_box .tel_inner a {
    font-size: 4rem;
    cursor: default;
    pointer-events: none;
  }
}

@media (min-width: 768px) {
  .workshop_grid {
    margin-top: 30px;
    display: grid;
    grid-template-columns: 1fr 39.1891891892%;
    grid-template-rows: auto 1fr;
    gap: 30px 10px;
  }
}
.workshop_grid .grid-1 {
  margin-top: 15px;
}
@media (min-width: 768px) {
  .workshop_grid .grid-1 {
    margin-top: 0;
    grid-column: 1/2;
    grid-row: 1/2;
  }
}
.workshop_grid .grid-2 {
  margin-top: 15px;
  display: block;
}
@media (min-width: 768px) {
  .workshop_grid .grid-2 {
    margin-top: 0;
    grid-column: 2/3;
    grid-row: 1/3;
  }
}
.workshop_grid .grid-3 {
  margin-top: 15px;
}
@media (min-width: 768px) {
  .workshop_grid .grid-3 {
    margin-top: 0;
    grid-column: 1/2;
    grid-row: 2/3;
  }
}
.workshop_grid .grid-3 .workshop_ttl {
  font-size: 1.5rem;
  background-color: #6f9bcf;
  color: #ffffff;
  text-align: center;
  border-radius: 1000px;
  padding: 0.2em 0;
}
@media (min-width: 768px) {
  .workshop_grid .grid-3 .workshop_ttl {
    font-size: 1.6rem;
    max-width: 360px;
    margin-left: auto;
    margin-right: auto;
  }
}
.workshop_grid .grid-3 .workshop_tel {
  display: flex;
  justify-content: center;
  align-items: center;
  margin-top: 15px;
}
.workshop_grid .grid-3 .workshop_tel > dt {
  font-size: 1.4rem;
  background-color: #ffffff;
  border: 1px #0b549e solid;
  color: #0b549e;
  line-height: 1;
  padding: 0.3em 0.4em;
  margin-right: 0.5em;
}
@media (min-width: 768px) {
  .workshop_grid .grid-3 .workshop_tel > dt {
    font-size: 1.8rem;
    border: none;
    background-color: #e2effa;
  }
}
.workshop_grid .grid-3 .workshop_tel > dd a {
  font-family: "Open Sans", sans-serif;
  font-size: 3rem;
  font-weight: 700;
  color: #0b549e;
  line-height: 1;
}
@media (min-width: 768px) {
  .workshop_grid .grid-3 .workshop_tel > dd a {
    font-size: 4rem;
    cursor: default;
    pointer-events: none;
  }
}

.swiper-horizontal .swiper-button-next,
.swiper-horizontal .swiper-button-prev {
  background-color: #dcdcdc;
  width: 3vw;
  height: auto;
  aspect-ratio: 1/3;
}
.swiper-horizontal .swiper-button-prev {
  left: 18.5%;
  clip-path: polygon(100% 0, 100% 100%, 0 50%);
}
.swiper-horizontal .swiper-button-next {
  right: 18.5%;
  clip-path: polygon(0 0, 0 100%, 100% 50%);
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
  opacity: 0;
}

#pagetop {
  position: sticky;
  z-index: 48;
  bottom: 100px;
}
#pagetop a {
  display: block;
  width: 40px;
  height: 40px;
  background-color: #0b549e;
  position: absolute;
  bottom: 0;
  right: 10px;
}
#pagetop a:before {
  content: "";
  display: block;
  clip-path: polygon(50% 0%, 0% 100%, 100% 100%);
  width: 40%;
  height: 40%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background-color: #ffffff;
}

.downloadList {
  display: flex;
  flex-wrap: wrap;
}
.downloadList > * {
  width: 50%;
  margin-top: 30px;
}
@media (min-width: 768px) {
  .downloadList > * {
    width: 33.3333333333%;
  }
}
.downloadList > * .downloadList_inner {
  width: 70%;
  margin-left: auto;
  margin-right: auto;
}
.downloadList > * .downloadList_inner .dw_date {
  color: #0b549e;
  font-size: 0.7rem;
}
@media (min-width: 768px) {
  .downloadList > * .downloadList_inner .dw_date {
    font-size: 1.6rem;
  }
}
.downloadList > * .downloadList_inner .dw_name {
  font-size: 0.7rem;
  margin-top: 0.3em;
}
@media (min-width: 768px) {
  .downloadList > * .downloadList_inner .dw_name {
    font-size: 1.6rem;
  }
}
.downloadList > * .downloadList_inner .dw_image {
  display: block;
  margin-top: 15px;
  align-content: center;
}
@media (min-width: 768px) {
  .downloadList > * .downloadList_inner .dw_image {
    margin-top: 20px;
  }
}
.downloadList > * .downloadList_inner .dw_image img {
  width: 100%;
  height: auto;
  display: block;
  filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.2));
}

.btn_box {
  background-color: #0b549e;
  color: #ffffff;
  align-content: center;
  text-align: center;
  border-radius: 10px;
  padding: 10px 5px;
  display: block;
  line-height: 1;
}
@media (min-width: 768px) {
  .btn_box {
    padding: 2% 3%;
  }
}
.btn_box .txt {
  display: inline-block;
  position: relative;
  font-size: 1rem;
  top: 0.15em;
  line-height: 1.2;
  font-weight: 700;
}
@media (min-width: 768px) {
  .btn_box .txt {
    font-size: min(2rem, 0.0161290323 * var(--viewWidth));
  }
}
.btn_box img {
  vertical-align: middle;
  margin-right: 2%;
  width: 15%;
}
@media (min-width: 768px) {
  .btn_box img {
    margin-right: 3%;
    width: auto;
  }
}

.column_caution1 {
  background-color: #9DB9DD;
  padding: 5px 20px;
  color: #FFFFFF;
  font-weight: bold;
  margin-top: 20px;
}

.column_caution2 {
  background-color: #E2EFFA;
  padding: 5px 20px;
  margin-bottom: 20px;
}

@media (min-width: 768px) {
  main#top {
    margin-top: 50px;
    padding-bottom: 150px;
  }
}
@media (min-width: 768px) {
  main#top #top_artcle {
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    height: var(--topArticleHeight);
    gap: 50px 30px;
  }
}
@media (min-width: 768px) {
  main#top #sec01 {
    order: 1;
  }
}
@media (min-width: 768px) {
  main#top #sec02 {
    order: 6;
  }
}
main#top #sec03 .swiper1 {
  margin-top: 15px;
}
@media (min-width: 768px) {
  main#top #sec03 .swiper1 {
    margin-top: 30px;
  }
}
main#top #sec03 .swiper1 .downloadList_inner {
  border: 1px #0b549e solid;
  padding: 7% 9%;
  border-radius: 10px;
}
main#top #sec03 .swiper1 .downloadList_inner .dw_name {
  font-size: 1.8rem;
  color: #0b549e;
  text-align: center;
}
main#top #sec03 .swiper1 .downloadList_inner .dw_image {
  display: block;
}
main#top #sec03 .swiper1 .downloadList_inner .dw_image img {
  width: 100%;
  height: auto;
  display: block;
  filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.2));
}
main#top #sec03 .dw_btn {
  width: 100%;
}
@media (min-width: 768px) {
  main#top #sec03 {
    order: 2;
  }
}
main#top #sec04 .swiper {
  margin-top: 15px;
}
@media (min-width: 768px) {
  main#top #sec04 .swiper {
    margin-top: 30px;
  }
}
main#top #sec04 .swiper .downloadList_inner {
  padding: 2% 3%;
}
main#top #sec04 .swiper .downloadList_inner .dw_image {
  display: block;
}
main#top #sec04 .swiper .downloadList_inner .dw_image img {
  width: 100%;
  height: auto;
  display: block;
  filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.2));
}
@media (min-width: 768px) {
  main#top #sec04 {
    order: 7;
  }
}
main#top #sec04 .dw_btn {
  width: 100%;
}
@media (min-width: 768px) {
  main#top #sec05 {
    order: 3;
  }
}
main#top #sec06 .btn {
  display: inline-block;
  background-color: #d0340f;
  color: #ffffff;
  font-size: 1.2rem;
  line-height: 1;
  padding: 0.5em 2em;
  border-radius: 5px;
  font-weight: 700;
}
@media (min-width: 768px) {
  main#top #sec06 .btn {
    font-size: 2.4rem;
  }
}
main#top #sec06 .btn > * {
  vertical-align: middle;
}
main#top #sec06 .btn img {
  width: 2em;
  height: auto;
  margin-right: 0.5em;
}
@media (min-width: 768px) {
  main#top #sec06 {
    order: 4;
  }
}
main#top #sec06 .sec06_img {
  width: 100%;
  aspect-ratio: 640/230;
  border-radius: 10px;
  background: url(../img/top/img02.jpg) no-repeat center/cover;
}
@media (min-width: 768px) {
  main#top #sec06 .sec06_img {
    aspect-ratio: 610/220;
  }
}
@media (min-width: 768px) {
  main#top #sec07 {
    order: 8;
  }
}
main#top #sec07 .sec07_img {
  width: 100%;
  aspect-ratio: 640/290;
  border-radius: 10px;
  background: url(../img/top/img03.jpg) no-repeat center/cover;
}
@media (min-width: 768px) {
  main#top #sec07 .sec07_img {
    aspect-ratio: 480/220;
  }
}
@media (min-width: 768px) {
  main#top #dummy {
    order: 5;
  }
}
main#top .top_section {
  margin-top: 30px;
}
@media (min-width: 768px) {
  main#top .top_section {
    margin-top: 0;
  }
}
@media (min-width: 768px) {
  main#top .top_section.lparts {
    width: calc(670 / (1240 - 30) * (100% - 30px));
  }
}
main#top .top_section.lparts .base_cont:before {
  background-color: #0b549e;
}
@media (min-width: 768px) {
  main#top .top_section.rparts {
    width: calc(540 / (1240 - 30) * (100% - 30px));
  }
}
main#top .top_section.rparts .base_cont:before {
  background-color: #d0340f;
}
main#top .top_section.rparts .base_cont .h1_txt {
  color: #d0340f;
}
main#top .top_section.rparts .h2_bar {
  background: linear-gradient(to right, rgb(11, 84, 158) 0%, rgba(11, 84, 158, 0.6) 100%);
}
main#top .top_section .base_cont {
  padding: 25px 15px;
  position: relative;
  background-color: #ffffff;
  border-radius: 10px;
}
@media (min-width: 768px) {
  main#top .top_section .base_cont {
    padding: 45px 30px;
  }
}
main#top .top_section .base_cont .h1_txt {
  text-align: center;
  margin-top: 0;
}
main#top .top_section .base_cont .h1_txt small {
  font-size: 68%;
  margin-right: 0.2em;
}
main#top .top_section .base_cont .h1_txt > * {
  vertical-align: middle;
}
main#top .top_section .base_cont:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 30.5555555556%;
  height: 3px;
}
main#top .top_section .base_cont .h3_udline .pc_txt {
  display: none;
  color: #232323;
  margin-left: auto;
  padding-left: 10px;
}
@media (min-width: 768px) {
  main#top .top_section .base_cont .h3_udline .pc_txt {
    display: inline-block;
  }
}
main#top .top_section .base_cont .linkbk {
  color: #232323;
}
main#top .top_section .base_cont .ninki_service {
  display: flex;
  padding: 10px;
  border: 1px #0b549e solid;
  line-height: 1.1;
  position: relative;
}
@media (min-width: 768px) {
  main#top .top_section .base_cont .ninki_service {
    padding: 15px 20px;
    line-height: 1.4;
  }
}
main#top .top_section .base_cont .ninki_service .icn {
  width: 13.074204947%;
  flex-shrink: 0;
  align-content: center;
}
@media (min-width: 768px) {
  main#top .top_section .base_cont .ninki_service .icn {
    width: 11.6666666667%;
  }
}
main#top .top_section .base_cont .ninki_service .icn img {
  width: 100%;
  height: auto;
}
main#top .top_section .base_cont .ninki_service .cnt {
  margin-left: 10px;
}
main#top .top_section .base_cont .ninki_service .cnt .ttl {
  display: block;
}
main#top .top_section .base_cont .ninki_service .cnt .ttl > * {
  vertical-align: middle;
}
main#top .top_section .base_cont .ninki_service .cnt .ttl .cat {
  font-size: 0.8rem;
  background-color: #6f9bcf;
  color: #ffffff;
  padding: 0.2em 0.5em;
  min-width: 5em;
  display: inline-block;
  text-align: center;
  margin-right: 0.5em;
}
@media (min-width: 768px) {
  main#top .top_section .base_cont .ninki_service .cnt .ttl .cat {
    font-size: 1.6rem;
  }
}
main#top .top_section .base_cont .ninki_service .cnt .ttl .name {
  font-size: 1.2rem;
  color: #0b549e;
  font-weight: 700;
  display: inline-block;
}
@media (min-width: 768px) {
  main#top .top_section .base_cont .ninki_service .cnt .ttl .name {
    font-size: 2.4rem;
  }
}
main#top .top_section .base_cont .ninki_service .cnt .txt {
  display: block;
  font-size: 1rem;
  margin-top: 5px;
}
@media (min-width: 768px) {
  main#top .top_section .base_cont .ninki_service .cnt .txt {
    margin-top: 10px;
    font-size: 1.6rem;
  }
}
main#top .top_section .base_cont .ninki_service:after {
  content: "";
  display: block;
  position: absolute;
  width: 10px;
  height: 10px;
  background-color: #0b549e;
  bottom: 3px;
  right: 3px;
  clip-path: polygon(100% 0, 100% 100%, 0 100%);
}
main#top .top_section .oshirase_list {
  word-break: break-all;
}
main#top .top_section .oshirase_list a {
  display: flex;
  justify-content: space-between;
  margin-top: 20px;
}
main#top .top_section .oshirase_list a .oshirase_category {
  width: 90px;
  flex-shrink: 0;
  align-content: center;
}
@media (min-width: 768px) {
  main#top .top_section .oshirase_list a .oshirase_category {
    width: 150px;
  }
}
main#top .top_section .oshirase_list a .oshirase_category .inner {
  display: block;
  width: 100%;
  font-size: 1.1rem;
  color: #ffffff;
  background-color: #5dbed3;
  border-radius: 5px;
  text-align: center;
  align-content: center;
  padding: 5px;
  min-height: 50px;
}
@media (min-width: 768px) {
  main#top .top_section .oshirase_list a .oshirase_category .inner {
    font-size: 1.4rem;
    border-radius: 1000px;
    min-height: none;
    min-height: inherit;
  }
}
main#top .top_section .oshirase_list a .oshirase_category .inner2 {
  display: block;
  width: 100%;
  font-size: 1.1rem;
  color: #ffffff;
  background-color: #d0340f;
  border-radius: 5px;
  text-align: center;
  align-content: center;
  padding: 5px;
  min-height: 50px;
}
@media (min-width: 768px) {
  main#top .top_section .oshirase_list a .oshirase_category .inner2 {
    font-size: 1.4rem;
    border-radius: 1000px;
    min-height: none;
    min-height: inherit;
  }
}
main#top .top_section .oshirase_list a .break {
  width: calc(100% - 100px);
}
@media (min-width: 768px) {
  main#top .top_section .oshirase_list a .break {
    width: calc(100% - 160px);
    display: flex;
    flex-wrap: wrap;
  }
}
main#top .top_section .oshirase_list a .oshirase_date {
  font-size: 1.4rem;
  display: block;
  line-height: 1.2;
}
@media (min-width: 768px) {
  main#top .top_section .oshirase_list a .oshirase_date {
    font-size: 1.8rem;
  }
}
main#top .top_section .oshirase_list a .oshirase_title {
  font-size: 1.3rem;
  line-height: 1.2;
  display: block;
}
@media (min-width: 768px) {
  main#top .top_section .oshirase_list a .oshirase_title {
    font-size: 1.6rem;
  }
}
main#top .top_section .seminar_list {
  word-break: break-all;
}
main#top .top_section .seminar_list a {
  margin-top: 20px;
  display: block;
}
main#top .top_section .seminar_list .seminar_date {
  display: flex;
}
main#top .top_section .seminar_list .seminar_date .icn {
  font-size: 1.4rem;
  background-color: #e1e1e1;
  line-height: 1;
  padding: 0.5em;
  white-space: nowrap;
  align-content: center;
}
main#top .top_section .seminar_list .seminar_date .txt {
  font-size: 1.4rem;
  padding-left: 0.5em;
}
@media (min-width: 768px) {
  main#top .top_section .seminar_list .seminar_date .txt {
    font-size: 1.8rem;
  }
}
main#top .top_section .seminar_list .seminar_title {
  font-size: 1.4rem;
  display: block;
}
@media (min-width: 768px) {
  main#top .top_section .seminar_list .seminar_title {
    font-size: 1.6rem;
  }
}
main#top .top_section .column_list {
  margin-top: 30px;
}
@media (min-width: 768px) {
  main#top .top_section .column_list {
    margin-top: 50px;
  }
}
main#top .top_section .column_list > li {
  display: grid;
  grid-template-columns: 120px 1fr 50px;
  grid-template-rows: auto 1fr;
  gap: 5px 10px;
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: 1px #bde1eb solid;
}
@media (min-width: 768px) {
  main#top .top_section .column_list > li {
    grid-template-columns: 31.25% 1fr 37.5%;
    padding-bottom: 20px;
    margin-bottom: 20px;
  }
}
main#top .top_section .column_list > li .column_category {
  grid-column: 1/2;
  grid-row: 1/2;
  order: 1;
}
main#top .top_section .column_list > li .column_category .txt {
  width: 100%;
  padding: 0.3em 1.5em;
  line-height: 1;
  text-align: center;
  background-color: #5dbed3;
  color: #ffffff;
  border-radius: 1000px;
  display: block;
  font-size: 1.3rem;
}
@media (min-width: 768px) {
  main#top .top_section .column_list > li .column_category .txt {
    font-size: 1.4rem;
  }
}
main#top .top_section .column_list > li .column_date {
  grid-column: 2/3;
  grid-row: 1/2;
  order: 2;
  font-size: 1.4rem;
}
@media (min-width: 768px) {
  main#top .top_section .column_list > li .column_date {
    grid-column: 2/4;
    font-size: 1.6rem;
  }
}
main#top .top_section .column_list > li .column_title {
  grid-column: 1/3;
  grid-row: 2/3;
  order: 4;
  font-size: 1.3rem;
  line-height: 1.2;
  display: block;
}
@media (min-width: 768px) {
  main#top .top_section .column_list > li .column_title {
    font-size: 1.6rem;
  }
}
main#top .top_section .column_list > li .column_link {
  grid-column: 3/4;
  grid-row: 1/3;
  order: 3;
  align-content: center;
}
@media (min-width: 768px) {
  main#top .top_section .column_list > li .column_link {
    grid-row: 2/3;
  }
}
main#top .top_section .column_list > li .column_link a {
  font-size: 0.9rem;
  background-color: #0b549e;
  color: #ffffff;
  text-align: center;
  display: block;
  line-height: 1.2;
  border-radius: 5px;
  padding: 1em 0;
}
@media (min-width: 768px) {
  main#top .top_section .column_list > li .column_link a {
    padding: 0.5em 0;
    font-size: 1.6rem;
  }
}
main#top .top_section .column_list > li .column_link a i {
  display: block;
  width: 1em;
  height: 1em;
  background-color: #ffffff;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.5em;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}
@media (min-width: 768px) {
  main#top .top_section .column_list > li .column_link a i {
    display: inline-block;
    width: 0.6em;
    height: 0.6em;
    clip-path: polygon(0 100%, 0 0, 100% 50%);
    margin-left: 0.3em;
    position: relative;
    top: -0.1em;
  }
}

main.download .page_icn {
  width: 37.7777777778%;
}
@media (min-width: 768px) {
  main.download .page_icn {
    width: 30.9090909091%;
  }
}
main.download .h2_bar {
  background: linear-gradient(to right, rgb(11, 84, 158) 0%, rgba(11, 84, 158, 0.6) 100%);
}

main.line .page_icn {
  width: 60.2777777778%;
}
@media (min-width: 768px) {
  main.line .page_icn {
    width: 49.3181818182%;
  }
}
main.line .h1_row {
  display: flex;
  margin-top: 20px;
}
@media (min-width: 768px) {
  main.line .h1_row {
    margin-top: 40px;
  }
}
main.line .h1_row .h1_txt {
  margin-top: 0;
}
@media (min-width: 768px) {
  main.line .h1_row .h1_txt {
    margin-top: 0;
  }
}
main.line .h1_row .h1_icn {
  width: 15.3125%;
  margin-left: 6.25%;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  main.line .h1_row .h1_icn {
    width: 12.25%;
    margin-left: 7.5%;
  }
}
main.line .h1_row .h1_icn img {
  width: 100%;
  height: auto;
}
main.line .point_list .point_num .ntxt {
  white-space: nowrap;
  font-size: 1.7rem;
  color: #ffffff;
  display: inline-block;
  padding: 0.1em 1.5em;
  font-family: "Lato", sans-serif;
  font-style: italic;
  font-weight: 700;
  border-radius: 5px 0 0 5px;
}
@media (min-width: 768px) {
  main.line .point_list .point_num .ntxt {
    font-size: 2.4rem;
    border-radius: 8px 0 0 8px;
  }
}
main.line .point_list .point_txt {
  padding-top: 0.3em;
}
@media (min-width: 768px) {
  main.line .point_list .point_txt {
    padding-top: 0;
    padding-left: 1em;
  }
}
main.line .point_list > li {
  margin-top: 15px;
}
@media (min-width: 768px) {
  main.line .point_list > li {
    display: flex;
    align-items: center;
    margin-top: 30px;
  }
}
main.line .point_list > li:nth-of-type(1) .point_num .ntxt {
  background-color: #9db9dd;
}
main.line .point_list > li:nth-of-type(2) .point_num .ntxt {
  background-color: #86d2d2;
}
main.line .point_list > li:nth-of-type(3) .point_num .ntxt {
  background-color: #a9dc9d;
}
main.line .point_list > li:nth-of-type(4) .point_num .ntxt {
  background-color: #e1cd93;
}
@media (min-width: 768px) {
  main.line .step_box {
    padding: 0 20px;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
  }
}
main.line .step_box > dl {
  margin-top: 50px;
}
main.line .step_box > dl > dt {
  display: flex;
  align-items: center;
}
main.line .step_box > dl > dt .step_ttl_num {
  flex-shrink: 1;
  position: relative;
}
main.line .step_box > dl > dt .step_ttl_num > p {
  font-family: "Lato", sans-serif;
  font-style: italic;
  font-weight: 700;
}
main.line .step_box > dl > dt .step_ttl_num > p:nth-of-type(1) {
  font-size: 1.5rem;
  text-align: center;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  transform: translateY(calc(-100% - 2px));
  line-height: 1;
}
@media (min-width: 768px) {
  main.line .step_box > dl > dt .step_ttl_num > p:nth-of-type(1) {
    font-size: 2.4rem;
  }
}
main.line .step_box > dl > dt .step_ttl_num > p:nth-of-type(2) {
  font-size: 3rem;
  width: 40px;
  line-height: 40px;
  color: #ffffff;
  border-radius: 1000px;
  text-align: center;
}
@media (min-width: 768px) {
  main.line .step_box > dl > dt .step_ttl_num > p:nth-of-type(2) {
    width: 70px;
    line-height: 70px;
    font-size: 5rem;
  }
}
main.line .step_box > dl > dt .step_ttl_txt {
  flex-grow: 1;
  font-size: 1.1rem;
  background-color: #e4f2f2;
  margin-left: -20px;
  padding: 8px 10px 8px 30px;
  border-radius: 5px;
}
@media (min-width: 768px) {
  main.line .step_box > dl > dt .step_ttl_txt {
    margin-left: -35px;
    font-size: 1.5rem;
    padding: 8px 10px 8px 45px;
  }
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step1_flex {
    display: flex;
    justify-content: space-between;
    max-width: 500px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step1_flex > * {
    width: 205px;
  }
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step1_flex > *:nth-of-type(1) {
    margin-right: 15px;
  }
}
main.line .step_box > dl > dd.step1_flex .ttl {
  font-size: 1.5rem;
  color: #0b549e;
  text-align: center;
  border: 1px #0b549e solid;
  background-color: #ffffff;
  position: relative;
  margin-top: 30px;
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step1_flex .ttl {
    padding: 1em 0;
  }
}
main.line .step_box > dl > dd.step1_flex .ttl:after {
  content: "";
  width: 8px;
  height: 5px;
  display: block;
  position: absolute;
  bottom: 0;
  left: 50%;
  background-color: #0b549e;
  transform: translate(-50%, 100%);
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step1_flex .ttl:after {
    height: 10px;
  }
}
main.line .step_box > dl > dd.step1_flex .blk {
  display: flex;
  align-items: center;
  margin-top: 15px;
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step1_flex .blk {
    display: block;
    margin-top: 30px;
  }
}
main.line .step_box > dl > dd.step1_flex .blk picture {
  display: block;
  width: 100px;
  flex-shrink: 0;
  text-align: center;
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step1_flex .blk picture {
    width: 100%;
  }
}
main.line .step_box > dl > dd.step1_flex .blk picture img.qr {
  width: 70%;
  height: auto;
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step1_flex .blk picture img.qr {
    width: 100px;
  }
}
main.line .step_box > dl > dd.step1_flex .blk picture img.search {
  width: 100%;
  height: auto;
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step1_flex .blk picture img.search {
    width: 130px;
    padding-top: 40px;
  }
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step1_flex .txt {
    text-align: center;
  }
}
main.line .step_box > dl > dd.step2_flex {
  display: flex;
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step2_flex {
    display: block;
  }
}
main.line .step_box > dl > dd.step2_flex > * {
  width: 50%;
  margin-top: 15px;
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step2_flex > * {
    width: 100%;
  }
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step2_flex > *.txt {
    text-align: center;
  }
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step2_flex > *.txt span {
    display: inline-block;
    text-align: left;
  }
}
main.line .step_box > dl > dd.step2_flex > *.img_step2 {
  text-align: center;
  display: block;
}
main.line .step_box > dl > dd.step2_flex > *.img_step2 img {
  filter: drop-shadow(5px 5px 5px rgba(0, 0, 0, 0.3));
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd.step2_flex > *.img_step2 img {
    width: 50%;
    height: auto;
  }
}
main.line .step_box > dl > dd .img_step3 {
  display: block;
  text-align: center;
  margin-top: 20px;
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd .img_step3 {
    margin-top: 0;
  }
}
main.line .step_box > dl > dd .img_step3 img {
  width: 80%;
}
@media (min-width: 768px) {
  main.line .step_box > dl > dd .img_step3 img {
    padding-top: 35%;
    width: 100%;
  }
}
@media (min-width: 768px) {
  main.line .step_box > dl:nth-of-type(1) {
    width: 100%;
  }
}
main.line .step_box > dl:nth-of-type(1) > dt .step_ttl_num > p:nth-of-type(1) {
  color: #86d2d2;
}
main.line .step_box > dl:nth-of-type(1) > dt .step_ttl_num > p:nth-of-type(2) {
  background-color: #86d2d2;
}
main.line .step_box > dl:nth-of-type(1) > dt .step_ttl_txt {
  color: #3ebebe;
  background-color: #def1f1;
}
@media (min-width: 768px) {
  main.line .step_box > dl:nth-of-type(2) {
    width: calc((100% - 36px) / 2);
  }
}
main.line .step_box > dl:nth-of-type(2) > dt .step_ttl_num > p:nth-of-type(1) {
  color: #a9dc9d;
}
main.line .step_box > dl:nth-of-type(2) > dt .step_ttl_num > p:nth-of-type(2) {
  background-color: #a9dc9d;
}
main.line .step_box > dl:nth-of-type(2) > dt .step_ttl_txt {
  color: #78be81;
  background-color: #e7f4e5;
}
@media (min-width: 768px) {
  main.line .step_box > dl:nth-of-type(3) {
    width: calc((100% - 36px) / 2);
  }
}
main.line .step_box > dl:nth-of-type(3) > dt .step_ttl_num > p:nth-of-type(1) {
  color: #e1cd93;
}
main.line .step_box > dl:nth-of-type(3) > dt .step_ttl_num > p:nth-of-type(2) {
  background-color: #e1cd93;
}
main.line .step_box > dl:nth-of-type(3) > dt .step_ttl_txt {
  color: #d1b053;
  background-color: #f1ebd1;
}
main.line .broadcast {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin-top: 15px;
}
@media (min-width: 768px) {
  main.line .broadcast {
    margin-top: 30px;
  }
}
main.line .broadcast .txt_box {
  flex-shrink: 0;
}
main.line .broadcast .txt_box > p:nth-of-type(1) {
  font-size: 1.4rem;
}
@media (min-width: 768px) {
  main.line .broadcast .txt_box > p:nth-of-type(1) {
    font-size: min(1.5rem, 0.0120967742 * var(--viewWidth));
  }
}
main.line .broadcast .txt_box > p:nth-of-type(2) {
  font-size: 0.8rem;
}
@media (min-width: 768px) {
  main.line .broadcast .txt_box > p:nth-of-type(2) {
    font-size: min(1.5rem, 0.0120967742 * var(--viewWidth));
  }
}
main.line .broadcast .btn_box {
  margin-left: 20px;
}
@media (min-width: 768px) {
  main.line .broadcast .btn_box {
    margin-left: 10%;
    flex-grow: 1;
  }
}
main.line .broadcast .btn_box img {
  width: 20%;
}
@media (min-width: 768px) {
  main.line .broadcast .btn_box img {
    width: auto;
  }
}
main.line .broadcast .btn_box .txt {
  margin-top: 0.5em;
}
@media (min-width: 768px) {
  main.line .broadcast .btn_box .txt {
    margin-top: 0;
  }
}
main.line .txt01 {
  display: block;
  color: #0b549e;
  background-color: #e2effa;
  font-size: 1.4rem;
  line-height: 1.8;
  padding: 0.2em 0.4em;
}
@media (min-width: 768px) {
  main.line .txt01 {
    padding: 0.2em 1.4em;
    font-size: 1.5rem;
    display: inline-block;
  }
}
@media (min-width: 768px) {
  main.line .bubble_list > dt {
    width: 205px;
    min-height: 4.5em;
  }
}
@media (min-width: 768px) {
  main.line .bubble_list > dd {
    align-content: center;
  }
}

main.read .page_icn {
  width: 18.0555555556%;
}
@media (min-width: 768px) {
  main.read .page_icn {
    width: 14.7727272727%;
  }
}
main.read .txtimg01 {
  margin-top: 15px;
}
@media (min-width: 768px) {
  main.read .txtimg01 {
    display: flex;
  }
}
main.read .txtimg01 picture {
  margin-top: 15px;
  display: block;
}
@media (min-width: 768px) {
  main.read .txtimg01 picture {
    margin-top: 0;
    width: 59.75%;
    flex-shrink: 0;
    margin-left: 15px;
  }
}
@media (min-width: 768px) {
  main.read .utilize_sec02 {
    display: flex;
    align-items: flex-end;
  }
}
main.read .utilize_sec02 > *:nth-of-type(2) {
  display: none;
}
@media (min-width: 768px) {
  main.read .utilize_sec02 > *:nth-of-type(2) {
    display: block;
    text-align: center;
    padding: 0 10px;
    width: 41.25%;
    flex-shrink: 0;
  }
}
main.read .blue_back {
  background-color: #e8f4f7;
  padding: 15px;
}
@media (min-width: 768px) {
  main.read .blue_back {
    padding: 30px;
  }
}
main.read .point_list {
  display: flex;
  align-items: center;
}
main.read .point_list > dt {
  font-size: 1.4rem;
  color: #ffffff;
  line-height: 1;
  padding: 0.4em 1.1em 0.4em 0.8em;
  border-radius: 0 1000px 1000px 0;
  flex-shrink: 0;
}
@media (min-width: 768px) {
  main.read .point_list > dt {
    font-size: 2.2rem;
  }
}
main.read .point_list > dt > * {
  vertical-align: middle;
  line-height: 1;
}
main.read .point_list > dt img {
  width: auto;
  height: 1em;
  margin-right: 0.3em;
  position: relative;
  top: -0.2em;
}
main.read .point_list > dd {
  font-size: 1.1rem;
  padding-left: 1em;
  line-height: 1.4;
  font-weight: 700;
}
@media (min-width: 768px) {
  main.read .point_list > dd {
    font-size: 2.2rem;
  }
}
main.read .point_list.point01 > dt {
  background-color: #5dbed3;
}
main.read .point_list.point01 > dd {
  color: #00a6c5;
}
main.read .point_list.point02 > dt {
  background-color: #a9dc9d;
}
main.read .point_list.point02 > dd {
  color: #73c88e;
}
main.read .point_list.point03 > dt {
  background-color: #e1cd93;
}
main.read .point_list.point03 > dd {
  color: #d3b486;
}
main.read .point_explanation {
  border: 1px #797979 dotted;
  position: relative;
  padding: 15px;
}
@media (min-width: 768px) {
  main.read .point_explanation {
    padding: 30px;
  }
}
main.read .point_explanation .ttl {
  position: absolute;
  background-color: #ffffff;
  padding: 10px;
  top: 0;
  left: -9px;
  transform: translateY(-50%);
}
main.read .point_explanation .ttl > span {
  display: inline-block;
}
main.read .point_explanation .ttl > span:nth-of-type(1) {
  font-size: 1.1rem;
  color: #ffffff;
  line-height: 1;
  padding: 0.2em 0.9em 0.3em;
  border-radius: 0 1000px 1000px 0;
  line-height: 1;
}
@media (min-width: 768px) {
  main.read .point_explanation .ttl > span:nth-of-type(1) {
    padding: 0.1em 0.9em 0.3em;
    font-size: 2.2rem;
  }
}
main.read .point_explanation .ttl > span:nth-of-type(2) {
  font-size: 1.2rem;
  margin-left: 0.5em;
}
@media (min-width: 768px) {
  main.read .point_explanation .ttl > span:nth-of-type(2) {
    font-size: 2.1rem;
  }
}
main.read .point_explanation .htxt span {
  display: inline-block;
  font-size: 1rem;
  line-height: 1;
  padding: 0.5em 2em;
}
@media (min-width: 768px) {
  main.read .point_explanation .htxt span {
    font-size: 1.5rem;
  }
}
main.read .point_explanation.point01 .ttl > span:nth-of-type(1) {
  background-color: #5dbed3;
}
main.read .point_explanation.point01 .ttl > span:nth-of-type(2) {
  color: #00a6c5;
}
main.read .point_explanation.point01 .htxt span {
  color: #00a6c5;
  background-color: #e8f4f7;
}
main.read .point_explanation.point03 {
  background: url(../img/join-insurance/img02.svg) no-repeat right 15px top 15px/24.1379310345% auto;
}
@media (min-width: 768px) {
  main.read .point_explanation.point03 {
    background-position: right 30px top 30px;
    background-size: 21.6666666667% auto;
  }
}
main.read .point_explanation.point03 .ttl > span:nth-of-type(1) {
  background-color: #e1cd93;
}
main.read .point_explanation.point03 .ttl > span:nth-of-type(2) {
  color: #d3b486;
}
main.read .point_explanation.point03 .h3_alline {
  color: #c4a062;
  border-color: #c4a062;
  font-size: 1.2rem;
}
@media (min-width: 768px) {
  main.read .point_explanation.point03 .h3_alline {
    font-size: 1.5rem;
  }
}
main.read .point_explanation .list_custom.type01 {
  font-size: 1rem;
}
@media (min-width: 768px) {
  main.read .point_explanation .list_custom.type01 {
    font-size: 1.3rem;
  }
}
main.read .point_explanation .list_custom.type01 > li i:before {
  background-color: #5dbed3;
}
main.read .point_listbox {
  border: 1px #9db9dd solid;
  border-radius: 10px;
  padding: 10px 20px 25px;
  margin-left: 10px;
}
@media (min-width: 768px) {
  main.read .point_listbox {
    display: flex;
    border-radius: 15px;
    padding: 15px 25px 25px;
    margin-left: 20px;
  }
}
main.read .point_listbox > dt p {
  font-size: 1.4rem;
  color: #ffffff;
  line-height: 1;
  padding: 0.3em 1.8em 0.3em 1.5em;
  border-radius: 0 1000px 1000px 0;
  flex-shrink: 0;
  background-color: #d0340f;
  display: inline-block;
  margin-left: -30px;
  position: relative;
}
@media (min-width: 768px) {
  main.read .point_listbox > dt p {
    margin-left: -45px;
    font-size: 2.2rem;
    display: block;
  }
}
main.read .point_listbox > dt p img {
  width: auto;
  height: 1em;
  margin-right: 0.3em;
}
main.read .point_listbox > dt p:before {
  content: "";
  display: block;
  position: absolute;
  bottom: 0;
  left: 0;
  width: 15px;
  height: 2px;
  background-color: #d0340f;
  z-index: 2;
}
@media (min-width: 768px) {
  main.read .point_listbox > dt p:before {
    width: 25px;
  }
}
main.read .point_listbox > dt p:after {
  content: "";
  display: block;
  width: 10px;
  height: 15px;
  clip-path: polygon(100% 0, 0 0, 100% 100%);
  position: absolute;
  bottom: 0;
  left: 0;
  background-color: #e88778;
  transform: translateY(calc(100% - 1px));
}
@media (min-width: 768px) {
  main.read .point_listbox > dt p:after {
    width: 20px;
    height: 20px;
  }
}
main.read .point_listbox > dd > ul {
  color: #0b549e;
  margin-top: 0.25em;
}
@media (min-width: 768px) {
  main.read .point_listbox > dd > ul {
    padding-left: 30px;
  }
}
main.read .point_listbox > dd > ul > li {
  display: flex;
  font-size: 1.5rem;
  font-weight: 700;
}
@media (min-width: 768px) {
  main.read .point_listbox > dd > ul > li {
    font-size: 1.8rem;
  }
}
main.read .point_listbox > dd > ul > li > *:nth-of-type(1) {
  width: 1em;
  flex-shrink: 0;
}

@media (min-width: 768px) {
  main#utilize .bubble_list > dt {
    width: 160px;
  }
}

main.procedure .page_icn {
  width: 37.0833333333%;
}
@media (min-width: 768px) {
  main.procedure .page_icn {
    width: 30.3409090909%;
  }
}
@media (min-width: 768px) {
  main.procedure .grid-layout {
    display: grid;
    grid-template-columns: 62.5% 1fr;
    grid-template-rows: auto 1fr;
    gap: 20px 40px;
  }
}
@media (min-width: 768px) {
  main.procedure .grid-layout .grid-1 {
    grid-column: 1/2;
    grid-row: 1/2;
  }
}
main.procedure .grid-layout .grid-2 {
  margin-top: 15px;
}
main.procedure .grid-layout .grid-2 picture {
  display: block;
  width: 40.3125%;
  margin-left: auto;
  margin-right: auto;
}
@media (min-width: 768px) {
  main.procedure .grid-layout .grid-2 picture {
    width: 100%;
    max-width: 257px;
  }
}
@media (min-width: 768px) {
  main.procedure .grid-layout .grid-2 {
    margin-top: 0;
    grid-column: 2/3;
    grid-row: 1/3;
  }
}
main.procedure .grid-layout .grid-3 {
  margin-top: 15px;
}
@media (min-width: 768px) {
  main.procedure .grid-layout .grid-3 {
    margin-top: 0;
    grid-column: 1/2;
    grid-row: 2/3;
  }
}
main.procedure .procedure_table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 3px;
}
main.procedure .procedure_table tr th {
  color: #ffffff;
  padding: 0.5em;
  text-align: center;
  font-size: 1rem;
  vertical-align: middle;
}
@media (min-width: 768px) {
  main.procedure .procedure_table tr th {
    font-size: 1.5rem;
  }
}
main.procedure .procedure_table tr td {
  color: #797979;
  padding: 0.5em;
  font-size: 1.1rem;
  vertical-align: middle;
}
@media (min-width: 768px) {
  main.procedure .procedure_table tr td {
    font-size: 1.5rem;
    padding: 0.5em 1.5em;
  }
}
main.procedure .procedure_table.type01 tr th {
  background-color: #a9dc9d;
  width: 42%;
}
main.procedure .procedure_table.type01 tr td {
  background-color: #e7f4e5;
}
main.procedure .procedure_table.type02 tr th {
  background-color: #9db9dd;
}
@media (min-width: 768px) {
  main.procedure .procedure_table.type02 tr th {
    width: 42%;
  }
}
main.procedure .procedure_table.type02 tr td {
  background-color: #eaf3f8;
}
main.procedure .stepBox {
  margin-top: 15px;
}
main.procedure .stepBox > li {
  position: relative;
}
@media (min-width: 768px) {
  main.procedure .stepBox > li {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
  }
}
main.procedure .stepBox > li:not(:first-of-type) {
  margin-top: 10px;
}
main.procedure .stepBox > li:not(:first-of-type):before {
  content: "";
  display: block;
  width: 25px;
  height: 15px;
  position: absolute;
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  background-color: #e2effa;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
@media (min-width: 768px) {
  main.procedure .stepBox > li:not(:first-of-type) {
    margin-top: 20px;
  }
  main.procedure .stepBox > li:not(:first-of-type):before {
    left: 25%;
    transform: translateX(0);
  }
}
main.procedure .stepBox > li .ttl {
  font-family: "Lato", sans-serif;
  font-size: 1.8rem;
  font-style: italic;
  font-weight: 700;
  width: 100%;
}
main.procedure .stepBox > li .ttl:before {
  content: "";
  display: inline-block;
  width: 0.5em;
  height: 0.5em;
  vertical-align: middle;
  clip-path: polygon(0 0, 0% 100%, 100% 50%);
  margin-right: 0.5em;
}
main.procedure .stepBox > li .ttl > * {
  vertical-align: middle;
}
main.procedure .stepBox > li table {
  width: 100%;
  table-layout: fixed;
  border-radius: 5px;
  overflow: hidden;
}
@media (min-width: 768px) {
  main.procedure .stepBox > li table {
    width: 56.25%;
  }
}
main.procedure .stepBox > li table tr th {
  width: 45.3125%;
  color: #ffffff;
  vertical-align: middle;
  font-size: 1.5rem;
  padding: 5px;
}
@media (min-width: 768px) {
  main.procedure .stepBox > li table tr th {
    padding: 10px 5px;
  }
}
main.procedure .stepBox > li table tr td {
  text-align: center;
  font-size: 1.3rem;
  vertical-align: middle;
  padding: 5px;
}
@media (min-width: 768px) {
  main.procedure .stepBox > li table tr td {
    padding: 10px 5px;
  }
}
@media (min-width: 768px) {
  main.procedure .stepBox > li table.type02 {
    width: 43.75%;
  }
}
main.procedure .stepBox > li table.type02 tr th {
  width: 56.25%;
}
main.procedure .stepBox > li .txt {
  margin-top: 5px;
}
@media (min-width: 768px) {
  main.procedure .stepBox > li .txt {
    margin-top: 0;
    width: 40%;
  }
}
@media (min-width: 768px) {
  main.procedure .stepBox > li .txt.type02 {
    width: 52.5%;
  }
}
main.procedure .stepBox > li:nth-of-type(1) .ttl {
  color: #86d2d2;
}
main.procedure .stepBox > li:nth-of-type(1) .ttl:before {
  background-color: #86d2d2;
}
main.procedure .stepBox > li:nth-of-type(1) table tr th {
  background-color: #86d2d2;
}
main.procedure .stepBox > li:nth-of-type(1) table tr td {
  background-color: #def1f1;
  color: #3ebebe;
}
main.procedure .stepBox > li:nth-of-type(2) .ttl {
  color: #a9dc9d;
}
main.procedure .stepBox > li:nth-of-type(2) .ttl:before {
  background-color: #a9dc9d;
}
main.procedure .stepBox > li:nth-of-type(2) table tr th {
  background-color: #a9dc9d;
}
main.procedure .stepBox > li:nth-of-type(2) table tr td {
  background-color: #e7f4e5;
  color: #78be81;
}
main.procedure .stepBox > li:nth-of-type(3) .ttl {
  color: #e1cd93;
}
main.procedure .stepBox > li:nth-of-type(3) .ttl:before {
  background-color: #e1cd93;
}
main.procedure .stepBox > li:nth-of-type(3) table tr th {
  background-color: #e1cd93;
}
main.procedure .stepBox > li:nth-of-type(3) table tr td {
  background-color: #f1ebd1;
  color: #d1b053;
}
main.procedure .btn_setBlock {
  display: flex;
  margin-top: 25px;
  gap: 10px;
}
@media (min-width: 768px) {
  main.procedure .btn_setBlock {
    margin-top: 50px;
    gap: 20px;
    max-width: 660px;
    margin-left: auto;
    margin-right: auto;
  }
}
main.procedure .btn_setBlock > * {
  width: 50%;
}
main.procedure .btn_setBlock > * .btn_box {
  height: 100%;
  align-content: center;
}
@media (min-width: 768px) {
  main.procedure .btn_setBlock > * .btn_box {
    padding: 4% 5%;
  }
}
main.procedure .btn_setBlock.single {
  justify-content: center;
}
main.procedure .btn_setBlock.single > * {
  width: calc((100% - 10px) / 2);
}
@media (min-width: 768px) {
  main.procedure .btn_setBlock.single > * {
    width: calc((100% - 20px) / 2);
  }
}
main.procedure .swiper {
  margin-top: 50px;
}
main.procedure .downloadList_inner {
  padding: 2% 3%;
}
@media (min-width: 768px) {
  main.procedure .downloadList_inner {
    width: 70%;
    margin-left: auto;
    margin-right: auto;
  }
}
main.procedure .downloadList_inner .dw_name {
  text-align: center;
  font-size: 1.4rem;
}
@media (min-width: 768px) {
  main.procedure .downloadList_inner .dw_name {
    font-size: 1.5rem;
  }
}
main.procedure .downloadList_inner .dw_name > * {
  vertical-align: middle;
  line-height: 1.4;
}
main.procedure .downloadList_inner .dw_name i {
  display: inline-block;
  width: 1em;
  height: 1em;
  background-color: #00a6c5;
  border-radius: 1000px;
  margin-right: 0.2em;
  position: relative;
  top: 0.05em;
}
main.procedure .downloadList_inner .dw_image {
  display: block;
  margin-top: 10px;
}
main.procedure .downloadList_inner .dw_image img {
  width: 100%;
  height: auto;
  display: block;
  filter: drop-shadow(3px 3px 3px rgba(0, 0, 0, 0.2));
}
@media (min-width: 768px) {
  main#procedure .bubble_list dt {
    width: 205px;
  }
}
@media (min-width: 768px) {
  main#procedure .bubble_list dd {
    align-content: center;
  }
}
main#joinus .inquiry_box {
  padding: 10px;
}
@media (min-width: 768px) {
  main#joinus .inquiry_box {
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 0 20px;
    max-width: 550px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media (min-width: 768px) {
  main#joinus .inquiry_box .ttl {
    position: static;
    transform: translate(0, 0);
    max-width: 160px;
    font-size: 1.5rem;
    border: none;
  }
}
@media (min-width: 768px) {
  main#joinus .inquiry_box .tel_box {
    margin-top: 0;
  }
}
main#joinus .inquiry_box .tel_box .tel_inner {
  display: grid;
  grid-template-columns: 40px 1fr;
  grid-template-rows: auto auto;
  gap: 0 10px;
}
@media (min-width: 768px) {
  main#joinus .inquiry_box .tel_box .tel_inner {
    gap: 5px 10px;
  }
}
main#joinus .inquiry_box .tel_box .tel_inner > *:nth-child(1) {
  grid-column: 1/2;
  grid-row: 1/3;
}
@media (min-width: 768px) {
  main#joinus .inquiry_box .tel_box .tel_inner > *:nth-child(1) {
    grid-row: 1/2;
  }
}
main#joinus .inquiry_box .tel_box .tel_inner > *:nth-child(2) {
  grid-column: 2/3;
  grid-row: 1/2;
}
main#joinus .inquiry_box .tel_box .tel_inner > *:nth-child(3) {
  grid-column: 2/3;
  grid-row: 2/3;
}
@media (min-width: 768px) {
  main#joinus .inquiry_box .tel_box .tel_inner > *:nth-child(3) {
    grid-column: 1/3;
  }
}
@media (min-width: 768px) {
  main#download4 .flex_sec03 {
    display: flex;
    gap: 0 30px;
  }
}
main#download4 .flex_sec03 > * {
  margin-top: 30px;
}
@media (min-width: 768px) {
  main#download4 .flex_sec03 > * {
    width: 50%;
  }
}
main#download4 .flex_sec03 .no-swiper {
  width: calc((100% - 40px) * 0.6);
  margin-left: auto;
  margin-right: auto;
  margin-top: 15px;
}
@media (min-width: 768px) {
  main#download4 .flex_sec03 .no-swiper {
    width: calc((200% - 40px) * 0.3333333333);
    margin-top: 50px;
  }
}
main#download4 .flex_sec03 .no-swiper.noimg {
  width: 100%;
}
@media (min-width: 768px) {
  main#download4 .flex_sec03 .no-swiper.noimg {
    width: 100%;
  }
}
main#download4 .flex_sec03 .no-swiper.noimg .downloadList_inner {
  padding: 0;
}
@media (min-width: 768px) {
  main#download4 .flex_sec03 .no-swiper.noimg .downloadList_inner {
    width: 100%;
  }
}

main.column .page_icn {
  width: 28.1944444444%;
}
@media (min-width: 768px) {
  main.column .page_icn {
    width: 23.0681818182%;
  }
}
main.column .column_list {
  margin-top: 30px;
}
@media (min-width: 768px) {
  main.column .column_list {
    margin-top: 50px;
  }
}
main.column .column_list > li {
  display: grid;
  grid-template-columns: 120px 1fr 50px;
  grid-template-rows: auto 1fr;
  gap: 5px 10px;
  padding-bottom: 15px;
  margin-bottom: 15px;
  border-bottom: 1px #bde1eb solid;
}
@media (min-width: 768px) {
  main.column .column_list > li {
    grid-template-columns: 150px 1fr 180px;
  }
}
main.column .column_list > li .column_category {
  grid-column: 1/2;
  grid-row: 1/2;
  order: 1;
}
main.column .column_list > li .column_category .txt {
  width: 100%;
  padding: 0.3em 1.5em;
  line-height: 1;
  text-align: center;
  background-color: #5dbed3;
  color: #ffffff;
  border-radius: 1000px;
  display: block;
  font-size: 1.3rem;
}
@media (min-width: 768px) {
  main.column .column_list > li .column_category .txt {
    font-size: 1.4rem;
  }
}
main.column .column_list > li .column_category .txt2 {
  width: 100%;
  padding: 0.3em 1.5em;
  line-height: 1;
  text-align: center;
  background-color: #d0340f;
  color: #ffffff;
  border-radius: 1000px;
  display: block;
  font-size: 1.3rem;
}
@media (min-width: 768px) {
  main.column .column_list > li .column_category .txt2 {
    font-size: 1.4rem;
  }
}
main.column .column_list > li .column_date {
  grid-column: 2/3;
  grid-row: 1/2;
  order: 2;
  font-size: 1.4rem;
}
@media (min-width: 768px) {
  main.column .column_list > li .column_date {
    font-size: 1.6rem;
  }
}
main.column .column_list > li .column_title {
  grid-column: 1/3;
  grid-row: 2/3;
  order: 4;
  font-size: 1.3rem;
  line-height: 1.2;
  display: block;
}
@media (min-width: 768px) {
  main.column .column_list > li .column_title {
    font-size: 1.6rem;
  }
}
main.column .column_list > li .column_link {
  grid-column: 3/4;
  grid-row: 1/3;
  order: 3;
  align-content: center;
}
main.column .column_list > li .column_link a {
  font-size: 0.9rem;
  background-color: #0b549e;
  color: #ffffff;
  text-align: center;
  display: block;
  line-height: 1.2;
  border-radius: 5px;
  padding: 1em 0;
}
@media (min-width: 768px) {
  main.column .column_list > li .column_link a {
    padding: 0.5em 0;
    font-size: 1.6rem;
  }
}
main.column .column_list > li .column_link a i {
  display: block;
  width: 1em;
  height: 1em;
  background-color: #ffffff;
  margin-left: auto;
  margin-right: auto;
  margin-top: 0.5em;
  clip-path: polygon(50% 100%, 0 0, 100% 0);
}
@media (min-width: 768px) {
  main.column .column_list > li .column_link a i {
    display: inline-block;
    width: 0.6em;
    height: 0.6em;
    clip-path: polygon(0 100%, 0 0, 100% 50%);
    margin-left: 0.3em;
    position: relative;
    top: -0.1em;
  }
}
main.column .news_border {
  border-bottom: 1px solid #0b549e;
  padding-bottom: 10px;
  padding: 0 0 10px 10px;
  font-size: 2.4em;
}
main.column .news_cate {
  display: flex;
  justify-content: space-between;
}
main.column .news_category {
  max-width: 300px;
  padding: 0.3em 1.5em;
  line-height: 1;
  text-align: center;
  background-color: #5dbed3;
  color: #ffffff;
  border-radius: 1000px;
  display: block;
  font-size: 1.3rem;
}
main.column .news_conts {
  width: 95%;
  margin: auto;
}
main.column .column_writer {
  border: 1px solid #9DB9DD;
  border-radius: 10px;
  padding: 5px 10px;
  display: flex;
  align-items: center;
}
main.column .column_writer_fwb {
  font-weight: bold;
}
main.column .column_writer_mr {
  margin-right: 15px;
}/*# sourceMappingURL=style.css.map */