@charset "UTF-8";
/*
Theme Name: kadokawa_kompass
File Name: style.scss
*/
/* Scss Document */
/*  SP setting START  */
html {
  font-size: 10px; }

body {
  font-family: 'Renner*','ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
  font-size: 1.4rem;
  line-height: 1.8;
  background: #a1c620;
  /* header setting START*/
  /* END header setting */
  /* nav setting START*/
  /* END nav setting */
  /* article.mainimage setting START */
  /* END article.mainimage setting */
  /* article.journal setting START */
  /* END article.journal setting */
  /* article.pickup-report setting START */
  /* END article.pickup-report */
  /* article.about setting START */
  /* END article.about */
  /* .btn_rule setting START */
  /* END .btn_rule setting */
  /* article.schedule setting START */
  /* END article.schedule setting */
  /* footer setting START */
  /* END footer setting */
  /* article.rule setting START */
  /* END article.rule setting */ }
  body article {
    margin-bottom: 22px;
    padding: 0 10px; }
    body article .wrapper {
      padding: 5.571% 4.735% 4.735%;
      box-sizing: border-box;
      background: url("../images/common_image_bgimage.svg") no-repeat right top white;
      background-size: 8%; }
      body article .wrapper h2 {
        text-align: center;
        margin-bottom: 16px; }
        body article .wrapper h2 img {
          height: 22px;
          width: auto;
          border-bottom: solid 3px black;
          padding-bottom: 4px; }
  body a {
    text-decoration: none;
    color: #000; }
  body h3 {
    font-weight: bold;
    font-size: 1.6rem;
    line-height: 1.4;
    margin-top: 5px; }
  body p {
    text-align: justify;
    font-feature-settings: "palt";
    letter-spacing: 0.2rem; }
  body img {
    max-width: 100%;
    width: auto;
    height: auto;
    width/***/: auto; }
  body figure {
    margin: 0;
    padding: 0; }
  body .wrapper {
    max-width: 768px;
    margin: 0 auto; }
  body .btn_entry {
    text-transform: uppercase;
    background-image: -moz-linear-gradient(-90deg, #c40566 0%, #ff148b 100%);
    background-image: -webkit-linear-gradient(-90deg, #c40566 0%, #ff148b 100%);
    background-image: -ms-linear-gradient(-90deg, #c40566 0%, #ff148b 100%);
    border: solid 1px white;
    border-radius: 4px;
    box-sizing: border-box;
    padding: 1px;
    max-width: 768px; }
    body .btn_entry a {
      font-weight: bold;
      color: white;
      text-align: center;
      display: block;
      background-image: -moz-linear-gradient(90deg, #c40566 0%, #ff148b 100%);
      background-image: -webkit-linear-gradient(90deg, #c40566 0%, #ff148b 100%);
      background-image: -ms-linear-gradient(90deg, #c40566 0%, #ff148b 100%); }
    body .btn_entry.btn_entry_details a {
      padding: 14px 0; }
  body .close {
    opacity: 0.1; }
    body .close a {
      display: block;
      pointer-events: none; }
  body .container_icon {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: center; }
  body header {
    position: fixed;
    width: 100%;
    padding: 12px 16px;
    background: rgba(255, 255, 255, 0.8);
    box-sizing: border-box;
    z-index: 10; }
    body header .wrapper {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between; }
      body header .wrapper h1 {
        line-height: 1; }
        body header .wrapper h1 img {
          height: 32px;
          width: auto;
          margin-right: 8px; }
      body header .wrapper .btn_entry {
        height: 32px; }
        body header .wrapper .btn_entry a {
          width: 97px;
          line-height: 29px; }
  body nav {
    position: fixed;
    top: 59px;
    width: 100%;
    background-image: -moz-linear-gradient(-90deg, rgba(76, 76, 76, 0.8) 0%, rgba(0, 0, 0, 0.8) 100%);
    background-image: -webkit-linear-gradient(-90deg, rgba(76, 76, 76, 0.8) 0%, rgba(0, 0, 0, 0.8) 100%);
    background-image: -ms-linear-gradient(-90deg, rgba(76, 76, 76, 0.8) 0%, rgba(0, 0, 0, 0.8) 100%);
    z-index: 10; }
    body nav ul.wrapper {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-around; }
      body nav ul.wrapper li a {
        display: flex;
        align-items: center;
        padding: 10px 3.467vw;
        box-sizing: border-box;
        width: 100%;
        height: 44px;
        text-align: center;
        font-size: 1rem;
        vertical-align: middle;
        line-height: 1.25;
        font-weight: bold;
        color: #ff8707; }
  body .mainimage {
    padding-top: 103px;
    text-align: center;
    background: #fff;
    margin-bottom: 22px; }
    body .mainimage .wrapper {
      padding: 16px 28px; }
  body .journal {
    padding: 0 4.267vw;
    margin-bottom: 22px; }
    body .journal ul.wrapper {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between; }
      body .journal ul.wrapper li {
        width: 48%; }
        body .journal ul.wrapper li img {
          display: block;
          margin: 0 auto 8px; }
        body .journal ul.wrapper li:first-of-type {
          position: relative; }
          body .journal ul.wrapper li:first-of-type:after {
            content: 'new';
            display: block;
            text-transform: uppercase;
            font-size: 1.2rem;
            font-weight: bold;
            padding: 4px 8px;
            border-radius: 3px;
            color: white;
            background: red;
            position: absolute;
            top: -5px;
            left: -10px;
            line-height: 1; }
        body .journal ul.wrapper li p {
          font-weight: bold;
          line-height: 1.4; }
          body .journal ul.wrapper li p span {
            display: block;
            font-size: 1rem;
            font-weight: normal; }
  body .pickup-report figure img {
    display: block;
    margin: 0 auto;
    width: 100%; }
  body .pickup-report h3 span {
    color: #1A0DAB;
    text-decoration: underline;
    font-weight: normal; }
  body .about .wrapper .about_mainimage {
    margin-bottom: 30px; }
  body .about .wrapper .map {
    position: relative;
    padding-bottom: 10px;
    margin-bottom: 18px; }
    body .about .wrapper .map ul li a {
      font-weight: bold;
      font-size: 1.5rem;
      background: url("../images/about_icon_eventlist.svg") no-repeat left center;
      background-size: 1.6rem;
      padding-left: 2rem; }
    body .about .wrapper .map ul.eventlist_upper {
      position: absolute;
      left: 0;
      top: 20px; }
      body .about .wrapper .map ul.eventlist_upper li:nth-of-type(1) {
        margin-left: 40px; }
      body .about .wrapper .map ul.eventlist_upper li:nth-of-type(2) {
        margin-left: 30px; }
      body .about .wrapper .map ul.eventlist_upper li:nth-of-type(3) {
        margin-left: 20px; }
      body .about .wrapper .map ul.eventlist_upper li:nth-of-type(4) {
        margin-left: 10px; }
    body .about .wrapper .map ul.eventlist_lower {
      position: absolute;
      right: 0;
      bottom: 0; }
      body .about .wrapper .map ul.eventlist_lower li:first-of-type {
        margin-left: 20px; }
      body .about .wrapper .map ul.eventlist_lower li:nth-of-type(2) {
        margin-left: 10px; }
  body .about .wrapper .firelist {
    margin-bottom: 1.6rem; }
    body .about .wrapper .firelist li {
      background: url("../images/about_icon_fire.svg") no-repeat left top;
      background-size: 2rem;
      padding: 5px 0 0 2.6rem;
      text-align: justify;
      font-feature-settings: "palt";
      letter-spacing: 0.2rem; }
      body .about .wrapper .firelist li:not(:last-of-type) {
        margin-bottom: 1.4rem; }
      body .about .wrapper .firelist li ul li {
        background: none;
        padding: 0;
        text-indent: -0.8rem;
        padding-left: 0rem; }
        body .about .wrapper .firelist li ul li:not(:last-of-type) {
          margin-bottom: 0; }
  body .about .wrapper .notice {
    border-radius: 5px;
    box-sizing: border-box;
    font-weight: bold;
    line-height: 1.5;
    background: #fdd000;
    padding: 17px;
    margin-bottom: 1.6rem;
    letter-spacing: 0; }
    body .about .wrapper .notice h3 {
      text-align: center;
      margin-bottom: 8px;
      border-bottom: dotted 2px white;
      margin-top: 0; }
    body .about .wrapper .notice p {
      letter-spacing: 0;
      /*
      					text-indent: -1.4rem;
      					padding-left: 1.4rem;
      					&:first-of-type {
      						margin-bottom: 0.7rem;
      					}
      */ }
    body .about .wrapper .notice a {
      text-decoration: underline; }
  body .about .wrapper .noticelist {
    margin-bottom: 20px; }
    body .about .wrapper .noticelist:last-of-type {
      margin-bottom: 0; }
    body .about .wrapper .noticelist li {
      text-align: justify;
      font-feature-settings: "palt";
      letter-spacing: 0.2rem;
      text-indent: -1.4rem;
      padding-left: 1.4rem; }
      body .about .wrapper .noticelist li:not(:last-of-type) {
        margin-bottom: 1.4rem; }
  body .about .wrapper .container_icon {
    margin-bottom: 20px;
    flex-wrap: wrap;
    background: #ecf4d2;
    padding: 20px 0;
    border-radius: 5px; }
    body .about .wrapper .container_icon a:first-of-type {
      margin-right: 8px; }
    body .about .wrapper .container_icon a img {
      display: block; }
    body .about .wrapper .container_icon p {
      line-height: 1;
      margin: 10px 10px 0;
      font-weight: bold; }
      body .about .wrapper .container_icon p span {
        color: #ff148b; }
  body .btn_rule {
    margin-bottom: 22px; }
    body .btn_rule a {
      padding: 14px 0 7px;
      font-size: 1.8rem;
      font-weight: bold;
      color: white;
      text-align: center;
      display: block;
      background-image: -moz-linear-gradient(-90deg, #4c4c4c 0%, black 100%);
      background-image: -webkit-linear-gradient(-90deg, #4c4c4c 0%, black 100%);
      background-image: -ms-linear-gradient(-90deg, #4c4c4c 0%, black 100%); }
      body .btn_rule a:after {
        content: url("../images/btn_rule_img_arrow.svg");
        display: block;
        margin-top: -16px; }
      body .btn_rule a span {
        border-bottom: solid 1px white; }
  body .schedule .wrapper p {
    text-indent: -1.4rem;
    padding-left: 1.4rem;
    margin-bottom: 20px; }
  body .schedule .wrapper ul li:not(:last-of-type) {
    margin-bottom: 12px; }
  body .schedule .wrapper ul li .schedule_container {
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    justify-content: space-between;
    position: relative; }
    body .schedule .wrapper ul li .schedule_container.deadline:after {
      content: "締切";
      display: block;
      position: absolute;
      top: 26px;
      right: 14px;
      color: #ff148b;
      font-weight: bold;
      font-size: 2.4rem; }
    body .schedule .wrapper ul li .schedule_container:first-of-type div:first-of-type {
      background-image: -moz-linear-gradient(-90deg, #4c4c4c 0%, black 100%);
      background-image: -webkit-linear-gradient(-90deg, #4c4c4c 0%, black 100%);
      background-image: -ms-linear-gradient(-90deg, #4c4c4c 0%, black 100%);
      width: 100%;
      margin-right: 1px;
      border-radius: 4px;
      color: #fff;
      padding: 8px 8px 4px;
      box-sizing: border-box; }
      body .schedule .wrapper ul li .schedule_container:first-of-type div:first-of-type .event_day {
        display: inline-block;
        width: 70px;
        text-align: center;
        font-weight: bold;
        font-size: 2rem;
        line-height: 1;
        padding: 3px 0;
        background-image: -moz-linear-gradient(90deg, #c40566 0%, #ff148b 100%);
        background-image: -webkit-linear-gradient(90deg, #c40566 0%, #ff148b 100%);
        background-image: -ms-linear-gradient(90deg, #c40566 0%, #ff148b 100%);
        border-radius: 5px;
        margin-right: 8px; }
      body .schedule .wrapper ul li .schedule_container:first-of-type div:first-of-type h3 {
        display: inline-block;
        margin-bottom: 8px; }
      body .schedule .wrapper ul li .schedule_container:first-of-type div:first-of-type ul {
        margin-left: 1rem; }
        body .schedule .wrapper ul li .schedule_container:first-of-type div:first-of-type ul li {
          font-size: 1.2rem;
          line-height: 1.3;
          margin-bottom: 0; }
    body .schedule .wrapper ul li .schedule_container:first-of-type div:last-of-type a {
      height: 90px;
      width: 68px;
      line-height: 1.2;
      padding-top: 21px;
      box-sizing: border-box; }
      body .schedule .wrapper ul li .schedule_container:first-of-type div:last-of-type a span {
        font-size: 1rem;
        display: block;
        margin-bottom: 0.5rem; }
    body .schedule .wrapper ul li .schedule_container:nth-of-type(2) div {
      flex-grow: 1;
      flex-basis: 50%; }
      body .schedule .wrapper ul li .schedule_container:nth-of-type(2) div a {
        height: 40px;
        line-height: 40px;
        font-size: 1.2rem; }
  body footer {
    background: #232323;
    padding: 36px 0 72px;
    position: relative; }
    body footer .wrapper {
      text-align: center; }
      body footer .wrapper .container_icon {
        margin-bottom: 20px; }
        body footer .wrapper .container_icon figure {
          width: 150px;
          height: 72px;
          border-radius: 4px;
          background: #fff;
          padding-top: 12px;
          box-sizing: border-box;
          text-align: center; }
          body footer .wrapper .container_icon figure:first-of-type {
            margin-right: 18px; }
          body footer .wrapper .container_icon figure img {
            height: 48px;
            width: auto; }
      body footer .wrapper small {
        font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', sans-serif;
        text-align: center;
        color: #fff;
        font-size: 1rem;
        line-height: 1.2; }
    body footer .btn_pagetop {
      position: absolute;
      bottom: 0;
      right: 0; }
      body footer .btn_pagetop a {
        background-image: -moz-linear-gradient(-90deg, #c40566 0%, #ff148b 100%);
        background-image: -webkit-linear-gradient(-90deg, #c40566 0%, #ff148b 100%);
        background-image: -ms-linear-gradient(-90deg, #c40566 0%, #ff148b 100%);
        padding: 4px 24px;
        color: #fff;
        font-weight: bold;
        text-transform: uppercase;
        display: block;
        border-radius: 4px 0 0 0; }
  body .rule {
    padding-top: 123px; }
    body .rule .wrapper .rule_sub_nav {
      display: -webkit-flex;
      display: -moz-flex;
      display: -ms-flex;
      display: -o-flex;
      display: flex;
      justify-content: space-between;
      margin-bottom: 22px; }
      body .rule .wrapper .rule_sub_nav li {
        flex-basis: 33%; }
        body .rule .wrapper .rule_sub_nav li a {
          display: block;
          line-height: 1.4;
          padding: 16px 0; }
          body .rule .wrapper .rule_sub_nav li a span {
            display: inline-block; }
    body .rule .wrapper section {
      background: #000;
      border: solid 4px #d2d2d2;
      padding: 20px; }
      body .rule .wrapper section.rule-agreement {
        background: none;
        border: none;
        padding: 0; }
        body .rule .wrapper section.rule-agreement h2 {
          font-weight: bold;
          text-align: left;
          background: url("../images/rule_icon_listhead.png") no-repeat left top;
          background-size: 1.5rem;
          padding-left: 1.9rem;
          line-height: 1.2; }
        body .rule .wrapper section.rule-agreement h3 {
          color: #000;
          font-size: 1.4rem;
          font-feature-settings: "palt";
          text-align: center; }
        body .rule .wrapper section.rule-agreement p {
          font-size: 1.2rem;
          line-height: 1.5;
          margin-bottom: 8px; }
        body .rule .wrapper section.rule-agreement ul li {
          color: #000;
          background: none;
          padding: 0; }
          body .rule .wrapper section.rule-agreement ul li a {
            text-decoration: underline;
            color: #1A0DAB; }
      body .rule .wrapper section:not(:last-of-type) {
        margin-bottom: 22px; }
      body .rule .wrapper section .rule_sub_ttl img {
        height: 18px;
        border-bottom: solid 1px white;
        line-height: 1; }
      body .rule .wrapper section section {
        border: solid 1px #ff8707;
        padding: 16px;
        margin-bottom: 20px; }
        body .rule .wrapper section section .rule_sub_ttl img {
          border-bottom: solid 1px #ff8707; }
        body .rule .wrapper section section:first-of-type ul li {
          background: #313131; }
          body .rule .wrapper section section:first-of-type ul li:first-of-type {
            background: url("../images/rule_icon_listhead.png") no-repeat 8px 8px #313131;
            background-size: 9px; }
        body .rule .wrapper section section ul {
          margin-bottom: 8px; }
          body .rule .wrapper section section ul li {
            line-height: 1.5;
            background: url("../images/rule_icon_listhead.png") no-repeat 8px 8px #313131;
            background-size: 9px;
            padding: 4px 4px 4px 22px; }
            body .rule .wrapper section section ul li:not(:last-of-type) {
              margin-bottom: 0; }
            body .rule .wrapper section section ul li p {
              text-indent: 0;
              padding-left: 0; }
        body .rule .wrapper section section p {
          font-size: 1.2rem;
          color: #fff;
          line-height: 1.5;
          text-indent: -1.2rem;
          padding-left: 1.2rem; }
      body .rule .wrapper section .rule_sub_ttl {
        margin-bottom: 4px; }
      body .rule .wrapper section ul:not(:last-of-type) {
        margin-bottom: 20px; }
      body .rule .wrapper section ul li {
        color: #fff;
        font-size: 1.2rem;
        line-height: 1.5;
        background: url("../images/rule_icon_listhead-white.png") no-repeat left 4px;
        background-size: 9px;
        padding-left: 14px;
        text-align: justify;
        font-feature-settings: "palt";
        letter-spacing: 0.2rem; }
        body .rule .wrapper section ul li:not(:last-of-type) {
          margin-bottom: 8px; }
        body .rule .wrapper section ul li .go-twitter {
          display: block;
          color: #fff;
          text-decoration: underline;
          text-align: left; }
      body .rule .wrapper section h3 {
        color: #fff;
        margin-bottom: 10px; }
        body .rule .wrapper section h3.rule_sub_ttl_ng {
          background: url("../images/rule_icon_listhead_ng_.svg") no-repeat left 1px;
          background-size: 20px;
          padding-left: 25px; }
        body .rule .wrapper section h3.rule_sub_ttl_notice {
          background: url("../images/rule_icon_listhead_notice.svg") no-repeat left 2px;
          background-size: 20px;
          padding-left: 25px; }
        body .rule .wrapper section h3.rule_sub_ttl_entry {
          background: url("../images/rule_icon_listhead_entry.svg") no-repeat left 0px;
          background-size: 16px;
          padding-left: 21px; }
    body .rule .wrapper .btn_entry.btn_entry_details {
      margin-bottom: 22px; }
    body .rule .wrapper .entry-block .entry-details {
      margin-bottom: 0; }
      body .rule .wrapper .entry-block .entry-details ul li {
        background: #535353;
        padding: 0; }
        body .rule .wrapper .entry-block .entry-details ul li:not(:last-of-type) {
          margin-bottom: 16px; }
        body .rule .wrapper .entry-block .entry-details ul li h3 {
          background: #313131;
          line-height: 2;
          font-size: 1.4rem; }
          body .rule .wrapper .entry-block .entry-details ul li h3 span {
            display: inline-block;
            background-image: -moz-linear-gradient(90deg, #c40566 0%, #ff148b 100%);
            background-image: -webkit-linear-gradient(90deg, #c40566 0%, #ff148b 100%);
            background-image: -ms-linear-gradient(90deg, #c40566 0%, #ff148b 100%);
            width: 28px;
            text-align: center;
            margin-right: 8px; }
        body .rule .wrapper .entry-block .entry-details ul li div {
          padding: 0 12px 12px; }
          body .rule .wrapper .entry-block .entry-details ul li div:not(:first-of-type) {
            padding: 12px; }
          body .rule .wrapper .entry-block .entry-details ul li div p:not(:last-of-type) {
            margin-bottom: 1rem; }
          body .rule .wrapper .entry-block .entry-details ul li div .icon-container {
            padding: 0;
            display: -webkit-flex;
            display: -moz-flex;
            display: -ms-flex;
            display: -o-flex;
            display: flex; }
            body .rule .wrapper .entry-block .entry-details ul li div .icon-container a:first-of-type {
              margin-right: 8px; }
        body .rule .wrapper .entry-block .entry-details ul li hr {
          border: solid 4px #000;
          margin: 0; }

@media screen and (min-width: 768px) {
  body {
    font-size: 1.6rem;
    /* header setting START*/
    /* END header setting */
    /* nav setting START*/
    /* END nav setting */
    /* article.mainimage setting START */
    /* END article.mainimage setting */
    /* article.about setting START */
    /* END article.about */
    /* article.schedule setting START */
    /* END article.schedule setting */
    /* footer setting START */
    /* END footer setting */ }
    body .btn_entry a {
      font-size: 1.6rem; }
      body .btn_entry a:hover {
        background-image: -moz-linear-gradient(90deg, #ff148b 0%, #c40566 100%);
        background-image: -webkit-linear-gradient(90deg, #ff148b 0%, #c40566 100%);
        background-image: -ms-linear-gradient(90deg, #ff148b 0%, #c40566 100%); }
    body header {
      padding: 12px; }
      body header .wrapper h1 img {
        height: 48px;
        margin-right: 16px; }
    body nav {
      top: 75px; }
      body nav ul.wrapper li a {
        font-size: 1.4rem;
        padding: 10px; }
        body nav ul.wrapper li a:hover {
          color: white; }
    body .mainimage {
      padding-top: 119px; }
    body .about .wrapper .map ul li a {
      font-size: 2rem;
      background-size: 2.1rem;
      padding-left: 2.8rem; }
      body .about .wrapper .map ul li a:hover {
        text-decoration: underline; }
    body .schedule .wrapper ul li .schedule_container:first-of-type div:first-of-type ul li {
      font-size: 1.4rem; }
    body .schedule .wrapper ul li .schedule_container:first-of-type div:last-of-type a {
      height: 90px;
      width: 68px;
      line-height: 1.2;
      padding-top: 21px;
      box-sizing: border-box; }
      body .schedule .wrapper ul li .schedule_container:first-of-type div:last-of-type a span {
        font-size: 1rem;
        display: block;
        margin-bottom: 0.5rem; }
    body .schedule .wrapper ul li .schedule_container:nth-of-type(2) div {
      font-size: 1.4rem; }
    body footer .btn_pagetop a:hover {
      background-image: -moz-linear-gradient(-90deg, #ff148b 0%, #c40566 100%);
      background-image: -webkit-linear-gradient(-90deg, #ff148b 0%, #c40566 100%);
      background-image: -ms-linear-gradient(-90deg, #ff148b 0%, #c40566 100%); } }
