@charset "utf-8";

/* 
stylesheet about
202009
*/

section h2 {
  padding: 0;
  text-align: center;
}
section h2 p {
  font-size: 24px;
  font-weight: 700;
  line-height: 1em;
}
section h2 span {
  display: block;
  font-weight: 400;
  font-size: 14px;
  margin: 10px 0 0 0;
}

/* mainVisual */
.mainVisual {
  position: relative;
  padding: 162px 0 0 0;
}
.mainVisual .inner {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.mainVisual .txSet {
  width: 50%;
  padding: 0 10px 60px 70px;
}
.mainVisual h1 {
  margin: 10px 0 0 0;
}
.mainVisual h1 p {
  position: relative;
  margin: 0 0 15px 0;
  font-family: 'Montserrat', sans-serif;
  font-size: 60px;
  font-weight: 700;
  line-height: 1em;
  letter-spacing: 0.16em;
}
.mainVisual h1 span {
  font-size: 22px;
  line-height: 1em;
  font-weight: 400;
  letter-spacing: 0.12em;
}
.mainVisual .txSet .tx {
  margin-top: 2em;
  font-size: 17px;
}
.mainVisual .img {
  width: 32%;
  font-size: 0;
}

@media only screen and (max-width: 1120px) {
  .mainVisual .inner {
    align-items: flex-end;
  }
  .mainVisual .txSet {
    width: 65%;
    padding: 30px 10px 50px 50px;
  }
}

@media only screen and (max-width: 800px) {
  .mainVisual {
    padding: 8% 0 0 0;
  }
  .mainVisual .inner {
    display: block;
  }
  .mainVisual .txSet {
    width: 100%;
    padding: 0;
    margin: 0 0 8% 0;
  }
  .mainVisual h1 {
    margin: 0;
  }
  .mainVisual h1 p {
    margin: 0 0 2% 0;
    font-size: 40px;
  }
  .mainVisual h1 span {
    font-size: 18px;
  }
  .mainVisual .txSet .tx {
    margin-top: 2em;
    font-size: 14px;
  }
  .mainVisual .txSet .tx br {
    display: none;
  }
  .mainVisual .img {
    width: 50%;
    margin: 0 auto;
  }
}

/* about */
.about {
  padding: 75px 0 90px 0;
  background: #05a699 url("../img/about/about_bg2.png") left bottom no-repeat;
  background-size: 260px;
}
.about .inner {
  padding: 80px 70px 66px 70px;
    background: #cdedeb;
}
.about .tx p {
  line-height: 2.2em;
  margin: 0 0 5% 0;
}
.about .tx p:last-child {
  margin: 0;
}
.about a {
  color: #cd962a;
  line-height: 1.5;
  text-decoration: underline;
  word-break: break-all;
}
.about a:hover {
  color: #f8bc33;
  text-decoration: none;
}

@media only screen and (max-width: 800px) {
  .about {
    padding: 10% 0;
    background-size: 130px;
  }
  .about .inner {
    padding: 6%;
  }
}

/* outline */
.outline {
  padding: 90px 0 75px;
  background-color: #fff;
  background-image: url("../img/about/about_bg3.png"),url("../img/about/about_bg4.png");
  background-position: left top,right bottom;
  background-repeat: no-repeat,no-repeat;
  background-size: 202px,260px;
}
.outline h2 {
  margin: 0 0 74px 0;
}
.outline-sub-ttl p {
    font-family: 'Montserrat', sans-serif;
    font-size: 42px;
    font-weight: 700;
    line-height: 1;
    margin: 0;
}
.outline-sub-ttl span {
    font-size: 16px;
}

.outline .inner {
  width: 90%;
  max-width: 742px;
  margin: 0 auto;
  /*background: rgba(255,255,255,.8);*/
}
.outline h3 {
  margin: 0 0 40px 0;
  font-size: 106%;
}
.outline .tx {
  margin: 0 0 36px 0;
  line-height: 2.2em;
}
.outline .caption {
    text-indent: -1em;
    padding-left: 1em;
    font-size: 88.5%;
    line-height: 1.8em;
}
.outline .caption p {
  text-indent: -1em;
  padding-left: 1em;
  font-size: 94%;
}
.outline .btn_guidelines {
  position: relative;
  display: block;
  width: 100%;
  max-width: 274px;
  height: 50px;
  margin: 50px auto 80px;
  color: #fff;
  text-align: center;
  line-height: 50px;
  border-radius: 25px;
  background: #f6ab00;
}
.outline .btn_guidelines::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 25px;
  width: 12px;
  height: 8px;
  margin: -4px 0 0;
  background: url("../img/common/btn_arrow.svg") center center no-repeat;
  background-size: 100%;
  transition: .25s;
}
.outline .btn_guidelines:hover {
  background: #f8bc33;
}
.outline .btn_guidelines:hover::after {
  right: 15px;
}
.outline-details {
  display: flex;
}
.outline-details dt {
  width: 8%;
  margin-top: 10px;
  font-weight: 500;
}
.outline-details dd {
  width: 92%;
  margin-top: 10px;
  font-weight: 500;
}
.outline-details.last {
    margin-bottom: 10%;
}

