@charset "utf-8";

/* reset
--------------------------------------- */
html,body,div,span,applet,object,iframe,
h1,h2,h3,h4,h5,h6,p,blockquote,pre,
a,abbr,acronym,address,big,cite,code,
del,dfn,em,img,ins,kbd,q,s,samp,
small,strike,strong,sub,sup,tt,var,
b,u,i,center,
dl,dt,dd,ol,ul,li,
fieldset,form,label,legend,
table,caption,tbody,tfoot,thead,tr,th,td,
article,aside,canvas,details,embed,
figure,figcaption,footer,header,hgroup,
menu,nav,output,ruby,section,summary,
time,mark,audio,video{
  margin:0;
  padding:0;
  border:0;
  font-size:100%;
  font:inherit;
  vertical-align:baseline;
}
article,aside,details,figcaption,figure,footer,header,hgroup,menu,nav,section{display:block;}
body{line-height:1;}
ol,ul{list-style:none;}
blockquote,q{quotes:none;}
blockquote:before,blockquote:after,q:before,q:after{content:'';content:none;}
table{border-collapse:collapse;border-spacing:0;}

/* clearfix 
--------------------------------------- */
.cf:before,
.cf:after{
  content:" ";
  display:table;
}
.cf:after{clear:both;}
.cf{*zoom:1;}
*{zoom:1;}

/* common
--------------------------------------- */
body{
  width:100%;
  background-color:#000;
  color:#fff;
  font-size:16px;
  line-height:1.0;
  font-family:"メイリオ",Meiryo,"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro", Osaka,"ＭＳ Ｐゴシック","MS PGothic", sans-serif;
  -webkit-text-size-adjust:100%;
     -moz-text-size-adjust:100%;
      -ms-text-size-adjust:100%;
       -o-text-size-adjust:100%;
          text-size-adjust:100%;
}
.ming{
  font-family:"Sawarabi Mincho",serif;
  /*-webkit-transform:rotate(0.028deg);
     -moz-transform:rotate(0.028deg);
      -ms-transform:rotate(0.028deg);
       -o-transform:rotate(0.028deg);
          transform:rotate(0.028deg);*/
  font-weight:bold;
}
a{outline:none;text-decoration:none;}
a.underline{text-decoration:underline;}
img{vertical-align:bottom;max-width:100%;}
.fl{float:left;}
.fr{float:right;}
.pc{display:block;}
.sp{display:none;}
.content{
  width:100%;
  min-width:972px;
  background:url(../images/bg2023.png) #0e0e0e center top;
}
.section{
  width:100%;
}
.inner{
  width:972px;
  margin:auto;
  overflow:hidden;
}
h3,h4{text-align:center;}
.bold{font-weight:bold;}
.ov:hover{opacity:0.6;}
.ov{transition:opacity 0.3s ease-out;cursor:pointer;}


@media screen and (max-width:640px){
  .pc{display:none;}
  .sp{display:block;}
  body{font-size:24px;}
  h1,h2,h3,h4,h5,li,p{background:none;}
  .content,
  .section{
    width:640px;
    min-width:640px;
    overflow:hidden;
  }
  .inner{
    width:600px;
    margin:auto;
  }
  .ov:hover{opacity:1.0;}
}

/* main
--------------------------------------- */
#main.section{
  position:relative;
  width:100%;
  margin:auto;
  background:url(../images/main_bg2023.jpg) center top no-repeat;
  background-size:1140px auto;
}
#main .inner{}
#main .title{
  padding-top:700px;
  text-align:center;
  line-height:1.4;
}
#main .title p{
  font-size:38px;
  margin-bottom:20px;
}
#main .title h1{
  font-size:54px;
}
#main .title p,
#main .title h1{
  font-weight:600;
  color:#000;
  text-shadow:0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff,0 0 3px #fff;
}
#main h2{
  margin-top:240px;
  font-size:32px;
  font-weight:600;
  color:#fff;
  line-height:2.0;
  text-align:center;
}
#main #sns{
  width:972px;
  margin-top:12px;
  z-index:10;
}
#main #sns ul{
  float:right;
}
#main #sns ul li{
  display:inline-block;
  margin-right:5px;
  vertical-align:top;
}
#main #sns ul li:nth-child(1){margin-top:-2px;margin-right:16px;}
#main #sns ul li:nth-child(2){margin-top:0px;}
#main #sns ul li:nth-child(3){margin-top:0px;margin-right:0;}
#main #sns .btn a{
  width:120px;
  padding:3px 0 0;
  border-radius:13px;
  font-size:15px;
  line-height:24px;
}
#main #sns .btn a:before{
  content:'';
  position:absolute;
  top:1px;
  left:0;
  right:0;
  width:114px;
  height:22px;
  margin:auto;
  border:1px solid #f2e3bb;
  border-radius:12px;
}
@media screen and (max-width:640px){
  #main.section{
    width:640px;
    min-height:765px;
    background-size:100% auto;
  }
  #main .title{padding-top:660px;}
  #main h2{margin-top:20px;}
  #main img{width:100%;}
  #main #sns{
    width:98%;
    margin-top:10px;
  }
  #main #sns ul li:nth-child(1){margin-top:-4px;margin-right:16px;}
  #main #sns ul li:nth-child(2){margin-top:0px;}
  #main #sns ul li:nth-child(3){margin-top:-2px;}
}

