@charset "utf-8";
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, font, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td {
	margin:0;
	padding:0;
	border:0;
	outline:0;
	font-weight:inherit;
	font-style:inherit;
	font-size:100%;
	font-family:inherit;
	list-style:none;
}

main body {
  font-family:'Noto Serif JP', serif,'Yu Mincho Light','YuMincho','Yu Mincho','游明朝体','klee','ヒラギノ明朝 ProN','Hiragino Mincho ProN',sans-serif;
  line-height:1.8;
  color: #1b1b22;
  /*  z-index: 999;*/
  margin: 0 auto;
  }
  main{
    font-family:'Noto Serif JP', serif,'メイリオ', 'Meiryo','TsukuARdGothic-Regular','ヒラギノ角ゴシック','Hiragino Sans','Hiragino Kaku Gothic ProN','ヒラギノ角ゴ ProN W3',sans-serif;
    line-height:1.8;
    position: relative;
    z-index: 10;
}
.gdbg{
  background: #060505;
  background-size: 600% 600%;
  padding-top: 0;
}
@-webkit-keyframes AnimationName {
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
@-moz-keyframes AnimationName {
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
@keyframes AnimationName {
  0%{background-position:0% 50%}
  50%{background-position:100% 50%}
  100%{background-position:0% 50%}
}
main #warpper{
  margin: 0 auto;
	vertical-align:middle;
}

main #footer {
    font-family: 'Anton', sans-serif;
		text-align:center;
		padding:2em 0;
	}
main footer img{
  width: 100px;
  vertical-align: text-top;
}
main a {
text-decoration:none;
color: #222222;
transition: .4s;
}
main a:hover {
text-decoration:none;
color: #000590;
}

main #page-top {
  position: fixed;
  bottom: 20px;
  right: 20px;
  font-size: 100%;
  z-index: 1000;
  /* width:  */
}
main #page-top a {
    background: rgba(255, 0, 0, 0.68);
    text-decoration: none;
    width: 100px;
    padding: 10px 0;
    text-align: center;
    display: block;
    border-radius: 2px;
	color:#fff;
    font-weight: bold;
}
main #page-top a:hover {
    text-decoration: none;
    background: #5c5c5c;
	opacity:0.9;
}
main #page-top2 {
    position: fixed;
    bottom: 90px !important;
    right: 0;
    font-size: 100%;
    z-index: 30;
    width: auto;
}
main #page-top2 a {
    text-decoration: none;
    width: 150px;
    padding: 20px 0 0 0;
    text-align: center;
    display: block;
    border-radius: 2px;
    color: #1c0b0b;
    font-weight: bold;
    /* background: #ff0; */
}
main p#page-top2 a span {
    border-top: 2px solid;
    font-size: 5em;
}

main #formbtn {
  position: fixed;
  bottom: 180px !important;
  right: 0;
  font-size: 100%;
  z-index: 30;
}
main #formbtn a {
  text-decoration: none;
  width: 8em;
  /* padding: 20px 0 0 0; */
  text-align: center;
  display: block;
  border-radius: 2px;
  color: rgb(255, 255, 0);
  font-weight: bold;
  background: #ff1b76;
}
main p#formbtn a img {
  width: 100%;
}
main header.nav{
  z-index: auto;
}
main footer {
	text-align:center;
/*	padding-top: 100px;*/
	margin-bottom: 50px;
	}
main footer .bar {
	margin-bottom:2em;
	}

main footer a {
	text-decoration:none;
	color:#000000;
  margin-top: 20px;
	}

main h2{
font-family: "nitalago-ruika", sans-serif;
font-style: normal;
  font-size: 1.3em;
  color: #ffff00;
  margin: 20px auto;
  letter-spacing: .3em;
  /* margin-top: 20px; */
  letter-spacing: normal;
}
.black{
  margin: 0 auto;
  width: 100%;
  /* background-color: rgb(255, 255, 255); */
  /* padding: 20px; */
  /* box-shadow: rgba(160, 160, 160, 0.66) 0 0 10px 0; */
  border-radius: 5px;
  /* margin-top: 150px; */
  /* max-width: 850px; */
}
/* section.black:last-of-type{
  margin-bottom: 70px;
} */
.bgf{
  overflow: hidden;
  margin: 30px;
}
.bgf h2 span{
    font-size: .9em;
}
.bgf h2{
  color: #c40000;
  border-bottom: 1px solid #c40000;
  background: none;
  padding: 0;
  letter-spacing: .1em;
    font-size: 1.8em;
    letter-spacing: normal;
}

.bgf img{
    margin: 0 auto;
    width: 70%;
    display: block;
    margin-bottom: 30px;
}
main small{
  font-size: .8em;
  text-align: left;
  color: #fff;
}

i.fa-angle-right{
  color: #ff3d00;
}
i.fa-external-link-alt{
  color: #fdba6a;
}
i.fa-phone{
  color: #7b7b7b;
}
i.fa-envelope{
  color: #ff3d00;
}
main p{
  color: #1b1b22;
}
main p.bold{
  font-size: 1.4em;
  color: #c40000;
  margin-bottom: 10px;
}
main div.bgf p a{
  font-size: 1.4em;
/*  padding-bottom: 10px;*/
  display: block;
}
main div.bgf p.link a{
  font-size: 1em;
  display: inline;
  color: #ff3d00;
}
main div.footer{
  text-align: center;
}
main div.footer p  a{
  display: inline-block;
  font-size: 14px;
}
main div.footer p img{
  width: 100px;
  vertical-align: text-bottom;
}
table {
width: 100%;
table-layout: fixed;
word-break: break-all;
word-wrap: break-all;
}
main article{
  margin-bottom: 0;
}
.content_bnr{
  margin: 90px auto;
}
/**************** sns ****************/
main #top{
  position: relative;
  margin: 0 auto;
}
main #sns{
  display: block;
  text-align: center;
  margin: 2rem auto;
}
div.sns_icon{
  margin: 20px auto;
  width: auto;
  display: block;
  text-align: center;

}
div.sns_icon  ul {
  padding: 0 0.5em;
  position: relative;
}
div.sns_icon li {
  width: 3%;
  display: inline-block;
  margin: 0 1rem;
  border: none;
}
div.sns_icon li img {
  width: 100%;
  transition: all .8s;
}
/**************** FB ****************/
.fb_iframe_widget > span {
	vertical-align: baseline !important;
}

/*動く画像*/
#roop {
  width: 100%;
  height: 55px;
  background: url(../img/slide_7.jpg) repeat-x;
  background-position: 0 0;
  -webkit-animation: bgroop 20s linear infinite;
  animation: bgroop 20s linear infinite;
  /* transform: rotate(4deg); */
}
#roop2 {
  width: 100%;
  height: 55px;
  background: url(../img/slide_6.jpg) repeat-x;
  background-position: 0 0;
  -webkit-animation: bgroop2 20s linear infinite;
  animation: bgroop2 20s linear infinite;
  /* transform: rotate(357deg); */
}
#roop3 {
  width: 100%;
  height: 55px;
  background: url(../img/slide_2.jpg) repeat-x;
  background-position: 0 0;
  -webkit-animation: bgroop2 20s linear infinite;
  animation: bgroop2 20s linear infinite;
  /* transform: rotate(363deg); */
}
#roop4 {
  width: 100%;
  height: 80px;
  background: url(../img/slide_5.jpg) repeat-x;
  background-position: 0 0;
  -webkit-animation: bgroop 20s linear infinite;
  animation: bgroop 20s linear infinite;
  /* transform: rotate(3deg); */
}
@-webkit-keyframes bgroop {
  from {
      background-position: 0  0;
  }
  to {
      background-position: -1956px 0;
  }
}
@keyframes bgroop {
  from {
      background-position: 0 0;
  }
  to {
      background-position: -1956px 0;
  }
}
@-webkit-keyframes bgroop2 {
  from {
    background-position: -1956px 0;
  }
  to {
    background-position: 0  0;
  }
}
@keyframes bgroop2 {
  from {
    background-position: -1956px 0;
  }
  to {
    background-position: 0 0;
  }
}


