@charset "UTF-8";

:root {
  --main--color: #E50014;
  --green--color: #22BA4F;
  --yellow--color: #FFF674;
}

html,
body {
  width: 100%;
}

html {
  scroll-behavior: smooth;
  font-size: 62.5%;
}

body {
  position: relative;
  color: #585858;
  background-color: #fff;
  font-size: 1.28rem;
  font-weight: 500;
  letter-spacing: 0;
  line-height: 1.5;
  margin: 0 auto;
  font-family: 'Noto Sans JP', "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, sans-serif;
  -webkit-text-size-adjust: 100%;
  -moz-text-size-adjust: 100%;
  -ms-text-size-adjust: 100%;
  -o-text-size-adjust: 100%;
  text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
}

picture {
  display: block;
}

section {
  padding: 80px 0;
}

li {
  list-style: none;
}

p {
  /*
	text-align: justify;
	-ms-text-justify: auto;
	text-justify: auto;
	text-justify: inter-ideograph;
  */
}

img {
  vertical-align: bottom;
  max-width: 100%;
}

.noborder {
  border: none !important;
}

.nomargin {
  margin: 0 0 !important;
}


.cf:before,
.cf:after {
  content: "";
  display: table;
}

.cf:after {
  clear: both;
}

.cf {
  zoom: 1;
}

a {
  color: unset;
  text-decoration: none;
}

.img_wrap img {
  width: 100%;
  height: 100%;
  object-fit: cover;
}

/*---------------------------------------------------------*/

.main_color {
  color: var(--main--color);
}

.green {
  color: var(--green--color);
}

.yellow {
  color: var(--yellow--color);
}

/* ---------------------------------------------------------------------- */
/* PC */
/* ---------------------------------------------------------------------- */
@media (min-width: 1001px) {
  a {
    transition: 0.3s ease-in-out;
  }

  img {
    transition: 0.3s ease-in-out;
  }

  a:active,
  a:hover,
  a:hover img {
    opacity: 0.7;
  }

  .for_sp {
    display: none !important;
  }

  .for_sp_flex {
    display: none !important;
  }

  .for_tab {
    display: none !important;
  }

  .for_nw {
    display: none !important;
  }

  .tab .for_pcnotab {
    display: none !important;
  }

  .tab .for_tab {
    display: inline !important;
  }

  .wrap,
  #page {
    width: 100%;
    position: relative;
  }


  /* common
	---------------------------------------------------------------------- */
  .mainw,
  .mainw_pc {
    max-width: 1080px;
    margin: 0 auto;
    padding: 0 20px;
  }
}


/* ---------------------------------------------------------------------- */
/* SP */
/* ---------------------------------------------------------------------- */
@media (max-width: 768px) {

  body {
    font-size: max(10px, 3.4026666667vw);
  }

  a {
    transition: 0.3s ease-in-out;
  }

  img {
    transition: 0.3s ease-in-out;
  }

  a:active,
  a:hover,
  a:hover img {
    opacity: 0.7;
  }

  .wrap,
  #page {
    width: 100%;
    position: relative;
  }

  .for_pc {
    display: none !important;
  }

  .for_sp {
    display: inline-block !important;
  }

  .for_sp_flex {
    display: flex !important;
  }

  .for_tab {
    display: none;
  }

  .for_pcnotab {
    display: none !important;
  }

  .for_nw {
    display: none !important;
  }

  /* common
	---------------------------------------------------------------------- */
  .mainw {
    /* width: 88vw; */
    max-width: 100%;
    margin: 0 auto;
    padding: 0;
  }

}

/* End @media (max-width:1000px) */
