@charset "UTF-8";
@import url(https://fonts.googleapis.com/earlyaccess/notosansjp.css);
li {
  list-style-type: none;
}

@media (max-width: 768px) {
  #module_titleArea {
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

@media (max-width: 768px) {
  #category_title {
    font-size: 18.0348px !important;
    font-weight: bold;
    margin-bottom: 0 !important;
  }
}

@media (max-width: 768px) {
  #main {
    margin-top: 0;}
}

.l-wrapper {
  font-family: 'Helvetica Neue', Helvetica, Arial, 'Noto Sans JP', 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', sans-serif;
  font-size: 100%;
  line-height: 1.7142857143;
  box-sizing: border-box;
  letter-spacing: .05em;
  font-feature-settings: 'palt';
  -webkit-font-smoothing: subpixel-antialiased;
  -moz-osx-font-smoothing: auto;
}

.l-wrapper *,
.l-wrapper *:before,
.l-wrapper *:after {
  box-sizing: border-box;
}

.l-wrapper img:not(.l-mv__img) {
  max-width: 100%;
  height: auto;
  vertical-align: middle;
}

.l-wrapper img[src$='.svg'] {
  width: 100%;
}

.l-wrapper [src$='.svg'],
.l-wrapper [data$='.svg'] {
  width: 100%;
}

.l-wrapper a {
  -webkit-transition: opacity .25s ease, color .25s ease, background-color .25s ease, background-position .25s ease;
  transition: opacity .25s ease, color .25s ease, background-color .25s ease, background-position .25s ease;
}

.l-wrapper a img,
.l-wrapper a .c-svg-img {
  -webkit-transition: opacity .25s ease, color .25s ease;
  transition: opacity .25s ease, color .25s ease;
}

.l-wrapper sup {
  font-size: 71.4%;
  vertical-align: super;
}

.c-button {
  text-align: center;
}

.c-button a {
  font-size: 16px;
  font-weight: bold;
  line-height: 1.6;
  display: inline-block;
  min-width: 400px;
  padding: .75em 40px;
  text-decoration: none;
  color: #961a27;
  border: 1px solid #961a27;
  border-radius: 4px;
  background: url(/home/suihanki/okomejuku/assets/img/icn_arw_01.svg) no-repeat right 16px center;
  background-size: 8px 13px;
}

@media (max-width: 768px) {
  .c-button a {
    font-size: 14px;
    line-height: 1.4;
    width: 100%;
    min-width: auto;
    padding: 1em 30px 1em 20px;
  }
}

.c-button a[target='_blank']:after {
  position: relative;
  top: -3px;
  display: inline-block;
  width: 10px;
  height: 9px;
  margin-left: 4px;
  content: '';
  background: url(/home/suihanki/okomejuku/assets/img/icn_blank_01.svg) no-repeat;
  background-size: 10px 9px;
}

@media (max-width: 768px) {
  .c-button a[target='_blank']:after {
    top: -1px;
  }
}

.c-button a:hover {
  color: #fff;
  background: #961a27 url(/home/suihanki/okomejuku/assets/img/icn_arw_04.svg) no-repeat right 13px center;
  background-size: 8px 13px;
}

.c-button a:hover[target='_blank']:after {
  background-image: url(/home/suihanki/okomejuku/assets/img/icn_blank_02.svg);
}

.c-button a span {
  display: inline-block;
  margin-right: -1px;
}

.c-button a span::after {
  font-size: 0;
  width: 0;
  margin-right: 1px;
  content: '.';
  color: transparent;
}

@media (max-width: 768px) {
  .c-button--left, .c-button--right {
    margin-right: 0;
    margin-left: 0;
  }
}

.c-button--left {
  margin-right: 50%;
}

.c-button--left a {
  width: 100%;
  min-width: auto;
}

.c-button--right {
  margin-left: 50%;
}

.c-button--right a {
  width: 100%;
  min-width: auto;
}

.c-button--full a {
  width: 100%;
}

.c-button--top a {
  font-size: 14px;
  min-width: 250px;
  padding: .75em 50px;
  color: #fff;
  border-color: #fff;
  background: url(/home/suihanki/okomejuku/assets/img/icn_arw_04.svg) no-repeat right 16px center;
  background-size: 8px 13px;
}

.c-button--top a::hover {
  background-color: rgba(255, 255, 255, 0.4);
}

@media (max-width: 768px) {
  .c-button--header {
    float: right;
    padding: 10px 10px 10px 4px;
  }
}

@media (max-width: 768px) {
  .c-button--header a {
    font-size: 10px;
    display: inline-block;
    width: auto;
    min-width: initial;
    min-width: auto;
    padding: .5em 18px .5em 6px;
    background-position: right 5px center;
    background-size: 7px 11px;
  }
}

.c-button--caption {
  text-align: center;
}

.c-button--caption .c-txt, .c-button--caption .c-txt--yukiwakamaru,
.c-button--caption .c-txt--yukiwakamaru {
  font-size: 16px;
  margin-bottom: .75em;
}

@media (max-width: 768px) {
  .c-button--caption .c-txt, .c-button--caption .c-txt--yukiwakamaru,
  .c-button--caption .c-txt--yukiwakamaru {
    font-size: 14px;
  }
}

.c-link-txt a {
  display: block;
  padding-left: 30px;
  background: url(/home/suihanki/okomejuku/assets/img/icn_arw_01.svg) no-repeat left 6px top 5px;
  background-size: 8px 13px;
}

@media (max-width: 768px) {
  .c-link-txt a {
    font-size: 14px;
    padding-left: 18px;
    background-position: 2px 5px;
    background-size: 7px 11px;
  }
}

@media (max-width: 768px) {
  .u-for-pc {
    display: none;
  }
}

@media (min-width: 769px) {
  .u-for-sp {
    display: none;
  }
}

/* layout */
.l-wrapper {
  font-family: 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
}

.l-content {
  position: relative;
  overflow: hidden;
  background: url(/home/suihanki/okomejuku/challenge/img/brand_bg.png) left top repeat;
  background-size: 560px 235px;
}

@media (max-width: 768px) {
  .l-content {
    padding-bottom: 40px;
  }
}

.l-content--black {
  background-color: #000;
}

.l-content--black__inner {
  position: relative;
}

@media (min-width: 769px) {
  .l-content--black__inner {
    max-width: 980px;
    margin: 0 auto 0;
  }
}

@media (max-width: 768px) {
  .l-content--black__inner {
    padding: 0 15px;
  }
}

@media (min-width: 769px) {
  .l-content--black__inner {
    padding: 14px;
  }
}

@media (max-width: 768px) {
  .l-content--black__inner {
    padding: 13px 20px;
  }
}

.l-content__inner {
  position: relative;
}

@media (min-width: 769px) {
  .l-content__inner {
    max-width: 980px;
    margin: 0 auto 0;
  }
}

@media (max-width: 768px) {
  .l-content__inner {
    padding: 0 15px;
  }
}

@media (min-width: 769px) {
  .l-content__inner--middle {
    max-width: 900px;
    margin: 0 auto 0;
  }
}

@media (max-width: 768px) {
  .l-content__inner--middle {
    padding: 0 15px;
  }
}

@media (min-width: 769px) {
  .l-content__inner--small {
    max-width: 800px;
    margin: 0 auto 0;
  }
}

@media (max-width: 768px) {
  .l-content__inner--small {
    padding: 0 15px;
  }
}

@media (min-width: 769px) {
  .l-header {
    height: 220px;
  }
}

.l-header__inner {
  position: relative;
}

@media (min-width: 769px) {
  .l-header__inner {
    max-width: 980px;
    margin: 0 auto 0;
  }
}

@media (max-width: 768px) {
  .l-header__inner {
    padding: 0 15px;
  }
}