/**************** PC ****************/

/* PC用 */

/**************** PC ****************/

@media only screen and (min-width:769px){

/**************** main img ****************/

main #main_img {
  margin: 0 auto;
  max-width: 1980px;
  position: relative;
  }
main #main_img img{
  margin: 0 auto;
  width: 100%;
	/* display: block; */
  max-width: 1980px;
  position: relative;
  }
@keyframes fadeIn {
  0% {opacity: 0}
  100% {opacity: 1}
}
/**************** nav ****************/
main nav.gloval_nav{
  margin: 0 auto;
  text-align: center;
  font-weight: bold;
  margin-top: 3rem;
}
/* .gloval_nav{
  background: #1e1e22;
 padding: 15px 0;
} */
.gloval_nav ul{
  margin: 0 auto;
  width: 100%;
  max-width:  1000px
}
.gloval_nav li{
font-family: "nitalago-ruika", sans-serif;
font-weight: 800;
font-style: normal;
  color: #ffffff;
  display: inline-block;
  width: 32%;
  text-align: center;
}
.gloval_nav a{
  display: block;
  padding: 15px;
  text-decoration: none;
  font-weight: bold;
  font-size: .9em;
  letter-spacing: 0.1em;
  color: #ff0;
  margin: 0 auto;
  transition: .4s;
  font-weight: 400;
}
.gloval_nav a span{
/*  margin: 0 50px;*/
  font-size: 1.2em;
  letter-spacing: .08em;
  display: inline-block;
  /* color: black; */
  transition: .4s;

}
.gloval_nav a:hover{
  color: #fff;
}
/* .gloval_nav li a span:hover{
  color: #ff0b69;
} */

/*nav 固定表記*/
/*
.fixed {
    position: fixed;
    top: 0;
    width: 100%;
    z-index: 10000;
}
*/

main section p{
  margin: 0 auto;
    line-height: 1.8em;
}
.h2img img{
  width: 80%;
  max-width: 800px;
}
/**************** INTRODUCTION ****************/
p.bold{
  font-size: 1.5em;
  color: #a5116c;
}
#intro iframe{
  margin: 0 auto;
  width: 100%;
  margin-top: 40px;
}
section.black h2{
	margin-top: 60px;
}
.ta3 th i.fas{
  color: #cba06d;
}
/*tabel3*/
.ta3{
  width: 90%;
  margin: 0 auto;
  text-align: left;
  border-collapse: collapse;
  border: 1px solid #ff7d7d;
  table-layout: fixed;
  border: none;
}
.ta3 th{
  width: 15%;
  padding: 2px 0;
  background: #ffffff;
  font-weight: normal;
  text-align: right;
}
.ta3 td{
  width: 70%;
  padding: 2px 0;
}
/**************** haraimodoshi ****************/
a.att{
  margin: 0 auto;
  text-align: center;
  color: red;
  text-decoration: underline;
    }
#att h3{
  font-size: 1.1em;
  font-weight: bold;
  color: #411171;
  border-bottom: 1px solid #411171;
  margin: 20px 0;
  letter-spacing: .2em;
}
p.bold{
  font-size: 1.5em;
  color: #a5116c;
}
#att h3:first-of-type{
margin-top: 50px;
}
main div.bgf p.link a{
  font-size: 1em;
  display: inline;
  color: #ff3d00;
}

}
section.black hr{
  width: 80%;
  border: solid 1px #a70000;
}

.ta1{
  width: 90%;
  margin: 50px auto;
  text-align: left;
  border-collapse: collapse;
  border: 1px solid rgba(255, 255, 255, 0);
  table-layout: fixed;
}

/*----------pc非表示-----------*/
br.sp-br{
display: none;
}
img.sp{
  display: none;
}
a.sp{
  display: none;
}
a.pc{
  display: block;
}
/* } */
br.pc-br{
display: block;
}
/*----------スケジュール-----------*/
.schedule_contents{
  margin: 0 auto;
  padding: 4rem 2rem;
  background-color: #ffffff;
  opacity: 1;
  background-image: radial-gradient(circle at center center, #fbfbfb, #ffffff), repeating-radial-gradient(circle at center center, #fbfbfb, #fbfbfb, 31px, rgba(255, 255, 255, 0) 62px, rgba(255, 255, 255, 0) 31px);
  background-blend-mode: multiply;
}
.schedule_contents h3{
  margin: 0 auto;
  text-align: center;
  font-family: "a-otf-midashi-go-mb31-pr6n", sans-serif;
  font-size: 2rem;
  font-weight: bold;
  color: #1c0b0b;
}
/*----------キャンペーン-----------*/
.bgf_none{
  margin: 0;
}
h3#kiyaku{
  letter-spacing: .5rem;
}
main a.kiyaku:hover {
  text-decoration: underline;
  color: #c40000;
  }
.tw{
  color: #1d9bf0;
}
.line{
  color: #06c755;
}
span.tw,span.line{
  font-size: 1.8rem;
}
main .campaign{
  margin: 0 auto;
  /* width: 100%; */
  padding: 4rem 2rem;
  background-color: #000;
}
main .campaign2{
  background-color: #000;
}
main .campaign small{
  text-align: left;
  color: #fff;
}
main .campaign_box{
  margin: 0 auto;
  /* width: 100%; */
  /* background-color: #fff; */
  /* padding: 2rem; */
  text-align: center;
}
main .campaign h2{
  margin: 3rem 0;
  text-align: center;
  font-size: 3rem;
  color: #fffb71;
  font-family: "nitalago-ruika", sans-serif;
  border-bottom: none;
  width: auto;
  font-weight: 500;
  line-height: 3.5rem;
}
main .campaign_box h2{
  margin: 3rem 0;
  text-align: center;
  font-size: 3rem;
  color: rgb(204, 48, 48);
  font-family: "nitalago-ruika", sans-serif;
  border-bottom: none;
  width: auto;
}
main .campaign p.triangle2{
  font-size: 2.5rem;
  margin: 6rem auto 1rem auto;
  display: block;
  color: #006605;
  font-family: "nitalago-ruika", sans-serif;
  font-weight: 500;
}
main .campaign_box h3,h3.flow_tryangle {
  text-align: center;
  font-size: 2.5rem;
  /* display: inline-block; */
  margin: 0 auto;
  padding: 20px 0;
  font-family: "nitalago-ruika","RocknRoll One", sans-serif;
  color: #fff;
  position: relative;
  }
  main .campaign_box h3.triangle {
    padding-bottom: 4rem;
    margin-bottom: 2rem;
    }
