@charset "UTF-8";
@import url(base.css);
@import url(common.css);
/*---------------------------------
Page CSS 2018.05
CSS 担当者名 Document 2018.05
Last Update 2018.05 担当者名
---------------------------------*/

.pc-only,
.sp-only{
  display: none;
}
/* スマホのみ表示 */
@media screen and (max-width: 769px) {
  .sp-only {
    display: inline;
  }
}
.pageIndex{
  overflow-x: hidden;
}

@media print, screen and (min-width: 768px) {
  /*
  ホーム
  -------------------------------------*/
  .sp-indent {
    display: none;

  }
  Img {
    margin-top: 90px;
  }
  .pc-only {
    display: inline;
  }

  Img .slick-box li a img {
    width: 100%;
  }
  figure {
    margin: 0 auto;
    text-align: center;
  }
 figure img {
    max-width: 100%;
    height: auto;
  }
   #Container {
    margin-top: 0;
  }
   .contBox h2 {
    margin-top: 0px;
  }
   .contBox .contSubBox h3 {
    margin: 10px 20px; 
    text-align: center;
    font-size: 22px;
    font-weight: bold;
  }
   .contBox .bgWrap {
    padding: 30px 0;
  }
   .contBox .moreBtn {
    margin-top: 30px;
  }
   .contBox .moreBtn a {
    display: block;
    margin: 0 auto;
    border-radius: 5px; 
    width: 360px;
    height: 50px;
    background-color: #00afdd;
    line-height: 50px;
    text-align: center;
    text-decoration: none;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
  }
   .contBox .moreBtn a:hover {
    opacity: .7;
  }
   #ContBox01 .news {
    margin-top: 60px;
  }
   #ContBox01 {
    padding-bottom: 40px;
    min-height: 1300px; 

    background: rgba(114, 160, 197, 0.15);
  }
   #ContBox01 dl {
    margin: 15px 30px 20px; 
    border-bottom: 1px solid  #595757;
  }
   #ContBox01 dl dt {
    display: inline-block;
  }
   #ContBox01 dl dd {
    display: inline-block;
    margin-left: 20px;
  }
 /*  #ContBox01 .corner-img {
    position: absolute;
    top: 0;
    left: 0%; 
   
    z-index: 1;
  }*/
  
  /* #ContBox01 .top-left {
    transform: translateX(-75%); 
    width: 700px;
    height: auto;
    display: block;
  }中央から少し左にずらす 
    #ContBox01 .bottom-right {
    transform: translateX(-60%); 
    transform: translateY(60%);
    width: 550px;
    bottom:200px;
  
  }*/
  #ContBox01 .scroll-button {
    display: none;
  }

  #ContBox01 .scroll-button.left {
    display: none;
  }

  #ContBox01 .scroll-button.right {
    display: none;
  }



}

#ContBox01 .top {
    display: block;
    margin: 0 auto;
    transform: translateY(-5%);
    width: 100%;         /* 親要素の幅にフィット */
    max-width: 1000px;    /* 広がりすぎ防止 */
    height: auto;        /* 縦横比を維持 */
  }
   #ContBox01 h2 {
    position: relative;
    bottom: -50px; /* 下からの距離 */
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    font-size: 30px;
 
  
    justify-content: center;
    
  }
   #ContBox01 {
    position: relative; /* この中でabsolute配置を有効にするため */

  }
@media print, screen and (min-width: 768px) {

   #ContBox01 .product-button-container {
    position: relative;
    bottom: 20px; /* 下からの距離 */
    left: 50%;
    transform: translateX(-50%);
    display: flex;
    gap: 40px;
  
    justify-content: center;
  }
}
  #ContBox01 .product-card {
    max-width: 200px;
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    
    

  }
  
   #ContBox01 .product-card img {
    max-width: 100%;
    height: auto;
    border-radius: 12px;
    
  }
  
    #ContBox01 .product-label {
    margin-top: 10px;
    font-weight: bold;
    color: #333;
    text-align: center;
  }
   .product-button-container .product-card:nth-child(2),
   .product-button-container .product-card:nth-child(3) {
  margin-top: 0px; 
  }
  /* --- スマホ用（画面幅768px以下） --- */
@media screen and (max-width: 768px) {
  #ContBox01 {
    
    background: rgba(114, 160, 197, 0.15);
  }
  #ContBox01 .scroll-wrapper {
    position: relative;
    
   
  }

  #ContBox01 .scroll-button {
    position: absolute;
    top: 50%;
    transform: translateY(0%);
    font-size: 0.5rem; /* ← 小さく調整 */
    background: rgba(255, 255, 255, 0.5);
    border: none;
    padding: 0.4rem 0.6rem;
    z-index: 10;
    cursor: pointer;
    border-radius: 50%;
    box-shadow: 0 0 3px rgba(0,0,0,0.2);
    transition: opacity 0.3s ease;
  }

  #ContBox01 .scroll-button.left {
    left: 0.3rem;
 
  }

  #ContBox01 .scroll-button.right {
    right: 0.3rem;

  }

  #ContBox01 .scroll-button.hidden {
    opacity: 0;
    pointer-events: none;
  }

  #ContBox01 .product-button-container {
    display: flex;
    overflow-x: auto;
    gap: 1rem;

    
    margin-left: 0rem;
    scroll-snap-type: none;
    scroll-padding-left: 0;
    -webkit-overflow-scrolling: touch;
    scroll-behavior: smooth;
    
  }

  #ContBox01 .product-button-container::-webkit-scrollbar {
    display: none;
  }

  #ContBox01 .product-card {
    flex: 0 0 100%;
    scroll-snap-align: start;
    
  }
