
br {
  display: block;
  content: "";
  margin: 10px 0;
  }

img{display: block;
    margin-left: auto;
    margin-right: auto;
}

@media screen and ( min-width:800px ){
    h1{color: #ff0084;
        text-align: center;
        padding: 0.2em;
        margin: 20px auto 20px;
        border-top: solid 2px #ff0084;
        border-bottom: solid 2px #ff0084;
                background-color: #fff5f9;
        font-size: 29px;
    }
  .main{
    width: 600px;
    margin:0 auto;
  }
    .text {
      margin: 30 auto　20px;

      letter-spacing: 0.03em;
      font-size: 20px;
      line-height: 30px;
  }
   .text3 {
      margin: 20px 0 50px;
      letter-spacing: 0.03em;
      font-size: 22px;
      text-align: center;

  }

 .img3{
        height: 340px;
        width: 600px;
        }
      


  h2 {
    font-size: 32px;
    position: relative;

    padding: 0 55px;
    color: #00214e;
    text-align: center;
  }
  
  h2:before, h2:after {
    content: '';
    position: absolute;
    top: 50%;
    width: 45px;
    height: 2px;
    border-top: solid 2px #00214e;
    border-bottom: solid 2px #00214e;
    text-align: center;
    
  }
   .sp {
        font-weight: bold;
        text-align: center;
        font-size: 30px;
        margin: 15px auto 15px ;
        width: fit-content;
        color: rgb(255, 255, 255);
        background-color: #00214e;
        
    }

      .sp2 {
        font-weight: bold;
        text-align: center;
        font-size: 38px;
        margin: 15px auto 15px ;
        width: fit-content;
        color: rgb(255, 255, 255);
        background-color: #00214e;
        
    }
  h2:before {
    left:0;
  }
  h2:after {
    right: 0;
  }
 
  .img1{
    width: 50%;
    margin: 0px auto;
  }
    .img2{
  width: 100%;
  margin: 0px auto;
      }
  
      .img3{
        height: 340px;
        width: 600px;
        }
         .img4{
    width: 85%;
    margin: 0px auto;
        }
          .line {
            background: linear-gradient(transparent 60%, yellow 30%);
            display: inline-block;
          }

      .spanline {
        font-weight: bold;
        text-align: center;
        font-size: 25px;
        margin: 15px auto 15px ;
        width: fit-content;
          color: rgb(255, 252, 56);
        background-color: #00214e;
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    }

      .pinkA {
        font-weight: bold;
      color: rgb(255, 0, 0);
        font-size: 25px;
        text-align: center;
    }

    .pinkB {
      font-weight: bold;
      color: rgb(255, 0, 0);
      font-size: 25px;
      text-align: center;
  }

  .pinkC {
    font-weight: bold;
    color: #00214e;
    font-size: 25px;
}

.ribbon4 {
  display: inline-block;
  position: relative;
  height: 60px;/*高さ*/
  line-height: 60px;/*高さ*/
  text-align: center;
  padding: 0 40px 0 18px;/*文字の左右の余白*/
  font-size: 31px;/*文字サイズ*/
  background: #ff0000;/*背景色*/
  color: #FFF;/*文字色*/
  box-sizing: border-box;
}

.ribbon4:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.ribbon4:after {
  top: 0;
  right: 0;
  border-width: 30px 15px 30px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}

 .cp_arrows_container {
            position: relative;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        .cp_arrows {
            position: relative;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            width: 120px; /* 横長に */
            height: 120px;
        }

        .cp_arrow {
            position: absolute;
            width: 100px; /* 横長に */
            height: 10px;
            opacity: 0;
        }

        /* 全ての矢印セットを同じタイミングで */
        .cp_arrows .cp_arrow:first-child {
            animation: arrow-move-down 2s ease-in-out infinite;
        }
        .cp_arrows .cp_arrow:nth-child(2) {
            animation: arrow-move-down 2s 0.3s ease-in-out infinite;
        }

        /* 矢印の形状（下向き・横長） */
        .cp_arrow:before,
        .cp_arrow:after {
            position: absolute;
            content: '';
            top: 0;
            width: 43px; /* 横長に */
            height: 3px;
            background: #161616;
        }

        .cp_arrow:before {
            left: 10px;
            transform: rotate(30deg);
        }

        .cp_arrow:after {
            right: 10px;
            transform: rotate(-30deg);
        }

        /* 2番目の矢印を少し下に配置 */
        .cp_arrow:nth-child(2) {
            top: 40px;
        }

        /* 下向きアニメーション */
        @keyframes arrow-move-down {
            0% { 
                opacity: 0; 
                transform: translateY(-20px);
            }
            50% { 
                opacity: 1; 
                transform: translateY(0);
            }
            100% { 
                opacity: 0; 
                transform: translateY(20px);
            }
        }
.box27 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #00214e;
    background-color: #fffcf4;
}
.box27 .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #00214e;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box27 p {
    margin: 0; 
    padding: 0;
}
.list-9 {
    list-style-type: disc;
    list-style-position: inside;
    padding: 1em;
    border: 2px solid #2589d0;
}