main .campaign_box h3.triangle::after {
  content: '';
  position: absolute;
  bottom: 0;
  left: 50%;
  transform: translateX(-50%);
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 17px 12px 0 12px;
  border-color: #c2ab2c rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0);
}
main .campaign p,main .campaign_box p{
  margin: 5px 0;
  font-weight: 700;
  font-style: normal;
  font-size: 1.9rem;
  color: #ffffff;
  font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
  text-align: center;
  width: auto;
}
main .campaign_box p{
  margin: 0 auto;
  font-style: normal;
  font-size: 3rem;
  color: #ff0;
  font-family: "nitalago-ruika", sans-serif;
  font-weight: 500;
  margin-top: 50px;
}
p.poyon{
  position: relative;
  margin-bottom: 0.2rem;
  font-weight: bold;
  font-size: 26px;
  text-align: center;
}
p.poyon::before{
  position: absolute;
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
  color: #a20000;
  font-size: 10rem;
  text-transform: uppercase;
  content: 'Follow me!';
  z-index: -1;
  font-family: 'bebas-neue-pro', sans-serif;
  font-weight: bold;
}
p.present{
  color: #fff;
}
.present{
  margin: 0 auto;
  max-width: 1100px;
  display: flex;
  justify-content: center;
  margin-top: 3rem;
  flex-wrap: wrap;
}
main .present figure{
  margin: 1rem;
  width: 95%;
  text-align: center;
  border-radius: 2px;
}
main .present figure.multiple{
  margin: 1rem;
  width: 30%;
  text-align: center;
  border-radius: 2px;
}
main .present figcaption{
  margin: 0 auto;
  color:  #fffb71;
  font-size: 1.8rem;
  font-weight: bold;
  margin-bottom: 1rem;
  display: block;
  background: #07122e8c;
  padding: .7rem;
  border-radius: 5px;
}
main .present figcaption span{
  margin: 0 auto;
  display: block;
  color: #ffffff;
  font-weight: bold;
  font-size: 20px;
}
main .campaign img {
  margin: 0 auto;
  width: 100%;
  max-width: 900px;
  display: block;
  text-align: center;
  }
  main .campaign small{
    margin: 1rem auto;
    width: 100%;
    max-width: 900px;
    display: block;
    text-align: center;
    color: #fff;
    }
    main .campaign small a{
      color: #fff;
      text-decoration: underline;
      }
main .campaign_box img {
  margin: 0 auto;
  width: 100%;
  max-width: 900px;
  display: block;
  text-align: center;
  }
  main .campaign_box .twitter a.line img {
    margin: 0 auto;
    width: auto;
    max-width: 900px;
    display: block;
    text-align: center;
    }
main .campaign_box small {
  margin: 1rem auto;
  display: block;
  text-align: left;
  width: 90%;
}
main .campaign span {
  font-size: 2.6rem;
}
main .campaign p.schedule {
  margin: 0 auto;
  text-align: center;
  font-size: 3rem;
  border-bottom: 3px dotted #f2ff00;
  margin-bottom: 2rem;
  color: #fff;
  max-width: 1100px;
}
main p.schedule {
  font-family: var(--mono);
  margin: 0 auto;
  text-align: left;
  font-size: 3rem;
  border-bottom: 2px dashed #ff0;
  margin-bottom: 2rem;
  color: #fff;
  max-width: 1100px;
}
main .campaign p.schedule span {
  font-size: 2rem;
}
main .campaign p.cp_end {
  color: #ff0;
  position: relative;
  margin: 0 auto;
  text-align: center;
  padding: 2.5rem;
  /* border: 2px solid #ff0; */
  font-size: 2.5rem;
  /* background: rgba(255, 255, 255, 0.5); */
}
p.cp_end:before,
p.cp_end:after {
  position: absolute;
  left: 0;
  width: 100%;
  content: '';
  border-top: 4px dotted #ff0;
}
p.cp_end:before {
  top: 6px;
}
p.cp_end:after {
  bottom: 6px;
}
ul.oubo {
    margin: 0 auto;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    align-items: stretch;
    justify-content: center;
    max-width: 1280px;
  }
.oubo h4 {
  font-family: 'bebas-neue-pro', sans-serif;
  font-weight: 600;
  font-size: 4rem;
  margin-bottom: 10px;
  text-align: center;
  background: #1c0b0b;
  /* border: 2px solid #ff3489; */
  border-radius: 2px;
  padding: 0.3rem;
  color: #ffffff;
  /* margin-top: -13%; */
    }
.oubo h5{
    font-family: "nitalago-ruika", sans-serif;
    font-weight: bold;
    font-size: 2.3rem;
    color: #2c306d;
    margin-bottom: 1rem;
    }
ul.oubo li {
  border: 2px solid #1c0b0b;
  padding: 20px;
  margin: 10px;
  font-weight: 700;
  background-color: #faff55;
  border-radius: 4px;
  font-size: 1.5rem;
  line-height: normal;
  color: #160c0c;
}
ul.oubo li {
    width: 19%;
  }

.twitter a {
    background: #34b1ff;
    border-radius: 4px;
    color: #fff;
    font-weight: bold;
    padding: 10px;
    margin: 20px auto;
    width: 90%;
    display: block;
  }
  .bnr_type{
    margin: 3rem auto;
    width: 90%;
    max-width: none;
  }
  .bnr_type a{
    background: none;
    width: 90%;
    max-width: none;
  }
div.twitter{
  margin: 0 auto;
  max-width: 1000px;
}
  .twitter a.line {
    background: #00b901;
  }
.twitter a:hover{
  color: #f6ff00;
}
.twitter p {
    text-align: center;
  }
a.kiyaku {
    text-decoration: underline;
    font-size: 2rem;
    color: #c40000;
  }
.kiyaku p {
    text-align: left;
  }
  .terms{
    margin: 0 auto;
    width: 80%;
    height: 350px;
    text-align: left;
    overflow-y: scroll;
    margin-bottom: 2em;
    border: solid 1px #ff0;
    background: #0b0b0ddb;
    max-width: 1000px;
    border-radius: 10px;
}
.campaign_box .terms p{
    margin: 0 auto;
    font-size: .95em;
    padding: 1.5em 2em;
    font-weight: 300;
    text-align: left;
    font-family: a-otf-midashi-go-mb31-pr6n, sans-serif;
    color: #fff;
}
.campaign_box .terms p span{
    font-size: 1em;
    font-weight: bold;
}
.campaign_box .terms a{
    color: #000;
    text-decoration: underline;
    font-size: 1em;
    display: inline-block;
    vertical-align: bottom;
}
.campaign_box .terms p span.red{
    font-weight: normal;
    color: red;
}
.campaign_box .terms p span.list{
    font-weight: normal;
    padding-left: 6em;
}
.terms::-webkit-scrollbar{
    width: 15px;
}
.terms::-webkit-scrollbar-thumb{
    background: #ff0;
    border-radius: 100vh;
}
.terms::-webkit-scrollbar-track-piece:start{
    background: #000;
    border-radius: 10px;
}
.terms::-webkit-scrollbar-track-piece:end{
    background: #000;
    border-radius: 10px;
}
.flow{
  margin:0 auto 6rem auto;
  width: 100%;
}
.sec_box{
  max-width: 1100px;
}
img.title_img{
  margin: 0 auto;
  display: inline-block;
  width: 6%;
}
.bnr_topimg{
  position: absolute;
  bottom: 17%;
  right: .5%;
  width: 20%;
  max-width: 100%;
}
.bnr_topimg img{
  margin: 1rem auto;
  width: 100%;
}
.bnr_topimg2{
  position: absolute;
  bottom: 4%;
  left: 11%;
  width: 10%;
  max-width: 100%;
}
.bnr_topimg2 img{
  margin: 1rem auto;
  width: 100%;
}
/**************** MOBILE ****************/

/* モニター幅750px以下 */

/**************** MOBILE ****************/

@media only screen and (max-width:768px){


/**************** HEADER ****************/
/**************** main img ****************/

main #main_img img{
  margin: 0 auto;
  width: 100%;
	/* display: block; */
  max-width: 1000px;
  }
