@charset "utf-8";

/*==================== common parts ====================*/
h1 {  }
h2 {}
h3 {}
.inner { padding:15rem 2rem; }

/*==================== mv ====================*/
#mv {}
#mv .movie { position:relative; }
#mv .movie:after {
  content:"";
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
  background-color: rgba(0, 0, 0, 0.1);
  background-image: radial-gradient(black 20%, transparent 20%),
    radial-gradient(black 20%, transparent 20%);
  background-size: 6px 6px;
  background-position: 0 0, 3px 3px;
}
#mv .movie video {
  width:100%;
  aspect-ratio: 16 / 9;
  pointer-events:none;
  display:block;
}

/*==================== info ====================*/
#info { padding:9rem 0; }
#info .inner { padding:0 2rem; }
#info .flb { display:flex; margin-top:3.5rem; }
#info .news { width:60%; }
#info .news li { font-size:2.2rem; }
#info .news li:nth-of-type(n+2) { margin-top:1.5rem; }
#info .news li a { color:#000; }
#info .news li span { display:inline-block; margin-right:1em; }
#info .link { width:38%; display:flex; flex-direction:column; }
#info .link li {}
#info .link li:nth-of-type(n+2) { margin-top:auto; }
#info .link li a {
  display:flex;
  justify-content:center;
  align-items:center;
  text-align:center;
  background:#000;
  color:#fff;
  font-size:2.5rem;
  font-weight: bold;
  line-height:3.4;
}

/*==================== eng ====================*/
#eng { background:#969696; color:#fff; padding:20rem 0; font-size:1.8rem; line-height:1.6; letter-spacing:0.025em; }
#eng .inner { padding:0 2rem; }
#eng h2 { margin:5rem 0; }
#eng ul { margin:3rem 0; }
#eng ul li { text-indent:-1.5em; padding-left:1.5em; }
#eng ul li:nth-of-type(n+2) { margin-top:1.5rem; }

/*==================== catch ====================*/
#catch { padding-bottom:10rem; }
#catch .inner { padding:0 2rem; }
#catch h3 { font-size:10rem; font-style:italic; padding:10rem 0; font-weight: bold; line-height:1.4; }
#catch p { font-size:2.8rem; line-height:2; }

/*==================== cont ====================*/
/* cont common */
.contTopImg { position:relative; }
.contTopTx {
  max-width:120rem;
  width:100%;
  position:absolute;
  top:50%;
  left:50%;
  transform:translate(-50%,-50%);
}
.prof { max-width:35rem; }
.name { font-size:8rem; font-weight: bold; margin:10rem 0; }
.namekuroki { font-size:8rem; font-weight: bold; margin:4rem 0; }
.profTx { font-size:2.4rem; line-height:2; }
.profTxkuroki { font-size:2.4rem; line-height:1.8; }



/* cont01 */
#cont01 { color:#CC7090; }
#cont01 .flb { display:flex; justify-content:space-between; max-width:156rem; }
#cont01 .flb li {  }
#cont01 .flb li:first-child { width:61.538%; }
#cont01 .flb li:last-child { width:35.256%; }
#cont01 .flb.l { margin-left:calc(50% - 50vw); }
#cont01 .flb.l li { }
#cont01 .flb.l li > img { margin-right:10rem; }
#cont01 .flb.r { margin-right:calc(50% - 50vw); margin-top:10rem; align-items:center; }
#cont01 .flb.r li:first-child { order:2; }
#cont01 .lastImg { margin-top:10rem; }

/* cont02 */
#cont02 { color:#FAAA00;  }
#cont02 .flb { display:flex; justify-content:space-between; max-width:156rem; }
#cont02 .flb li {  }
#cont02 .flb li:first-child { width:calc(50% - 10rem); }
#cont02 .flb li:last-child { width:50%; }
#cont02 .flb.r { margin-right:calc(50% - 50vw); margin-top:10rem; }
#cont02 .flb.r li:first-child { width:35.256%; }
#cont02 .flb.r li:last-child { width:61.538%; }

/* cont03 */
#cont03 { color:#3387c8; }
#cont03 .mecWrap { margin-top:10rem; }
#cont03 .mecWrap:nth-of-type(n+2) { margin-top:15rem; }
#cont03 .mecWrap .name { margin:5rem 0; }
#cont03 .mecWrap .bigname { margin-top:10rem; }
#cont03 .mecWrap .profTx {  }

/* cont04 */
#cont04 { color:#a72784; }
#cont04 .name { margin:5rem 0; }
#cont04 .img { margin-top:10rem; }