/*  */
#main .info-box{
  position:relative;
  width:970px;
  margin:30px auto 60px;
  background:rgba(255,255,255,0.1);
}
#main .info-box .frame_top img{
  width:100%;
  vertical-align:top;
}
#main .info-box .frame_btm img{
  width:100%;
}
#main .info-box p{
  font-size:20px;
  line-height:1.6;
  text-align:center;
}
#main .info-box .overlay{
  position:absolute;
  top:0;
  width:100%;
  height:100%;
  background:rgba(0,0,0,0.7);
  display:flex;
  justify-content:center;
  align-items:center;
}
#main .info-box .overlay p.ol{
  padding:10px 30px;
  background:rgba(225,0,0,1.0);
  border:1px solid #fff;
  box-shadow:2px 2px 4px #000;
}
@media screen and (max-width:640px){
  #main .info-box{width:560px;}
  #main .info-box p{font-size:24px;}
}

/* KeyVisual horizontal
--------------------------------------- */
#main.horizon.section{
  background-image:url(../images/main_bg2023horizon.jpg);
  /*background-position:center top 40px;*/
  background-size:1300px auto;
}
#main.horizon .title{padding-top:720px;}
#main.horizon h2{margin-top:40px;}
#main.horizon #sns{width:1300px;}
@media screen and (max-width:1300px){
  #main.horizon.section{background-size:980px auto;}
  #main.horizon .title{padding-top:560px;}
  #main.horizon #sns{width:980px;}
}
@media screen and (max-width:640px){
  #main.horizon.section{background-size:100%;}
  #main.horizon .title{padding-top:360px;}
  #main.horizon #sns{width:98%;}
}

/* 共通
--------------------------------------- */
h3{
  font-size:42px;
  font-weight:bold;
  line-height:2.0;
  padding-top:63px;
  padding-bottom:10px;
  margin-bottom:43px;
}
h3 span.underline{
  border-bottom:6px solid #fff;
}
@media screen and (max-width:640px){
  h3{line-height:2.0;}
}
/*.yosumi{
    --x-gradient: linear-gradient(90deg, #fff 0 10px, transparent 0 calc(100% - 10px), #fff calc(100% - 10px));
    --y-gradient: linear-gradient(#fff 0 10px, transparent 0 calc(100% - 10px), #fff calc(100% - 10px));
    margin: 0;
    padding: 0;
    background-image:
        var(--x-gradient),
        var(--y-gradient),
        var(--x-gradient),
        var(--y-gradient);
    background-repeat: no-repeat;
    background-size: 100% 1px, 1px 100%, 100% 1px, 1px 100%;
    background-position: top, right, bottom, left;
}*/

/* news
--------------------------------------- */
#news.section{display:none;
  /*background:url(../images/wallpaper.png) 0 0;*/
  background:rgba(210,173,126,0.8);
}
#news .inner{
  padding:80px 0;
}
#news .frame{
  width:904px;
  padding:30px;
  /*background-color:rgba(18,17,17,0.8);*/
  border:4px solid #fff;
}
#news .info-box{
  width:780px;
  margin:30px auto 30px;
  /*background-color:rgba(18,17,17,0.5);*/
  /*background-color:rgba(255,255,255,0.2);*/
  background-color:rgba(78,78,78,0.4);
}
#news .info-box .frame_top img{
  width:100%;
  vertical-align:top;
}
#news .info-box .frame_btm img{
  width:100%;
}
#news .info-box h4{
  margin:16px 0;
}
#news .info-box h4 span{
  font-size:24px;
  font-weight:bold;
  line-height:1.8;
  text-align:center;
  border-bottom:2px solid #fff;
}
#news .info-box h5{
  margin-top:16px;
  font-size:22px;
  font-weight:bold;
  line-height:1.8;
  text-align:center;
}
#news .info-box p{
  font-size:20px;
  line-height:1.6;
  text-align:center;
}
#news .info-box p a{color:#fff;}
#news .info-box p a:hover{text-decoration:underline;}
#news .info-box .img{
  width:540px;
  margin:20px auto 0;
}
#news .info-box .img p{
	display:table;
  margin-top:6px;
	margin-left:auto;
  font-size:12px;
  line-height:1.2;
  text-align:left;
}
/*#news .info-box p.small{font-size:12px;}*/
#news .info-box p.small{font-size:0.93em;}
@media screen and (max-width:640px){
  #news .frame{
    width:582px;
    padding:20px 0;
  }
  #news .info-box{
    width:540px;
    margin:0 auto;
  }
  #news .info-box h5{font-size:24px;}
  #news .info-box p{
    padding:0 20px;
    font-size:24px;
    text-align:left;
  }
  #news .info-box p a{text-decoration:underline;}
  #news .info-box .img p{
    display:block;
    font-size:16px;
  }
  /*#news .info-box p.small{font-size:16px;}*/
  #news .info-box .w680{width:540px;}
}

#news .present{width:600px;margin:0px auto;}
#news .present .fl,
#news .present .fr{width:262px;}
#news .present .img{margin-bottom:10px;}
#news .present p.cap{font-size:0.86em;}
@media screen and (max-width:640px){
  #news .present{width:530px;}
  #news .present ul{width:90%;margin:auto;}
}

#news ul.attent{
  width:600px;
  margin:auto;
  /*font-size:15px;*/
  font-size:0.93em;
  line-height:1.5;
}
#news ul.attent.cent{text-align:center;}
.fs15{font-size:15px !important;line-height:1.5;}
.fs18{font-size:18px !important;line-height:1.5;}
@media screen and (max-width:640px){
  #news ul.attent{
    width:90%;
    /*font-size:20px;*/
  }
  #news ul.attent.cent{text-align:left;}
  .fs15{font-size:20px !important;}
  .fs18{font-size:22px !important;}
}