#ContBox01 .product-card:first-child {
  margin-left: 1rem;
}
#ContBox01 .product-card:last-child {
  margin-right: 1rem;
}






  #ContBox01 h2 {
    font-size: 1.4rem;
    text-align: center;
    margin-bottom: 0px;
    top:20px;
  }

  #ContBox01 img.top {
    width: 100%;
    height: auto;
  }


}
   #ContBox02 {
    margin-top: 0px;
    padding: 30px 0 40px; 
    background: #fff;
  }
  @media screen and (max-width: 768px) {
    #ContBox02 {
      margin-top: 0px !important;
      background: #fff !important;
      }
    
    }
   #ContBox02 h2 {
    margin-top: 0;
    
  }
   #ContBox02 p {
    margin: 0 auto; 
    width: 700px;
    line-height: 31px;
    font-size: 17px;
  }
  .flex-box {
    display: flex;
  
    align-items: center;
    justify-content: space-between;
    gap: 0rem;
    max-width: 100%;         
  }
  
  .text {
    flex: 1 1 55%;
    font-size: 1rem;
    line-height: 1.6;
    margin: 0;
    padding: 0; 
  }
  
  .imgring {
    flex: 1 1 40%;
    min-width: 250px;
    text-align: left;
  }
  
  .imgring img {
    max-width: 100%;
    height: auto;
    width: 250px; /* 縮小サイズ */
    transform: translateX(-200px); /* ← 左に10px動かす */
  }
  
  .btn-row {
    display: flex;
    justify-content: center; /* 中央揃え */
    gap: 1rem;               /* ボタン間の余白 */
    list-style: none;
    padding: 0;
    margin: 1rem auto;
  }
  
  .buy-item {
    display: inline-block;
  }
  
  /* ボタンスタイル例 */
   .inforBtn {
    background:rgb(5, 177, 28);
    color: #fff;
    width: 350px; /* お好みの幅に統一 */
    padding: 8px 0px;
    text-align: center; 
    border-radius: 20px;
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: bold;
    display: inline-block;
    border: none;
  }
  
   .buyBtn {
    background: #78ADD7;  
    color: #fff;
    width: 350px; /* お好みの幅に統一 */
    padding: 8px 0px;
    text-align: center; 
    border-radius: 20px;
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: bold;
    display: inline-block;
    border: none;
  }

  @media screen and (max-width: 768px) {
    /* タイトルの調整 */
    #ContBox02 h2 {
      position: relative;  
      font-size: 1.4rem;
      text-align: center;
      padding: 0 10px;
      top :-10px;
    }
  
    /* テキスト段落の幅を画面に合わせる */
    #ContBox02 p {
      width: 90%;
      font-size: 16px;
      line-height: 1.7;
      margin: 0 auto;
      padding: 0 10px;
    }
  
    /* flex → 縦並び */
    .flex-box {
      flex-direction: column;
      align-items: center;
      gap: 1.5rem;
    }
  
    /* テキスト幅を100%に */
    .text {
      flex: 1 1 100%;
      width: 90%;
      padding: 0 10px;
      text-align: left;
    }
  
    /* 画像表示調整 */
    .imgring {
      position: relative;         /* 画像を制御可能にする */
      text-align: center;         /* 中央揃え */
      margin-top: -65px;     
    }
  
    .imgring img {
      width: 60%;
      max-width: 250px;
      transform: none; /* モバイルでは移動をリセット */
    }
  
    /* ボタン縦並び */
    .btn-row {
      flex-direction: column;
      align-items: center;
      gap: 1rem;
    }
  
    .buy-item {
      width: 100%;
      text-align: center;
    }
  
    .inforBtn,
    .buyBtn {
      width: 80%;
      font-size: 1rem;
      font-size: 0.7rem;
    }
  }
   #ContBox03 .bgWrap {
    background: #eaf6fd;
  }
   #ContBox03 figure {
    width: 708px;
  }
   #ContBox04 .bgWrap {
    background: #f6f9e4;
  }
   #ContBox04 figure {
    width: 622px;
  }
   #ContBox05 {
    margin-bottom: 50px;
  }
   #ContBox05 h2 {
    margin-bottom: 10px;
  }
   #ContBox05 ul li {
    display: block;
    margin: 35px auto 0; 
    margin-top: 35px;
    padding-top: 23px;
    padding-bottom: 23px;
    width: 80%;
    min-height: 170px;
    background-color: #e3eff6;
  }
   #ContBox05 ul li figure {
    float: left;
    padding-left: 30px;
  }
   #ContBox05 ul li dl {
    padding-left: 160px;
  }
   #ContBox05 ul li dl dt {
    margin-bottom: 5px; 
    font-size: 18px;
    font-weight: bold;
  }
   #ContBox05 ul li dl dd {
    letter-spacing: .01em; 
    font-size: 16px;
  }
   #ContBox06 {
    position: relative;
    padding-bottom: 70px; 
    background-color: #009d85;
  }
   #ContBox06 .contactBtn {
    position: absolute;
    top: -22px;
    right: calc(50% - 420px);
  }
   #ContBox06 .contactBtn a {
    display: block;
    margin: 0 auto;
    border-radius: 25px; 
    width: 150px;
    height: 44px;
    background-color: #ea5405;
    line-height: 44px;
    text-align: center;
    text-decoration: none;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
  }
   #ContBox06 .innerBasic {
    color: #fff;
  }
   #ContBox06 .innerBasic h2 {
    margin-top: 50px; 
    padding-top: 40px;
  }
   #ContBox06 .innerBasic dl {
    display: table; 
    border-bottom: 1px solid #fff;
    width: 342px;
    height: 60px;
    letter-spacing: .01em;
    font-size: 12px;
  }
   #ContBox06 .innerBasic dl dt {
    display: table-cell;
    width: 80px; 
    vertical-align: middle;
  }
   #ContBox06 .innerBasic dl dd {
    display: table-cell;
    vertical-align: middle;
  }
   #ContBox06 .innerBasic .leftBox {
    float: left;
  }
   #ContBox06 .innerBasic .rightBox {
    float: left;
    margin-left: 76px;
  }
   #ContBox06 .innerBasic .rightBox dl dt {
    width: 80px;
  }
  /*
  Nak
  -------------------------------------*/
  #PageProducts-nak.pageIndex{
    overflow-x: hidden;
  }
  #PageProducts-nak.pageIndex  figure {
    margin: 0 auto;
    text-align: center;
  }
  #PageProducts-nak.pageIndex  figure img {
    max-width: 100%;
    height: auto;
  }
  #PageProducts-nak.pageIndex  #Container {
    margin-top: 100px;
  }
  #PageProducts-nak.pageIndex #Main #ContBox01 {
    position:relative;
 
    margin-top: -100px;
    padding: 30px 0 40px; 
    background: rgba(114, 160, 197, 0.15);
  }
  #PageProducts-nak.pageIndex #Main #ContBox01 .h2 {
    line-height: 2;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    margin-top: 0;
    
  }
  #PageProducts-nak.pageIndex #Main #ContBox01 p {
    margin: 0 auto; 
    width: 700px;
    line-height: 31px;
    font-size: 17px;
  }
  #PageProducts-nak.pageIndex #Main #ContBox01 .bg-full {
    width: 100%;
    max-height: 400px;
    position: relative;
    top: -100px;
    background-color: #75ACD9;
    z-index: 4;
    overflow: hidden; /* ★ はみ出しカット */
    display: flex;
    justify-content: flex-end; /* 画像を右側へ */
    align-items: center;
    border-bottom-left-radius: 50% 100%;
 
  }
  
  #PageProducts-nak.pageIndex #Main #ContBox01 .pro-Nak {
    position: relative;
    display: block;
    margin: 0 auto;
    top: 60px;
  
    width: 500px;  
    max-width: 100%;
    height: auto;
    z-index: 5;  



  }



  #PageProducts-nak.pageIndex #Main #ContBox01 .flex-box {
    display: flex;
  
    align-items: center;
    justify-content: space-between;
    gap: 0rem;
    max-width: 100%;         
  }
  
  #PageProducts-nak.pageIndex #Main #ContBox01 .text {
    flex: 1 1 50%;
    font-size: 1rem;
    line-height: 1.6;
    margin: 0;
    transform: translateX(-40px);

  }
  #PageProducts-nak.pageIndex #Main #ContBox01 .headertext {
    flex: 1 1 50%;

    margin-bottom: 10px;

    color: rgba(0, 0, 0, 1);         /* 青系（お好みで変更OK） */
    font-size: 32px ;    /* 大きめ */
    font-weight: bold ; 
    margin: 15px 15px 15px 0 ; 

  }
  
  #PageProducts-nak.pageIndex #Main #ContBox01 .text2 {
    flex: 1 1 50%;
    font-size: 1rem;
    line-height: 1.6;
    margin-top: 10px;

    transform: translateX(-40px);

  }

  #PageProducts-nak.pageIndex #Main #ContBox01 .headertext2 {
    flex: 1 1 50%;

    margin-top: 10px;
    bottom: 100px;

    color: rgba(0, 0, 0, 1);   
    transform: translateY(150px);     /* 青系 （お好みで変更OK） */
    font-size: 32px ;    /* 大きめ */
    font-weight: bold ; 
    margin: 15px 15px 15px 0 ; 

  }
  
  #PageProducts-nak.pageIndex #Main #ContBox01 .img {
    flex: 1 1 50%;
    min-width: 250px;
    text-align: left;
    transform: translateY(30px); 
  }
  #PageProducts-nak.pageIndex #Main #ContBox01 .Nak {
    position: relative;
    display: block;
    margin: 0 auto;
    top: 0px;
    width: 100%;         /* 親要素の幅にフィット */
    max-height: 250px;  
    text-align: left;
    z-index: 5;
   
    transform: translateX(-230px); 
  }

  /* 縦横比を維持 
  #PageProducts-nak.pageIndex #Main #ContBox01 .circle1 {
    position: relative;
    display: block;
    margin: 0 auto;
    top: 0;
    
    height: 700px;
    width: auto;
    z-index: 5;
    text-align: center;
    transform: translateX(0);
  }*/
   /* 縦横比を維持 */
   #PageProducts-nak.pageIndex #Main #ContBox01 .circle {
    display: block;
    margin: 0 auto;

    width: 100%;         /* 親要素の幅にフィット */
    max-width: 700px;    /* 広がりすぎ防止 */
    height: auto;    
  }
  
  #PageProducts-nak.pageIndex #Main #ContBox01 .circle img {
    max-width: 100%;
    height: auto;
    display: block;
    margin: 0 auto;
  }


