@charset "UTF-8";
/* css start */
/************************************************
	Setting
************************************************ */
* {
  transition: opacity 0.2s ease-out, color 0.1s ease-out, background-color 0.2s ease-out, border-radius 0.2s ease-out, box-shadow 0.2s ease-out, text-shadow 0.2s ease-out, transform 0.2s ease-out;
  -webkit-transition: opacity 0.2s ease-out, color 0.1s ease-out, background-color 0.2s ease-out, border-radius 0.2s ease-out, box-shadow 0.2s ease-out, text-shadow 0.2s ease-out, -webkit-transform 0.2s ease-out;
}

*, *:before, *:after {
  box-sizing: border-box;
}

html {
  font-size: 18px;
}

body {
  color: #111;
  font-size: 1rem;
  font-family: "Kiwi Maru", serif;
  font-weight: 300;
  background: #fff;
  line-height: 1.8;
  -webkit-text-size-adjust: none;
}

/* link */
a {
  text-decoration: none;
  color: #111;
}

a:hover {
  text-decoration: none;
  color: #111;
}

a img {
  background-color: rgba(255, 255, 255, 0.01);
}

a:hover img {
  opacity: 0.8;
}

/* ul ol*/
ul, ol {
  margin: 0;
  padding: 0;
  list-style: none;
}

img {
  max-width: 100%;
  height: auto;
}

.svg_fff {
  fill: #fff;
}

.bgBlue {
  background: url(../images/bg01.jpg);
}

input[type=text], input[type=email], input[type=tel], input[type=submit], input[type=button], textarea, select {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}

.sigmar {
  font-family: "Sigmar One", sans-serif;
  font-weight: 400;
  font-style: normal;
}

@media screen and (min-width: 769px) {
  .sp {
    display: none !important;
  }
}
@media screen and (max-width: 768px) {
  .pc {
    display: none !important;
  }
}
/************************************************
	PC
************************************************ */
/************************************************
	汎用
************************************************ */
#container {
  max-width: 960px;
  margin: 0 auto;
  padding: 0 60px;
  position: relative;
  background: #fff;
}

@media screen and (max-width: 768px) {
  html {
    font-size: 16px;
  }
  #container {
    width: 100%;
    padding: 0;
  }
}
#mvTop h1 {
  margin: 0;
}

#header {
  width: 100%;
}

/************************************************
	Gnavi
************************************************ */
#gNavi {
  width: 100%;
  height: 120px;
}
#gNavi .navWrap {
  width: 100%;
  padding: 20px 0;
}
#gNavi .navWrap ul {
  max-width: 840px;
  margin: 0 auto;
}
#gNavi .navWrap li {
  padding: 0 5px;
}
#gNavi .navWrap li a {
  background: #666;
  display: block;
  height: 80px;
  border-radius: 10px;
  text-align: center;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  font-size: 0.857rem;
  font-weight: 500;
  position: relative;
}
#gNavi .navWrap li a.booth {
  background: #ffdcdc;
  color: #a7194d;
}
#gNavi .navWrap li a.gallery {
  background: #c6e2d6;
  color: #1a6147;
}
#gNavi .navWrap li a.message {
  background: #e3d4f3;
  color: #171665;
}
#gNavi .navWrap li a i.arrow {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 5%;
}
#gNavi .navWrap li a:hover.booth i.arrow {
  transform: translate(5px, -15px);
}
#gNavi .navWrap li a:hover.gallery i.arrow {
  transform: translate(5px, -50%);
}
#gNavi .navWrap li a:hover.message i.arrow {
  transform: translate(0, -20%);
}
#gNavi .navWrap.fixed {
  background: #fff;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 999;
}

@media screen and (max-width: 768px) {
  #gNavi .navWrap {
    padding: 5px 0;
  }
  #gNavi .navWrap ul {
    width: 100%;
  }
}
@media screen and (max-width: 420px) {
  #gNavi .navWrap li a {
    font-size: 3.7vw;
  }
}
/************************************************
	contents
************************************************ */
#contents-list {
  padding-top: 40px;
}
#contents-list .content-link__wrap {
  padding: 0 0 50px;
}

