@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP&display=swap');

/* CSS Document */
#mark971 {
  display: none
}

@media (min-width:970px) {
  #mark971 {
    display: block;
    width: 100%
  }
}

#mark970 {
  display: none
}

@media (max-width:970px) {
  #mark970 {
    display: block;
    width: 100%
  }
}

#mark767 {
  display: none
}

@media (max-width:767px) {
  #mark767 {
    display: block;
    width: 100%
  }
}

#mark640 {
  display: none
}

@media (max-width:640px) {
  #mark640 {
    display: block;
    width: 100%
  }
}

#mark480 {
  display: none
}

@media (max-width:480px) {
  #mark640 {
    display: block;
    width: 100%
  }
}

.sp1024 {
  display: none !important
}

@media(max-width:1024px) {
  .pc1024 {
    display: none !important
  }

  .sp1024 {
    display: block !important
  }
}

.sp97 {
  display: none !important
}

@media(max-width:970px) {
  .pc97 {
    display: none !important
  }

  .sp97 {
    display: block !important
  }
}

.sp76 {
  display: none !important
}

@media(max-width:767px) {
  .pc76 {
    display: none !important
  }

  .sp76 {
    display: block !important
  }
}

.sp {
  display: none !important
}

@media(max-width:640px) {
  .pc {
    display: none !important
  }

  .sp {
    display: block !important
  }
}

.sp48 {
  display: none !important
}

@media(max-width:480px) {
  .pc48 {
    display: none !important
  }

  .sp48 {
    display: block !important
  }
}

img {
  width: 100%;
  height: auto;
}

img.webadmin2img {
  max-width: 230px;
  display: inline;
}

p,
.h1,
.h2,
.h3,
.h4,
.h5,
.h6,
h1,
h2,
h3,
h4,
h5,
h6 {
  margin: 0;
  padding: 0;
}

.ofurosenryupage h1,
.ofurosenryupage h2,
.ofurosenryupage h3,
.ofurosenryupage h4,
.ofurosenryupage p {
  font-family: 'Noto Sans JP', sans-serif;
}



body.pagewide #wrap .breadcrumbs,
body.pagewide .side-box,
body.pagewide .navbar {
  display: none;
}

body {
  background-color: #f9e6ec;
  background-position: top center;
  background-repeat: repeat;
  /*    color: #0039a4;*/
  color: #231815;
  font-family: 'Noto Sans JP', sans-serif;
}

.ofurosenryupage .box {
  text-align: center;
  margin: 0 auto;
}

.ofurosenryupage .box.first h3 {
  padding-top: 54px;
  color: #0039a4;
  font-size: 2.1875vw;
  line-height: 1.5;
  letter-spacing: -.05em;
  font-weight: bold;
}

.ofurosenryupage .box.first p.maincopy {
  line-height: 2.0;
  font-size: 1.5625vw;
  margin-top: 36px;
}

.ofurosenryupage .box.first p.maincopy+.maincopy {
  margin-top: 5vw;
}

.ofurosenryupage .box.first p.maincopy a {
  color: #0039a4;
}

.ofurosenryupage .box.first .yamadazenjido {
  text-align: center;
  margin: 5vw auto 0;
  position: relative;
}

.ofurosenryupage .box.first .yamadazenjido img.illustration_image {
  width: 48.54166667vw;
  height: auto;
}

.ofurosenryupage .box.first .yamadazenjido img.image_icon {
  width: 11.27147766vw;
  height: auto;
  position: absolute;
  left: 20.68728522vw;
  top: -5vw;
}

.ofurosenryupage .box.first .themebox {
  margin-top: 6.5vw;
}

.ofurosenryupage .box.first .themebox .imagebox>img {
  width: 9.587628866vw;
  height: auto;
}

.ofurosenryupage .box.first .themebox h4 {
  color: #0039a4;
  font-size: 2.199312715vw;
  line-height: 1.5;
  display: flex;
  align-items: center;
  justify-content: center;
  letter-spacing: .5em;
}

