/* ============================================================
   rules.css
   rules ページ専用スタイル
   (このページ固有のスタイルはここに追加してください)
============================================================ */

ul {
   list-style: none;
}

.container img {
   margin: auto;
}

.youtube_container {
   text-align: center;
}

.youtube_frame {
   width: 100%;
   aspect-ratio: 16 / 9;
   height: 100%;
   max-width: 960px;
}

.row::before {
   display: inline-block;
}

.row::after {
   display: inline-block;
}

.row-eq-height {
   display: flex;
   flex-wrap: wrap;
}

@media (max-width: 599px) {
   .pc {
      display: none;
   }
}

@media screen and (min-width: 600px) and (max-width: 1023px) {
   .pc {
      display: none;
   }
}

@media (min-width: 1024px) {
   .tb {
      display: none;
   }
}

@media (max-width: 599px) {
   .tb {
      display: none;
   }
}

@media (min-width: 1024px) {
   .sp {
      display: none;
   }
}

@media screen and (min-width: 600px) and (max-width: 1023px) {
   .sp {
      display: none;
   }
}

@media (min-width: 1024px) {
   .-pc {
      display: none !important;
   }
}

@media screen and (min-width: 600px) and (max-width: 1023px) {
   .-tb {
      display: none !important;
   }
}

@media (max-width: 599px) {
   .-sp {
      display: none !important;
   }
}

.scrl2 {
   cursor: pointer;
}

.scrl2:hover {
   opacity: 0.7;
}

.kosugi {
   font-family: "Kosugi Maru", sans-serif;
}

.fc {
   clear: both;
}

.cntr {
   text-align: center;
}

.emp_1 {
   margin: 0 0.2em;
   font-weight: bold;
   border-bottom: 1px dashed #000;
}

.emp_2 {
   margin: 0 0.2em;
   color: #ff0045;
   font-weight: bold;
   border-bottom: 1px dashed #000;
}

@-webkit-keyframes Gradient {
   0% {
      background-position: 0% 50%;
   }

   50% {
      background-position: 100% 50%;
   }

   100% {
      background-position: 0% 50%;
   }
}

@-moz-keyframes Gradient {
   0% {
      background-position: 0% 50%;
   }

   50% {
      background-position: 100% 50%;
   }

   100% {
      background-position: 0% 50%;
   }
}

@keyframes Gradient {
   0% {
      background-position: 0% 50%;
   }

   50% {
      background-position: 100% 50%;
   }

   100% {
      background-position: 0% 50%;
   }
}

@-webkit-keyframes shine {
   100% {
      left: 125%;
   }
}

@keyframes shine {
   100% {
      left: 125%;
   }
}

/*!
 * COAMIX Styles
 */
@-webkit-keyframes rocket_anim {
   0% {
      -webkit-transform: translate(0, 0);
      transform: translate(0, 0);
   }

   50% {
      -webkit-transform: translate(-20px, 20px);
      transform: translate(-20px, 20px);
   }

   100% {
      -webkit-transform: translate(0, 0);
      transform: translate(0, 0);
   }
}

@keyframes rocket_anim {
   0% {
      -webkit-transform: translate(0, 0);
      transform: translate(0, 0);
   }

   50% {
      -webkit-transform: translate(-20px, 20px);
      transform: translate(-20px, 20px);
   }

   100% {
      -webkit-transform: translate(0, 0);
      transform: translate(0, 0);
   }
}

body {
   background-color: #fff;
}

#header {
   margin-bottom: 0;
}

.index_num {
   text-align: center;
   width: 4em;
   display: inline-block;
   padding: 0.1em 1em;
   font-size: 0.8em;
   margin-right: 0.5em;
   background-color: #5890e4;
   color: #fff;
}

nav.index {
   box-shadow: 0 0 0.5em rgba(0, 0, 0, 0.3);
   background-color: #eee;
   padding: 1em;
   position: relative;
}

nav.index>ul {
   list-style: none;
   padding: 0;
}

nav.index>ul>li:nth-child(odd) {
   padding: 1em 1.5em;
   background-color: #e45959;
   color: #fff;
}

nav.index>ul>li>ul {
   list-style: none;
   padding: 0;
   margin: 0.5em 1em;
}

#content a {
   color: #009cff !important;
}

#content a:hover {
   border-bottom: 1px solid #009cff;
}

.video-wrapper {
   width: 100%;
   aspect-ratio: 16 / 9;
   display: flex;
   flex-direction: column;
   align-items: center;
   justify-content: center;
}

.video-wrapper iframe {
   width: 100%;
   height: 100%;
}

.video-wrapper button {
   text-align: center;
   display: flex;
   background-color: #fff;
   padding: 1rem;
   margin: 1rem auto;
   border-radius: 0.4rem;
   border: solid 1px #c8c8c8;
}

.embed-consent-notice__text {
   padding: 3rem 0 0;
}

.separator {
   position: relative;
   margin-bottom: 4em;
   margin-top: 6em;
   height: 2px;
   border-bottom: 2px solid #eee;
   overflow: visible;
}

.separator:before {
   content: "";
   width: 5em;
   height: 5em;
   position: absolute;
   bottom: 0;
   left: 0;
   background-image: url("../img/rule-guideline/penmaru.png");
   background-size: contain;
   background-repeat: no-repeat;
   background-position: bottom left;
}

.separator.last:before {
   content: "";
   width: 5em;
   height: 5em;
   position: absolute;
   bottom: 0;
   left: 0;
   background-image: url("../img/rule-guideline/penmaru_fin.png");
   background-size: contain;
   background-repeat: no-repeat;
   background-position: bottom left;
}

.headline_style_01 h2 {
   margin: 1em 0;
   padding: 0.5em 1.5em;
   background-color: #e45959;
   color: #fff;
}

.headline_style_02 h3 {
   margin: 1em 0;
   padding: 0.5em 1.5em;
   font-size: 1em;
   background-color: #5890e4;
   color: #fff;
   margin-left: 1em;
}

.emp {
   font-weight: bold;
}

.emp_style_02 {
   color: #f00;
}

.emp_style_correct {
   color: #2cb700;
}

.emp_style_incorrect {
   color: #f00;
}

.box_content p {
   margin: 0;
}

.box_content .intro {
   padding: 1em;
   margin: 1em 0;
   margin-bottom: 0;
   background-color: #ffefd1;
}

.box_content .intro p {
   margin: 0;
}

.box_content .detail {
   padding: 1em;
   background-color: #f5f5f5;
}

.box_content .detail p {
   margin: 0;
}

.box_content .note {
   padding: 1em;
   margin: 0.5em 0;
}

.box_content .img {
   text-align: center;
   background-color: #fff;
   padding: 0.5em;
}

.social_links {
   background-color: #eee;
   background-image: url("../img/common/overlays_inv/03.png");
}

.social_links .col {
   margin: 0;
}

.social_links p {
   margin: 0;
   padding: 0;
}

.social_links p a {
   display: block;
   padding: 1em;
}

.note {
   border: solid 1px #ccc;
   padding: 10px 14px;
   color: #666;
   font-style: italic;
}

@media (max-width: 599px) {
   .social_links p a span {
      display: none;
   }
}

.social_links p.fb a {
   color: #3a5998;
}

.social_links p.tw a {
   color: #55abee;
}

.social_links p.ig a {
   color: #000;
}

.social_links p.yt a {
   color: #c4312b;
}