@charset "UTF-8";
/* --------------------------
color
-------------------------- */
/* --------------------------
spacing
-------------------------- */
/* --------------------------
font
-------------------------- */
/* --------------------------
contents width
-------------------------- */
/* --------------------------
z-index order
-------------------------- */
/* --------------------------
media query
-------------------------- */
/* --------------------------
h with center-line
-------------------------- */
html,
body,
p,
ol,
ul,
li,
dl,
dt,
dd,
blockquote,
figure,
fieldset,
legend,
textarea,
pre,
iframe,
hr,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
  line-height: 1;
}

h1,
h2,
h3,
h4,
h5,
h6 {
  font-size: 100%;
  font-weight: 300;
}

ul {
  list-style: none;
}

button,
input,
select,
textarea {
  margin: 0;
}

html {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

*, *:before, *:after {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

img,
embed,
iframe,
object,
audio,
video {
  height: auto;
  max-width: 100%;
}

iframe {
  border: 0;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

td,
th {
  padding: 0;
  text-align: left;
}

html {
  margin-top: 0 !important;
}

body {
  font-family: "Noto Sans JP", sans-serif;
  font-weight: 700;
  color: black;
  letter-spacing: 0.05em;
}

a {
  color: #2C2C2C;
  text-decoration: none;
  -webkit-transition: all .5s;
  transition: all .5s;
}

a:hover {
  opacity: 0.6;
}

p {
  font-size: 16px;
  line-height: 1.5em;
  margin-bottom: 20px;
}

p:last-child {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  p {
    font-size: 14px;
    margin-bottom: 10px;
  }
}

img {
  width: auto;
  height: auto;
  max-width: 100%;
  vertical-align: bottom;
}

.main {
  position: relative;
}

.main::before, .main::after {
  content: "";
  display: block;
  width: 30px;
  height: 100vh;
  position: fixed;
  top: 0;
  background: url(../images/common/border.png) no-repeat;
  background-size: 100%;
  z-index: +1;
}

@media screen and (max-width: 1023px) {
  .main::before, .main::after {
    width: 15px;
  }
}

@media screen and (max-width: 767px) {
  .main::before, .main::after {
    width: 7px;
  }
}

.main::after {
  right: 0;
}

.page-mv {
  margin: 180px 0 140px;
}

@media screen and (max-width: 1023px) {
  .page-mv {
    margin: 140px 0;
  }
}

@media screen and (max-width: 767px) {
  .page-mv {
    margin: 80px 0 40px;
  }
}

.page-mv-h2 {
  text-align: center;
}

.page-mv-h2 img {
  max-height: 140px;
  width: auto;
}

@media screen and (max-width: 767px) {
  .page-mv-h2 img {
    max-height: 80px;
  }
}

@media screen and (max-width: 1023px) {
  .page-mv-article {
    margin: 30px 0 0;
  }
}

.page-mv.sub {
  margin: 180px 0 120px;
}

@media screen and (max-width: 767px) {
  .page-mv.sub {
    margin: 80px 0 40px;
  }
}

.page-mv-sns {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  margin-top: 20px;
}

.page-mv-sns li {
  padding: 0 10px;
  width: 50px;
}

.page-bg {
  position: relative;
}

.page-bg::after {
  content: "";
  display: block;
  background: url(../images/top/bg-3-2.png);
  background-size: 100%;
  position: absolute;
  top: 400px;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -3;
}

@media screen and (max-width: 1023px) {
  .page-bg::after {
    top: 350px;
  }
}

.page-bg::before {
  content: "";
  display: block;
  background: url(../images/top/bg-3.png) no-repeat;
  background-size: 100%;
  position: absolute;
  top: 400px;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -2;
}

@media screen and (max-width: 1023px) {
  .page-bg::before {
    top: 350px;
  }
}

.page-bg-inner {
  background: url(../images/hatsumeshi/bg-3.png);
  background-size: 100%;
  position: absolute;
  top: 400px;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -2;
}

@media screen and (max-width: 1023px) {
  .page-bg-inner {
    top: 350px;
  }
}

.page-bg.foodloss::after {
  background: url(../images/top/bg-4-2.png);
  background-size: 100%;
}

.page-bg.foodloss::before {
  background: url(../images/top/bg-4-3.png) no-repeat;
  background-size: 100%;
}

.page-bg.localfood::after {
  background: url(../images/top/bg-5-2.png);
  background-size: 100%;
}

.page-bg.localfood::before {
  background: url(../images/top/bg-5-3.png) no-repeat;
  background-size: 100%;
}

@media screen and (max-width: 1023px) {
  .page-bg.single::after, .page-bg.single::before, .page-bg.single .page-bg-inner {
    top: 190px;
  }
}

.page-bg-serch {
  background: url(../images/top/bg-6.png) repeat-y;
  background-size: 100%;
}

.slick-news {
  margin-bottom: 80px !important;
}

@media screen and (max-width: 767px) {
  .slick-news {
    margin-bottom: 60px !important;
  }
}

.slick-news li {
  padding: 20px 20px 0;
  position: relative;
}

.slick-news .slick-dots {
  bottom: -40px;
}

.slick-news .slick-dots li {
  padding: 0;
  margin: 0 8px;
}

@media screen and (max-width: 767px) {
  .slick-news .slick-dots li {
    margin: 0 3px;
  }
}

.slick-news .slick-dots li button:before {
  font-size: 20px;
  opacity: 0.5;
}

.slick-news .slick-dots li.slick-active button:before {
  opacity: .75;
  color: #F3C706;
}

.slick-news .slick-dots li:first-child:last-child {
  display: none;
}

.news {
  position: relative;
}

.news-ttl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  margin-bottom: 20px;
}

@media screen and (max-width: 1023px) {
  .news-ttl {
    display: block;
  }
}

.news-ttl h2 {
  margin: 0;
}

@media screen and (max-width: 1023px) {
  .news-ttl h2 {
    width: -webkit-fit-content;
    width: -moz-fit-content;
    width: fit-content;
    margin: 0 auto 20px;
  }
}

@media screen and (max-width: 767px) {
  .news-ttl h2 img {
    height: 75px;
  }
}

.news-ttl a {
  margin: 0;
}

@media screen and (max-width: 1023px) {
  .news-ttl a {
    margin: 0 auto;
  }
}

.news-item {
  border: 4px solid #F3C706;
  border-radius: 30px;
  overflow: hidden;
  display: block;
	background: white;
    height: 100%;
	position:relative;
}
.news-item.hatsumeshi {
  border: 4px solid #DB6D34;
}
.news-item.foodloss {
  border: 4px solid #0085CD;
}
.news-item.localfood {
  border: 4px solid #48A93E;
}

.news-item:hover {
  opacity: 1;
}

.news-item .img {
  height: 220px;
  overflow: hidden;
}

.news-item .img img {
  -o-object-fit: cover;
     object-fit: cover;
  height: 100%;
  width: 100%;
}

.news-item .category {
      position: absolute;
    top: 20px;
    left: 20px;
    font-size: 18px;
    background: #F4C900;
    padding: 10px;
    border-radius: 10px;
    color: white;
}

@media screen and (max-width: 767px) {
  .news-item .new {
    width: 70px;
  }
}

.news-item .icon {
    position: absolute;
    top: -30px;
    left: 45px;
    transform: translateX(-50%);
    width: 45px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    gap: 10px;
}

.news-item .txt {
  padding: 35px 25px 45px;
  background: white;
  position: relative;
}
.news-item .tag {
	    display: flex;
    flex-wrap: wrap;
    gap: 5px;
}
.news-item .tag span {
      background: #D9D9D9;
    border-radius: 20px;
    padding: 7px 15px;
    display: inline-block;
    font-size: 14px;
    color: black;
}

.news-item .date {
  font-size: 14px;
  font-family: "Montserrat", sans-serif;
	position: absolute;
    bottom: 10px;
    left: 25px;
}

.news-item .txt h4 {
  font-weight: bold;
      height: 3em;
    line-height: 1.5;
    display: -webkit-box;
    -webkit-line-clamp: 2;
    -webkit-box-orient: vertical;
    overflow: hidden;
}

.news-item .c-button--more {
  position: absolute;
    bottom: 40px;
    left: 50%;
    transform: translateX(-50%);
}

.news-item.gourmet {
  border-color: #DC6D35;
}

.news-item.foodloss {
  border-color: #0185CF;
}

.news-item.localfood {
  border-color: #47AA40;
}

.news li {
  position: relative;
}

.news .slick-news {
  margin-bottom: 80px !important;
  opacity: 0;
  -webkit-transition: opacity .3s linear;
  transition: opacity .3s linear;
}

.news .slick-news.slick-initialized {
  opacity: 1;
}

.news .slick-news li {
  padding: 20px 20px 0;
  position: relative;
}

@media screen and (max-width: 767px) {
  .news .slick-news li {
    padding: 10px 10px 0;
  }
}

.news .slick-news .slick-dots {
  bottom: -40px;
}

.news .slick-news .slick-dots li {
  padding: 0;
  margin: 0 8px;
}

.news .slick-news .slick-dots li button:before {
  font-size: 20px;
  opacity: 0.5;
}

.news .slick-news .slick-dots li.slick-active button:before {
  opacity: .75;
  color: #F3C706;
}

.news .slick-news.gourmet .news-item {
  border-color: #DC6D35;
}

.news .slick-news.gourmet .slick-dots li.slick-active button:before {
  color: #DC6D35;
}

.news .slick-news.foodloss .news-item {
  border-color: #0185CF;
}

.news .slick-news.foodloss .slick-dots li.slick-active button:before {
  color: #0185CF;
}

.news .slick-news.localfood .news-item {
  border-color: #47AA40;
}

.news .slick-news.localfood .slick-dots li.slick-active button:before {
  color: #47AA40;
}

/* スライドの親要素（トラック）をFlexboxにする */
.slick-track {
  display: flex !important;
}

/* 各スライドの高さを100%にする */
.slick-slide {
  height: auto !important;
}


/* --------------------------
modal
-------------------------- */
.modal {
  display: none;
  height: 100vh;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 999999;
}

.modal__bg {
  background: rgba(0, 0, 0, 0.6);
  height: 100vh;
  position: absolute;
  width: 100%;
}

.modal__content {
  background: #fff;
  left: 50%;
  padding: 40px;
  position: absolute;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  width: 60%;
}

@media screen and (max-width: 1023px) {
  .modal__content {
    width: 90%;
    padding: 10px;
    height: 95vh;
  }
  .modal__content .inner {
    overflow-x: scroll;
    height: 100%;
  }
}

.modal_close {
  position: absolute;
  top: 0;
  right: 0;
  font-size: 20px;
  background: black;
  color: white;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
}

/* --------------------------
パンくずナビ
-------------------------- */
.c-breadcrumb {
  list-style: none;
  margin: 0;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

.c-breadcrumb li {
  padding: 5px 0;
  line-height: 1.2em;
}

.c-breadcrumb li::after {
  content: '';
  display: inline-block;
  width: 8px;
  height: 8px;
  border-top: 2px solid;
  border-right: 2px solid;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  margin: 0 1rem;
}

.c-breadcrumb li:last-child::after {
  content: none;
}

/* --------------------------
ボタン
-------------------------- */
.c-button {
  display: inline-block;
  width: auto;
  padding: 10px 30px;
  cursor: pointer;
  text-decoration: none;
  text-align: center;
  color: black;
  background-color: #fff;
  border: 4px solid black;
  position: relative;
  border-radius: 50px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.c-button i {
  background: black;
  border-radius: 30px;
  width: 32px;
  height: 32px;
  display: inline-block;
  margin-left: 10px;
  position: relative;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.c-button i::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 2px;
  border-radius: 2px;
  background: white;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all .5s;
  transition: all .5s;
}

.c-button i::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-top: 2px solid white;
  border-right: 2px solid white;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  position: absolute;
  top: 12px;
  right: 9px;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.c-button:not(:has(i)) {
  padding: 20px 40px;
}

.c-button:hover {
  opacity: 1;
}

.c-button:hover i {
  -webkit-transform: translateX(10px);
          transform: translateX(10px);
}

.c-button.back {
  padding: 20px 40px;
  border-radius: 50px;
}

.c-button.yellow {
  border-color: #F3C706;
  padding: 10px 30px;
  background: #F3C706;
  line-height: 1.3em;
}

.c-button--more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
}

@media screen and (max-width: 767px) {
  .c-button--more {
    font-size: 14px;
  }
}

.c-button--more i {
  margin-left: 20px;
  width: 45px;
  height: 45px;
  background: url(../images/common/btn-more.png) white;
  background-size: cover;
  border-radius: 40px;
  -webkit-transition: all .5s;
  transition: all .5s;
  position: relative;
}

.c-button--more i::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 2px;
  border-radius: 2px;
  background: black;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all .5s;
  transition: all .5s;
}

.c-button--more i::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-top: 2px solid black;
  border-right: 2px solid black;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  position: absolute;
  top: 19px;
  right: 15px;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.c-button--more.white {
  color: white;
}

.c-button--more:hover {
  opacity: 1;
}

.c-button--more:hover i {
  background-color: #F4C800;
}

.c-button--more:hover i::before {
  left: 60%;
}

.c-button--more:hover i::after {
  right: 10px;
}

.c-button--txt {
  text-decoration: underline;
}

/* --------------------------
フォーム
-------------------------- */
.c-form-text {
  border: 1px solid #c5c5c5;
  width: 100%;
  padding: 3px 15px;
  border-radius: 4px;
  font-size: 16px;
}

.c-form-textarea {
  border: 1px solid #c5c5c5;
  width: 100%;
  padding: 8px 5px;
  height: 100px;
  border-radius: 3px;
}

.c-form-checkbox-input {
  display: none;
}

.c-form-checkbox-input:checked + .c-form-checkbox-span::after {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 4px;
  width: 8px;
  height: 12px;
  -webkit-transform: rotate(40deg);
          transform: rotate(40deg);
  border-bottom: 3px solid #e20013;
  border-right: 3px solid #e20013;
}

.c-form-checkbox-span {
  padding-left: 28px;
  position: relative;
}

.c-form-checkbox-span::before {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 16px;
  height: 16px;
  border: 2px solid #ababab;
  background-color: #fff;
}

.c-form-radio-input {
  display: none;
}

.c-form-radio-input:checked + .c-form-radio-span::after {
  content: "";
  display: block;
  position: absolute;
  top: 9px;
  left: 4px;
  width: 8px;
  height: 8px;
  border-radius: 50%;
  background-color: #e20013;
}

.c-form-radio-span {
  padding-left: 28px;
  position: relative;
}

.c-form-radio-span::before {
  content: "";
  display: block;
  position: absolute;
  top: 5px;
  left: 0;
  width: 16px;
  height: 16px;
  border-radius: 50%;
  border: 2px solid #c5c5c5;
  background-color: #fff;
}

/* --------------------------
見出し
-------------------------- */
.c-h1 {
  color: black;
  font-family: "Montserrat", sans-serif;
  font-weight: bold;
  font-size: 70px;
  margin-bottom: 40px;
}

@media screen and (max-width: 767px) {
  .c-h1 {
    font-size: 35px;
    padding: 0;
    margin: 0;
  }
}

.c-h1 span {
  display: block;
  line-height: 0;
}

.c-h1 span img {
  max-height: 35px;
}

@media screen and (max-width: 767px) {
  .c-h1 span img {
    max-height: 25px;
  }
}

.c-h1 small {
  margin-top: 40px;
  font-family: "Noto Sans JP", sans-serif;
  display: block;
  font-size: 30px;
}

@media screen and (max-width: 767px) {
  .c-h1 small {
    margin-top: 20px;
    font-size: 20px;
  }
}

.c-h2 {
  color: black;
  font-size: 70px;
  font-family: "Montserrat", sans-serif;
  font-weight: bold;
}

@media screen and (max-width: 767px) {
  .c-h2 {
    font-size: 38px;
    margin: 0 auto 20px;
  }
}

.c-h2.center {
  margin: 0 auto 40px;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

@media screen and (max-width: 767px) {
  .c-h2.center {
    margin: 0 auto 20px;
  }
}

.c-h2 span {
  display: block;
  line-height: 0;
}

.c-h2 span img {
  max-height: 35px;
}

@media screen and (max-width: 767px) {
  .c-h2 span img {
    max-height: 25px;
  }
}

.c-h3 {
  font-size: 22px;
  letter-spacing: 0.08em;
  font-weight: 300;
  margin-bottom: 20px;
  line-height: 1.5em;
}

@media screen and (max-width: 767px) {
  .c-h3 {
    font-size: 18px;
  }
}

.c-h3.border {
  border-bottom: 4px dashed #0085CD;
  padding-bottom: 20px;
}

@media screen and (max-width: 767px) {
  .c-h3.border {
    padding-bottom: 10px;
    margin-bottom: 10px;
  }
}

.c-h4 {
  font-size: 18px;
  letter-spacing: 0.08em;
  font-weight: 400;
  margin-bottom: 20px;
  line-height: 1.5em;
}

@media screen and (max-width: 767px) {
  .c-h4 {
    font-size: 16px;
  }
}

.c-h5 {
  font-size: 16px;
  letter-spacing: 0.08em;
  font-weight: 400;
  margin-bottom: 1em;
}

@media screen and (max-width: 767px) {
  .c-h5 {
    font-size: 14px;
  }
}

.c-h6 {
  font-size: 16px;
  letter-spacing: 0.08em;
  font-weight: 400;
  margin-bottom: 1em;
}

@media screen and (max-width: 767px) {
  .c-h6 {
    font-size: 10px;
  }
}

.c-h--center-line {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 5px;
}

.c-h--center-line::before, .c-h--center-line::after {
  content: "";
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
  height: 1px;
  background: #4f574d;
  display: block;
}

.c-h--center-line::before {
  margin-right: 30px;
}

@media screen and (max-width: 767px) {
  .c-h--center-line::before {
    margin-right: 15px;
  }
}

.c-h--center-line::after {
  margin-left: 30px;
}

@media screen and (max-width: 767px) {
  .c-h--center-line::after {
    margin-left: 15px;
  }
}

/* --------------------------
ラベル
-------------------------- */
.c-label {
  display: inline-block;
  padding: 5px 15px;
  line-height: 1;
  background-color: #c5c5c5;
  color: #fff;
  font-size: 12px;
  letter-spacing: 1px;
}

.c-label--blue-dark {
  background-color: #0b2b75;
}

.c-label--red {
  background-color: #e20013;
}

.c-label--blue {
  background-color: #0185CF;
}

.c-label--green {
  background-color: #47AA40;
}

.c-label--large {
  padding: 6px 12px;
  font-size: 16px;
}

.c-label--small {
  padding: 5px 8px;
  font-size: 12px;
}

/* --------------------------
リンク
-------------------------- */
.c-link {
  color: #0185CF;
}

.c-link--block {
  display: block;
  text-decoration: none;
}

.c-link--block img {
  display: block;
  margin-left: auto;
  margin-right: auto;
}

.c-link--none {
  text-decoration: none;
}

/* --------------------------
リスト
-------------------------- */
.c-list > li {
  margin-bottom: 5px;
  line-height: 24px;
  position: relative;
}

.c-list > li:last-child {
  margin-bottom: 0;
}

.c-list--point {
  margin-bottom: 1em;
}

.c-list--point > li {
  padding-left: 15px;
  margin-bottom: 10px;
  line-height: 1.8em;
  position: relative;
}

.c-list--point > li::before {
  content: '';
  width: 6px;
  height: 6px;
  border-radius: 3px;
  display: inline-block;
  background-color: black;
  position: absolute;
  top: 14px;
  left: 0;
}

.c-list--point > li:last-child {
  margin-bottom: 0;
}

.c-list--point.center {
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
}

.c-list--link li {
  padding-left: 15px;
  margin-bottom: 5px;
  line-height: 24px;
  position: relative;
}

.c-list--link li::before {
  content: '';
  display: inline-block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 4px 0 4px 6.9px;
  border-color: transparent transparent transparent #e20013;
  position: absolute;
  top: 8px;
  left: 2px;
}

.c-list--link li a {
  text-decoration: none;
}

.c-list--link li a:hover {
  text-decoration: underline;
}

.c-list--horizontal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.c-list--horizontal li {
  margin-left: 25px;
  margin-bottom: 0;
}

.c-list--horizontal li:first-child {
  margin-left: 0;
}

.c-list--border li {
  background-position: left 16px;
  padding: 14px;
  border-bottom: 1px dashed #d4d4d4;
  overflow-x: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  width: 100%;
  line-height: 1;
}

.c-list--border li:last-child {
  border-bottom: 0;
}

.c-list--border li a {
  color: black;
  text-decoration: none;
}

.c-list--border li a:hover {
  color: #0185CF;
}

.c-list--order {
  padding-left: 20px;
  margin-bottom: 1em;
}

.c-list--order > li {
  margin-bottom: 5px;
  line-height: 32px;
  position: relative;
}

.c-list--order > li:last-child {
  margin-bottom: 0;
}

.c-list--note li {
  font-size: 13px;
  color: #8d8d8d;
  line-height: 1.5;
}

.c-list--note li::before {
  content: '※';
  margin-right: 3px;
}

/* --------------------------
ハンバーガーメニューアイコン
-------------------------- */
.c-menu {
  display: none;
  background: white;
  padding: 15px;
  padding-left: 25px;
  border-radius: 30px 0 0 30px;
  -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
          box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
}

@media screen and (max-width: 1023px) {
  .c-menu {
    position: absolute;
    right: 0;
    top: 5px;
    display: block;
    z-index: 9999;
  }
}

.c-menu-trigger,
.c-menu-trigger span {
  display: inline-block;
  -webkit-transition: all .2s;
  transition: all .2s;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}

.c-menu-trigger {
  position: relative;
  width: 30px;
  height: 10px;
}

.c-menu-trigger-label {
  display: block;
  font-size: 9px;
  letter-spacing: 1.1px;
  margin: auto;
  text-align: center;
  width: 100%;
  height: auto;
  margin-top: 2px;
}

.c-menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: black;
}

.c-menu-trigger span:nth-of-type(1) {
  top: 0;
}

.c-menu-trigger span:nth-of-type(2) {
  top: 9px;
  left: auto;
  right: 0;
}

.c-menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(4px) translateX(1px) rotate(-25deg);
  transform: translateY(4px) translateX(1px) rotate(-25deg);
}

.c-menu-trigger.active span:nth-of-type(2) {
  -webkit-transform: translateY(-5px) translateX(1px) rotate(25deg);
  transform: translateY(-5px) translateX(1px) rotate(25deg);
}

.c-menu-recruit {
  right: 20px;
}

/* --------------------------
パネル
-------------------------- */
.c-panel {
  background-color: #fff;
}

.c-panel--border {
  border: 1px solid #c5c5c5;
  background-color: #fff;
}

.c-panel--rounded {
  border-radius: 15px;
  background-color: #fff;
  padding: 40px;
  -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
          box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
}

@media screen and (max-width: 767px) {
  .c-panel--rounded {
    padding: 20px;
  }
}

.c-panel--rounded .inner-border {
  padding: 40px;
  border: 4px solid #0185CF;
  border-radius: 15px;
}

@media screen and (max-width: 767px) {
  .c-panel--rounded .inner-border {
    padding: 20px;
  }
}

.c-panel--rounded.number {
  position: relative;
  margin-top: 120px;
  padding: 0;
}

@media screen and (max-width: 767px) {
  .c-panel--rounded.number {
    margin-top: 60px;
  }
}

.c-panel--rounded.number > span {
  position: absolute;
  top: -70px;
  left: -70px;
  width: 90px;
}

@media screen and (max-width: 767px) {
  .c-panel--rounded.number > span {
    top: -28px;
    left: -10px;
    width: 60px;
  }
}

.c-panel--rounded.number .c-h3 {
  padding: 30px 40px;
  background: #0185CF;
  border: none;
  border-radius: 15px 15px 0 0;
  color: white;
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  .c-panel--rounded.number .c-h3 {
    padding: 40px 20px 20px;
  }
}

.c-panel--rounded.number .c-h3 span {
  display: block;
  border-bottom: 4px dashed #fff;
  padding-bottom: 10px;
}

@media screen and (max-width: 767px) {
  .c-panel--rounded.number .c-h3 span {
    padding-bottom: 10px;
  }
}

.c-panel--rounded.number .inner {
  padding: 40px;
}

@media screen and (max-width: 767px) {
  .c-panel--rounded.number .inner {
    padding: 20px;
  }
}

.c-panel--rounded.number.green {
  margin-top: 60px;
}

@media screen and (max-width: 767px) {
  .c-panel--rounded.number.green {
    margin-top: 30px;
  }
}

.c-panel--rounded.number.green .c-h3 {
  background: #47AA40;
}

@media screen and (max-width: 767px) {
  .c-panel--rounded.number.green .c-h3 {
    padding: 20px;
  }
}

.c-panel--rounded.number.green h4 {
  border-bottom: 4px dashed #47AA40;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  font-weight: bold;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  padding-bottom: 10px;
  margin-bottom: 20px;
}

.c-panel--rounded.number.green h4 span {
  width: 60px;
  margin-right: 15px;
}

.c-panel--rounded.number .img-1 {
  position: absolute;
  bottom: -40px;
  left: 30px;
  width: 25%;
}

@media screen and (max-width: 767px) {
  .c-panel--rounded.number .img-1 {
    bottom: -20px;
    left: 20px;
    width: 30%;
  }
}

.c-panel--rounded.number .img-2 {
  position: absolute;
  bottom: 20px;
  right: 30px;
  width: 30%;
}

@media screen and (max-width: 767px) {
  .c-panel--rounded.number .img-2 {
    bottom: 10px;
    right: 10px;
  }
}

.c-panel-contents {
  padding: 80px;
}

@media screen and (max-width: 767px) {
  .c-panel-contents {
    padding: 40px 20px;
  }
}

.c-panel-contents--narrow {
  padding: 15px;
}

/* --------------------------
セクション
-------------------------- */
@media screen and (min-width: 768px) {
  .c-section {
    margin: 80px 0;
  }
}

@media screen and (max-width: 767px) {
  .c-section {
    margin: 80px 0;
  }
}

@media screen and (min-width: 768px) {
  .c-section--middle {
    margin: 40px 0;
  }
}

@media screen and (max-width: 767px) {
  .c-section--middle {
    margin: 30px 0;
  }
}

@media screen and (min-width: 768px) {
  .c-section--narrow {
    margin: 30px 0;
  }
}

@media screen and (max-width: 767px) {
  .c-section--narrow {
    margin: 20px 0;
  }
}

@media screen and (min-width: 768px) {
  .c-section--bg {
    padding: 80px 0;
  }
}

@media screen and (max-width: 767px) {
  .c-section--bg {
    padding: 50px 0;
  }
}

@media screen and (min-width: 768px) {
  .c-section--bg--middle {
    padding: 40px 0;
  }
}

@media screen and (max-width: 767px) {
  .c-section--bg--middle {
    padding: 30px 0;
  }
}

@media screen and (min-width: 768px) {
  .c-section--bg--narrow {
    padding: 30px 0;
  }
}

@media screen and (max-width: 767px) {
  .c-section--bg--narrow {
    padding: 20px 0;
  }
}

.c-section-container {
  max-width: 1180px;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .c-section-container {
    padding: 0 50px;
  }
}

@media screen and (max-width: 1023px) {
  .c-section-container {
    max-width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .c-section-container {
    max-width: 100%;
    padding: 0 30px;
  }
  .c-section-container.sub {
    padding: 0 15px;
  }
  .c-section-container.sub .articles-contents{
    padding: 15px 10px !important;
  }
}

.c-section-container-middle {
  max-width: 900px;
  margin: auto;
}

.c-section-container-inner {
  max-width: 760px;
  margin: auto;
}

.c-section-container-narrow {
  max-width: 600px;
  margin: auto;
}

/* --------------------------
タブ
-------------------------- */
.c-tab-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  list-style: none;
  margin: 0;
  padding: 0;
}

@media screen and (max-width: 767px) {
  .c-tab-nav {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin: 0 -5px 5px;
  }
}

.c-tab-nav-item {
  -webkit-box-flex: 1;
      -ms-flex-positive: 1;
          flex-grow: 1;
}

@media screen and (max-width: 767px) {
  .c-tab-nav-item {
    width: 50%;
    padding: 5px;
  }
}

.c-tab-nav-item:last-child a {
  border-right: 1px solid #c5c5c5;
}

.c-tab-nav-item a {
  background-color: #F2F2F2;
  border: 1px solid #c5c5c5;
  border-right: 0;
  display: block;
  padding: 20px;
  text-align: center;
  text-decoration: none;
  color: black;
  font-weight: 400;
}

@media screen and (max-width: 767px) {
  .c-tab-nav-item a {
    border-right: 1px solid #c5c5c5;
  }
}

.c-tab-nav-item a[aria-selected="true"] {
  background-color: #fff;
  border-bottom: 0;
  border-top: 2px solid #e20013;
  color: black;
}

@media screen and (max-width: 767px) {
  .c-tab-nav-item a[aria-selected="true"] {
    border: 0;
    background-color: #e20013;
    color: #fff;
  }
}

.c-tab-contents-item {
  display: none;
  background-color: #fff;
  border: 1px solid #c5c5c5;
  border-top: 0;
  padding: 30px;
}

@media screen and (max-width: 767px) {
  .c-tab-contents-item {
    padding: 20px;
    border-top: 1px solid #c5c5c5;
  }
}

.c-tab-contents-item[aria-hidden="false"] {
  display: block;
}

/* --------------------------
テーブル
-------------------------- */
.c-table {
  width: 100%;
  font-size: 16px;
}

@media screen and (max-width: 767px) {
  .c-table thead tr {
    border-bottom: 0;
  }
}

.c-table thead th {
  padding: 25px;
  line-height: 1.5;
  font-weight: 400;
  width: 30%;
  background-color: #F2F2F2;
  vertical-align: top;
  border-bottom: 1px solid #c5c5c5;
}

@media screen and (max-width: 767px) {
  .c-table thead th {
    display: block;
    width: 100%;
    text-align: center;
  }
}

.c-table thead td {
  font-weight: 400;
  text-align: center;
  padding: 20px 30px;
  border-bottom: 1px solid #c5c5c5;
}

@media screen and (max-width: 767px) {
  .c-table thead td {
    display: block;
    width: 100%;
  }
}

@media screen and (max-width: 767px) {
  .c-table tbody tr {
    display: block;
    border-bottom: 0;
  }
}

.c-table tbody th {
  padding: 25px;
  line-height: 1.5;
  font-weight: 400;
  width: 30%;
  background-color: #F2F2F2;
  vertical-align: top;
  border-bottom: 1px solid #c5c5c5;
}

@media screen and (max-width: 767px) {
  .c-table tbody th {
    display: block;
    width: 100%;
    text-align: center;
    padding: 15px;
    min-height: auto;
  }
}

.c-table tbody td {
  padding: 20px 30px;
  border-bottom: 1px solid #c5c5c5;
}

@media screen and (max-width: 767px) {
  .c-table tbody td {
    display: block;
    width: 100%;
    padding: 15px;
  }
}

.c-table--narrow {
  border-color: #c5c5c5;
}

.c-table--narrow tbody tr {
  border-color: #c5c5c5;
}

.c-table--narrow tbody th {
  padding: 8px 10px;
  line-height: 1.5;
  font-weight: normal;
  width: 120px;
  font-weight: 400;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .c-table--narrow tbody th {
    padding: 8px;
    width: 80px;
  }
}

.c-table--narrow tbody td {
  padding: 8px 10px 8px 20px;
  line-height: 1.5;
}

@media screen and (max-width: 767px) {
  .c-table--narrow tbody td {
    padding: 8px 10px 8px 15px;
  }
}

/* --------------------------
テキスト整列
-------------------------- */
.u-align-left {
  text-align: left;
}

.u-align-right {
  text-align: right;
}

.u-align-center {
  text-align: center;
}

.u-align-justify {
  text-align: justify;
  word-wrap: break-word;
}

@media screen and (min-width: 768px) {
  .u-align-left--pc {
    text-align: left;
  }
  .u-align-right--pc {
    text-align: right;
  }
  .u-align-center--pc {
    text-align: center;
  }
}

@media screen and (max-width: 1180px) {
  .u-align-left--laptop {
    text-align: left;
  }
  .u-align-right--laptop {
    text-align: right;
  }
  .u-align-center--laptop {
    text-align: center;
  }
}

@media screen and (max-width: 1023px) {
  .u-align-left--tab {
    text-align: left;
  }
  .u-align-right--tab {
    text-align: right;
  }
  .u-align-center--tab {
    text-align: center;
  }
}

@media screen and (max-width: 767px) {
  .u-align-left--sp {
    text-align: left;
  }
  .u-align-right--sp {
    text-align: right;
  }
  .u-align-center--sp {
    text-align: center;
  }
}

/* --------------------------
背景色
-------------------------- */
.u-bg-light {
  background-color: #F2F2F2;
}

.u-bg-white {
  background-color: #fff;
}

.u-bg-green {
  background-color: #d1f2ec;
}

.u-bg-blue {
  background-color: #0185CF;
}

.u-bg-gold {
  background-color: #dbc583;
}

.u-bg-blue-dark {
  background-color: #0b2b75;
}

.u-bg-red {
  background-color: #f8ebed;
}

.u-bg-yellow {
  background-color: #F4C800;
}

/* --------------------------
枠線
-------------------------- */
.u-border-bottom {
  border-bottom: 1px solid #e20013;
}

.u-border-top {
  border-top: 1px solid #e20013;
}

.u-border-right {
  border-right: 1px solid #e20013;
}

.u-border-left {
  border-left: 1px solid #e20013;
}

.u-border--white {
  border-color: #fff;
}

/* --------------------------
Float解除
-------------------------- */
.u-clearfix::after {
  content: "";
  clear: both;
  font-size: 0;
  height: 0;
  display: block;
  visibility: hidden;
}

/* --------------------------
グリッド
-------------------------- */
.u-row {
  margin: -20px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
}

@media screen and (max-width: 767px) {
  .u-row {
    margin: 0 -10px;
  }
}

.u-row-align-center {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.u-row-align-end {
  -webkit-box-align: end;
      -ms-flex-align: end;
          align-items: flex-end;
}

.u-row-justify-center {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.u-row-reverse {
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
}

@media screen and (max-width: 767px) {
  .u-row-reverse-sp {
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
  }
}

.u-row--nomargin {
  margin: 0;
}

.u-row--narrow {
  margin: 0 -10px;
}

.u-col-1 {
  width: 8.3333333333%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-1 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-1 {
  margin-left: 8.3333333333%;
}

.u-row--nomargin > .u-col-1 {
  padding: 0;
}

.u-row--narrow .u-col-1 {
  padding: 10px;
}

.u-col-2 {
  width: 16.6666666667%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-2 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-2 {
  margin-left: 16.6666666667%;
}

.u-row--nomargin > .u-col-2 {
  padding: 0;
}

.u-row--narrow .u-col-2 {
  padding: 10px;
}

.u-col-3 {
  width: 25%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-3 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-3 {
  margin-left: 25%;
}

.u-row--nomargin > .u-col-3 {
  padding: 0;
}

.u-row--narrow .u-col-3 {
  padding: 10px;
}

.u-col-4 {
  width: 33.3333333333%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-4 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-4 {
  margin-left: 33.3333333333%;
}

.u-row--nomargin > .u-col-4 {
  padding: 0;
}

.u-row--narrow .u-col-4 {
  padding: 10px;
}

.u-col-5 {
  width: 41.6666666667%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-5 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-5 {
  margin-left: 41.6666666667%;
}

.u-row--nomargin > .u-col-5 {
  padding: 0;
}

.u-row--narrow .u-col-5 {
  padding: 10px;
}

.u-col-6 {
  width: 50%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-6 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-6 {
  margin-left: 50%;
}

.u-row--nomargin > .u-col-6 {
  padding: 0;
}

.u-row--narrow .u-col-6 {
  padding: 10px;
}

.u-col-7 {
  width: 58.3333333333%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-7 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-7 {
  margin-left: 58.3333333333%;
}

.u-row--nomargin > .u-col-7 {
  padding: 0;
}

.u-row--narrow .u-col-7 {
  padding: 10px;
}

.u-col-8 {
  width: 66.6666666667%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-8 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-8 {
  margin-left: 66.6666666667%;
}

.u-row--nomargin > .u-col-8 {
  padding: 0;
}

.u-row--narrow .u-col-8 {
  padding: 10px;
}

.u-col-9 {
  width: 75%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-9 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-9 {
  margin-left: 75%;
}

.u-row--nomargin > .u-col-9 {
  padding: 0;
}

.u-row--narrow .u-col-9 {
  padding: 10px;
}

.u-col-10 {
  width: 83.3333333333%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-10 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-10 {
  margin-left: 83.3333333333%;
}

.u-row--nomargin > .u-col-10 {
  padding: 0;
}

.u-row--narrow .u-col-10 {
  padding: 10px;
}

.u-col-11 {
  width: 91.6666666667%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-11 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-11 {
  margin-left: 91.6666666667%;
}

.u-row--nomargin > .u-col-11 {
  padding: 0;
}

.u-row--narrow .u-col-11 {
  padding: 10px;
}

.u-col-12 {
  width: 100%;
  padding: 20px;
}

@media screen and (max-width: 767px) {
  .u-col-12 {
    padding: 10px;
  }
}

.u-col-offset-0 {
  margin-left: 0;
}

.u-col-offset-12 {
  margin-left: 100%;
}

.u-row--nomargin > .u-col-12 {
  padding: 0;
}

.u-row--narrow .u-col-12 {
  padding: 10px;
}

.u-col-1--pc {
  width: 8.3333333333%;
  padding: 20px;
}

.u-col-offset-0--pc {
  margin-left: 0;
}

.u-col-offset-1--pc {
  margin-left: 8.3333333333%;
}

.u-row--nomargin > .u-col-1--pc {
  padding: 0;
}

.u-row--narrow .u-col-1--pc {
  padding: 10px;
}

.u-col-2--pc {
  width: 16.6666666667%;
  padding: 20px;
}

.u-col-offset-0--pc {
  margin-left: 0;
}

.u-col-offset-2--pc {
  margin-left: 16.6666666667%;
}

.u-row--nomargin > .u-col-2--pc {
  padding: 0;
}

.u-row--narrow .u-col-2--pc {
  padding: 10px;
}

.u-col-3--pc {
  width: 25%;
  padding: 20px;
}

.u-col-offset-0--pc {
  margin-left: 0;
}

.u-col-offset-3--pc {
  margin-left: 25%;
}

.u-row--nomargin > .u-col-3--pc {
  padding: 0;
}

.u-row--narrow .u-col-3--pc {
  padding: 10px;
}

.u-col-4--pc {
  width: 33.3333333333%;
  padding: 20px;
}

.u-col-offset-0--pc {
  margin-left: 0;
}

.u-col-offset-4--pc {
  margin-left: 33.3333333333%;
}

.u-row--nomargin > .u-col-4--pc {
  padding: 0;
}

.u-row--narrow .u-col-4--pc {
  padding: 10px;
}

.u-col-5--pc {
  width: 41.6666666667%;
  padding: 20px;
}

.u-col-offset-0--pc {
  margin-left: 0;
}

.u-col-offset-5--pc {
  margin-left: 41.6666666667%;
}

.u-row--nomargin > .u-col-5--pc {
  padding: 0;
}

.u-row--narrow .u-col-5--pc {
  padding: 10px;
}

.u-col-6--pc {
  width: 50%;
  padding: 20px;
}

.u-col-offset-0--pc {
  margin-left: 0;
}

.u-col-offset-6--pc {
  margin-left: 50%;
}

.u-row--nomargin > .u-col-6--pc {
  padding: 0;
}

.u-row--narrow .u-col-6--pc {
  padding: 10px;
}

.u-col-7--pc {
  width: 58.3333333333%;
  padding: 20px;
}

.u-col-offset-0--pc {
  margin-left: 0;
}

.u-col-offset-7--pc {
  margin-left: 58.3333333333%;
}

.u-row--nomargin > .u-col-7--pc {
  padding: 0;
}

.u-row--narrow .u-col-7--pc {
  padding: 10px;
}

.u-col-8--pc {
  width: 66.6666666667%;
  padding: 20px;
}

.u-col-offset-0--pc {
  margin-left: 0;
}

.u-col-offset-8--pc {
  margin-left: 66.6666666667%;
}

.u-row--nomargin > .u-col-8--pc {
  padding: 0;
}

.u-row--narrow .u-col-8--pc {
  padding: 10px;
}

.u-col-9--pc {
  width: 75%;
  padding: 20px;
}

.u-col-offset-0--pc {
  margin-left: 0;
}

.u-col-offset-9--pc {
  margin-left: 75%;
}

.u-row--nomargin > .u-col-9--pc {
  padding: 0;
}

.u-row--narrow .u-col-9--pc {
  padding: 10px;
}

.u-col-10--pc {
  width: 83.3333333333%;
  padding: 20px;
}

.u-col-offset-0--pc {
  margin-left: 0;
}

.u-col-offset-10--pc {
  margin-left: 83.3333333333%;
}

.u-row--nomargin > .u-col-10--pc {
  padding: 0;
}

.u-row--narrow .u-col-10--pc {
  padding: 10px;
}

.u-col-11--pc {
  width: 91.6666666667%;
  padding: 20px;
}

.u-col-offset-0--pc {
  margin-left: 0;
}

.u-col-offset-11--pc {
  margin-left: 91.6666666667%;
}

.u-row--nomargin > .u-col-11--pc {
  padding: 0;
}

.u-row--narrow .u-col-11--pc {
  padding: 10px;
}

.u-col-12--pc {
  width: 100%;
  padding: 20px;
}

.u-col-offset-0--pc {
  margin-left: 0;
}

.u-col-offset-12--pc {
  margin-left: 100%;
}

.u-row--nomargin > .u-col-12--pc {
  padding: 0;
}

.u-row--narrow .u-col-12--pc {
  padding: 10px;
}

@media screen and (max-width: 1180px) {
  .u-col-1--laptop {
    width: 8.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-1--laptop {
    margin-left: 8.3333333333%;
  }
  .u-row--nomargin > .u-col-1--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-1--laptop {
    padding: 10px;
  }
  .u-col-2--laptop {
    width: 16.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-2--laptop {
    margin-left: 16.6666666667%;
  }
  .u-row--nomargin > .u-col-2--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-2--laptop {
    padding: 10px;
  }
  .u-col-3--laptop {
    width: 25%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-3--laptop {
    margin-left: 25%;
  }
  .u-row--nomargin > .u-col-3--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-3--laptop {
    padding: 10px;
  }
  .u-col-4--laptop {
    width: 33.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-4--laptop {
    margin-left: 33.3333333333%;
  }
  .u-row--nomargin > .u-col-4--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-4--laptop {
    padding: 10px;
  }
  .u-col-5--laptop {
    width: 41.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-5--laptop {
    margin-left: 41.6666666667%;
  }
  .u-row--nomargin > .u-col-5--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-5--laptop {
    padding: 10px;
  }
  .u-col-6--laptop {
    width: 50%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-6--laptop {
    margin-left: 50%;
  }
  .u-row--nomargin > .u-col-6--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-6--laptop {
    padding: 10px;
  }
  .u-col-7--laptop {
    width: 58.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-7--laptop {
    margin-left: 58.3333333333%;
  }
  .u-row--nomargin > .u-col-7--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-7--laptop {
    padding: 10px;
  }
  .u-col-8--laptop {
    width: 66.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-8--laptop {
    margin-left: 66.6666666667%;
  }
  .u-row--nomargin > .u-col-8--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-8--laptop {
    padding: 10px;
  }
  .u-col-9--laptop {
    width: 75%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-9--laptop {
    margin-left: 75%;
  }
  .u-row--nomargin > .u-col-9--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-9--laptop {
    padding: 10px;
  }
  .u-col-10--laptop {
    width: 83.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-10--laptop {
    margin-left: 83.3333333333%;
  }
  .u-row--nomargin > .u-col-10--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-10--laptop {
    padding: 10px;
  }
  .u-col-11--laptop {
    width: 91.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-11--laptop {
    margin-left: 91.6666666667%;
  }
  .u-row--nomargin > .u-col-11--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-11--laptop {
    padding: 10px;
  }
  .u-col-12--laptop {
    width: 100%;
    padding: 20px;
  }
  .u-col-offset-0--laptop {
    margin-left: 0;
  }
  .u-col-offset-12--laptop {
    margin-left: 100%;
  }
  .u-row--nomargin > .u-col-12--laptop {
    padding: 0;
  }
  .u-row--narrow .u-col-12--laptop {
    padding: 10px;
  }
}

@media screen and (max-width: 1023px) {
  .u-col-1--tab {
    width: 8.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-1--tab {
    margin-left: 8.3333333333%;
  }
  .u-row--nomargin > .u-col-1--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-1--tab {
    padding: 10px;
  }
  .u-col-2--tab {
    width: 16.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-2--tab {
    margin-left: 16.6666666667%;
  }
  .u-row--nomargin > .u-col-2--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-2--tab {
    padding: 10px;
  }
  .u-col-3--tab {
    width: 25%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-3--tab {
    margin-left: 25%;
  }
  .u-row--nomargin > .u-col-3--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-3--tab {
    padding: 10px;
  }
  .u-col-4--tab {
    width: 33.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-4--tab {
    margin-left: 33.3333333333%;
  }
  .u-row--nomargin > .u-col-4--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-4--tab {
    padding: 10px;
  }
  .u-col-5--tab {
    width: 41.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-5--tab {
    margin-left: 41.6666666667%;
  }
  .u-row--nomargin > .u-col-5--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-5--tab {
    padding: 10px;
  }
  .u-col-6--tab {
    width: 50%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-6--tab {
    margin-left: 50%;
  }
  .u-row--nomargin > .u-col-6--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-6--tab {
    padding: 10px;
  }
  .u-col-7--tab {
    width: 58.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-7--tab {
    margin-left: 58.3333333333%;
  }
  .u-row--nomargin > .u-col-7--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-7--tab {
    padding: 10px;
  }
  .u-col-8--tab {
    width: 66.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-8--tab {
    margin-left: 66.6666666667%;
  }
  .u-row--nomargin > .u-col-8--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-8--tab {
    padding: 10px;
  }
  .u-col-9--tab {
    width: 75%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-9--tab {
    margin-left: 75%;
  }
  .u-row--nomargin > .u-col-9--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-9--tab {
    padding: 10px;
  }
  .u-col-10--tab {
    width: 83.3333333333%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-10--tab {
    margin-left: 83.3333333333%;
  }
  .u-row--nomargin > .u-col-10--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-10--tab {
    padding: 10px;
  }
  .u-col-11--tab {
    width: 91.6666666667%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-11--tab {
    margin-left: 91.6666666667%;
  }
  .u-row--nomargin > .u-col-11--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-11--tab {
    padding: 10px;
  }
  .u-col-12--tab {
    width: 100%;
    padding: 20px;
  }
  .u-col-offset-0--tab {
    margin-left: 0;
  }
  .u-col-offset-12--tab {
    margin-left: 100%;
  }
  .u-row--nomargin > .u-col-12--tab {
    padding: 0;
  }
  .u-row--narrow .u-col-12--tab {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-1--sp {
    width: 8.3333333333%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-1--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-1--sp {
    margin-left: 8.3333333333%;
  }
  .u-row--nomargin > .u-col-1--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-1--sp {
    padding: 10px;
  }
  .u-col-2--sp {
    width: 16.6666666667%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-2--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-2--sp {
    margin-left: 16.6666666667%;
  }
  .u-row--nomargin > .u-col-2--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-2--sp {
    padding: 10px;
  }
  .u-col-3--sp {
    width: 25%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-3--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-3--sp {
    margin-left: 25%;
  }
  .u-row--nomargin > .u-col-3--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-3--sp {
    padding: 10px;
  }
  .u-col-4--sp {
    width: 33.3333333333%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-4--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-4--sp {
    margin-left: 33.3333333333%;
  }
  .u-row--nomargin > .u-col-4--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-4--sp {
    padding: 10px;
  }
  .u-col-5--sp {
    width: 41.6666666667%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-5--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-5--sp {
    margin-left: 41.6666666667%;
  }
  .u-row--nomargin > .u-col-5--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-5--sp {
    padding: 10px;
  }
  .u-col-6--sp {
    width: 50%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-6--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-6--sp {
    margin-left: 50%;
  }
  .u-row--nomargin > .u-col-6--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-6--sp {
    padding: 10px;
  }
  .u-col-7--sp {
    width: 58.3333333333%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-7--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-7--sp {
    margin-left: 58.3333333333%;
  }
  .u-row--nomargin > .u-col-7--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-7--sp {
    padding: 10px;
  }
  .u-col-8--sp {
    width: 66.6666666667%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-8--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-8--sp {
    margin-left: 66.6666666667%;
  }
  .u-row--nomargin > .u-col-8--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-8--sp {
    padding: 10px;
  }
  .u-col-9--sp {
    width: 75%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-9--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-9--sp {
    margin-left: 75%;
  }
  .u-row--nomargin > .u-col-9--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-9--sp {
    padding: 10px;
  }
  .u-col-10--sp {
    width: 83.3333333333%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-10--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-10--sp {
    margin-left: 83.3333333333%;
  }
  .u-row--nomargin > .u-col-10--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-10--sp {
    padding: 10px;
  }
  .u-col-11--sp {
    width: 91.6666666667%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-11--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-11--sp {
    margin-left: 91.6666666667%;
  }
  .u-row--nomargin > .u-col-11--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-11--sp {
    padding: 10px;
  }
  .u-col-12--sp {
    width: 100%;
    padding: 20px;
  }
}

@media screen and (max-width: 767px) and (max-width: 767px) {
  .u-col-12--sp {
    padding: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-col-offset-0--sp {
    margin-left: 0;
  }
  .u-col-offset-12--sp {
    margin-left: 100%;
  }
  .u-row--nomargin > .u-col-12--sp {
    padding: 0;
  }
  .u-row--narrow .u-col-12--sp {
    padding: 10px;
  }
}

/* --------------------------
非表示切り替え
-------------------------- */
@media screen and (min-width: 768px) {
  .u-hide--pc {
    display: none !important;
  }
}

@media screen and (max-width: 1023px) {
  .u-hide--tab {
    display: none !important;
  }
}

@media screen and (max-width: 1180px) {
  .u-hide--laptop {
    display: none !important;
  }
}

@media screen and (max-width: 767px) {
  .u-hide--sp {
    display: none !important;
  }
}

.u-hide--over {
  overflow: hidden;
}

/* --------------------------
margin、padding指定
-------------------------- */
.u-mt0 {
  margin-top: 0px !important;
}

.u-mr0 {
  margin-right: 0px !important;
}

.u-ml0 {
  margin-left: 0px !important;
}

.u-mb0 {
  margin-bottom: 0px !important;
}

.u-pt0 {
  padding-top: 0px !important;
}

.u-pr0 {
  padding-right: 0px !important;
}

.u-pl0 {
  padding-left: 0px !important;
}

.u-pb0 {
  padding-bottom: 0px !important;
}

.u-mt5 {
  margin-top: 5px !important;
}

.u-mr5 {
  margin-right: 5px !important;
}

.u-ml5 {
  margin-left: 5px !important;
}

.u-mb5 {
  margin-bottom: 5px !important;
}

.u-pt5 {
  padding-top: 5px !important;
}

.u-pr5 {
  padding-right: 5px !important;
}

.u-pl5 {
  padding-left: 5px !important;
}

.u-pb5 {
  padding-bottom: 5px !important;
}

.u-mt10 {
  margin-top: 10px !important;
}

.u-mr10 {
  margin-right: 10px !important;
}

.u-ml10 {
  margin-left: 10px !important;
}

.u-mb10 {
  margin-bottom: 10px !important;
}

.u-pt10 {
  padding-top: 10px !important;
}

.u-pr10 {
  padding-right: 10px !important;
}

.u-pl10 {
  padding-left: 10px !important;
}

.u-pb10 {
  padding-bottom: 10px !important;
}

.u-mt15 {
  margin-top: 15px !important;
}

.u-mr15 {
  margin-right: 15px !important;
}

.u-ml15 {
  margin-left: 15px !important;
}

.u-mb15 {
  margin-bottom: 15px !important;
}

.u-pt15 {
  padding-top: 15px !important;
}

.u-pr15 {
  padding-right: 15px !important;
}

.u-pl15 {
  padding-left: 15px !important;
}

.u-pb15 {
  padding-bottom: 15px !important;
}

.u-mt20 {
  margin-top: 20px !important;
}

.u-mr20 {
  margin-right: 20px !important;
}

.u-ml20 {
  margin-left: 20px !important;
}

.u-mb20 {
  margin-bottom: 20px !important;
}

.u-pt20 {
  padding-top: 20px !important;
}

.u-pr20 {
  padding-right: 20px !important;
}

.u-pl20 {
  padding-left: 20px !important;
}

.u-pb20 {
  padding-bottom: 20px !important;
}

.u-mt25 {
  margin-top: 25px !important;
}

.u-mr25 {
  margin-right: 25px !important;
}

.u-ml25 {
  margin-left: 25px !important;
}

.u-mb25 {
  margin-bottom: 25px !important;
}

.u-pt25 {
  padding-top: 25px !important;
}

.u-pr25 {
  padding-right: 25px !important;
}

.u-pl25 {
  padding-left: 25px !important;
}

.u-pb25 {
  padding-bottom: 25px !important;
}

.u-mt30 {
  margin-top: 30px !important;
}

.u-mr30 {
  margin-right: 30px !important;
}

.u-ml30 {
  margin-left: 30px !important;
}

.u-mb30 {
  margin-bottom: 30px !important;
}

.u-pt30 {
  padding-top: 30px !important;
}

.u-pr30 {
  padding-right: 30px !important;
}

.u-pl30 {
  padding-left: 30px !important;
}

.u-pb30 {
  padding-bottom: 30px !important;
}

.u-mt35 {
  margin-top: 35px !important;
}

.u-mr35 {
  margin-right: 35px !important;
}

.u-ml35 {
  margin-left: 35px !important;
}

.u-mb35 {
  margin-bottom: 35px !important;
}

.u-pt35 {
  padding-top: 35px !important;
}

.u-pr35 {
  padding-right: 35px !important;
}

.u-pl35 {
  padding-left: 35px !important;
}

.u-pb35 {
  padding-bottom: 35px !important;
}

.u-mt40 {
  margin-top: 40px !important;
}

.u-mr40 {
  margin-right: 40px !important;
}

.u-ml40 {
  margin-left: 40px !important;
}

.u-mb40 {
  margin-bottom: 40px !important;
}

.u-pt40 {
  padding-top: 40px !important;
}

.u-pr40 {
  padding-right: 40px !important;
}

.u-pl40 {
  padding-left: 40px !important;
}

.u-pb40 {
  padding-bottom: 40px !important;
}

.u-mt45 {
  margin-top: 45px !important;
}

.u-mr45 {
  margin-right: 45px !important;
}

.u-ml45 {
  margin-left: 45px !important;
}

.u-mb45 {
  margin-bottom: 45px !important;
}

.u-pt45 {
  padding-top: 45px !important;
}

.u-pr45 {
  padding-right: 45px !important;
}

.u-pl45 {
  padding-left: 45px !important;
}

.u-pb45 {
  padding-bottom: 45px !important;
}

.u-mt50 {
  margin-top: 50px !important;
}

.u-mr50 {
  margin-right: 50px !important;
}

.u-ml50 {
  margin-left: 50px !important;
}

.u-mb50 {
  margin-bottom: 50px !important;
}

.u-pt50 {
  padding-top: 50px !important;
}

.u-pr50 {
  padding-right: 50px !important;
}

.u-pl50 {
  padding-left: 50px !important;
}

.u-pb50 {
  padding-bottom: 50px !important;
}

.u-mt55 {
  margin-top: 55px !important;
}

.u-mr55 {
  margin-right: 55px !important;
}

.u-ml55 {
  margin-left: 55px !important;
}

.u-mb55 {
  margin-bottom: 55px !important;
}

.u-pt55 {
  padding-top: 55px !important;
}

.u-pr55 {
  padding-right: 55px !important;
}

.u-pl55 {
  padding-left: 55px !important;
}

.u-pb55 {
  padding-bottom: 55px !important;
}

.u-mt60 {
  margin-top: 60px !important;
}

.u-mr60 {
  margin-right: 60px !important;
}

.u-ml60 {
  margin-left: 60px !important;
}

.u-mb60 {
  margin-bottom: 60px !important;
}

.u-pt60 {
  padding-top: 60px !important;
}

.u-pr60 {
  padding-right: 60px !important;
}

.u-pl60 {
  padding-left: 60px !important;
}

.u-pb60 {
  padding-bottom: 60px !important;
}

.u-mt65 {
  margin-top: 65px !important;
}

.u-mr65 {
  margin-right: 65px !important;
}

.u-ml65 {
  margin-left: 65px !important;
}

.u-mb65 {
  margin-bottom: 65px !important;
}

.u-pt65 {
  padding-top: 65px !important;
}

.u-pr65 {
  padding-right: 65px !important;
}

.u-pl65 {
  padding-left: 65px !important;
}

.u-pb65 {
  padding-bottom: 65px !important;
}

.u-mt70 {
  margin-top: 70px !important;
}

.u-mr70 {
  margin-right: 70px !important;
}

.u-ml70 {
  margin-left: 70px !important;
}

.u-mb70 {
  margin-bottom: 70px !important;
}

.u-pt70 {
  padding-top: 70px !important;
}

.u-pr70 {
  padding-right: 70px !important;
}

.u-pl70 {
  padding-left: 70px !important;
}

.u-pb70 {
  padding-bottom: 70px !important;
}

.u-mt75 {
  margin-top: 75px !important;
}

.u-mr75 {
  margin-right: 75px !important;
}

.u-ml75 {
  margin-left: 75px !important;
}

.u-mb75 {
  margin-bottom: 75px !important;
}

.u-pt75 {
  padding-top: 75px !important;
}

.u-pr75 {
  padding-right: 75px !important;
}

.u-pl75 {
  padding-left: 75px !important;
}

.u-pb75 {
  padding-bottom: 75px !important;
}

.u-mt80 {
  margin-top: 80px !important;
}

.u-mr80 {
  margin-right: 80px !important;
}

.u-ml80 {
  margin-left: 80px !important;
}

.u-mb80 {
  margin-bottom: 80px !important;
}

.u-pt80 {
  padding-top: 80px !important;
}

.u-pr80 {
  padding-right: 80px !important;
}

.u-pl80 {
  padding-left: 80px !important;
}

.u-pb80 {
  padding-bottom: 80px !important;
}

.u-mt85 {
  margin-top: 85px !important;
}

.u-mr85 {
  margin-right: 85px !important;
}

.u-ml85 {
  margin-left: 85px !important;
}

.u-mb85 {
  margin-bottom: 85px !important;
}

.u-pt85 {
  padding-top: 85px !important;
}

.u-pr85 {
  padding-right: 85px !important;
}

.u-pl85 {
  padding-left: 85px !important;
}

.u-pb85 {
  padding-bottom: 85px !important;
}

.u-mt90 {
  margin-top: 90px !important;
}

.u-mr90 {
  margin-right: 90px !important;
}

.u-ml90 {
  margin-left: 90px !important;
}

.u-mb90 {
  margin-bottom: 90px !important;
}

.u-pt90 {
  padding-top: 90px !important;
}

.u-pr90 {
  padding-right: 90px !important;
}

.u-pl90 {
  padding-left: 90px !important;
}

.u-pb90 {
  padding-bottom: 90px !important;
}

.u-mt95 {
  margin-top: 95px !important;
}

.u-mr95 {
  margin-right: 95px !important;
}

.u-ml95 {
  margin-left: 95px !important;
}

.u-mb95 {
  margin-bottom: 95px !important;
}

.u-pt95 {
  padding-top: 95px !important;
}

.u-pr95 {
  padding-right: 95px !important;
}

.u-pl95 {
  padding-left: 95px !important;
}

.u-pb95 {
  padding-bottom: 95px !important;
}

.u-mt100 {
  margin-top: 100px !important;
}

.u-mr100 {
  margin-right: 100px !important;
}

.u-ml100 {
  margin-left: 100px !important;
}

.u-mb100 {
  margin-bottom: 100px !important;
}

.u-pt100 {
  padding-top: 100px !important;
}

.u-pr100 {
  padding-right: 100px !important;
}

.u-pl100 {
  padding-left: 100px !important;
}

.u-pb100 {
  padding-bottom: 100px !important;
}

@media screen and (max-width: 767px) {
  .u-mt0--sp {
    margin-top: 0px !important;
  }
  .u-mr0--sp {
    margin-right: 0px !important;
  }
  .u-ml0--sp {
    margin-left: 0px !important;
  }
  .u-mb0--sp {
    margin-bottom: 0px !important;
  }
  .u-pt0--sp {
    padding-top: 0px !important;
  }
  .u-pr0--sp {
    padding-right: 0px !important;
  }
  .u-pl0--sp {
    padding-left: 0px !important;
  }
  .u-pb0--sp {
    padding-bottom: 0px !important;
  }
  .u-mt5--sp {
    margin-top: 5px !important;
  }
  .u-mr5--sp {
    margin-right: 5px !important;
  }
  .u-ml5--sp {
    margin-left: 5px !important;
  }
  .u-mb5--sp {
    margin-bottom: 5px !important;
  }
  .u-pt5--sp {
    padding-top: 5px !important;
  }
  .u-pr5--sp {
    padding-right: 5px !important;
  }
  .u-pl5--sp {
    padding-left: 5px !important;
  }
  .u-pb5--sp {
    padding-bottom: 5px !important;
  }
  .u-mt10--sp {
    margin-top: 10px !important;
  }
  .u-mr10--sp {
    margin-right: 10px !important;
  }
  .u-ml10--sp {
    margin-left: 10px !important;
  }
  .u-mb10--sp {
    margin-bottom: 10px !important;
  }
  .u-pt10--sp {
    padding-top: 10px !important;
  }
  .u-pr10--sp {
    padding-right: 10px !important;
  }
  .u-pl10--sp {
    padding-left: 10px !important;
  }
  .u-pb10--sp {
    padding-bottom: 10px !important;
  }
  .u-mt15--sp {
    margin-top: 15px !important;
  }
  .u-mr15--sp {
    margin-right: 15px !important;
  }
  .u-ml15--sp {
    margin-left: 15px !important;
  }
  .u-mb15--sp {
    margin-bottom: 15px !important;
  }
  .u-pt15--sp {
    padding-top: 15px !important;
  }
  .u-pr15--sp {
    padding-right: 15px !important;
  }
  .u-pl15--sp {
    padding-left: 15px !important;
  }
  .u-pb15--sp {
    padding-bottom: 15px !important;
  }
  .u-mt20--sp {
    margin-top: 20px !important;
  }
  .u-mr20--sp {
    margin-right: 20px !important;
  }
  .u-ml20--sp {
    margin-left: 20px !important;
  }
  .u-mb20--sp {
    margin-bottom: 20px !important;
  }
  .u-pt20--sp {
    padding-top: 20px !important;
  }
  .u-pr20--sp {
    padding-right: 20px !important;
  }
  .u-pl20--sp {
    padding-left: 20px !important;
  }
  .u-pb20--sp {
    padding-bottom: 20px !important;
  }
  .u-mt25--sp {
    margin-top: 25px !important;
  }
  .u-mr25--sp {
    margin-right: 25px !important;
  }
  .u-ml25--sp {
    margin-left: 25px !important;
  }
  .u-mb25--sp {
    margin-bottom: 25px !important;
  }
  .u-pt25--sp {
    padding-top: 25px !important;
  }
  .u-pr25--sp {
    padding-right: 25px !important;
  }
  .u-pl25--sp {
    padding-left: 25px !important;
  }
  .u-pb25--sp {
    padding-bottom: 25px !important;
  }
  .u-mt30--sp {
    margin-top: 30px !important;
  }
  .u-mr30--sp {
    margin-right: 30px !important;
  }
  .u-ml30--sp {
    margin-left: 30px !important;
  }
  .u-mb30--sp {
    margin-bottom: 30px !important;
  }
  .u-pt30--sp {
    padding-top: 30px !important;
  }
  .u-pr30--sp {
    padding-right: 30px !important;
  }
  .u-pl30--sp {
    padding-left: 30px !important;
  }
  .u-pb30--sp {
    padding-bottom: 30px !important;
  }
  .u-mt35--sp {
    margin-top: 35px !important;
  }
  .u-mr35--sp {
    margin-right: 35px !important;
  }
  .u-ml35--sp {
    margin-left: 35px !important;
  }
  .u-mb35--sp {
    margin-bottom: 35px !important;
  }
  .u-pt35--sp {
    padding-top: 35px !important;
  }
  .u-pr35--sp {
    padding-right: 35px !important;
  }
  .u-pl35--sp {
    padding-left: 35px !important;
  }
  .u-pb35--sp {
    padding-bottom: 35px !important;
  }
  .u-mt40--sp {
    margin-top: 40px !important;
  }
  .u-mr40--sp {
    margin-right: 40px !important;
  }
  .u-ml40--sp {
    margin-left: 40px !important;
  }
  .u-mb40--sp {
    margin-bottom: 40px !important;
  }
  .u-pt40--sp {
    padding-top: 40px !important;
  }
  .u-pr40--sp {
    padding-right: 40px !important;
  }
  .u-pl40--sp {
    padding-left: 40px !important;
  }
  .u-pb40--sp {
    padding-bottom: 40px !important;
  }
  .u-mt45--sp {
    margin-top: 45px !important;
  }
  .u-mr45--sp {
    margin-right: 45px !important;
  }
  .u-ml45--sp {
    margin-left: 45px !important;
  }
  .u-mb45--sp {
    margin-bottom: 45px !important;
  }
  .u-pt45--sp {
    padding-top: 45px !important;
  }
  .u-pr45--sp {
    padding-right: 45px !important;
  }
  .u-pl45--sp {
    padding-left: 45px !important;
  }
  .u-pb45--sp {
    padding-bottom: 45px !important;
  }
  .u-mt50--sp {
    margin-top: 50px !important;
  }
  .u-mr50--sp {
    margin-right: 50px !important;
  }
  .u-ml50--sp {
    margin-left: 50px !important;
  }
  .u-mb50--sp {
    margin-bottom: 50px !important;
  }
  .u-pt50--sp {
    padding-top: 50px !important;
  }
  .u-pr50--sp {
    padding-right: 50px !important;
  }
  .u-pl50--sp {
    padding-left: 50px !important;
  }
  .u-pb50--sp {
    padding-bottom: 50px !important;
  }
  .u-mt55--sp {
    margin-top: 55px !important;
  }
  .u-mr55--sp {
    margin-right: 55px !important;
  }
  .u-ml55--sp {
    margin-left: 55px !important;
  }
  .u-mb55--sp {
    margin-bottom: 55px !important;
  }
  .u-pt55--sp {
    padding-top: 55px !important;
  }
  .u-pr55--sp {
    padding-right: 55px !important;
  }
  .u-pl55--sp {
    padding-left: 55px !important;
  }
  .u-pb55--sp {
    padding-bottom: 55px !important;
  }
  .u-mt60--sp {
    margin-top: 60px !important;
  }
  .u-mr60--sp {
    margin-right: 60px !important;
  }
  .u-ml60--sp {
    margin-left: 60px !important;
  }
  .u-mb60--sp {
    margin-bottom: 60px !important;
  }
  .u-pt60--sp {
    padding-top: 60px !important;
  }
  .u-pr60--sp {
    padding-right: 60px !important;
  }
  .u-pl60--sp {
    padding-left: 60px !important;
  }
  .u-pb60--sp {
    padding-bottom: 60px !important;
  }
  .u-mt65--sp {
    margin-top: 65px !important;
  }
  .u-mr65--sp {
    margin-right: 65px !important;
  }
  .u-ml65--sp {
    margin-left: 65px !important;
  }
  .u-mb65--sp {
    margin-bottom: 65px !important;
  }
  .u-pt65--sp {
    padding-top: 65px !important;
  }
  .u-pr65--sp {
    padding-right: 65px !important;
  }
  .u-pl65--sp {
    padding-left: 65px !important;
  }
  .u-pb65--sp {
    padding-bottom: 65px !important;
  }
  .u-mt70--sp {
    margin-top: 70px !important;
  }
  .u-mr70--sp {
    margin-right: 70px !important;
  }
  .u-ml70--sp {
    margin-left: 70px !important;
  }
  .u-mb70--sp {
    margin-bottom: 70px !important;
  }
  .u-pt70--sp {
    padding-top: 70px !important;
  }
  .u-pr70--sp {
    padding-right: 70px !important;
  }
  .u-pl70--sp {
    padding-left: 70px !important;
  }
  .u-pb70--sp {
    padding-bottom: 70px !important;
  }
  .u-mt75--sp {
    margin-top: 75px !important;
  }
  .u-mr75--sp {
    margin-right: 75px !important;
  }
  .u-ml75--sp {
    margin-left: 75px !important;
  }
  .u-mb75--sp {
    margin-bottom: 75px !important;
  }
  .u-pt75--sp {
    padding-top: 75px !important;
  }
  .u-pr75--sp {
    padding-right: 75px !important;
  }
  .u-pl75--sp {
    padding-left: 75px !important;
  }
  .u-pb75--sp {
    padding-bottom: 75px !important;
  }
  .u-mt80--sp {
    margin-top: 80px !important;
  }
  .u-mr80--sp {
    margin-right: 80px !important;
  }
  .u-ml80--sp {
    margin-left: 80px !important;
  }
  .u-mb80--sp {
    margin-bottom: 80px !important;
  }
  .u-pt80--sp {
    padding-top: 80px !important;
  }
  .u-pr80--sp {
    padding-right: 80px !important;
  }
  .u-pl80--sp {
    padding-left: 80px !important;
  }
  .u-pb80--sp {
    padding-bottom: 80px !important;
  }
  .u-mt85--sp {
    margin-top: 85px !important;
  }
  .u-mr85--sp {
    margin-right: 85px !important;
  }
  .u-ml85--sp {
    margin-left: 85px !important;
  }
  .u-mb85--sp {
    margin-bottom: 85px !important;
  }
  .u-pt85--sp {
    padding-top: 85px !important;
  }
  .u-pr85--sp {
    padding-right: 85px !important;
  }
  .u-pl85--sp {
    padding-left: 85px !important;
  }
  .u-pb85--sp {
    padding-bottom: 85px !important;
  }
  .u-mt90--sp {
    margin-top: 90px !important;
  }
  .u-mr90--sp {
    margin-right: 90px !important;
  }
  .u-ml90--sp {
    margin-left: 90px !important;
  }
  .u-mb90--sp {
    margin-bottom: 90px !important;
  }
  .u-pt90--sp {
    padding-top: 90px !important;
  }
  .u-pr90--sp {
    padding-right: 90px !important;
  }
  .u-pl90--sp {
    padding-left: 90px !important;
  }
  .u-pb90--sp {
    padding-bottom: 90px !important;
  }
  .u-mt95--sp {
    margin-top: 95px !important;
  }
  .u-mr95--sp {
    margin-right: 95px !important;
  }
  .u-ml95--sp {
    margin-left: 95px !important;
  }
  .u-mb95--sp {
    margin-bottom: 95px !important;
  }
  .u-pt95--sp {
    padding-top: 95px !important;
  }
  .u-pr95--sp {
    padding-right: 95px !important;
  }
  .u-pl95--sp {
    padding-left: 95px !important;
  }
  .u-pb95--sp {
    padding-bottom: 95px !important;
  }
  .u-mt100--sp {
    margin-top: 100px !important;
  }
  .u-mr100--sp {
    margin-right: 100px !important;
  }
  .u-ml100--sp {
    margin-left: 100px !important;
  }
  .u-mb100--sp {
    margin-bottom: 100px !important;
  }
  .u-pt100--sp {
    padding-top: 100px !important;
  }
  .u-pr100--sp {
    padding-right: 100px !important;
  }
  .u-pl100--sp {
    padding-left: 100px !important;
  }
  .u-pb100--sp {
    padding-bottom: 100px !important;
  }
}

@media screen and (max-width: 1023px) {
  .u-mt0--tab {
    margin-top: 0px !important;
  }
  .u-mr0--tab {
    margin-right: 0px !important;
  }
  .u-ml0--tab {
    margin-left: 0px !important;
  }
  .u-mb0--tab {
    margin-bottom: 0px !important;
  }
  .u-pt0--tab {
    padding-top: 0px !important;
  }
  .u-pr0--tab {
    padding-right: 0px !important;
  }
  .u-pl0--tab {
    padding-left: 0px !important;
  }
  .u-pb0--tab {
    padding-bottom: 0px !important;
  }
  .u-mt5--tab {
    margin-top: 5px !important;
  }
  .u-mr5--tab {
    margin-right: 5px !important;
  }
  .u-ml5--tab {
    margin-left: 5px !important;
  }
  .u-mb5--tab {
    margin-bottom: 5px !important;
  }
  .u-pt5--tab {
    padding-top: 5px !important;
  }
  .u-pr5--tab {
    padding-right: 5px !important;
  }
  .u-pl5--tab {
    padding-left: 5px !important;
  }
  .u-pb5--tab {
    padding-bottom: 5px !important;
  }
  .u-mt10--tab {
    margin-top: 10px !important;
  }
  .u-mr10--tab {
    margin-right: 10px !important;
  }
  .u-ml10--tab {
    margin-left: 10px !important;
  }
  .u-mb10--tab {
    margin-bottom: 10px !important;
  }
  .u-pt10--tab {
    padding-top: 10px !important;
  }
  .u-pr10--tab {
    padding-right: 10px !important;
  }
  .u-pl10--tab {
    padding-left: 10px !important;
  }
  .u-pb10--tab {
    padding-bottom: 10px !important;
  }
  .u-mt15--tab {
    margin-top: 15px !important;
  }
  .u-mr15--tab {
    margin-right: 15px !important;
  }
  .u-ml15--tab {
    margin-left: 15px !important;
  }
  .u-mb15--tab {
    margin-bottom: 15px !important;
  }
  .u-pt15--tab {
    padding-top: 15px !important;
  }
  .u-pr15--tab {
    padding-right: 15px !important;
  }
  .u-pl15--tab {
    padding-left: 15px !important;
  }
  .u-pb15--tab {
    padding-bottom: 15px !important;
  }
  .u-mt20--tab {
    margin-top: 20px !important;
  }
  .u-mr20--tab {
    margin-right: 20px !important;
  }
  .u-ml20--tab {
    margin-left: 20px !important;
  }
  .u-mb20--tab {
    margin-bottom: 20px !important;
  }
  .u-pt20--tab {
    padding-top: 20px !important;
  }
  .u-pr20--tab {
    padding-right: 20px !important;
  }
  .u-pl20--tab {
    padding-left: 20px !important;
  }
  .u-pb20--tab {
    padding-bottom: 20px !important;
  }
  .u-mt25--tab {
    margin-top: 25px !important;
  }
  .u-mr25--tab {
    margin-right: 25px !important;
  }
  .u-ml25--tab {
    margin-left: 25px !important;
  }
  .u-mb25--tab {
    margin-bottom: 25px !important;
  }
  .u-pt25--tab {
    padding-top: 25px !important;
  }
  .u-pr25--tab {
    padding-right: 25px !important;
  }
  .u-pl25--tab {
    padding-left: 25px !important;
  }
  .u-pb25--tab {
    padding-bottom: 25px !important;
  }
  .u-mt30--tab {
    margin-top: 30px !important;
  }
  .u-mr30--tab {
    margin-right: 30px !important;
  }
  .u-ml30--tab {
    margin-left: 30px !important;
  }
  .u-mb30--tab {
    margin-bottom: 30px !important;
  }
  .u-pt30--tab {
    padding-top: 30px !important;
  }
  .u-pr30--tab {
    padding-right: 30px !important;
  }
  .u-pl30--tab {
    padding-left: 30px !important;
  }
  .u-pb30--tab {
    padding-bottom: 30px !important;
  }
  .u-mt35--tab {
    margin-top: 35px !important;
  }
  .u-mr35--tab {
    margin-right: 35px !important;
  }
  .u-ml35--tab {
    margin-left: 35px !important;
  }
  .u-mb35--tab {
    margin-bottom: 35px !important;
  }
  .u-pt35--tab {
    padding-top: 35px !important;
  }
  .u-pr35--tab {
    padding-right: 35px !important;
  }
  .u-pl35--tab {
    padding-left: 35px !important;
  }
  .u-pb35--tab {
    padding-bottom: 35px !important;
  }
  .u-mt40--tab {
    margin-top: 40px !important;
  }
  .u-mr40--tab {
    margin-right: 40px !important;
  }
  .u-ml40--tab {
    margin-left: 40px !important;
  }
  .u-mb40--tab {
    margin-bottom: 40px !important;
  }
  .u-pt40--tab {
    padding-top: 40px !important;
  }
  .u-pr40--tab {
    padding-right: 40px !important;
  }
  .u-pl40--tab {
    padding-left: 40px !important;
  }
  .u-pb40--tab {
    padding-bottom: 40px !important;
  }
  .u-mt45--tab {
    margin-top: 45px !important;
  }
  .u-mr45--tab {
    margin-right: 45px !important;
  }
  .u-ml45--tab {
    margin-left: 45px !important;
  }
  .u-mb45--tab {
    margin-bottom: 45px !important;
  }
  .u-pt45--tab {
    padding-top: 45px !important;
  }
  .u-pr45--tab {
    padding-right: 45px !important;
  }
  .u-pl45--tab {
    padding-left: 45px !important;
  }
  .u-pb45--tab {
    padding-bottom: 45px !important;
  }
  .u-mt50--tab {
    margin-top: 50px !important;
  }
  .u-mr50--tab {
    margin-right: 50px !important;
  }
  .u-ml50--tab {
    margin-left: 50px !important;
  }
  .u-mb50--tab {
    margin-bottom: 50px !important;
  }
  .u-pt50--tab {
    padding-top: 50px !important;
  }
  .u-pr50--tab {
    padding-right: 50px !important;
  }
  .u-pl50--tab {
    padding-left: 50px !important;
  }
  .u-pb50--tab {
    padding-bottom: 50px !important;
  }
  .u-mt55--tab {
    margin-top: 55px !important;
  }
  .u-mr55--tab {
    margin-right: 55px !important;
  }
  .u-ml55--tab {
    margin-left: 55px !important;
  }
  .u-mb55--tab {
    margin-bottom: 55px !important;
  }
  .u-pt55--tab {
    padding-top: 55px !important;
  }
  .u-pr55--tab {
    padding-right: 55px !important;
  }
  .u-pl55--tab {
    padding-left: 55px !important;
  }
  .u-pb55--tab {
    padding-bottom: 55px !important;
  }
  .u-mt60--tab {
    margin-top: 60px !important;
  }
  .u-mr60--tab {
    margin-right: 60px !important;
  }
  .u-ml60--tab {
    margin-left: 60px !important;
  }
  .u-mb60--tab {
    margin-bottom: 60px !important;
  }
  .u-pt60--tab {
    padding-top: 60px !important;
  }
  .u-pr60--tab {
    padding-right: 60px !important;
  }
  .u-pl60--tab {
    padding-left: 60px !important;
  }
  .u-pb60--tab {
    padding-bottom: 60px !important;
  }
  .u-mt65--tab {
    margin-top: 65px !important;
  }
  .u-mr65--tab {
    margin-right: 65px !important;
  }
  .u-ml65--tab {
    margin-left: 65px !important;
  }
  .u-mb65--tab {
    margin-bottom: 65px !important;
  }
  .u-pt65--tab {
    padding-top: 65px !important;
  }
  .u-pr65--tab {
    padding-right: 65px !important;
  }
  .u-pl65--tab {
    padding-left: 65px !important;
  }
  .u-pb65--tab {
    padding-bottom: 65px !important;
  }
  .u-mt70--tab {
    margin-top: 70px !important;
  }
  .u-mr70--tab {
    margin-right: 70px !important;
  }
  .u-ml70--tab {
    margin-left: 70px !important;
  }
  .u-mb70--tab {
    margin-bottom: 70px !important;
  }
  .u-pt70--tab {
    padding-top: 70px !important;
  }
  .u-pr70--tab {
    padding-right: 70px !important;
  }
  .u-pl70--tab {
    padding-left: 70px !important;
  }
  .u-pb70--tab {
    padding-bottom: 70px !important;
  }
  .u-mt75--tab {
    margin-top: 75px !important;
  }
  .u-mr75--tab {
    margin-right: 75px !important;
  }
  .u-ml75--tab {
    margin-left: 75px !important;
  }
  .u-mb75--tab {
    margin-bottom: 75px !important;
  }
  .u-pt75--tab {
    padding-top: 75px !important;
  }
  .u-pr75--tab {
    padding-right: 75px !important;
  }
  .u-pl75--tab {
    padding-left: 75px !important;
  }
  .u-pb75--tab {
    padding-bottom: 75px !important;
  }
  .u-mt80--tab {
    margin-top: 80px !important;
  }
  .u-mr80--tab {
    margin-right: 80px !important;
  }
  .u-ml80--tab {
    margin-left: 80px !important;
  }
  .u-mb80--tab {
    margin-bottom: 80px !important;
  }
  .u-pt80--tab {
    padding-top: 80px !important;
  }
  .u-pr80--tab {
    padding-right: 80px !important;
  }
  .u-pl80--tab {
    padding-left: 80px !important;
  }
  .u-pb80--tab {
    padding-bottom: 80px !important;
  }
  .u-mt85--tab {
    margin-top: 85px !important;
  }
  .u-mr85--tab {
    margin-right: 85px !important;
  }
  .u-ml85--tab {
    margin-left: 85px !important;
  }
  .u-mb85--tab {
    margin-bottom: 85px !important;
  }
  .u-pt85--tab {
    padding-top: 85px !important;
  }
  .u-pr85--tab {
    padding-right: 85px !important;
  }
  .u-pl85--tab {
    padding-left: 85px !important;
  }
  .u-pb85--tab {
    padding-bottom: 85px !important;
  }
  .u-mt90--tab {
    margin-top: 90px !important;
  }
  .u-mr90--tab {
    margin-right: 90px !important;
  }
  .u-ml90--tab {
    margin-left: 90px !important;
  }
  .u-mb90--tab {
    margin-bottom: 90px !important;
  }
  .u-pt90--tab {
    padding-top: 90px !important;
  }
  .u-pr90--tab {
    padding-right: 90px !important;
  }
  .u-pl90--tab {
    padding-left: 90px !important;
  }
  .u-pb90--tab {
    padding-bottom: 90px !important;
  }
  .u-mt95--tab {
    margin-top: 95px !important;
  }
  .u-mr95--tab {
    margin-right: 95px !important;
  }
  .u-ml95--tab {
    margin-left: 95px !important;
  }
  .u-mb95--tab {
    margin-bottom: 95px !important;
  }
  .u-pt95--tab {
    padding-top: 95px !important;
  }
  .u-pr95--tab {
    padding-right: 95px !important;
  }
  .u-pl95--tab {
    padding-left: 95px !important;
  }
  .u-pb95--tab {
    padding-bottom: 95px !important;
  }
  .u-mt100--tab {
    margin-top: 100px !important;
  }
  .u-mr100--tab {
    margin-right: 100px !important;
  }
  .u-ml100--tab {
    margin-left: 100px !important;
  }
  .u-mb100--tab {
    margin-bottom: 100px !important;
  }
  .u-pt100--tab {
    padding-top: 100px !important;
  }
  .u-pr100--tab {
    padding-right: 100px !important;
  }
  .u-pl100--tab {
    padding-left: 100px !important;
  }
  .u-pb100--tab {
    padding-bottom: 100px !important;
  }
}

@media screen and (max-width: 1180px) {
  .u-mt0--laptop {
    margin-top: 0px !important;
  }
  .u-mr0--laptop {
    margin-right: 0px !important;
  }
  .u-ml0--laptop {
    margin-left: 0px !important;
  }
  .u-mb0--laptop {
    margin-bottom: 0px !important;
  }
  .u-pt0--laptop {
    padding-top: 0px !important;
  }
  .u-pr0--laptop {
    padding-right: 0px !important;
  }
  .u-pl0--laptop {
    padding-left: 0px !important;
  }
  .u-pb0--laptop {
    padding-bottom: 0px !important;
  }
  .u-mt5--laptop {
    margin-top: 5px !important;
  }
  .u-mr5--laptop {
    margin-right: 5px !important;
  }
  .u-ml5--laptop {
    margin-left: 5px !important;
  }
  .u-mb5--laptop {
    margin-bottom: 5px !important;
  }
  .u-pt5--laptop {
    padding-top: 5px !important;
  }
  .u-pr5--laptop {
    padding-right: 5px !important;
  }
  .u-pl5--laptop {
    padding-left: 5px !important;
  }
  .u-pb5--laptop {
    padding-bottom: 5px !important;
  }
  .u-mt10--laptop {
    margin-top: 10px !important;
  }
  .u-mr10--laptop {
    margin-right: 10px !important;
  }
  .u-ml10--laptop {
    margin-left: 10px !important;
  }
  .u-mb10--laptop {
    margin-bottom: 10px !important;
  }
  .u-pt10--laptop {
    padding-top: 10px !important;
  }
  .u-pr10--laptop {
    padding-right: 10px !important;
  }
  .u-pl10--laptop {
    padding-left: 10px !important;
  }
  .u-pb10--laptop {
    padding-bottom: 10px !important;
  }
  .u-mt15--laptop {
    margin-top: 15px !important;
  }
  .u-mr15--laptop {
    margin-right: 15px !important;
  }
  .u-ml15--laptop {
    margin-left: 15px !important;
  }
  .u-mb15--laptop {
    margin-bottom: 15px !important;
  }
  .u-pt15--laptop {
    padding-top: 15px !important;
  }
  .u-pr15--laptop {
    padding-right: 15px !important;
  }
  .u-pl15--laptop {
    padding-left: 15px !important;
  }
  .u-pb15--laptop {
    padding-bottom: 15px !important;
  }
  .u-mt20--laptop {
    margin-top: 20px !important;
  }
  .u-mr20--laptop {
    margin-right: 20px !important;
  }
  .u-ml20--laptop {
    margin-left: 20px !important;
  }
  .u-mb20--laptop {
    margin-bottom: 20px !important;
  }
  .u-pt20--laptop {
    padding-top: 20px !important;
  }
  .u-pr20--laptop {
    padding-right: 20px !important;
  }
  .u-pl20--laptop {
    padding-left: 20px !important;
  }
  .u-pb20--laptop {
    padding-bottom: 20px !important;
  }
  .u-mt25--laptop {
    margin-top: 25px !important;
  }
  .u-mr25--laptop {
    margin-right: 25px !important;
  }
  .u-ml25--laptop {
    margin-left: 25px !important;
  }
  .u-mb25--laptop {
    margin-bottom: 25px !important;
  }
  .u-pt25--laptop {
    padding-top: 25px !important;
  }
  .u-pr25--laptop {
    padding-right: 25px !important;
  }
  .u-pl25--laptop {
    padding-left: 25px !important;
  }
  .u-pb25--laptop {
    padding-bottom: 25px !important;
  }
  .u-mt30--laptop {
    margin-top: 30px !important;
  }
  .u-mr30--laptop {
    margin-right: 30px !important;
  }
  .u-ml30--laptop {
    margin-left: 30px !important;
  }
  .u-mb30--laptop {
    margin-bottom: 30px !important;
  }
  .u-pt30--laptop {
    padding-top: 30px !important;
  }
  .u-pr30--laptop {
    padding-right: 30px !important;
  }
  .u-pl30--laptop {
    padding-left: 30px !important;
  }
  .u-pb30--laptop {
    padding-bottom: 30px !important;
  }
  .u-mt35--laptop {
    margin-top: 35px !important;
  }
  .u-mr35--laptop {
    margin-right: 35px !important;
  }
  .u-ml35--laptop {
    margin-left: 35px !important;
  }
  .u-mb35--laptop {
    margin-bottom: 35px !important;
  }
  .u-pt35--laptop {
    padding-top: 35px !important;
  }
  .u-pr35--laptop {
    padding-right: 35px !important;
  }
  .u-pl35--laptop {
    padding-left: 35px !important;
  }
  .u-pb35--laptop {
    padding-bottom: 35px !important;
  }
  .u-mt40--laptop {
    margin-top: 40px !important;
  }
  .u-mr40--laptop {
    margin-right: 40px !important;
  }
  .u-ml40--laptop {
    margin-left: 40px !important;
  }
  .u-mb40--laptop {
    margin-bottom: 40px !important;
  }
  .u-pt40--laptop {
    padding-top: 40px !important;
  }
  .u-pr40--laptop {
    padding-right: 40px !important;
  }
  .u-pl40--laptop {
    padding-left: 40px !important;
  }
  .u-pb40--laptop {
    padding-bottom: 40px !important;
  }
  .u-mt45--laptop {
    margin-top: 45px !important;
  }
  .u-mr45--laptop {
    margin-right: 45px !important;
  }
  .u-ml45--laptop {
    margin-left: 45px !important;
  }
  .u-mb45--laptop {
    margin-bottom: 45px !important;
  }
  .u-pt45--laptop {
    padding-top: 45px !important;
  }
  .u-pr45--laptop {
    padding-right: 45px !important;
  }
  .u-pl45--laptop {
    padding-left: 45px !important;
  }
  .u-pb45--laptop {
    padding-bottom: 45px !important;
  }
  .u-mt50--laptop {
    margin-top: 50px !important;
  }
  .u-mr50--laptop {
    margin-right: 50px !important;
  }
  .u-ml50--laptop {
    margin-left: 50px !important;
  }
  .u-mb50--laptop {
    margin-bottom: 50px !important;
  }
  .u-pt50--laptop {
    padding-top: 50px !important;
  }
  .u-pr50--laptop {
    padding-right: 50px !important;
  }
  .u-pl50--laptop {
    padding-left: 50px !important;
  }
  .u-pb50--laptop {
    padding-bottom: 50px !important;
  }
  .u-mt55--laptop {
    margin-top: 55px !important;
  }
  .u-mr55--laptop {
    margin-right: 55px !important;
  }
  .u-ml55--laptop {
    margin-left: 55px !important;
  }
  .u-mb55--laptop {
    margin-bottom: 55px !important;
  }
  .u-pt55--laptop {
    padding-top: 55px !important;
  }
  .u-pr55--laptop {
    padding-right: 55px !important;
  }
  .u-pl55--laptop {
    padding-left: 55px !important;
  }
  .u-pb55--laptop {
    padding-bottom: 55px !important;
  }
  .u-mt60--laptop {
    margin-top: 60px !important;
  }
  .u-mr60--laptop {
    margin-right: 60px !important;
  }
  .u-ml60--laptop {
    margin-left: 60px !important;
  }
  .u-mb60--laptop {
    margin-bottom: 60px !important;
  }
  .u-pt60--laptop {
    padding-top: 60px !important;
  }
  .u-pr60--laptop {
    padding-right: 60px !important;
  }
  .u-pl60--laptop {
    padding-left: 60px !important;
  }
  .u-pb60--laptop {
    padding-bottom: 60px !important;
  }
  .u-mt65--laptop {
    margin-top: 65px !important;
  }
  .u-mr65--laptop {
    margin-right: 65px !important;
  }
  .u-ml65--laptop {
    margin-left: 65px !important;
  }
  .u-mb65--laptop {
    margin-bottom: 65px !important;
  }
  .u-pt65--laptop {
    padding-top: 65px !important;
  }
  .u-pr65--laptop {
    padding-right: 65px !important;
  }
  .u-pl65--laptop {
    padding-left: 65px !important;
  }
  .u-pb65--laptop {
    padding-bottom: 65px !important;
  }
  .u-mt70--laptop {
    margin-top: 70px !important;
  }
  .u-mr70--laptop {
    margin-right: 70px !important;
  }
  .u-ml70--laptop {
    margin-left: 70px !important;
  }
  .u-mb70--laptop {
    margin-bottom: 70px !important;
  }
  .u-pt70--laptop {
    padding-top: 70px !important;
  }
  .u-pr70--laptop {
    padding-right: 70px !important;
  }
  .u-pl70--laptop {
    padding-left: 70px !important;
  }
  .u-pb70--laptop {
    padding-bottom: 70px !important;
  }
  .u-mt75--laptop {
    margin-top: 75px !important;
  }
  .u-mr75--laptop {
    margin-right: 75px !important;
  }
  .u-ml75--laptop {
    margin-left: 75px !important;
  }
  .u-mb75--laptop {
    margin-bottom: 75px !important;
  }
  .u-pt75--laptop {
    padding-top: 75px !important;
  }
  .u-pr75--laptop {
    padding-right: 75px !important;
  }
  .u-pl75--laptop {
    padding-left: 75px !important;
  }
  .u-pb75--laptop {
    padding-bottom: 75px !important;
  }
  .u-mt80--laptop {
    margin-top: 80px !important;
  }
  .u-mr80--laptop {
    margin-right: 80px !important;
  }
  .u-ml80--laptop {
    margin-left: 80px !important;
  }
  .u-mb80--laptop {
    margin-bottom: 80px !important;
  }
  .u-pt80--laptop {
    padding-top: 80px !important;
  }
  .u-pr80--laptop {
    padding-right: 80px !important;
  }
  .u-pl80--laptop {
    padding-left: 80px !important;
  }
  .u-pb80--laptop {
    padding-bottom: 80px !important;
  }
  .u-mt85--laptop {
    margin-top: 85px !important;
  }
  .u-mr85--laptop {
    margin-right: 85px !important;
  }
  .u-ml85--laptop {
    margin-left: 85px !important;
  }
  .u-mb85--laptop {
    margin-bottom: 85px !important;
  }
  .u-pt85--laptop {
    padding-top: 85px !important;
  }
  .u-pr85--laptop {
    padding-right: 85px !important;
  }
  .u-pl85--laptop {
    padding-left: 85px !important;
  }
  .u-pb85--laptop {
    padding-bottom: 85px !important;
  }
  .u-mt90--laptop {
    margin-top: 90px !important;
  }
  .u-mr90--laptop {
    margin-right: 90px !important;
  }
  .u-ml90--laptop {
    margin-left: 90px !important;
  }
  .u-mb90--laptop {
    margin-bottom: 90px !important;
  }
  .u-pt90--laptop {
    padding-top: 90px !important;
  }
  .u-pr90--laptop {
    padding-right: 90px !important;
  }
  .u-pl90--laptop {
    padding-left: 90px !important;
  }
  .u-pb90--laptop {
    padding-bottom: 90px !important;
  }
  .u-mt95--laptop {
    margin-top: 95px !important;
  }
  .u-mr95--laptop {
    margin-right: 95px !important;
  }
  .u-ml95--laptop {
    margin-left: 95px !important;
  }
  .u-mb95--laptop {
    margin-bottom: 95px !important;
  }
  .u-pt95--laptop {
    padding-top: 95px !important;
  }
  .u-pr95--laptop {
    padding-right: 95px !important;
  }
  .u-pl95--laptop {
    padding-left: 95px !important;
  }
  .u-pb95--laptop {
    padding-bottom: 95px !important;
  }
  .u-mt100--laptop {
    margin-top: 100px !important;
  }
  .u-mr100--laptop {
    margin-right: 100px !important;
  }
  .u-ml100--laptop {
    margin-left: 100px !important;
  }
  .u-mb100--laptop {
    margin-bottom: 100px !important;
  }
  .u-pt100--laptop {
    padding-top: 100px !important;
  }
  .u-pr100--laptop {
    padding-right: 100px !important;
  }
  .u-pl100--laptop {
    padding-left: 100px !important;
  }
  .u-pb100--laptop {
    padding-bottom: 100px !important;
  }
}

@media screen and (min-width: 768px) {
  .u-mt0--pc {
    margin-top: 0px !important;
  }
  .u-mr0--pc {
    margin-right: 0px !important;
  }
  .u-ml0--pc {
    margin-left: 0px !important;
  }
  .u-mb0--pc {
    margin-bottom: 0px !important;
  }
  .u-pt0--pc {
    padding-top: 0px !important;
  }
  .u-pr0--pc {
    padding-right: 0px !important;
  }
  .u-pl0--pc {
    padding-left: 0px !important;
  }
  .u-pb0--pc {
    padding-bottom: 0px !important;
  }
  .u-mt5--pc {
    margin-top: 5px !important;
  }
  .u-mr5--pc {
    margin-right: 5px !important;
  }
  .u-ml5--pc {
    margin-left: 5px !important;
  }
  .u-mb5--pc {
    margin-bottom: 5px !important;
  }
  .u-pt5--pc {
    padding-top: 5px !important;
  }
  .u-pr5--pc {
    padding-right: 5px !important;
  }
  .u-pl5--pc {
    padding-left: 5px !important;
  }
  .u-pb5--pc {
    padding-bottom: 5px !important;
  }
  .u-mt10--pc {
    margin-top: 10px !important;
  }
  .u-mr10--pc {
    margin-right: 10px !important;
  }
  .u-ml10--pc {
    margin-left: 10px !important;
  }
  .u-mb10--pc {
    margin-bottom: 10px !important;
  }
  .u-pt10--pc {
    padding-top: 10px !important;
  }
  .u-pr10--pc {
    padding-right: 10px !important;
  }
  .u-pl10--pc {
    padding-left: 10px !important;
  }
  .u-pb10--pc {
    padding-bottom: 10px !important;
  }
  .u-mt15--pc {
    margin-top: 15px !important;
  }
  .u-mr15--pc {
    margin-right: 15px !important;
  }
  .u-ml15--pc {
    margin-left: 15px !important;
  }
  .u-mb15--pc {
    margin-bottom: 15px !important;
  }
  .u-pt15--pc {
    padding-top: 15px !important;
  }
  .u-pr15--pc {
    padding-right: 15px !important;
  }
  .u-pl15--pc {
    padding-left: 15px !important;
  }
  .u-pb15--pc {
    padding-bottom: 15px !important;
  }
  .u-mt20--pc {
    margin-top: 20px !important;
  }
  .u-mr20--pc {
    margin-right: 20px !important;
  }
  .u-ml20--pc {
    margin-left: 20px !important;
  }
  .u-mb20--pc {
    margin-bottom: 20px !important;
  }
  .u-pt20--pc {
    padding-top: 20px !important;
  }
  .u-pr20--pc {
    padding-right: 20px !important;
  }
  .u-pl20--pc {
    padding-left: 20px !important;
  }
  .u-pb20--pc {
    padding-bottom: 20px !important;
  }
  .u-mt25--pc {
    margin-top: 25px !important;
  }
  .u-mr25--pc {
    margin-right: 25px !important;
  }
  .u-ml25--pc {
    margin-left: 25px !important;
  }
  .u-mb25--pc {
    margin-bottom: 25px !important;
  }
  .u-pt25--pc {
    padding-top: 25px !important;
  }
  .u-pr25--pc {
    padding-right: 25px !important;
  }
  .u-pl25--pc {
    padding-left: 25px !important;
  }
  .u-pb25--pc {
    padding-bottom: 25px !important;
  }
  .u-mt30--pc {
    margin-top: 30px !important;
  }
  .u-mr30--pc {
    margin-right: 30px !important;
  }
  .u-ml30--pc {
    margin-left: 30px !important;
  }
  .u-mb30--pc {
    margin-bottom: 30px !important;
  }
  .u-pt30--pc {
    padding-top: 30px !important;
  }
  .u-pr30--pc {
    padding-right: 30px !important;
  }
  .u-pl30--pc {
    padding-left: 30px !important;
  }
  .u-pb30--pc {
    padding-bottom: 30px !important;
  }
  .u-mt35--pc {
    margin-top: 35px !important;
  }
  .u-mr35--pc {
    margin-right: 35px !important;
  }
  .u-ml35--pc {
    margin-left: 35px !important;
  }
  .u-mb35--pc {
    margin-bottom: 35px !important;
  }
  .u-pt35--pc {
    padding-top: 35px !important;
  }
  .u-pr35--pc {
    padding-right: 35px !important;
  }
  .u-pl35--pc {
    padding-left: 35px !important;
  }
  .u-pb35--pc {
    padding-bottom: 35px !important;
  }
  .u-mt40--pc {
    margin-top: 40px !important;
  }
  .u-mr40--pc {
    margin-right: 40px !important;
  }
  .u-ml40--pc {
    margin-left: 40px !important;
  }
  .u-mb40--pc {
    margin-bottom: 40px !important;
  }
  .u-pt40--pc {
    padding-top: 40px !important;
  }
  .u-pr40--pc {
    padding-right: 40px !important;
  }
  .u-pl40--pc {
    padding-left: 40px !important;
  }
  .u-pb40--pc {
    padding-bottom: 40px !important;
  }
  .u-mt45--pc {
    margin-top: 45px !important;
  }
  .u-mr45--pc {
    margin-right: 45px !important;
  }
  .u-ml45--pc {
    margin-left: 45px !important;
  }
  .u-mb45--pc {
    margin-bottom: 45px !important;
  }
  .u-pt45--pc {
    padding-top: 45px !important;
  }
  .u-pr45--pc {
    padding-right: 45px !important;
  }
  .u-pl45--pc {
    padding-left: 45px !important;
  }
  .u-pb45--pc {
    padding-bottom: 45px !important;
  }
  .u-mt50--pc {
    margin-top: 50px !important;
  }
  .u-mr50--pc {
    margin-right: 50px !important;
  }
  .u-ml50--pc {
    margin-left: 50px !important;
  }
  .u-mb50--pc {
    margin-bottom: 50px !important;
  }
  .u-pt50--pc {
    padding-top: 50px !important;
  }
  .u-pr50--pc {
    padding-right: 50px !important;
  }
  .u-pl50--pc {
    padding-left: 50px !important;
  }
  .u-pb50--pc {
    padding-bottom: 50px !important;
  }
  .u-mt55--pc {
    margin-top: 55px !important;
  }
  .u-mr55--pc {
    margin-right: 55px !important;
  }
  .u-ml55--pc {
    margin-left: 55px !important;
  }
  .u-mb55--pc {
    margin-bottom: 55px !important;
  }
  .u-pt55--pc {
    padding-top: 55px !important;
  }
  .u-pr55--pc {
    padding-right: 55px !important;
  }
  .u-pl55--pc {
    padding-left: 55px !important;
  }
  .u-pb55--pc {
    padding-bottom: 55px !important;
  }
  .u-mt60--pc {
    margin-top: 60px !important;
  }
  .u-mr60--pc {
    margin-right: 60px !important;
  }
  .u-ml60--pc {
    margin-left: 60px !important;
  }
  .u-mb60--pc {
    margin-bottom: 60px !important;
  }
  .u-pt60--pc {
    padding-top: 60px !important;
  }
  .u-pr60--pc {
    padding-right: 60px !important;
  }
  .u-pl60--pc {
    padding-left: 60px !important;
  }
  .u-pb60--pc {
    padding-bottom: 60px !important;
  }
  .u-mt65--pc {
    margin-top: 65px !important;
  }
  .u-mr65--pc {
    margin-right: 65px !important;
  }
  .u-ml65--pc {
    margin-left: 65px !important;
  }
  .u-mb65--pc {
    margin-bottom: 65px !important;
  }
  .u-pt65--pc {
    padding-top: 65px !important;
  }
  .u-pr65--pc {
    padding-right: 65px !important;
  }
  .u-pl65--pc {
    padding-left: 65px !important;
  }
  .u-pb65--pc {
    padding-bottom: 65px !important;
  }
  .u-mt70--pc {
    margin-top: 70px !important;
  }
  .u-mr70--pc {
    margin-right: 70px !important;
  }
  .u-ml70--pc {
    margin-left: 70px !important;
  }
  .u-mb70--pc {
    margin-bottom: 70px !important;
  }
  .u-pt70--pc {
    padding-top: 70px !important;
  }
  .u-pr70--pc {
    padding-right: 70px !important;
  }
  .u-pl70--pc {
    padding-left: 70px !important;
  }
  .u-pb70--pc {
    padding-bottom: 70px !important;
  }
  .u-mt75--pc {
    margin-top: 75px !important;
  }
  .u-mr75--pc {
    margin-right: 75px !important;
  }
  .u-ml75--pc {
    margin-left: 75px !important;
  }
  .u-mb75--pc {
    margin-bottom: 75px !important;
  }
  .u-pt75--pc {
    padding-top: 75px !important;
  }
  .u-pr75--pc {
    padding-right: 75px !important;
  }
  .u-pl75--pc {
    padding-left: 75px !important;
  }
  .u-pb75--pc {
    padding-bottom: 75px !important;
  }
  .u-mt80--pc {
    margin-top: 80px !important;
  }
  .u-mr80--pc {
    margin-right: 80px !important;
  }
  .u-ml80--pc {
    margin-left: 80px !important;
  }
  .u-mb80--pc {
    margin-bottom: 80px !important;
  }
  .u-pt80--pc {
    padding-top: 80px !important;
  }
  .u-pr80--pc {
    padding-right: 80px !important;
  }
  .u-pl80--pc {
    padding-left: 80px !important;
  }
  .u-pb80--pc {
    padding-bottom: 80px !important;
  }
  .u-mt85--pc {
    margin-top: 85px !important;
  }
  .u-mr85--pc {
    margin-right: 85px !important;
  }
  .u-ml85--pc {
    margin-left: 85px !important;
  }
  .u-mb85--pc {
    margin-bottom: 85px !important;
  }
  .u-pt85--pc {
    padding-top: 85px !important;
  }
  .u-pr85--pc {
    padding-right: 85px !important;
  }
  .u-pl85--pc {
    padding-left: 85px !important;
  }
  .u-pb85--pc {
    padding-bottom: 85px !important;
  }
  .u-mt90--pc {
    margin-top: 90px !important;
  }
  .u-mr90--pc {
    margin-right: 90px !important;
  }
  .u-ml90--pc {
    margin-left: 90px !important;
  }
  .u-mb90--pc {
    margin-bottom: 90px !important;
  }
  .u-pt90--pc {
    padding-top: 90px !important;
  }
  .u-pr90--pc {
    padding-right: 90px !important;
  }
  .u-pl90--pc {
    padding-left: 90px !important;
  }
  .u-pb90--pc {
    padding-bottom: 90px !important;
  }
  .u-mt95--pc {
    margin-top: 95px !important;
  }
  .u-mr95--pc {
    margin-right: 95px !important;
  }
  .u-ml95--pc {
    margin-left: 95px !important;
  }
  .u-mb95--pc {
    margin-bottom: 95px !important;
  }
  .u-pt95--pc {
    padding-top: 95px !important;
  }
  .u-pr95--pc {
    padding-right: 95px !important;
  }
  .u-pl95--pc {
    padding-left: 95px !important;
  }
  .u-pb95--pc {
    padding-bottom: 95px !important;
  }
  .u-mt100--pc {
    margin-top: 100px !important;
  }
  .u-mr100--pc {
    margin-right: 100px !important;
  }
  .u-ml100--pc {
    margin-left: 100px !important;
  }
  .u-mb100--pc {
    margin-bottom: 100px !important;
  }
  .u-pt100--pc {
    padding-top: 100px !important;
  }
  .u-pr100--pc {
    padding-right: 100px !important;
  }
  .u-pl100--pc {
    padding-left: 100px !important;
  }
  .u-pb100--pc {
    padding-bottom: 100px !important;
  }
}

/* --------------------------
テキスト装飾
-------------------------- */
.u-text-accent {
  color: #0b2b75;
}

.u-text-important {
  color: #e20013;
}

.u-text-inverse {
  color: #fff;
}

.u-text-sub {
  color: #ababab;
}

.u-text-serif {
  font-family: 'Times New Roman', Times, serif;
}

.u-text-bold {
  font-weight: bold;
}

.u-text-normal {
  font-weight: normal;
}

.u-text-lineheight3 {
  line-height: 3em !important;
}

.u-text-highlight {
  background: -webkit-gradient(linear, left top, left bottom, color-stop(70%, transparent), color-stop(70%, #f08080));
  background: linear-gradient(transparent 70%, #f08080 70%);
}

.u-text-x-large {
  font-size: 26px;
  letter-spacing: 0.06em;
}

@media screen and (max-width: 767px) {
  .u-text-x-large {
    font-size: 20px;
  }
}

.u-text-large {
  font-size: 22px;
  letter-spacing: 0.05em;
}

@media screen and (max-width: 767px) {
  .u-text-large {
    font-size: 18px;
  }
}

.u-text-bit-large {
  font-size: 18px;
  line-height: 2em;
}

@media screen and (max-width: 767px) {
  .u-text-bit-large {
    font-size: 16px;
  }
}

.u-text-default {
  font-size: 16px;
  line-height: 1.8em;
}

@media screen and (max-width: 767px) {
  .u-text-default {
    font-size: 14px;
  }
}

.u-text-small {
  font-size: 14px;
}

@media screen and (max-width: 767px) {
  .u-text-small {
    font-size: 12px;
  }
}

.u-text-x-small {
  font-size: 12px;
}

@media screen and (max-width: 767px) {
  .u-text-x-small {
    font-size: 10px;
  }
}

@media screen and (max-width: 767px) {
  .u-text-x-small--sp {
    font-size: 10px;
  }
}

/* --------------------------
幅指定
-------------------------- */
.u-w0 {
  width: 0%;
  display: block;
  margin: 0 auto;
}

.u-w10 {
  width: 10%;
  display: block;
  margin: 0 auto;
}

.u-w20 {
  width: 20%;
  display: block;
  margin: 0 auto;
}

.u-w30 {
  width: 30%;
  display: block;
  margin: 0 auto;
}

.u-w40 {
  width: 40%;
  display: block;
  margin: 0 auto;
}

.u-w50 {
  width: 50%;
  display: block;
  margin: 0 auto;
}

.u-w60 {
  width: 60%;
  display: block;
  margin: 0 auto;
}

.u-w70 {
  width: 70%;
  display: block;
  margin: 0 auto;
}

.u-w80 {
  width: 80%;
  display: block;
  margin: 0 auto;
}

.u-w90 {
  width: 90%;
  display: block;
  margin: 0 auto;
}

.u-w100 {
  width: 100%;
  display: block;
  margin: 0 auto;
}

@media screen and (min-width: 768px) {
  .u-w0--pc {
    width: 0%;
    display: block;
    margin: 0 auto;
  }
  .u-w10--pc {
    width: 10%;
    display: block;
    margin: 0 auto;
  }
  .u-w20--pc {
    width: 20%;
    display: block;
    margin: 0 auto;
  }
  .u-w30--pc {
    width: 30%;
    display: block;
    margin: 0 auto;
  }
  .u-w40--pc {
    width: 40%;
    display: block;
    margin: 0 auto;
  }
  .u-w50--pc {
    width: 50%;
    display: block;
    margin: 0 auto;
  }
  .u-w60--pc {
    width: 60%;
    display: block;
    margin: 0 auto;
  }
  .u-w70--pc {
    width: 70%;
    display: block;
    margin: 0 auto;
  }
  .u-w80--pc {
    width: 80%;
    display: block;
    margin: 0 auto;
  }
  .u-w90--pc {
    width: 90%;
    display: block;
    margin: 0 auto;
  }
  .u-w100--pc {
    width: 100%;
    display: block;
    margin: 0 auto;
  }
}

@media screen and (max-width: 1180px) {
  .u-w0--laptop {
    width: 0%;
    display: block;
    margin: 0 auto;
  }
  .u-w10--laptop {
    width: 10%;
    display: block;
    margin: 0 auto;
  }
  .u-w20--laptop {
    width: 20%;
    display: block;
    margin: 0 auto;
  }
  .u-w30--laptop {
    width: 30%;
    display: block;
    margin: 0 auto;
  }
  .u-w40--laptop {
    width: 40%;
    display: block;
    margin: 0 auto;
  }
  .u-w50--laptop {
    width: 50%;
    display: block;
    margin: 0 auto;
  }
  .u-w60--laptop {
    width: 60%;
    display: block;
    margin: 0 auto;
  }
  .u-w70--laptop {
    width: 70%;
    display: block;
    margin: 0 auto;
  }
  .u-w80--laptop {
    width: 80%;
    display: block;
    margin: 0 auto;
  }
  .u-w90--laptop {
    width: 90%;
    display: block;
    margin: 0 auto;
  }
  .u-w100--laptop {
    width: 100%;
    display: block;
    margin: 0 auto;
  }
}

@media screen and (max-width: 1023px) {
  .u-w0--tab {
    width: 0%;
    display: block;
    margin: 0 auto;
  }
  .u-w10--tab {
    width: 10%;
    display: block;
    margin: 0 auto;
  }
  .u-w20--tab {
    width: 20%;
    display: block;
    margin: 0 auto;
  }
  .u-w30--tab {
    width: 30%;
    display: block;
    margin: 0 auto;
  }
  .u-w40--tab {
    width: 40%;
    display: block;
    margin: 0 auto;
  }
  .u-w50--tab {
    width: 50%;
    display: block;
    margin: 0 auto;
  }
  .u-w60--tab {
    width: 60%;
    display: block;
    margin: 0 auto;
  }
  .u-w70--tab {
    width: 70%;
    display: block;
    margin: 0 auto;
  }
  .u-w80--tab {
    width: 80%;
    display: block;
    margin: 0 auto;
  }
  .u-w90--tab {
    width: 90%;
    display: block;
    margin: 0 auto;
  }
  .u-w100--tab {
    width: 100%;
    display: block;
    margin: 0 auto;
  }
}

@media screen and (max-width: 767px) {
  .u-w0--sp {
    width: 0%;
    display: block;
    margin: 0 auto;
  }
  .u-w10--sp {
    width: 10%;
    display: block;
    margin: 0 auto;
  }
  .u-w20--sp {
    width: 20%;
    display: block;
    margin: 0 auto;
  }
  .u-w30--sp {
    width: 30%;
    display: block;
    margin: 0 auto;
  }
  .u-w40--sp {
    width: 40%;
    display: block;
    margin: 0 auto;
  }
  .u-w50--sp {
    width: 50%;
    display: block;
    margin: 0 auto;
  }
  .u-w60--sp {
    width: 60%;
    display: block;
    margin: 0 auto;
  }
  .u-w70--sp {
    width: 70%;
    display: block;
    margin: 0 auto;
  }
  .u-w80--sp {
    width: 80%;
    display: block;
    margin: 0 auto;
  }
  .u-w90--sp {
    width: 90%;
    display: block;
    margin: 0 auto;
  }
  .u-w100--sp {
    width: 100%;
    display: block;
    margin: 0 auto;
  }
}

.u-h100 {
  height: 100%;
}

.p-header {
  padding: 20px 0;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  z-index: 1000;
  text-align: center;
}

@media screen and (max-width: 767px) {
  .p-header {
    padding: 0;
  }
}

.p-header-logo {
  position: absolute;
  left: 50px;
  top: 20px;
}

@media screen and (max-width: 767px) {
  .p-header-logo {
    left: 25px;
    top: 10px;
  }
}

.p-header-logo img {
  width: 120px;
}

@media screen and (max-width: 767px) {
  .p-header-logo img {
    width: 90px;
  }
}

.p-header-search {
	position: absolute;
    right: 50px;
    top: 35px;
}
@media screen and (max-width: 1024px) {
.p-header-search {
	right: 90px;
}
}
@media screen and (max-width: 767px) {
.p-header-search {
	position: static;
}
}
/*==ナビゲーション全体の設定*/
.p-gnav {
  background: #fff;
  text-align: center;
  border-radius: 30px;
  padding: 0 30px;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin: 0 auto;
  -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
          box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
  z-index: 3;
  border: 1px solid #DB6D34;
}

@media screen and (max-width: 1023px) {
  .p-gnav {
    display: none;
    border-radius: 0;
    width: 100%;
    padding: 80px 30px 30px;
    height: 100vh;
    overflow: scroll;
	  position:absolute;
	  top:0;
  }
}

.p-gnav ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 1023px) {
  .p-gnav ul {
    display: block;
  }
}

.p-gnav ul li {
  position: relative;
}

.p-gnav ul li a {
  display: block;
  text-decoration: none;
  padding: 20px 15px;
  -webkit-transition: all .3s;
  transition: all .3s;
	        border-bottom: 5px solid transparent;
}

@media screen and (max-width: 1023px) {
  .p-gnav ul li a {
    text-align: left;
    padding: 20px 15px;
  }
}

.p-gnav ul li ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

@media screen and (max-width: 1023px) {
  .p-gnav ul li ul {
    display: block;
  }
}

.p-gnav ul li ul li a {
  color: #fff;
}

.p-gnav ul li ul li.has-child::before {
  content: '';
  position: absolute;
  right: 5px;
  top: 25px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #2C2C2C;
  border-right: 2px solid #2C2C2C;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.p-gnav ul li.has-child a {
  padding-right: 20px;
}

.p-gnav ul li.has-child::before {
  content: '';
  position: absolute;
  right: 5px;
  top: 24px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #2C2C2C;
  border-right: 2px solid #2C2C2C;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

@media screen and (max-width: 1023px) {
  .p-gnav ul li.has-child::before {
    top: 20px;
  }
}

.p-gnav ul li.has-child nav {
  /*絶対配置で位置を指定*/
  position: absolute;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  z-index: -1;
  padding-top: 10px;
  visibility: hidden;
  opacity: 0;
  -webkit-transition: all .3s;
  transition: all .3s;
}

@media screen and (max-width: 1023px) {
  .p-gnav ul li.has-child nav {
    position: relative;
    z-index: +1;
    display: none;
    padding: 0;
  }
}

.p-gnav ul li.has-child nav ul {
  border-radius: 30px;
  padding: 0 30px;
  background: #DC6D35;
  -webkit-box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
          box-shadow: 0 5px 5px rgba(0, 0, 0, 0.3);
  width: -webkit-max-content;
  width: -moz-max-content;
  width: max-content;
}

@media screen and (max-width: 1023px) {
  .p-gnav ul li.has-child nav ul {
    border-radius: 0;
    padding: 10px 20px;
    -webkit-box-shadow: none;
            box-shadow: none;
    width: 100%;
  }
}

@media screen and (max-width: 1023px) {
  .p-gnav ul li.has-child nav ul li::before {
    top: 15px;
  }
}

@media screen and (max-width: 1023px) {
  .p-gnav ul li.has-child nav ul li a {
    padding: 15px;
  }
}

.p-gnav ul li.has-child nav ul li nav ul {
  border-radius: 30px;
  padding: 10px;
  z-index: 1;
  display: block;
}

@media screen and (max-width: 1023px) {
  .p-gnav ul li.has-child nav ul li nav ul {
    border-radius: 0;
    padding: 0 15px 20px;
    -webkit-box-shadow: none;
            box-shadow: none;
  }
}

.p-gnav ul li.has-child nav ul li nav ul li a {
  padding: 15px 20px;
  text-align: left;
}

@media screen and (max-width: 1023px) {
  .p-gnav ul li.has-child nav ul li nav ul li a {
    padding: 15px;
  }
}

.p-gnav ul li.has-child:hover > nav,
.p-gnav ul li.has-child nav li:hover > nav,
.p-gnav ul li.has-child.active > nav,
.p-gnav ul li.has-child nav li.active > nav {
  visibility: visible;
  opacity: 1;
  -webkit-animation: animation 0.5s;
          animation: animation 0.5s;
}

@media screen and (max-width: 1023px) {
  .p-gnav ul li.has-child:hover > nav,
  .p-gnav ul li.has-child nav li:hover > nav,
  .p-gnav ul li.has-child.active > nav,
  .p-gnav ul li.has-child nav li.active > nav {
    -webkit-animation: none;
            animation: none;
  }
}

@media screen and (min-width: 768px) {
  .p-gnav ul li:hover {
    color: #F3C706;
  }
  .p-gnav ul li:hover::before {
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
  .p-gnav ul li:hover > a {
    color: #F3C706;
    border-bottom: 5px solid;
  }
  .p-gnav ul li:hover ul li:hover::before {
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
  .p-gnav ul li:hover ul li:hover > a {
    color: #F3C706;
    padding-bottom: 15px;
    border-bottom: 5px solid;
  }
  .p-gnav ul li:hover ul li:hover ul li > a {
    padding-bottom: 15px;
    border-bottom: none;
  }
}

.p-gnav ul li.has-child.active::before {
  -webkit-transform: rotate(135deg);
          transform: rotate(135deg);
}

@media screen and (max-width: 1023px) {
  .p-gnav ul li:hover {
    color: #F3C706;
  }
  .p-gnav ul li:hover::before {
    -webkit-transform: rotate(45deg);
            transform: rotate(45deg);
  }
  .p-gnav ul li:hover > a {
    color: #F3C706;
    padding-bottom: 15px;
    border-bottom: 5px solid;
  }
  .p-gnav ul li:hover ul li ul li:hover::before {
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }
  .p-gnav ul li:hover ul li ul li:hover > a {
    padding-bottom: 15px;
    border-bottom: none;
  }
}

.p-gnav ul li.loss ul {
  background: #0185CF !important;
}

.p-gnav ul li.tisan ul {
  background: #47AA40 !important;
}

@-webkit-keyframes animation {
  0% {
    top: -10px;
  }
  33% {
    top: 66px;
  }
  66% {
    top: 46px;
  }
  100% {
    top: 56px;
  }
}

@keyframes animation {
  0% {
    top: -10px;
  }
  33% {
    top: 66px;
  }
  66% {
    top: 46px;
  }
  100% {
    top: 56px;
  }
}

.p-footer {
      padding: 80px 0 20px;
  background: white;
}

@media screen and (max-width: 767px) {
  .p-footer {
    padding: 80px 0;
  }
}

.p-footer-contents {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

@media screen and (max-width: 767px) {
  .p-footer-contents {
    padding: 0 10px 20px;
  }
}

.p-footer-contents a {
  color: #717171;
}

.p-footer-logo {
  text-align: center;
  width: 45%;
  padding-right: 80px;
}

@media screen and (max-width: 767px) {
  .p-footer-logo {
    width: 100%;
    padding: 0;
    margin-bottom: 20px;
  }
}

.p-footer-nav {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  width: 55%;
}

@media screen and (max-width: 767px) {
  .p-footer-nav {
    width: 100%;
  }
}

.p-footer-nav li {
  padding: 20px;
  width: calc(100% / 3);
}

@media screen and (max-width: 767px) {
  .p-footer-nav li {
    padding: 10px;
  }
}

.p-footer-sns {
  margin-bottom: 40px;
}

.p-footer-sns ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.p-footer-sns ul li {
  padding: 0 20px;
}

.p-footer-sns ul li i {
  font-size: 30px;
}

.p-footer-copyright {
  line-height: 1.3em;
  font-size: 14px;
    display: flex;
	    justify-content: center;
    gap: 10px;
}

@media screen and (max-width: 767px) {
  .p-footer-copyright {
            font-size: 10px;
        text-align: center;
        display: block;
  }
}

.p-footer .pagetop {
  position: fixed;
  bottom: 20px;
  right: 50px;
  width: 70px;
}

@media screen and (max-width: 767px) {
  .p-footer .pagetop {
    bottom: 45px;
    right: 15px;
    width: 60px;
  }
}
.p-footer-subnav {
  padding: 20px;
    display: flex;
    font-size: 14px;
	margin-bottom: 60px;
}
@media screen and (max-width: 767px) {
  .p-footer-subnav {
        padding: 0 0 30px;
    justify-content: center;
    font-size: 12px;
}
}
.p-footer-link {
    display: flex;
    gap: 10px;
}
.p-footer-link a {
	    display: block;
    border-left: 1px solid;
    padding-left: 10px;
}
@media screen and (max-width: 767px) {
.p-footer-link {
    flex-wrap: wrap;
    justify-content: center;
    margin-top: 20px;
}
.p-footer-link a:nth-child(2),
.p-footer-link a:nth-child(3){
	    padding-right: 10px;
    border-right: 1px solid;
}
}

.js-bound {
  opacity: 0;
}

.js-bound.active {
  -webkit-animation: bound 1s 0.2s both;
          animation: bound 1s 0.2s both;
}

@-webkit-keyframes bound {
  0%, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.6, 0.6, 0.6);
    transform: scale3d(0.6, 0.6, 0.6);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    top: 0;
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

@keyframes bound {
  0%, 20%, 40%, 60%, 80%, to {
    -webkit-animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
    animation-timing-function: cubic-bezier(0.215, 0.61, 0.355, 1);
  }
  0% {
    opacity: 0;
    -webkit-transform: scale3d(0.6, 0.6, 0.6);
    transform: scale3d(0.6, 0.6, 0.6);
  }
  20% {
    -webkit-transform: scale3d(1.1, 1.1, 1.1);
    transform: scale3d(1.1, 1.1, 1.1);
  }
  40% {
    -webkit-transform: scale3d(0.9, 0.9, 0.9);
    transform: scale3d(0.9, 0.9, 0.9);
  }
  60% {
    top: 0;
    opacity: 1;
    -webkit-transform: scale3d(1.03, 1.03, 1.03);
    transform: scale3d(1.03, 1.03, 1.03);
  }
  80% {
    -webkit-transform: scale3d(0.97, 0.97, 0.97);
    transform: scale3d(0.97, 0.97, 0.97);
  }
  to {
    opacity: 1;
    -webkit-transform: scale3d(1, 1, 1);
    transform: scale3d(1, 1, 1);
  }
}

.js-slidein {
  opacity: 0;
}

.js-slidein.active {
  -webkit-animation: slidein 0.5s 0.2s both;
          animation: slidein 0.5s 0.2s both;
}

.js-slidein.daly-1.active {
  -webkit-animation: slidein 0.5s 0.4s both;
          animation: slidein 0.5s 0.4s both;
}

.js-slidein.daly-2.active {
  -webkit-animation: slidein 0.5s 0.6s both;
          animation: slidein 0.5s 0.6s both;
}

@-webkit-keyframes slidein {
  0% {
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

@keyframes slidein {
  0% {
    -webkit-transform: translateY(20px);
            transform: translateY(20px);
    opacity: 0;
  }
  100% {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
  }
}

.top-mv {
  position: relative;
  -webkit-transition: all 1s;
  transition: all 1s;
  opacity: 0;
     margin-top: 180px;
}
.top-mv.active {
  opacity: 1;
}
.top-mv a {
  margin: 0 20px;
}
@media screen and (max-width: 767px) {
.top-mv {
   margin-top: 100px;
}
.top-mv a {
   margin: 0 5px;
}
}
.slick-mv .slick-dots {
  bottom: -40px;
}

.slick-mv .slick-dots li {
  padding: 0;
  margin: 0 8px;
}

.slick-mv .slick-dots li button:before {
  font-size: 20px;
  opacity: 0.5;
}

.slick-mv .slick-dots li.slick-active button:before {
  opacity: .75;
  color: #F3C706;
}
.top-mv-logo {
  position: absolute;
  top: 45%;
  left: 50%;
  width: 35%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
  opacity: 0;
}

@media screen and (max-width: 767px) {
  .top-mv-logo {
    width: 75%;
  }
}

.top-mv-logo img {
  z-index: +1;
}

.top-mv-logo img.circle {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.top-mv-logo img.txt {
  position: absolute;
  top: 0;
  left: 0;
  z-index: -1;
}

.top-mv-logo.active {
  opacity: 1;
}

.top-mv-logo.active .circle {
  -webkit-animation: rotation2 1s linear;
          animation: rotation2 1s linear;
}

.top-mv-logo.active .txt {
  -webkit-animation: rotation1 1s linear;
          animation: rotation1 1s linear;
}

.top-mv-logo.active .logo {
  -webkit-animation: poyoyon 1s ease-in-out;
          animation: poyoyon 1s ease-in-out;
}

@-webkit-keyframes rotation1 {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@keyframes rotation1 {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(360deg);
            transform: rotate(360deg);
  }
}

@-webkit-keyframes rotation2 {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg);
  }
}

@keyframes rotation2 {
  0% {
    -webkit-transform: rotate(0);
            transform: rotate(0);
  }
  100% {
    -webkit-transform: rotate(-360deg);
            transform: rotate(-360deg);
  }
}

@-webkit-keyframes poyoyon {
  0% {
    -webkit-transform: scale(1, 1) translate(0, 0);
            transform: scale(1, 1) translate(0, 0);
    opacity: 0;
  }
  30% {
    -webkit-transform: scale(0.9, 0.9) translate(0, 0);
            transform: scale(0.9, 0.9) translate(0, 0);
    opacity: 1;
  }
  50% {
    -webkit-transform: scale(1.2, 1.2) translate(0, 0);
            transform: scale(1.2, 1.2) translate(0, 0);
  }
  100% {
    -webkit-transform: scale(1, 1) translate(0, 0);
            transform: scale(1, 1) translate(0, 0);
  }
}

@keyframes poyoyon {
  0% {
    -webkit-transform: scale(1, 1) translate(0, 0);
            transform: scale(1, 1) translate(0, 0);
    opacity: 0;
  }
  30% {
    -webkit-transform: scale(0.9, 0.9) translate(0, 0);
            transform: scale(0.9, 0.9) translate(0, 0);
    opacity: 1;
  }
  50% {
    -webkit-transform: scale(1.2, 1.2) translate(0, 0);
            transform: scale(1.2, 1.2) translate(0, 0);
  }
  100% {
    -webkit-transform: scale(1, 1) translate(0, 0);
            transform: scale(1, 1) translate(0, 0);
  }
}

.top-mv .scrolldown2 {
  position: absolute;
  bottom: 0;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
}

.top-mv .scrolldown2 p {
  font-size: 0.75rem;
  letter-spacing: 0.05em;
  color: white;
  margin-bottom: 110px;
}

.top-mv .scrolldown2 span:before {
  content: "";
  /*描画位置*/
  position: absolute;
  bottom: 0;
  left: 35%;
  /*丸の形状*/
  width: 15px;
  height: 15px;
  background: url(../images/common/icon-okome.png);
  background-size: cover;
  /*丸の動き2秒かけて透過し、永遠にループ*/
  -webkit-animation: circlemove 2.5s ease-in-out infinite,
 cirlemovehide 2.5s ease-out infinite;
          animation: circlemove 2.5s ease-in-out infinite,
 cirlemovehide 2.5s ease-out infinite;
}

.top-mv .scrolldown2 span:after {
  content: "";
  /*描画位置*/
  position: absolute;
  bottom: 0;
  left: 50%;
  /*線の形状*/
  width: 2px;
  height: 105px;
  background: white;
}

@-webkit-keyframes circlemove {
  0% {
    bottom: 90px;
  }
  100% {
    bottom: -5px;
  }
}

@keyframes circlemove {
  0% {
    bottom: 90px;
  }
  100% {
    bottom: -5px;
  }
}

@-webkit-keyframes cirlemovehide {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  80% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
  }
}

@keyframes cirlemovehide {
  0% {
    opacity: 0;
  }
  50% {
    opacity: 1;
  }
  80% {
    opacity: 0.9;
  }
  100% {
    opacity: 0;
  }
}

.top-about p {
  line-height: 2em;
}

.top-about-panel {
      padding: 0 40px 80px;
  background: url(../images/top/bg.png) no-repeat;
  background-size: 78% auto;
  background-position: bottom left;
}

@media screen and (max-width: 1023px) {
  .top-about-panel {
    padding: 30px;
    padding-top: 0;
    background-size: 100% auto;
  }
}

@media screen and (max-width: 767px) {
  .top-about-panel {
    padding: 0 0 40px;
  }
  .top-about-panel a {
    margin: 0 auto;
  }
}

.top-category {
  position: relative;
  padding: 120px 0;
}

@media screen and (max-width: 767px) {
  .top-category {
    padding: 80px 0;
  }
}

.top-category::after {
  content: "";
  display: block;
  background: url(../images/top/bg-3-2.png);
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -3;
}

.top-category::before {
  content: "";
  display: block;
  background: url(../images/top/bg-3.png) no-repeat;
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -2;
}

.top-category-bg {
  position: relative;
}

.top-category-bg::before {
  content: "";
  display: block;
  background: url(../images/top/bg-2.png);
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -1;
}

.top-category-wrap {
  background: white;
  padding: 60px 40px;
  border-radius: 30px;
}

@media screen and (max-width: 767px) {
  .top-category-wrap {
    padding: 20px 15px;
  }
}

.top-category-item {
  border: 4px solid #DB6D34;
  border-radius: 20px;
  padding: 20px 40px;
  margin-top: 120px;
  position: relative;
}

.top-category-item span {
  display: block;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
}

.top-category-item span::before, .top-category-item span::after {
  content: "";
  width: 20px;
  height: 20px;
  background: #DB6D34;
  display: block;
  border-radius: 15px;
  position: absolute;
}

.top-category-item span::before {
  top: 10px;
  left: 10px;
}

.top-category-item span::after {
  top: 10px;
  right: 10px;
}

.top-category-item span:nth-child(2) {
  top: auto;
  bottom: 40px;
}

@media screen and (max-width: 767px) {
  .top-category-item {
    padding: 20px 30px;
  }
}

.top-category-item h2 {
  width: 70%;
  margin: -150px auto 20px;
}

.top-category-item p {
  line-height: 1.8em;
}

.top-category-item a {
  margin: 0 auto;
}

.top-category-item.loss {
  border-color: #0085CD;
}

.top-category-item.loss span::before, .top-category-item.loss span::after {
  background: #0085CD;
}

.top-category-item.local {
  border-color: #48A93E;
}

.top-category-item.local span::before, .top-category-item.local span::after {
  background: #48A93E;
}

.top-news {
  position: relative;
  padding: 120px 0;
}

@media screen and (max-width: 767px) {
  .top-news {
    padding: 80px 0;
  }
}

.top-news::after {
  content: "";
  display: block;
  background: url(../images/top/bg-4-2.png);
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -3;
}

.top-news::before {
  content: "";
  display: block;
  background: url(../images/top/bg-4.png) no-repeat;
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -2;
}

.top-pickup {
  position: relative;
  margin-top: -160px;
  padding-top: 230px;
}

@media screen and (max-width: 767px) {
  .top-pickup {
    margin-top: -60px;
    padding-top: 100px;
  }
}

.top-pickup::after {
  content: "";
  display: block;
  background: url(../images/top/bg-5-2.png);
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -3;
}

.top-pickup::before {
  content: "";
  display: block;
  background: url(../images/top/bg-5.png) no-repeat;
  background-size: 100%;
  position: absolute;
  top: 0;
  left: 0;
  height: 100%;
  width: 100%;
  z-index: -2;
}

.about-panel {
  padding-right: 100px;
}

@media screen and (max-width: 1023px) {
  .about-panel {
    padding-right: 20px;
  }
}

@media screen and (max-width: 767px) {
  .about-panel {
    padding: 0 0 30px;
  }
}

.about-point {
  background: white;
  padding: 40px;
  padding-left: 100px;
  border-radius: 15px;
  position: relative;
}

@media screen and (max-width: 767px) {
  .about-point {
    padding: 20px;
    padding-top: 40px;
    margin-top: 20px;
  }
}

.about-point::before {
  content: "";
  background: url(../images/hatsumeshi/point.png) no-repeat;
  background-size: contain;
  background-position: center;
  display: block;
  width: 120px;
  height: 100%;
  position: absolute;
  top: 0;
  left: -60px;
}

@media screen and (max-width: 767px) {
  .about-point::before {
    left: -10px;
    top: -20px;
    background-position: top;
  }
}

.about-img {
  padding-right: 100px;
  position: relative;
}

@media screen and (max-width: 1023px) {
  .about-img {
    padding-right: 20px;
  }
}

@media screen and (max-width: 767px) {
  .about-img {
    padding: 0 30px;
  }
}

.about-img .img-01 {
  width: 100%;
  display: block;
  padding-bottom: 180px;
}

@media screen and (max-width: 1023px) {
  .about-img .img-01 {
    padding-bottom: 120px;
  }
}

.about-img .img-01 img {
  border-radius: 35px;
  overflow: hidden;
}

.about-img .img-02 {
  position: absolute;
  width: 70%;
  right: 10px;
  bottom: 0;
}

.about-img .img-02 img {
  border-radius: 35px;
  overflow: hidden;
}

.about-img .img-icon img {
  position: absolute;
}

.about-img .img-icon-01 {
  width: 20%;
  top: 0;
  right: 12%;
}

.about-img .img-icon-02 {
  width: 20%;
  top: 30%;
  left: -10%;
}

@media screen and (max-width: 767px) {
  .about-img .img-icon-02 {
    left: 0;
  }
}

.about-img .img-icon-03 {
  width: 30%;
  top: 55%;
  right: 10%;
}

.about-img .img-icon-04 {
  width: 20%;
  bottom: -5%;
  left: 20%;
}

.about-copy {
  position: relative;
}

@media screen and (max-width: 767px) {
  .about-copy {
    margin-top: 0;
  }
}

.about-copy li:has(.about-img) {
  position: relative;
}

.about-category {
  position: relative;
}

.about-category a {
  display: block;
    background: white;
    color: #DC6D35;
    padding: 30px;
    font-size: 18px;
    text-align: center;
    position: relative;
	    background: linear-gradient(45deg, #E2BA43, #FE8747);
    color: white;
    padding: 20px;
	    border-radius: 5px;
}

@media screen and (max-width: 767px) {
  .about-category a {
    font-size: 16px;
	          padding: 15px;
  }
}

.about-category a span {
	    position: absolute;
    top: 50%;
    left: 20px;
    width: 40px;
    height: 40px;
    transform: translateY(-50%);
}

@media screen and (max-width: 767px) {
  .about-category a span {
    width: 30px;
    height: 30px;
}
}
.articles-mv h2 {
  max-width: 700px;
  margin: 0 auto;
}

.articles-ttl {
  font-family: "Noto Sans JP", sans-serif;
  margin: 0 0 20px !important;
}

.articles-search {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-bottom: 20px;
}

.articles-search.single {
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}
@media screen and (max-width: 767px) {
  .articles-search {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
}

.articles-search #form {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

@media screen and (max-width: 767px) {
  .articles-search #form {
    margin-top: 10px;
    width: 100%;
  }
}

.articles-search #form input {
  border: 2px solid #F4C800;
  padding: 0 10px;
  height: 33px;
}

@media screen and (max-width: 767px) {
  .articles-search #form input {
    width: 100%;
  }
}

.articles-search #form button {
  padding: 0 10px;
  background: #F4C800;
  border: none;
  color: white;
  height: 33px;
  font-size: 0;
}

.articles-search #form button::before {
  content: "";
  display: block;
  width: 33px;
  height: 33px;
  background: url(../images/hatsumeshi/icon-serch.png) no-repeat;
  background-size: cover;
}

.articles-search .aioseo-breadcrumbs span {
  line-height: 1.5em;
}

.articles-search .aioseo-breadcrumbs span.aioseo-breadcrumb-separator {
  padding: 0 10px;
  font-size: 150%;
}

.articles-category {
  background: white;
  border-radius: 25px;
  position: relative;
	    filter: drop-shadow(2px 4px 4px rgba(0, 0, 0, 0.3));
    border: 1px solid;
}

@media screen and (max-width: 767px) {
  .articles-category {
    border-radius: 10px;
  }
}

.articles-category::before {
  content: "";
  display: block;
  width: 100px;
  height: 100px;
  background: url(../images/hatsumeshi/serch.png) no-repeat;
  background-size: contain;
  position: absolute;
  top: 0;
  left: 40px;
}

@media screen and (max-width: 1023px) {
  .articles-category::before {
    width: 70px;
    height: 70px;
  }
}

@media screen and (max-width: 767px) {
  .articles-category::before {
    width: 40px;
    height: 40px;
    left: 10px;
  }
}

.articles-category p {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-bottom: 0;
  padding: 30px;
  cursor: pointer;
}

@media screen and (max-width: 767px) {
  .articles-category p {
    padding: 20px 10px;
  }
}

.articles-category p span {
  padding: 0 40px;
  text-align: right;
}

@media screen and (max-width: 767px) {
  .articles-category p span {
    padding: 0 10px;
  }
}

.articles-category p span:nth-child(2) {
  text-align: left;
}

.articles-category p span img {
  height: 50px;
  width: auto;
	max-width: none;
}

@media screen and (max-width: 1023px) {
  .articles-category p span img {
    height: 30px;
  }
}

@media screen and (max-width: 767px) {
  .articles-category p span img {
    height: 22px;
  }
}

.articles-category .nav {
  display: none;
  padding: 20px 40px 80px;
}

@media screen and (max-width: 767px) {
  .articles-category .nav {
    padding: 0 20px 40px;
  }
}

.articles-category .nav > ul > li {
  margin-bottom: 30px;
}

@media screen and (max-width: 767px) {
  .articles-category .nav > ul > li {
    margin-bottom: 20px;
  }
}

.articles-category .nav > ul > li:nth-last-child(1) {
  margin-bottom: 0;
}

.articles-category .nav > ul > li span {
  padding-bottom: 10px;
  border-bottom: 3px dotted #444444;
  margin-bottom: 20px;
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.articles-category .nav > ul > li span img {
  display: inline-block;
  width: 50px;
  margin-right: 15px;
}

@media screen and (max-width: 767px) {
  .articles-category .nav > ul > li span img {
    width: 40px;
  }
}

.articles-category .nav > ul > li ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -5px;
}

.articles-category .nav > ul > li ul li {
  padding: 5px;
}

.articles-category .nav > ul > li ul li a {
  padding: 5px 12px 7px;
  background:#D9D9D9;
  border-radius: 30px;
  display: block;
  font-size: 14px;
}

.articles-category .btn {
  width: 60px;
    height: 70px;
    background: url(../images/hatsumeshi/open.png) no-repeat;
    background-size: contain;
    background-position: center;
    position: absolute;
    bottom: -45px;
    left: calc(50% - 30px);
    cursor: pointer;
}

@media screen and (max-width: 1023px) {
  .articles-category .btn {
    width: 60px;
    height: 60px;
    bottom: -30px;
  }
}

@media screen and (max-width: 767px) {
  .articles-category .btn {
    width: 40px;
    height: 50px;
    bottom: -40px;
    left: calc(50% - 20px);
  }
}

.articles-category .btn.foodloss {
  background: url(../images/hatsumeshi/open-2.png) no-repeat;
  background-size: contain;
}

.articles-category .btn.localfood {
  background: url(../images/hatsumeshi/open-3.png) no-repeat;
  background-size: contain;
}

.articles-category .btn.active {
  background: url(../images/hatsumeshi/close.png) no-repeat;
  background-size: contain;
}

.articles-category .btn.active.foodloss {
  background: url(../images/hatsumeshi/close-2.png) no-repeat;
  background-size: contain;
}

.articles-category .btn.active.localfood {
  background: url(../images/hatsumeshi/close-3.png) no-repeat;
  background-size: contain;
}

.articles-taxonomy ul {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin: -5px;
}

.articles-taxonomy ul li {
  padding: 5px;
}

.articles-taxonomy ul li a {
  padding: 7px 20px;
  border: 3px solid;
  border-radius: 30px;
  display: block;
  font-size: 14px;
}

@media screen and (max-width: 767px) {
  .articles-taxonomy ul li a {
    padding: 7px 15px;
    font-size: 12px;
  }
}

.articles .wp-pagenavi {
  margin: 40px auto;
  font-size: 14px;
  text-align: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.articles .wp-pagenavi span.current,
.articles .wp-pagenavi a.page {
  margin: 0 10px 0 0;
  width: 30px;
  height: 30px;
  border-radius: 50%;
  line-height: 30px;
  text-align: center;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-transition: .3s;
  transition: .3s;
}

.articles .wp-pagenavi span.current {
  border: none;
  background: #F3C706;
  color: #fff;
}

.articles .wp-pagenavi a.page {
  border: none;
  background: white;
}

.articles .wp-pagenavi a.page:hover {
  background: #F3C706;
  color: #fff;
}

.articles .wp-pagenavi .first,
.articles .wp-pagenavi .extend {
  margin-right: 10px;
  border: none;
}

.articles .wp-pagenavi .previouspostslink,
.articles .wp-pagenavi .nextpostslink {
  display: none;
}

.articles-bottom {
  position: relative;
}

.articles-arrow {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  position: absolute;
  top: 15px;
  left: 0;
  width: 100%;
}

@media screen and (max-width: 767px) {
  .articles-arrow {
    position: static;
    margin-bottom: 20px;
  }
}

.articles-arrow li {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
}

.articles-arrow li i {
  background: black;
  border-radius: 30px;
  width: 32px;
  height: 32px;
  display: inline-block;
  margin-left: 10px;
  position: relative;
  -webkit-transition: all 0.5s;
  transition: all 0.5s;
}

.articles-arrow li i::before {
  content: "";
  display: inline-block;
  width: 16px;
  height: 2px;
  border-radius: 2px;
  background: white;
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transition: all .5s;
  transition: all .5s;
}

.articles-arrow li i::after {
  content: "";
  display: inline-block;
  width: 8px;
  height: 8px;
  border-top: 2px solid white;
  border-right: 2px solid white;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
  position: absolute;
  top: 12px;
  right: 9px;
  -webkit-transition: all .5s;
  transition: all .5s;
}

.articles-arrow li:nth-child(1) i {
  margin-left: 0;
  margin-right: 10px;
}

.articles-arrow li:nth-child(1) i::after {
  -webkit-transform: rotate(-135deg);
          transform: rotate(-135deg);
  right: auto;
  left: 9px;
}

.youtube {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}
.youtube iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100%;
  height: 100%;
}


.category-tag {
	display: flex;
	    flex-wrap: wrap;
}
.category-tag li{
	padding: 5px;
}
.category-tag li a{
	    padding: 4px 15px;
    border: 1px solid;
    border-radius: 30px;
    display: block;
	background:white;
}
@media screen and (max-width: 767px) {
  .category-tag li a{;
    font-size: 14px;
}
}

.top-link {
	display: flex;
    flex-wrap: wrap;
	margin:-60px;
}
.top-link li {
	padding:60px;
	    width: calc(100% / 3);
	
}

@media screen and (max-width: 767px) {
 .top-link {
	margin:-10px;
}
.top-link li {
	padding:10px;
	
}
}

.top-map {
	position:relative;
}
.top-map a{
	position: absolute;
    width: 30%;
    display: block;
}
.top-map a.top-map-01 {
    top: 10%;
    left: 50%;
    transform: translateX(-50%);
}
.top-map a.top-map-02 {
    bottom: 15%;
    left: 15%;
}
.top-map a.top-map-03 {
       bottom: 15%;
    right: 15%;
}


.osusume-tag {
	border-top: 4px solid #F4C800;
    border-bottom: 4px solid #F4C800;
    padding: 20px 30px;
	    width: fit-content;
    margin: 0 auto;
	background:white;
}
@media screen and (max-width: 1024px) {
.osusume-tag {
    padding: 20px;
}
}
.osusume-tag .inner {
	display: flex;
    gap: 20px;
    align-items: center;
}
@media screen and (max-width: 1024px) {
.osusume-tag .inner {
	display: block;
}
}
.osusume-tag .inner p {
	margin: 0;
	    flex: 0 0 152px;
}
@media screen and (max-width: 1024px) {
.osusume-tag .inner p {
    margin-bottom: 10px;
	text-align: center;
}
}
.osusume-tag .inner ul {
	display: flex;
    gap: 10px;
	flex: 1;
	flex-wrap: wrap;
}
@media screen and (max-width: 1024px) {
.osusume-tag .inner ul {
    flex-wrap: wrap;
}
}
.osusume-tag .inner ul li a {
	padding: 5px 12px 7px;
    background: #D9D9D9;
    border-radius: 30px;
    display: block;
    font-size: 14px;
}
.osusume-tag .inner > a {
	display: flex;
	align-items:center;
	gap:5px;
    background: #DB6D34;
    color: white;
    font-size: 16px;
    padding: 10px;
    border-radius: 5px;
	width: fit-content;
	    flex: 0 0 149px;
}
@media screen and (max-width: 1024px) {
.osusume-tag .inner > a {
    margin: 20px auto 0;
}
}
.osusume-tag .inner > a::before {
	content:"";
	display: block;
	width:24px;
	height:18px;
	background:url(../images/common/icon-tag.png) no-repeat;
	background-size:contain;
}


.filter-tags {
	    display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.tag-label  {
	padding: 5px 12px 7px;
    background: #D9D9D9;
    border-radius: 30px;
    display: inline-block;
    font-size: 14px;
    cursor: pointer;
}
.tag-label input[type="checkbox"] {
	    display: none;
}
.tag-label:has(input[type="checkbox"]:checked) {
  background-color: #F4C800; /* 好きな背景色を指定 */
}
.articles-category p.filter-group-ttl {
	padding: 30px 0 10px;
    border-bottom: 3px dotted #444444;
    margin-bottom: 20px;
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
	    justify-content: flex-start;
}
.articles-category p.filter-group-ttl img {
	    display: inline-block;
    width: 50px;
    margin-right: 15px;
}
.articles-category p.filter-category-ttl {
	font-size: 32px;
    text-align: left;
    align-items: end;
    padding: 0 0 20px;
    gap: 10px;
    justify-content: flex-start;
    line-height: 1;
}
.articles-category p.filter-category-ttl span {
	    font-size: 16px;
    background: #DB6D34;
    padding: 7px 10px;
    display: inline-block;
    line-height: 1;
	color:white;
	border-radius: 5px;
}

.filter-category {
	border: 1px solid #DB6D34;
    display: flex;
    gap: 20px;
    justify-content: center;
	border-radius: 30px;
}
.category-label {
	padding: 20px 0;
	cursor:pointer;
}
.category-label input[type="radio"] {
	display:none;
}
.category-label:has(input[type="radio"]:checked) {
	    color: #F4C800;
	border-bottom: 5px solid;
}
.filter-bar {
	display: flex;
    align-items: center;
    justify-content: space-between;
}
.filter-bar > div {
	display: flex;
    align-items: center;
    justify-content: space-between;
	gap:20px;
}
.filter-bar .ttl {
    font-size: 16px;
    background: #DB6D34;
    padding: 7px 10px;
    display: inline-block;
    line-height: 1;
    color: white;
    border-radius: 5px;
	    flex: 0 0 88px;
}
.filter-bar .selected-badges {
	    display: flex;
    flex-wrap: wrap;
    gap: 10px;
    flex: 1;
}
.filter-bar .selected-badges .badge {
	    padding: 5px 12px 7px;
    background: #F4C800;
    border-radius: 30px;
    display: inline-block;
    font-size: 14px;
}
.filter-bar a {
	    flex: 0 0 101px;
}
.c-h1 span.cat-ttl {
	line-height: 1;
    display: block;
}
.selected-tag-list {
	display: flex;
    line-height: 1.5em;
    gap: 10px;
    margin-top: 15px;
	    flex-wrap: wrap;
}
.selected-tag-list span {
	padding: 5px 12px 7px;
    background: #D9D9D9;
    border-radius: 30px;
    display: inline-block;
    font-size: 14px;
    cursor: pointer;
    line-height: 1em;
}
.filter-panel-footer {
	    margin-top: 20px;
    text-align: center;
    border-top: 3px dotted #444444;
    padding-top: 40px;
}
.filter-panel-footer button {
	    background: #DB6D34;
    border: none;
    color: white;
    font-size: 24px;
    font-weight: bold;
    padding: 10px 30px;
    line-height: 1;
    border-radius: 5px;
	cursor:pointer;
	    letter-spacing: 0.1em;
}

.side-nav {
	position: fixed;
    top: 50%;
    transform: translateY(-50%);
    right: 50px;
    width: 90px;
    display: flex;
    flex-wrap: wrap;
    gap: 40px;
	    font-size: 0;
	    z-index: 9999;
}
@media screen and (max-width: 1024px) {
.filter-category {
	display: block;
    padding: 20px 15px;
    border-radius: 13px;
	font-size: 16px;
}
	.category-label {
		    display: block;
    padding: 0;
    border-bottom: 2px dashed #F4C800;
    padding-bottom: 15px;
        margin-bottom: 15px;
}
	.category-label:nth-last-child(1) {
    border-bottom: none;
    padding-bottom: 0;
        margin-bottom: 0;
}
	.category-label:has(input[type="radio"]:checked) {
    border-bottom: 2px dashed #F4C800;
}
	.filter-bar {
		display: block;
}
	.filter-bar > div {
		        display: block;
}
	
.filter-bar .selected-badges {
	            gap: 5px;
        margin-bottom: 10px;
}
	.filter-bar .ttl {
		margin-bottom:10px;
	}
	.filter-bar .selected-badges .badge {
    font-size: 12px;
}
	.articles-category p.filter-group-ttl img {
    width: 30px;
    margin-right: 10px;
}
	.articles-category p.filter-group-ttl {
		    font-size: 16px;
}
	.tag-label {
    font-size: 12px;
}
	.filter-panel-footer button {
		font-size: 18px;
}
	.articles-category p.filter-category-ttl {
    font-size: 24px;
        align-items: center;
}
	.side-nav {
		        font-size: 16px;
        top: auto;
        bottom: 0;
        right: auto;
        left: 7px;
        gap: 0;
        transform: none;
        width: calc(100% - 14px);
}
	.side-nav a {
		        width: calc(100% / 3);
        text-align: center;
        animation: none !important;
		background:#DB6D34;
		border:1px solid #F4C900;
		padding: 10px;
        color: white;
}
	.side-nav a:nth-child(2) {
		background:#0085CD;
}
	.side-nav a:nth-child(3) {
		background:#48A93E;
}
	.side-nav img {
		display:none;
		
}
}

@keyframes float-rotate {
  0% {
    transform: translateY(0) rotate(0deg);
  }
  50% {
    transform: translateY(-12px) rotate(3deg); /* 上に移動しながら3度回転 */
  }
  100% {
    transform: translateY(0) rotate(0deg);
  }
}

.floating-item {
  animation: float-rotate 3.5s ease-in-out infinite;
}

.foodloss-nav ul {
	display: flex;
    flex-wrap: wrap;
    gap: 10px;
}
.foodloss-nav a {
	background: #0085CD;
    color: white;
    display: inline-block;
    padding: 10px 15px;
    border-radius: 10px;
    box-shadow: 4px 4px 4px rgba(0, 0, 0, 0.25);
    display: flex;
    align-items: center;
    gap: 5px;
}
.foodloss-nav a::before {
	content: "";
    display: inline-block;
    width: 16px;
    height: 20px;
    background: url(../images/common/icon-nav.png) no-repeat;
    background-size: contain;
}

@media screen and (max-width: 1024px) {
	.foodloss-nav a {
		font-size: 14px;
    padding: 7px 12px;
}
}