.ofurosenryupage .box.first .themebox h4 strong {
  font-size: 3.23024055vw;
  font-weight: bold;
  /*  letter-spacing: -.05em;*/
}

.ofurosenryupage .box.first .themebox p.themecopy {
  line-height: 2.0;
  font-size: 1.546391753vw;
  margin-top: .5vw;
  color: #231815;
}

.ofurosenryupage .box.first .deadlinebox {
  margin-top: 2.5vw;
}

.ofurosenryupage .box.first .deadlinebox .imagebox>img {
  width: 13.74570447vw;
  height: auto;
}

.ofurosenryupage .box.first .deadlinebox h4 {
  color: #0039a4;
  font-size: 2.199312715vw;
  line-height: 1.5;
  letter-spacing: .5em;
  margin-top: .5vw;
}

.ofurosenryupage .box.first .deadlinebox p.deadline {
  color: #0039a4;
  font-size: 2.199312715vw;
  line-height: 1.5;
  margin-top: .5vw;
  letter-spacing: .05em;
}

.ofurosenryupage .box.first .deadlinebox p.deadline strong {
  font-size: 3.23024055vw;
  font-weight: bold;
}

.senryusyo_container {
  display: flex;
  flex-direction: column;
  flex-wrap: nowrap;
  justify-content: center;
  align-items: center;
  margin-top: 6.5vw;
}

.senryusyo_container>img {
  width: 54.57044674vw;
  height: auto;
}

.senryusyo_container>img+img {
  margin-top: 3vw;
}

.senryusyo_container>img.plus_image {
  width: 2.749140893vw;
  height: auto;
}

.senryusyo_container>.senryusyo_nyusho_container {
  margin-top: 3vw;
}

.senryusyo_container>.senryusyo_nyusho_container>img {
  width: 54.57044674vw;
  height: auto;
}

.senryusyo_nyusho_container_presentbox {
  background-color: #FFFFFF;
  width: 54.57044674vw;
}

.senryusyo_nyusho_container_presentbox_bottom {
  width: 54.57044674vw;
  margin-top: 1.958762887vw;
}

.senryusyo_nyusho_container_presentbox_bottom p {
  text-align: left;
  font-size: 1.237113402vw;
}

.senryusyo_nyusho_container_presentbox>ul {
  display: flex;
  justify-content: center;
  flex-wrap: wrap;
  padding: 0;
  margin: 0 0 4.12371134vw;
  list-style: none;
}

.senryusyo_nyusho_container_presentbox>ul li {
  width: calc(50% - 20px);
  /* liの幅を調整して2列表示を維持 */
  display: inline-block;
  text-align: center;
  padding: 10px;
  box-sizing: border-box;
  /* パディングとボーダーを含めて幅を計算 */
}

.senryusyo_nyusho_container_presentbox>ul li img {
  width: 20.27491409vw;
  width: 100%;
  /* 画像がliの幅に合うように設定 */
  height: auto;
}