main #main_img a.bnr_topimg2 img{
  margin: 1rem auto;
  width: 95%;
  }
  div.sns_icon li {
    width: 10%;
  }
  main::before{
    background:url(../img/bg_sp.jpg);
    background-position:center center;
  }
  main #warpper.warpper_bg{
    background-size: 180%;   background-position:center center;
    background-repeat:repeat;
  }
main .bgf h2{
  margin: 0 auto;
  width: 100%;
  margin-bottom: 20px;
  font-size: 2rem;
}
main p{
  margin: 0 auto;
  /* width: 90%; */
}
main h2 img{
  width: 100%
}
.black{
  margin: 0 auto;
  border-radius: 3px;
}
/* section.black:last-of-type{
  margin-bottom: 50px;
} */
.bgf{
  margin: 20px 0;
}
.bgf_none{
  margin: 0;
}
.bgf img{
    width: 90%;
}
img.title_img{
  width: 13%;
}
main .gloval_nav{
  display: none;
}
/* main section{
margin: 50px 0;
} */

p.bold{
  line-height: 30px;
}
.bnr_topimg{
  position: inherit;
  bottom: inherit;
  right: inherit;
  width: 95%;
  margin: 0 auto;
}
.bnr_topimg img{
  margin: 0 auto;
  width: 100%;
}
.bnr_topimg2{
  position: inherit;
  bottom: inherit;
  left: inherit;
  width: 95%;
  margin: 1rem auto;
}
.bnr_topimg2 img{
  margin: 0 auto;
  width: 100%;
}

/**************** スケジュール ****************/
.schedule_contents h3{
  font-size: 1.4rem;
}
/**************** INTRODUCTION ****************/
#intro {
	background-size:cover;
	}

#intro h3 {
	font-size:150%;
	width:100%;
	text-align:left;
	line-height:1.2;
	display:inline-block;
	color: #d60051;
	}
#intro  h3.heart {
	text-indent : -1em;
	padding-left : 1em;
	}
#intro iframe{
  margin: 0 auto;
  width: 90%;
  display: block;
  margin-top: 40px;
}
/*tabel3*/
.ta3{
  margin: 0 auto;
  width: 90%;
  font-size: 14px;
  display: block;
}
.ta3 th{
  width: 35%;
  padding: 2px 0;
  background-color: rgba(234, 234, 234, 0.82);
  border: solid 1px rgba(144, 144, 144, 0.5);
  text-align: center;
}
.ta3 td{
  width: 65%;
  padding: 10px;
  border: solid 1px rgba(144, 144, 144, 0.5);
}


/*tabel2*/
table.ta2{
  font-size: .9em;
}
.ta2{
  width: 95%;
  margin: 0 auto;
  text-align: left;
  border-collapse: collapse;
/*  border: 1px solid #7d7dff;*/
/*↓文字はみ出し対策*/
  word-break: break-all;
  word-wrap: break-all;
  margin-top: 20px;
}
.ta2 tr{
  width: 100%;
}
.ta2 th{
  padding: 10px 5px;
  width: 110px;
  font-size: 13px;
}
.ta2 td{
  width: 100%;
  padding: 10px;
/*  border: 1px solid #fff;*/
}
.ta2 td a{
  padding-left: 0px;
}
section.black h2{
	margin-top: 30px;
}
/*----------sp非表示-----------*/
img.pc{
  display: none;
}
img.sp{
  display: block;
  width: 90%;
  margin: 0 auto;
}
a.sp{
  display: block;
}
a.pc{
  display: none;
}
}
section.black hr{
  width: 100%;
  border: solid 1px #e4e4e4;
}

/* } */
/*------------最大925--------------*/
@media screen and (max-width : 925px){
	div.works{
		text-align: left;
		margin: 20px auto;
		max-width: 600px;
		padding-left: 25px;
	}
	nav.gloval_nav ul{
	padding-left: 10px;
}
}
/*------------最大375--------------*/
@media screen and (max-width : 430px){
#chart img {
  width:100%;
}
br.pc-br{
display: none;
}
br.sp-br{
display: block;
}
table.ta2{
  font-size: .9em;
}
p#page-top {
  width: auto;
  right: 0;
  top: 513px;
}
p#page-top2 {
  width: auto;
  right: 0;
  bottom: 3em;
}

p#formbtn {
  width: auto;
  right: 0;
  bottom: 5em;
}

}
@media(min-width: 768px){
  a[href^="tel:"]{
    pointer-events: none;
  }
}
h2{
	text-align: center;
}
h2.tkh2{
	color:  #00a1ea;
	border-color: #00a1ea;
}
.ta1 th{
  width: 30%;
  padding: 15px;
  text-align: center;
  background: #ffffff;
  border: 1px solid #bfbfbf;
  color: #ffffff;
  background-color: #00a1ea;
}
.ta1 td{
  padding: 10px;
  border: 1px solid #bfbfbf;
}
.ta1 a{
  text-decoration: underline;
}
.ta1 a:hover{
  color: #ff0000;
  text-decoration: underline;
}
.ta1 td a{
  padding-left: 20px;
}
.ta1 th a{
  color: #646464;
  text-decoration: none;
}
table a{
    color: #1c0b0b;
}

.ta1 td a.tb_btn{
    width: 40%;
    display: block;
    background: #ff3d00;
    color: #fff;
    padding-left: 0;
    padding: 10px;
    margin-top: 3px;
    text-align: center;
    text-decoration: none;
    border-radius: 5px;
}
.ta1 td a.tb_btn:hover{
    background: #ff6331;
    color: #fff500;
}
td p.red{
    width: 100%;
    display: block;
    margin-top: 10px;
    color: red;
}
.cast{
	margin: 50px auto;
	display: flex;
	width: 100%;
  flex-wrap: wrap;
}
.cast:after {
display: block;
content:"";
width: 300px;
}
.cast p{
    color: #676767;
	text-align: center;
}
.cast small{
    margin: 0 auto;
    display: block;
    margin-top: 10px;
/*    color: #868686;*/
	width: 100%;
	text-align: center
}
.cast figure{
/*	width: 25%;*/
	width: 33%;
	display: inline-block;
	margin-bottom: 10px;

}
.bgf .cast figure img{
	width: 80%;
}
.cast figure img{
	margin-bottom: 10px;
}
.cast figcaption{
	text-align: center;
	font-weight: bold;
    color: #566e79;
}
.cast.Large_solo{
    display: block;
    text-align: center;
}
.cast.Large figure{
  width: 50%;
}
.bgf .cast.Large figure img{
  width: 90%;
}

