* {
  font-weight: bold;
  color: #4F4F4F;
  font-family: 'Noto Sans JP', sans-serif; }

.pc {
  display: block; }

.sp {
  display: none; }

header {
  padding: 150px 0;
  border-bottom: solid 2px #67CCEA;
  margin-bottom: 100px; }
  header img {
    width: 400px;
    display: block;
    margin: 0 auto; }
  header p {
    font-size: 33px;
    text-align: center;
    margin-top: 20px;
    letter-spacing: 0.1em;
    margin-left: 2px; }

#section01 h1 {
  font-size: 50px;
  text-align: center;
  color: #67CCEA;
  letter-spacing: 0.1em;
  line-height: 1.5; }
#section01 > div {
  margin-top: 20px;
  padding: 70px 0;
  background-image: url("../img/bg01.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center; }
  #section01 > div h2 {
    color: white;
    font-size: 35px;
    text-align: center;
    margin-bottom: 30px;
    letter-spacing: 0.1em; }
  #section01 > div p {
    color: white;
    text-align: justify;
    display: block;
    margin: 0 auto;
    width: fit-content;
    line-height: 2; }
#section01 > div:nth-of-type(2) {
  margin-top: 0;
  background-image: url("../img/bg02.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center; }
  #section01 > div:nth-of-type(2) ul {
    width: 700px;
    display: flex;
    justify-content: space-between;
    margin: 30px auto 0 auto; }
    #section01 > div:nth-of-type(2) ul li {
      width: 33%; }
      #section01 > div:nth-of-type(2) ul li p span {
        font-size: 35px;
        color: white; }
#section01 > div:nth-of-type(3) {
  margin-top: 0;
  background-image: url("../img/bg03.jpg");
  background-size: cover;
  background-repeat: no-repeat;
  background-position: center center; }
  #section01 > div:nth-of-type(3) ul {
    width: 700px;
    display: flex;
    justify-content: space-between;
    margin: 30px auto 0 auto; }
    #section01 > div:nth-of-type(3) ul li {
      width: 33%; }
      #section01 > div:nth-of-type(3) ul li p span {
        font-size: 35px;
        color: white; }

#section02 {
  padding: 150px 0 0 0; }
  #section02 h1 {
    font-size: 50px;
    text-align: center;
    color: #67CCEA;
    letter-spacing: 0.1em;
    line-height: 1.5; }
  #section02 > div {
    margin-top: 20px;
    padding: 70px 0;
    background-image: url("../img/bg04.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center; }
    #section02 > div h2 {
      color: #67CCEA;
      font-size: 35px;
      text-align: center;
      margin-bottom: 30px;
      letter-spacing: 0.1em; }
    #section02 > div p {
      color: #67CCEA;
      text-align: justify;
      display: block;
      margin: 0 auto;
      width: fit-content;
      line-height: 2;
      width: 600px; }
  #section02 > div:nth-of-type(2) {
    margin-top: 0px;
    padding: 70px 0;
    background-image: url("../img/bg05.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center; }

#section03 {
  padding: 100px 0;
  background: #67CCEA; }
  #section03 > div:nth-of-type(1) {
    margin-bottom: 70px; }
  #section03 h1 {
    font-size: 50px;
    text-align: center;
    color: white;
    letter-spacing: 0.1em;
    margin-bottom: 100px; }
  #section03 p {
    font-size: 35px;
    text-align: center;
    margin-bottom: 30px;
    letter-spacing: 0.1em;
    color: white; }
  #section03 table {
    border-collapse: collapse;
    margin: 0 auto 0px auto; }
    #section03 table tr {
      border-bottom: solid thin white; }
      #section03 table tr:last-of-type {
        border-bottom: none; }
      #section03 table tr td {
        padding: 20px;
        font-size: 25px;
        color: white; }
      #section03 table tr td:nth-of-type(1) {
        text-align: left; }
      #section03 table tr td:nth-of-type(2) {
        text-align: right; }