@media screen and (max-width: 1024px) {
  .ofurosenryupage .box.first {
    padding-left: 5%;
    padding-right: 5%;
  }

  .ofurosenryupage .box.first h3 {
    font-size: calc(3.5vw * 1.5);
  }

  .ofurosenryupage .box.first p.maincopy {
    font-size: calc(1.75vw * 1.8);
  }

  .ofurosenryupage .box.first p.maincopy+.maincopy {
    margin-top: 10vw;
  }

  .ofurosenryupage .box.first .themebox {
    margin-top: 10.5vw;
  }

  .ofurosenryupage .box.first .themebox h4 {
    font-size: calc(2.3vw * 1.8);
    margin-top: 3vw;
  }

  .ofurosenryupage .box.first .themebox h4 strong {
    font-size: calc(3.5vw * 2.5);
    letter-spacing: -.02em;
  }

  .ofurosenryupage .box.first .themebox p.themecopy {
    font-size: calc(1.75vw * 1.8);
  }

  .ofurosenryupage .box.first .yamadazenjido {
    margin: 5vw auto 0;
  }

  .ofurosenryupage .box.first .yamadazenjido img.illustration_image {
    width: calc(48.54166667vw * 1.5);
    height: auto;
  }

  .ofurosenryupage .box.first .yamadazenjido img.image_icon {
    width: calc(11.27147766vw * 1.5);
    left: 0;
  }

  .ofurosenryupage .box.first .themebox .imagebox>img {
    width: calc(9.587628866vw * 1.85);
  }

  .ofurosenryupage .box.first .deadlinebox {
    margin-top: 10.5vw;
  }

  .ofurosenryupage .box.first .deadlinebox p.deadline,
  .ofurosenryupage .box.first .deadlinebox h4 {
    font-size: calc(2.3vw * 1.8);
  }

  .ofurosenryupage .box.first .deadlinebox p.deadline strong {
    font-size: calc(3.5vw * 3);
  }

  .ofurosenryupage .box.first .deadlinebox .imagebox>img {
    width: calc(13.74570447vw * 1.85);
  }

  .senryusyo_container {
    margin-top: 10.5vw;
  }

  .senryusyo_container>img {
    width: calc(54.57044674vw * 1.5);
  }

  .senryusyo_container>img+img {
    margin-top: 5vw;
  }

  .senryusyo_container>img.plus_image {
    width: calc(2.749140893vw * 1.5);
  }

  .senryusyo_container>.senryusyo_nyusho_container {
    margin-top: 5vw;
  }

  .senryusyo_container>.senryusyo_nyusho_container>img {
    width: calc(54.57044674vw * 1.5);
    height: auto;
  }

  .senryusyo_nyusho_container_presentbox {
    width: calc(54.57044674vw * 1.5);
  }

  .senryusyo_nyusho_container_presentbox_bottom {
    width: calc(54.57044674vw * 1.5);
    margin-top: 3vw;
  }

  .senryusyo_nyusho_container_presentbox_bottom p {
    text-align: left;
    font-size: calc(1.237113402vw * 1.5);
  }

  .senryusyo_nyusho_container_presentbox>ul li {
    width: calc(50% - 20px);
    /* liの幅を維持して2列表示 */
  }
}

@media screen and (max-width: 640px) {
  .ofurosenryupage .box.first h3 {
    padding-top: 23px;
  }
}

/* ------------------------------------------------------
 *  ------------------------------------------------------
 * -------------------------------------------------------
 */
.ofurosenryupage .box.entry {
  /*      max-width: 872px;*/
  text-align: center;
  margin: 70px auto 0;
  width: 71.82130584vw;
}

.ofurosenryupage .box.entry .entrybox {
  width: 100%;
  background-color: #fff;
  box-sizing: border-box;
}

.ofurosenryupage .box.entry .entrybox>h1 {
  font-size: 1.374570447vw;
  padding-top: 1.786941581vw;
  padding-bottom: 1.786941581vw;
  font-weight: 500;
}

.ofurosenryupage .box.entry .entrybox .entry-points dl {
  border-top: 1px solid #c8c8c8;
  display: flex;
  padding-top: 1.687285223vw;
  padding-bottom: 1.687285223vw;
  width: 100%;
}

.ofurosenryupage .box.entry .entrybox .entry-points dl dt {
  flex-basis: 23.45553%;
  flex-basis: 16.76975945vw;
  font-weight: 600;
  box-sizing: border-box;
  display: flex;
  align-items: flex-start;
  /*  justify-content: center;
  font-size: 1.5625vw;*/
  padding-left: 6.357388316vw;
}

.ofurosenryupage .box.entry .entrybox .entry-points dl dt p {
  font-size: 1.5vw;
  font-size: 1.030927835vw;
  display: flex;
  justify-content: flex-start;
  text-align: left;
}

.ofurosenryupage .box.entry .entrybox .entry-points dl dt p span {
  display: block;
  text-align: left;
}