/**************** bnr ****************/
.bnr{
    margin: 20px auto 0;
    width: 70%;
    display: block;
    overflow: hidden;
    text-align: center;
    /* padding-bottom: 70px; */
    max-width: 900px;
}
.bnr img{
    margin: 0 auto;
    width: 48%;
    display: inline-block;
    margin: 5px;
}
.bnr a, .bnr_video a {
  width: 300px;
}
.bnr a img{
    transition:.4s;
}
.bnr a img:hover{
    opacity: .8;
}
.bnr_top{
  margin: 20px auto;
  width: 100%;
  display: block;
  overflow: hidden;
text-align: center;
}
.bnr_top img{
  width: 80%;
}
.bnr_top img.flex{
  width: 48%;
}
.bnr_long{
  margin: 2rem auto;
  display: block;
  width: min(1100px, 92%);
}
.bnr_long img{
  margin: 0 auto;
  display: block;
  width: 100%;
}
.bnr_flex {
  margin: 20px auto 0;
  width: 100%;
  display: flex;
  overflow: hidden;
  text-align: center;
  max-width: 1280px;
  align-items: center;
  justify-content: center;
  flex-wrap: wrap;
}
.bnr_flex img {
  margin: 0 auto;
  width: 280px;
  margin: 5px;
}
@media only screen and (max-width:768px){
.ta1{
width: 95%;
}
.ta1 td a.tb_btn{
    width: 90%;
}
.cast{
	margin: 20px auto;
	display: block;
	width: 100%;
	text-align: center;
}
.cast figure,
.cast.Large figure{
	margin: 0 auto;
	width: 80%;
	display: block;
	text-align: center
}
.bgf .cast.Large figure img{
  width: 80%;
}
.cast figcaption{
	font-size: 1.5em;
	margin-top: 15px;
	margin-bottom: 25px;
}
/**************** bnr ****************/
.bnr{
    margin: 20px auto 0;
    width: 100%;
    display: block;
    overflow: hidden;
}
img#Map{
  max-width: 100%;
  height: auto;
}
area{
border:none;
outline:none;
}
.bnr img{
	margin-bottom: 10px;
	margin: 10px auto;
	width: 90%;
}
.bnr_top img.flex{
  display: block;
  width: 90%;
}
main .campaign p.triangle2{
  font-size: 2rem;
}
main .campaign{
  padding: 1.5rem;
  border-radius: 0px;
}
main .campaign_box{
  /* padding: 2rem; */
  padding-top: 0;
}
main .campaign h2{
  font-size: 2.7rem;
}
main .campaign_box h2{
  font-size: 2.5rem;
  line-height: 1.4;
}
main .campaign_box h3 {
  font-size: 2.5rem;
  }
main .campaign_box p{
  font-size: 2.5rem;
}
main .campaign_box small {
  width: auto;
}
main .campaign span {
  font-size: 2.5rem;
}
main .campaign p.schedule {
  font-size: 2.5rem;
  margin-bottom: 2rem;
}
main .campaign p.schedule span {
  font-size: 1.5rem;
}
main a.kiyaku:hover {
  color: #1e3397;
  }
ul.oubo {
    display: -webkit-block;
    display: -ms-block;
    display: block;
  }
.oubo h4 {
    margin-bottom: 10px;
    margin-top: auto;
    }
ul.oubo li {
  padding: 15px;
  margin: 10px;
}
ul.oubo li {
    width: auto;
    margin: 40px 0;
  }
.twitter p {
    text-align: center;
  }
  .bnr_type {
    width: auto;
}
a.kiyaku {
    text-decoration: underline;
    font-size: 2rem;
  }
.kiyaku p {
    text-align: left;
  }
  .terms{
    margin: 0 auto;
    width: 100%;
    height: 350px;
    text-align: left;
    overflow-y: scroll;
    margin-bottom: 2em;
}
.campaign_box .terms p{
    margin: 0 auto;
    font-size: .95em;
    padding: 1.5rem;
    font-weight: 300;
    text-align: left;
}
.campaign_box .terms p span{
    font-size: 1em;
    font-weight: bold;
}
.campaign_box .terms a{
    color: #000;
    text-decoration: underline;
    font-size: 1.3rem;
}
.campaign_box .terms p span.red{
    font-weight: normal;
    color: red;
}
.campaign_box .terms p span.list{
    font-weight: normal;
    padding-left: 6em;
}
.terms::-webkit-scrollbar{
    width: 15px;
}
.present{
  display: block;
  margin-top: 3rem;
}
main .present figure{
  margin: 1rem auto;
  padding: 0;
  width: 100%;
  text-align: center;
}
main .present figure.multiple {
  margin: 2rem auto;
  width: 100%;
}
main .present figcaption{
  margin: 0 auto;
  color: #ff0;
  font-size: 2rem;
  font-weight: bold;
  margin-top: 3rem;
  margin-bottom: 1rem;
}
main .present figcaption span{
  margin: 0 auto;
  color: #ff0;
  font-weight: bold;
  padding-left: 1rem;
  font-size: 20px;
}
.black_red{
  padding: 0;
}
}
/* 追加 */
p.line{
    text-decoration: line-through;
    color: #646464;
    width: 100%;
}
span.soldout{
    text-decoration: line-through;
    color: #646464;
}
span.soldout2{
    color: red;
}
.big{
	font-size: 1.2em;
}
p.date{
    margin: 0;
    text-align: left;
    color: #123cae;
    font-size: 1.5rem;
    font-weight: 600;
}
p.date_att{
  color: #e71212;
}
/* p.date::before{
  content: '\e916';
  font-family: 'Material Icons';
  padding-right: 5px;
  vertical-align: top;
} */
p.date_att::before{
  content: '\e7f4';
  font-family: 'Material Icons';
  padding-right: 5px;
  vertical-align: top;
}
@media only screen and (max-width:899px){
  p.date{
    font-size: 1.2em;
    margin: 0 auto;
    text-align: center;
    display: inline-flex;
    align-items: center;
    text-align: center;
    justify-content: center;
}
p.date::before{
  vertical-align: text-bottom;
}
}
p.date span{
  font-size: .7em;
  font-weight: bold;
  color: rgb(251, 255, 0);
  background: #ff1b76;
  padding: 5px;
  vertical-align: bottom;
}
span.red{
  color: #ff8f8f;
}
h2.title{
  position: relative;
	padding-bottom: 30px;
  margin: 0 auto;
  font-size: 3.5rem;
  font-weight: 400;
  line-height: 6rem;
  color: #123cae;
  margin-top: 5rem;
}
h2.title::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 0;
	height: 0;
	border-style: solid;
  border-width: 17px 12px 0 12px;
	border-color: #ff0 rgba(0,0,0,0) rgba(0,0,0,0) rgba(0,0,0,0);
}

/* content */
.wrap {
  margin: 4rem auto;
  /* width: 80%; */
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  align-items: stretch;
  max-width: 1000px;
  /* flex-direction: column; */
}
.wrap:after{
  content:"";
  display:block;
  width: 50%;
  height:0;
}
.section_box{
  margin: 2rem auto;
  width: 30%;
  padding: 1rem;
  background-color: #fff;
  position: relative;
  /* height: 430px; */
  border-radius: 10px;
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.5);
}

