@charset "UTF-8";
/*---------------------------------
Google Font
font-family: 'Noto Sans JP', sans-serif;
-----------------------------------*/
@import url(https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@300;700&display=swap);
@import url(https://fonts.googleapis.com/css2?family=Fredoka:wght@600&display=swap);
/*--mainColor:#002063;*/
/*border*/
/*border*/
html, body, div, span, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, a, img, strong, dl, dt, dd, ol, ul, li, form, label, table, caption, tr, th, td, input, form, textarea, header, nav, section, article, aside, footer {
  margin: 0;
  padding: 0;
  border: 0;
  outline: 0;
  box-sizing: border-box; }

html {
  font-size: 62.5%; }
  @media only screen and (max-width: 400px) {
    html {
      font-size: 58%; } }

body {
  font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Arial, Meiryo, Osaka, "MS P ゴシック", MS P Gothic, sans-serif;
  font-size: 1.6rem;
  line-height: 1;
  min-width: 360px;
  font-weight: normal; }
  @media only screen and (min-width: 640px) {
    body {
      min-width: 840px; } }

ol, ul, dt, dd, p {
  list-style-type: none;
  margin-inline-start: 0;
  margin-block-start: 0em;
  margin-block-end: 0em;
  padding-inline-start: 0px; }

img {
  width: auto;
  height: auto;
  max-width: 100%; }

p:empty {
  display: none; }

.grecaptcha-badge {
  visibility: hidden; }

/*---------------------------------
  Global
-----------------------------------*/
:root {
  --mGreen:#8de207;
  --mBlue:#00cfff;
  --mPink:#ff1db4;
  --mYellow:#ffe600;
  --mainColor:#002063;
  --gColor:#d6d6d6;
  /*--mainColor:#002063;*/
  --wrapper-width: 1280px;
  --wrapper-padding: 0;
  --space: max(
     0.5rem,
     calc((100vw - 1280px) / 2)
   );
  --borderThin:5px;
  --borderRmain:10px; }

/*---------------------------------
	LINK
-----------------------------------*/
a {
  transition-property: all;
  transition: 0.2s linear;
  cursor: pointer; }
  a:link, a:visited, a:hover, a:active {
    color: #000000;
    text-decoration: none; }
  a:hover, a:hover img {
    filter: alpha(opacity=60);
    opacity: 0.6; }

.linkb {
  position: relative; }
  .linkb a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%; }