#news .frame.fl-bk{border-color:#000;}
#news .frame.fl-br{border-color:#64523b;}
/*
#news .caution{color:#f00;}
#news .caution p{
  font-size:24px;
  font-weight:600;
  text-shadow: 1px  1px 1px rgba(255,255,255,0.9),
              -1px  1px 1px rgba(255,255,255,0.9),
               1px -1px 1px rgba(255,255,255,0.9),
              -1px -1px 1px rgba(255,255,255,0.9);
}
@media screen and (max-width:640px){
  #news .caution p{font-size:22px;}
}*/
#news .info-box h4.caution-red{
  color:#f00;
  width:90%;
  margin:0 auto 10px;
  text-align:left;
  padding-left:1.0em;
  text-indent:-1.0em;
  text-shadow: 1px 1px 0 #fff,-1px -1px 0 #fff,
              -1px 1px 0 #fff, 1px -1px 0 #fff,
               0px 1px 0 #fff, 0px -1px 0 #fff,
              -1px 0px 0 #fff, 1px  0px 0 #fff;
}
#news .info-box h4.caution-red span{border-bottom:0px;}
/*
#news .goods{width:780px;margin:0px auto;}
#news .goods .img{width:780px;}
#news .goods .goods-inner{width:600px;margin:0px auto;}
#news .goods .goods-inner p{text-align:left;}
#news .goods .red{color:#f00;}
#news .box-red span{
  padding:2px 1.0em;
  text-align:center;
  font-size:0.80em;
  background-color:#f00;
  border-radius:3px;
}
#news .box-red.ast span{padding-left:0.7em;}
@media screen and (max-width:640px){
  #news .goods{width:540px;}
  #news .goods .img{width:540px;}
  #news .goods ul{width:500px;margin-left:10px;}
#news .box-red span{font-size:1.0em;}
}
*/
/*
#news h3{
  padding-top:83px;
  padding-bottom:53px;
}
#news .group{
  border-top:1px solid #c68888;
  border-bottom:1px solid #c68888;
}
#news h4{
  margin-top:20px;
  margin-bottom:20px;
  font-size:28px;
  line-height:1.6;
}
#news .box{}
#news .box p{
  width:auto;
  margin:0 auto 20px;
  font-size:16px;
  line-height:1.6;
}
#news .box .img-goods{
  width:467px;
  margin:0 auto 40px;
}
#news hr{
  width:100%;
  margin:20px auto;
  height:1px;
  border:none;
  border-top:1px solid #c68888;
}

#news .box .small{font-size:0.7em;}
@media screen and (max-width:640px){
  #news .box p{font-size:22px;}
}
*/
.button-wrap{text-align:center;}
.button-wrap .btn{}
.button-wrap .btn a{
  position:relative;
  display:inline-block;
  width:558px;
  padding:20px 0;
  border-radius:38px;
  font-size:28px;
  font-weight:bold;
  color:#fff;
  line-height:1.5;
  text-align:center;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
  background-image:-webkit-linear-gradient(75deg, #ab8c53 0%, #f4d47f 20%, #ab8c53 100%);
  background-image:        linear-gradient(75deg, #ab8c53 0%, #f4d47f 20%, #ab8c53 100%);
}
.button-wrap .btn.long a{
  width:initial;
  min-width:620px;
  padding-left:2.0em;
  padding-right:2.0em;
}
.button-wrap .btn.long a:before{
  content:'';
  position:absolute;
  top:5px;
  left:0;
  right:0;
  width:716px;
  height:67px;
  margin:auto;
  border:2px solid #f2e3bb;
  border-radius:34px;
}
@media screen and (max-width:640px){
  .button-wrap .btn.long a{
    width:558px;
    min-width:initial;
    padding-left:0;
    padding-right:0;
  }
  .button-wrap .btn.long a:before{
    top:5px;
    width:544px;
    height:68px;
    border-radius:33px;
  }
}
hr.w80p{
  width:80%;
  height:1px;
  border:none;
  border-top:1px solid #fff;
}

#news .info{
  /*margin-bottom:40px;
  padding-bottom:40px;
  border-top:1px solid #fff;
  border-bottom:1px solid #fff;*/
}
#news .info h4{
  font-size:24px;
  line-height:1.5;
  padding-top:24px;
}
#news .info .wide .text-box{
  width:690px;
  margin:auto;
}
#news .info .wide p{line-height:1.8;}
#news .info a{color:#fff;}
#news .info a:hover{text-decoration:underline;}
@media screen and (max-width:640px){
  #news .info .wide .text-box{width:580px;}
  #news .info a{text-decoration:underline;}
}

/* infomation
--------------------------------------- */
#infomation.section{
  /*background:url(../images/wallpaper.png) 0 0;*/
  background:rgba(210,173,126,0.8);
}
#infomation .inner{padding:0px 0;}
/*#infomation .container{
  width:890px;
  margin:auto;
  padding:0 40px 80px;
}*/

#infomation h3{}
#infomation h4{
  font-size:24px;
  line-height:1.5;
  padding-top:24px;
}

#infomation .info{
  margin-bottom:40px;
  padding-bottom:40px;
  border-top:1px solid #fff;
  border-bottom:1px solid #fff;
}
#infomation .info.no-bottomline{margin-bottom:0;border-bottom:none;}
#infomation .info .double{border-bottom:1px solid #c68888;}
#infomation .info .double .text-box{
  width:485px;
  padding-bottom:18px;
}
#infomation .info .double .text-box.fr{
  border-left:1px solid #c68888;
}
#infomation .info .double h5{
  width:176px;
  margin:33px auto 28px;
  padding:10px 0;
  text-align:center;
  border:1px solid #fff;
}
#infomation .info .double p{
  font-size:17px;
  line-height:1.8;
  margin-bottom:12px;
}
#infomation .info .double p.fl{
  width:130px;
  margin-left:50px;
}
#infomation .info .double p.fr{
  width:280px;
}

