@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/ 
v2.0 | 20110126
License: none (public domain)
*/
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
  display: block;
}
body {
  line-height: 1;
}
ol, ul {
  list-style: none;
}
blockquote, q {
  quotes: none;
}
blockquote:before, blockquote:after, q:before, q:after {
  content: '';
  content: none;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}

/* base
   ========================================================================== */
html {
  -webkit-text-size-adjust: 100%;
  font-size: 62.5%;
}

body {
  color: #181818;
  font-family: '-apple-system', 'BlinkMacSystemFont', '游ゴシック体', 'YuGothic', '游ゴシック Medium', 'Yu Gothic Medium', sans-serif;
  font-size: 1.6rem;
  line-height: 1.9;
  background: linear-gradient(0deg, rgba(242,255,199,1) 30%, rgba(255,255,255,1) 92%, rgba(255,255,255,0) 100%),url(../image/back_body.webp) no-repeat top center,rgb(242,255,199);
  background-size: auto, 180% auto,auto;
}
@media only screen and (min-width: 768px) {
  body {
    background: linear-gradient(0deg, rgba(242,255,199,1) 30%, rgba(255,255,255,1) 80%, rgba(255,255,255,0.2) 90%, rgba(255,255,255,0) 100%),url(../image/back_body.webp) no-repeat top center,rgb(242,255,199);
    background-size: auto, fixed ,auto;
  }
}

header, div, section, p, img, li, footer {
  -moz-box-sizing: border-box;
  -webkit-box-sizing: border-box;
  -o-box-sizing: border-box;
  -ms-box-sizing: border-box;
  box-sizing: border-box;
}
img {
  display: block;
  max-width: 100%;
  height: auto;
}
.bold {
  font-weight: bold;
}
.small {
  font-size: 1.4rem;
}
.large {
  font-size: 1.8rem;
  line-height: 1.75;
}
.red {
  font-weight: bold;
	color: #D70F12;
}
.box_line {
  border:dotted 1px rgba(166, 166, 166, 1);
  margin: 2% auto;
	padding: 2%;
  border-radius: 4px;
}
a {
  color: #508f33;
}
a:visited {
  color: #689fca;
}
a:hover, a:active {
  color: #689fca;
}

/* header ============= */
header {
  margin: 0 auto 3%;
}
header h1 img {
  margin: 4% auto 2%;
  width: 90%;
  max-width: 960px;
}
header h2 {
  width: 280px;
	margin: 0 auto 0;
	padding: 1.2rem;
	text-align: center;
	border-top: solid 2px #006846;
	border-bottom: solid 2px #006846;
	color: #006846;
  font-size: 2.2rem;
	font-weight: bold;
	line-height: 1.2;
	text-shadow: 0px 0px 10px rgba(255, 255, 255, 1);
}
header h2 > span {
  font-size: 1.8rem;
}
@media only screen and (min-width: 540px) {
  header h2 { width: 360px; font-size: 3.2rem; }
  header h2 > span { font-size: 2.4rem; }
}


/* main ============= */
main {
  width: 90%;
  max-width: 1220px;
  margin: 0 auto 4%;
  background-color: #fff;
  padding: 3%;
  display: block;
}

/* catch ============= */
.catch {
  width: 100%;
  margin: 0 auto 4%;
  color: #535353;
  font-size: 1.7rem;
  line-height: 1.9;
  font-weight: bold;
}
.catch p.add {
  margin-top: 1.2em;
}

/* wrap ============= */
.wrap {
  display: flex;
	flex-wrap: wrap;
	max-width: 1220px;
	margin: 0 auto ;	
}
.measures {
  width: 100%;
  margin: 0 auto 4%;
  padding: 3%;
  color: #e60012;
  font-size: 1.5rem;
  line-height: 1.7;
	border: 1px solid #e60012;
}

/* col ============= */
.col-a {
  width: 100%;
}
.col-b {
  width: 100%;
  margin-top: 5%;
}
.col-a img {
  width: 100%;
	margin: 0 auto 3%;
}
@media only screen and (min-width: 768px) {
  .wrap { display: flex; justify-content: space-between; }
  .col-b { width: 47.5%; margin-top: 0; }
  .col-a { width: 47.5%; }
}

/* h ============= */
main h1 {
  max-width: 320px;
  margin: 9% auto 3%;
  font-size: 2.4rem;
  letter-spacing: 0.2rem;
	font-weight: bold;
	text-align: center;
	border-top: 3px double #999;
	border-bottom: 3px double #999;
}
main h2 {
  margin: 4% 0 2%;
  padding: 0 0 0 2%;
  color: rgba(0,106,70,1);
  font-size: 1.8rem;
  letter-spacing: 0.2rem;
  border-left: 5px solid rgba(0,106,70,1);
  /*border-bottom: 1px solid rgba(0,106,70,1);*/
  font-weight: bold;
  background: linear-gradient(90deg, rgba(221,255,155,1) 100% ,rgba(245,255,236,1) 0%);
}
main h2:first-of-type {
  margin: 0 0 2%;
}
main h3 {
	display: inline-block;
  margin: 0.8rem 0 0.2rem;
  letter-spacing: 0.1rem;
  font-weight: bold;
}
.line_yellow {
  background: linear-gradient(180deg,rgba(255,255,255,1) 0% ,rgba(255,255,255,1) 60% , rgba(255,228,0,1) 60% ,rgba(255,228,0,1) 100%);
}
footer h2 {
  margin: 4% 0 2%;
  padding: 0;
  font-size: 1.8rem;
  letter-spacing: 0.2rem;
	font-weight: bold;
	border-bottom: 1px solid #fff;
}
.first {
  margin: 0 0 2%;
  padding: 0 0 0 2%;
  font-size: 1.8rem;
  letter-spacing: 0.2rem;
}

/* prize ============= */
img.prize {
  margin-bottom: 4%;
}

/* cast ============= */
.cast {
  display: flex;
	justify-content: center;
	margin-bottom: 3%;
}
.l {
	width: 40%;
}
.r {
	width: 40%;
}

/* btn ============= */
.btn {
  margin: 3% 0;
  padding: 1.2rem 1.5em;
  display: block;
  width: 260px;
  color: #FFF;
  text-decoration: none;
  text-align: left;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
	font-weight: bold;
	border-radius: 40px;
}
.btn_link { 
	background: #bd0211 url("../image/icon_go_web.svg") no-repeat right 20px center;
}
.btn_fax { 
	background: #006946 url("../image/icon_dl_fax.svg") no-repeat right 20px center;
}
.btn_link:hover,
.btn_fax:hover {
  background-color: #222222;
	color: #fff;
}
.btn:visited {
	color: #fff;
}

/* bn ============= */
.bn {
  display: flex;
}
.bn a {
  margin-top: 2%;
  margin-right: 3%;
	border: 1px solid;
}

/* footer ============= */
footer {
  background: rgb(0,106,70);
  background: linear-gradient(0deg, rgba(0,106,70,1) 0%, rgba(0,158,67,1) 100%);
  color: #FFF;
  padding: 2rem 3%;
}
address {
  padding: 2rem 0 0;
  font-size: 1.2rem;
  line-height: 20px;
	text-align: center;
}