.icona.line a {
  background: linear-gradient(transparent 85%, #8de207 15%); }
.icona a {
  position: relative;
  margin-left: 0.3rem; }
  .icona a::before {
    content: "";
    display: inline-block;
    width: 0;
    height: 0;
    margin-right: .2em;
    border-top: .25em solid transparent;
    border-bottom: .25em solid transparent;
    border-left: 0.35em solid #8de207;
    /* 右向き三角 */
    transform: translateY(-1px);
    /* ベースライン微調整 */ }

/*---------------------------------
	common SET
-----------------------------------*/
.wrapper {
  line-height: 1.7; }
  .wrapper img {
    line-height: 1;
    font-size: 0; }

.winner {
  padding-left: max(0.5rem, calc((100vw - 1280px) / 2)) !important;
  padding-right: max(0.5rem, calc((100vw - 1280px) / 2)) !important; }

.btnfix_top {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 9999; }
  .btnfix_top a {
    width: 40px;
    height: 40px;
    display: block; }
    .btnfix_top a img {
      width: 100%;
      height: 100%; }

.pan {
  margin: 1rem 2%;
  font-size: 1.3rem; }
  .pan a {
    display: inline-block;
    margin-right: 1rem; }
    .pan a:after {
      content: " > ";
      margin-left: 1rem; }

h1, h2, h3, h4, h5, h6 {
  font-weight: bold; }

.hSt_first {
  margin: 7rem 0 1rem;
  position: relative;
  text-align: center;
  color: #ff1db4;
  font-size: 2rem;
  line-height: 1; }
  .hSt_first span {
    position: relative;
    display: block;
    /*-webkit-text-stroke:18px $mainColor;*/
    text-shadow: #002063 10px 0px 0px, #002063 9.95004px 0.998334px 0px, #002063 9.80067px 1.98669px 0px, #002063 9.55337px 2.9552px 0px, #002063 9.21061px 3.89418px 0px, #002063 8.77583px 4.79426px 0px, #002063 8.25336px 5.64643px 0px, #002063 7.64842px 6.44218px 0px, #002063 6.96707px 7.17356px 0px, #002063 6.2161px 7.83327px 0px, #002063 5.40302px 8.41471px 0px, #002063 4.53596px 8.91207px 0px, #002063 3.62358px 9.32039px 0px, #002063 2.67499px 9.63558px 0px, #002063 1.69967px 9.8545px 0px, #002063 0.707372px 9.97495px 0px, #002063 -0.291995px 9.99574px 0px, #002063 -1.28845px 9.91665px 0px, #002063 -2.27202px 9.73848px 0px, #002063 -3.2329px 9.463px 0px, #002063 -4.16147px 9.09298px 0px, #002063 -5.04846px 8.63209px 0px, #002063 -5.88501px 8.08496px 0px, #002063 -6.66276px 7.45705px 0px, #002063 -7.37394px 6.75463px 0px, #002063 -8.01144px 5.98472px 0px, #002063 -8.56889px 5.15501px 0px, #002063 -9.04072px 4.2738px 0px, #002063 -9.42222px 3.34988px 0px, #002063 -9.70958px 2.39249px 0px, #002063 -9.89993px 1.4112px 0px, #002063 -9.99135px 0.415807px 0px, #002063 -9.98295px -0.583741px 0px, #002063 -9.8748px -1.57746px 0px, #002063 -9.66798px -2.55541px 0px, #002063 -9.36457px -3.50783px 0px, #002063 -8.96759px -4.4252px 0px, #002063 -8.481px -5.29836px 0px, #002063 -7.90968px -6.11858px 0px, #002063 -7.25932px -6.87766px 0px, #002063 -6.53644px -7.56803px 0px, #002063 -5.74824px -8.18277px 0px, #002063 -4.90261px -8.71576px 0px, #002063 -4.00799px -9.16166px 0px, #002063 -3.07333px -9.51602px 0px, #002063 -2.10796px -9.7753px 0px, #002063 -1.12153px -9.93691px 0px, #002063 -0.123887px -9.99923px 0px, #002063 0.87499px -9.96165px 0px, #002063 1.86512px -9.82453px 0px, #002063 2.83662px -9.58924px 0px, #002063 3.77978px -9.25815px 0px, #002063 4.68517px -8.83455px 0px, #002063 5.54374px -8.32268px 0px, #002063 6.34693px -7.72765px 0px, #002063 7.0867px -7.0554px 0px, #002063 7.75566px -6.31267px 0px, #002063 8.34713px -5.50686px 0px, #002063 8.8552px -4.64602px 0px, #002063 9.27478px -3.73877px 0px, #002063 9.6017px -2.79416px 0px, #002063 9.83268px -1.82163px 0px, #002063 9.96542px -0.830894px 0px;
    font-size: 5.8rem;
    letter-spacing: 0.2rem;
    font-family: Fredoka; }
    .hSt_first span::before {
      content: attr(h1text);
      position: absolute;
      color: #FFF;
      /*-webkit-text-stroke: 0px $mPink;*/
      text-shadow: #ff1db4 5px 0px 0px, #ff1db4 4.90033px 0.993347px 0px, #ff1db4 4.60531px 1.94709px 0px, #ff1db4 4.12668px 2.82321px 0px, #ff1db4 3.48353px 3.58678px 0px, #ff1db4 2.70151px 4.20736px 0px, #ff1db4 1.81179px 4.6602px 0px, #ff1db4 0.849836px 4.92725px 0px, #ff1db4 -0.145998px 4.99787px 0px, #ff1db4 -1.13601px 4.86924px 0px, #ff1db4 -2.08073px 4.54649px 0px, #ff1db4 -2.94251px 4.04248px 0px, #ff1db4 -3.68697px 3.37732px 0px, #ff1db4 -4.28444px 2.57751px 0px, #ff1db4 -4.71111px 1.67494px 0px, #ff1db4 -4.94996px 0.7056px 0px, #ff1db4 -4.99147px -0.291871px 0px, #ff1db4 -4.83399px -1.27771px 0px, #ff1db4 -4.48379px -2.2126px 0px, #ff1db4 -3.95484px -3.05929px 0px, #ff1db4 -3.26822px -3.78401px 0px, #ff1db4 -2.4513px -4.35788px 0px, #ff1db4 -1.53666px -4.75801px 0px, #ff1db4 -0.560763px -4.96846px 0px, #ff1db4 0.437495px -4.98082px 0px, #ff1db4 1.41831px -4.79462px 0px, #ff1db4 2.34258px -4.41727px 0px, #ff1db4 3.17346px -3.86382px 0px, #ff1db4 3.87783px -3.15633px 0px, #ff1db4 4.4276px -2.32301px 0px, #ff1db4 4.80085px -1.39708px 0px, #ff1db4 4.98271px -0.415447px 0px; }
  @media only screen and (max-width: 640px) {
    .hSt_first {
      margin: 2rem 0 1rem; } }

.hSt_second {
  text-align: center;
  color: #ff1db4;
  font-size: 3.2rem;
  display: flex;
  justify-content: center;
  margin: 2rem 0 4rem;
  line-height: 1; }
  .hSt_second::before, .hSt_second::after {
    content: "";
    display: block;
    width: 10rem;
    height: auto; }
  .hSt_second::before {
    background: url("../imgs/icon_tttl3maru_before.svg") center center no-repeat;
    background-size: contain;
    margin-right: 1rem; }
  .hSt_second::after {
    background: url("../imgs/icon_tttl3maru_after.svg") center center no-repeat;
    background-size: contain;
    margin-left: 1rem; }
  @media only screen and (max-width: 640px) {
    .hSt_second {
      font-size: 2.8rem;
      line-height: 1.2; } }

.wrapper > .pan + section:first-of-type > .hStyle_second {
  margin: 4rem 0 6rem 0; }

.hSt_third {
  text-align: center;
  color: #002063;
  font-size: 2.8rem;
  margin: 8rem 0 5rem;
  line-height: 1; }
  .hSt_third::before {
    content: "";
    display: block;
    width: auto;
    height: 1.8rem;
    background: url("../imgs/line_tttlmaru_top.svg") center top no-repeat;
    background-size: contain;
    margin-bottom: 1.5rem; }
  @media only screen and (max-width: 640px) {
    .hSt_third {
      font-size: 2.6rem;
      line-height: 1.2; } }

.wrapper > .pan + section:first-of-type > h3 {
  margin-top: 4rem; }

.hSt_fourth {
  background: #002063;
  padding: 0.5rem 1.3rem;
  border-radius: 10px;
  color: #FFF;
  font-size: 2rem; }
  @media only screen and (max-width: 640px) {
    .hSt_fourth {
      padding: 0.5rem 0.8rem;
      font-size: 1.9rem; } }

.hSt_fifth {
  color: #002063;
  font-size: 1.9rem;
  background: url("../imgs/icon_maru_blue.svg") left top 0.6rem no-repeat;
  background-size: 1.7rem 1.7rem;
  padding: 0 0 0 3rem; }
  @media only screen and (max-width: 640px) {
    .hSt_fifth {
      padding: 0 0 0 2.2rem; } }

.smlttl, .hSt.smlttl {
  font-size: 1.8rem;
  color: #002063;
  background: url("../imgs/icon_maru_blue.svg") left top 0.4em no-repeat;
  background-size: 1.7rem 1.7rem;
  padding: 0 0 0 2rem; }

address {
  font-style: normal; }

a[href^="tel:"] {
  pointer-events: none; }

/*---------------------------------
	common parts
-----------------------------------*/
.btnCmn {
  padding: 5px;
  /*shadow相殺*/
  text-align: center;
  max-width: 100%; }
  .btnCmn.right {
    text-align: right;
    margin-right: 2vw; }
  .btnCmn.left {
    text-align: left; }
  .btnCmn.linkG a {
    display: inline-block;
    margin-left: auto;
    margin-right: auto;
    border: 5px solid #FFF;
    border-radius: 15px;
    background-color: #8de207;
    color: #002063;
    font-weight: bold;
    box-shadow: 0px 0px 0px 5px #002063; }
    .btnCmn.linkG a:hover {
      border: 5px solid #002063;
      box-shadow: 0px 0px 0px 5px #8de207;
      background-color: #FFF;
      opacity: 1; }
  .btnCmn.lg a {
    padding: 1.5rem 3rem;
    font-size: 2rem; }
  .btnCmn.mg a {
    padding: 0.5rem 2rem; }

.btnSub {
  padding: 5px;
  /*shadow相殺*/ }
  .btnSub.linkB a {
    display: block;
    border: 5px solid #FFF;
    border-radius: 15px;
    background-color: #002063;
    color: #FFF;
    font-weight: bold;
    box-shadow: 0px 0px 0px 5px #002063; }
    .btnSub.linkB a:hover {
      border: 5px solid #002063;
      color: #002063;
      background-color: #FFF;
      opacity: 1;
      box-shadow: 0px 0px 0px 5px #8de207; }
  .btnSub.mb a {
    padding: 0.4rem 2rem; }

.btnicon.lg a, .btnicon.mg a {
  padding-left: 5rem; }
.btnicon a {
  position: relative; }
  .btnicon a:before {
    display: block;
    content: "";
    position: absolute;
    left: 2.5rem;
    top: calc(50% - .5em);
    height: 1em;
    width: 1em; }
.btnicon.dl a:before {
  background: url("../imgs/icon_download.svg") left top no-repeat; }
.btnicon.catalog a:before {
  background: url("../imgs/icon_catalog.svg") left top no-repeat; }
.btnicon.search a:before {
  background: url("../imgs/icon_search.svg") left top no-repeat; }

.area {
  border: 5px solid;
  border-radius: 10px;
  padding: 1.75rem 2rem;
  background: #FFF; }
  .area.plane, .area.pick {
    border-color: #002063; }
  .area.plane {
    color: #000000; }
  .area.pick {
    color: #002063;
    font-weight: bold; }
  .area.caution {
    border-color: #ffe600; }
  .area.supple {
    font-weight: bold;
    border-color: #d6d6d6;
    text-align: center; }
    .area.supple p {
      margin-bottom: 2rem; }

/* .gline{
	border: $borderThin solid $gColor;
	border-radius: $borderRmain;
} */
/*---------------------------------
	news // topuse
-----------------------------------*/
.newslist dl {
  display: flex;
  flex-wrap: wrap;
  font-weight: bold;
  margin-bottom: 2rem; }
  .newslist dl dt, .newslist dl dd {
    padding: 1.5rem 1rem; }
  .newslist dl dt {
    width: 10em;
    color: #002063; }
    .newslist dl dt:nth-of-type(odd) {
      background: url("../imgs/bg_stripeY.png") right 0 top 0 repeat; }
    @media only screen and (min-width: 1281px) {
      .newslist dl dt {
        padding-left: max(0.5rem, calc((100vw - 1280px) / 2));
        width: calc( 10em + max(0.5rem, calc((100vw - 1280px) / 2))); } }
  .newslist dl dd {
    width: calc(100% - 10em);
    display: flex; }
    .newslist dl dd:nth-of-type(odd) {
      background: url("../imgs/bg_stripeY.png") left 0 top 0 repeat; }
    .newslist dl dd a:hover {
      text-decoration: underline;
      text-decoration-color: #8de207;
      text-decoration-thickness: 2px;
      opacity: 1; }
    @media only screen and (min-width: 1281px) {
      .newslist dl dd {
        padding-right: max(0.5rem, calc((100vw - 1280px) / 2));
        width: calc(calc(100% - 10em) - max(0.5rem, calc((100vw - 1280px) / 2))); } }
    .newslist dl dd .newstype {
      color: #FFF;
      font-size: 1.3rem;
      margin-right: 1rem; }
      .newslist dl dd .newstype p {
        display: block;
        background: #002063;
        text-align: center;
        width: 6em; }
    .newslist dl dd span {
      display: inline-block;
      border: 2px solid #000;
      border-radius: 10px;
      padding: 0.4rem 1rem;
      margin-top: 0.5rem;
      font-size: 1.3rem;
      line-height: 1.3; }
  @media only screen and (max-width: 640px) {
    .newslist dl dt, .newslist dl dd {
      width: 100%; }
    .newslist dl dt {
      padding: 1.5rem 1rem 0.5rem; }
      .newslist dl dt:nth-of-type(odd) {
        background: url("../imgs/bg_stripeY.png") left 0 bottom 0 repeat; }
    .newslist dl dd {
      display: block;
      padding-top: 0; } }

/*---------------------------------
	navigation
-----------------------------------*/
nav.global.head {
  font-size: 1.8rem; }

nav.global.foot {
  font-size: 1.6rem;
  padding: 2rem 0;
  border: 6px solid #002063;
  border-right: none;
  border-left: none; }

@media only screen and (max-width: 640px) {
  nav.global.head, nav.global.foot {
    display: none; } }

nav.global ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  font-weight: bold; }
  nav.global ul li {
    padding: 0.2rem 1.0rem 0.2rem 2.2rem; }
    nav.global ul li:nth-of-type(odd) {
      background: url("../imgs/icon_maru_blue.svg") left center no-repeat;
      background-size: 1.3rem 1.3rem; }
    nav.global ul li:nth-of-type(even) {
      background: url("../imgs/icon_maru_green.svg") left center no-repeat;
      background-size: 1.3rem 1.3rem; }
    nav.global ul li:last-of-type {
      padding: 0.2rem 2.2rem 0.2rem 2.2rem;
      background-image: url("../imgs/icon_maru_green.svg"), url("../imgs/icon_maru_blue.svg");
      background-position: left center, right center;
      background-repeat: no-repeat, no-repeat;
      background-size: 1.3rem 1.3rem, 1.3rem 1.3rem; }
    nav.global ul li a {
      /* color: $mainColor; */
      color: transparent;
      background: linear-gradient(to bottom, #002063 50%, #ff1db4 50%) 100%;
      background-clip: text;
      background-size: 100% 200%;
      background-position: 0 0; }
      nav.global ul li a:hover {
        opacity: 1;
        /* color: $mPink; */
        background-position: 0 100%; }

/*---------------------------------
	drawer
-----------------------------------*/
header .serchbtn, header .navbtn {
  width: 45px;
  height: 45px;
  z-index: 9999;
  position: absolute;
  cursor: pointer;
  top: 0;
  display: none; }
  @media only screen and (max-width: 640px) {
    header .serchbtn, header .navbtn {
      display: block; } }
header .drawerserch, header .drawernav {
  background: rgba(0, 32, 99, 0.9);
  padding-top: 2rem;
  margin: 0 auto 0 0;
  position: fixed;
  z-index: 9998;
  width: 100%;
  min-height: 100%;
  text-align: center; }
  @media print {
    header .drawerserch, header .drawernav {
      display: none; } }
header .serchbtn {
  right: 55px; }
  header .serchbtn.close {
    background: url("../imgs/icon_serchSP.svg") center center no-repeat;
    background-size: 80% 80%; }
  header .serchbtn.open {
    background: url("../imgs/sp_nav_off.svg") center center no-repeat;
    background-size: 80% 80%;
    display: none; }
header .drawerserch {
  top: -100vh;
  left: 0;
  padding-top: 150px; }
  header .drawerserch form {
    width: 80vw;
    margin: 0 auto;
    background: #FFF;
    padding: 0.5rem 0;
    display: flex;
    justify-content: space-around; }
  header .drawerserch input {
    display: block; }
  header .drawerserch input[type="text"] {
    width: calc(80vw - 60px); }
  header .drawerserch button {
    height: 2.6rem;
    width: 2.6rem;
    margin-left: 0.5rem;
    border: none;
    cursor: pointer;
    background: url("../imgs/icon_search.svg") center center no-repeat;
    text-indent: -100px;
    overflow: hidden; }
header .navbtn {
  margin: 0 0 0 auto;
  right: 0; }
  header .navbtn.close {
    background: url("../imgs/sp_nav.svg") center center no-repeat;
    background-size: 80% 80%; }
  header .navbtn.open {
    background: url("../imgs/sp_nav_off.svg") center center no-repeat;
    background-size: 80% 80%;
    display: none; }
header .drawernav {
  top: 0;
  right: -100vw; }
  header .drawernav nav {
    width: 100%; }
    header .drawernav nav a {
      display: block;
      color: #FFF; }
    header .drawernav nav ul {
      font-weight: bold;
      font-size: 1.8rem; }
      header .drawernav nav ul li a {
        padding: 1.5rem 0; }
      header .drawernav nav ul.foot {
        background: url(../imgs/line_tttlmaru_top.svg) top center no-repeat;
        background-size: 140px auto;
        padding: 2rem 0 0;
        margin: 1.5rem 0 0; }
        header .drawernav nav ul.foot li a {
          padding: 1rem 0; }

/*---------------------------------
	header
-----------------------------------*/
header {
  padding: 0 1% 3rem;
  width: 100%;
  background: rgba(255, 255, 255, 0.9);
  z-index: 9997; }
  header.fixed {
    position: fixed;
    top: 0;
    transition: .5s;
    padding: 0.5rem 1% 2rem;
    border-bottom: 2px solid #ffe600; }
    @media only screen and (max-width: 640px) {
      header.fixed {
        padding: 0.5rem 1% 0; } }
    header.fixed .tophead {
      margin: 1rem 0 2rem; }
  header .tophead {
    margin: 1rem 0 3rem;
    position: relative; }
    @media only screen and (max-width: 640px) {
      header .tophead {
        margin: 1rem 0; } }
    header .tophead .mainlogo {
      text-align: center; }
      header .tophead .mainlogo img {
        display: inline-block;
        margin: 0 auto;
        height: 4rem;
        width: auto; }
        @media only screen and (max-width: 640px) {
          header .tophead .mainlogo img {
            margin: 0 auto 0 0; } }
      @media only screen and (max-width: 390px) {
        header .tophead .mainlogo {
          text-align: left; } }
    header .tophead .search {
      position: absolute;
      right: 0;
      top: 0; }
      @media only screen and (max-width: 640px) {
        header .tophead .search {
          display: none; } }
      header .tophead .search form {
        display: flex;
        align-items: center; }
      header .tophead .search input[type="text"] {
        border: 2px solid #002063;
        padding: 0.2rem 1rem;
        width: 10em; }
      header .tophead .search button {
        height: 2.6rem;
        width: 2.6rem;
        margin-left: 0.5rem;
        background: url("../imgs/icon_search.svg") center center no-repeat;
        border: none;
        cursor: pointer;
        text-indent: -100px;
        overflow: hidden; }

/*---------------------------------
	footer
-----------------------------------*/
footer {
  margin-top: 7rem; }
  footer .sports {
    text-align: center;
    margin: 2rem auto; }
    footer .sports p {
      font-weight: bold;
      margin-bottom: 1rem; }
    footer .sports .banner {
      display: flex;
      justify-content: center; }
      footer .sports .banner a {
        margin: 0 1rem; }
        footer .sports .banner a img {
          height: 60px; }
  footer .footerinfo {
    background-color: #002063;
    display: flex;
    justify-content: space-between;
    padding: 2rem 1%; }
    footer .footerinfo .snslink ul {
      display: flex; }
      footer .footerinfo .snslink ul li {
        margin: 0 1rem; }
        footer .footerinfo .snslink ul li img {
          height: 35px;
          width: auto;
          display: block; }
    footer .footerinfo .info {
      text-align: right;
      color: #FFF;
      margin-right: 40px; }
      footer .footerinfo .info ul {
        display: flex; }
        footer .footerinfo .info ul li {
          margin: 0 0 0 2rem; }
        footer .footerinfo .info ul a {
          color: #FFF; }
      footer .footerinfo .info .copy {
        font-size: 1.3rem;
        margin-top: 1rem; }
    @media only screen and (max-width: 640px) {
      footer .footerinfo {
        display: inherit; }
        footer .footerinfo .snslink ul {
          justify-content: center; }
        footer .footerinfo .info {
          margin: 2rem 0 0 0;
          text-align: center; }
          footer .footerinfo .info ul {
            justify-content: center; }
            footer .footerinfo .info ul li {
              margin: 0 1rem; } }

/*# sourceMappingURL=base.css.map */
