@charset "UTF-8";
/*------------
個別汎用カラー設定
-------------*/
/*
html {
  font-size: 62.5%;
}

body {
  font-size: 1.8rem;
  line-height: 2;
}*/
.w_limit_1120 {
  max-width: 1120px;
  margin: auto; }

.w_limit_900 {
  max-width: 900px;
  margin: auto; }

.w_limit_sp {
  width: 94%; }

.pdlr-15 {
  padding: 0 15px !important; }

#namaikisecond {
  font-size: 1.6rem;
  line-height: 1.4;
  background-color: rgba(255, 123, 172, 0.25);
  background: linear-gradient(90deg, rgba(255, 137, 0, 0.25) 0%, rgba(255, 126, 9, 0.25) 13.84%, rgba(254, 98, 34, 0.25) 37.86%, rgba(253, 52, 75, 0.25) 68.96%, rgba(251, 0, 121, 0.25) 100%);
  color: #191616;
  padding-bottom: 50px; }

.header .header_sp {
  display: none; }

.article-container {
  background-color: #ffffff;
  border: solid 1px #d4100e !important;
  box-shadow: 15px 15px 0 #d60b45;
  margin: 15px 0 50px; }
  .article-container .w_limit_900 {
    margin-bottom: 50px !important;
    padding: 30px 20px 50px; }

.present-winner {
  color: #ffffff;
  background-color: #de5b8c !important;
  font-size: 2.1rem !important;
  font-weight: 600;
  padding: 10px;
  display: inline-block; }

.present01-flex, .present02-flex, .tour-flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center; }

.present01-flex > figure {
  display: block;
  width: 40%; }
.present01-flex > div {
  width: 50%;
  padding-left: 5%;
  border-left: dashed 2px #cccccc !important; }

.present02-flex > figure {
  display: block;
  width: 48%;
  margin-bottom: 25px; }

.figure-flex {
  display: -webkit-flex;
  display: -moz-flex;
  display: -ms-flex;
  display: -o-flex;
  display: flex;
  flex-wrap: wrap;
  margin: 25px 0; }
  .figure-flex figure {
    display: block;
    width: 25%; }

.tour-flex {
  margin: auto !important;
  padding-top: 15px !important;
  padding-bottom: 0 !important;
  align-items: flex-start;
  justify-content: space-between !important;
  flex-wrap: nowrap; }
  .tour-flex figure {
    width: 55%;
    margin-bottom: 15px; }
    .tour-flex figure img {
      border: solid 1px #cccccc;
      filter: drop-shadow(4px 4px 6px rgba(200, 200, 200, 0.75)); }
  .tour-flex > div {
    width: 42%;
    padding-left: 3%;
    min-width: 350px;
    margin: 0 !important; }

table.present01-table th {
  width: 25%;
  text-align: center;
  padding: 5px 0; }
  table.present01-table th div {
    background-color: #e6e6e6;
    border-radius: 50px;
    padding: 10px; }
table.present01-table td {
  padding: 10px;
  width: 75%; }

#namaikisecond .main h2 {
  display: block !important;
  background-color: #fce221 !important;
  color: #c1272d;
  text-align: center;
  position: relative;
  padding: 15px !important;
  text-decoration: none;
  font-size: 2.6rem;
  font-weight: 600;
  border-bottom: solid 1px #d4100e !important; }
  #namaikisecond .main h2 span {
    display: block;
    padding-left: 1em;
    font-size: 2.1rem;
    margin-top: 5px; }
#namaikisecond .main h3 {
  margin-bottom: 10px !important;
  margin-top: 25px !important;
  padding: 10px !important;
  border-left: 10px solid #de5b8c !important;
  border-bottom: solid 1px #cccccc !important;
  font-weight: 600;
  font-size: 2.1rem; }

@media screen and (max-width: 767px) {
  .tour-flex {
    flex-direction: column;
    padding: 0 !important; }
    .tour-flex figure {
      width: 100%;
      max-width: 500px;
      margin: 10px auto 15px; }
    .tour-flex > div {
      width: 100%;
      padding-left: 0;
      text-align: center;
      min-width: auto; } }
