@charset "UTF-8";
input, button, textarea, select {
 -webkit-appearance: none;
 -moz-appearance: none;
 appearance: none;
}
button {
 background-color: transparent;
 border: none;
 cursor: pointer;
 outline: none;
 padding: 0;
 appearance: none;
}
#colorbox, #cboxOverlay, #cboxWrapper {
 overflow: hidden;
 -webkit-transform: translate3d(0, 0, 0);
 transform: translate3d(0, 0, 0);
 position: fixed;
 width: 100%;
 height: 100%;
 top: 0;
 left: 0;
 right: 0;
 bottom: 0;
 z-index: 10001;
}
#cboxWrapper {
 max-width: none;
}
a, a:focus, button:focus {
 outline: none;
 outline-width: none;
}
#colorbox {
 outline: 0;
}
#cboxOverlay, .cboxIframe {
 background: rgba(0, 0, 0, 1.0);
}
#cboxContent {
 margin-top: 0px;
 background: rgba(0, 0, 0, 1.0);
 -webkit-background-size: cover;
 -moz-background-size: cover;
 -o-background-size: cover;
 background-size: cover;
 position: relative;
 overflow: hidden;
}
#cboxOverlay {
 position: fixed;
 width: 100%;
 height: 100%;
 background: rgba(0, 0, 0, 1.0);
}
#cboxMiddleLeft, #cboxBottomLeft {
 clear: left;
}
#cboxContent {
 position: relative;
}
#cboxLoadedContent {
 overflow: auto;
}
#cboxLoadingOverlay, #cboxLoadingGraphic {
 position: absolute;
 top: 0;
 left: 0;
 width: 100%;
 height: 100%;
}
#cboxPrevious, #cboxNext, #cboxClose, #cboxSlideshow {
 cursor: pointer;
 z-index: 100002;
}
.cboxPhoto {
 float: left;
 margin: auto;
 border: 0;
 display: block;
 max-width: none;
}
.cboxIframe {
 width: 100%;
 height: 100%;
 height: 100vh;
 height: 100dvh;
 min-height: 100vh;
 min-height: 100dvh;
 display: block;
 border: 0;
}
#colorbox, #cboxContent, #cboxLoadedContent {
 box-sizing: content-box;
}
#cboxError {
 padding: 50px;
 border: 1px solid #ccc;
}
#cboxTitle {
 position: absolute;
 bottom: 0px;
 left: 0;
 text-align: center;
 width: 100%;
 color: #fdedec;
 margin: 0;
 font-size: 0;
}
#cboxCurrent {
 position: absolute;
 bottom: 10px;
 left: 0;
 right: 0;
 margin: auto;
 color: #eee;
 font-size: 0.7em;
 width: 100px;
 text-align: center;
 font-family: Arial, Helvetica, "sans-serif";
 font-style: italic;
 font-weight: 700;
 display: none !important;
}
#cboxSlideshow {
 position: absolute;
 bottom: 0px;
 right: 42px;
 color: #444;
}
#cboxPrevious, #cboxNext {
 position: absolute;
 top: calc(50% - 200px);
 width: 60px;
 height: 400px;
 font-size: 0;
 z-index: 1002;
 filter: drop-shadow(0px 0px 5px #000);
}
#cboxPrevious {
 left: 0;
 left: env(safe-area-inset-left);
 background: url("../images/arrow_l.png") no-repeat center center;
 background-size: 40px auto;
}
#cboxNext {
 right: 0;
 right: env(safe-area-inset-right);
 background: url("../images/arrow_r.png") no-repeat center center;
 background-size: 40px auto;
}
#cboxClose {
 position: absolute;
 top: 1%;
 right: 1%;
 display: block;
 color: #333;
 width: 80px;
 height: 80px;
 text-align: right;
 font-weight: bold;
 font-size: 0;
 background: url("../images/btn_close.png") no-repeat right top;
 background-size: 100% auto;
 text-indent: 100%;
 white-space: nowrap;

 border: none;
 z-index: 1002;
}
@media screen and (min-width : 768px) {
 #cboxClose {
  transition: .5s;
  transform: rotateZ(0deg);
 }
 #cboxClose:hover {
  transition: .5s;
  transform: rotateZ(180deg);
 }
}
@media screen and (max-width : 767px) {
 #cboxClose {
  top: 12px;
  right: 12px;
  width: 50px;
  height: 50px;
 }
 #cboxPrevious, #cboxNext {
  width: 22px;
  background-size: 15px auto;
  top: auto;
  bottom: 0;
  height: 50px;
 }
 #colorbox, #cboxOverlay, #cboxWrapper {
  min-height: 100dvh;
 }
}
.cboxIE #cboxTopLeft, .cboxIE #cboxTopCenter, .cboxIE #cboxTopRight, .cboxIE #cboxBottomLeft, .cboxIE #cboxBottomCenter, .cboxIE #cboxBottomRight, .cboxIE #cboxMiddleLeft, .cboxIE #cboxMiddleRight {
 filter: progid:DXImageTransform.Microsoft.gradient(startColorstr=#000000, endColorstr=#000000);
}
/* ------------------------------
	modal
------------------------------ */
.modal__area {
 display: none;
}
.modal__content {
 margin: 0;
 width: 100%;
 height: 100%;
 min-height: 740px;
 text-align: left;
 position: relative;
 z-index: 3;
 animation-name: fadeInAnime;
 animation-duration: 1s;
 animation-fill-mode: forwards;
 opacity: 0;
}
@-webkit-keyframes fadeInAnime {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}
@keyframes fadeInAnime {
 from {
  opacity: 0;
 }
 to {
  opacity: 1;
 }
}
.fadeUp {
 animation-name: fadeUpAnime;
 animation-duration: 1s;
 animation-fill-mode: forwards;
 opacity: 0;
}
@-webkit-keyframes fadeUpAnime {
 from {
  opacity: 0;
  transform: translateY(40px);
 }
 to {
  opacity: 1;
  transform: translateY(0);
 }
}
@keyframes fadeUpAnime {
 from {
  opacity: 0;
  transform: translateY(40px);
 }
 to {
  opacity: 1;
  transform: translateY(0);
 }
}
/* blurIn */
.blurIn {
 transition: ease;
 opacity: 0;
 -webkit-animation: blurIn .5s ease .5s 1 forwards;
 animation: blurIn .5s ease .5s 1 forwards;
}
@-webkit-keyframes blurIn {
 0% {
  opacity: 0;
  filter: blur(10px);
 }
 100% {
  opacity: 1;
  filter: blur(0);
 }
}
@keyframes blurIn {
 0% {
  opacity: 0;
  filter: blur(10px);
 }
 100% {
  opacity: 1;
  filter: blur(0);
 }
}
/* zoomIn */
.zoomIn, .cboxPhoto {
 animation-name: zoomInAnime;
 animation-duration: 0.5s;
 animation-fill-mode: forwards;
}
@-webkit-keyframes zoomInAnime {
 from {
  transform: scale(0.6);
 }
 to {
  transform: scale(1);
 }
}
@keyframes zoomInAnime {
 from {
  transform: scale(0.6);
 }
 to {
  transform: scale(1);
 }
}
.modal__content::after {
 content: "";
 background: #000;
 top: 0;
 left: 0;
 width: 100%;
 height: 100vh;
 height: 100dvh;
 min-height: 100vh;
 min-height: 100dvh;
 display: block;
 position: fixed;
}
.modal__content .name {
 font-size: 50px;
 letter-spacing: 1px;
 margin: 20px 0;
 font-weight: 800;
 line-height: 1.2em;
 font-feature-settings: "palt"1;
}
.modal__content .txt-chara {
 font-size: 1.1em;
 font-weight: 800;
 margin-bottom: 30px;
}
.modal__content .name.s {
 font-size: 30px;
 line-height: 1.6em;
 margin-bottom: .2rem;
}
.modal__content p {
 margin-bottom: 20px;
}
.modal__content p .cap {
 font-size: .9em;
 line-height: 1.6em;
 display: inline-block;
 color: #eee;
}
.modal__content .link {
 color: #3ac0e5;
 text-decoration: underline;
 word-break: break-all;
}
.modal__content .link:hover {
 text-decoration: none;
}
.modal__content .btn-link, .btn-area .btn-link {
 background-color: #3ac0e5;
 color: #fff;
 font-weight: 800;
 line-height: 1.2em;
 padding: 8px 20px 10px;
 border-radius: 30px;
 border-radius: 50vh;
 width: 240px;
 text-align: center;
 display: block;
 -webkit-box-shadow: 0 2px 3px rgba(0, 0, 0, .5);
 box-shadow: 0 2px 3px rgba(0, 0, 0, .5);
}
.btn-area .btn-link {
 margin: auto;
 font-size: 1.2em;
}
.wrapp .name span {
 display: block;
 line-height: 1.6em;
 font-size: .7em;
}
.wrapp .name .s {
 font-size: .5em;
 display: block;
}
.wrapp .name .yaku .s {
 display: inline-block;
 margin-left: 8px;
}
.wrapp .name .yaku::before {
 content: "as";
 font-family: 'Maven Pro', cursive, Arial, Helvetica, "sans-serif";
 font-weight: 700;
 color: #3ac0e5;
 display: inline-block;
 margin-right: 5px;
 font-size: .8em;
}
.wrapp .name .en {
 font-size: .5em;
}
.wrapp .name .subtxt {
 font-size: .5em;
 font-weight: 600;
 letter-spacing: 0.02em;
 margin-left: 5px;
 line-height: 1.2em;
 display: inline-block;
}
.modal__content .chara-txt {
 font-weight: 600;
 line-height: 1.8em;
 margin-bottom: 2.5em;
}
.modal__content .ttl {
 color: #3ac0e5;
 font-weight: 600;
 font-size: 2em;
 line-height: 1.6em;
}
.wrapp {
 width: 100%;
 height: 100%;
 margin: 0 auto;
 overflow: visible;
 position: relative;
 z-index: 1;
}
.wrapp .photo {
 position: relative;
}
.photo img {
 width: 100%;
 aspect-ratio: 1 / 1.414375;
 object-fit: cover;
}
.photo.sub img, .photo.jo1 img {
 max-height: inherit;
 height: auto;
 aspect-ratio: 1;
 max-width: 100%;
 width: 84%;
 margin: auto;
 display: block;
}
.photo.jo1 img {
 width: 100%;
}
.scroll_area {
 overflow-y: auto;
 overflow-x: hidden;
 outline: none;
}
.close {
 font-size: 20px;
 line-height: 1em;
}
@media screen and (max-width : 959px) {
 .modal__content {
  padding: 0;
  width: 100%;
  height: 100%;
  height: 100vh;
  min-height: 100dvh;
  overflow: auto;
  -webkit-overflow-scrolling: touch;
 }
 .modal__content .profile, .c-staff {
  padding: 0 8% 80px;
  box-sizing: border-box;
 }
 .c-staff {
  padding-top: 6vh;
 }
 .wrapp {
  width: 100%;
  height: auto;
  margin: 0 auto;
 }
 .modal__content .wrapp {
  max-width: 600px;
  padding-bottom: 20px;
 }
 .scroll_area {
  height: auto;
  max-height: inherit;
  overflow: visible;
 }
 .jspDrag, .jspTrack, .jspVerticalBar {
  display: none;
 }
 .modal__content h1 {
  font-size: 38px;
 }
 .modal__content p {
  margin: 0 0 40px;
 }
 .modal__content .name {
  margin-top: 30px;
  font-size: 40px;
  text-align: center;
  line-height: 1.2em;
 }
 .modal__content .name.s {
  font-size: 2rem;
 }
 .modal__content .chara-txt {
  font-size: 1.5rem;
  width: 90%;
  margin-left: auto;
  margin-right: auto;
 }
 .modal__content .goods-inner {
  width: 90%;
  margin-left: auto;
  margin-right: auto;
 }
 .modal__content .chara-txt br {
  display: none;
 }
 .photo.sub img {
  margin-top: 30px;
 }
 .modal__content .btn-link {
  margin: auto;
 }
 .modal__content .ttl {
  text-align: center;
 }
}
@media screen and (min-width : 960px) {
 .wrapp {
  display: -webkit-box;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  justify-content: space-between;
 }
 .wrapp .photo {
  width: 45%;
  min-height: 720px;
  display: flex;
  justify-content: flex-end;
 }
 .wrapp .photo img {
  display: block;
  width: unset;
  max-width: 100%;
  max-height: 100%;
 }
 .photo.sub img {
  display: block;
  width: 80%;
  margin-left: 20%;
 }
 .photo.jo1 img {
  display: block;
  width: 90%;
  margin-left: 10%;
  margin-right: -10%;
 }
 .wrapp .profile {
  width: 45%;
 }
 .wrapp .name .en {
  display: inline-block;
  margin-left: 10px;
 }
 .wrapp.c-staff {
  align-items: center;
  justify-content: center;
 }
 .wrapp.c-staff .scroll_area {
  max-width: 800px;
 }
 .profile {
  height: 100%;
  display: -ms-flexbox;
  display: -webkit-flex;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
 }
 .scroll_area {
  width: 80%;
  height: fit-content;
  max-height: 750px;
  padding-right: 20px;
 }
 .modal__content .name .cv {
  margin-left: 16px;
 }
 .modal__content .chara-txt {
  font-size: 1.8rem;
 }
 .modal__content .btn-link:hover, .btn-area .btn-link:hover {
  opacity: .7;
 }
 .goods_area {
  display: flex;
  align-items: center;
 }
 .photo.goods {
  margin-right: 5%;
  margin-left: 8%;
 }
}