@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@500&family=Shippori+Mincho:wght@700&display=swap");
#wrapper {
  background: url(../common-img/bg_pc.jpg) repeat center top !important;
  font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "sans-serif";
  font-weight: 500;
  color: #000; }
  #wrapper h3.common-parts-ttl, #wrapper .post-articles-header, #wrapper .parts-vod-d-title h2 {
    background: #000; }
  #wrapper hr {
    width: 100%;
    height: 1px;
    background: #000;
    border: none; }
  #wrapper .h2-ttl {
    font-size: 36px;
    font-weight: 700;
    color: #000;
    font-family: "Shippori Mincho", serif;
    margin: 0 auto 15px auto;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
    -ms-flex-pack: center;
    justify-content: center;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center; }
    #wrapper .h2-ttl span {
      font-size: 1.2rem;
      margin-left: 1rem; }
    #wrapper .h2-ttl:before {
      content: '';
      background: url(../common-img/h2-ttl_left.png) no-repeat center bottom;
      background-size: contain;
      width: 141.5px;
      height: 67px;
      display: inline-block;
      margin-right: 15px; }
    #wrapper .h2-ttl:after {
      content: '';
      background: url(../common-img/h2-ttl_right.png) no-repeat center bottom;
      background-size: contain;
      width: 140.5px;
      height: 67px;
      display: inline-block;
      margin-left: 15px; }
  #wrapper .h3-ttl-a,
  .modal-card .h3-ttl-a{
    margin-top: 45px;
    font-size: 19px;
    padding: 0 10px 15px 45px;
    margin-bottom: 25px !important;
    color: #000 !important;
    border-bottom: solid 1px #000;
    font-family: "Shippori Mincho", serif;
    font-weight: 700;
    position: relative; }
    #wrapper .h3-ttl-a:before,
    .modal-card .h3-ttl-a:before {
      content: '';
      background: url(../common-img/icon.png) no-repeat center bottom;
      background-size: contain;
      width: 30px;
      height: 26px;
      display: inline-block;
      position: absolute;
      left: 0;
      top: 4px; }
  #wrapper .h3-ttl-b,
  .modal-card .h3-ttl-b {
    color: #000 !important;
    background: #fad2e6;
    background-image: -webkit-linear-gradient(left, #fad2e6 45%, #c8cdff 90%, #aad2ff 100%) !important;
    background-image: linear-gradient(90deg, #fad2e6 45%, #c8cdff 90%, #aad2ff 100%) !important;
    font-size: 19px;
    padding: 12px 20px;
    margin-top: 30px;
    font-family: "Shippori Mincho", serif;
    font-weight: bold; }
  #wrapper .btn-box a {
    background: #000;
    background-image: -webkit-linear-gradient(300deg, #3f3f3f 0%, black 100%) !important;
    background-image: linear-gradient(150deg, #3f3f3f 0%, black 100%) !important;
    border-radius: 0px !important; }
  #wrapper .section-news .date {
    color: #9e8edd !important; }
  #wrapper .section-news .category.post {
    background: #c8cdff !important;
    color: #000 !important; }
  #wrapper .section-news .category.news {
    background: #000 !important;
    color: #c8cdff !important; }

body.top #wrapper .top-contents-box {
  padding: 40px; }
  body.top #wrapper .top-contents-box .intro-txt {
    font-family: "Shippori Mincho", serif;
    font-weight: 700;
    line-height: 1.8;
    font-size: 2.2rem; }
    body.top #wrapper .top-contents-box .intro-txt .txt-l {
      font-size: 3rem; }
    body.top #wrapper .top-contents-box .intro-txt .txt-x {
      margin: 0 10px;
      font-size: 3rem; }
    body.top #wrapper .top-contents-box .intro-txt .bg {
      display: inline-block;
      padding: 5px 10px;
      margin: 4px 0;
      line-height: 1; }
      body.top #wrapper .top-contents-box .intro-txt .bg.bg-pu {
        background: #c8cdff; }
      body.top #wrapper .top-contents-box .intro-txt .bg.bg-pi {
        background: #fad2e6; }
    body.top #wrapper .top-contents-box .intro-txt .line {
      display: inline-block;
      margin: 10px 0 15px; }
      body.top #wrapper .top-contents-box .intro-txt .line.line-pi {
        background: -webkit-linear-gradient(transparent 93%, #fad2e6 93%);
        background: linear-gradient(transparent 93%, #fad2e6 93%); }
      body.top #wrapper .top-contents-box .intro-txt .line.line-pu {
        background: -webkit-linear-gradient(transparent 93%, #c8cdff 93%);
        background: linear-gradient(transparent 93%, #c8cdff 93%); }
    body.top #wrapper .top-contents-box .intro-txt .txt-pi {
      color: #ed7da8; }
    body.top #wrapper .top-contents-box .intro-txt .block01 {
      margin-bottom: 15px !important; }
    body.top #wrapper .top-contents-box .intro-txt .block02 {
      line-height: 1.2; }

#nav-wrap .api-nav-main > div {
  background: #000 !important;
  background-image: -webkit-linear-gradient(300deg, #3f3f3f 0%, black 100%) !important;
  background-image: linear-gradient(150deg, #3f3f3f 0%, black 100%) !important; }
  #nav-wrap .api-nav-main > div a {
    color: #fff;
    font-family: "Shippori Mincho", serif;
    font-weight: 700;
    font-size: 18px; }
  #nav-wrap .api-nav-main > div a.active, #nav-wrap .api-nav-main > div a:hover {
    color: #000 !important; }
  #nav-wrap .api-nav-main > div a.active:before, #nav-wrap .api-nav-main > div a:hover:before {
    background-image: -webkit-linear-gradient(300deg, #aaa3ff 0, #aad2ff 100%) !important;
    background-image: linear-gradient(150deg, #aaa3ff 0, #aad2ff 100%) !important; }

.telasa-haisin {
  background: -webkit-linear-gradient(transparent 85%, #f3970e 85%);
  background: linear-gradient(transparent 85%, #f3970e 85%);
  color: #333333;
  font-weight: bold;
  font-size: large; }

  .modal-wrapper {
    font-size: 1.6rem;
    line-height: 3.2rem;
    position: fixed;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    z-index: 1500;
    visibility: hidden;
    text-align: center;
    width: 100%;
    height: 100%;
    }

  .modal-overlay {
    position: fixed;
    height: 100%;
    width: 100%;
    top: 0px;
    left: -100%;
    opacity: 0;
    visibility: hidden;
    background-color: rgba(0, 0, 0, 0.54);
    -webkit-tap-highlight-color: transparent;
    will-change: opacity;
    -webkit-transform: translateZ(0px);
    transform: translateZ(0px);
    z-index: 1400;
    -webkit-transition: left 0ms cubic-bezier(0.23, 1, 0.32, 1) 400ms, opacity 400ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
    transition: left 0ms cubic-bezier(0.23, 1, 0.32, 1) 400ms, opacity 400ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
    }
    
    .modal-card {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-tap-highlight-color: transparent;
    transition: -webkit-transform 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
    -webkit-transition: -webkit-transform 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
    transition: transform 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
    transition: transform 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms, -webkit-transform 450ms cubic-bezier(0.23, 1, 0.32, 1) 0ms;
    margin: 0px auto;
    z-index: 1500;
    left: -100%;
    -webkit-transform: translate(0px, -64px);
    transform: translate(0px, -64px);
    opacity: 0;
    background-color: #fff;
    -webkit-box-shadow: rgba(0, 0, 0, 0.25) 0px 14px 45px, rgba(0, 0, 0, 0.22) 0px 10px 18px;
    box-shadow: rgba(0, 0, 0, 0.25) 0px 14px 45px, rgba(0, 0, 0, 0.22) 0px 10px 18px;
    max-width: 800px;
    width: 800px;
    min-height: 298px;
    padding: 30px;
    display: inline-block;
    text-align: left;
    position: relative;
    vertical-align: top;
    }
    .modal-card:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 30px;
    height: 250px;
    /* background: #1873bb; */
    }
    .modal-card:after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 250px;
    height: 30px;
    /* background: #1873bb; */
    }
    .modal-card .h3-ttl-a {
      margin-top: 0;
    }
    .modal-card .main-title + .sub-title:before {
      position: absolute;
      content: "………";
      top: 0px;
      bottom: 0px;
      left: -76px;
  }
    .modal-card .box-wrap {
    -ms-flex-wrap: nowrap;
    -webkit-flex-wrap: nowrap;
    flex-wrap: nowrap;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    }
    
    .modal-card .box-wrap .thumb-box {
      width: 200px;
      margin-right: 20px;
    }
    .modal-card .box-wrap .thumb-box img {
    width: 100%;
    }
    
    .modal-card .box-wrap .text-box {
      -webkit-box-flex: 1;
      -webkit-flex: 1;
      -ms-flex: 1;
      flex: 1;
  }
  
  .modal-card .main-title + .sub-title {
    margin-left: 90px;
    position: relative;
  }
  
 
  .modal-card .h3-ttl-a + .read-box {
    margin-top: 15px;
    font-family: "Noto Sans JP", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "sans-serif";
  }