.outline-details-overview {
    display: flex;
    margin-bottom: 3.3em;
}
.outline-details-overview dt {
    width: 6em;
    margin-top: 3.3em;
    font-size: 106%;
    font-weight: 700;
}
.outline-details-overview dt:first-of-type, .outline-details-overview dd:first-of-type {
    margin-top: 0;
}
.outline-details-overview .details {
    margin-top: 1.5em;
}
.outline-details-overview .details-number {
    margin: 1.5em 0 2.5em;
    font-weight: 500;
}
.outline-details-overview dd {
    width: calc(100% - 6em);
    margin-top: 3.3em;
    font-size: 106%;
    font-weight: 700;
}
.outline-details-overview dd .caption {
    text-indent: -1em;
    padding-left: 1em;
    font-size: 88.5%;
    line-height: 1.8em;
    font-weight: 500;
}
.outline-details-overview dd .detail {
    margin-top: 1.25em;
    font-size: 100%;
    font-weight: 500;
}

.outline .tx a {
  display: flex;
  align-items: center;
  margin: 0 0 20px;
  color: #cd962a;
  line-height: 1.5;
  text-decoration: underline;
}
.outline-details-overview .tx a {
    letter-spacing: -.01em;
}
.outline .tx a::before {
  content: "";
  display: inline-block;
  width: 8px;
  height: 9px;
  margin-right: 12px;
  background: url("../img/common/a_headarrow.svg") center center no-repeat;
  background-size: 100% auto;
}
.outline .tx a.pdf::after {
  content: "";
  display: inline-block;
  width: 22px;
  height: 26px;
  margin-left: 10px;
  background: url("../img/common/icon-pdf.svg") center center no-repeat;
  background-size: 100% auto;
}
.outline .tx a.zip::after {
    content: "";
    display: inline-block;
    width: 22px;
    height: 26px;
    margin-left: 10px;
    background: url("../img/common/icon-zip.svg") center center no-repeat;
    background-size: 100% auto;
}

@media only screen and (max-width: 800px) {
  .outline {
    padding: 10% 0;
    background-size: 101px,130px;
  }
  .outline h2 {
    margin: 0 0 6% 0;
  }
  .outline h3 {
    margin: 0 0 5% 0;
  }
  .outline .tx {
    margin: 0 0 5% 0;
  }
  .outline .caption {
    margin: 0 0 5% 0;
  }
  .outline .btn_guidelines {
    margin: 5% auto 8% auto;
  }
  .outline .btn_guidelines:hover::after {
    right: 15px;
  }
    
    .outline-details,
    .outline-details-overview {
        flex-wrap: wrap;
    }
    .outline-details dt,
    .outline-details-overview dt {
        width: 100%;
    }
    .outline-details dd,
    .outline-details-overview dd {
        width: 100%;
        margin-top: 0;
    }
    .outline-details-overview dd .caption {
        margin: 0;
    }
    .outline-details-overview .details.tx {
        margin-top: 1.25em;
    }
}


/* judge-member */
.judge-member {
  padding: 80px 0 90px;
  background-color: #05a699;
  background-image: url("../img/about/about_bg5.png"),url("../img/about/about_bg6.png"),url("../img/about/about_bg7.png");
  background-position: right top,left center,right bottom;
  background-repeat: no-repeat,no-repeat,no-repeat;
  background-size: 202px,260px,260px;
}
.judge-member .inner {
  margin-top: 30px;
  padding: 70px 50px 63px 50px;
  background: #cdedeb;
}
.judge-member .inner:first-of-type {
  margin-top: 0;
}
.judge-member h2 {
  margin: 0 0 20px 0;
}
.judge-member .leaf {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  width: 90%;
  max-width: 742px;
  margin: 0 auto;
  padding: 40px 0;
  border-top: 2px solid #05a699;
}
.judge-member .leaf:first-of-type {
  padding: 0 0 40px 0;
  border-top: none;
}
.judge-member .leaf:last-of-type {
  padding: 40px 0 0 0;
}
.judge-member .leaf.one {
  padding: 0;
}
.judge-member .leaf .name {
  width: 100%;
  margin: 0 0 1em;
}
.judge-member .leaf .name h3 {
  font-size: 17px;
}
.judge-member .leaf .prof {
  width: 76%;
}
.judge-member .leaf .prof p {
  margin: 0 0 10px 0;
  font-size: 15px;
}
.judge-member .leaf .ph {
  width: 18%;
}
.judge-member .leaf a {
  color: #cd962a;
  line-height: 1.5;
  text-decoration: underline;
}
.judge-member .leaf a:hover {
  color: #f8bc33;
  text-decoration: none;
}