#infomation .info .wide .text-box{
  width:690px;
  padding:30px 0px 30px 182px;
}
#infomation .info .wide p{
  line-height:1.8;
}
#infomation .info .wide p.mb{margin-bottom:1em;}
#infomation .info a{color:#fff;}
#infomation .info a:hover{text-decoration:underline;}

#infomation .btn{
  width:554px;
  height:116px;
  background:#b57171;
  margin:0 auto;
}
/*
#infomation p.senkou{
  width:512px;
  margin:16px auto;
  font-size:14px;
  line-height:1.8;
}
*/
/*
#infomation .contact{
  width:791px;
  margin:0 auto 0px;
  background:rgba(255,255,255,0.1);
}
#infomation .contact .frame_top img{vertical-align:top;}
#infomation .contact .text-box{
  padding-top:5px;
  padding-bottom:5px;
}
#infomation .contact h5{
  width:137px;
  margin-top:40px;
  text-align:center;
}
#infomation .contact .text{
  width:630px;
  margin-top:0px;
  border-left:1px solid #fff;
  padding-left:23px;
}
#infomation .contact .text p{
  font-size:14px;
  line-height:1.8;
}
#infomation .contact .text p.attent{
  padding-top:6px;
  font-size:12px;
  line-height:1.8;
}*/
#infomation .sns-wrap{
  width:690px;
  margin-left:182px;
}
#infomation .sns-link{
  width:540px;
  margin:10px auto 40px;
  background:rgba(255,255,255,0.1);
}
#infomation .sns-link .frame_top img{
  width:100%;
  vertical-align:top;
}
#infomation .sns-link .frame_btm img{
  width:100%;
}
#infomation .sns-link .sns{
  width:120px;
  margin:auto;
}
.fl_tw{
  float:left;
  width:42px;
}
.fl_fb{
  float:right;
  width:42px;
}
#infomation .sns-link .sns a{transition:opacity 300ms;}
#infomation .sns-link .sns a:hover{opacity:0.7;}
@media screen and (max-width:640px){
  #infomation .container{width:580px;padding:0 10px 86px;}
  #infomation h4.y{
    width:580px;
    margin:auto;
  }
  #infomation h4.y img{width:100%;}
  #infomation .info p a{text-decoration:underline;}
  #infomation .info .double .text-box{
    width:570px;
    padding:30px 10px 30px 20px;
  }
  #infomation .info .double .text-box.fl,
  #infomation .info .double .text-box.fr{float:none;}
  #infomation .info .double .text-box.fr{
    border-left:none;
    border-top:1px solid #c68888;
  }
  #infomation .info .double h5{
    width:280px;
    font-size:27px;
  }
  #infomation .info .double p{
    font-size:22px;
  }
  #infomation .info .double p.fl{
    width:130px;
    margin-left:0px;
  }
  #infomation .info .double p.fr{
    width:420px;
  }
  
  #infomation .info .wide .text-box{
    width:100%;
    padding:30px 0px;
  }
  
  #infomation .contact{width:600px;}
  #infomation .contact .frame_top,
  #infomation .contact .frame_btm,
  #infomation .contact .frame_top img,
  #infomation .contact .frame_btm img{width:100%;}
  #infomation .contact .fl,
  #infomation .contact .fr{float:none;}
  
  #infomation p.senkou{
    width:550px;
    font-size:16px;
  }
  
  #infomation .contact h5{
    width:560px;
    margin:14px auto 10px;
    padding-top:0px;
    padding-bottom:20px;
    text-align:center;
    border-bottom:1px solid #fff;
  }
  #infomation .contact .text{
    width:560px;
    border-left:none;
    padding-right:10px;
    padding-left:30px;
  }
  #infomation .contact .text p{font-size:22px;}
  #infomation .contact .text p a{color:#fff;text-decoration:underline;}
  #infomation .contact .text p.attent{font-size:18px;}

  #infomation .sns-wrap{
    width:420px;
    margin:auto;
  }
  #infomation .sns-link{width:100%;}
  #infomation .sns-link .sns{width:180px;}
  #infomation .sns-link .sns a{transition:none;}
  #infomation .sns-link .sns a:hover{opacity:1;}
}


#infomation .ticket-link{
  width:100%;
  margin:auto;
  background:rgba(255,255,255,0.1);
}
#infomation .ticket-link .frame_top img{
  width:100%;
  vertical-align:top;
}
#infomation .ticket-link .frame_btm img{
  width:100%;
}
#infomation .ticket-link h5{
  font-size:21px;
  font-weight:bold;
  line-height:1.8;
  text-align:center;
}
#infomation .ticket-link .box{text-align:center;}
#infomation .ticket-link ul{}
#infomation .ticket-link ul li{
  font-size:20px;
  line-height:1.6;
  text-align:center;
}
#infomation .ticket-link ul li a{color:#fff;}
#infomation .ticket-link ul li a:hover{text-decoration:underline;}

@media screen and (max-width:640px){
  #infomation .ticket-link ul li a{text-decoration:underline;}
}

/* carusel
--------------------------------------- */
#carusel.section{
  border-top:1px solid #fff;
  border-bottom:1px solid #fff;
}
#carusel .inner{
  width:1300px;
width:100%;
  position:relative;
}
#carusel .slider{
  width:1292px;
width:100%;
height:323px;
  margin:auto;
}
#carusel .copy{
  position:absolute;
  bottom:12px;
  right:8px;
  width:164px;
  height:9px;
}
@media screen and (max-width:1292px){
  #carusel .inner,
  #carusel .slider{width:100%;}
}
@media screen and (max-width:640px){
  #carusel .inner,
  #carusel .slider{width:640px;}
  #carusel .copy{bottom:20px;}
}