#PageProducts-nak.pageIndex #Main #ContBox01 .video-wrapper {
  width: 100%;
  max-width: 800px;
  margin: 30px auto;
  position: relative;
}

#PageProducts-nak.pageIndex #Main #ContBox01 .my-video {
  width: 100%;
  display: block;
}

#PageProducts-nak.pageIndex #Main #ContBox01 .credit-container {
  display: flex;
  justify-content: flex-end;
  margin-top: 4px;
}

#PageProducts-nak.pageIndex #Main #ContBox01 .voice-credit {
  font-size: 16px;
  color: #555;
  cursor: pointer;    
  text-decoration: underline; /* 下線あり */

}

#PageProducts-nak.pageIndex #Main #ContBox01 .voice-credit:hover {
    text-decoration: none; /* ホバー時に線を消す */
}
  #PageProducts-nak.pageIndex #Main #ContBox02 {
    margin-top: 0px;
    padding: 30px 0 40px; 
    background: #fff;
  }

  #PageProducts-nak.pageIndex #Main #ContBox02 p {
    margin: 0 auto; 
    width: 700px;
    line-height: 31px;
    font-size: 17px;
  }


  #PageProducts-nak.pageIndex #Main #ContBox02 .textnak0201 {
    flex: 1 1 55%;
    font-size: 1rem;
    line-height: 1.6;
    margin-bottom: 50px;
    padding: 0; 
    
  }
  #PageProducts-nak.pageIndex #Main #ContBox02 .textnak0202_blue {
    color: #78ADD7;         /* 青系（お好みで変更OK） */
    font-size: 32px !important;    /* 大きめ */
    font-weight: bold !important; 
    margin: 15px 15px 15px 0;  }
  
    #PageProducts-nak.pageIndex #Main #ContBox02 .imgnak0201 {
    flex: 1 1 40%;
    min-width: 300px;
    text-align: left;
    transform: translateY(-10px); /* ← 左に10px動かす */
  }
  
  #PageProducts-nak.pageIndex #Main #ContBox02 .imgnak0201 img {
    max-width: 100%;
    height: auto;
    width: 300px; /* 縮小サイズ */
    transform: translateX(-120px); 
  
   
  }
 
  
 
  #PageProducts-nak.pageIndex #Main #ContBox03 {
    margin-top: 0px;
    margin-bottom: 0px;
    min-height: 700px;
    padding: 30px 0 40px; 
    background: rgba(114, 160, 197, 0.15);
  }
  #PageProducts-nak.pageIndex #Main #ContBox03 h2 {
 
    position: relative;
    transform: translateY(-10px); 
    margin-top: 5px;
    margin-bottom: 10px;
      

} 
  
  #PageProducts-nak.pageIndex #Main #ContBox03 p {
    margin: 0 auto; 
    width: 700px;
    line-height: 31px;
    font-size: 17px;
  }
  #PageProducts-nak.pageIndex #Main #ContBox03 .text-box {
    border: 2px solid #fff;     /* 白い枠線 */
    padding: 20px;              /* 内側の余白 */
    background-color: #f9f9f9;  /* 薄いグレー背景（お好みで） */
    border-radius: 8px;         /* 角を丸く（好みで） */
    box-shadow: 0 2px 6px rgba(0, 0, 0, 0.1); /* ほんのり影をつけると立体感 */
    max-width: 700px;
    margin: 0 auto; 
    margin-bottom: 100px;
  }

  #PageProducts-nak.pageIndex #Main #ContBox03 .text-container {
    position: relative;
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
    padding: 50px 20px;
    background: #f9f9f9;
    border-radius: 8px;
    min-height:350px;
    box-sizing: border-box;
    margin-bottom: 80px;
  }

  #PageProducts-nak.pageIndex #Main #ContBox03 .text-container2 {
    position: relative;
    text-align: center;
    max-width: 800px;
    margin: 0 auto;
    padding: 50px 20px;
    background: #f9f9f9;
    border-radius: 8px;
    min-height:350px;
    box-sizing: border-box;
    margin-bottom: 80px;
  }
  
  #PageProducts-nak.pageIndex #Main #ContBox03 .quoted-text {
    position: relative;
    display: inline-block;
    font-size: 1.3rem;
    font-weight: bold;
    z-index: 1;
  }
  
  /* 左上の “ */
  #PageProducts-nak.pageIndex #Main #ContBox03 .quoted-text::before {
    content: "“";
    position: absolute;
    top: -30px;
    left: -30px;
    font-size: 60px;
    color: #78ADD7;    /* 青色 */
    z-index: 1;
  }
  
  /* 右下の ” */
  #PageProducts-nak.pageIndex #Main #ContBox03 .quoted-text::after {
    content: "”";
    position: absolute;
    bottom: -30px;
    right: -20px;
    font-size: 60px;
    color: #78ADD7;
    z-index: 1;
  }
 
  #PageProducts-nak.pageIndex #Main #ContBox03 .bottom-right-text {
    position: absolute;
    bottom: -20px;
    right: 30px;
    display: flex;
    align-items: center; /* テキストと画像を縦中央揃え */
    gap: 16px;
    font-size: 0.95rem;
    font-weight: bold;
    text-align: right;
    line-height: 1.4;
  }
  
  #PageProducts-nak.pageIndex #Main #ContBox03 .signature-image {

    height: auto;
    position: relative; 
    width: 100px;
    height: auto;
    transform: translate(-10px, -40px);
   
  }
  
  #PageProducts-nak.pageIndex #Main #ContBox03 .text-block {
    max-width: 700px; /* 任意。横幅を制限したいとき */
    

    
  }
  
   


  #PageProducts-nak.pageIndex #Main #ContBox04 {
    margin-top: 0px;
    padding: 30px 0 40px; 
    background: #fff;
  }
 
  #PageProducts-nak.pageIndex #Main #ContBox04 h2 {
    position: relative;
    bottom: 0px; /* 下からの距離 */
    left: 0%;
    transform: translateY(0px);
    margin-top: 0px;

    
  }

   #PageProducts-nak.pageIndex #Main #ContBox04 h4 {
    position: relative;
    bottom: 0px; /* 下からの距離 */
    left: 0%;
    transform: translateX(0px);
    display: flex;
    font-size: 30px;
    line-height: 2;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
 
  
    justify-content: center;
    margin-top: 100px;
    margin-bottom: 25px;

    
  }

  #PageProducts-nak.pageIndex #Main #ContBox04 p {
    margin: 0 auto; 
    justify-content: center; 
    width: 700px;
    line-height: 31px;
    font-size: 17px;
    text-align: center;
    
  }
  #PageProducts-nak.pageIndex #Main #ContBox04 p {
    
    margin-top:10px;
    
  }