@media only screen and (max-width: 800px) {
  .judge-member {
      padding: 10% 0;
      background-size: 101px,130px,130px;
  }
  .judge-member .inner {
    margin-top: 4%;
    padding: 10% 4%;
  }
  .judge-member .inner:first-of-type {
    margin-top: 0;
  }
  .judge-member h2 {
    margin: 0 0 3% 0;
  }
  .judge-member .leaf {
    display: block;
    width: 100%;
    padding: 8% 0;
    border-top: 2px solid #05a699;
  }
  .judge-member .leaf:first-of-type {
    padding: 0 0 8% 0;
  }
  .judge-member .leaf:last-of-type {
    padding: 8% 0 0 0;
  }
  .judge-member .leaf .name {
    width: 100%;
    margin: 0 0 1em;
  }
  .judge-member .leaf .prof {
    width: 100%;
    margin: 0 0 6% 0;
  }
  .judge-member .leaf .prof p {
    margin: 0 0 2% 0;
    font-size: 13px;
  }
  .judge-member .leaf .ph {
    width: 40%;
    margin: 0 auto;
  }
}


/* judgement */
.judgement {
  padding: 80px 0 60px 0;
  background-color: #fff;
  background-image: url("../img/about/about_bg8.png"),url("../img/about/about_bg9.png");
  background-position: right top,left bottom;
  background-repeat: no-repeat,no-repeat;
  background-size: 202px,260px;
}
.judgement .inner {
  margin: 28px auto;
  padding: 46px;
  background: #e8f2ef;
}
.judgement .inner2 {
  width: 90%;
  max-width: 742px;
  margin: 0 auto;
}
.judgement h3 {
  width: 8em;
  height: 33px;
  margin: 0 auto 25px;
  text-align: center;
  line-height: 30px;
  color: #fff;
  background:
      linear-gradient(45deg,  transparent 0, #da2727 0),
      linear-gradient(135deg, transparent 3px, #da2727 3px),
      linear-gradient(225deg, transparent 0, #da2727 0),
      linear-gradient(315deg, transparent 3px, #da2727 3px);
  background-position: bottom left, top left, top right, bottom right;
  background-size: 50% 50%;
  background-repeat: no-repeat;
}
.judgement .catch {
  font-weight: bold;
  margin: 0 0 24px 0;
  line-height: 2.2em;
}
.judgement .catch:last-child {
  margin: 0;
}
.judgement .list {
  margin: 0 0 25px 0;
}
.judgement .list p {
  margin: 0 0 6px 0;
}
.judgement .list p:last-child {
  margin: 0;
}
.judgement .list p span {
  color: #da2727;
}
.judgement dl {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.judgement dt {
  width: calc(100% - 5em);
  padding: 16px 0;
  border-top: 2px solid #fff;
  font-weight: bold;
}
.judgement dt br {
  display: none;
}
.judgement dd {
  width: 5em;
  padding: 16px 0;
  text-align: right;
  border-top: 2px solid #fff;
  font-weight: bold;
}

.judgement dt:first-of-type,
.judgement dd:first-of-type {
  border: none;
  padding-top: 0;
}

@media only screen and (max-width: 800px) {
  .judgement {
    padding: 10% 0;
    background-size: 101px,130px;
  }
  .judgement .inner {
    margin: 5% auto 0 auto;
    padding: 7%;
  }
  .judgement .inner2 {
    width: 100%;
  }
  .judgement h3 {
    margin: 0 auto 6% auto;
  }
  .judgement .catch {
    margin: 0 0 3% 0;
  }
  .judgement .catch:last-child {
    margin: 0;
  }
  .judgement .catch br {
    display: none;
  }
  .judgement .list {
    margin: 0 0 3% 0;
  }
  .judgement .list p {
    text-indent: -1em;
    padding: 0 0 0 1em;
  }

  .judgement dt br {
    display: block;
  }
}




/* guideline */
.guideline {
  padding: 80px 0 0 0;
  background: #05a699 url("../img/about/about_bg3.png") left bottom no-repeat;
  background-size: 202px;
}
.guideline .inner {
  padding-bottom: 100px;
}
.guideline .inner2 {
  padding: 77px 40px 72px;
  background: #9bdbd6;
}
.guideline .tx {
  width: 90%;
  max-width: 742px;
  margin: 0 auto;
}
.guideline .tx p {
  margin: 0 0 5% 0;
  line-height: 2.1;
  font-weight: 400;
}
.guideline .tx p:last-child {
  margin: 0;
}
.guideline .tx span {
  font-weight: 700;
}
.guideline .btn_more {
  position: relative;
  display: block;
  width: 100%;
  max-width: 240px;
  height: 50px;
  margin: 60px auto 0;
  color: #fff;
  text-align: center;
  line-height: 50px;
  border-radius: 25px;
  background: #f6ab00;
  z-index: 3;
}
.guideline .btn_more::after {
  content: "";
  position: absolute;
  top: 50%;
  right: 25px;
  width: 12px;
  height: 8px;
  margin: -4px 0 0;
  background: url("../img/common/btn_arrow.svg") center center no-repeat;
  background-size: 100%;
  transition: .25s;
}
.guideline .btn_more:hover {
  background: #f8bc33;
}
.guideline .btn_more:hover::after {
  right: 15px;
}
.guideline .img {
  position: absolute;
  bottom: 0;
  right: 5%;
  width: 25%;
  font-size: 0;
  z-index: 1;
}

@media only screen and (max-width: 1000px) {
  .guideline {
    padding: 80px 0 0 0;
  }
  .guideline .inner {
    padding-bottom: 100px;
  }
  .guideline .img {
    right: 3%;
    width: 27%;
  }
}

@media only screen and (max-width: 800px) {
  .guideline {
    padding: 10% 0 0 0;
    background-size: 100px;
  }
  .guideline .inner {
    padding-bottom: 10%;
  }
  .guideline .inner2 {
    padding: 6% 6% 15% 6%;
  }
  .guideline .tx {
    width: 100%;
  }
  .guideline .tx p {
    margin: 0 0 1em 0;
  }
  .guideline .tx p:last-child {
    margin: 0;
  }
  .guideline .btn_more {
    margin: 3% auto 0;
  }
  .guideline .btn_more:hover {
    background: #f8bc33;
  }
  .guideline .btn_more:hover::after {
    right: 15px;
  }
  .guideline .img {
    position: absolute;
    bottom: 0;
    right: 5%;
    width: 25%;
    font-size: 0;
  }
  
}

@media only screen and (max-width: 600px) {
  .guideline .img {
    width: 32%;
  }
}

@media only screen and (max-width: 400px) {
  .guideline .img {
    width: 45%;
  }
}


/* inquiry */
.inquiry {
  padding: 80px 0;
  background: #fff22c url("../img/about/about_bg10.png") right bottom no-repeat;
  background-size: 260px;
}
.inquiry .inner {
  padding: 80px 50px;
  background: #fff;
}
.inquiry .inner2 {
  width: 90%;
  max-width: 742px;
  margin: 0 auto;
}
.inquiry h2 p {
  font-size: 22px;
  font-weight: 400;
  margin: 0 0 40px 0;
}
.inquiry .secretariat {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
}
.inquiry .secretariat .tx {
  margin-right: 40px;
  font-size: 18px;
  font-weight: bold;
}
.inquiry .secretariat .logo {
  width: 398px;
}
.inquiry .address {
  margin-top: 1em;
}
.inquiry .address a {
  color: #cd962a;
  line-height: 1.5;
  text-decoration: underline;
}
.inquiry .address a:hover {
  color: #f8bc33;
  text-decoration: none;
}

@media only screen and (max-width: 800px) {
  .inquiry {
    padding: 10% 0;
    background-size: 130px;
  }
  .inquiry .inner {
    padding: 8%;
  }
  .inquiry .inner2 {
    width: 100%;
  }
  .inquiry h2 p {
    font-size: 24px;
    margin: 0 0 7% 0;
  }
  .inquiry .secretariat {
    display: block;
  }
  .inquiry .secretariat .tx {
    margin: 0 0 7% 0;
    font-size: 16px;
    text-align: center;
  }
  .inquiry .secretariat .logo {
    width: 100%;
  }
  .inquiry .address {
    margin-top: 1em;
  }
  .inquiry .address a {
    color: #cd962a;
    line-height: 1.5;
    text-decoration: underline;
  }
  .inquiry .address a:hover {
    color: #f8bc33;
    text-decoration: none;
  }
}