/* about
--------------------------------------- */
#about.section{
  width:1300px;
  min-height:937px;
  margin:auto;
  background:url(../images/about_bg2023.jpg) #000 0 0 no-repeat;
  xbackground-size:1300px 845px;
}
#about h3{
  /*padding-top:138px;
  padding-bottom:40px;*/
}
#about p{
  font-size:20px;
  line-height:2.3;
  text-align:center;
}
#about span.small{
  font-size:12px;
}
#about span.sup{
  vertical-align:top;
  position:relative;
  top:0.3em;
}
/*
#about .btn{
  width:560px;
  margin:50px auto;
}
#about .btn a{
  display:inline-block;
  width:560px;
  padding:20px 0;
  border-radius:38px;
  font-size:28px;
  font-weight:bold;
  color:#FFF;
  line-height:1.5;
  text-align:center;
  text-shadow: 1px 1px 2px rgba(0,0,0,0.5);
  background-image:-webkit-linear-gradient(15deg, #c50f20 20%, #ff828e 100%);
  background-image:        linear-gradient(15deg, #c50f20 20%, #ff828e 100%);
}*/
#about .img{
  width:970px;
  margin:0 auto 80px;
  text-align:center;
}
#about .img ul{}
#about .img ul li{
  float:left;
  width:485px;
}
#about .img p{
  margin-top:6px;
  font-size:12px;
  text-align:right;
}
#about .img p.cap{
  width:164px;
  float:right;
}
#about .mgt{margin-top:200px;}
@media screen and (max-width:1300px){
  #about.section{
    width:100%;
    background-position:center top 120px;
    background-size:100%;
  }
}
@media screen and (max-width:640px){
  #about.section{
    width:640px;
    min-height:461px;
    background-size:100%;
  }
  #about h3{
    padding-top:68px;
    margin-bottom:22px;
  }
  #about p{
    font-size:22px;
    line-height:1.8;
    text-align:left;
    margin-bottom:45px;
  }
  #about span.small{font-size:16px;}
  #about span.sup{top:0.0em;}
  #about .img{
    width:560px;
    margin-left:auto;
    margin-right:auto;
  }
  #about .img img{width:100%;}
  #about .img ul li{
    float:none;
    width:100%;
  }
  #about .img p{margin:0;font-size:16px;}
  #about .mgt{margin-top:20px;}
}

/* cast
--------------------------------------- */
#cast.section{
  background:linear-gradient(-135deg, #454545, #151515);
}
#cast .inner{padding-bottom:30px;}
#cast h3{
  padding-top:96px;
  padding-bottom:80px;
}
#cast .box{margin-bottom:70px;}
#cast .no-photo{}
#cast .fl{
  width:246px;
  margin-top:20px;
  margin-right:44px;
}
#cast .copy{margin-top:5px;font-size:11px;text-align:right;}
#cast .fr{
  width:682px;
}
#cast .fr h4,
#cast .no-photo h4{
  margin-bottom:20px;
  font-size:22px;
  text-align:left;
}
#cast .fr p,
#cast .no-photo p{
  font-size:15px;
  line-height:2.0;
}

#cast .fr p a,
#cast .no-photo p a{
  color:#fff;text-decoration:underline;
}
@media screen and (max-width:640px){
  #cast .fl,
  #cast .fr{float:none;}
  #cast .fl{width:100%;margin:0 auto 40px;text-align:center;}
  #cast .fr{width:600px;}
  #cast .copy{font-size:16px;}
  #cast .fr h4,
  #cast .no-photo h4{font-size:27px;text-align:center;}
  #cast .fr p,
  #cast .no-photo p{font-size:22px;}
}

/* ゲーム「メタルギア シリーズ」
--------------------------------------- */
#series{padding-bottom:100px;}
#series .game{
  width:680px;
  margin:auto;
}
#series .game p{font-size:18px;line-height:1.8;}
@media screen and (max-width:640px){
  #series .game{width:600px;}
  #series .game p{font-size:24px;line-height:1.5;}
}
/* グッズ
--------------------------------------- */
#goods.section{
  background-color:#000;
  /*background:linear-gradient(-135deg, #454545, #151515);*/
}
#goods .inner{padding-bottom:100px;}
#goods .img{
  width:970px;
  margin:0 auto 20px;
}
#goods .attention{line-height:1.5;}
#goods .attention ul{
  margin-bottom:1.0em;
  padding-left:1.0em;
  text-indent:-1.0em;
}
#goods .attention .emphasis{
  margin-bottom:1.0em;
  color:#f00;
  font-weight:600;
}
@media screen and (max-width:640px){
  #goods .img{width:100%;}
  #goods .attention{font-size:21px;}
}

/* footer
--------------------------------------- */
#footer.section{background-color:#0e0e0e;}
#footer .logo{
  padding-top:38px;
  padding-bottom:25px;
  text-align:center;
}
#footer .copy{
  padding-bottom:5px;
  text-align:center;
}
#footer .f-logo{
  width:680px;
  margin:40px auto 40px;
  padding-top:40px;
  border-top:1px solid #fff;
}
#footer .f-logo ul{
  width:340px;
  margin:auto;
}
#footer .f-logo ul li:nth-child(1){float:left;width:125px;}
#footer .f-logo ul li:nth-child(2){float:right;width:180px}
@media screen and (max-width:640px){
  #footer .f-logo{width:600px;}
  #footer .f-logo ul{width:540px;}
  #footer .f-logo ul li:nth-child(1){width:208px;}
  #footer .f-logo ul li:nth-child(2){width:300px}
}