#PageProducts-nak.pageIndex #Main #ContBox04 p.note {
  text-align: center;       /* テキストを中央揃えに */
  line-height: 1.7;         /* 適切な行の高さ */
  font-size: 12px;
  margin-top: 30px;         /* 先ほどの余白指定も念のため追加 */
}

 #PageProducts-nak.pageIndex #Main #ContBox04 .store-badges {
  text-align: center;  /* 横並び用：リンクをインライン要素扱いにする */

 

  margin-top: -30px;             /* 画像の間隔 */
  margin-bottom:50px;
}
#PageProducts-nak.pageIndex #Main #ContBox04 .store-badges a {

  line-height: 0;
  font-size: 0;
  margin: 0 10px;
  padding: 0;
  vertical-align: top;
}

#PageProducts-nak.pageIndex #Main #ContBox04 .store-badges img {
  height: 44px;             /* 必要に応じてサイズ調整 */
  width: auto;


}
#PageProducts-nak.pageIndex #Main #ContBox04 .apple,
.google{
  height: 44px;             /* 必要に応じてサイズ調整 */
  width: auto;
 
}
  #PageProducts-nak.pageIndex #Main #ContBox04 .text {
    display: block;
    justify-content: center; 
    font-size: 1rem;
    line-height: 1.6;
    margin: 0;
    padding: 0;
    
  }

  
  #PageProducts-nak.pageIndex #Main #ContBox04 .btn-form {
    display: flex;
    justify-content: center; /* 中央寄せ */
    list-style: none;
    padding: 0;
    margin: 1rem 0 0;
   
  }
  
  #PageProducts-nak.pageIndex #Main #ContBox04 .buy-form {
    display: inline-block;
  }

    
  /* ボタンスタイル例 */
  #PageProducts-nak.pageIndex #Main #ContBox04 .formBtn {
    background:#78ADD7;
    color: #fff;
    width: 350px; /* お好みの幅に統一 */
    padding: 8px 0px;
    text-align: center;  
    border-radius: 20px;
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: bold;
    display: inline-block;
    border: none;
    margin-top: 10px;
    margin-bottom:10px;
  }
  #PageProducts-nak.pageIndex #Main #ContBox04 h3 {
    position: relative;
    bottom: 0px; /* 下からの距離 */
    left: 0%;
    transform: translateX(0px);
    display: flex;
    font-size: 30px;
    line-height: 2;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
 
  
    justify-content: center;
    margin-top: 25px;
    margin-bottom: 25px;
    
  }
  #PageProducts-nak.pageIndex #Main #ContBox04 .two-column-text {
    display: flex;
    gap: 20px;
    justify-content: center;
    max-width: 1000px;
    margin: 40px auto;
    
    text-align: center; /* 中身も中央揃えしたい場合 */
  }
 
  #PageProducts-nak.pageIndex #Main #ContBox04 .left-text
   { 
    flex: 1 1 50%; /* カラムの幅 */
    font-size: 1rem;
    line-height: 1.8;
    color: #78ADD7;
    text-align: left; 
    font-weight: bold;
    transform: translateX(150px);
  }
  #PageProducts-nak.pageIndex #Main #ContBox04 .right-text {
    flex: 1 1 50%; /* カラムの幅 */
    font-size: 1rem;
    line-height: 1.8;
    color: #333;
    text-align: left; 
    font-weight: bold;
  }
  #PageProducts-nak.pageIndex #Main #ContBox04 .black-link {
    display: block;            /* ブロック要素で幅を確保 */
              /* カラムいっぱいをクリック可能に */
    font-size: 1rem;
    line-height: 1.8;
    color: #333;
    text-align: left;          /* テキストを左揃え */
    font-weight: bold;
 
    cursor: pointer;      
    transform: translateX(0px);     /* ポインターを指マークに */
  }

   /* ボタンスタイル例 */
   #PageProducts-nak.pageIndex #Main #ContBox04 .inforBtn {
    background:rgb(5, 177, 28);
    color: #fff;
    width: 350px; /* お好みの幅に統一 */
    padding: 8px 0px;
    border-radius: 20px;
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: bold;
    display: inline-block;
    border: none;
    text-align: center;
  }
  
  
  #PageProducts-nak.pageIndex #Main #ContBox04 .buyBtn {
    background: #78ADD7;
    color: #fff;
    width: 350px; /* お好みの幅に統一 */
    padding: 8px 0px;
    border-radius: 20px;
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: bold;
    display: inline-block;
    border: none;
    text-align: center;
  }

  @media screen and (max-width: 768px) {

    .sp-indent {
      color: transparent;
  
    }
    #PageProducts-nak.pageIndex #Main #ContBox01 .flex-box,
    #PageProducts-nak.pageIndex #Main #ContBox04 .two-column-text {
      flex-direction: column;
      gap: 1rem;
      align-items: center;
    }
     

  

  
    #PageProducts-nak.pageIndex #Main #ContBox01 .text,
    #PageProducts-nak.pageIndex #Main #ContBox01 .headertext,
    #PageProducts-nak.pageIndex #Main #ContBox01 .headertext2,
    #PageProducts-nak.pageIndex #Main #ContBox01 .text2,
    #PageProducts-nak.pageIndex #Main #ContBox04 .left-text,
    #PageProducts-nak.pageIndex #Main #ContBox04 .right-text {
      transform: none;
      text-align: center;
      padding: 0 1rem;
    }
    #PageProducts-nak.pageIndex #Main #ContBox01 .text{
      text-align: left;

    }
    #PageProducts-nak.pageIndex #Main #ContBox01 .bg-full {
      width: 100%;
      max-height: 400px;
      position: relative;
      top: 0px;
      background-color: #75ACD9;
      z-index: 4;
      overflow: hidden; /* ★ はみ出しカット overflow: hidden;*/
      display: flex;
      justify-content: flex-end; /* 画像を右側へ */
      align-items: center;
      border-bottom-left-radius: 50% 100%;
   
    }
    #PageProducts-nak.pageIndex #Main #ContBox01 .pro-Nak {
      position: relative;
      display: block;
      margin: 0 auto;
      top: 0px;
    
      width: 200px;  
      max-width: 100%;
      height: auto;
      z-index: 5;  
    }
    #PageProducts-nak.pageIndex #Main #ContBox01 .headertext {
      left:0px;
      color: rgba(0, 0, 0, 1);         /* 青系（お好みで変更OK） */
      font-size: 16px ;    /* 大きめ */
      font-weight: bold ; 
      transform: translateX(-300px);  /* ← これが横にはみ出る元凶かも */
  
  
    }
    #PageProducts-nak.pageIndex #Main #ContBox01 .headertext2 {
    
      transform: translateY(0px);  
      color: rgba(0, 0, 0, 1);   
   
      font-size: 16px ;    /* 大きめ */
      font-weight: bold ; 
    }
    #PageProducts-nak.pageIndex #Main #ContBox01 .my-video {
          width: 80%;
      max-width: 800px;
  display: block;
  margin: 30px auto;
  
}
    
    #PageProducts-nak.pageIndex #Main #ContBox02 h2 {
 
      position: relative;
      margin-bottom: 50px; 
        
  
  } 
    #PageProducts-nak.pageIndex #Main #ContBox02 .textnak0201 {
      flex: 1 1 55%;
      font-size: 1rem;
      line-height: 1.6;
      margin-bottom: 50px;
      padding: 0; 
      
    }
    #PageProducts-nak.pageIndex #Main #ContBox02 .textnak0202_blue {
      font-size: 22px;
      display: block;
      text-align: center;
      margin: 20px auto 20px auto;
      line-height: 1.6;
    }
    #PageProducts-nak.pageIndex #Main #ContBox01 .Nak{
      transform: translate(0px, 0px);
      display: block;
      max-width: 90%;
      margin: 0 auto;
      margin-bottom: 50px;
    }
      /* 縦横比を維持 */
   #PageProducts-nak.pageIndex #Main #ContBox01 .circle {
    display: block;
    margin: 0 auto;

    width: 300px;         /* 親要素の幅にフィット */
     /* 広がりすぎ防止 */
    height: auto;    
    transform: translate(0px, -10px);
  }
      
  #PageProducts-nak.pageIndex #Main #ContBox01 .credit-container {
    justify-content: flex-end;
    padding-right: 35px;  /* 少し内側へ */
    margin-top: -20px;    /* ← ここで上に引き上げる */
  }

  #PageProducts-nak.pageIndex #Main #ContBox01 .voice-credit {
    font-size: 11px;
  }


    #PageProducts-nak.pageIndex #Main #ContBox02 .imgnak0201 img {
      transform: translate(0px, -45px);
      display: block;
      max-width: 90%;
      margin: 0 auto;
    }
    #PageProducts-nak.pageIndex #Main #ContBox03 h2 {
 
      position: relative;
      transform: translateY(-50px); 
        
  
  } 
    #PageProducts-nak.pageIndex #Main #ContBox03 .text-container {
      position: relative;
      text-align: center;
      max-width: 280px;
      margin: 0 auto;
      padding: 50px 20px;
      background: #f9f9f9;
      border-radius: 8px;
      min-height: 600px;
      box-sizing: border-box;
      margin-bottom: 80px;
      font-size: 16px;
    } 
    #PageProducts-nak.pageIndex #Main #ContBox03 .text-container2 {
      position: relative;
      text-align: center;
      max-width: 280px;
      margin: 0 auto;
      padding: 50px 20px;
      background: #f9f9f9;
      border-radius: 8px;
      min-height: 500px;
      box-sizing: border-box;
      margin-bottom: 80px;
      font-size: 16px;
    } 
      /* 右下の ” */
      #PageProducts-nak.pageIndex #Main #ContBox03 .quoted-text{
  
        font-size: 16px;
      
      }

      #PageProducts-nak.pageIndex #Main #ContBox03 .bottom-right-text {
        position: absolute;
        bottom: 5px;
        right: 10px;
        display: flex;
        align-items: center; /* テキストと画像を縦中央揃え */
        gap: 20px;
        font-size: 10px;
        font-weight: bold;
        text-align: right;
        line-height: 1.4;
      }
       
    #PageProducts-nak.pageIndex #Main #ContBox03 .signature-image {
       position: relative; 
     width: 80px;
     height: auto;
     transform: translate(-10px, -20px);
    
    }
      #PageProducts-nak.pageIndex #Main #ContBox03 .text-block {
        max-width: 700px; /* 任意。横幅を制限したいとき */
      }
      
  #PageProducts-nak.pageIndex #Main #ContBox03 .quoted-text::after {
    content: "”";
    position: absolute;
    bottom: -50px;
    right: -30px;
    font-size: 60px;
    color: #78ADD7;
    z-index: 1;
  }
  #PageProducts-nak.pageIndex #Main #ContBox04 .btn-form {
    display: flex;
    justify-content: center; /* 中央寄せ */
    list-style: none;
    padding: 0;
    margin: 1rem 0 0;
  }
  
  #PageProducts-nak.pageIndex #Main #ContBox04 .buy-form {
    margin: 0;
  }
  
  #PageProducts-nak.pageIndex #Main #ContBox04 .formBtn {
    background: #78ADD7;
    color: #fff;
    padding: 8px 16px;  /* 左右に十分な余白 */
    text-align: center;
    border-radius: 20px;
    text-decoration: none;
    font-size: 0.9rem;
    font-weight: bold;
    display: inline-block; /* 中央揃えしやすい */
    border: none;
    min-width: 270px;  /* お好みで幅を設定 */
  }
  #PageProducts-nak.pageIndex #Main #ContBox04 .text {
  text-align: left;
  }
  #PageProducts-nak.pageIndex #Main #ContBox04 p
{
  text-align: left;}
 
    #PageProducts-nak.pageIndex #Main #ContBox04 h2 {
      position: relative;
      bottom: 0px; /* 下からの距離 */
      left: 0%;
      transform: translateY(-30px);
      margin-top: 0;
      margin-bottom:10px;
      
    }

    #PageProducts-nak.pageIndex #Main #ContBox04 h4 {
      position: relative;
      bottom: 0px; /* 下からの距離 */
      left: 0%;
      transform: translateY(-30px);
      margin-top: 30;
      margin-bottom:-10px;
      
    }
 
    #PageProducts-nak.pageIndex #Main #ContBox04 h3 {
    
      position: relative;
      bottom: 0px; /* 下からの距離 */
      left: 0%;
      transform: translateY(20px);
      margin-top: 20px;
     
      
    } 
