@charset "UTF-8";
#starrysky {
  font-size: 1.5rem;
  line-height: 1.6;
  padding: 0 0 5%;
  background: white; }
  #starrysky a {
    text-decoration: none;
    color: #333;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease; }
    #starrysky a:hover {
      color: #aaa;
      text-shadow: none;
      -webkit-transition: all 0.3s ease;
      -moz-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all  0.3s ease; }
      #starrysky a:hover img {
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all  0.3s ease;
        opacity: .7; }
  #starrysky .pc {
    display: block !important; }
  #starrysky .sp {
    display: none !important; }
  #starrysky img {
    max-width: 100%; }
  #starrysky a.nolink {
    display: none !important; }
  #starrysky nav.menu {
    padding-top: 5%;
    display: table;
    width: 90%;
    margin: auto;
    height: auto; }
    #starrysky nav.menu a {
      display: table-cell;
      text-align: center;
      width: 20%;
      color: #fff;
      background: #3b3486;
      border: 1px solid white;
      vertical-align: middle;
      padding: 2.5% 0; }
      #starrysky nav.menu a:hover {
        background: rgba(59, 52, 134, 0.6); }
  #starrysky article section {
    padding: 5% 7% 0;
    background: white;
    position: relative; }
    #starrysky article section.btns.big {
      padding: 5% 0;
      margin: auto; }
      #starrysky article section.btns.big a {
        font-size: 100%; }
  #starrysky .main_text {
    text-align: center;
    background-repeat: no-repeat;
    background-position: 50% 50%;
    background-size: contain;
    position: relative; }
    #starrysky .main_text h3 {
      padding: 3% 0;
      font-size: 4rem;
      color: #3b3486;
      letter-spacing: .5vw; }
    #starrysky .main_text .text {
      width: 58%;
      text-align: left;
      margin: auto;
      font-size: 1.5rem;
      margin-bottom: 3%;
      text-shadow: 1px 1px 1px white,-1px 1px 1px white,1px -1px 1px white,-1px -1px 1px white; }
      #starrysky .main_text .text p {
        word-break: break-all;
        overflow-wrap: break-word;
        text-align: justify;
        text-justify: inter-ideograph; }
  #starrysky .box {
    width: 100%;
    display: table; }
    #starrysky .box .image {
      width: 27%;
      display: table-cell;
      vertical-align: middle; }
    #starrysky .box .text {
      text-align: left;
      width: 60%;
      padding-left: 3%;
      vertical-align: middle;
      display: table-cell; }
      #starrysky .box .text p {
        display: block;
        padding: 2% 0; }
  #starrysky .box50 .image {
    width: 45%;
    padding: 2% 1%;
    vertical-align: middle;
    display: inline-block; }
  #starrysky .navigator {
    padding: 0 10%;
    text-align: center; }
    #starrysky .navigator h3 {
      margin: auto;
      text-align: center;
      font-size: 3rem;
      padding: 1% 0;
      position: relative;
      display: inline-block; }
      #starrysky .navigator h3 b {
        font-weight: normal;
        display: inline-block;
        background: white;
        padding: 0 5%;
        z-index: 1;
        position: relative; }
    #starrysky .navigator h4 {
      vertical-align: baseline; }
      #starrysky .navigator h4 strong {
        font-size: 150%;
        padding: 0 2% 0 6%;
        display: inline-block;
        margin: 5% auto 5%; }
    #starrysky .navigator .box {
      width: 70%;
      margin: auto; }
      #starrysky .navigator .box .image {
        width: 30%; }
      #starrysky .navigator .box .text {
        width: 40%; }
        #starrysky .navigator .box .text p {
          word-break: break-all;
          overflow-wrap: break-word;
          text-align: justify;
          text-justify: inter-ideograph; }
  #starrysky .w50 {
    display: inline-block;
    width: calc(50% - 1rem);
    vertical-align: top; }
  #starrysky .btns a {
    border: 1px solid #3b3486;
    background: #3b3486;
    background-image: url("/src/contents/starrysky/img/all/btn.png");
    background-repeat: no-repeat;
    background-position: 96% 50%;
    color: white;
    display: inline-block;
    padding: 4px 40px;
    text-decoration: none !important;
    -webkit-transition: all 0.3s ease;
    -moz-transition: all 0.3s ease;
    -o-transition: all 0.3s ease;
    transition: all  0.3s ease; }
    #starrysky .btns a:hover {
      color: #3b3486;
      background-color: rgba(59, 52, 134, 0.2); }
    #starrysky .btns a.back {
      background-image: url("/src/contents/starrysky/img/all/btn_back.png");
      background-repeat: no-repeat;
      background-position: 4% 50%; }
  #starrysky .btns.blue a {
    border: 1px solid #76c7f0;
    background-color: #76c7f0; }
    #starrysky .btns.blue a:hover {
      color: #76c7f0;
      background-color: rgba(118, 199, 240, 0.2); }
  #starrysky .btns.green a {
    border: 1px solid #9fc24d;
    background-color: #9fc24d; }
    #starrysky .btns.green a:hover {
      color: #9fc24d;
      background-color: rgba(159, 194, 77, 0.2); }
  #starrysky .btns.gray a {
    border: 1px solid #a9a9a9;
    background-color: #a9a9a9; }
    #starrysky .btns.gray a:hover {
      color: #a9a9a9;
      background-color: rgba(169, 169, 169, 0.2); }
  #starrysky .btns.big a {
    padding: 2% 5%;
    font-size: 150%;
    letter-spacing: .2vw;
    background-position: 95% 50%;
    /*
    画像ファイル格納無し（経緯不明）
    background-image: url("/src/contents/starrysky/img/all/btn_big.png");
    */
}
    #starrysky .btns.big a.back {
      background-position: 5% 50%;
      background-image: url("/src/contents/starrysky/img/all/btn_big_back.png"); }
  #starrysky .mv {
    position: relative; }
    #starrysky .mv h2, #starrysky .mv h3, #starrysky .mv h4, #starrysky .mv ul.sns {
      position: absolute;
      z-index: 9; }
    #starrysky .mv h2 {
      top: 10%;
      left: 10%;
      font-size: 7.5rem;
      line-height: 110%;
      color: white;
      letter-spacing: .2rem;
      font-weight: normal; }
    #starrysky .mv img.main_image {
      width: 100%; }
    #starrysky .mv ul.sns {
      width: 200px;
      top: 20px;
      right: 20px;
      text-align: right; }
      #starrysky .mv ul.sns li {
        width: 30px;
        margin: 1%;
        display: inline-block; }
    #starrysky .mv .mvlogo {
      width: 50%;
      height: auto;
      position: absolute;
      top: 5%;
      left: 5%; }
  #starrysky nav {
    text-align: center; }
    #starrysky nav.btns a {
      padding: 10px 0px;
      background-image: none;
      width: 20%; }
  #starrysky .point {
    width: 90%;
    margin: auto; }
    #starrysky .point .image {
      float: left;
      display: inline-block;
      width: 50%;
      padding-bottom: 1%; }
    #starrysky .point .text h3 {
      color: #3b3486;
      font-weight: 600;
      padding-bottom: 2%;
      font-size: 110%;
      word-break: break-all;
      overflow-wrap: break-word;
      text-align: justify;
      text-justify: inter-ideograph; }
    #starrysky .point .text p {
      word-break: break-all;
      overflow-wrap: break-word;
      text-align: justify;
      text-justify: inter-ideograph; }
    #starrysky .point.img_left .image {
      float: left;
      padding-right: 3%; }
    #starrysky .point.img_right .image {
      float: right;
      padding-left: 3%; }
  #starrysky .block_data {
    width: 95%;
    margin: auto; }
    #starrysky .block_data .imglogo {
      padding: 3% 0; }
    #starrysky .block_data h3 {
      font-weight: 600;
      padding-bottom: 2%;
      font-size: 140%;
      color: #3b3486;
      text-align: center; }
    #starrysky .block_data .image,
    #starrysky .block_data .text {
      display: inline-block;
      width: 100%;
      vertical-align: top; }
      #starrysky .block_data .image p,
      #starrysky .block_data .text p {
        word-break: break-all;
        overflow-wrap: break-word;
        text-align: justify;
        text-justify: inter-ideograph; }
    #starrysky .block_data .image img {
      width: 100%; }
    #starrysky .block_data .text {
      padding: 3% 0;
      font-size: 1.5rem; }
      #starrysky .block_data .text .btns {
        text-align: center;
        padding: 5% 0; }
  #starrysky.constellation .block_data h3, #starrysky.constellation .block_data .text, #starrysky.constellation .block_data .image {
    padding-top: 0;
    width: 48%;
    vertical-align: top; }
  #starrysky.constellation .block_data h3 {
    float: right;
    text-align: left; }
  #starrysky.constellation .block_data .text {
    float: right; }
    #starrysky.constellation .block_data .text .btns {
      text-align: left; }
  #starrysky.constellation .block_data .image {
    float: left; }
  #starrysky.constellation .block_data.image_right .image {
    float: right; }
  #starrysky.constellation .block_data.image_right h3, #starrysky.constellation .block_data.image_right .text {
    float: left; }
  #starrysky.constellation .block_data.image_right .text .btns {
    text-align: right; }
  #starrysky .block_etc {
    text-align: center;
    width: 100%;
    margin: auto;
    padding-bottom: 5%;
    padding: 0 7% 5%; }
    #starrysky .block_etc h3 {
      padding: 2% 0; }
      #starrysky .block_etc h3 strong {
        padding: 0 2%;
        font-size: 130%;
        font-weight: normal;
        letter-spacing: .2rem;
        display: inline-block;
        position: relative; }
        #starrysky .block_etc h3 strong:after {
          content: "";
          width: 1%;
          height: 2vw;
          position: absolute;
          top: .2vw;
          right: -1%;
          border-right: 1px solid black;
          transform: rotate(20deg); }
        #starrysky .block_etc h3 strong:before {
          content: "";
          width: 1%;
          height: 2vw;
          position: absolute;
          top: .2vws;
          left: -1%;
          border-left: 1px solid black;
          transform: rotate(-20deg); }
      #starrysky .block_etc h3.blue strong {
        color: #8BD1EE; }
        #starrysky .block_etc h3.blue strong:after, #starrysky .block_etc h3.blue strong:before {
          border-color: #8BD1EE; }
    #starrysky .block_etc .text {
      text-align: left;
      width: 100%;
      margin: auto; }
      #starrysky .block_etc .text p {
        padding: 3%;
        word-break: break-all;
        overflow-wrap: break-word;
        text-align: justify;
        text-justify: inter-ideograph; }
      #starrysky .block_etc .text.indent5 {
        padding-left: 4vw;
        text-indent: -5vw; }
    #starrysky .block_etc .btns a {
      background: #c9b9a7; }
      #starrysky .block_etc .btns a:hover {
        color: white; }
  #starrysky .starryskys {
    text-align: center; }
    #starrysky .starryskys > h3 {
      padding: 3% 0;
      font-size: 3rem;
      color: #3b3486;
      letter-spacing: .5vw; }
    #starrysky .starryskys .starrysky_data {
      display: inline-block;
      width: calc(30% - 2px);
      padding: 2%;
      vertical-align: top;
      margin-bottom: 5%; }
      #starrysky .starryskys .starrysky_data .titles {
        padding: 10% 0; }
        #starrysky .starryskys .starrysky_data .titles h4 {
          font-size: 90%; }
      #starrysky .starryskys .starrysky_data .text {
        text-align: left; }
      #starrysky .starryskys .starrysky_data image {
        width: 100%; }
  #starrysky .links {
    text-align: center;
    width: 80%;
    margin: auto;
    padding: 5% 0 5%; }
    #starrysky .links h3 {
      padding: 2% 0;
      font-size: 120%;
      letter-spacing: .5vw; }
    #starrysky .links .link2.btns a {
      margin: 0 2% 2%;
      padding: 8px 40px;
      width: calc(50% - 90px); }
    #starrysky .links .link2.btns.green a {
      background-color: #9fc24d;
      border-color: #9fc24d; }
      #starrysky .links .link2.btns.green a:hover {
        background: rgba(159, 194, 77, 0.2);
        color: #9fc24d; }
    #starrysky .links .link2.btns.gray a {
      border: 1px solid #a9a9a9;
      background-color: #a9a9a9; }
      #starrysky .links .link2.btns.gray a:hover {
        color: #a9a9a9;
        background-color: rgba(169, 169, 169, 0.2); }
  #starrysky.style13 article section {
    margin: 0 auto;
    padding: 5% 7% 0; }
  #starrysky.style13 article section.links {
    padding: 5% 0 5%; }
  #starrysky.style13 .starryskys .starrysky_data .titles {
    padding: 5% 0;
    color: #e2041b; }
  #starrysky.style13 .starryskys .starrysky_data .text {
    font-size: 1.5rem; }
  #starrysky.style13 .starryskys .starrysky_data {
    padding: 0.3%; }
  #starrysky .article_section__images__slides .slick-list {
    width: 100%;
    border: 2px solid white; }
    #starrysky .article_section__images__slides .slick-list li img {
      width: 100%; }
  #starrysky .article_section__images__slides .slide-arrow.slick-arrow {
    display: inline;
    position: absolute;
    top: 47%;
    z-index: 2; }
    #starrysky .article_section__images__slides .slide-arrow.slick-arrow.prev-arrow {
      left: 5%; }
    #starrysky .article_section__images__slides .slide-arrow.slick-arrow.next-arrow {
      right: 5%; }
  #starrysky .article_section__images__slides-nav {
    display: block;
    flex-wrap: wrap;
    margin: 3px 0;
    text-align: center; }
    #starrysky .article_section__images__slides-nav li {
      display: inline-block;
      vertical-align: middle;
      width: calc(33% - 3px);
      margin: 0;
      line-height: 0;
      position: relative;
      cursor: pointer;
      background: #000;
      border: 2px solid #FFF;
      -webkit-transition: all 0.3s ease;
      -moz-transition: all 0.3s ease;
      -ms-transition: all 0.3s ease;
      -o-transition: all 0.3s ease;
      transition: all 0.3s ease; }
      #starrysky .article_section__images__slides-nav li.current {
        border-color: #3b3486; }
  #starrysky.index .mv .mvlogo {
    top: auto;
    left: auto;
    bottom: 8%;
    right: 9%;
    width: 35%; }
  #starrysky.spot .mv .mvlogo {
    top: 27%;
    left: 8%;
    width: 35%; }
  #starrysky.constellation .mv .mvlogo {
    top: 27%;
    left: 8%;
    width: 35%; }