/*==================== footer ====================*/
footer { margin-top:10rem; }
footer copyright { display:block; text-align:center; background:#000; color:#fff; font-size:1.2rem; padding:1rem 0; }






/*----------------------------------------
responsive
----------------------------------------*/
@media screen and (max-width:1240px){
  header h1 { max-width:6rem; }
  .name { font-size:6rem; margin:6rem 0; }
  .prof { max-width:24rem; }
  .profTx { font-size:2rem; }
  
  #info { padding:5rem 0; }
  #info .news li { font-size:2rem; }
  #info .link { display:block; }
  #info .link li:first-child { margin-bottom:2rem; }
  #eng { padding:10rem 0; }
  
  #catch h3 { font-size:8rem; padding:5rem 0; }
  #catch p { font-size:2.4rem; }
  
  #cont03 .mecWrap .bigname img { height:40rem; }
}
@media screen and (max-width:1024px){
  .name { margin:4rem 0 3rem; }
  
  #cont01 .flb { flex-direction:column; margin:0 auto!important; width:80%; }
  #cont01 .flb li { width:100%!important; }
  #cont01 .flb.l li:first-child { order:2; margin:3rem 0; }
  #cont01 .flb.r li:first-child { margin-top:3rem; }
  #cont01 .name { margin:4rem 0 3rem; }
  #cont01 .lastImg { margin:4rem auto 0; width:80%; }
  #cont01 .lastImg img { width:60%; }
  
  #cont02 {}
  #cont02 .flb { margin:0 auto!important; width:80%; }
  #cont02 .flb li {  }
  #cont02 .flb li:first-child { width:46%; }
  #cont02 .flb.r { margin:3rem calc(50% - 50vw) 0 auto!important; }
  #cont02 .flb.r li:first-child { width:32%; }
  #cont02 .flb.r li:last-child { width:65%; }
  
  #cont03 .mecWrap .bigname img { height:30rem; }
  
  #cont04 .img { margin-top:3rem; }
}
@media screen and (max-width:820px){
  .contTopImg img { height:55rem; object-fit:cover; }
  .inner { padding:10rem 2rem; }
  
  #info .flb { display:block; }
  #info .news,#info .link { width:100%; }
  #info .link { display:flex; justify-content:space-between; flex-direction:row; margin:3rem auto 0; }
  #info .link li { width:49%; }
  #info .link li:first-child { margin-bottom:0; }
  
  #cont02 .contTopImg img { object-position:left; }
  #cont02 .flb { display:block; }
  #cont02 .flb li:first-child,#cont02 .flb li:last-child { width:100%; }
  #cont02 .flb li.txArea { margin-bottom:3rem; }
  #cont02 .flb.r { display:flex; width:92.5%; }
}
@media screen and (max-width:600px){
  .inner { padding:5rem 2rem 10rem; }
  .contTopImg img { height:35rem; }
  .prof { max-width:15rem; }
  .name { font-size:3.4rem; margin:3rem auto 2rem; line-height:1; }
  .profTx { font-size:1.8rem; }
  
  #info h2 img { height:5rem; }
  #info .news li { font-size:1.4rem; }
  #info .news li span {  }
  #info .link { flex-direction:column;  }
  #info .link li { width:100%; }
  #info .link li:first-child { margin-bottom:1rem; }
  #info .link li a { font-size:2rem; }
  
  #eng { padding:5rem 0; }
  
  #catch { padding-bottom:5rem; }
  #catch h3 { font-size:5rem; }
  #catch p { font-size:2rem; }
  
  #cont01 .flb.l li > img { margin-right:0; }
  #cont01 .flb.l li:first-child { margin:2rem 0; }
  #cont01 .lastImg { margin-top:2rem; }
  #cont01 .flb,#cont01 .lastImg,#cont02 .flb { width:100%; }
  #cont01 .name { margin:3rem auto 2rem; }
  
  #cont02 .flb li.txArea { margin-bottom:2rem; }
  #cont02 .flb.t li:last-child img { height:60rem; width:100%; object-fit:cover; }
  #cont01 .flb.r li:first-child { margin-top:2rem; }
  #cont02 .flb.r { width:100%; margin:2rem 0 0!important; }
  
  #cont03 .mecWrap { margin-top:5rem; }
  #cont03 .mecWrap:nth-of-type(n+2) { margin-top:5rem; }
  #cont03 .mecWrap .bigname { margin-top:0; }
  #cont03 .mecWrap .bigname img { height:18rem; }
  #cont03 .mecWrap .name,#cont04 .name { margin:3rem 0 2rem; }
  #cont04 .inner { padding-bottom:0; }
}
@media screen and (max-width:414px){}
@media screen and (max-width:375px){}
@media screen and (max-width:320px){}