#PageProducts-nak.pageIndex #Main #ContBox04 .store-badges {
  text-align: center;
  position: relative;
  left: 0px;  /* ← 負の値で中央から少し左に寄せる */
  font-size: 0; /* 改行スペースを消す！重要 */
  margin-top: -30px;
  margin-bottom: 50px;
  white-space: nowrap;  /* ← 横並びを崩さずに強制 */

}

#PageProducts-nak.pageIndex #Main #ContBox04 .store-badges a {

  line-height: 0;
  font-size: 0;
  margin: 0 4px;
  padding: 0;

}

#PageProducts-nak.pageIndex #Main #ContBox04 .store-badges img {
  height: 44px;
  width: auto;

}

#PageProducts-nak.pageIndex #Main #ContBox04 .apple,
#PageProducts-nak.pageIndex #Main #ContBox04 .google {
  height: 44px;
  width: auto;
}
 
    #PageProducts-nak.pageIndex #Main #ContBox04 .inforBtn,
    #PageProducts-nak.pageIndex #Main #ContBox04 .buyBtn {
      width: 90%;
    }
    #PageProducts-nak.pageIndex #Main #ContBox04 .formBtn
    {width: 50%;
    }
    #PageProducts-nak.pageIndex #Main #ContBox03 p,
    #PageProducts-nak.pageIndex #Main #ContBox02 p,
    #PageProducts-nak.pageIndex #Main #ContBox04 p {
      width: 90%;
    }
  }
  /*
  公開準備中
  -------------------------------------*/
  #PagePreparation.pageIndex #ContBox01 {
    padding-top: 300px;
    background: url(../img/preparation01.png) top 200px center no-repeat;
    background-size: 75px auto;
  }
  #PagePreparation.pageIndex #ContBox01 h2 {
    margin-top: 50px;
    font-size: 30px;
  }
  #PagePreparation.pageIndex #ContBox01 p {
    margin-top: 30px;
    padding-bottom: 150px; 
    line-height: 2;
    text-align: center;
    font-size: 20px;
  }
  /*
  お問合せ
  -------------------------------------*/
  #PageContact.pageIndex .wpcf7-form {
    margin: 0 auto; 
    width: 457px;
  }
  #PageContact.pageIndex .wpcf7-form dl {
    margin-bottom: 35px;
  }
  #PageContact.pageIndex .wpcf7-form dl dt {
    margin-bottom: 15px;
    line-height: 20px;
    font-size: 16px;
    font-weight: bold;
  }
  #PageContact.pageIndex .wpcf7-form dl dt span.hissu {
    display: inline-block;
    margin-right: 12px;
    width: 42px;
    background: #c30f23;
    line-height: 2;
    text-align: center;
    letter-spacing: 1.6px;
    font-size: .75em;
    color: #fff;
  }
  #PageContact.pageIndex .wpcf7-form dl dd input,
  #PageContact.pageIndex .wpcf7-form dl dd textarea {
    border: 1px solid #b5b5b5;
    padding: .1em .5em; 
    width: 100%;
    background-color: #f4f4f5;
  }
  #PageContact.pageIndex .wpcf7-form dl dd textarea {
    height: 100px;
  }
  #PageContact.pageIndex .wpcf7-form .submitBtnArea {
    display: block;
    margin: 40px auto 10px;
    border-radius: 5px;
    width: 150px;
    height: 40px; 
    background-color: #95c9cc;
  }
  #PageContact.pageIndex .wpcf7-form .submitBtnArea .submitBtn {
    width: 100%;
    line-height: 2.5;
    text-align: center;
    letter-spacing: .3em;
    font-size: 16px;
    font-weight: bold;
  }
  /*
  お問合せ（完了）
  -------------------------------------*/
  #PageContact.pageThanks h3 {
    margin-top: 50px;
    margin-bottom: 30px; 
    line-height: 30px;
    font-size: 16px;
    font-weight: bold;
  }
  