/*#####################################################################
 *
 * tab base in
 *
 #####################################################################*/
@media all and (max-width: 1024px) {
  #starrysky .block_data,
  #starrysky .links {
    width: 100%; }
  #starrysky .main_text .text br {
    display: none; }
  #starrysky .starryskys .starrysky_data {
    width: calc(33% - 1vw);
    padding: 2% 0; }
    #starrysky .starryskys .starrysky_data .titles h3 {
      font-size: 2vw; }
    #starrysky .starryskys .starrysky_data .titles h4 {
      font-size: 80%; }
  #starrysky.style13 article section {
    margin: 0 auto;
    padding: 5% 2% 0; }
  #starrysky.style13 .starryskys .starrysky_data {
    padding: 2% 0.3%; } }

/*#####################################################################
*
 * sp 767px in
 *
#####################################################################*/
@media all and (max-width: 767px) {
  .sp {
    display: inline-block !important; }
  .pc {
    display: none !important; }
  .sptcenter {
    text-align: center; }
  #starrysky {
    font-size: 1.5rem; }
    #starrysky .article_section__images__slides-nav li {
      width: calc(33% - 1vmin); }
    #starrysky .mv ul.sns {
      width: 40%;
      top: 1vw;
      right: 1vw; }
      #starrysky .mv ul.sns li {
        width: 15%; }
    #starrysky nav.menu {
      display: block;
      text-align: left;
      width: 100%; }
      #starrysky nav.menu a {
        display: inline-block;
        width: 49%;
        margin: 0.1%;
        padding: 2% 0;
        vertical-align: top;
        font-size: 3vw;
        margin-bottom: 2vw; }
        #starrysky nav.menu a br {
          display: none; }
    #starrysky article section {
      padding: 5% 0; }
    #starrysky .main_text {
      background-size: 30% auto;
      background-position: 100% 0%;
      padding-top: 10%; }
      #starrysky .main_text h3 {
        font-size: 6vw;
        text-shadow: 1px 1px 1px white,1px -1px 1px white,-1px 1px 1px white,-1px -1px 1px white;
        letter-spacing: 0; }
      #starrysky .main_text .text {
        width: 96%;
        margin: 0 auto 5%;
        text-align: left; }
    #starrysky .navigator {
      padding: 0; }
      #starrysky .navigator .box {
        width: 100%;
        display: block; }
        #starrysky .navigator .box .text,
        #starrysky .navigator .box .image {
          padding: 1%;
          width: 100%;
          margin: 0;
          display: block; }
      #starrysky .navigator h4 strong {
        margin: 0; }
    #starrysky .box {
      display: block; }
      #starrysky .box .text,
      #starrysky .box .image {
        padding: 1%;
        width: 100%;
        margin: 0;
        display: block; }
    #starrysky .box50 .image {
      width: 95%;
      padding: 2% 1% 5%;
      vertical-align: middle;
      display: inline-block; }
    #starrysky .point {
      padding-bottom: 5%; }
      #starrysky .point.img_right .image, #starrysky .point.img_left .image {
        float: none;
        width: 100%;
        padding: 0; }
        #starrysky .point.img_right .image img, #starrysky .point.img_left .image img {
          width: 100%; }
      #starrysky .point.img_right .text h3, #starrysky .point.img_left .text h3 {
        padding: 5% 0 2%; }
    #starrysky .btns.big a {
      font-size: 120%;
      display: block; }
    #starrysky .block_data .image,
    #starrysky .block_data .text {
      float: none;
      width: 100%; }
    #starrysky .block_data .btns {
      text-align: right; }
    #starrysky .block_data h3 {
      font-size: 6vw; }
    #starrysky.constellation .block_data h3, #starrysky.constellation .block_data .text, #starrysky.constellation .block_data .image {
      padding-top: 5%;
      width: 100%; }
    #starrysky.constellation .block_data h3 {
      float: none;
      font-size: 4.5vw; }
    #starrysky.constellation .block_data .text {
      float: none; }
      #starrysky.constellation .block_data .text .btns {
        text-align: right; }
    #starrysky.constellation .block_data .image {
      float: none; }
    #starrysky.constellation .block_data.image_right .image {
      float: none; }
    #starrysky.constellation .block_data.image_right h3, #starrysky.constellation .block_data.image_right .text {
      float: none; }
    #starrysky.constellation .block_data.image_right .text .btns {
      text-align: right; }
    #starrysky .block_etc {
      width: 100%; }
      #starrysky .block_etc h3 strong:before, #starrysky .block_etc h3 strong:after {
        height: 6vw;
        top: 1vw; }
      #starrysky .block_etc .text {
        width: 100%; }
        #starrysky .block_etc .text.indent5 {
          text-indent: 0;
          padding-left: 0; }
    #starrysky .links {
      width: 100%;
      margin: 0; }
      #starrysky .links .link2.btns {
        text-align: center; }
        #starrysky .links .link2.btns a {
          width: calc(50% - 3vw);
          padding: 4px 0;
          margin: 1vw;
          font-size: 3vw;
          line-height: 6vw;
          text-align: center;
          background-position: 99% 50%; }
          #starrysky .links .link2.btns a.back {
            background-position: 1% 50%; }
        #starrysky .links .link2.btns.gray a, #starrysky .links .link2.btns.green a {
          font-size: 3vw; }
    #starrysky .starryskys .starrysky_data {
      width: calc(50% - 3vmin);
      padding: 2% 0; }
      #starrysky .starryskys .starrysky_data .titles h3 {
        font-size: 2rem; }
      #starrysky .starryskys .starrysky_data .titles h4 {
        font-size: 50%; } }