footer {
  padding: 100px 0; }
  footer h3 {
    font-size: 35px;
    text-align: center;
    margin-bottom: 10px; }
  footer p {
    font-size: 18px;
    text-align: center;
    line-height: 2; }
  footer a {
    font-size: 45px;
    text-align: center;
    display: block;
    margin: 20px 0;
    text-decoration: underline;
    text-decoration-thickness: 2px;
    text-underline-offset: 5px;
    transition: 0.3s all;
    text-decoration-color: #67CCEA;
    color: #67CCEA; }
    footer a:hover {
      transform: translateY(-5px); }

@media (max-width: 768px) {
  .pc {
    display: none; }

  .sp {
    display: block; }

  header {
    padding: 100px 0;
    border-bottom: solid 2px #67CCEA;
    margin-bottom: 70px; }
    header img {
      width: 250px;
      display: block;
      margin: 0 auto; }
    header p {
      font-size: 25px;
      text-align: center;
      margin-top: 10px;
      letter-spacing: 0.1em; }

  #section01 h1 {
    font-size: 30px;
    text-align: center;
    color: #67CCEA;
    letter-spacing: 0.1em; }
  #section01 > div {
    margin-top: 10px;
    padding: 70px 0;
    background-image: url("../img/bg01_2.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: top center; }
    #section01 > div h2 {
      color: white;
      font-size: 25px;
      text-align: center;
      margin-bottom: 30px;
      letter-spacing: 0.1em; }
    #section01 > div p {
      color: white;
      text-align: justify;
      display: block;
      margin: 0 auto;
      width: fit-content;
      line-height: 2;
      width: 80%;
      font-size: 16px; }
  #section01 > div:nth-of-type(2) {
    margin-top: 0;
    background-image: url("../img/bg02.jpg");
    background-size: cover;
    background-repeat: no-repeat;
    background-position: center center; }
    #section01 > div:nth-of-type(2) ul {
      width: 100%;
      display: block;
      margin: 30px auto 0 auto; }
      #section01 > div:nth-of-type(2) ul li {
        width: 100%;
        margin-bottom: 20px; }
        #section01 > div:nth-of-type(2) ul li p {
          font-size: 20px; }
          #section01 > div:nth-of-type(2) ul li p span {
            font-size: 35px;
            color: white; }
  #section01 > div:nth-of-type(3) {
    margin-top: 0;
    margin-top: 0;
    background-image: url("../img/bg03_2.jpg");
    background-size: auto 100%;
    background-repeat: no-repeat;
    background-position: left center; }
    #section01 > div:nth-of-type(3) h2 {
      line-height: 1.5; }
    #section01 > div:nth-of-type(3) ul {
      width: 100%;
      display: block;
      margin: 30px auto 0 auto; }
      #section01 > div:nth-of-type(3) ul li {
        width: 100%;
        margin-bottom: 20px; }
        #section01 > div:nth-of-type(3) ul li p {
          font-size: 20px;
          text-align: left; }
          #section01 > div:nth-of-type(3) ul li p span {
            font-size: 35px;
            color: white; }

  #section02 {
    padding: 100px 0 0 0; }
    #section02 h1 {
      font-size: 28px;
      text-align: center;
      color: #67CCEA;
      letter-spacing: 0.1em; }
    #section02 > div {
      margin-top: 10px;
      padding: 70px 0;
      background-image: url("../img/bg04_2.jpg");
      background-size: auto 100%;
      background-repeat: no-repeat;
      background-position: top center; }
      #section02 > div h2 {
        color: #67CCEA;
        font-size: 25px;
        text-align: center;
        margin-bottom: 30px;
        letter-spacing: 0.1em;
        line-height: 1.5; }
      #section02 > div p {
        color: #67CCEA;
        text-align: justify;
        display: block;
        margin: 0 auto;
        width: fit-content;
        line-height: 2;
        width: 80%; }
    #section02 > div:nth-of-type(2) {
      margin-top: 0px;
      padding: 70px 0;
      background-image: url("../img/bg05_2.jpg");
      background-size: auto 100%;
      background-repeat: no-repeat;
      background-position: top center; }

  #section03 {
    padding: 70px 0;
    background: #67CCEA; }
    #section03 > div:nth-of-type(1) {
      margin-bottom: 70px; }
    #section03 h1 {
      font-size: 30px;
      text-align: center;
      color: white;
      letter-spacing: 0.1em;
      margin-bottom: 70px; }
    #section03 p {
      font-size: 25px;
      text-align: center;
      margin-bottom: 30px;
      letter-spacing: 0.1em;
      color: white; }
    #section03 table {
      border-collapse: collapse;
      margin: 0 auto; }
      #section03 table tr {
        border-bottom: solid thin white; }
        #section03 table tr:last-of-type {
          border-bottom: none; }
        #section03 table tr td {
          padding: 10px;
          font-size: 18px;
          color: white; }
        #section03 table tr td:nth-of-type(1) {
          text-align: left; }
        #section03 table tr td:nth-of-type(2) {
          text-align: right; }

  footer {
    padding: 70px 0; }
    footer h3 {
      font-size: 30px;
      text-align: center;
      margin-bottom: 10px; }
    footer p {
      font-size: 18px;
      text-align: center;
      line-height: 2; }
    footer a {
      font-size: 40px;
      text-align: center;
      display: block;
      margin: 20px 0;
      text-decoration: underline;
      text-decoration-thickness: 2px;
      text-underline-offset: 5px;
      text-decoration-color: #67CCEA;
      color: #67CCEA; } }
