@charset "UTF-8";

@media screen and (min-width: 750px) {
  .sp {
    display: none !important;
  }
}

@media screen and (max-width: 749px) {
  .pc {
    display: none !important;
  }
}

* {
  box-sizing: border-box;
  margin: 0;
  padding: 0;
  outline: none;
  border: 0;
  list-style: none;
  vertical-align: baseline;
  text-decoration: none;
  font: inherit;
  -webkit-tap-highlight-color: transparent;
}

html {
  -webkit-overflow-scrolling: touch;
  height: 100%;
  font-size: 62.5% !important;
  font-family: 'Noto Sans JP', sans-serif;
}
body {
  overflow-x: hidden;
  -webkit-overflow-scrolling: touch;
  height: 100%;
  color: #000;
  font-weight: 400;
  font-size: 1.8rem;
  line-height: 1.87;
}

div,
main,
section {
  position: relative;
  display: block;
}

*:focus {
  outline: none;
}

p {
  font-size: 1.4rem;
  line-height: 2.0;
}
small {
  display: block;
  font-size: 1.0rem;
  line-height: 1.6;
  margin-top: 10px;
}
small a {
  color: #000;
}
@media screen and (max-width: 749px) {
  p {
    line-height: 1.8;
  }
}
p.bold {
  font-weight: bold;
}
p.mid {
  font-size: 1.4rem;
}
ruby {
  letter-spacing: 0;
}
ruby rt {
  font-size: 0.8rem;
  transform: translateY(2px) scale(0.6);
  letter-spacing: -0.10rem;
}
img {
  width: 100%;
}
a {
  text-decoration: none;
  -webkit-transition-duration: 0.35s;
  -moz-transition-duration: 0.35s;
  -ms-transition-duration: 0.35s;
  -o-transition-duration: 0.35s;
  transition-duration: 0.35s;
}
a:hover {
	opacity:0.7;
  filter: alpha(opacity=70);
  -moz-opacity:0.7;
}
h1, h2, h3, h4, h5 {
  font-weight: 700;
}

/*common*/

/* 画面外にいる状態 */
.fadeinLeft {
  opacity:0.0;
  filter: alpha(opacity=0);
  transition : all 500ms;
  -webkit-transform : translate(-50px, 0);
  -moz-transform : translate(-50px, 0);
  -ms-transform : translate(-50px, 0);
  -o-transform : translate(-50px, 0);
  transform : translate(-50px, 0);
  -moz-opacity:0.0;
}
.fadeinRight {
  opacity:0.0;
  filter: alpha(opacity=0);
  transition : all 500ms;
  -webkit-transform : translate(50px, 0);
  -moz-transform : translate(50px, 0);
  -ms-transform : translate(50px, 0);
  -o-transform : translate(50px, 0);
  transform : translate(50px, 0);
  -moz-opacity:0.0;
}
.fadeinBottom {
  opacity:0.0;
  filter: alpha(opacity=0);
  transition : all 500ms;
  -webkit-transform : translate(0, 50px);
  -moz-transform : translate(0, 50px);
  -ms-transform : translate(0, 50px);
  -o-transform : translate(0, 50px);
  transform : translate(0, 50px);
  -moz-opacity:0.0;
}

.closeUp {
  background-size: 135%;
  -webkit-transition-duration: 5.0s;
  -moz-transition-duration: 5.0s;
  -ms-transition-duration: 5.0s;
  -o-transition-duration: 5.0s;
  transition-duration: 5.0s;
}

/* 画面内に入った状態 */
.fadeinLeft.scrollin, .fadeinRight.scrollin, .fadeinBottom.scrollin {
  opacity:1.0;
  filter: alpha(opacity=100);
  -webkit-transform : translate(0, 0);
  -moz-transform : translate(0, 0);
  -ms-transform : translate(0, 0);
  -o-transform : translate(0, 0);
  transform : translate(0, 0);
  -moz-opacity:1.0;
}

.closeUp.scrollin {
  background-size: 150% !important;
}