@media screen and (max-width: 640px) {
  #namaikisecond .header .header_pc {
    display: none; }
  #namaikisecond .header .header_sp {
    display: block; }

  .present-winner {
    display: block; }

  .present01-flex {
    flex-direction: column; }
    .present01-flex > figure {
      width: 100%; }
    .present01-flex > div {
      width: 100%;
      padding-left: 0%;
      border-left: none !important;
      border-top: dashed 2px #cccccc !important;
      text-align: center;
      margin-top: 15px;
      padding-top: 15px; }

  .figure-flex figure {
    width: 50%; }
    .figure-flex figure.sp-none {
      display: none; }

  table.present01-table th, table.present01-table td {
    display: block; }
  table.present01-table th {
    width: 100%;
    text-align: center;
    padding: 5px 0; }
    table.present01-table th div {
      background-color: #e6e6e6;
      border-radius: 50px;
      padding: 10px; }
  table.present01-table td {
    width: 100%;
    text-align: center; }

  .present02-flex > figure {
    display: block;
    width: 100%;
    margin-bottom: 25px; } }

@media screen and (min-width: 640px) {
  article.nonav .contents section {
      max-width:1120px !important;
      margin: 0 auto !important;
    }
    article.nonav .contents{
        padding:0 !important;
    }   
}
/*--------------------------------------------
 [99] 標準機能
---------------------------------------------*/
/*
ボタン
----------------*/
a.Btn {
  width: 100%;
  max-width: 400px;
  display: block;
  background-color: #ff7bac;
  background: linear-gradient(90deg, #ff8900 0%, #ff7e09 13.84%, #fe6222 37.86%, #fd344b 68.96%, #fb0079 100%);
  filter: drop-shadow(4px 4px 0px rgba(200, 200, 200, 0.5));
  color: #ffffff;
  font-size: 1.6rem;
  font-weight: 600;
  padding: 15px 10px;
  position: relative;
  text-decoration: none;
  line-height: 1.6;
  border-radius: 50px; }
  a.Btn::after {
    transition: 0.3s; }
  a.Btn::after {
    content: '';
    width: 12px;
    height: 12px;
    border-top: solid 2px #ffffff;
    border-right: solid 2px #ffffff;
    transform: rotate(45deg);
    position: absolute;
    top: 0;
    bottom: 0;
    right: 20px;
    margin: auto; }

a.Btn:hover {
  opacity: 1; }
  a.Btn:hover::after {
    transition: 0.3s;
    right: -14px;
    border-color: #c1272d; }

/*
 文字サイズ
---------------------------------------------*/
.fz-12 {
  font-size: 1.2rem !important; }

.fz-14 {
  font-size: 1.4rem !important; }

.fz-15 {
  font-size: 1.5rem !important; }

.fz-16 {
  font-size: 1.6rem !important; }

.fz-18 {
  font-size: 1.8rem !important; }

.fz-21 {
  font-size: 2.1rem !important; }

.fz-24 {
  font-size: 2.4rem !important; }

.fz-26 {
  font-size: 2.6rem !important; }

.fz-28 {
  font-size: 2.8rem !important; }

.fz-30 {
  font-size: 3rem !important; }

.fz-32 {
  font-size: 3.2rem !important; }

@media screen and (max-width: 600px) {
  .fz-18_sp {
    font-size: 1.8rem !important; }

  .fz-21_sp {
    font-size: 2.1rem !important; }

  .fz-24_sp {
    font-size: 2.4rem !important; }

  .fz-26_sp {
    font-size: 2.6rem !important; }

  .fz-28_sp {
    font-size: 2.8rem !important; } }
/*
 文字のウェイト
---------------------------------------------*/
.fw-400 {
  font-weight: 400; }

.fw-600 {
  font-weight: 600; }

.fw-700 {
  font-weight: 700; }

/*
 文字色
---------------------------------------------*/
.fc-normal {
  color: #191616; }

.fc-white {
  color: #ffffff; }

.fc-red {
  color: #c1272d; }

.fc-yellow {
  color: #FCCF00; }

.fc-mizuiro {
  color: #0FACE5; }

.fc-pink {
  color: #F0629F; }

.fc-orange {
  color: #f15a24; }

/*
 余白
---------------------------------------------*/
/*上*/
.mgt-0 {
  margin-top: 0px !important; }

.mgt-10 {
  margin-top: 10px !important; }

.mgt-15 {
  margin-top: 15px !important; }

.mgt-20 {
  margin-top: 20px !important; }

.mgt-25 {
  margin-top: 25px !important; }

.mgt-30 {
  margin-top: 30px !important; }

.mgt-40 {
  margin-top: 40px !important; }

.mgt-50 {
  margin-top: 50px !important; }

.mgt-60 {
  margin-top: 60px !important; }

.mgt-70 {
  margin-top: 70px !important; }

/*下*/
.mgb-0 {
  margin-bottom: 0px !important; }

.mgb-10 {
  margin-bottom: 10px !important; }

.mgb-15 {
  margin-bottom: 15px !important; }

.mgb-20 {
  margin-bottom: 20px !important; }

.mgb-25 {
  margin-bottom: 25px !important; }

.mgb-30 {
  margin-bottom: 30px !important; }

.mgb-40 {
  margin-bottom: 40px !important; }

.mgb-50 {
  margin-bottom: 50px !important; }

/*左右*/
.mgl-1em {
  margin-left: 1em; }

.mgl-05em {
  margin-left: 0.5em; }

.mgr-1em {
  margin-right: 1em; }

.mgr-05em {
  margin-right: 0.5em; }

@media screen and (max-width: 600px) {
  .mgt-15_sp {
    margin-top: 15px; }

  .mgb-15_sp {
    margin-bottom: 15px; } }
/*その他書式設定
---------------------------------------------*/
.mglr-auto {
  margin-left: auto;
  margin-right: auto; }

.ta-center {
  text-align: center; }

.ta-right {
  text-align: right; }

.ta-left {
  text-align: left; }

.lh-12 {
  line-height: 1.2; }

.lh-15 {
  line-height: 1.5; }

.indent-kome {
  padding-left: 1em !important;
  text-indent: -1em !important; }

.pdt-10 {
  padding-top: 10px !important; }

.pdb-10 {
  padding-bottom: 10px !important; }

.bdt-dashed {
  border-top: dashed 1px #cccccc !important; }

.bdb-dashed {
  border-bottom: dashed 1px #cccccc !important; }

@media screen and (max-width: 767px) {
  .mglr-auto_767 {
    margin-left: auto;
    margin-right: auto; } }
@media screen and (max-width: 600px) {
  .ta-center_sp {
    text-align: center; }

  .ta-right_sp {
    text-align: right; }

  .ta-left_sp {
    text-align: left; } }
/*改行
---------------------------------------------*/
.br_480, .br_640, .br_767, .br_768, .br_1200 {
  display: none; }

@media screen and (max-width: 1200px) {
  .br_1200 {
    display: inline; } }
@media screen and (max-width: 768px) {
  .br_768 {
    display: inline; } }
@media screen and (max-width: 767px) {
  .br_767 {
    display: inline; } }
@media screen and (max-width: 640px) {
  .br_640 {
    display: inline !important; } }
@media screen and (max-width: 480px) {
  .br_480 {
    display: inline; } }
/*線
---------------------------------------------*/
.bdt-hasen {
  border-top: dashed 1px #cccccc; }

/*背景
---------------------------------------------*/
.bg-white {
  background: #ffffff; }

.bg-gray {
  background: #eaeaea; }

.bg-stripe {
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(90deg, white, white 10px, #faf7c6 10px, #faf7c6 20px); }

.bg-shasen {
  background-size: auto auto;
  background-color: white;
  background-image: repeating-linear-gradient(-45deg, rgba(255, 255, 255, 0), rgba(255, 255, 255, 0) 5px, whitesmoke 5px, whitesmoke 10px); }

.bg-shasen-bold {
  background-size: auto auto;
  background-color: #ffffff;
  background-image: repeating-linear-gradient(-45deg, transparent, transparent 15px, #F5F2E6 15px, #F5F2E6 30px); }

.bg-hougan {
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 14px, #e7e7e7 16px), linear-gradient(90deg, rgba(255, 255, 255, 0) 14px, #e7e7e7 16px);
  background-size: 16px 16px; }

.bg-dot-naname {
  background-color: #ffffff;
  background-image: radial-gradient(#ffd4d4 12%, rgba(255, 255, 255, 0) 32%), radial-gradient(#ffd4d4 12%, rgba(255, 255, 255, 0) 32%);
  background-position: 0 0, 5px 5px;
  background-size: 10px 10px; }

.bg-dot-hougan {
  background-color: #ffffff;
  background-image: radial-gradient(#e3e3e3 2px, rgba(255, 255, 255, 0) 2px);
  background-size: 15px 15px; }

.bg-gradation {
  background: #6ca861;
  background: linear-gradient(45deg, #6ca861 0%, #379e8e 100%); }