.ofurosenryupage .box.entry .entrybox .entry-points dl.askbox dt {
  letter-spacing: -.05em;
}

.ofurosenryupage .box.entry .entrybox .entry-points dl dd {
  flex-basis: 76.54447%;
  flex-basis: 54.57044674vw;
  display: flex;
  align-items: center;
  font-size: 1.5625vw;
  display: table-cell;
  text-align: left;
  padding-right: 7.23799%;
  padding-right: 4.467353952vw;
}

.ofurosenryupage .box.entry .entrybox .entry-points dl dd p div div,
.ofurosenryupage .box.entry .entrybox .entry-points dl dd p {
  font-size: 1.5vw;
  font-size: 1.030927835vw;
  /*  letter-spacing: -.05em;*/
  text-align: justify;
}

.howtoentryinner {
  margin: 0.5vw 0;
  padding: 0;
  display: flex;
  justify-content: flex-start;
  align-items: flex-start;
}

.howtoentryinner p {
  font-weight: 400;
}

.howtoentryinner.website p:first-child {
  width: 7.5vw;
}

.howtoentryinner.website p:last-child {
  width: calc(100% - 11vw);
}

.howtoentryinner.hagaki p:first-child {
  width: 5.5vw;
  margin-bottom: 1vw;
}

.howtoentryinner.hagaki p:last-child {
  width: calc(100% - 8vw);
  margin-bottom: 1vw;
}

.howtoentryinner.hagaki p:last-child span.hagakisofusaki {
  display: block;
  margin-top: 0.65vw;
  line-height: 1.3;
}

.howtoentry p a {
  color: #00a0f8;
}


.award dd>ul {
  margin-top: 0.75vw;
  margin-bottom: 0.75vw;
  font-size: 1.030927835vw;
}

.award dd>ul li {
  position: relative;
  padding-left: 1vw;
  display: flex;
  align-items: center;
}

.award dd>ul li::before {
  content: "●";
  font-size: .65vw;/ color: black;
  position: absolute;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}

.award dd>p+p {
  margin-top: 0.75vw;
}

.judging dd p {
  margin-top: 1.25vw;
}

.judging img {
  max-width: 8.350515464vw;
}

.PastAwardWinningWorks dd div img {
  width: 41.2371134vw;
}

.askbox .ask {
  font-size: 1.030927835vw;
  margin-top: 0.5vw;
}

.askbox .__hosoku__ {
  font-size: 0.859106529vw;
  display: block;
}