/*------------------------------------------------------------*/
/*header*/
header {
  display: flex;
  margin: 0 auto;
  width: 100%;
  justify-content: space-between;
  padding: 1.5rem;
  background-color: #fff;
  position: fixed;
  z-index: 999;
}
.snsArea, .asadigiLogo {
  display: flex;
  align-content: center;
  align-items: center;
  color: #000;
  width: 50%;
  padding: 20px 30px;
  line-height: 1;
}
.asadigiLogo {
  background: url(../img/img_header_back_left_l.jpg) no-repeat left center, url(../img/img_header_back_left_r.jpg) repeat-x center center;
  background-size: contain, contain;
}
.asadigiLogo img {
  width: 225px;
}
.snsArea {
  background: url(../img/img_header_back_right_l.jpg) no-repeat right center, url(../img/img_header_back_right_r.jpg) repeat-x center center;
  background-size: contain, contain;
  text-align: right;
}
.snsArea p {
  width: 100%;
  font-size: 1.2rem;
  line-height: 1.6rem;
  font-weight: 300;
}
@media screen and (max-width: 749px) {
  .snsArea, .asadigiLogo {
    padding: 10px 10px;
  }
  .asadigiLogo {
    background: url(../img/img_header_back_left_l.jpg) no-repeat left center, url(../img/img_header_back_left_r.jpg) repeat-x center center;
    background-size: contain, cover;
  }
  .asadigiLogo img {
    width: 100%;
  }
  .snsArea {
    background: url(../img/img_header_back_right_l.jpg) no-repeat right center, url(../img/img_header_back_right_r.jpg) repeat-x center center;
    background-size: contain, cover;
  }
  .snsArea p {
    width: 100%;
    font-size: 0.8rem;
    line-height: 1.4rem;
    font-weight: 300;
  }
}


/*footer*/
footer {
  bottom: 0;
  display: block;
  padding: 1rem 0;
  width: 100%;
  background-color: #fff;
}
#footerContent {
  display: block;
  margin: 0 auto;
  max-width: 960px;
}
#footerContent p {
  display: block;
  margin: 1.0rem auto;
  padding: 0;
  width: 100%;
  text-align: center;
  font-size: 0.8rem;
  line-height: 1.4rem;
}
@media screen and (max-width: 749px) {
  footer {
    margin: 0 auto;
    width: 90%;
  }
}

/*YouTube*/
.video{
  width:100%;
  padding-bottom: 56.25%;
  height:0px;
  position: relative;
}
.video iframe{
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}


/*------------------------------------------------------------*/

#hero {
  width: 100%;
  height: 930px;
  position: relative;
}
#hero h1 {
  position: absolute;
  transform: translate(-50%,-50%);
  top: 30%;
  left: 50%;
  font-size: 15rem;
  color: #000;
  width: 1000px;
  text-align: center;
}
#hero p {
  font-size: 1.6rem;
  line-height: 4.0rem;
  position: absolute;
  transform: translate(-50%,-50%);
  top: 70%;
  left: 50%;
  text-align: center;
  width: 1000px;
}
.arrow {
  position: absolute;
  transform: translate(-50%,-50%);
  top: 84%;
  left: 50%;
  width: 28px;
  animation: arrow-animation 1.5s ease-in-out infinite;
}
@keyframes arrow-animation {
  0%{
    top: 84%;
  }
  20%{
    top: 84%;
  }
  60%{
    top: 86%;
  }
  100%{
    top: 84%;
  }
}
@media screen and (max-width: 749px) {
  #hero {
    height: 80vh;
  }
  #hero h1 {
    top: 14%;
    width: 90%;
  }
  #hero p {
    font-size: 1.4rem;
    line-height: 3.0rem;
    top: 74%;
    width: 90%;
  }

  @keyframes arrow-animation {
    0%{
      top: 103%;
    }
    20%{
      top: 103%;
    }
    60%{
      top: 105%;
    }
    100%{
      top: 103%;
    }
  }
}

#heroUnder {
  width: 100%;
  height: 300px;
  background: url(../img/pict01.jpg) no-repeat center center;
  background-size: cover;
  background-attachment: fixed;
  position: relative;
}
#heroUnder h1 {
  position: absolute;
  transform: translate(-50%,-50%);
  top: 35%;
  left: 50%;
  font-size: 15rem;
  color: #000;
  width: 1000px;
  text-align: center;
}
#breadcrumb {
  display: flex;
  justify-content: flex-start;
  position: absolute;
  transform: translate(-50%,-50%);
  top: 100%;
  left: 50%;
  width: 1000px;
  font-size: 1.2rem;
  align-items: center;
}
#breadcrumb li {
  border-right: solid 1px #000;
  margin-right: 7px;
  padding-right: 7px;
  height: 1.4rem;
  line-height: 1;
}
#breadcrumb li:nth-last-child(1) {
  border: none;
}
#breadcrumb a {
  color: #000;
}
@media screen and (max-width: 749px) {
  #heroUnder {
    height: 200px;
  }
  #heroUnder h1 {
    top: -10%;
    width: 90%;
  }
  #breadcrumb {
    top: 89%;
    width: 90%;
    font-size: 1.0rem;
  }
  #breadcrumb li {
    height: 1.2rem;
  }
}