@media screen and (max-width: 768px) {
  #contents-list {
    padding-top: 0;
  }
  #contents-list .content-link__wrap {
    padding: 0 20px 30px;
  }
}
.hl {
  font-size: 60px;
  padding: 10px;
  color: #fff;
}

.gallery .hl {
  background: #80c1b8;
}

.booth .hl {
  background: #e87b7b;
}

.project .hl {
  background: #99a5d0;
}

@media screen and (max-width: 768px) {
  .hl {
    font-size: 8vw;
    padding: 10px 5px;
  }
}
.content-link__lead {
  font-size: 14px;
  text-indent: -1.2em;
  padding-left: 2.2em;
  line-height: 1.7;
}

/************************************************
	gallery
************************************************ */
.content-link__box {
  margin-top: 30px;
}
.content-link__box .content-link__bnr {
  flex: 1;
}
.content-link__box .content-link__text {
  flex: 1;
}

@media screen and (max-width: 768px) {
  .content-link__box {
    margin-top: 0;
    margin-bottom: 30px;
  }
}
.gallery-sub {
  padding: 0 50px 50px;
}
.gallery-sub h2 {
  font-size: 1.286rem;
  margin-bottom: 40px;
}
.gallery-sub .kome {
  font-size: 0.714rem;
}

@media screen and (max-width: 768px) {
  .gallery-sub {
    padding: 0 20px 50px;
  }
  .gallery-sub h2 {
    margin-bottom: 20px;
  }
  .gallery-sub ul.kome {
    font-size: 0.857rem;
  }
  .gallery-sub ul.kome li {
    padding-left: 1em;
    text-indent: -1em;
  }
}
.gallery-list {
  padding: 0 30px;
}
.gallery-list li {
  margin-top: 40px;
}
.gallery-list li a {
  display: block;
}
.gallery-list li a figure {
  text-align: center;
  margin-bottom: 5px;
}
.gallery-list li a figcaption {
  text-align: center;
}
.gallery-list li a:hover figcaption {
  color: #666;
}

@media screen and (max-width: 768px) {
  .gallery-list {
    padding: 0;
  }
  figcaption {
    line-height: 1.8;
  }
}
.movie-list {
  width: 100%;
}
.movie-list li {
  margin-top: 40px;
  background: #ddd;
}
.movie-list li iframe {
  width: 100%;
  height: auto;
  aspect-ratio: 16/9;
  margin-bottom: 0;
}
.movie-list li p {
  padding: 10px 10px 20px;
  line-height: 1.5;
}

.novel-list {
  width: 100%;
}
.novel-list li {
  padding: 10px 0 0;
  border-bottom: 1px solid #ddd;
}
.novel-list li:hover {
  background: #eee;
}
.novel-list .novel-title {
  margin-bottom: 0;
  color: #3e4e83;
  font-weight: bold;
}

.hl--genre {
  margin-top: 40px;
  margin-bottom: 10px;
  font-size: 1.2rem;
  width: 100%;
  padding: 10px;
  color: #fff;
}
.hl--genre.volun {
  background: #d492b1;
}
.hl--genre.shipachi {
  background: #8465ba;
}
.hl--genre.grcl {
  background: #7fba7a;
}
.hl--genre.nocp {
  background: #b5b8b7;
}

#local-navi {
  padding: 40px 0;
}
#local-navi .local-navi-list li:not(:last-of-type) {
  border-right: 1px dashed #666;
}
#local-navi .local-navi-list a {
  background: #eee;
  display: block;
  padding: 20px;
  font-weight: bold;
  text-align: center;
}
#local-navi .local-navi-list a:hover {
  background: #e2fff9;
  color: #4f9880;
}