@media print, screen and (max-width: 767px) {
  /*
  ホーム
  -------------------------------------*/
  Img {
    margin-top: 50px;
  }
  Img .slick-box li a img {
    width: 100%;
  }
  #Page.pageIndex #Container {
    margin-top: 0;
  }
   .contBox h2 {
    top: 30px;
    margin-top: 0px;
  }
   .contBox .contSubBox h3 {
    margin: 10px 20px; 
    text-align: center;
    font-size: 22px;
    font-weight: bold;
  }
   .contBox figure {
    margin: 0 auto;
    text-align: center;
  }
   .contBox figure img {
    max-width: 100%;
    height: auto;
  }
   .contBox .bgWrap {
    padding: 30px 0;
  }
   .contBox .moreBtn {
    margin-top: 30px;
  }
   .contBox .moreBtn a {
    display: block;
    margin: 0 auto;
    border-radius: 5px; 
    width: 260px;
    height: 50px;
    background-color: #00afdd;
    line-height: 50px;
    text-align: center;
    text-decoration: none;
    font-size: 18px;
    font-weight: bold;
    color: #fff;
  }
   .contBox .moreBtn a:hover {
    opacity: .7;
  }
   #ContBox01 .news {
    margin-top: 50px;
  }
   #ContBox01 dl {
    display: table;
    margin: 10px 15px 20px;
    border-bottom: 1px solid #595757;
    width: calc(100% - 30px);
  }
   #ContBox01 dl dt {
    display: table-cell; 
    width: 90px;
  }
   #ContBox01 dl dd {
    display: table-cell;
    padding-left: 10px;
    line-height: 1.5;
  }
   #ContBox02 {
    margin-top: 80px;
    padding: 30px 0 40px; 
    background: #efefef;
  }
   #ContBox02 h2 {
    margin-top: 0;
  }
   #ContBox02 p {
    line-height: 31px; 
    font-size: 17px;
  }
   #ContBox03 .bgWrap {
    background: #eaf6fd;
  }
   #ContBox04 .bgWrap {
    background: #f6f9e4;
  }
   #ContBox05 {
    margin-bottom: 50px;
  }
   #ContBox05 h2 {
    margin-bottom: 10px;
  }
   #ContBox05 ul li {
    margin: 35px auto 0; 
    padding-top: 23px;
    padding-bottom: 23px;
    width: 100%;
    min-height: 170px;
    background-color: #e3eff6;
  }
   #ContBox05 ul li figure {
    float: left;
    padding-left: 10px;
  }
   #ContBox05 ul li dl {
    padding-left: 120px;
  }
   #ContBox05 ul li dl dt {
    margin-bottom: 5px; 
    font-size: 18px;
    font-weight: bold;
  }
   #ContBox05 ul li dl dd {
    padding-right: 2px; 
    letter-spacing: .01em;
    font-size: 13px;
  }
   #ContBox06 {
    position: relative;
    padding-bottom: 70px; 
    background-color: #009d85;
  }
   #ContBox06 .contactBtn {
    position: absolute;
    top: -22px;
    right: 20px;
  }
   #ContBox06 .contactBtn a {
    display: block;
    margin: 0 auto;
    border-radius: 25px; 
    width: 150px;
    height: 44px;
    background-color: #ea5405;
    line-height: 44px;
    text-align: center;
    text-decoration: none;
    font-size: 20px;
    font-weight: bold;
    color: #fff;
  }
   #ContBox06 .innerBasic {
    color: #fff;
  }
   #ContBox06 .innerBasic h2 {
    margin-top: 50px; 
    padding-top: 40px;
  }
   #ContBox06 .innerBasic dl {
    display: table; 
    border-bottom: 1px solid #fff;
    width: 100%;
    height: 60px;
    letter-spacing: .01em;
    font-size: 12px;
  }
   #ContBox06 .innerBasic dl dt {
    display: table-cell;
    width: 80px; 
    vertical-align: middle;
  }
   #ContBox06 .innerBasic dl dd {
    display: table-cell;
    vertical-align: middle;
  }
   #ContBox06 .innerBasic .rightBox dl dt {
    width: 80px;
  }
  /*
  サービス
  -------------------------------------*/
  #PageService.pageIndex figure {
    margin: 0 auto;
    text-align: center;
  }
  #PageService.pageIndex figure img {
    max-width: 100%;
    height: auto;
  }
  #PageService.pageIndex #ContBox01 {
    margin-bottom: 45px;
  }
  #PageService.pageIndex #ContBox01 .servicebox {
    padding: 30px 20px; 
    width: 100%;
    min-height: 250px;
    background-color: #0054a7;
  }
  #PageService.pageIndex #ContBox01 .servicebox h3 {
    line-height: 35px;
    font-size: 23px;
    font-weight: bold; 
    color: #fff;
  }
  #PageService.pageIndex #ContBox01 .servicebox h3 span {
    display: block;
    margin-bottom: 10px; 
    line-height: 21px;
    font-size: 16px;
    font-weight: 500;
  }
  #PageService.pageIndex #ContBox01 .servicebox p {
    margin-bottom: 0; 
    padding-top: 20px;
    line-height: 25px;
    font-size: 16px;
    font-weight: bold;
    color: #fff;
  }
  #PageService.pageIndex #ContBox02 {
    padding-top: 30px; 
    padding-bottom: 30px;
    background-color: #eaf6fd;
  }
  #PageService.pageIndex #ContBox02 ul {
    margin: 0 auto; 
    padding-bottom: 15px;
    width: 100%;
    max-width: 380px;
    text-align: center;
  }
  #PageService.pageIndex #ContBox02 ul li {
    display: inline-block;
    margin-bottom: 15px;
  }
  #PageService.pageIndex #ContBox02 ul li:first-child {
    display: block;
  }
  #PageService.pageIndex #ContBox02 ul li img {
    width: auto;
    height: 30px;
  }
  #PageService.pageIndex #ContBox02 p {
    line-height: 22px; 
    text-align: center;
    font-size: 15px;
  }
  #PageService.pageIndex #ContBox03 {
    margin-top: 50px;
  }
  #PageService.pageIndex #ContBox03 h3 {
    margin-bottom: 10px; 
    text-align: center;
    font-size: 24px;
    font-weight: bold;
  }
  #PageService.pageIndex #ContBox03 p {
    line-height: 22px; 
    text-align: center;
    font-size: 15px;
  }
  #PageService.pageIndex #ContBox04 .contactBtn {
    margin: 30px 0 40px auto;
    border-radius: 20px;
    width: 150px;
    height: 44px;
    background-color: #ea5405;
  }
  #PageService.pageIndex #ContBox04 .contactBtn:hover {
    opacity: .8;
  }
  #PageService.pageIndex #ContBox04 .contactBtn a {
    display: block;
    line-height: 42px;
    text-align: center;
    text-decoration: none;
    font-size: 19px;
    font-weight: bold; 
    color: #fff;
  }
  #PageService.pageIndex #ContBox04 h3 {
    margin-bottom: 10px; 
    text-align: center;
    font-size: 24px;
    font-weight: bold;
  }
  #PageService.pageIndex #ContBox04 p {
    line-height: 22px; 
    text-align: center;
    font-size: 15px;
  }
  #PageService.pageIndex #ContBox04 .sconBtn {
    margin: 30px auto 100px;
    border-radius: 8px;
    width: 260px;
    min-height: 50px;
    background-color: #009d85;
  }
  #PageService.pageIndex #ContBox04 .sconBtn:hover {
    opacity: .8;
  }
  #PageService.pageIndex #ContBox04 .sconBtn a {
    display: block;
    padding-top: 5px;
    padding-bottom: 5px;
    line-height: 25px;
    text-align: center;
    text-decoration: none;
    font-size: 15px;
    font-weight: bold; 
    color: #fff;
  }
  /*
  公開準備中
  -------------------------------------*/
  #PagePreparation.pageIndex #ContBox01 {
    padding-top: 200px;
    background: url(../img/preparation01.png) top 100px center no-repeat;
    background-size: 75px auto;
  }
  #PagePreparation.pageIndex #ContBox01 h2 {
    margin-top: 10px;
    font-size: 30px;
  }
  #PagePreparation.pageIndex #ContBox01 p {
    margin-top: 30px;
    padding-bottom: 150px; 
    line-height: 2;
    text-align: center;
    font-size: 20px;
  }
  /*
  お問合せ
  -------------------------------------*/
  #PageContact.pageIndex .wpcf7-form {
    margin: 0 auto; 
    width: 100%;
  }
  #PageContact.pageIndex .wpcf7-form dl {
    margin-bottom: 35px;
  }
  #PageContact.pageIndex .wpcf7-form dl dt {
    margin-bottom: 15px;
    line-height: 20px;
    font-size: 16px;
    font-weight: bold;
  }
  #PageContact.pageIndex .wpcf7-form dl dt span.hissu {
    display: inline-block;
    margin-right: 12px;
    width: 42px;
    background: #c30f23;
    line-height: 2;
    text-align: center;
    letter-spacing: 1.6px;
    font-size: .75em;
    color: #fff;
  }
  #PageContact.pageIndex .wpcf7-form dl dd input,
  #PageContact.pageIndex .wpcf7-form dl dd textarea {
    border: 1px solid #b5b5b5;
    padding: .1em .5em; 
    width: 100%;
    background-color: #f4f4f5;
  }
  #PageContact.pageIndex .wpcf7-form dl dd textarea {
    height: 100px;
  }
  #PageContact.pageIndex .wpcf7-form .submitBtnArea {
    display: block;
    margin: 40px auto 10px;
    border-radius: 5px;
    width: 150px;
    height: 40px; 
    background-color: #95c9cc;
  }
  #PageContact.pageIndex .wpcf7-form .submitBtnArea .submitBtn {
    width: 100%;
    line-height: 2.5;
    text-align: center;
    letter-spacing: .3em;
    font-size: 16px;
    font-weight: bold;
  }
  /*
  お問合せ（完了）
  -------------------------------------*/
  #PageContact.pageThanks h3 {
    margin-top: 50px;
    margin-bottom: 30px; 
    line-height: 30px;
    font-size: 16px;
    font-weight: bold;
  }
  /*
  技術・製品
  -------------------------------------*/
  #PageProducts.pageIndex figure {
    margin: 0 auto;
    text-align: center;
  }
  #PageProducts.pageIndex figure img {
    max-width: 100%;
    height: auto;
  }
  #PageProducts.pageIndex #ContBox01 .columnBox> figure {
    padding: 15px;
    background: #f6f9e9;
  }
  #PageProducts.pageIndex #ContBox01 .columnBox> div {
    padding: 15px;
    background: #009d85;
    color: #fff;
  }
  #PageProducts.pageIndex #ContBox01 .columnBox> div h3 {
    font-size: 22px;
    font-weight: bold;
  }
  #PageProducts.pageIndex #ContBox01 .columnBox> div ul {
    display: table;
    width: 100%;
  }
  #PageProducts.pageIndex #ContBox01 .columnBox> div ul li {
    position: relative; 
    display: table-cell;
    width: 50%;
  }
  #PageProducts.pageIndex #ContBox01 .columnBox> div ul li dl {
    border-left: 1px solid #fff;
    padding-left: 6px;
  }
  #PageProducts.pageIndex #ContBox01 .columnBox> div ul li dl dt {
    margin-bottom: 8px; 
    line-height: 1.2;
    font-size: 18px;
    font-weight: bold;
  }
  #PageProducts.pageIndex #ContBox01 .columnBox> div ul li dl dt span {
    display: block; 
    font-size: 12px;
  }
  #PageProducts.pageIndex #ContBox01 .columnBox> div ul li dl dd {
    line-height: 16px;
    font-size: 12px;
    font-weight: bold;
  }
  #PageProducts.pageIndex #ContBox01 .contSubBox {
    margin-top: 55px;
  }
  #PageProducts.pageIndex #ContBox01 #ContSubBox01 ul li {
    width: 100%;
  }
  #PageProducts.pageIndex #ContBox01 #ContSubBox01 ul li+ li {
    position: relative; 
    margin-top: 50px;
  }
  #PageProducts.pageIndex #ContBox01 #ContSubBox01 ul li+ li:before {
    content: "";
    position: absolute;
    top: -30px;
    right: 0; 
    left: 0;
    display: block;
    margin: auto;
    border-width: 15px 11px 0 11px;
    border-style: solid;
    border-color: #009d85 transparent transparent transparent;
    width: 0;
    height: 0;
  }
  #PageProducts.pageIndex #ContBox01 #ContSubBox01 ul li figure {
    padding: 15px; 
    background: #f6f9e9;
  }
  #PageProducts.pageIndex #ContBox01 #ContSubBox01 ul li p {
    margin-top: 5px;
    font-size: 14px;
    font-weight: bold;
  }
  #PageProducts.pageIndex #ContBox01 #ContSubBox02 .columnBox02 section {
    width: 100%;
  }
  #PageProducts.pageIndex #ContBox01 #ContSubBox02 .columnBox02 section+ section {
    margin-top: 50px;
  }
  #PageProducts.pageIndex #ContBox01 #ContSubBox02 .columnBox02 section h4 {
    padding: 5px 10px; 
    background: #009d85;
    line-height: 1.4;
    font-size: 17px;
    font-weight: bold;
    color: #fff;
  }
  #PageProducts.pageIndex #ContBox01 #ContSubBox02 .columnBox02 section dl {
    display: table;
    border-bottom: 1px solid #009d85;
    padding: 15px 0 10px;
    width: 100%;
  }
  #PageProducts.pageIndex #ContBox01 #ContSubBox02 .columnBox02 section dl dt,
  #PageProducts.pageIndex #ContBox01 #ContSubBox02 .columnBox02 section dl dd {
    display: table-cell;
    vertical-align: top;
    font-size: 16px;
    font-weight: bold;
  }
  #PageProducts.pageIndex #ContBox01 #ContSubBox02 .columnBox02 section dl dd {
    width: 52%;
    color: #009d85;
  }
  #PageProducts.pageIndex #ContBox01 .contactBtn {
    margin: 50px 0 0 auto;
    border-radius: 25px;
    width: 148px;
    height: 44px;
    background-color: #ea5405;
  }
  #PageProducts.pageIndex #ContBox01 .contactBtn a {
    display: block;
    line-height: 42px;
    text-align: center;
    text-decoration: none;
    font-size: 19px;
    font-weight: bold; 
    color: #fff;
  }
}

