@charset "UTF-8";
/*******************************
pageSpecial01
*******************************/
#pageSpecial01 {
  background: #fff; }
  #pageSpecial01 #title_special01 {
    background: url("/special01/assets/img/mv01.webp") 0 0 no-repeat;
    background-size: cover;
    height: 85vh;
    position: relative; }
    @media screen and (max-width: 1200px) {
      #pageSpecial01 #title_special01 {
        height: 40vh; } }
    @media screen and (max-width: 599px) {
      #pageSpecial01 #title_special01 {
        height: 75vh;
        background: url(/special01/assets/img/mv01.webp) 50% 0 no-repeat;
        background-size: cover; } }
    #pageSpecial01 #title_special01 .txt_area {
      position: absolute;
      top: 48%;
      left: 50%;
      transform: translate(-50%, -50%);
      color: #fff;
      text-align: center; }
      @media screen and (max-width: 599px) {
        #pageSpecial01 #title_special01 .txt_area {
          width: 100%;
          top: 50%; } }
      #pageSpecial01 #title_special01 .txt_area h1 {
        white-space: nowrap; }
        #pageSpecial01 #title_special01 .txt_area h1 span {
          color: #F5CD00;
          display: block;
          font-size: 2vw;
          letter-spacing: 0.25em;
          font-weight: 500;
          line-height: 1; }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #title_special01 .txt_area h1 span {
              font-size: 4.5vw;
              margin-bottom: 1em; } }
        #pageSpecial01 #title_special01 .txt_area h1 strong {
          font-size: 5vw; }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #title_special01 .txt_area h1 strong {
              font-size: 15vw;
              line-height: 0.9; } }
        #pageSpecial01 #title_special01 .txt_area h1 b {
          color: #F5CD00;
          font-weight: 400; }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #title_special01 .txt_area h1 b {
              display: block;
              line-height: 0.9; } }
      #pageSpecial01 #title_special01 .txt_area p {
        font-size: 1.25vw;
        font-weight: 500; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #title_special01 .txt_area p {
            font-size: 3.5vw;
            margin-top: 1.5em; } }
      #pageSpecial01 #title_special01 .txt_area .btn_area {
        display: flex;
        justify-content: center;
        margin-top: 3em; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #title_special01 .txt_area .btn_area {
            display: block;
            margin: 1.5em auto 0;
            width: 90%; } }
        #pageSpecial01 #title_special01 .txt_area .btn_area a {
          display: block;
          padding: 0.5em 1em;
          border-radius: 500px;
          color: #000;
          font-weight: 700;
          font-size: 150%; }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #title_special01 .txt_area .btn_area a {
              font-size: 112.5%; } }
        #pageSpecial01 #title_special01 .txt_area .btn_area .btn01 {
          background: #F5CD00;
          color: #000;
          margin-right: 1em; }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #title_special01 .txt_area .btn_area .btn01 {
              margin: 0 0 1em; } }
        #pageSpecial01 #title_special01 .txt_area .btn_area .btn02 {
          display: block;
          background: #fff; }
  #pageSpecial01 #table_of_contents {
    background: #333;
    color: #fff; }
    #pageSpecial01 #table_of_contents ul {
      width: 1200px;
      max-width: 100%;
      margin: 0 auto;
      display: flex; }
      @media screen and (max-width: 599px) {
        #pageSpecial01 #table_of_contents ul {
          display: block; } }
      #pageSpecial01 #table_of_contents ul li {
        width: 33.33%; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #table_of_contents ul li {
            width: 100%;
            padding-left: 1em;
            border-bottom: 1px solid #555; } }
        #pageSpecial01 #table_of_contents ul li a {
          display: flex;
          justify-content: center;
          align-items: center;
          height: 8em; }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #table_of_contents ul li a {
              justify-content: flex-start;
              height: 3.5em; } }
          #pageSpecial01 #table_of_contents ul li a:hover {
            background: #444; }
          #pageSpecial01 #table_of_contents ul li a .number {
            color: #F5CD00;
            font-size: 600%;
            white-space: nowrap;
            font-weight: 700;
            margin-right: 0.15em;
            font-family: "urw-din-condensed", sans-serif; }
            @media screen and (max-width: 599px) {
              #pageSpecial01 #table_of_contents ul li a .number {
                font-size: 350%;
                line-height: 1; } }
          #pageSpecial01 #table_of_contents ul li a .txt {
            font-size: 125%;
            font-weight: 500; }
            @media screen and (max-width: 599px) {
              #pageSpecial01 #table_of_contents ul li a .txt {
                font-size: 100%; } }
  #pageSpecial01 #container .sec01 {
    margin-top: 4em; }
    @media screen and (max-width: 599px) {
      #pageSpecial01 #container .sec01 {
        margin-top: 2em; } }
    #pageSpecial01 #container .sec01 h2 span {
      display: inline-block;
      background: #006EAF;
      background: -webkit-linear-gradient(left, #006eaf 0%, #00a64e 56%, #f6af00 100%);
      background: -o-linear-gradient(left, #006eaf 0%, #00a64e 56%, #f6af00 100%);
      background: linear-gradient(to right, #006eaf 0%, #00a64e 56%, #f6af00 100%);
      background-clip: border-box;
      -webkit-background-clip: text;
      -webkit-text-fill-color: transparent;
      font-size: 50%;
      letter-spacing: 0.1em;
      font-family: "urw-din-condensed", sans-serif; }
    #pageSpecial01 #container .sec01 h2 strong {
      display: block;
      line-height: 1.4; }
    #pageSpecial01 #container .sec01 .lead {
      text-align: center;
      font-size: 125%;
      color: #57667b;
      font-weight: 500;
      margin-top: -1em; }
      @media screen and (max-width: 599px) {
        #pageSpecial01 #container .sec01 .lead {
          font-size: 112.5%; } }
    #pageSpecial01 #container .sec01 .contact_box01 {
      display: flex;
      justify-content: center;
      margin-top: 2em; }
      @media screen and (max-width: 599px) {
        #pageSpecial01 #container .sec01 .contact_box01 {
          display: block;
          margin-top: 0; } }
      #pageSpecial01 #container .sec01 .contact_box01 .line {
        margin-right: 1em; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #container .sec01 .contact_box01 .line {
            margin: 1em 0 0; } }
        #pageSpecial01 #container .sec01 .contact_box01 .line img {
          width: 9.5em; }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #container .sec01 .contact_box01 .line img {
              width: 6em;
              display: block;
              margin: 0 auto; } }
      #pageSpecial01 #container .sec01 .contact_box01 .contact_box0101 .tel {
        display: flex;
        font-weight: 500;
        font-size: 2.5em;
        margin-top: -0.15em;
        margin-bottom: 0.15em; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #container .sec01 .contact_box01 .contact_box0101 .tel {
            justify-content: center;
            margin-top: 0.25em;
            font-size: 200%; } }
        #pageSpecial01 #container .sec01 .contact_box01 .contact_box0101 .tel dt {
          white-space: nowrap; }
        #pageSpecial01 #container .sec01 .contact_box01 .contact_box0101 .tel dd b {
          font-weight: 700; }
      #pageSpecial01 #container .sec01 .contact_box01 .contact_box0101 .btn01 a {
        display: block;
        background: #006EAF;
        background: -webkit-linear-gradient(left, #006eaf 0%, #00a64e 56%, #f6af00 100%);
        background: -o-linear-gradient(left, #006eaf 0%, #00a64e 56%, #f6af00 100%);
        background: linear-gradient(to right, #006eaf 0%, #00a64e 56%, #f6af00 100%);
        color: #fff;
        font-weight: 700;
        font-size: 150%;
        padding: 0.85em 2.5em;
        text-align: center;
        border-radius: 500px; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #container .sec01 .contact_box01 .contact_box0101 .btn01 a {
            font-size: 125%;
            padding: 0.75em 0; } }
        #pageSpecial01 #container .sec01 .contact_box01 .contact_box0101 .btn01 a span {
          font-size: 80%; }
  #pageSpecial01 #container #about .wrap {
    display: flex;
    justify-content: space-between;
    align-items: center; }
    @media screen and (max-width: 599px) {
      #pageSpecial01 #container #about .wrap {
        display: block; } }
    #pageSpecial01 #container #about .wrap .txt_area {
      width: 50%;
      line-height: 1.8; }
      @media screen and (max-width: 599px) {
        #pageSpecial01 #container #about .wrap .txt_area {
          width: 100%; } }
      #pageSpecial01 #container #about .wrap .txt_area p:not(:last-child) {
        margin-bottom: 1em; }
    #pageSpecial01 #container #about .wrap .img_area {
      width: 46%; }
      @media screen and (max-width: 599px) {
        #pageSpecial01 #container #about .wrap .img_area {
          width: 100%;
          margin-top: 1.5em; } }
      #pageSpecial01 #container #about .wrap .img_area ul {
        display: flex;
        flex-wrap: wrap;
        justify-content: space-between; }
        #pageSpecial01 #container #about .wrap .img_area ul li {
          background: rgba(131, 204, 210, 0.25);
          margin-bottom: 1.35em;
          width: 48%;
          padding: 1.5em;
          border-radius: 0.5em;
          text-align: center; }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #container #about .wrap .img_area ul li {
              margin-bottom: 0.65em;
              width: 48.65%;
              padding: 1em 0; } }
          #pageSpecial01 #container #about .wrap .img_area ul li .icon {
            display: block;
            width: 6em;
            margin: 0 auto 0.5em; }
            @media screen and (max-width: 599px) {
              #pageSpecial01 #container #about .wrap .img_area ul li .icon {
                width: 4em; } }
          #pageSpecial01 #container #about .wrap .img_area ul li dl dt {
            font-weight: 700;
            margin-bottom: 0.5em; }
          #pageSpecial01 #container #about .wrap .img_area ul li dl dd {
            font-size: 87.5%; }
            @media screen and (max-width: 599px) {
              #pageSpecial01 #container #about .wrap .img_area ul li dl dd {
                font-size: 75%; } }
  #pageSpecial01 #container #three_pillars {
    margin-top: 0;
    background: url("/assets/img/bg01.png") no-repeat 0 0 #fff;
    background-size: 350% auto;
    padding: 4em 0; }
    @media screen and (max-width: 599px) {
      #pageSpecial01 #container #three_pillars {
        padding: 2em 0;
        margin-top: 2em;
        background: url(/assets/img/bg01.png) no-repeat 0 0;
        background-size: auto 200%; } }
    #pageSpecial01 #container #three_pillars .each {
      display: flex;
      border-radius: 0.5em;
      overflow: hidden;
      background: #fff;
      margin-top: 3em; }
      @media screen and (max-width: 599px) {
        #pageSpecial01 #container #three_pillars .each {
          display: block; } }
      #pageSpecial01 #container #three_pillars .each .title {
        background: #00559d;
        color: #fff;
        width: 20%;
        text-align: center;
        display: flex;
        justify-content: center;
        align-items: center;
        flex-wrap: wrap; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #container #three_pillars .each .title {
            width: 100%; } }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #container #three_pillars .each .title .wrap02 {
            display: flex;
            justify-content: center;
            align-items: center; } }
        #pageSpecial01 #container #three_pillars .each .title .number {
          color: #F5CD00;
          font-size: 600%;
          white-space: nowrap;
          font-weight: 700;
          font-family: "urw-din-condensed", sans-serif;
          line-height: 1; }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #container #three_pillars .each .title .number {
              font-size: 400%;
              margin-right: 0.1em; } }
        #pageSpecial01 #container #three_pillars .each .title h3 {
          font-weight: 700;
          font-size: 150%;
          width: 100%; }
      #pageSpecial01 #container #three_pillars .each section {
        width: 80%;
        padding: 1.5em; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #container #three_pillars .each section {
            width: 100%;
            padding: 1.5em 5%; } }
        #pageSpecial01 #container #three_pillars .each section h4 {
          color: #00559d;
          font-size: 125%;
          font-weight: 700;
          margin-bottom: 0.75em; }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #container #three_pillars .each section h4 {
              text-align: center; } }
        #pageSpecial01 #container #three_pillars .each section .detail {
          display: flex;
          justify-content: space-between; }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #container #three_pillars .each section .detail {
              display: block; } }
          #pageSpecial01 #container #three_pillars .each section .detail dl {
            width: 31%; }
            @media screen and (max-width: 599px) {
              #pageSpecial01 #container #three_pillars .each section .detail dl {
                width: 100%;
                margin-bottom: 1em; } }
            #pageSpecial01 #container #three_pillars .each section .detail dl dt {
              font-weight: 700;
              color: #2fa83f;
              font-size: 112.5%; }
              @media screen and (max-width: 599px) {
                #pageSpecial01 #container #three_pillars .each section .detail dl dt {
                  text-align: center; } }
  #pageSpecial01 #container #message .wrap01 {
    display: flex;
    justify-content: space-between; }
    @media screen and (max-width: 599px) {
      #pageSpecial01 #container #message .wrap01 {
        display: block; } }
    #pageSpecial01 #container #message .wrap01 .img {
      width: 20%;
      border-radius: 0.75em; }
      @media screen and (max-width: 599px) {
        #pageSpecial01 #container #message .wrap01 .img {
          width: 100%;
          display: flex;
          justify-content: center;
          align-items: center; } }
      #pageSpecial01 #container #message .wrap01 .img .photo {
        border-radius: 0.75em;
        margin-bottom: 0.75em; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #container #message .wrap01 .img .photo {
            width: 20%;
            margin: 0 2.5% 0 0; } }
      #pageSpecial01 #container #message .wrap01 .img .name {
        text-align: center;
        color: #57667b; }
        #pageSpecial01 #container #message .wrap01 .img .name span {
          display: block; }
        #pageSpecial01 #container #message .wrap01 .img .name strong {
          font-size: 125%; }
    #pageSpecial01 #container #message .wrap01 .message {
      width: 76%; }
      @media screen and (max-width: 599px) {
        #pageSpecial01 #container #message .wrap01 .message {
          width: 100%;
          margin-top: 1.5em; } }
      #pageSpecial01 #container #message .wrap01 .message .each {
        display: flex;
        justify-content: space-between;
        margin-bottom: 3em; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #container #message .wrap01 .message .each {
            margin-bottom: 2em; } }
        #pageSpecial01 #container #message .wrap01 .message .each .number {
          background: #F5CD00;
          display: flex;
          justify-content: center;
          align-items: center;
          width: 1.5em;
          height: 1.5em;
          font-size: 200%;
          color: #00559d;
          white-space: nowrap;
          font-weight: 700;
          font-family: "urw-din-condensed", sans-serif;
          line-height: 1;
          border-radius: 100%; }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #container #message .wrap01 .message .each .number {
              font-size: 150%; } }
        #pageSpecial01 #container #message .wrap01 .message .each section {
          width: calc(100% - 3.5em); }
          @media screen and (max-width: 599px) {
            #pageSpecial01 #container #message .wrap01 .message .each section {
              width: calc(100% - 2.5em); } }
          #pageSpecial01 #container #message .wrap01 .message .each section h3 {
            color: #00559d;
            font-size: 150%;
            margin-bottom: 0.5em;
            margin-top: 0.15em;
            position: relative; }
            @media screen and (max-width: 599px) {
              #pageSpecial01 #container #message .wrap01 .message .each section h3 {
                font-size: 125%; } }
            #pageSpecial01 #container #message .wrap01 .message .each section h3::after {
              content: "";
              display: block;
              background: #006EAF;
              background: -webkit-linear-gradient(left, #006eaf 0%, #00a64e 56%, #f6af00 100%);
              background: -o-linear-gradient(left, #006eaf 0%, #00a64e 56%, #f6af00 100%);
              background: linear-gradient(to right, #006eaf 0%, #00a64e 56%, #f6af00 100%);
              top: 100%;
              width: 100%;
              height: 2px;
              position: absolute;
              top: 100%;
              right: 0; }
  #pageSpecial01 #container #consultation {
    background: #333;
    color: #fff;
    padding: 4em 0;
    margin-top: 0; }
    @media screen and (max-width: 599px) {
      #pageSpecial01 #container #consultation {
        padding: 2em 0; } }
    #pageSpecial01 #container #consultation .lead {
      color: #83ccd2; }
    #pageSpecial01 #container #consultation .box01 {
      margin-top: 3em;
      display: flex;
      justify-content: space-between; }
      @media screen and (max-width: 599px) {
        #pageSpecial01 #container #consultation .box01 {
          display: block;
          margin-top: 2em; } }
      #pageSpecial01 #container #consultation .box01 section {
        width: 48%;
        border-radius: 0.75em;
        overflow: hidden;
        position: relative;
        padding: 1.5em; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #container #consultation .box01 section {
            width: 100%;
            padding: 1.5em 2.5%;
            margin-bottom: 1em; } }
        #pageSpecial01 #container #consultation .box01 section::after {
          content: "";
          background: url("/assets/img/bg01.png") no-repeat 0 0 #fff;
          background-size: cover;
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          opacity: 0.15; }
        #pageSpecial01 #container #consultation .box01 section h3 {
          position: relative;
          z-index: 2;
          text-align: center;
          margin-bottom: 1em; }
          #pageSpecial01 #container #consultation .box01 section h3 span b {
            display: inline-block;
            background: #006EAF;
            background: -webkit-linear-gradient(left, #006eaf 0%, #00a64e 56%, #f6af00 100%);
            background: -o-linear-gradient(left, #006eaf 0%, #00a64e 56%, #f6af00 100%);
            background: linear-gradient(to right, #006eaf 0%, #00a64e 56%, #f6af00 100%);
            background-clip: border-box;
            background-clip: border-box;
            -webkit-background-clip: text;
            -webkit-text-fill-color: transparent;
            font-size: 87.5%;
            letter-spacing: 0.1em;
            font-family: "urw-din-condensed", sans-serif; }
          #pageSpecial01 #container #consultation .box01 section h3 span strong {
            display: block;
            font-size: 175%; }
        #pageSpecial01 #container #consultation .box01 section p {
          opacity: 0.85;
          margin-bottom: 1em; }
        #pageSpecial01 #container #consultation .box01 section .txt01 {
          font-size: 87.5%; }
        #pageSpecial01 #container #consultation .box01 section .li01 {
          display: flex;
          justify-content: center;
          align-items: center;
          flex-direction: column; }
          #pageSpecial01 #container #consultation .box01 section .li01 li {
            display: inline-block;
            text-align: left;
            min-width: 34%;
            text-indent: -1em;
            margin-left: 1em;
            font-weight: 500; }
            #pageSpecial01 #container #consultation .box01 section .li01 li::before {
              content: "●";
              color: #F5CD00; }
            #pageSpecial01 #container #consultation .box01 section .li01 li:not(:last-child) {
              margin-bottom: 0.5em; }
    #pageSpecial01 #container #consultation .box02 {
      background: #fff;
      padding: 1.5em;
      border-radius: 0.75em;
      text-align: center;
      color: #000;
      margin-top: 3em; }
      @media screen and (max-width: 599px) {
        #pageSpecial01 #container #consultation .box02 {
          padding: 1.5em 2.5%;
          margin-top: 1em; } }
      #pageSpecial01 #container #consultation .box02 h3 {
        color: #00559d;
        font-size: 150%; }
  #pageSpecial01 #container #faq .box01 dl {
    border-radius: 0.75em;
    border: 1px solid #ddd;
    margin-bottom: 2em; }
    @media screen and (max-width: 599px) {
      #pageSpecial01 #container #faq .box01 dl {
        margin-bottom: 1em; } }
    #pageSpecial01 #container #faq .box01 dl dt {
      display: flex;
      position: relative;
      padding: 0.75em;
      transition: all 0.5s ease;
      cursor: pointer; }
      @media screen and (max-width: 599px) {
        #pageSpecial01 #container #faq .box01 dl dt {
          padding: 0.75em 1.5em 0.75em 0.5em; } }
      #pageSpecial01 #container #faq .box01 dl dt.active, #pageSpecial01 #container #faq .box01 dl dt:hover {
        background: #f4f4f4; }
      #pageSpecial01 #container #faq .box01 dl dt .q {
        background: #F5CD00;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 1.5em;
        height: 1.5em;
        font-size: 150%;
        color: #00559d;
        white-space: nowrap;
        font-weight: 700;
        font-family: "urw-din-condensed", sans-serif;
        line-height: 1;
        border-radius: 100%; }
      #pageSpecial01 #container #faq .box01 dl dt .txt {
        width: calc(100% - 3em);
        font-weight: 700;
        font-size: 112.5%;
        margin-top: 0.15em;
        margin-left: 0.5em; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #container #faq .box01 dl dt .txt {
            font-size: 100%;
            margin-top: 0.35em; } }
      #pageSpecial01 #container #faq .box01 dl dt .plus, #pageSpecial01 #container #faq .box01 dl dt .minus {
        position: absolute;
        top: 50%;
        right: 0.5em;
        transform: translate(0, -50%);
        font-size: 150%;
        color: #57667b; }
        @media screen and (max-width: 599px) {
          #pageSpecial01 #container #faq .box01 dl dt .plus, #pageSpecial01 #container #faq .box01 dl dt .minus {
            right: 0.25em; } }
    #pageSpecial01 #container #faq .box01 dl dd {
      padding: 0.75em;
      display: none; }
      #pageSpecial01 #container #faq .box01 dl dd .wrap01 {
        display: flex; }
      #pageSpecial01 #container #faq .box01 dl dd .a {
        background: #83ccd2;
        display: flex;
        justify-content: center;
        align-items: center;
        width: 1.5em;
        height: 1.5em;
        font-size: 150%;
        color: #fff;
        white-space: nowrap;
        font-weight: 700;
        font-family: "urw-din-condensed", sans-serif;
        line-height: 1;
        border-radius: 100%; }
      #pageSpecial01 #container #faq .box01 dl dd .txt {
        width: calc(100% - 3em);
        margin-left: 0.6em; }
  #pageSpecial01 #container #contact {
    background: #f1ecdd;
    padding: 4em 0; }
    @media screen and (max-width: 599px) {
      #pageSpecial01 #container #contact {
        padding: 2em 0 3em; } }