@media screen and (max-width: 768px) {
  #local-navi {
    padding: 0 0 30px;
  }
  #local-navi .local-navi-list li:nth-of-type(n+3) {
    border-top: 1px dashed #666;
  }
  #local-navi .local-navi-list li:nth-of-type(even) {
    border-right: none;
  }
  #local-navi .local-navi-list a {
    background: #eee;
    display: block;
    padding: 20px;
    font-weight: bold;
    text-align: center;
  }
  #local-navi .local-navi-list a:hover {
    background: #e2fff9;
    color: #4f9880;
  }
}
/************************************************
	footer
************************************************ */
#cta {
  padding: 0;
}
#cta h2 {
  font-size: 24px;
  margin-bottom: 30px;
}
#cta .btns {
  margin-top: 30px;
  gap: 5%;
}
#cta .btns .btn__item {
  flex: 1;
}
#cta .btns a {
  width: 100%;
  height: 100px;
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  border-radius: 20px;
  background: #fff;
  font-weight: 500;
  position: relative;
}
#cta .btns a small {
  font-weight: 200;
}
#cta .btns a i {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 20px;
}
#cta .btns a.form {
  border: 2px solid #7249b9;
  color: #7249b9;
}
#cta .btns a.mash {
  border: 2px solid #F3969A;
  color: #F3969A;
}
#cta .btns a.tw {
  border: 2px solid #1d9bf0;
  color: #1d9bf0;
}
#cta .btns a.pxv {
  border: 2px solid #0197fa;
  color: #0197fa;
}
#cta .btns a:hover {
  color: #fff;
}
#cta .btns a:hover i {
  transform: translate(5px, -15px);
}
#cta .btns a:hover.form {
  background: rgb(142.5357142857, 109.8333333333, 199.1666666667);
}
#cta .btns a:hover.mash {
  background: rgb(248.2307692308, 195.7692307692, 198.0256410256);
}
#cta .btns a:hover.tw {
  background: rgb(76.8257261411, 176.1618257261, 243.1742738589);
}
#cta .btns a:hover.pxv {
  background: rgb(47.828685259, 172.1314741036, 254.171314741);
}
#cta .message {
  background: url(../images/bg01.jpg);
  padding: 60px 30px;
}
#cta .sns {
  background: url(../images/bg02.png);
  padding: 60px 30px;
}

.copy {
  text-align: center;
  font-size: 14px;
  color: #b5b5b5;
  margin: 0;
  padding: 20px;
}

/************************************************
	SP
************************************************ */
@media screen and (max-width: 768px) {
  #cta .message .btns {
    flex-direction: column;
    gap: 10px;
  }
  #cta .sns .btns .btn__item a {
    height: 60px;
  }
  #links, #gallery, #gallery_anth, #other, #cta .message, #cta .sns, #gallery_illust, #gallery_movie {
    padding: 40px 20px;
  }
  #links h2, #gallery h2, #gallery_anth h2, #other h2, #cta .message h2, #cta .sns h2, #gallery_illust h2, #gallery_movie h2 {
    margin-bottom: 20px;
  }
  #links ul.kome, #gallery ul.kome, #gallery_anth ul.kome, #other ul.kome, #cta .message ul.kome, #cta .sns ul.kome, #gallery_illust ul.kome, #gallery_movie ul.kome {
    font-size: 0.857rem;
  }
  #links ul.kome li, #gallery ul.kome li, #gallery_anth ul.kome li, #other ul.kome li, #cta .message ul.kome li, #cta .sns ul.kome li, #gallery_illust ul.kome li, #gallery_movie ul.kome li {
    padding-left: 1em;
    text-indent: -1em;
  }
  #links .galleryList, #gallery .galleryList, #gallery_anth .galleryList, #other .galleryList, #cta .message .galleryList, #cta .sns .galleryList, #gallery_illust .galleryList, #gallery_movie .galleryList {
    padding: 0;
  }
  #links figcaption, #gallery figcaption, #gallery_anth figcaption, #other figcaption, #cta .message figcaption, #cta .sns figcaption, #gallery_illust figcaption, #gallery_movie figcaption {
    line-height: 1.8;
  }
  .copy {
    font-size: 3.2vw;
  }
  #cta .message p {
    text-align: left !important;
  }
}/*# sourceMappingURL=style.css.map */