/*News
-------------------------------------*/
#PageNews.pageEntry #news20220314 .contents01 {
  margin-bottom: 25px; 
  border: 2px solid #333;
  padding: 26px 43px 20px;
}
#PageNews.pageEntry #news20220314 .contents01 p {
  line-height: 30px;
  text-align: center; 
  font-size: 24px;
}
#PageNews.pageEntry #news20220314 .contents01 p.small {
  font-size: 17px;
}

#PageNews.pageEntry #news20220314 .shusaiWrap {
  position: relative;
  font-size: 13px;
}
#PageNews.pageEntry #news20220314 .shusaiWrap .printPdf {
  position: absolute;
  top: 2px;
  left: 0;
}
#PageNews.pageEntry #news20220314 .shusaiWrap .printPdf span {
  display: block;
  margin-top: 10px;
  width: 300px; 
  line-height: 18px;
}
#PageNews.pageEntry #news20220314 .shusaiWrap .shusai {
  margin-bottom: 25px; 
  text-align: right;
  font-size: 17px;
}

#PageNews.pageEntry #news20220314 p {
  line-height: 34px; 
  font-size: 17px;
}

#PageNews.pageEntry #news20220314 p.taCenter {
  text-align: center;
}

#PageNews.pageEntry #news20220314 .contSubBox {
  margin-top: 50px;
}
#PageNews.pageEntry #news20220314 .contSubBox .contSubBoxHeader {
  margin-top: 20px;
  margin-bottom: 20px; 
  text-align: center;
  font-size: 22px;
}
#PageNews.pageEntry #news20220314 .contSubBox .contSubBoxHeader2 {
  margin-top: 20px;
  text-align: left; 
  font-size: 20px;
}
#PageNews.pageEntry #news20220314 .contSubBox ul {
  margin-bottom: 20px; 
  margin-left: 20px;
  font-size: 17px;
}

#PageNews.pageEntry #news20220314 .tbl01 {
  font-size: 16px;
}
#PageNews.pageEntry #news20220314 .tbl01 th,
#PageNews.pageEntry #news20220314 .tbl01 td {
  padding: 0 10px 10px 0;
}

#PageNews.pageEntry #news20220314 .border {
  margin-top: 40px;
  margin-bottom: 25px;
  border: 1px solid #333;
  padding: 20px 20px;
  font-size: 20px;
  font-weight: bold;
}
#PageNews.pageEntry #news20220314 .border dl {
  margin-bottom: 30px; 
  font-size: 20px;
  font-weight: normal;
}

#PageNews.pageEntry #news20220314 p.right {
  text-align: right;
}

@media print, screen and (max-width: 767px) {
  #PageNews.pageEntry #news20220314 .shusaiWrap {
    position: static;
  }
  #PageNews.pageEntry #news20220314 .shusaiWrap .printPdf {
    position: static;
    top: 10px;
    left: 0;
    margin-bottom: 20px;
  }
}