@charset "UTF-8";
@font-face {
  font-display: swap;
	font-family: "Lato-Italic";
	src: url("/fonts/Lato-Italic.ttf") format("truetype");
}


/* ==========================================================================
   common css
   ========================================================================== */
main .br { display: block; }
main .split { display: inline-block; }
/* ==========================================================================
   content
   ========================================================================== */
#campaign {
  max-width: 960px;
  margin: 0 auto;
  padding: 0;
}
main h2 {
  margin: 0 auto 40px;
  padding: 12px;
}
main h2 img.subtitle {
	display: block;
	margin: 4px auto 0;
}
main .contentWrapper:nth-of-type(1) { margin-bottom: 80px; }
main h3 {
  margin: 0 auto 10px;
  padding: 12px 20px;
  text-align: left;
  font-size: 18px;
  color: #fff;
  background-color: #038de1;
}
main h3.endCampaign {
	margin: 72px auto 10px;
}
main dl {
  margin-bottom: 10px;
  padding: 20px 0;
  letter-spacing: 0;
  font-size: 0;
  color: #0e0e0e;
  background: #fff;
}
main a dl:hover { opacity: 0.6; }
main dt,
main dd {
  display: inline-block;
  vertical-align: middle;
  letter-spacing: 0.1em;
}
main dt { width: 300px; }
 main dd {
  width: 660px;
  padding-right: 30px;
  text-align: left;
  font-size: 14px;
}
main p { margin-bottom: 0; }
main dd .underLine,
main dd .marginSp,
main dd .periodWrap,
main dd .boldTitle { display: block; }
main dd .underLine {
  margin-bottom: 6px;
  text-decoration: underline;
  font-weight: bold;
  font-size: 20px;
  color: #038de1;
}
main .endCampaign dd span.underLine {
  text-decoration: none;
  color: #0e0e0e;
}
main .endCampaign a dd span.underLine {
  text-decoration: underline;
  color: #038de1;
}
main dd .underLine .split { text-decoration: underline; }
main dd .marginSp { margin-bottom: 16px; }
main dd .periodWrap { font-weight: bold; font-size:16px; }
main dd .period {
  margin-right: 12px;
  padding: 4px 8px 3px;
  font-size: 12px;
  background: #f1bb0b;
}
main dd .boldTitle {
  margin-bottom: 6px;
  font-weight: bold;
  font-size: 20px;
}

.contentWrapper img {
    border: none;
    vertical-align: middle;
    max-width: 60%;
}

@media screen and (max-width: 767px) {
  #campaign { padding: 0 12px; }
  main h2 {
    margin-bottom: 20px;
  }
  main h3 {
    padding: 12px 0 11px;
    text-align: center;
    font-size: 14px;
  }
  main h3.endCampaign {
    margin: 52px auto 10px;
  }
  main dt,
  main dd { vertical-align: top; }
  main dt { width: 40%; }
  main dd {
    width: 60%;
    max-width: 467px;
    padding: 0 7px;
  }
  main dd .underLine,
  main dd .boldTitle {
	margin-top: 13px;
    margin-bottom: 9px;
    text-align: left;
    font-size: 13px;
  }
	
	.contentWrapper img {
    border: none;
    vertical-align: middle;
    max-width: 100%;
}
	main dd .marginSp {
    margin-bottom: 10px;
}
}


@media screen and (max-width: 719px) {
  main dt img {
    width: 84%;
    max-width: 200px;
  }
  main dd .periodWrap { text-align: left; }
  main dd .period {
    display: block;
    margin: 0 0 6px;
  }
}


@media screen and (max-width: 583px) {
  main h3 { text-align: center; }
  main dt,
  main dd {

    max-width: 480px;
  }
  main dt { margin-bottom: 20px; }
  main dd {
    max-width: 500px;
    font-size: 11px;
  }
  main dd .periodWrap { font-size: 13px; }
  main dd .period {
    max-width: 380px;
    margin: 0px 0px 6px 0px;
    font-size: 11px;
  }
}


@media screen and (max-width: 479px) {
  main dl { padding: 0 0 20px; }
  main dt img {
    width: 90%;
    padding-top: 10%;
	padding-left: 4%;
    max-width: none;
  }
  main dd .period { max-width: 100%; }
  main dd .periodWrap { font-size: 12px; }
}


/* nolink */
main dd .underLinenone {
  text-decoration: none;
  color: #0e0e0e;
}


/* img to text */
.com-subtitle.is-en {
  display: block;
  font-family: Lato-Italic;
}
.com-section-head .is-en {
  color: #038de1;
  font-size: 18px;
  letter-spacing: 0.25em;
  margin: 8px auto 0;
}
@media screen and (max-width: 767px) {
  .com-section-head .is-en {
    font-size: 12px;
    margin: 3px auto 0;
  }
}