@media screen and (max-width: 1024px) {
  .ofurosenryupage .box.entry {
    margin: 70px auto 0;
    width: 81.71875vw;
  }

  .ofurosenryupage .box.entry .entrybox>h1 {
    font-size: calc(2vw * 1.8);
    padding-top: 5vw;
    padding-bottom: 5vw;
  }

  .ofurosenryupage .box.entry .entrybox .entry-points dl {
    display: block;
    text-align: center;
    margin: 0 auto;
    table-layout: auto;
    padding-top: 2.5vw;
    padding-bottom: 2.5vw;
  }

  .ofurosenryupage .box.entry .entrybox .entry-points dl dt {
    width: 100%;
    padding-left: 4%;
    padding-right: 4%;
    /*    padding-bottom: 15px;*/
    display: flex;
    justify-content: center;
  }

  .ofurosenryupage .box.entry .entrybox .entry-points dl dd {
    display: block;
    padding-left: 4%;
    padding-right: 4%;
    margin-top: 15px;
  }

  .ofurosenryupage .box.entry .entrybox .entry-points dl dt p {
    font-size: calc(1.5vw * 2.4);
  }

  .ofurosenryupage .box.entry .entrybox .entry-points dl dd p {
    font-size: calc(1.5vw * 2.4);
  }

  .ofurosenryupage .box.entry .entrybox .entry-points dl dd p+p {
    margin-top: 3vw;
  }



  .howtoentryinner {
    margin: 0.5vw 0;
    padding: 0;
    justify-content: flex-start;
    align-items: baseline;
    display: block;
  }


  .howtoentryinner.website p:first-child {
    width: 40vw;
    width: 100%;
  }

  .howtoentryinner.website p:last-child {
    width: calc(100% - 2vw);
    width: 100%;
  }

  .howtoentryinner.hagaki p:first-child {
    width: 25vw;
    margin-top: 5vw;
    width: 100%;
  }

  .howtoentryinner.hagaki p:last-child {
    width: calc(100% - 2vw);
    margin-bottom: 1vw;
    width: 100%;
  }





  .howtoentryinner.hagaki p span.keshiin {
    letter-spacing: -0.05em;
    display: block;
    margin-bottom: 2vw;
  }



  .award dd>ul {
    margin-top: 2.5vw;
    margin-bottom: 2.5vw;
    font-size: calc(1.5vw * 2.4);
  }

  .award dd>ul li {
    padding-left: 3vw;
  }

  .award dd>ul li::before {
    content: "●";
    font-size: 2vw;
  }

  .ofurosenryupage .box.entry .entrybox .entry-points dl.PastAwardWinningWorks dt p span {
    text-align: center;
    margin: 0 auto;
  }

  .PastAwardWinningWorks dd div img {
    width: 100%;
  }

  .judging img {
    max-width: 15vw;
    text-align: center;
    margin: 0 auto;
    display: flex;
  }

  .ofurosenryupage .box.entry .entrybox .entry-points dl.judging dd p.iincho {
    text-align: center;
    margin: 0 auto;
  }

  .askbox .ask {
    font-size: calc(1.5vw * 2.4);
    margin-top: 0.5vw;
    padding-bottom: 7.5vw;
  }

  .askbox .__hosoku__ {
    font-size: calc(1.3vw * 2);
  }

}

/* ------------------------------------------------------
 *  ------------------------------------------------------
 * -------------------------------------------------------
 */
.ofurosenryupage .box.entry .entrynotebox {
  margin: 60px auto 0;
  text-align: center;
  /*  max-width: 874px;*/
  width: 100%;
}

.ofurosenryupage .box.entry .entrynotebox>h1 {
  font-size: 18px;
  /*    padding-top: 30px;*/
  padding-bottom: 30px;
  color: #505050;
}

.ofurosenryupage .box.entry .entrynotebox .entry-note {
  text-align: left;
  color: #505050;
  padding-left: 11%;
  padding-right: 11%;
}

.ofurosenryupage .box.entry .entrynotebox .entry-note dl+dl {
  margin-top: 30px;
}

.ofurosenryupage .box.entry .entrynotebox .entry-note dl dd>ul>li {
  text-indent: -1em;
  padding-left: 1em;
}

.entry-justbefore p {
  margin-top: 30px;
}

.privacy-lead-copy {
  text-align: center;
}

.privacy_element_frame {
  max-width: 874px;
  max-width: 100%;
}

.privacy_element_frame .par.lead {
  font-size: 100%;
}

/* --------------------------------------------------
 * 
 * 
 * 
 * --------------------------------------------------
 */
.btn-boxs {
  text-align: center;
  margin: 50px auto 85px;
}

.btn-boxs>p {
  font-weight: 700;
  font-family: 'Noto Sans JP', sans-serif;
  margin-bottom: .5em;
  font-size: 1.374570447em;
}

.btn-boxs a {
  width: 100%;
  width: 82.4742268vw;
  text-align: center;
  margin: 0 auto;
  padding: 23px 0;
  display: block;
  cursor: pointer;
  color: #FFF;
  letter-spacing: 0.25em;
  box-sizing: border-box;
  font-family: 'Noto Sans JP', sans-serif;
  font-size: 28px;
  font-size: 2vw;
  background: rgba(0, 57, 164, 1);
  text-decoration: none;
}