.content_box,main .campaign .content_box{
  margin: 0 auto;
  width: 100%;
}
.content_box h2,main .campaign .content_box h2{
  text-align: left;
  padding-left: 1rem;
  font-weight: 500;
  color: #12ae68;
  border-left: solid 6px #12ae68;
  font-size: 1.8rem;
}
.content_box h2.cuptitle,main .campaign .content_box h2.cuptitle{
  font-size: 2rem;
  border-left: solid 6px #9eb9de;
  color: #123cae;
  margin: 20px auto 10px;
  line-height: normal;
}
.content_box img,main .campaign .content_box img{
  margin: 0 auto;
  display: block;
  width: 100%;
  border-radius: 5px;
}
.section_box.bg_week{
	background-image:url(../img/main/main_sp.jpg);
	background-size:contain;
	background-position:center center;
	background-repeat:no-repeat;
  background-color: transparent;
  border: none;
}
main .campaign .content_box p.date{
  margin: 0;
  text-align: left;
  color: #424242;
  font-size: 2.1rem;
  font-weight: 600;
}
.text_box{
  margin: 0 auto;
  width: 95%;
  margin-bottom: 2rem;
}
main section div.text_box p,main section div.text_box_100 p {
  margin: 2rem auto;
  width: 100%;
}
main section div.text_box p:last-of-type{
  margin-bottom: 70px;
}
/* 100%box */
.section_box_100{
  margin: 2rem auto;
  width: 95%;
  background-color: #fff;
  position: relative;
  /* height: 430px; */
  border-radius: 10px;
  box-shadow: 0px 5px 15px 0px rgba(0, 0, 0, 0.5);
}
.content_box_100{
  margin: 0 auto;
  width: auto;
  display: flex;
  align-content: center;
  justify-content: center;
  align-items: center;
  margin: 2rem;
}
.content_box_100 img{
  margin: 0 auto;
  display: block;
  width: 50%;
  border-radius: 5px;
}
.text_box_100 {
  margin: 0 35px;
  width: 95%;
}
p.small_text{
  font-size: 1.4rem;
}
p.small_text span{
  padding: .5rem;
  background-color: #f0f0f0;
  color: #000590;
}
main h2.program_title{
  margin: 0 auto;
  text-align: center;
  font-size: 3rem;
  color: #000590;
}
.program_box{
  margin: 0 auto;
  background-color: #f0f0f0;
  border-radius: 10px 10px 0 0;
  padding: 1rem;
}
.section_box_100 p.date{
  text-align: center;
  font-size: 2rem;
}
/* 50%box */
.section_box_50{
  margin: 2rem auto;
  width: 42%;
  padding: 2rem;
  background-color: #fff;
  position: relative;
  /* height: 430px; */
  border-radius: 10px;
}
/* ボックス内ボタン */
.web_btn{
  margin: 0 auto;
  width: 95%;
  display: block;
  text-align: center;
  font-family: "nitalago-ruika", sans-serif;
  position: absolute;
  left: 0;
  right: 0;
  bottom: 0;
  margin-bottom: 2rem;
}
.web_btn2{
  margin: 0 auto;
  width: 20%;
  display: block;
  text-align: center;
  font-family: "nitalago-ruika", sans-serif;
}
.web_btn.in_box{
  position: inherit;
  margin-top: 2rem;
}
.web_btn a{
  display: block;
  color: #ffff7e;
  background: #123cae;
  padding: 12px;
  border-radius: 10px;
  overflow: hidden;
  font-size: 1.2em;
  letter-spacing: .1em;
  transition: ease .3s;
  border: solid 2px #e9e9e9;
}
.web_btn2 a{
  display: block;
  color: #ff0;
  background: #000000ad;
  padding: 10px;
  border-radius: 3px;
  overflow: hidden;
  font-size: 1.2em;
  letter-spacing: .1em;
  transition: ease .3s;
  border: solid 2px #ff0;
}
.web_btn a:hover{
  color: #ff0;
}
.web_btn2 a:hover{
  color: #ff0;
}
/* 賞品ボックス */
main .campaign .prize_box h2{
  margin: 2rem 0;
  color: #ffffff;
  border-left: solid 6px #12ae68;
  font-size: 2.4rem;
  background: #123cae;
  padding: 8px;
  width: 90%;
}
main .campaign .prize_box h2.cuptitle{
  color: #123cae;
  border-left: none;
  font-size: 2.4rem;
  background: none;
}
.section_box_prize {
  margin: 2rem auto;
  width: 100%;
  padding: 1rem;
  background-color: #fff;
  position: relative;
  border: none;
  border-radius: 5px;
}
main .campaign .section_box_prize .hidden_box{
  margin-top: 0;
}
main .campaign .section_box_prize .list_box{
  margin: 2rem auto;
  width: 90%;
}
.list_box h3{
  font-size: 1.7rem;
  font-weight: 700;
  text-align: left;
  color: #123cae;
  border-left: solid 6px #12ae68;
  padding-left: 1rem;
  margin-bottom: 2rem;
}
.list_box h3:first-of-type{
  font-size: 2rem;
  font-weight: 700;
  color: #123cae;
  border-left: solid 6px #123cae;
  margin-top: 4rem;
}
main .campaign .list_box p{
text-align: left;
}
.list_box ul{
  margin-bottom: 3.5rem;
}
.list_box ul li{
  list-style-type: square;
  margin: 0 auto;
  width: 95%;
  margin-bottom: 1rem;
}
main .campaign .list_box ul li span{
  font-size: inherit;
  color: red;
}
.list_box ul li::marker{
  color: #123cae;
}
/* 大会日程 */
.hidden_box {
  margin: 0 auto;
  padding: 0;
  margin-top: 2rem;
}

/*ボタン装飾*/
.hidden_box label {
  margin: 0 auto;
  /* width: 100%; */
  display: block;
  text-align: center;
  background: #12ae68;
  font-family: "nitalago-ruika", sans-serif;
  cursor :pointer;
  transition: all .3s;
  font-size: 2rem;
  padding: 15px;
  color: #fff;
  border-radius: 5px;
}
.hidden_box label:before{
  display: inline-block;
  content: '\e5c5';
  font-family: 'Material Icons';
  padding-right: 5px;
  transition: 0.2s;
  font-size: 2.5rem;
  vertical-align: bottom;
}
/*ボタンホバー時*/
.hidden_box label:hover {
  color: #ffff00;
}
.hidden_box input:checked ~ label:before {
  display: inline-block;
  font-family: 'Material Icons';
  content: '\e5df';
  color: #668ad8;
}
/*チェックは見えなくする*/
.hidden_box input {
  display: none;
}

/*中身を非表示にしておく*/
.hidden_box .hidden_show {
  height: 0;
  padding: 0;
  overflow: hidden;
  opacity: 0;
  transition: 0.8s;
}

/*クリックで中身表示*/
.hidden_box input:checked ~ .hidden_show {
  padding: 10px 0;
  height: auto;
  opacity: 1;
}
/*tabel2*/
table.ta2{
  font-size: 1em;
}
.ta2{
  width: 85%;
  margin: 3rem auto;
  text-align: left;
  border-collapse: collapse;
  table-layout: fixed;
	margin-bottom: 20px;
}
.ta2 tr{
  border-bottom: solid 1px #cecece;
}
.ta2 tr:first-child{
  border-top: solid 1px #cecece;
}
/* .ta2 tr:nth-child(even){
  background-color: #fdffe8;
}
.ta2 tr:nth-child(odd){
  background-color: #f3f3f3;
} */
.ta2 th{
  width: 30%;
  padding: 15px;
  text-align: center;
	font-weight:inherit;
  color: #c40000;
  font-weight: bold;
}
/* .ta2 th span.table_date{
  background: #c40000;
  padding: 2rem;
} */
/* .ta2 th span{
  background:  #7a7a7a;
	color: #fff;
  padding: 5px;
  margin-right: 10px;
} */
.ta2 td{
  padding: 15px;
  width: 60%;
  line-height: 3rem;
  color: #1c0b0b;
}
.ta2 a{
  text-decoration: underline;
}
.ta2 a:hover{
  color: #ff0000;
  text-decoration: underline;
}
.ta2 th a{
  color: #646464;
  text-decoration: none;
}
span.live{
	border: solid 1px #ff8437;
	color: #ff8437;
	padding: 2px;
	margin-left: 5px;
	font-size: .9em;
}
span.reco{
	background: #ebebeb;
	/* color: #fff; */
	padding: 5px;
	font-size: .9em;
}