/*------------------------------------------------------------*/
nav{
  position: fixed;
  top: 87vh;
	height: 89px;
	width:100%;
	text-align: center;
  z-index: 998;
}
nav ul{
  width: 100%;
  list-style: none;
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 0 auto;
  padding: 1.5rem;
  font-size: 1.6rem;
}
nav ul li {
  line-height: 1.8rem;
  background: url(../img/img_nav_back_left_l.jpg) no-repeat left center, url(../img/img_nav_back_left_r.jpg) repeat-x center center;
  background-size: contain, contain;
  width: 50%;
  height: 89px;
  padding: 23px 0;
}
nav ul li:nth-child(even){
  background: url(../img/img_nav_back_right_r.jpg) no-repeat right center, url(../img/img_nav_back_right_l.jpg) repeat-x center center;
  background-size: contain, contain;
}
nav ul li a{
  display: block;
  margin: 0 auto;
  width: 432px;
}
@media screen and (max-width: 749px) {
  nav{
    top: 89vh;
    height: 64px;
  }
  nav ul li {
    height: 64px;
    padding: 14px 0;
  }
  nav ul li a{
    width: 90%;
  }
}

/*------------------------------------------------------------*/
#mainArea {
  max-width: 1000px;
  margin: 60px auto 30px auto;
}
#mainArea.under {
  max-width: 1000px;
  margin: 60px auto 30px auto;
}
  
.txtArea {
  max-width: 770px;
  margin: 0 auto;
  padding: 0 0 40px 0;
  background: url(../img/img_heading_line.png) repeat-x left bottom;
  background-size: 77%;
}
.txtArea span {
  font-weight: 900;
}
.txtArea.under {
  max-width: 1000px;
  padding: 40px 0 40px 0;
  background: url(../img/img_under_back_top_b.jpg) no-repeat center top, url(../img/img_under_back_bottom_b.jpg) no-repeat center bottom, url(../img/img_under_back_body_b.jpg) repeat-y center center;
  background-size: contain, contain, contain;
}
.txtArea.under.red {
  background: url(../img/img_under_back_top_r.jpg) no-repeat center top, url(../img/img_under_back_bottom_r.jpg) no-repeat center bottom, url(../img/img_under_back_body_r.jpg) repeat-y center center;
  background-size: contain, contain, contain;
}
@media screen and (max-width: 749px) {
  #mainArea {
    margin: 0 auto 30px auto;
  }
  #mainArea.under {
    margin: 0 auto 30px auto;
  }
    
  .txtArea {
    max-width: 90%;
    padding: 0 0 40px 0;
    background: url(../img/img_heading_line.png) repeat-x center bottom;
    background-size: 180%;
  }
  .txtArea.under {
    max-width: 90%;
    padding: 10px 0 20px 0;
  }
}

h2 {
  width:100%;
  font-size: 4.3rem;
  line-height: 6.0rem;
  padding: 8px 0 20px 0;
  margin: 40px 0 0 0;
  color: #DE3A70;
  background: url(../img/img_heading_line.png) repeat-x left bottom;
  background-size: 77%;
}
h2.under {
  width:890px;
  font-size: 3.8rem;
  text-align: center;
  padding: 8px 0 20px 0;
  margin: 0 auto;
  color: #fff;
  background: url(../img/img_heading_line_w.png) repeat-x left bottom;
  background-size: 77%;
}
h3 {
  width:100%;
  font-size: 2.6rem;
  line-height: 6.0rem;
  text-align: center;
  background: url(../img/img_heading_back_h3.jpg) no-repeat center center;
  background-size: 100%;
  color: #fff;
  margin: 40px 0 25px 0;
  font-weight: 500;
}
h3.underB {
  background: url(../img/img_heading_under_b.png) no-repeat center center;
  background-size: 100%;
}
h3.underR {
  background: url(../img/img_heading_under_r.png) no-repeat center center;
  background-size: 100%;
}
@media screen and (max-width: 749px) {
  h2 {
    width:100%;
    font-size: 2.8rem;
    line-height: 3.6rem;
    background: url(../img/img_heading_line.png) repeat-x left bottom;
    background-size: 180%;
  }
  h2.under {
    width:90%;
    font-size: 2.8rem;
    padding: 8px 0 20px 0;
    background: url(../img/img_heading_line_w.png) repeat-x left bottom;
    background-size: 180%;
  }
  h3 {
    width:100%;
    font-size: 1.8rem;
    line-height: 2.8rem;
    margin: 40px 0 10px 0;
  }
  h3.underB {
    background: url(../img/img_heading_under_b_sp.png) no-repeat center center;
    background-size: 100%;
    font-size: 1.6rem;
    line-height: 2.2rem;
    margin: 10px 0;
    padding: 10px 0;
  }
  h3.underR {
    background: url(../img/img_heading_under_r_sp.png) no-repeat center center;
    background-size: 100%;
    font-size: 1.6rem;
    line-height: 2.2rem;
    margin: 10px 0;
    padding: 10px 0;
  }
}