/* page top */
.pagetop-wrap{position:relative;}
#pagetop{
  position:fixed;
  bottom:50px;
  right:20px;
  width:64px;
  display:none;
  opacity:0.7;
  cursor:pointer;
}
#pagetop:hover{opacity:1.0;}
@media screen and (max-width:640px){
  #pagetop{
    bottom:70px;
    right:20px;
    opacity:1.0;
  }
}

/* area-video
--------------------------------------- */
#area-video{
  width:780px;
  margin:0 auto 70px;
}
#area-video h4{
  margin-bottom:30px;
  font-size:24px;
  font-weight:600;
}
#area-video h4 span{border-bottom:2px solid #fff;}
#area-video .video{
  position:relative;
  width:780px;
  height:0;
  margin:auto;
  padding-bottom:56.25%;
  overflow:hidden;
}
#area-video .video iframe,
#area-video .video object,
#area-video .video embed{
  position:absolute;
  top:0;
  left:0;
  width:100%;
  height:100%;
}
@media screen and (max-width:640px){
  #area-video{width:560px;}
  /*#area-video{margin-left:15px;}*/
  #area-video .video{width:560px;height:315px;margin:0;padding:0;}
  /*#area-video{margin-top:450px;}*/
}


/* 汎用
--------------------------------------- */
.disable{display:none;}
.hidden{visibility:hidden;}
/* align */
.fl,.pc-fl{float:left;}
.fr,.pc-fr{float:right;}
.left{text-align:left !important;}
.right{text-align:right !important;}
.center{text-align:center !important;}
.top{vertical-align:top !important;}
.middle{vertical-align:middle !important;}
.bottom{vertical-align:bottom !important;}
.img-left{text-align:left !important;}
.img-right{text-align:right !important;}
.img-center{margin-left:auto;margin-right:auto;text-align:center;}
.hidden{overflow:hidden;}
@media screen and (max-width:640px){
  .pc-fl,.pc-fr{float:none;margin-left:auto;margin-right:auto;text-align:center;}
  .img-left,.img-right{text-align:center !important;}
  .sp-fn{float:none !important;}
}
/* font size */
.fs12{font-size:12px;}
.fs14{font-size:14px;}
.fs16{font-size:16px;}
.fs18{font-size:18px;}
.fs20{font-size:20px;}
.fs24{font-size:24px;}
.fs32{font-size:32px;}
.fs38{font-size:38px;}
/*.small{font-size:0.86em;line-height:1.5;}*/
.small{font-size:0.93em;line-height:1.5;}
.ex-small{font-size:0.75em;line-height:1.5;}
.large{font-size:1.28em;line-height:1.5;}
@media screen and (max-width:640px){
  .fs12,.fs14{font-size:18px;}
  .fs16,.fs18{font-size:20px;}
  .fs20,.fs24{font-size:24px;}
}
/* font style */
.bold,.strong,b{font-weight:600;}
.normal{font-weight:500 !important;}
/*.underline{text-decoration:underline;}*/
.underbar{border-bottom:1px solid #000;}
.nowrap{white-space:nowrap;}
.break{word-wrap:break-word;white-space:normal;}
sup{font-size:0.6em !important;vertical-align:top;}
sub{font-size:0.6em !important;vertical-align:baseline;}
.sup{font-size:0.6em !important;vertical-align:top;position:relative;top:-0.1em;}
.mid{font-size:0.6em !important;font-weight:normal;vertical-align:top;position:relative;top:0.5em;}
/* indent */
.push5{margin-left:5px;}
.push8{margin-left:8px;}
.push10{margin-left:10px;}
.push12{margin-left:12px;}
.push15{margin-left:15px;}
.push18{margin-left:18px;}
.push20{margin-left:20px;}
.pull5{margin-left:-5px;}
.pull8{margin-left:-8px;}
.pull10{margin-left:-10px;}
.pull12{margin-left:-12px;}
.pull15{margin-left:-15px;}
.pull18{margin-left:-18px;}
.pull20{margin-left:-20px;}
.push5em{margin-left:0.5em;}
.push8em{margin-left:0.8em;}
.push10em{margin-left:1.0em;}
.push12em{margin-left:1.2em;}
.push15em{margin-left:1.5em;}
.push18em{margin-left:1.8em;}
.push20em{margin-left:2.0em;}
.pull5em{margin-left:-0.5em;}
.pull8em{margin-left:-0.8em;}
.pull10em{margin-left:-1.0em;}
.pull12em{margin-left:-1.2em;}
.pull15em{margin-left:-1.5em;}
.pull18em{margin-left:-1.8em;}
.pull20em{margin-left:-2.0em;}
.ind5{padding-left:0.5em;text-indent:-0.5em;}
.ind8{padding-left:0.8em;text-indent:-0.8em;}
.ind10{padding-left:1.0em;text-indent:-1.0em;}
.ind12{padding-left:1.2em;text-indent:-1.2em;}
.ind15{padding-left:1.5em;text-indent:-1.5em;}
.ind18{padding-left:1.8em;text-indent:-1.8em;}
.ind20{padding-left:2.0em;text-indent:-2.0em;}
.ind25{padding-left:2.5em;text-indent:-2.5em;}
.ind30{padding-left:3.0em;text-indent:-3.0em;}
.ind35{padding-left:3.5em;text-indent:-3.5em;}
.ind40{padding-left:4.0em;text-indent:-4.0em;}
.ind45{padding-left:4.5em;text-indent:-4.5em;}
.ind50{padding-left:5.0em;text-indent:-5.0em;}
.ind60{padding-left:6.0em;text-indent:-6.0em;}
/* margin */
.mt0{margin-top:0 !important;}
.mt5{margin-top:5px !important;}
.mt8{margin-top:8px !important;}
.mt10{margin-top:10px !important;}
.mt15{margin-top:15px !important;}
.mt20{margin-top:20px !important;}
.mt25{margin-top:25px !important;}
.mt35{margin-top:35px !important;}
.mt30{margin-top:30px !important;}
.mt40{margin-top:40px !important;}
.mt45{margin-top:45px !important;}
.mt50{margin-top:50px !important;}
.mt60{margin-top:60px !important;}
.mt70{margin-top:70px !important;}
.mt80{margin-top:80px !important;}
.mt100{margin-top:100px !important;}
.mt120{margin-top:120px !important;}
.mt140{margin-top:140px !important;}
.mt150{margin-top:150px !important;}
.mt160{margin-top:160px !important;}
.mt180{margin-top:180px !important;}
.mr0{margin-right:0 !important;}
.mr5{margin-right:5px !important;}
.mr10{margin-right:10px !important;}
.mr15{margin-right:15px !important;}
.mr20{margin-right:20px !important;}
.mr25{margin-right:25px !important;}
.mr30{margin-right:30px !important;}
.mr35{margin-right:35px !important;}
.mr40{margin-right:40px !important;}
.mr45{margin-right:45px !important;}
.mr50{margin-right:50px !important;}
.mr60{margin-right:60px !important;}
.mr70{margin-right:70px !important;}
.mr80{margin-right:80px !important;}
.mr100{margin-right:100px !important;}
.mr120{margin-right:120px !important;}
.mr140{margin-right:140px !important;}
.mr150{margin-right:150px !important;}
.mr160{margin-right:160px !important;}
.mr180{margin-right:180px !important;}
.mb0{margin-bottom:0 !important;}
.mb2{margin-bottom:2px !important;}
.mb4{margin-bottom:4px !important;}
.mb5{margin-bottom:5px !important;}
.mb8{margin-bottom:8px !important;}
.mb10{margin-bottom:10px !important;}
.mb12{margin-bottom:12px !important;}
.mb15{margin-bottom:15px !important;}
.mb18{margin-bottom:18px !important;}
.mb20{margin-bottom:20px !important;}
.mb25{margin-bottom:25px !important;}
.mb30{margin-bottom:30px !important;}
.mb35{margin-bottom:35px !important;}
.mb40{margin-bottom:40px !important;}
.mb45{margin-bottom:45px !important;}
.mb50{margin-bottom:50px !important;}
.mb60{margin-bottom:60px !important;}
.mb70{margin-bottom:70px !important;}
.mb80{margin-bottom:80px !important;}
.mb100{margin-bottom:100px !important;}
.mb120{margin-bottom:120px !important;}
.mb140{margin-bottom:140px !important;}
.mb150{margin-bottom:150px !important;}
.mb160{margin-bottom:160px !important;}
.mb180{margin-bottom:180px !important;}
.ml0{margin-left:0 !important;}
.ml5{margin-left:5px !important;}
.ml10{margin-left:10px !important;}
.ml15{margin-left:15px !important;}
.ml20{margin-left:20px !important;}
.ml25{margin-left:25px !important;}
.ml30{margin-left:30px !important;}
.ml35{margin-left:35px !important;}
.ml40{margin-left:40px !important;}
.ml45{margin-left:45px !important;}
.ml50{margin-left:50px !important;}
.ml60{margin-left:60px !important;}
.ml70{margin-left:70px !important;}
.ml80{margin-left:80px !important;}
.ml100{margin-left:100px !important;}
.ml120{margin-left:120px !important;}
.ml140{margin-left:140px !important;}
.ml150{margin-left:150px !important;}
.ml160{margin-left:160px !important;}
.ml180{margin-left:180px !important;}
.mt5em{margin-top:0.5em !important;}
.mt8em{margin-top:0.8em !important;}
.mt10em{margin-top:1.0em !important;}
.mt15em{margin-top:1.5em !important;}
.mt20em{margin-top:2.0em !important;}
.mr5em{margin-right:0.5em !important;}
.mr8em{margin-right:0.8em !important;}
.mr10em{margin-right:1.0em !important;}
.mr15em{margin-right:1.5em !important;}
.mr20em{margin-right:2.0em !important;}
.mb5em{margin-bottom:0.5em !important;}
.mb8em{margin-bottom:0.8em !important;}
.mb10em{margin-bottom:1.0em !important;}
.mb15em{margin-bottom:1.5em !important;}
.mb20em{margin-bottom:2.0em !important;}
.ml5em{margin-left:0.5em !important;}
.ml8em{margin-left:0.8em !important;}
.ml10em{margin-left:1.0em !important;}
.ml15em{margin-left:1.5em !important;}
.ml20em{margin-left:2.0em !important;}
.ml60em{margin-left:6.0em !important;}
/* padding */
.p0{padding:0 !important;}
.p5{padding:5px !important;}
.p8{padding:8px !important;}
.p10{padding:10px !important;}
.p15{padding:15px !important;}
.p20{padding:20px !important;}
.p25{padding:25px !important;}
.p30{padding:30px !important;}
.p35{padding:35px !important;}
.p40{padding:40px !important;}
.p45{padding:45px !important;}
.p50{padding:50px !important;}
.pt0{padding-top:0 !important;}
.pt5{padding-top:5px !important;}
.pt8{padding-top:8px !important;}
.pt10{padding-top:10px !important;}
.pt15{padding-top:15px !important;}
.pt20{padding-top:20px !important;}
.pt25{padding-top:25px !important;}
.pt30{padding-top:30px !important;}
.pt35{padding-top:35px !important;}
.pt40{padding-top:40px !important;}
.pt45{padding-top:45px !important;}
.pt50{padding-top:50px !important;}
.pt60{padding-top:60px !important;}
.pt70{padding-top:70px !important;}
.pt80{padding-top:80px !important;}
.pt100{padding-top:100px !important;}
.pr0{padding-right:0 !important;}
.pr5{padding-right:5px !important;}
.pr8{padding-right:8px !important;}
.pr10{padding-right:10px !important;}
.pr15{padding-right:15px !important;}
.pr20{padding-right:20px !important;}
.pr25{padding-right:25px !important;}
.pr30{padding-right:30px !important;}
.pr35{padding-right:35px !important;}
.pr40{padding-right:40px !important;}
.pr45{padding-right:45px !important;}
.pr50{padding-right:50px !important;}
.pr60{padding-right:60px !important;}
.pr70{padding-right:70px !important;}
.pr80{padding-right:80px !important;}
.pr100{padding-right:100px !important;}
.pb0{padding-bottom:0 !important;}
.pb5{padding-bottom:5px !important;}
.pb8{padding-bottom:8px !important;}
.pb10{padding-bottom:10px !important;}
.pb15{padding-bottom:15px !important;}
.pb20{padding-bottom:20px !important;}
.pb25{padding-bottom:25px !important;}
.pb30{padding-bottom:30px !important;}
.pb35{padding-bottom:35px !important;}
.pb40{padding-bottom:40px !important;}
.pb45{padding-bottom:45px !important;}
.pb50{padding-bottom:50px !important;}
.pb60{padding-bottom:60px !important;}
.pb70{padding-bottom:70px !important;}
.pb80{padding-bottom:80px !important;}
.pb100{padding-bottom:100px !important;}
.pl0{padding-left:0 !important;}
.pl5{padding-left:5px !important;}
.pl8{padding-left:8px !important;}
.pl10{padding-left:10px !important;}
.pl15{padding-left:15px !important;}
.pl20{padding-left:20px !important;}
.pl25{padding-left:25px !important;}
.pl30{padding-left:30px !important;}
.pl35{padding-left:35px !important;}
.pl40{padding-left:40px !important;}
.pl45{padding-left:45px !important;}
.pl50{padding-left:50px !important;}
.pl60{padding-left:60px !important;}
.pl70{padding-left:70px !important;}
.pl80{padding-left:80px !important;}
.pl100{padding-left:100px !important;}
/* width */
.wTri{width:33%;}
.wQuart{width:24.5%}
.wHalf{width:49.8%}
.wWide{width:66%}
.wCover{width:96%}
.wFull{width:99.6%}
.w2per{width:2%;}
.w3per{width:3%;}
.w5per{width:5%;}
.w7per{width:7%;}
.w8per{width:8%;}
.w10per{width:10%;}
.w20per{width:20%;}
.w30per{width:30%;}
.w40per{width:40%;}
.w50per{width:50%;}
.w60per{width:60%;}
.w70per{width:70%;}
.w80per{width:80%;}
.w90per{width:90%;}
.w100per{width:100%;}
.w24per{width:24%;}
.w25per{width:25%;}
.w28per{width:28%;}
.w33per{width:33%;}
.w34per{width:34%;}
.w45per{width:45%;}
.w48per{width:48%;}
.w52per{width:52%;}
.w55per{width:55%;}
.w58per{width:58%;}
.w67per{width:67%;}
.w72per{width:72%;}
.w75per{width:75%;}
.w78per{width:78%;}
.w82per{width:82%;}
@media screen and (max-width:640px){
  .sp-flex0{width:0% !important;}
  .sp-flex5{width:5% !important;}
  .sp-flex10{width:10% !important;}
  .sp-flex20{width:20% !important;}
  .sp-flex30{width:30% !important;}
  .sp-flex40{width:40% !important;}
  .sp-flex50{width:50% !important;}
  .sp-flex60{width:60% !important;}
  .sp-flex70{width:70% !important;}
  .sp-flex80{width:80% !important;}
  .sp-flex90{width:90% !important;}
  .sp-flex{width:100% !important;}
  .sp-flex33{width:33% !important;}
  .sp-flex34{width:34% !important;}
  .sp-flex67{width:67% !important;}
  .sp-flex25{width:25% !important;}
  .sp-flex75{width:75% !important;}
  .sp-flex28{width:28% !important;}
  .sp-flex72{width:72% !important;}
  .sp-flex48{width:48% !important;}
  .sp-flex58{width:58% !important;}
  .sp-flex45{width:45% !important;}
  .sp-flex55{width:55% !important;}
}
.w320{width:320px;margin:auto;}
.w480{width:480px;margin:auto;}
.w580{width:580px;margin:auto;}
.w680{width:680px;margin:auto;}
.w780{width:780px;margin:auto;}
.w880{width:880px;margin:auto;}
.w972{width:972px;}
@media screen and (max-width:640px){
  .w320,
  .w480,
  .w580,
  .w680,
  .w780,
  .w880,
  .w972{width:600px;}
}
/* img */
@media screen and (max-width:640px){
  .sp-img5 img{width:5%;}
  .sp-img10 img{width:10%;}
  .sp-img20 img{width:20%;}
  .sp-img30 img{width:30%;}
  .sp-img40 img{width:40%;}
  .sp-img50 img{width:50%;}
  .sp-img60 img{width:60%;}
  .sp-img70 img{width:70%;}
  .sp-img80 img{width:80%;}
  .sp-img90 img{width:90%;}
  .sp-img100 img{width:100%;}
}
/* sp clearfix */
@media screen and (max-width:640px){
  .sp-cf:before,
  .sp-cf:after{content:'';display:table;}
  .sp-cf:after{clear:both;}
  .sp-cf{*zoom:1;}
}