@media (min-width: 769px) {
  .l-header__inner {
    height: 220px;
    padding-left: 250px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

@media (max-width: 768px) {
  .l-header__inner {
    margin-bottom: 250px;
    padding: 15px 55px 45px;
  }
}

@media (min-width: 769px) {
  .l-header--addm {
    height: 220px;
    margin-bottom: 140px;
  }
}

.l-header--addm__inner {
  position: relative;
}

@media (min-width: 769px) {
  .l-header--addm__inner {
    max-width: 800px;
    margin: 0 auto 0;
  }
}

@media (max-width: 768px) {
  .l-header--addm__inner {
    padding: 0 15px;
  }
}

@media (min-width: 769px) {
  .l-header--addm__inner {
    height: 220px;
    padding-left: 230px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

@media (max-width: 768px) {
  .l-header--addm__inner {
    margin-bottom: 290px;
    padding: 15px 85px 45px;
  }
}

.l-mv {
  width: 100%;
}

@media (min-width: 769px) and (max-width: 1600px) {
  .l-mv {
    position: relative;
    overflow: hidden;
    height: 400px;
  }
}

@media (min-width: 1601px) {
  .l-mv {
    display: block;
  }
}

@media (min-width: 769px) {
  .l-mv {
    margin-bottom: 50px;
  }
}

@media (max-width: 768px) {
  .l-mv {
    margin-bottom: 50px;
  }
}

@media (min-width: 769px) and (max-width: 1600px) {
  .l-mv__img {
    position: absolute;
    top: 0;
    left: 50%;
    width: 1600px !important;
    max-width: initial !important;
    max-width: auto !important;
    margin-left: -800px;
  }
}

@media (min-width: 1601px) {
  .l-mv__img {
    display: block;
    width: 100% !important;
    max-width: initial !important;
    max-width: auto !important;
  }
}

@media (max-width: 768px) {
  .l-mv__img {
    width: 100%;
  }
}

.l-mv--thanks {
  position: relative;
  background-color: #3b3742;
  background-repeat: repeat-x;
  background-position: left bottom;
}

@media (min-width: 769px) {
  .l-mv--thanks {
    height: 370px;
    margin-bottom: 60px;
    background-image: url(/home/suihanki/okomejuku/challenge/img/thanks/bg_pc.png);
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;
  }
}

@media (max-width: 768px) {
  .l-mv--thanks {
    min-height: 320px;
    margin-bottom: 50px;
    padding: 25px 15px 45px;
    background-image: url(/home/suihanki/okomejuku/challenge/img/thanks/bg_sp.png);
    background-size: 10px 320px;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;
  }
}

.l-mv--thanks__picture {
  margin-bottom: 40px;
}

.l-mv--thanks__txt {
  font-weight: bold;
  color: #e9ce5e;
}

@media (min-width: 769px) {
  .l-mv--thanks__txt {
    font-size: 24px;
  }
}

@media (max-width: 768px) {
  .l-mv--thanks__txt {
    font-size: 20px;
    margin-bottom: 5px;
    padding: 0 10px;
    text-align: center;
  }
}

/* project */
@media (min-width: 769px) {
  .p-lead {
    margin: 0 auto 40px;
    text-align: center;
  }
}

@media (max-width: 768px) {
  .p-lead {
    margin-bottom: 80px;
    padding: 0 15px;
  }
}

.p-lead__inner {
  margin-bottom: 40px;
}

.p-lead__title {
  font-weight: bold;
  margin-bottom: 20px;
  color: #fff;
}

@media (min-width: 769px) {
  .p-lead__title {
    font-size: 20px;
    line-height: 1.5;
  }
}

@media (max-width: 768px) {
  .p-lead__title {
    font-size: 18px;
    line-height: 1.6;
    text-align: center;
  }
}

.p-lead__txt {
  color: #fff;
}

@media (min-width: 769px) {
  .p-lead__txt {
    font-size: 16px;
    line-height: 1.9;
  }
}

@media (max-width: 768px) {
  .p-lead__txt {
    font-size: 14px;
    line-height: 1.7;
  }
}

@media (max-width: 768px) {
  .p-lead__caution {
    text-align: center;
  }
}

.p-lead__note {
  font-size: 12px;
  line-height: 2;
  display: block;
  margin-top: 10px;
}

@media (min-width: 769px) {
  .p-apply {
    margin: 60px 0 80px;
  }
}

@media (max-width: 768px) {
  .p-apply {
    margin-bottom: 90px;
  }
}

.p-apply__title {
  font-weight: bold;
  margin-bottom: 30px;
  text-align: center;
  color: #e9ce5e;
}

@media (min-width: 769px) {
  .p-apply__title {
    font-size: 26px;
  }
}

@media (max-width: 768px) {
  .p-apply__title {
    font-size: 24px;
  }
}

.p-apply__date {
  font-weight: bold;
  text-align: center;
  color: #fff;
}

@media (min-width: 769px) {
  .p-apply__date {
    font-size: 16px;
  }
}

@media (max-width: 768px) {
  .p-apply__date {
    font-size: 15px;
    padding: 0 15px;
  }
}

.p-back {
  min-width: 1440px;
  background-color: #000;
}

@media (min-width: 769px) {
  .p-back {
    display: block;
    padding: 14px 13px;
  }
}

@media (max-width: 768px) {
  .p-back {
    display: block;
    padding: 13px 20px;
  }
}

.p-back__picture {
  line-height: 1;
  display: block;
}

@media (min-width: 769px) {
  .p-back__picture {
    width: 384px;
  }
}

@media (max-width: 768px) {
  .p-back__picture {
    width: 232px;
    padding: 14px 0;
  }
}

.p-back__img {
  width: 100%;
}

@media (min-width: 769px) {
  .p-title {
    display: flex;
    justify-content: flex-start;
    align-items: normal;
    flex-wrap: wrap;
    flex-direction: column;
  }
}

@media (min-width: 769px) {
  .p-title__name--08 {
    width: 330px;
    margin-bottom: 15px;
  }
}

@media (min-width: 769px) {
  .p-title--challenge {
    padding-top: 10px;
  }
}

@media (max-width: 768px) {
  .p-title--challenge {
    padding: 0 50px;
  }
}

@media (min-width: 769px) {
  .p-title--challenge__name {
    margin-top: 20px;
  }
}

@media (min-width: 769px) {
  .p-title--challenge__name--01 {
    width: 319px;
    margin-bottom: 35px;
  }
}

@media (min-width: 769px) {
  .p-title--challenge__name--02 {
    width: 231px;
    margin-bottom: 33px;
  }
}

@media (min-width: 769px) {
  .p-title--challenge__name--03 {
    width: 270px;
    margin-bottom: 40px;
  }
}

@media (min-width: 769px) {
  .p-title--challenge__name--04 {
    width: 325px;
    margin-bottom: 35px;
  }
}

@media (min-width: 769px) {
  .p-title--challenge__name--05 {
    width: 271px;
    margin-bottom: 35px;
  }
}

@media (min-width: 769px) {
  .p-title--challenge__name--07 {
    width: 325px;
    margin-bottom: 33px;
  }
}

@media (min-width: 769px) {
  .p-title--challenge__name--08 {
    width: 244px;
    margin-bottom: 33px;
  }
}

@media (min-width: 769px) {
  .p-title--challenge__name--09 {
    width: 399px;
    margin-bottom: 33px;
  }
}

@media (min-width: 769px) {
  .p-title--challenge__name--10 {
    width: 368px;
    margin-bottom: 33px;
  }
}
@media (min-width: 769px) {
  .p-title--challenge__name--11 {
    width: 368px;
    margin-bottom: 33px;
  }
}
@media (min-width: 769px) {
  .p-title--challenge__name--12 {
    width: 368px;
    margin-bottom: 33px;
  }
}
@media (min-width: 769px) {
  .p-title--challenge__name--13 {
    width: 368px;
    margin-bottom: 33px;
  }
}
@media (min-width: 769px) {
  .p-title--challenge__name--14 {
    width: 368px;
    margin-bottom: 33px;
  }
}

.p-rice {
  position: absolute;
  width: 180px;
}

@media (min-width: 769px) {
  .p-rice {
    top: 55px;
    left: 0;
  }
}

@media (max-width: 768px) {
  .p-rice {
    bottom: -250px;
    left: 50%;
    margin-left: -90px;
  }
}

.p-rice__img, .p-rice--challenge__img, .p-rice--other__img {
  width: 100%;
}

@media (min-width: 769px) {
  .p-rice--challenge {
    width: 162px;
  }
}

@media (max-width: 768px) {
  .p-rice--challenge {
    width: 142px;
    margin: 0 auto 20px;
  }
}

.p-rice--other {
  flex: 1 0 1%;
}

@media (min-width: 769px) {
  .p-pref {
    margin-bottom: 20px;
  }
}

@media (min-width: 769px) {
  .p-pref__img {
    width: 63px;
  }
}

@media (max-width: 768px) {
  .p-pref__img {
    width: 32px;
  }
}

@media (min-width: 769px) {
  .p-pref--challenge__img {
    width: 63px;
  }
}

@media (max-width: 768px) {
  .p-pref--challenge__img {
    width: 37px;
    margin-bottom: 8px;
  }
}

.p-pref--new {
  padding-left: 5px;
}

@media (min-width: 769px) {
  .p-pref--new {
    margin-bottom: 15px;
  }
}

@media (max-width: 768px) {
  .p-pref--new {
    display: block;
    margin-bottom: 10px;
  }
}

@media (min-width: 769px) {
  .p-pref--new__img {
    width: 97px;
  }
}

@media (max-width: 768px) {
  .p-pref--new__img {
    width: 48px;
  }
}

@media (min-width: 769px) {
  .p-producer {
    padding: 30px 0 90px 250px;
    display: flex;
    justify-content: flex-start;
    align-items: normal;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

@media (max-width: 768px) {
  .p-producer {
    padding: 50px 15px 100px;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;
  }
}

.p-producer__figure {
  width: 90px;
}

@media (min-width: 769px) {
  .p-producer__figure {
    margin-right: 28px;
  }
}

@media (max-width: 768px) {
  .p-producer__figure {
    margin-bottom: 17px;
  }
}

.p-producer__img {
  width: 100%;
}

.p-producer__info {
  color: #fff;
}

.p-producer__intro {
  font-size: 13px;
}

.p-producer__title {
  font-size: 16px;
}

.p-producer__desc {
  font-size: 14px;
}

.p-producer__name {
  font-size: 20px;
  font-weight: bold;
}

.p-producer__name--mini {
  font-size: 16px;
  font-weight: normal;
}

@media (min-width: 769px) {
  .p-producer--new {
    max-width: 800px;
    margin: 0 auto 95px;
  }
}

@media (max-width: 768px) {
  .p-producer--new {
    padding: 0 15px 60px;
  }
}

@media (min-width: 769px) {
  .p-producer--new {
    display: flex;
    justify-content: flex-start;
    align-items: normal;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

.p-producer--new__name {
  font-size: 16px;
  font-weight: bold;
  line-height: 2;
  width: 100%;
  margin-bottom: 10px;
  color: #fff;
}

.p-producer--new__desc {
  font-size: 16px;
  font-weight: normal;
  line-height: 2;
  color: #fff;
}

@media (min-width: 769px) {
  .p-producer--new__desc {
    flex: 1 0 1%;
  }
}

@media (max-width: 768px) {
  .p-producer--new__desc {
    margin-bottom: 30px;
  }
}

.p-producer--new__figure {
  text-align: center;
}

@media (min-width: 769px) {
  .p-producer--new__figure {
    width: 220px;
    margin-left: 50px;
    padding-top: 10px;
  }
}

@media (min-width: 769px) {
  .p-producer--new__img {
    width: 100%;
  }
}

@media (max-width: 768px) {
  .p-producer--new__img {
    width: 75.862%;
  }
}

.p-accordion {
  border: 1px solid #cbb754;
  border-radius: 10px;
  background-color: #2d2c2a;
}

@media (min-width: 769px) {
  .p-accordion {
    margin-bottom: 100px;
  }
}

@media (max-width: 768px) {
  .p-accordion {
    margin-bottom: 60px;
  }
}

.p-accordion__open {
  font-weight: bold;
  line-height: 1;
  width: 100%;
  cursor: pointer;
  text-align: center;
  color: #cbb754;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: row;
}

@media (min-width: 769px) {
  .p-accordion__open {
    font-size: 20px;
    padding: 25px 0;
  }
}

@media (max-width: 768px) {
  .p-accordion__open {
    font-size: 18px;
    padding: 16px 0;
  }
}

.p-accordion__open.is_open::after {
  transition: transform .3s;
  transform: rotate(180deg);
}

.p-accordion__open::after {
  display: inline-block;
  width: 18px;
  height: 12px;
  margin-left: 12px;
  content: '';
  transition: transform .2s;
  background-image: url(/home/suihanki/okomejuku/challenge/img/accordion_arrow.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 18px 12px;
}

.p-accordion__body {
  display: none;
}

@media (min-width: 769px) {
  .p-accordion__body {
    padding: 40px 50px 0;
  }
}

@media (max-width: 768px) {
  .p-accordion__body {
    padding: 20px 15px 0;
  }
}

.p-accordion__title {
  font-size: 20px;
  font-weight: bold;
  line-height: 1.5;
  margin-bottom: 15px;
  color: #fff;
}

.p-accordion__txt {
  font-size: 16px;
  line-height: 2;
  margin-bottom: 40px;
  color: #fff;
}

.p-accordion__name {
  font-weight: bold;
  margin-right: 10px;
}

.p-accordion__figure {
  margin-bottom: 40px;
}

.p-accordion__img {
  width: 100%;
}

.p-accordion__close {
  font-weight: bold;
  line-height: 1;
  width: 100%;
  cursor: pointer;
  text-align: center;
  color: #cbb754;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: row;
}

@media (min-width: 769px) {
  .p-accordion__close {
    font-size: 20px;
    padding: 25px 0;
  }
}

@media (max-width: 768px) {
  .p-accordion__close {
    font-size: 18px;
    padding: 16px 0;
  }
}

.p-accordion__close::after {
  display: inline-block;
  width: 18px;
  height: 12px;
  margin-left: 12px;
  content: '';
  transform: rotate(180deg);
  background-image: url(/home/suihanki/okomejuku/challenge/img/accordion_arrow.png);
  background-repeat: no-repeat;
  background-position: 0 0;
  background-size: 18px 12px;
}

@media (min-width: 769px) {
  .p-box {
    margin-bottom: 60px;
    display: flex;
    justify-content: space-between;
    align-items: normal;
    flex-wrap: wrap;
    flex-direction: row;
  }
  .p-box:last-child {
    margin-bottom: 80px;
  }
}

@media (max-width: 768px) {
  .p-box {
    margin-bottom: 80px;
    display: flex;
    justify-content: flex-start;
    align-items: normal;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

@media (min-width: 769px) {
  .p-box__inner {
    flex: 1 0 1%;
  }
}

@media (min-width: 769px) {
  .p-box--middle {
    max-width: 900px;
    margin: 0 auto 100px;
  }
}

@media (max-width: 768px) {
  .p-box--middle {
    padding: 0 15px 50px;
  }
}

.p-box--feedback {
  margin-bottom: 0 !important;
}

.p-box--other {
  margin-bottom: 100px;
}

@media (min-width: 769px) {
  .p-box--other {
    display: flex;
    justify-content: flex-start;
    align-items: normal;
    flex-wrap: nowrap;
    flex-direction: row;
  }
}

@media (max-width: 768px) {
  .p-box--other {
    width: 100vw;
    margin-left: -15px;
    display: flex;
    justify-content: flex-start;
    align-items: normal;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

@media (min-width: 769px) {
  .p-box--other_2018_top {
    margin: 0 auto 100px;
    flex-wrap: wrap;
  }
  .p-box--other_2018_top .p-other__link {
    width: 33.333% !important;
  }
}

@media (max-width: 768px) {
  .p-box--other_2018_top {
    margin: 0 0 90px -30px;
  }
}

@media (max-width: 768px) {
  .p-box--col3 {
    margin-bottom: 50px;
  }
}

@media (min-width: 769px) {
  .p-box--col3::after {
    display: block;
    width: 28.571%;
    content: '';
  }
}

@media (min-width: 769px) {
  .p-box--challenge {
    display: flex;
    justify-content: center;
    align-items: normal;
    flex-wrap: wrap;
    flex-direction: row;
  }
  .p-challenge--2019 .p-box--challenge {
    margin-left: 70px;
  }
}

@media (min-width: 769px) {
  .p-box--challenge__inner {
    margin-left: 60px;
    display: flex;
    justify-content: center;
    align-items: normal;
    flex-wrap: nowrap;
    flex-direction: column;
  }
}

.p-column {
  margin-top: 20px;
}

@media (min-width: 769px) {
  .p-column {
    display: flex;
    justify-content: flex-start;
    align-items: normal;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

.p-column__img {
  width: 100%;
}

@media (min-width: 769px) {
  .p-column__col2 {
    width: 50%;
  }
}

.p-egg {
  background-color: #38332a;
}

@media (min-width: 769px) {
  .p-egg {
    margin-bottom: 100px;
    padding: 50px;
  }
}

@media (max-width: 768px) {
  .p-egg {
    margin-bottom: 50px;
    padding: 40px 20px 30px;
  }
}

.p-egg__catch {
  font-weight: bold;
  line-height: 1;
  margin: 0 auto 20px;
  padding-top: 5px;
  text-align: center;
  color: #302e26;
  background-color: #e9ce5e;
}

@media (min-width: 769px) {
  .p-egg__catch {
    font-size: 16px;
    width: 160px;
    height: 26px;
    border-radius: 13px;
  }
}

@media (max-width: 768px) {
  .p-egg__catch {
    font-size: 14px;
    width: 150px;
    height: 24px;
    border-radius: 12px;
  }
}

.p-egg__title {
  font-weight: bold;
  text-align: center;
  color: #e9ce5e;
}

@media (min-width: 769px) {
  .p-egg__title {
    font-size: 28px;
    margin-bottom: 50px;
  }
}

@media (max-width: 768px) {
  .p-egg__title {
    font-size: 24px;
    line-height: 1.5;
    margin-bottom: 40px;
  }
}

@media (min-width: 769px) {
  .p-egg__txt {
    margin-bottom: 20px;
  }
}

@media (max-width: 768px) {
  .p-egg__txt {
    margin-bottom: 20px;
  }
}

.p-egg__txt--bold {
  font-weight: bold;
  color: #fff;
}

@media (min-width: 769px) {
  .p-egg__txt--bold {
    font-size: 20px;
    line-height: 1.6;
    margin-bottom: 20px;
  }
}

@media (max-width: 768px) {
  .p-egg__txt--bold {
    font-size: 18px;
    line-height: 1.4;
  }
}

@media (min-width: 769px) {
  .p-kind {
    margin-bottom: 100px;
  }
}

@media (max-width: 768px) {
  .p-kind {
    margin-bottom: 50px;
  }
}

.p-kind__title {
  font-size: 20px;
  font-weight: bold;
  color: #fff;
}

@media (min-width: 769px) {
  .p-kind__title {
    margin-bottom: 30px;
  }
}

@media (max-width: 768px) {
  .p-kind__title {
    margin-bottom: 20px;
  }
}

@media (min-width: 769px) {
  .p-kind__txt {
    margin-bottom: 45px;
  }
}

@media (max-width: 768px) {
  .p-kind__txt {
    margin-bottom: 20px;
  }
}

.p-kind__bold {
  font-weight: bold;
  margin-right: 10px;
}

.p-emblem {
  background-color: #2d2c2a;
}

@media (min-width: 769px) {
  .p-emblem {
    width: 39.795%;
    margin-left: 55px;
    padding: 50px 25px;
  }
}

@media (max-width: 768px) {
  .p-emblem {
    margin-bottom: 35px;
    padding: 36px 20px;
    order: 1;
  }
}

.p-figure {
  background-color: #2d2c2a;
}

@media (min-width: 769px) {
  .p-figure {
    width: 39.795%;
    margin-left: 55px;
  }
}

@media (max-width: 768px) {
  .p-figure .p-figure {
    margin: 20px 0 35px;
  }
}

.p-figure__caption {
  padding: 5px 0;
  text-align: center;
  color: #fff;
}

@media (min-width: 769px) {
  .p-figure__caption {
    font-size: 20px;
  }
}

@media (max-width: 768px) {
  .p-figure__caption {
    font-size: 15px;
  }
}

@media (min-width: 769px) {
  .p-figure--kumasan {
    width: 46.938%;
    margin-left: 50px;
  }
}

@media (max-width: 768px) {
  .p-figure--kumasan {
    margin: 20px 0 35px;
  }
}

@media (min-width: 769px) {
  .p-figure-yukiwakamaru {
    width: 46.938%;
  }
}

@media (max-width: 768px) {
  .p-figure-yukiwakamaru {
    margin: 20px 0 35px;
  }
}

@media (min-width: 769px) {
  .p-dish {
    width: 28.571%;
  }
}

@media (max-width: 768px) {
  .p-dish {
    width: 100%;
    margin-bottom: 60px;
  }
}

.p-dish__img {
  width: 100%;
  margin-bottom: 35px;
}

.p-dish__name {
  font-size: 16px;
  font-weight: bold;
  margin-bottom: 30px;
  text-align: center;
  color: #e9ce5e;
}

.p-dish__desc {
  font-size: 14px;
  line-height: 2;
  color: #fff;
}

.p-dish__link {
  padding-right: 13px;
  text-decoration: underline !important;
  color: #fff !important;
  background: url(/home/suihanki/okomejuku/challenge/img/blank_w.png) no-repeat center right;
  background-size: 12px 11px;
}

.p-dish__link:hover {
  text-decoration: none !important;
}

@media (min-width: 769px) {
  .p-dish--secondaly {
    margin-bottom: 80px;
    display: flex;
    justify-content: flex-start;
    align-items: normal;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

@media (max-width: 768px) {
  .p-dish--secondaly {
    margin-bottom: 40px;
  }
}

@media (min-width: 769px) {
  .p-dish--secondaly__figure {
    width: 280px;
    margin-right: 40px;
  }
}

@media (max-width: 768px) {
  .p-dish--secondaly__figure {
    margin-bottom: 20px;
  }
}

.p-dish--secondaly__img {
  width: 100%;
}

@media (min-width: 769px) {
  .p-dish--secondaly__inner {
    flex: 1 0 1%;
  }
}

.p-dish--secondaly__name {
  font-size: 20px;
  font-weight: bold;
  margin-bottom: 10px;
  color: #e9ce5e;
}

@media (min-width: 769px) {
  .p-dish--secondaly__name {
    margin-top: -10px;
  }
}

.p-dish--secondaly__desc {
  font-size: 16px;
  color: #fff;
}

@media (min-width: 769px) {
  .p-dish--secondaly__desc {
    line-height: 2;
  }
}

@media (max-width: 768px) {
  .p-dish--secondaly__desc {
    line-height: 1.6;
  }
}

.p-feedback {
  margin-bottom: 10px;
  background-color: #2d2c2a;
}

@media (min-width: 769px) {
  .p-feedback {
    padding: 40px 60px 55px;
  }
}

@media (max-width: 768px) {
  .p-feedback {
    padding: 40px 20px 30px;
  }
}

@media (min-width: 769px) {
  .p-feedback__figure {
    width: 45.348%;
    margin-left: 40px;
  }
}

@media (max-width: 768px) {
  .p-feedback__figure {
    width: 100%;
    margin-top: 30px;
    order: 3;
  }
}

.p-feedback__img {
  width: 100%;
}

@media (min-width: 769px) {
  .p-feedback--middle {
    margin-bottom: 100px;
  }
}

@media (max-width: 768px) {
  .p-feedback--middle {
    margin-bottom: 50px;
  }
}

.p-magazine {
  background-color: #4d5486;
  background-repeat: no-repeat;
}

@media (min-width: 769px) {
  .p-magazine {
    min-height: 220px;
    margin-bottom: 120px;
    padding: 40px 420px 40px 60px;
    background-image: url(/home/suihanki/okomejuku/challenge/img/brand/magazine.png);
    background-position: right bottom;
    background-size: auto 100%;
  }
  .p-magazine2020 {
    min-height: 220px;
    margin-bottom: 120px;
    padding: 40px 420px 40px 60px;
    background-image: url(/home/suihanki/okomejuku/challenge/img/brand/magazine2020.png);
    background-position: right bottom;
    background-size: auto 100%;
  }
}

@media (max-width: 768px) {
  .p-magazine {
    margin-bottom: 100px;
    padding: 30px 20px 275px;
    background-image: url(/home/suihanki/okomejuku/challenge/img/brand/magazine_sp.png);
    background-position: center bottom;
  }
  .p-magazine2020 {
    margin-bottom: 100px;
    padding: 30px 20px 275px;
    background-image: url(/home/suihanki/okomejuku/challenge/img/brand/magazine_sp2020.png);
    background-position: center bottom;
	  background-color: #4a5182;
  }
}

.p-magazine__txt {
  font-size: 16px;
  line-height: 2;
  color: #cdcdcd;
}

.p-magazine--top {
  background-color: #4d5486;
  background-repeat: no-repeat;
}

@media (min-width: 769px) {
  .p-magazine--top {
    max-width: 930px;
    height: 220px;
    margin: 0 auto 120px;
    padding: 40px 390px 40px 60px;
    background-image: url(/home/suihanki/okomejuku/challenge/img/top/magazine.png);
    background-position: right bottom;
    background-size: auto 100%;
    display: flex;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

@media (max-width: 768px) {
  .p-magazine--top {
    margin-bottom: 100px;
    padding: 30px 20px 86.206%;
    background-image: url(/home/suihanki/okomejuku/challenge/img/top/magazine_sp.png);
    background-position: center bottom;
    background-size: 100% auto;
  }}

.p-magazine--top__txt {
  line-height: 2;
  color: #cdcdcd;
}

@media (min-width: 769px) {
  .p-magazine--top__txt {
    font-size: 18px;
  }
}

@media (max-width: 768px) {
  .p-magazine--top__txt {
    font-size: 16px;
  }
}

@media (min-width: 769px) {
  .p-challenge, .p-challenge--2019 {
    padding: 30px 0 55px;
	margin-bottom: 50px;
  }
}

@media (max-width: 768px) {
  .p-challenge, .p-challenge--2019 {
    padding: 10px 0 30px;
	margin-bottom: 50px;
  }
}

.p-challenge.u-brand--02, .u-brand--02.p-challenge--2019, .p-challenge--2019 {
  margin-bottom: 100px;
}

@media (min-width: 769px) {
  .p-challenge--2019__inner {
    max-width: 790px;
    margin: 0 auto 0;
  }
}

@media (max-width: 768px) {
  .p-challenge--2019__inner {
    padding: 0 15px;
  }
}

@media (min-width: 769px) {
  .p-challenge__inner {
    max-width: 760px;
    margin: 0 auto 0;
    padding: 0 15px;
  }
}

@media (max-width: 768px) {
  .p-challenge__inner {
    padding: 0 15px;
  }
}

.p-challenge__btn, .p-challenge--2019__btn {
  font-weight: bold;
  letter-spacing: .14em;
  color: #fff !important;
  border: 1px solid;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: row;
  position: relative;
}

/*210604ボタンにマウスオンで透過*/
.p-challenge__btn:hover {
text-decoration: none;
}
.p-challenge__btn:hover::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
       border-radius: 40px;
       text-decoration:none;
    content: '';
    background-color: rgba(255, 255, 255, 0.3);
}

@media (max-width: 768px) {
	.p-challenge__btn:hover::before {
    position: none;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-radius: 0;
    text-decoration:none;
    content: '';
    background-color: none;
}	.p-challenge__btn:active::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 40px;
    text-decoration:none;
    content: '';
    background-color: rgba(255, 255, 255, 0.3);
}
/*	.p-challenge__btn:visited::before {
    position: none;
    top: 0;
    left: 0;
    width: 0;
    height: 0;
    border-radius: 0;
    text-decoration:none;
    content: '';
    background-color: none;
}*/

}

/*-------*/

@media (min-width: 769px) {
  .p-challenge__btn, .p-challenge--2019__btn {
    font-size: 23px;
    width: 480px;
    height: 80px;
    border-radius: 40px;
  }
  .p-challenge__btn::after, .p-challenge--2019__btn::after {
    width: 13px;
    height: 24px;
    margin-left: 20px;
    background-size: 13px 24px;
  }
}

@media (max-width: 768px) {
  .p-challenge__btn, .p-challenge--2019__btn {
    font-size: 17px;
    width: 100%;
    height: 48px;
    margin-top: 30px;
    border-radius: 24px;
  }
  .p-challenge__btn::after, .p-challenge--2019__btn::after {
    width: 8px;
    height: 15px;
    margin-left: 10px;
    background-size: 8px 15px;
  }
}

.p-challenge__btn::after, .p-challenge--2019__btn::after {
  content: '';
  background-image: url(/home/suihanki/okomejuku/challenge/img/arrow.png);
  background-repeat: no-repeat;
  background-position: left center;
}

.p-outer {
  line-height: 1.2;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: row;
}

@media (min-width: 769px) {
  .p-outer {
    padding: 40px 0 80px;
  }
}

@media (max-width: 768px) {
  .p-outer {
    padding: 30px 0 100px;
  }
}

.p-outer__txt {
  font-size: 16px;
  color: #fff;
}

.p-outer__link {
  position: relative;
  text-decoration: none !important;
  color: #e9ce5e !important;
  border-bottom: 1px solid;
}

.p-outer__link:hover {
  border-bottom-color: transparent;
}

.p-outer__link::after {
  position: absolute;
  top: 2px;
  right: -15px;
  width: 12px;
  height: 11px;
  content: '';
  background: url(/home/suihanki/okomejuku/challenge/img/blank.png) no-repeat left top;
  background-size: 12px 11px;
}

@media (min-width: 769px) {
  .p-other {
    margin: 0 auto 0;
  }
}

@media (max-width: 768px) {
  .p-other {
    padding: 0 15px;
  }
}

.p-other__link {
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: nowrap;
  flex-direction: column;
}

@media (min-width: 769px) {
  .p-other__link {
    position: relative;
  }
  .p-other__link:hover::before {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    content: '';
    background-color: rgba(255, 255, 255, 0.2);
  }
}

@media (max-width: 768px) {
  .p-other__link {
    width: 50%;
  }
}

@media (min-width: 769px) {
  .p-other--2018 {
    max-width: 980px;
  }
}

.p-other--2018 .p-pref--other {
  width: 44px;
}

.p-other--2018 .p-other__link {
  padding: 12px 8px;
}

@media (min-width: 769px) {
  .p-other--2018 .p-other__link {
    width: 16.666%;
    height: 245px;
  }
}

.p-other--2018 .p-other__btn {
  width: 100%;
  height: 30px;
}

.p-other--2018 .p-other__btn::after {
  width: 5px;
  height: 8px;
  background-size: 5px 8px;
}

@media (min-width: 769px) {
  .p-other--2018_top .p-other__btn {
    width: 190px;
  }
}

@media (min-width: 769px) {
  .p-other--2019 {
    max-width: 976px;
    margin-bottom: 80px;
    flex-wrap: wrap;
  }
}

@media (max-width: 768px) {
  .p-other--2019 {
    margin-bottom: 40px;
  }
}
@media (min-width: 769px) {
  .p-other--2021 {
    max-width: 976px;
    margin-bottom: 80px;
    flex-wrap: wrap;
  }
}

@media (max-width: 768px) {
  .p-other--2021 {
    margin-bottom: 40px;
  }
}

.p-other--2019 .p-pref--other,
.p-other--2021 .p-pref--other {
  width: 51px;
}

@media (min-width: 769px) {
.p-other--2019 .p-pref--other,
.p-other--2021 .p-pref--other {
    margin-bottom: 10px;
  }
}

@media (min-width: 769px) {
  .p-other--2019 .p-other__link,
  .p-other--2021 .p-other__link {
    width: 253%;
    height: 310px;
    padding: 26px 28px 20px;
  }
}

@media (max-width: 768px) {
  .p-other--2019 .p-other__link,
  .p-other--2021 .p-other__link	{
    padding: 12px 8px;
  }
}

.p-other--2019 .p-other__btn,
.p-other--2021 .p-other__btn {
  z-index: 1;
}

@media (min-width: 769px) {
  .p-other--2019 .p-other__btn,
  .p-other--2021 .p-other__btn	{
    width: 190px;
    height: 38px;
    border-radius: 19px;
  }
  .p-other--2019 .p-other__btn::after,
  .p-other--2021 .p-other__btn::after {
    width: 7px;
    height: 11px;
    background-size: 7px 11px;
  }
}


/*@media (min-width: 769px) {
  .p-other--2021 .p-other__link.u-brand--11,
	.p-other--2021 .p-other__link.u-brand--12,
	.p-other--2021 .p-other__link.u-brand--13
	.p-other--2021 .p-other__link.u-brand--14{
    width: 125%;
    height: 310px;
    padding: 26px 28px 20px;
  }
}*/

@media (max-width: 768px) {
  .p-other--2021 .p-box--other_2021_top.p-other__link {
    padding: 12px 8px;
  }
}

.p-other--2021 .p-box--other_2021_top.p-other__btn {
  z-index: 1;
}

@media (min-width: 769px) {
  .p-other--2021 .p-box--other_2021_top.p-other__btn {
    width: 190px;
    height: 38px;
    border-radius: 19px;
  }
  .p-other--2021 .p-box--other_2021_top.p-other__btn::after {
    width: 7px;
    height: 11px;
    background-size: 7px 11px;
  }
}

.p-other__rice--01_top {
  width: 109px;
}

.p-other__rice--02_top {
  width: 111px;
}

.p-other__rice--03_top {
  width: 111px;
}

.p-other__rice--04_top {
  width: 125px;
}

.p-other__rice--05_top {
  width: 108px;
}

.p-other__rice--06_top {
  width: 111px;
}

@media (min-width: 769px) {
  .p-other__name--01_top {
    width: 96px;
  }
}

@media (max-width: 768px) {
  .p-other__name--01_top {
    width: 76px;
  }
}

@media (min-width: 769px) {
  .p-other__name--02_top {
    width: 60px;
  }
}

@media (max-width: 768px) {
  .p-other__name--02_top {
    width: 46px;
  }
}

@media (min-width: 769px) {
  .p-other__name--03_top {
    width: 77px;
  }
}

@media (max-width: 768px) {
  .p-other__name--03_top {
    width: 60px;
  }
}

@media (min-width: 769px) {
  .p-other__name--04_top {
    width: 94px;
  }
}

@media (max-width: 768px) {
  .p-other__name--04_top {
    width: 73px;
  }
}

@media (min-width: 769px) {
  .p-other__name--05_top {
    width: 76px;
  }
}

@media (max-width: 768px) {
  .p-other__name--05_top {
    width: 60px;
  }
}

@media (min-width: 769px) {
  .p-other__name--06_top {
    width: 117px;
  }
}

@media (max-width: 768px) {
  .p-other__name--06_top {
    width: 97px;
  }
}

.p-other__rice--01 {
  width: 93px;
}

.p-other__rice--02 {
  width: 93px;
}

.p-other__rice--03 {
  width: 91px;
}

.p-other__rice--04 {
  width: 104px;
}

.p-other__rice--05 {
  width: 89px;
}

.p-other__rice--06 {
  width: 94px;
}

.p-other__rice--07 {
  width: 118px;
}

.p-other__rice--08 {
  width: 111px;
}

.p-other__rice--09 {
  width: 109px;
}

.p-other__rice--10 {
  width: 110px;
}
.p-other__rice--11 {
  width: 110px;
}
.p-other__rice--12 {
  width: 110px;
}
.p-other__rice--13 {
  width: 110px;
}
.p-other__rice--14 {
  width: 110px;
}


.p-other__name--01 {
  width: 76px;
}

.p-other__name--02 {
  width: 46px;
}

.p-other__name--03 {
  width: 61px;
}

.p-other__name--04 {
  width: 74px;
}

.p-other__name--05 {
  width: 60px;
}

.p-other__name--06 {
  width: 98px;
}

@media (min-width: 769px) {
  .p-other__name--07 {
    width: 82px;
  }
}

@media (max-width: 768px) {
  .p-other__name--07 {
    width: 69px;
  }
}

@media (min-width: 769px) {
  .p-other__name--08 {
    width: 60px;
  }
}

@media (max-width: 768px) {
  .p-other__name--08 {
    width: 50px;
  }
}

@media (min-width: 769px) {
  .p-other__name--09 {
    width: 95px;
  }
}

@media (max-width: 768px) {
  .p-other__name--09 {
    width: 82px;
  }
}

@media (min-width: 769px) {
  .p-other__name--10 {
    width: 88px;
  }
}

@media (max-width: 768px) {
  .p-other__name--10 {
    width: 74px;
  }
}
@media (min-width: 769px) {
  .p-other__name--11 {
    width: 102px;
  }
}

@media (max-width: 768px) {
  .p-other__name--11 {
    width: 84px;
  }
}
@media (min-width: 769px) {
  .p-other__name--12 {
    width: 59px;
  }
}
@media (max-width: 768px) {
  .p-other__name--12 {
    width: 49px;
  }
}

@media (max-width: 768px) {
  .p-other__name--13 {
    width: 49px;
  }
}@media (min-width: 769px) {
  .p-other__name--13 {
    width: 58px;
  }
}

@media (max-width: 768px) {
  .p-other__name--14 {
    width: 49px;
  }
}@media (min-width: 769px) {
  .p-other__name--14 {
    width: 58px;
  }
}


.p-other__btn {
  position: relative;
  display: flex;
  margin-top: 18px;
  border-radius: 15px;
  background-color: rgba(59, 59, 61, 0.302);
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: row;
}

@media (max-width: 768px) {
  .p-other__btn {
    width: 100%;
    height: 30px;
  }
  .p-other__btn::after {
    width: 5px;
    height: 8px;
    background-size: 5px 8px;
  }
}

.u-brand--07 .p-other__btn {
  background-color: #5b4805;
}

.u-brand--08 .p-other__btn {
  background: #373f24;
}

.u-brand--09 .p-other__btn {
  background-color: #25293a;
}

.u-brand--10 .p-other__btn {
  background-color: #541e1e;
}

.p-other__btn::after {
  position: absolute;
  top: 50%;
  right: 12px;
  content: '';
  transform: translateY(-50%);
  background-image: url(/home/suihanki/okomejuku/challenge/img/arrow_g.png);
  background-repeat: no-repeat;
  background-position: left top;
}

.p-about {
  position: relative;
}

@media (min-width: 769px) {
  .p-about::before {
    height: 736px;
  }
  .p-about::after {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 151px;
    content: '';
    background-color: #6f5b5b;
  }
}

@media (max-width: 768px) {
  .p-about::before {
    height: 100%;
  }
}

.p-about::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  content: '';
  background-color: #e5e8f2;
}

.p-about__inner {
  position: relative;
  z-index: 2;
}

@media (min-width: 769px) {
  .p-about__inner {
    height: 887px;
    margin: 100px 0 120px;
    padding: 80px 0 400px;
    background: url(/home/suihanki/okomejuku/challenge/img/top2019/about_bg.png) no-repeat center bottom/2000px auto;
  }
}

@media (max-width: 768px) {
  .p-about__inner {
    margin-bottom: 80px;
    padding: 50px 15px 0;
    background: url(/home/suihanki/okomejuku/challenge/img/top2019/about_bg_sp.png) no-repeat center bottom/100% auto;
  }
  .p-about__inner::after {
    display: block;
    height: 105.156vw;
    content: '';
  }
}

.p-about__title {
  text-align: center;
}

@media (min-width: 769px) {
  .p-about__title {
    margin-bottom: 40px;
  }
}

@media (max-width: 768px) {
  .p-about__title {
    margin-bottom: 35px;
  }
}

@media (min-width: 769px) {
  .p-about__img {
    width: 270px;
  }
}

@media (max-width: 768px) {
  .p-about__img {
    width: 77.241%;
  }
}

@media (min-width: 769px) {
  .p-about__txt {
    font-size: 16px;
    line-height: 1.938;
    text-align: center;
  }
}

@media (max-width: 768px) {
  .p-about__txt {
    font-size: 15px;
    line-height: 2.067;
  }
}

.p-about__txt--bold {
  font-weight: bold;
  text-align: center;
}

@media (min-width: 769px) {
  .p-about__txt--bold {
    font-size: 16px;
    line-height: 1.938;
    margin-bottom: 45px;
  }
}

@media (max-width: 768px) {
  .p-about__txt--bold {
    font-size: 15px;
    line-height: 2.067;
  }
}

@media (min-width: 769px) {
  .p-backtop {
    margin-bottom: 160px;
    display: flex;
    justify-content: center;
    align-items: normal;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

@media (max-width: 768px) {
  .p-backtop {
    margin-bottom: 100px;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-wrap: wrap;
    flex-direction: column;
  }
}

.p-backtop__btn {
  font-size: 18px;
  font-weight: bold;
  position: relative;
  text-decoration: none !important;
  color: #000 !important;
  background-color: #e9ce5e;
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: row;
  font-feature-settings: normal;
}

@media (min-width: 769px) {
  .p-backtop__btn {
    overflow: hidden;
    width: 360px;
    height: 60px;
    margin: 0 10px;
    border-radius: 30px;
  }
  .p-backtop__btn::before {
    position: absolute;
    content: '';
    background: url(/home/suihanki/okomejuku/challenge/img/arrow_b.png) no-repeat left top;
  }
}

@media (min-width: 769px) and (min-width: 769px) {
  .p-backtop__btn::before {
    top: 18px;
    left: 25px;
    width: 13px;
    height: 24px;
    background-size: 13px 24px;
  }
}

@media (min-width: 769px) and (max-width: 768px) {
  .p-backtop__btn::before {
    top: 16px;
    left: 23px;
    width: 8px;
    height: 15px;
    background-size: 8px 15px;
  }
}

@media (min-width: 769px) {
  .p-backtop__btn:hover::after {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    background-color: rgba(255, 255, 255, 0.3);
  }
}

@media (max-width: 768px) {
  .p-backtop__btn {
    width: 90.625%;
    height: 48px;
    margin-bottom: 20px;
    border-radius: 24px;
  }
}

.p-sns {
  display: flex;
  justify-content: center;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: row;
}

@media (min-width: 769px) {
  .p-sns {
    max-width: 980px;
    margin: 0 auto 50px;
  }
}

@media (max-width: 768px) {
  .p-sns {
    margin-bottom: 50px;
    padding: 0 15px;
  }
}

.p-sns__item {
  width: 60px;
  margin: 0 10px;
}

.p-sns__link {
  display: block;
}

@media (min-width: 769px) {
  .p-sns__link {
    position: relative;
  }
  .p-sns__link:hover::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 60px;
    height: 60px;
    content: '';
    border-radius: 50%;
    background-color: rgba(255, 255, 255, 0.3);
  }
}

.p-sns__img {
  width: 100%;
}

.p-relation {
  background-color: #2f2f2f;
}

@media (min-width: 769px) {
  .p-relation {
    margin: 100px 0 60px;
    padding: 55px 0 90px;
  }
}

@media (max-width: 768px) {
  .p-relation {
    margin: 80px 0 90px;
    padding: 20px 10px 29px;
  }
}

.p-relation__title {
  font-weight: bold;
  text-align: center;
  color: #e9ce5e;
}

@media (min-width: 769px) {
  .p-relation__title {
    font-size: 20px;
    margin-bottom: 40px;
  }
}

@media (max-width: 768px) {
  .p-relation__title {
    font-size: 12px;
    margin-bottom: 30px;
  }
}

@media (min-width: 769px) {
  .p-relation__list {
    max-width: 700px;
    margin: 0 auto 0;
    display: flex;
    justify-content: space-between;
    align-items: normal;
    flex-wrap: wrap;
    flex-direction: row;
  }
}

@media (max-width: 768px) {
  .p-relation__list {
    padding: 0 15px;
  }
}

.p-relation__item {
  background-color: #fff;
}

@media (min-width: 769px) {
  .p-relation__item {
    width: 322px;
  }
}

@media (max-width: 768px) {
  .p-relation__item {
    margin-top: 15px;
  }
}

@media (min-width: 769px) {
  .p-relation__item--max {
    width: 100%;
    margin-bottom: 50px;
  }
}

.p-relation__link {
  display: block;
  text-decoration: none !important;
  color: #333 !important;
}

@media (min-width: 769px) {
  .p-relation__link {
    position: relative;
  }
  .p-relation__link:hover::before {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    content: '';
    background-color: rgba(255, 255, 255, 0.2);
  }
}

.p-relation__link--max:hover {
  opacity: .7;
}

.p-relation__img {
  width: 100%;
}

.p-relation__txt {
  line-height: 1.5;
}

@media (min-width: 769px) {
  .p-relation__txt {
    font-size: 16px;
    padding: 20px 35px;
  }
}

@media (max-width: 768px) {
  .p-relation__txt {
    font-size: 14px;
    padding: 10px 15px;
  }
}

/* component */
@media (min-width: 769px) {
  .c-title {
    margin-bottom: 65px;
    text-align: center;
  }
}

@media (max-width: 768px) {
  .c-title {
    margin-bottom: 40px;
    padding: 0 20px;
  }
}

@media (max-width: 768px) {
  .c-title__img {
    width: 100%;
  }
}

.c-title--lead {
  margin: 0 auto 40px;
  display: flex;
  justify-content: flex-start;
  align-items: center;
  flex-wrap: wrap;
  flex-direction: column;
	text-align: center;
}
.c-title--lead .c-title--lead__mini img {
	width: 62%; margin: 0 auto 20px;
}

@media (min-width: 769px) {
  .c-title--lead {
    width: 580px;
  }
}

@media (max-width: 768px) {
  .c-title--lead {
    padding: 0 20px;
  }
}

@media (min-width: 769px) {
  .c-title--lead__img {
    width: 580px;
  }
}

@media (max-width: 768px) {
  .c-title--lead__img {
    width: 100%;
  }
}

@media (min-width: 769px) {
  .c-title--feedback {
    margin-bottom: 40px;
    text-align: center;
  }
}

@media (max-width: 768px) {
  .c-title--feedback {
    display: flex;
    flex-direction: column;
    margin-bottom: 30px;
    justify-content: flex-start;
    align-items: center;
    flex-wrap: wrap;
  }
}

.c-title--feedback__txt {
  font-weight: bold;
  color: #e9ce5e;
}

@media (min-width: 769px) {
  .c-title--feedback__txt {
    font-size: 28px;
  }
}

@media (max-width: 768px) {
  .c-title--feedback__txt {
    font-size: 24px;
    text-align: center;
  }
}

@media (min-width: 769px) {
  .c-title--feedback__img {
    width: 105px;
    margin-right: 28px;
  }
}

@media (max-width: 768px) {
  .c-title--feedback__img {
    width: 74px;
    margin-bottom: 15px;
  }
}

.c-title--magazine {
  font-weight: bold;
  margin-bottom: 25px;
  color: #cdcdcd;
}

.c-title--magazine__name {
  display: block;
}

@media (min-width: 769px) {
  .c-title--magazine__name {
    font-size: 18px;
  }
}

@media (max-width: 768px) {
  .c-title--magazine__name {
    font-size: 16px;
  }
}

@media (min-width: 769px) {
  .c-title--magazine__txt {
    font-size: 28px;
  }
}

@media (max-width: 768px) {
  .c-title--magazine__txt {
    font-size: 24px;
  }
}

@media (min-width: 769px) {
  .c-title--challenge {
    margin-bottom: 33px;
    text-align: center;
  }
}

@media (max-width: 768px) {
  .c-title--challenge {
    width: 100%;
    margin-bottom: 20px;
  }
}

@media (min-width: 769px) {
  .c-title--other {
    width: 580px;
    margin: 0 auto 35px;
    text-align: center;
  }
}

@media (max-width: 768px) {
  .c-title--other {
    margin-bottom: 40px;
    padding: 0 10px;
    text-align: center;
  }
}

@media (min-width: 769px) {
  .c-title--other__img {
    max-width: 580px;
  }
}

.c-title--vol {
  font-size: 28px;
  font-weight: bold;
  line-height: 2;
  margin-bottom: 20px;
  text-align: center;
  color: #e9ce5e;
}

.c-txt, .c-txt--yukiwakamaru {
  font-size: 16px;
  line-height: 2.25;
  color: #fff;
}

@media (min-width: 769px) {
  .c-txt, .c-txt--yukiwakamaru {
    margin-top: -10px;
    flex: 1 0 1%;
  }
}

@media (max-width: 768px) {
  .c-txt, .c-txt--yukiwakamaru {
    order: 2;
  }
}

.c-txt--yukiwakamaru {
  padding-left: 30px;
}

.c-txt--yukiwakamaru__em {
  margin-left: -30px;
}

.c-txt__em, .c-txt--yukiwakamaru__em {
  display: block;
}

@media (min-width: 769px) {
  .c-txt__em, .c-txt--yukiwakamaru__em {
    margin-top: 40px;
  }
}

@media (max-width: 768px) {
  .c-txt__em, .c-txt--yukiwakamaru__em {
    margin-top: 20px;
  }
}

.c-figure__imt {
  width: 100%;
}

.c-figure--bg {
  text-align: center;
  background: #262626;
}

@media (min-width: 769px) {
  .c-figure--bg {
    padding: 30px;
  }
}

@media (max-width: 768px) {
  .c-figure--bg {
    padding: 15px;
  }
}

/* utility */
.u-brand--01 {
  background-color: #7b3430;
}

.u-brand--02 {
  background-color: #76884a;
}

.u-brand--03 {
  background-color: #315470;
}

.u-brand--04 {
  background-color: #b36280;
}

.u-brand--05 {
  background-color: #ba7251;
}

.u-brand--06 {
  background-color: #924f56;
}

/* 2019 add */
.u-brand--07 {
  background-color: #987909;
}

.u-brand--07 .p-otehr__btn {
  background-color: #695406;
}

.u-brand--08 {
  background-color: #5a673b;
}

.u-brand--08 .p-otehr__btn {
  background-color: #3e4729;
}

.u-brand--09 {
  background-color: #353b54;
}

.u-brand--09 .p-other__btn {
  background-color: #25293a;
}

.u-brand--10 {
  background-color: #7a2b2b;
}

.u-brand--10 .p-other__btn {
  background-color: #541e1e;
}
/* 2021 add */
.u-brand--11 {
  background-color: #316d4c;
}

.u-brand--11 .p-otehr__btn {
  background-color: #2b4f40;
}

.u-brand--12 {
  background-color: #78944f;
}

.u-brand--12 .p-otehr__btn {
  background-color: #2d446a;
}
.u-brand--13 {
  background-color: #9c3c4a;
}

.u-brand--13 .p-otehr__btn {
  background-color: #2d446a;
}
.u-brand--14 {
  background-color: #9c252f;
}

.u-brand--14 .p-otehr__btn {
  background-color: #2d446a;
}



@media (max-width: 768px) {
  .u-sp-order-01 {
    order: 1;
  }
  .u-sp-order-02 {
    order: 2;
  }
  .u-sp-order-03 {
    order: 3;
  }
  .u-sp-order-04 {
    order: 4;
  }
  .u-sp-order-05 {
    order: 5;
  }
}

@media (min-width: 769px) {
  .u-pc-mt0 {
    margin-top: 0px !important;
  }
  .u-pc-mr0 {
    margin-right: 0px !important;
  }
  .u-pc-mb0 {
    margin-bottom: 0px !important;
  }
  .u-pc-ml0 {
    margin-left: 0px !important;
  }
  .u-pc-mt10 {
    margin-top: 10px !important;
  }
  .u-pc-mr10 {
    margin-right: 10px !important;
  }
  .u-pc-mb10 {
    margin-bottom: 10px !important;
  }
  .u-pc-ml10 {
    margin-left: 10px !important;
  }
  .u-pc-mt20 {
    margin-top: 20px !important;
  }
  .u-pc-mr20 {
    margin-right: 20px !important;
  }
  .u-pc-mb20 {
    margin-bottom: 20px !important;
  }
  .u-pc-ml20 {
    margin-left: 20px !important;
  }
  .u-pc-mt30 {
    margin-top: 30px !important;
  }
  .u-pc-mr30 {
    margin-right: 30px !important;
  }
  .u-pc-mb30 {
    margin-bottom: 30px !important;
  }
  .u-pc-ml30 {
    margin-left: 30px !important;
  }
  .u-pc-mt40 {
    margin-top: 40px !important;
  }
  .u-pc-mr40 {
    margin-right: 40px !important;
  }
  .u-pc-mb40 {
    margin-bottom: 40px !important;
  }
  .u-pc-ml40 {
    margin-left: 40px !important;
  }
  .u-pc-mt50 {
    margin-top: 50px !important;
  }
  .u-pc-mr50 {
    margin-right: 50px !important;
  }
  .u-pc-mb50 {
    margin-bottom: 50px !important;
  }
  .u-pc-ml50 {
    margin-left: 50px !important;
  }
  .u-pc-mt60 {
    margin-top: 60px !important;
  }
  .u-pc-mr60 {
    margin-right: 60px !important;
  }
  .u-pc-mb60 {
    margin-bottom: 60px !important;
  }
  .u-pc-ml60 {
    margin-left: 60px !important;
  }
  .u-pc-mt70 {
    margin-top: 70px !important;
  }
  .u-pc-mr70 {
    margin-right: 70px !important;
  }
  .u-pc-mb70 {
    margin-bottom: 70px !important;
  }
  .u-pc-ml70 {
    margin-left: 70px !important;
  }
  .u-pc-mt80 {
    margin-top: 80px !important;
  }
  .u-pc-mr80 {
    margin-right: 80px !important;
  }
  .u-pc-mb80 {
    margin-bottom: 80px !important;
  }
  .u-pc-ml80 {
    margin-left: 80px !important;
  }
  .u-pc-mt90 {
    margin-top: 90px !important;
  }
  .u-pc-mr90 {
    margin-right: 90px !important;
  }
  .u-pc-mb90 {
    margin-bottom: 90px !important;
  }
  .u-pc-ml90 {
    margin-left: 90px !important;
  }
  .u-pc-mt100 {
    margin-top: 100px !important;
  }
  .u-pc-mr100 {
    margin-right: 100px !important;
  }
  .u-pc-mb100 {
    margin-bottom: 100px !important;
  }
  .u-pc-ml100 {
    margin-left: 100px !important;
  }
}

@media (max-width: 768px) {
  .u-sp-mt0 {
    margin-top: 0px !important;
  }
  .u-sp-mr0 {
    margin-right: 0px !important;
  }
  .u-sp-mb0 {
    margin-bottom: 0px !important;
  }
  .u-sp-ml0 {
    margin-left: 0px !important;
  }
  .u-sp-mt10 {
    margin-top: 10px !important;
  }
  .u-sp-mr10 {
    margin-right: 10px !important;
  }
  .u-sp-mb10 {
    margin-bottom: 10px !important;
  }
  .u-sp-ml10 {
    margin-left: 10px !important;
  }
  .u-sp-mt20 {
    margin-top: 20px !important;
  }
  .u-sp-mr20 {
    margin-right: 20px !important;
  }
  .u-sp-mb20 {
    margin-bottom: 20px !important;
  }
  .u-sp-ml20 {
    margin-left: 20px !important;
  }
  .u-sp-mt30 {
    margin-top: 30px !important;
  }
  .u-sp-mr30 {
    margin-right: 30px !important;
  }
  .u-sp-mb30 {
    margin-bottom: 30px !important;
  }
  .u-sp-ml30 {
    margin-left: 30px !important;
  }
  .u-sp-mt40 {
    margin-top: 40px !important;
  }
  .u-sp-mr40 {
    margin-right: 40px !important;
  }
  .u-sp-mb40 {
    margin-bottom: 40px !important;
  }
  .u-sp-ml40 {
    margin-left: 40px !important;
  }
  .u-sp-mt50 {
    margin-top: 50px !important;
  }
  .u-sp-mr50 {
    margin-right: 50px !important;
  }
  .u-sp-mb50 {
    margin-bottom: 50px !important;
  }
  .u-sp-ml50 {
    margin-left: 50px !important;
  }
  .u-sp-mt60 {
    margin-top: 60px !important;
  }
  .u-sp-mr60 {
    margin-right: 60px !important;
  }
  .u-sp-mb60 {
    margin-bottom: 60px !important;
  }
  .u-sp-ml60 {
    margin-left: 60px !important;
  }
  .u-sp-mt70 {
    margin-top: 70px !important;
  }
  .u-sp-mr70 {
    margin-right: 70px !important;
  }
  .u-sp-mb70 {
    margin-bottom: 70px !important;
  }
  .u-sp-ml70 {
    margin-left: 70px !important;
  }
  .u-sp-mt80 {
    margin-top: 80px !important;
  }
  .u-sp-mr80 {
    margin-right: 80px !important;
  }
  .u-sp-mb80 {
    margin-bottom: 80px !important;
  }
  .u-sp-ml80 {
    margin-left: 80px !important;
  }
  .u-sp-mt90 {
    margin-top: 90px !important;
  }
  .u-sp-mr90 {
    margin-right: 90px !important;
  }
  .u-sp-mb90 {
    margin-bottom: 90px !important;
  }
  .u-sp-ml90 {
    margin-left: 90px !important;
  }
  .u-sp-mt100 {
    margin-top: 100px !important;
  }
  .u-sp-mr100 {
    margin-right: 100px !important;
  }
  .u-sp-mb100 {
    margin-bottom: 100px !important;
  }
  .u-sp-ml100 {
    margin-left: 100px !important;
  }
}

/*20210519*/
@media (max-width: 768px) {
  .p-lead {
    margin-bottom: 80px;
  }
}
.p-underbanner-text{
	margin-bottom: 34px;
}


.p-lead__txt, .p-banner__caution {
  line-height: 2;
  color: #e9ce5e;
}

@media (min-width: 769px) {
  .p-lead__txt, .p-banner__caution {
    font-size: 16px;
  }
}

@media (max-width: 768px) {
  .p-lead__txt, .p-banner__caution {
    font-size: 15px;
  }
}

@media (min-width: 769px) {
  .p-banner {
    margin-bottom: 40px;
  }
}

@media (max-width: 768px) {
  .p-banner {
    margin-bottom: 34px;
  }
}

.p-banner__caution {
  text-align: center;
}

@media (min-width: 769px) {
  .p-banner__caution {
    margin: 40px 0 56px;
  }
}

@media (max-width: 768px) {
  .p-banner__caution {
    margin: 25px 0 46px;
    padding: 0 15px;
  }
}

.p-banner__apply {
  font-weight: bold;
  margin-bottom: 16px;
  text-align: center;
  color: #e9ce5e;
}

@media (min-width: 769px) {
  .p-banner__apply {
    font-size: 26px;
  }
}

@media (max-width: 768px) {
  .p-banner__apply {
    font-size: 24px;
  }
}

.p-banner__date {
  font-weight: bold;
  text-align: center;
  color: #fff;
}

@media (min-width: 769px) {
  .p-banner__date {
    font-size: 16px;
	margin-bottom: 30px;
  }
}

@media (max-width: 768px) {
  .p-banner__date {
    font-size: 15px;
    padding: 0 15px;

  }
}