@media all and (max-width: 500px) {
  #starrysky .starryskys .starrysky_data {
    width: 100%; } }

/***********************************************************/
.float_l {
  float: left; }

.float_r {
  float: right; }

.end {
  clear: both;
  font-size: 1px;
  height: 1px;
  padding: 0px;
  margin: 0px;
  display: block; }

.relative {
  position: relative; }

.absolute {
  position: absolute; }

.fixed {
  position: fixed; }

.clear {
  display: block;
  clear: both;
  height: 2px; }

.cleared {
  display: block;
  clear: both; }

.align_l, .t_left {
  text-align: left !important; }

.align_r, .t_right {
  text-align: right !important; }

.align_c, .t_center {
  text-align: center !important; }

.va_top {
  vartical-align: top; }

.va_bottom {
  vartical-align: bottom; }

.va_middle {
  vartical-align: middle; }

.allura, #starrysky .navigator h3 b, #starrysky .mv h2 {
  font-family: 'Allura'; }

.mincho, #starrysky .main_text h3, #starrysky .starryskys > h3 {
  font-family: 'Sawarabi Mincho',"游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif; }

.nato_serif, #starrysky {
  font-family: "Noto Serif JP"; }

/* display */
.none {
  display: none; }

.block {
  display: block; }

.inline {
  display: inline; }

.inlineblock {
  display: inline-block; }

/* clearfix */
.clearfix:after, #starrysky .point:after, #starrysky .block_data:after {
  content: ".";
  display: block;
  height: 0;
  font-size: 0;
  clear: both;
  visibility: hidden; }

.clearfix, #starrysky .point, #starrysky .block_data {
  display: block; }

html > body .clearfix, html > body #starrysky .point, #starrysky html > body .point, html > body #starrysky .block_data, #starrysky html > body .block_data {
  display: block\9; }