.list-9 li {
    padding: .5em;
}

.list-9 li:not(:last-child) {
    border-bottom: 1px dashed #2589d0;
}

.list-9 li::marker {
    color: #2589d0;
    font-size: 1.1em;
}

}
@media screen and ( max-width:799px ){
       h1{color: #ff0084;
        text-align: center;
        padding: 0.2em;
        margin: 10px auto 10px;
        border-top: solid 2px #ff0084;
        border-bottom: solid 2px #ff0084;
        background-color: #fff5f9;
        font-size: 5.6vw;
    }
.list-9 {
    list-style-type: disc;
    list-style-position: inside;
    padding: 1em;
    border: 2px solid #2589d0;
}

.list-9 li {
    padding: .5em;
}

.list-9 li:not(:last-child) {
    border-bottom: 1px dashed #2589d0;
}

.list-9 li::marker {
    color: #2589d0;
    font-size: 1.1em;
}

  .main {
    width: 100%;
    margin: 0px auto;
    padding: 3px;
    background-color: #fff;
}
  .text{letter-spacing: 0.03em;
    margin: 10px;
    font-size: 16px;
    line-height: 30px;}
   

    .text2{letter-spacing: 0.03em;
      font-size: 16px;
      line-height: 30px;
    text-align: center;
    }
 .text3 {
      margin: 10px 0 35px 0px;
      letter-spacing: 0.03em;
      font-size: 24px;
      text-align: center;
  }
    .img1{
      width: 50%;
      margin: 0px auto;
    }
      .img2{
    width: 100%;
    margin: 0px auto;
        }

       .img3{
          width: 100%;
          margin: 0px auto;
        content: ” “;
        display: block;
        height: 100%;
        min-height: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        border: 3px solid #00214e;
      }

   .img4{
    width: 85%;
    margin: 0px auto;
        }

        h2 {
          font-size: 22px;
          position: relative;

          padding: 0 55px;
          color: #00214e;
          text-align: center;
        }
        
        h2:before, h2:after {
          content: '';
          position: absolute;
          top: 50%;
          width: 45px;
          height: 2px;
          border-top: solid 2px #00214e;
          border-bottom: solid 2px #00214e;
          text-align: center;
          
        }
        
        h2:before {
          left:0;
        }
        h2:after {
          right: 0;
        }
    
        .img3{
          width: 100%;
          margin: 0px auto;
        content: ” “;
        display: block;
        height: 100%;
        min-height: 100%;
        -webkit-box-sizing: border-box;
        -moz-box-sizing: border-box;
        box-sizing: border-box;
        border: 3px solid #00214e;
      }
.ribbon4 {
  display: inline-block;
  position: relative;
  height: 60px;/*高さ*/
  line-height: 60px;/*高さ*/
  text-align: center;
  padding: 0 40px 0 18px;/*文字の左右の余白*/
  font-size: 29px;/*文字サイズ*/
  background: #ff0000;/*背景色*/
  color: #ffffff;/*文字色*/
  box-sizing: border-box;
  margin: 2px 0 2px 0;
}

.ribbon4:after {
  position: absolute;
  content: '';
  width: 0px;
  height: 0px;
  z-index: 1;
}

.ribbon4:after {
  top: 0;
  right: 0;
  border-width: 30px 15px 30px 0px;
  border-color: transparent #fff transparent transparent;
  border-style: solid;
}
.list-3 {
  font-size: 19px;
}
  ul, ol {
    background: #fffcf4;

    border-radius :8px;/*角の丸み*/
    box-shadow :0px 0px 5px silver;/*5px=影の広がり具合*/
    padding: 0.5em 0.5em 0.5em 2em;
  }
  ul li, ol li {
    line-height: 1.5;
    padding: 0.5em 0;
  }





      .ulf {
       
          color:rgb(0, 2, 5);
          font-size: 16px;
          }
      
          .line {
            background: linear-gradient(transparent 60%, yellow 30%);
            display: inline-block;
          }

      .spanline {
        font-weight: bold;
        text-align: center;
        font-size: 21px;
        margin: 15px auto 15px ;
        width: fit-content;
        color: rgb(255, 255, 255);
        background-color: #00214e;
        font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", メイリオ, Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    }
       .sp {
        font-weight: bold;
        text-align: center;
        font-size: 21px;
        margin: 15px auto 15px ;
        width: fit-content;
        color: rgb(255, 255, 255);
        background-color: #00214e;
        
    }

   .sp2 {
        font-weight: bold;
        text-align: center;
        font-size: 30px;
        margin: 15px auto 15px ;
        width: fit-content;
        color: rgb(255, 255, 255);
        background-color: #00214e;
        
    }
      .pinkB {
        font-weight: bold;
        color: rgb(255, 0, 0);
        font-size: 20px;
        text-align: center;
       
    }

    .pinkA {
      font-weight: bold;
      color: rgb(255, 0, 0);
      font-size: 20px;
      text-align: center;
     
  }

  .pinkC {
    font-weight: bold;
    color: #00214e;
    font-size: 17px;
   
}


    .box18{
      margin:2em 0;
      position: relative;
      padding: 0.25em 1em;
      border: solid 2px #00214e;
      border-radius: 3px 0 3px 0;
      background-color: #fffef0;
  }
  .box18:before,.box18:after
  {
      content: '';
      position: absolute;
      width:10px;
      height: 10px;
      border: solid 2px #00214e;
      border-radius: 50%;
  }
  .box18:after {
      top:-12px;
      left:-12px;
  }
  .box18:before {
      bottom:-12px;
      right:-12px;
  }
  .box18 p {
      margin: 0; 
      padding: 0;
  }

 .cp_arrows_container {
            position: relative;
            display: flex;
            justify-content: center;
            align-items: center;
        }

        .cp_arrows {
            position: relative;
            display: flex;
            flex-direction: column;
            justify-content: center;
            align-items: center;
            width: 120px; /* 横長に */
            height: 120px;
        }

        .cp_arrow {
            position: absolute;
            width: 100px; /* 横長に */
            height: 10px;
            opacity: 0;
        }

        /* 全ての矢印セットを同じタイミングで */
        .cp_arrows .cp_arrow:first-child {
            animation: arrow-move-down 2s ease-in-out infinite;
        }
        .cp_arrows .cp_arrow:nth-child(2) {
            animation: arrow-move-down 2s 0.3s ease-in-out infinite;
        }

        /* 矢印の形状（下向き・横長） */
        .cp_arrow:before,
        .cp_arrow:after {
            position: absolute;
            content: '';
            top: 0;
            width: 43px; /* 横長に */
            height: 3px;
            background: #161616;
        }

        .cp_arrow:before {
            left: 10px;
            transform: rotate(30deg);
        }

        .cp_arrow:after {
            right: 10px;
            transform: rotate(-30deg);
        }

        /* 2番目の矢印を少し下に配置 */
        .cp_arrow:nth-child(2) {
            top: 40px;
        }

        /* 下向きアニメーション */
        @keyframes arrow-move-down {
            0% { 
                opacity: 0; 
                transform: translateY(-20px);
            }
            50% { 
                opacity: 1; 
                transform: translateY(0);
            }
            100% { 
                opacity: 0; 
                transform: translateY(20px);
            }
        }
.box27 {
    position: relative;
    margin: 2em 0;
    padding: 0.5em 1em;
    border: solid 3px #00214e;
    background-color: #fffcf4;
}
.box27 .box-title {
    position: absolute;
    display: inline-block;
    top: -27px;
    left: -3px;
    padding: 0 9px;
    height: 25px;
    line-height: 25px;
    font-size: 17px;
    background: #00214e;
    color: #ffffff;
    font-weight: bold;
    border-radius: 5px 5px 0 0;
}
.box27 p {
    margin: 0; 
    padding: 0;
}

  }