.presenter {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 40px 0 0 0;
}
.presenter.under {
  max-width: 890px;
  margin: 40px auto;
}
.presenter img {
  width: 30%;
}
.presenter p {
  display: block;
  width: 63%;
  font-size: 1.2rem;
  line-height: 2.0rem;
  font-weight: 400;
}
.presenter p span {
  font-size: 1.9rem;
  font-weight: 700;
  line-height: 1.6;
}
.presenter p span strong {
  font-size: 3.1rem;
  font-weight: 500;
}
@media screen and (max-width: 749px) {
  .presenter.under {
    max-width: 90%;
    margin: 20px auto;
  }
  .presenter p {
    line-height: 2.0rem;
  }
  .presenter p span {
    font-size: 1.6rem;
  }
  .presenter p span strong {
    font-size: 2.2rem;
  }
}
/*------------------------------------------------------------*/
.inner {
  max-width: 890px;
  margin: 0 auto;
  padding: 10px 60px 40px 60px;
}
.inner.blue {
  background: url(../img/img_under_back_top_w_b.png) no-repeat center top, url(../img/img_under_back_bottom_w_b.png) no-repeat center bottom, url(../img/img_under_back_body_w.png) repeat-y center center;
  background-size: contain, contain, contain;
}
.inner.red {
  background: url(../img/img_under_back_top_w_r.png) no-repeat center top, url(../img/img_under_back_bottom_w_r.png) no-repeat center bottom, url(../img/img_under_back_body_w.png) repeat-y center center;
  background-size: contain, contain, contain;
}
.inner img {
  display: block;
  width: 80%;
  margin: 20px auto;
  padding: 10px 0;
}
@media screen and (max-width: 749px) {
  .inner {
    max-width: 90%;
    padding: 10px 5%;
  }
  .inner img {
    width: 100%;
  }
}
/*------------------------------------------------------------*/
.navigation {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 60px 0 0 0;
}
.navigation li.blue {
  background: url(../img/img_footer_back_left_bottom.jpg) no-repeat center bottom, url(../img/img_footer_back_left_top.jpg) no-repeat center top, url(../img/img_footer_back_left_body.jpg) repeat-y center center;
  background-size: contain, contain, contain;
  width: 48%;
}
.navigation li.red {
  background: url(../img/img_footer_back_right_bottom.jpg) no-repeat center bottom, url(../img/img_footer_back_right_top.jpg) no-repeat center top, url(../img/img_footer_back_right_body.jpg) repeat-y center center;
  background-size: contain, contain, contain;
  width: 48%;
}
.navigation li.top {
  background: url(../img/img_footer_back_left_bottom_top.jpg) no-repeat center bottom, url(../img/img_footer_back_left_top_top.jpg) no-repeat center top, url(../img/img_footer_back_left_body_top.jpg) repeat-y center center;
  background-size: contain, contain, contain;
  width: 48%;
}
.navigation li h3 {
  background: none;
  width: 90%;
  margin: 30px auto 0 auto;
}
.navigation li p {
  display: block;
  font-size: 3.0rem;
  line-height: 4.6rem;
  width: 90%;
  margin: 0 auto 30px auto;
  color: #fff;
  background: url(../img/icon_arrow_w.svg) no-repeat right center;
  background-size: 26px;
}
@media screen and (max-width: 749px) {
  .navigation {
    display: block;
    margin: 40px auto 0 auto;
    width: 90%;
  }
  .navigation li.blue, .navigation li.red, .navigation li.top {
    width: 100%;
    padding: 10px 0;
    margin: 0 0 20px 0;
  }
  .navigation li h3 {
    background: none;
    width: 90%;
    margin: 10px auto 0 auto;
  }
  .navigation li p {
    font-size: 2.0rem;
    line-height: 2.6rem;
    margin: 0 auto 10px auto;
    background: url(../img/icon_arrow_w.svg) no-repeat right center;
  background-size: 16px;
  }
}

.sponsor {
  display: flex;
  justify-content: center;
  align-items: flex-start;
}
.sponsor li {
  width: 374px;
  margin: 40px 20px 0 20px;
  text-align: center;
}
.sponsorLogo {
  display: block;
  width: 160px;
  margin: 30px auto 0 auto;
}
.sponsorLogo img {
  width: 100%;
}
@media screen and (max-width: 749px) {
  .sponsor {
    display: flex;
    justify-content: center;
    align-items: flex-start;
    width: 90%;
    margin: 0 auto;
  }
  .sponsor li {
    width: 48%;
    margin: 0 5px;
    text-align: center;
  }
  .sponsorLogo {
    display: block;
    width: 60%;
    margin: 10px auto 0 auto;
  }
  .sponsorLogo img {
    width: 100%;
  }
}