.btn-boxs a.hover,
.btn-boxs a:hover {
  /*  background : rgba(228, 0, 127, 0.8) ;*/
  background: rgba(0, 57, 164, 0.8);
  cursor: pointer;
  text-decoration: none;
}

.btn-box a:focus {
  text-decoration: none;
}

.btn-boxs a.campreturnBtn {
  width: 75%;
  text-align: center;
  margin: 3.5% auto 0;
  background: rgba(180, 180, 180, 1);
}

.btn-boxs a.campreturnBtn.hover,
.btn-boxs a.campreturnBtn:hover {
  background: rgba(180, 180, 180, .9);
  cursor: pointer;
  text-decoration: none;
}


@media screen and (max-width: 1024px) {
  .ofurosenryupage .box.entry .entrynotebox .entry-note {
    padding-left: 4%;
    padding-right: 4%;
  }

  .btn-boxs a {
    font-size: 5vw;
  }
}

.btn-boxs>p.uketukemessage {
  color: #ff8d00;
  font-size: 24px;
}

@media screen and (max-width: 640px) {
  .btn-boxs>p.uketukemessage {
    font-size: calc(3.0vw * 1.5);
  }
}

/*



--------------------------------------

resultsenryu2021

--------------------------------------
*/
.box.first.resultsenryu2021 {
  max-width: 980px;
  margin: 0 auto;
  padding: 2vw 0 1.5vw;
}

._rs2021_ .inner div>img {
  display: block;
  width: 100%;
  height: auto;
}

._rs2021_ .inner div .movieblock {
  background: url("bk.png") repeat-y center top;
  background-size: 100% auto;
  padding-bottom: 65px;
}

._rs2021_ .inner div .movieblock li .__mbox__ {
  display: flex;
  align-items: flex-start;
  align-items: center;
  border: 3px solid #b1b1b1;
  box-shadow: 2px 4px 0px 0px rgba(10, 10, 10, 0.15);
  padding: 0;
  justify-content: space-between;
  margin-left: 14%;
  margin-right: 14%;
  padding-right: 2%;
  padding-top: 2.5%;
  padding-bottom: 2.5%;
}

._rs2021_ .inner div .movieblock li+li {
  margin-top: 25px;
}

._rs2021_ .inner div .movieblock li .__mbox__ img {
  max-width: 496px;
  width: 100%;
  width: 70%;
  height: auto;
}

.__vb_furosenryu2021 {
  max-width: 220px;
  text-align: center;
  clear: both;
  width: 100%;
  display: block;
  width: 30%;
}

.video-container {
  position: relative;
  padding-bottom: 56.25%;
  height: 0;
  overflow: hidden;
  margin: auto;
  text-align: center;
}

.video-container video {
  width: 100%;
  display: block;
}

.video-container iframe {
  margin: auto;
  text-align: center;
  max-height: 100%;
  max-width: 100%;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width: 100%;
  height: 100%;
}

@media screen and (max-width: 640px) {
  ._rs2021_ .inner div .movieblock {
    background: url("bk_sp.png") repeat-y 100% auto center top;
  }

  ._rs2021_ .inner div .movieblock li .__mbox__ {
    display: flex;
    align-items: flex-start;
    align-items: center;
    flex-direction: column;
    border: 3px solid #b1b1b1;
    box-shadow: 2px 4px 0px 0px rgba(10, 10, 10, 0.15);
    padding: 0;
    justify-content: space-between;
    margin-left: 3.24%;
    margin-right: 3.24%;
    padding-right: 0;
    padding-top: 5.5%;
    padding-bottom: 1.5%;
  }

  ._rs2021_ .inner div .movieblock li+li {
    margin-top: 40px;
  }

  ._rs2021_ .inner div .movieblock li .__mbox__ img {
    order: 2;
    width: 100%;
  }

  ._rs2021_ .inner div .movieblock li .__mbox__ .__vb_furosenryu2021 {
    order: 1;
    width: 100%;
    max-width: 460px;
  }
}