/* css animation */
.fuwari{
  animation: fuwari 2.5s infinite;
  font-family: 'Mochiy Pop One', sans-serif;
}
@keyframes fuwari {
  0% {
    transform: translateY(0px);
  }
  50% {
    transform: translateY(-15px);
  }
  100% {
    transform: translateY(0px);
  }
}
.poyon {
  animation: poyon 2s ease-out infinite;
  opacity: 1;
}
@keyframes poyon {
  0%, 40%, 60%, 80% {
    transform: scale(1.0);
  }
  50%, 70% {
    transform: scale(0.95);
  }
}
img.cp_point {
  margin: 0 auto;
  width: 25%;
  position: absolute;
  top: -4%;
  left: -40px;
  transform: rotate(-15deg);
  z-index: 101;
}
img.cp_point.sec100 {
  margin: 0 auto;
  width: 12%;
  position: absolute;
  top: -5%;
  right: -88%;
  transform: rotate(-15deg);
  z-index: 100;
}
@media only screen and (max-width:768px){
  img.cp_point.sec100 {
    width: 25%;
    right: -70%;
    top: 25%;
  }
  img.cp_point {
    left: 0px;
  }
  .wrap {
    width: 100%;
    display: block;
  }
  .section_box{
    margin: 2rem auto;
    width: 90%;
    padding: 1rem;
    position: relative;
    height: auto;
  }
  .web_btn{
    margin: 1rem auto;
    width: 95%;
    display: block;
    text-align: center;
    position: inherit;
  }
  .content_box,main .campaign .content_box{
    display: block;
  }
  .text_box {
    width: 95%;
    margin: 2rem auto;
  }
  .content_box h2,.content_box h2.cuptitle,main .campaign .content_box h2{
    font-size: 2rem;
    width: 95%;
  }
  .content_box img,main .campaign .content_box img{
    /* width: 90%; */
    margin: 0rem auto;
  }
  .content_box p,main .campaign .content_box p{
    font-size: 1.8rem;
    /* margin-top: 2rem; */
    width: 100%;
  }
  .content_box p span,main .campaign .content_box p span{
    vertical-align: unset;
    font-size: .9em;
  }
  .flow {
    margin: 3rem auto;
    margin-top: 0;
}
main section div.text_box p,main section div.text_box_100 p {
  margin: 1rem auto;
  /* width: 95%; */
  font-size: 1.5rem;
}
main section div.text_box p.date,main section div.text_box_100 p.date{
  display: block;
  text-align: left;
  font-size: 1.7rem;
}
p.date::before {
  vertical-align: inherit;
}
main section div.text_box p:last-of-type{
  margin-bottom: 20px;
}
/* 賞品ボックス */
main .campaign .prize_box .text_box {
  width: 100%;
  margin: 0 auto;
}
main .campaign .prize_box h2{
  margin: 0 auto;
  font-size: 2rem;
  padding: 8px;
  width: 90%;
}
main .campaign .prize_box h2.cuptitle{
  margin: 1rem auto;
  color: #123cae;
  font-size: 1.8rem;
  line-height: inherit;
}
.section_box_prize {
  margin: 3rem auto;
  width: auto;
  padding: 2rem 1rem;
}
main .campaign .section_box_prize .hidden_box{
  margin-top: 1rem;
}
main .campaign .section_box_prize .list_box{
  margin: 1rem auto;
  width: 100%;
}
.list_box h3{
  font-size: 1.5rem;
  padding-left: 1rem;
  margin-bottom: 2rem;
}
.list_box h3:first-of-type{
  font-size: 1.7rem;
  margin-top: 3rem;
}
.list_box ul{
  margin-bottom: 2rem;
  list-style-type: square;
}
.list_box ul li{
  margin: 0 1.2rem;
  width: 95%;
  margin-bottom: 1rem;
  list-style-type: square;
  font-size: 1.3rem;
}
/*tabel2*/
table.ta2{
  font-size: .9em;
}
.ta2{
  width: 100%;
  margin: 0 auto;
  text-align: left;
  border-collapse: collapse;
/*  border: 1px solid #7d7dff;*/
/*↓文字はみ出し対策*/
  word-break: break-all;
  word-wrap: break-all;
  margin-top: 20px;
}
.ta2 tr{
  width: 100%;
}
.ta2 th{
  padding: 10px 5px;
  width: 110px;
  font-size: 13px;
  text-align: center;
  line-height: 3.4rem;
}
.ta2 td{
  width: 100%;
  padding: 10px;
  line-height: 2.5rem;
}
.ta2 td a{
  padding-left: 0px;
}
span.live,span.reco{
/*	display: inherit;*/
	margin-left: 0;
	width: auto;
	font-size: smaller;
	}
  .ta2 th span{
    padding: 5px;
    margin-right: 0px;
    margin-bottom: 10px;
    line-height: 3rem;
  }

/* 100%box */
.section_box_100{
  margin: 2rem auto;
  width: 90%;
  position: relative;
  overflow: hidden;
}
.content_box_100{
  margin: 2rem auto;
  width: 90%;
  display: block;
}
.content_box_100 img{
  margin: 0rem auto;
  display: block;
  width: 100%;
}
.text_box_100 {
  margin: 0 auto;
  width: 100%;
}
/* 50%box */
.section_box_50{
  margin: 4rem auto;
  width: 90%;
  padding: 1rem;
  position: relative;
  border-radius: 10px;
}



}
main .campaign p.campaign_end{
  color: #fffb71;
  border-bottom: 3px double #fffb71;
}
main .campaign .text_box span{
  font-size: 2.2rem;
  color: #fffb71;
}
@media only screen and (min-width:769px){
  /* main .present figure {
    padding: 2.5rem;
} */
  main .campaign img {
    width: 95%;
}
}
.movie iframe{
  margin: 5rem auto;
  width: 50%;
  max-width: 1000px;
  display: block;
  /* height: 500px; */
}
.inst a{
  background: -webkit-linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;
  background: linear-gradient(135deg, #427eff 0%, #f13f79 70%) no-repeat;/*グラデーション①*/
}
span.date{
  font-size: 2.2rem;
  color: #160c0c;
}
@media only screen and (max-width:768px){
  .movie iframe{
    margin: 3rem auto;
    width: 90%;
    height: 250px;
  }
}
/* animation */
/* 拡大 */
.zoomIn{
  animation-name:zoomInAnime;
  animation-duration:0.5s;
  animation-fill-mode:forwards;
}

@keyframes zoomInAnime{
  from {
  transform: scale(0.6);
  opacity: 0;
  }

  to {
    transform: scale(1);
  opacity: 1;
  }
}
.zoomInTrigger{
    opacity: 0;
}
/* ぼかし */
.blur{
  animation-name:blurAnime;
  animation-duration:1s;
  animation-fill-mode:forwards;
}

@keyframes blurAnime{
  from {
  filter: blur(10px);
  transform: scale(1.02);
  opacity: 0;
  }

  to {
  filter: blur(0);
  transform: scale(1);
  opacity: 1;
  }
}
.blurTrigger{
    opacity: 0;
}
/* fadeUp */
  /* スクロールをしたら出現する要素にはじめに透過0を指定　*/
  .fadeUpTrigger{
      opacity: 0;
  }
.fadeUp {
  animation-name:fadeUpAnime;
  animation-duration:0.5s;
  animation-fill-mode:forwards;
  opacity: 0;
  }
  
  @keyframes fadeUpAnime{
    from {
      opacity: 0;
    transform: translateY(100px);
    }
  
    to {
      opacity: 1;
    transform: translateY(0);
    }
  }

/* 背景色 */
/* .bg_color1,.bg_color2{
  padding: 100px 0;
} */
.bg_color1{
  background-color: #ffffff;
  background-image:  linear-gradient(#fffca0 1.5px, transparent 1.5px), linear-gradient(to right, #fffca0 1.5px, #ffffff 1.5px);
  background-size: 30px 30px;
}
.bg_color2{
  background-color: #006605;
}
div.btn_web{
  margin: 0 auto;
  width: 70%;
  max-width: 1000px;
  padding: 1rem;
  /* border: 1px solid #fff; */
  color: #fff;
  border-radius: 5px;
  background: #000;
}
.btn_web a{
  color: #fff;
}
.btn_web a:hover{
  color: #ff0;
}
a.btn_3d {
  color: #fff;
  font-size: 2.2rem;
  font-weight: bold;
  background: #1c0b0b;
  padding: 18px 30px;
  border: 3px solid #ff0;
  box-shadow: 0 5px 0 #ff0;
  border-radius: 6px;
  display: inline-block;
  transition: .3s;
  max-width: 850px;
}
a.btn_pink {
  background: #ff3489;
  border: 3px solid #c00050;
  box-shadow: 0 5px 0 #c00050;
}
a.top {
  color: #ff0;
  font-size: 2rem;
  background: #ff3489;
  border: 3px solid #c00050;
  box-shadow: 0 5px 0 #c00050;
  letter-spacing: .3rem;
  width: 41%;
}
a.top2 {
  color: #ff0;
  font-size: 2rem;
  background: #3437ff;
  border: 3px solid #0006c0;
  box-shadow: 0 5px 0 #0006c0;
  letter-spacing: .3rem;
  width: 41%;
}
.btn-square-pop {
  margin: 4rem auto 0;
  position: relative;
  display: inline-block;
  padding: 0.5em;
  text-decoration: none;
  color: #000;
  background: #ff0;/*背景色*/
  border-bottom: solid 5px rgb(204, 204, 0);/*少し濃い目の色に*/
  border-radius: 4px;/*角の丸み*/
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), 7px 8px 6px rgba(0, 0, 0, 0.3);
  font-weight: bold;
  font-size: 3rem;
  width: 100%;
}

.btn-square-pop:hover {
  /* border-bottom: solid 5px #ff0; */
  color: #f00;
  /* box-shadow: 7px 8px 6px rgba(0, 0, 0, 0.5); */
}
a.btn_3d:hover {
  transform: translateY(5px);
  color: #ff0;
  background: #1c0b0b;
  box-shadow: 0 0 0 #ff0;
}
a.btn_pink:hover {
  background: #ff006a;
  box-shadow: 0 0 0 #c00050;
}
a.top:hover {
  background: #ff006a;
  box-shadow: 0 0 0 #c00050;
  color: #ff0;
}
a.top2:hover {
  background: #1115fe;
  box-shadow: 0 0 0 #0006c0;
  color: #ff0;
}
h3.flow_tryangle{
  padding-top: 0;
  padding-bottom: 5rem;
}
h3.flow_tryangle::before {
  content: "";
  width: 0;
  height: 0;
  margin: 0 auto 1.25em;
  border-color: #000 transparent transparent;
  border-style: solid;
  border-width: 3.125em 11.25em 0;
  display: block;
}
h3.flow_tryangle2::before {
  content: "";
  width: 0;
  height: 0;
  margin: 0 auto 1.25em;
  border-color: #000 transparent transparent;
  border-style: solid;
  border-width: 3.125em 11.25em 0;
  display: block;
}
main .campaign_box h3.flow{
  margin-top: 5rem;
  border-top: dotted 3px;
  max-width: 1000px;
}
.cp_img{
  margin: 0 auto;
  width: 100%;
}
.cp_img img{
  margin: 10rem auto;
  width: 100%;
  display: block;
  max-width: 1000px;
}
main .campaign_box p.flow_text{
  margin: 0 auto;
  font-size: 1.6rem;
  max-width: 1000px;
  display: block;
  margin-bottom: 50px;
  color: #0063c0;
  line-height: 2.8rem;
}
.bg_red{
  background:  #c40000;
}
/* お知らせ欄 */
.news{
  margin: 0 auto;
  /* width: 90%;
  max-width: 1000px; */
  background: #980000;
  overflow-y: scroll;
  height: 200px;
  padding: 2rem;
  border-radius: 10px;
}
.news-list{
  list-style: none outside;
  margin: 0;
  padding: 0;
}
.news-list .item p{
  color: #fff;
}
.news-list .item a{
  display: flex;
  flex-wrap: wrap;
  flex-wrap: nowrap;
  text-decoration: none;
  color: #fff;
  border-bottom: 1px solid #CCC;
  padding: 10px 10px;
}

/* .news-list .item:first-child a{
  border-top: 1px solid #CCC;
} */
.news-list .item .date{
  margin: 0;
  min-width: 120px;
  font-size: 16px;
  color: #fff;
  padding: 0 20px 0 0;
  font-family: "JetBrains Mono",monospace;
  font-weight: normal;
}
.news-list .item .title{
  margin: 0;
  width: 100%;
}
.news-list .item a:hover .title{
  color: #ff0;
  transition: .8s;
}
.news::-webkit-scrollbar{
    width: 10px;
}
.news::-webkit-scrollbar-thumb{
    background: #ffffff7d;
    border-radius: 100vh;
}
.news::-webkit-scrollbar-track-piece:start{
    background: #670000;
    border-radius: 10px;
}
.news::-webkit-scrollbar-track-piece:end{
    background: #670000;
    border-radius: 10px;
}
ul.top_nav{
  margin: 1.5rem auto;
  text-align: center;
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  align-content: center;
  align-items: center;
  justify-content: center;
}
ul.top_nav li{
  width: 25%;
  font-size: 2rem;
  background: #fff;
  color: #000;
  border-radius: 5px;
  margin: 0 1rem;
  box-shadow: inset 0px 0px 15px 2px rgba(0, 0, 0, 0.3);
}
a.nav_btn{
  padding: 1rem;
  font-family: "Oswald","Noto Sans JP",sans-serif;
  font-weight: bold;
  display: block;
}
a.nav_btn:hover{
  color:  #f00;
}
/* ヘッダー黒 */
header.bs_black{
  display: block;
  background: #000;
  margin: 0 auto;
  border-bottom: none;
  position: relative;
}
header.bs_black img{
  display: block;
  text-align: center;
  margin: 1rem auto;
  width: 450px;
}
img.top_text_pc{
  margin: 0 auto;
  display: block;
}
@media screen and (max-width: 767px){
.news-list .item a{
  flex-wrap: wrap;
}
.news-list .item .date{
  min-width: 100px;
}
.news{
  padding: 1rem;
}
}
@media only screen and (max-width:768px){
  a.top {
    width: 100%;
  }
  a.btn_3d {
    font-size: 2rem;
    font-weight: bold;
    padding: 10px;
    max-width: 700px;
    width: 100%;
    margin-top: 1rem;
  }
  p.poyon::before {
    position: absolute;
    top: -25px;
    left: 48%;
    font-size: 6rem;
    width: 95%;
    z-index: -1;
}
h3.flow_tryangle{
  margin: 0 auto;
  display: block;
  font-size: 2rem;
}
span.date {
  font-size: 1.8rem;
}
h3.flow_tryangle::before {
  margin: -1px auto 1.25em;
  border-width: 5.125vh 20.95vh 0;
  display: block;
}
main .campaign p.cp_end {
  margin: 1rem auto;
  padding: 2rem;
  font-size: 2rem;
}
main h2.program_title{
  font-size: 2.2rem;
  border-bottom: dotted 1px #999;
}
.program_box{
  padding: 1rem;
}
.section_box_100 p.date{
  margin: 0 auto;
  display: block;
  font-size: 1.4rem;
}
.web_btn2{
  width: 90%;
}
ul.top_nav{
  margin: 1rem auto;
  display: block;
}
ul.top_nav li{
  width:95%;
  font-size: 1.8rem;
  margin: 1rem auto;
}
.btn-square-pop {
  margin: 2rem auto;
}
header.bs_black{
  padding: 0;
}
header.bs_black img{
  width: 250px;
}
img.top_text_pc{
  display: none;
}
}