@charset "UTF-8";
/* 初期化 */
@import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP&display=swap&subset=japanese");
* {
  box-sizing: border-box;
  line-break: strict;
  word-break: break-all;
  overflow-wrap: break-word;
  -webkit-text-size-adjust: 100%;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale; }

HTML,
BODY {
  margin: 0 0 0 0;
  padding: 0 0 0 0;
  height: 100%;
  min-height: 100%; }

HTML {
  font-size: 62.5%; }

FIGURE {
  margin: 0 0 0 0;
  padding: 0 0 0 0; }

H1, H2, H3, H4, H5, H6,
P,
BLOCKQUOTE,
DL, DT, DD,
UL,
OL,
LI {
  margin: 0 0 0 0;
  padding: 0 0 0 0; }

IMG {
  border: 0;
  max-width: 100%;
  height: auto;
  vertical-align: top; }

CANVAS {
  vertical-align: bottom; }

A {
  -webkit-touch-callout: none; }

A,
A:link,
A:visited {
  text-decoration: none; }

A:hover,
A:focus {
  text-decoration: none; }

A:focus {
  outline: none; }

TABLE {
  border-collapse: collapse; }

ADDRESS,
CITE {
  font-style: normal; }

INPUT, TEXTAREA, SELECT {
  outline: none; }

INPUT,
SELECT,
BUTTON,
TEXTAREA {
  font-family: inherit;
  font-size: 100%;
  /* SELECTを装飾する場合は含める */
  /* */
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border-radius: 0; }

HEADER LI,
NAV LI,
FOOTER LI {
  list-style-type: none; }

HEADER A,
NAV A,
FOOTER A {
  text-decoration: none; }

@font-face {
  font-family: "FontAwesome";
  src: url("../font/fontawesome/fontawesome-webfont.eot?v=4.7.0");
  src: url("../font/fontawesome/fontawesome-webfont.eot?#iefix&v=4.7.0") format("embedded-opentype"), url("../font/fontawesome/fontawesome-webfont.woff2?v=4.7.0") format("woff2"), url("../font/fontawesome/fontawesome-webfont.woff?v=4.7.0") format("woff"), url("../font/fontawesome/fontawesome-webfont.ttf?v=4.7.0") format("truetype"), url("../font/fontawesome/fontawesome-webfont.svg?v=4.7.0#fontawesomeregular") format("svg");
  font-weight: normal;
  font-style: normal; }
.button {
  border: 1px solid black; }
  .button:not([disabled]):hover {
    border-width: 2px; }

.block {
  color: "#C20038"; }

BODY {
  position: relative;
  font-size: 16px;
  color: #232323;
  font-weight: 500;
  line-height: 26.24px;
  background-color: #FDFDFA; }

@media screen and (max-width: 640px) {
  BODY {
    @import url("https://fonts.googleapis.com/css?family=Noto+Serif+JP&display=swap&subset=japanese");
    font-family: Roboto, HiraKakuProN-W3, sans-serif;
    font-size: 1.5rem; } }
@media screen and (min-width: 481px) {
  BODY {
    font-family: "游ゴシック", "Yu Gothic", YuGothic, "ヒラギノ角ゴシック Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
    font-size: 16px; } }
A,
A:link,
A:visited {
  color: #00c2b9; }

A:hover,
A:focus {
  color: #ff3d45; }

/********* */
/* ボタン */
/********* */
.btn, .btn2, .btn3 {
  text-decoration: none;
  display: inline-block;
  line-height: 1em;
  -webkit-transition: all 0.2s;
  transition: all 0.2s; }
  .btn > SPAN, .btn2 > SPAN, .btn3 > SPAN {
    display: inline-block; }

.btn {
  color: #FFFFFF;
  background-color: #00c2b9;
  border: #00c2b9 1px solid;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }

.btn2 {
  color: #00c2b9;
  background-color: #FFFFFF;
  border: #00c2b9 1px solid;
  -webkit-border-radius: 4px;
  -moz-border-radius: 4px;
  border-radius: 4px; }

.btn3 {
  background-color: transparent; }

.btnS {
  padding: 6px 6px;
  font-size: 13.76px; }

.btnM {
  padding: 10px 10px;
  font-size: 16px; }

.btnL {
  padding: 10px 10px;
  font-size: 19.2px; }

@media all and (-ms-high-contrast: none) {
  /* IE　遊ゴシック調整 */
  .btnS {
    padding: 8px 6px 4px; }

  BUTTON.btnS {
    padding: 6px 6px 6px; }

  .btnM {
    padding: 12px 10px 8px; }

  BUTTON.btnM {
    padding: 10px 10px 10px; } }
.btn, A.btn, .btn2, A.btn2 {
  text-align: center; }

.btn, A.btn {
  color: #FFFFFF; }

.btn2, A.btn2 {
  color: #00c2b9; }

BUTTON.btn:hover, BUTTON.btn:focus, INPUT.btn:hover, INPUT.btn:focus, A.btn:hover, A.btn:focus {
  background-color: #00dbd1;
  border-color: #00dbd1;
  cursor: pointer; }

BUTTON.btn2:hover, BUTTON.btn2:focus, INPUT.btn2:hover, INPUT.btn2:focus, A.btn2:hover, A.btn2:focus {
  color: #FFFFFF;
  background-color: #00dbd1;
  border-color: #00dbd1;
  cursor: pointer; }

.btn_negative {
  background-color: #878787;
  border-color: #878787; }

.btn_caution {
  background-color: #CE0D0D;
  border-color: #CE0D0D; }

.btn_disable {
  background-color: #ABABAB !important;
  border-color: #ABABAB !important;
  color: #FFFFFF !important; }

.btn_externalLink SPAN::after {
  font-family: FontAwesome;
  content: ""; }

STRONG.btn {
  display: inline-block;
  margin-right: 4px;
  font-weight: 500;
  padding-top: 4px;
  padding-bottom: 4px;
  text-indent: 0; }

@media all and (-ms-high-contrast: none) {
  /* IE　遊ゴシック調整 */
  STRONG.btn {
    padding-top: 6px;
    padding-bottom: 2px; } }
.btn-block {
  display: block; }

NAV.btnArea {
  min-width: 1024px;
  width: 94%;
  margin: auto;
  text-align: right;
  margin-right: 8px;
  margin-bottom: 12px; }

DIV.btnArea, DIV.btnArea2set {
  clear: both;
  margin: auto;
  margin-bottom: 26.24px; }

.box_search DIV DIV.btnArea,
.box_search DIV DIV.btnArea2set {
  padding-top: 18px; }

TABLE + DIV.btnArea,
TABLE + DIV.btnArea2set {
  padding-top: 12px; }

/* ボタン1つ */
@media screen and (max-width: 480px) {
  DIV.btnArea {
    min-width: 16rem;
    width: 100%; } }
@media all and (min-width: 481px) {
  DIV.btnArea {
    min-width: 54px;
    width: 60%; } }
TD DIV.btnArea {
  margin: auto; }

DIV.btnArea A.btn,
DIV.btnArea INPUT.btn,
DIV.btnArea BUTTON.btn,
DIV.btnArea A.btn2,
DIV.btnArea INPUT.btn2,
DIV.btnArea BUTTON.btn2 {
  display: block;
  width: 100%; }

/* ボタン2つ */
@media screen and (max-width: 480px) {
  DIV.btnArea2set {
    width: 80%;
    overflow: hidden; }
    DIV.btnArea2set A.btn, DIV.btnArea2set INPUT.btn, DIV.btnArea2set BUTTON.btn, DIV.btnArea2set A.btn2, DIV.btnArea2set INPUT.btn2, DIV.btnArea2set BUTTON.btn2 {
      width: 44%;
      margin-left: 3%;
      margin-right: 3%;
      float: left; } }
@media all and (min-width: 481px) {
  DIV.btnArea2set {
    width: 62%;
    overflow: hidden; }
    DIV.btnArea2set A.btn, DIV.btnArea2set INPUT.btn, DIV.btnArea2set BUTTON.btn, DIV.btnArea2set A.btn2, DIV.btnArea2set INPUT.btn2, DIV.btnArea2set BUTTON.btn2 {
      width: 44%;
      margin-left: 3%;
      margin-right: 3%;
      float: left; } }
/**************************** */
/* レイアウト                  */
/**************************** */
#wrapBase {
  position: relative;
  height: auto !important;
  height: 100%;
  min-height: 100%;
  padding-bottom: 46px; }

@media screen and (max-width: 640px) {
  HEADER {
    position: fixed; } }
@media screen and (max-width: 960px) {
  HEADER {
    display: block;
    position: relative;
    width: 100%;
    min-width: 320px;
    height: 64px;
    z-index: 8000; }
    HEADER > DIV {
      width: 100%;
      height: 64px;
      margin: auto; } }
@media screen and (min-width: 968px) {
  HEADER {
    display: block;
    position: relative;
    width: 100%;
    height: 64px;
    z-index: 8000; }
    HEADER > DIV {
      min-width: 968px;
      width: 100%;
      max-width: 100%;
      height: 108px;
      margin: auto; } }
@media screen and (min-width: 641px) and (max-width: 960px) {
  HEADER {
    height: 64px; } }
@media screen and (max-width: 640px) {
  HEADER {
    display: block;
    position: fixed;
    width: 100%;
    min-width: 100%;
    top: 0;
    left: 0;
    height: 64px; } }
NAV#globalMainMenu {
  position: relative;
  z-index: 8900;
  margin: auto; }
  NAV#globalMainMenu > UL > LI {
    display: inline-block; }

@media screen and (min-width: 1159px) {
  NAV#globalMainMenu {
    width: calc(50% + 114px);
    height: 40px;
    margin-left: calc(50% - 114px);
    margin-top: -60px;
    margin-bottom: 36px; } }
@media screen and (min-width: 968px) and (max-width: 1158px) {
  NAV#globalMainMenu {
    margin-top: -96px;
    margin-left: 478px;
    width: calc(100vw - 478px);
    margin-bottom: 36px; } }
@media screen and (max-width: 960px) {
  NAV#globalMainMenu {
    width: 100%;
    position: fixed;
    top: 12px; }
    NAV#globalMainMenu > UL {
      margin-top: 62px; }
    NAV#globalMainMenu UL {
      display: flex;
      flex-wrap: wrap; }
      NAV#globalMainMenu UL LI {
        display: block;
        width: 50%; } }
#home #wrapContents {
  margin-top: 16px; }

#wrapContents {
  width: 1168px;
  margin: auto;
  margin-top: 26px;
  margin-bottom: 78.72px; }
  #wrapContents #wrapImageArea #topImage IMG {
    width: 100%;
    min-width: 960px;
    height: auto;
    margin: auto;
    margin-top: -112.24px;
    margin-bottom: 26.24px; }
  #wrapContents #wrapMainContentsArea {
    width: 100%;
    margin: auto; }
  #wrapContents MAIN {
    margin-bottom: 52.48px; }

FOOTER {
  display: block;
  width: 100%;
  height: 46px;
  margin: auto;
  position: relative;
  margin-top: -46px; }
  FOOTER DIV.bnrArea {
    width: 80%;
    margin: auto;
    margin-bottom: 52.48px; }
    FOOTER DIV.bnrArea UL LI {
      width: 156px;
      height: 40px;
      margin-bottom: 16px; }

@media screen and (max-width: 1158px) {
  #wrapContents {
    width: 100%;
    padding: 0 24px;
    margin: auto;
    margin-top: 62px; }

  FOOTER {
    width: 100%; } }
@media screen and (max-width: 960px) {
  #wrapContents {
    margin-top: 32px; }

  FOOTER DIV.bnrArea {
    width: 96%;
    margin: auto;
    margin-bottom: 26.24px; }
    FOOTER DIV.bnrArea UL {
      justify-content: space-evenly; }
      FOOTER DIV.bnrArea UL LI {
        max-width: 124.8px;
        height: 32px; }
  FOOTER NAV > DIV {
    display: none; }
  FOOTER DIV.inner {
    border-top: #CCCCCC 1px solid;
    padding-top: 1em; } }
@media screen and (max-width: 640px) {
  #wrapContents {
    margin-top: 16px; } }
.mb0 {
  margin-bottom: 0 !important; }

.mbS {
  margin-bottom: 13.12px; }

.mbM {
  margin-bottom: 26.24px; }

.mbL {
  margin-bottom: 52.48px; }

.w100 {
  width: 100% !important; }

.w80 {
  width: 80% !important; }

.w75 {
  width: 75% !important; }

.w66 {
  width: 66.6666% !important; }

.w50 {
  width: 50% !important; }

.w33 {
  width: 33.3333% !important; }

.w25 {
  width: 25% !important; }

.w20 {
  width: 20% !important; }

.w10 {
  width: 10% !important; }

.objC {
  text-align: center; }

P.objR {
  text-align: right; }

TR.objR TH,
TR.objR TD {
  text-align: right; }

TH.objR,
TD.objR,
FIGCAPTION.objR {
  text-align: right; }

TR.objL TH,
TR.objL TD {
  text-align: left; }

TH.objL,
TD.objL,
FIGCAPTION.objL {
  text-align: left; }

TR.objC TH,
TR.objC TD {
  text-align: center; }

TH.objL,
TD.objL {
  text-align: center; }

FIGURE.objC IMG,
IMG.objC {
  display: block;
  margin: auto; }

.objInBox {
  overflow: hidden; }
  .objInBox .objL {
    float: left;
    padding-right: calc(24px/2); }
  .objInBox .objR {
    float: right;
    padding-left: calc(24px/2); }

.column2Box,
.column3Box,
.column4Box {
  overflow: hidden; }

/* 均等 */
/* 幅 wの場合 かつfloat */
/* 2段組 */
.column2Box > DIV {
  width: 50%; }
.column2Box > DIV:nth-of-type(2n+1) {
  float: left;
  padding-right: calc(24px/2); }
.column2Box > DIV:nth-of-type(2n) {
  float: right;
  padding-left: calc(24px/2); }

/* 3段組 */
.column3Box > DIV {
  width: calc(100%/3); }
.column3Box > DIV:nth-of-type(3n+1),
.column3Box > DIV:nth-of-type(3n+2) {
  float: left; }
.column3Box > DIV:nth-of-type(3n) {
  float: right; }
.column3Box > DIV:nth-of-type(3n+1) {
  padding-right: calc(24px / 3 * 2); }
.column3Box > DIV:nth-of-type(3n+2) {
  padding-left: calc(24px / 3);
  padding-right: calc(24px / 3); }
.column3Box > DIV:nth-of-type(3n) {
  padding-left: calc(24px / 3 * 2); }

/* 4段組 */
.column4Box > DIV {
  width: calc(100%/4);
  float: left; }
  .column4Box > DIV > DIV:nth-of-type(4n+1) {
    padding-right: calc(24px / 4 * 3); }
  .column4Box > DIV > DIV:nth-of-type(4n+2) {
    padding-left: calc(24px / 4);
    padding-right: calc(24px / 2); }
  .column4Box > DIV > DIV:nth-of-type(4n+3) {
    padding-left: calc(24px / 2);
    padding-right: calc(24px / 4); }
  .column4Box > DIV > DIV:nth-of-type(4n) {
    padding-left: calc(24px / 4 * 3); }

/* 均等 */
/* 幅 wの場合 かつflex */
.column2FlexBox,
.column3FlexBox,
.column4FlexBox,
.column5FlexBox,
.column6FlexBox,
.column7FlexBox,
.column8FlexBox,
.column2FlexBoxWithArrow {
  display: flex;
  flex-wrap: wrap; }

.column2FlexBox > DIV {
  width: 50%; }
.column2FlexBox > DIV:nth-of-type(2n+1) {
  padding-right: calc(24px/2); }
.column2FlexBox > DIV:nth-of-type(2n) {
  padding-left: calc(24px/2); }

.column3FlexBox > DIV {
  width: calc( 100% / 3 ); }
.column3FlexBox > DIV:nth-of-type(3n+1) {
  padding-right: calc(24px / 3 * 2); }
.column3FlexBox > DIV:nth-of-type(3n+2) {
  padding-left: calc(24px / 3);
  padding-right: calc(24px / 3); }
.column3FlexBox > DIV:nth-of-type(3n) {
  padding-left: calc(24px / 3 * 2); }
.column3FlexBox > DIV:nth-of-type(n+4) {
  margin-top: 24px; }

.column4FlexBox > DIV {
  width: calc( 100% / 4 ); }
.column4FlexBox > DIV:nth-of-type(4n+1) {
  padding-right: calc(24px / 4 * 3); }
.column4FlexBox > DIV:nth-of-type(4n+2) {
  padding-left: calc(24px / 4);
  padding-right: calc(24px / 2); }
.column4FlexBox > DIV:nth-of-type(4n+3) {
  padding-left: calc(24px / 2);
  padding-right: calc(24px / 4); }
.column4FlexBox > DIV:nth-of-type(4n) {
  padding-left: calc(24px / 4 * 3); }

.column5FlexBox > DIV {
  width: calc( 100% / 5 ); }
.column5FlexBox > DIV:nth-of-type(5n+1) {
  padding-right: calc(24px / 5 * 4); }
.column5FlexBox > DIV:nth-of-type(5n+2) {
  padding-left: calc(24px / 5);
  padding-right: calc(24px / 5 * 3); }
.column5FlexBox > DIV:nth-of-type(5n+3) {
  padding-left: calc(24px / 5 * 2);
  padding-right: calc(24px / 5 * 2); }
.column5FlexBox > DIV:nth-of-type(5n+4) {
  padding-left: calc(24px / 5 * 3);
  padding-right: calc(24px / 5 ); }
.column5FlexBox > DIV:nth-of-type(5n) {
  padding-left: calc(24px / 5 * 4); }

.column6FlexBox > DIV {
  width: calc( 100% / 6 ); }
.column6FlexBox > DIV:nth-of-type(6n+1) {
  padding-right: calc(24px / 6 * 5); }
.column6FlexBox > DIV:nth-of-type(6n+2) {
  padding-left: calc(24px / 6);
  padding-right: calc(24px / 6 * 4); }
.column6FlexBox > DIV:nth-of-type(6n+3),
.column6FlexBox > DIV:nth-of-type(6n+4) {
  padding-left: calc(24px / 6 * 3);
  padding-right: calc(24px / 6 * 3); }
.column6FlexBox > DIV:nth-of-type(6n+5) {
  padding-left: calc(24px / 6 * 4);
  padding-right: calc(24px / 6 ); }
.column6FlexBox > DIV:nth-of-type(6n) {
  padding-left: calc(24px / 6 * 5); }

.column2FlexBoxWithArrow {
  background: center center url(../img/icon_arrow02.svg) no-repeat;
  background-size: 2.6%; }
  .column2FlexBoxWithArrow > DIV {
    width: 50%; }
  .column2FlexBoxWithArrow > DIV:nth-of-type(2n+1) {
    padding-right: calc(24px); }
  .column2FlexBoxWithArrow > DIV:nth-of-type(2n) {
    padding-left: calc(24px); }

.column2FlexBox > DIV,
.column3FlexBox > DIV,
.column4FlexBox > DIV,
.column5FlexBox > DIV,
.column6FlexBox > DIV,
.column7FlexBox > DIV,
.column8FlexBox > DIV {
  margin-bottom: 26.24px; }

@media screen and (max-width: 767px) {
  .column3FlexBox {
    display: block; }
    .column3FlexBox > DIV {
      width: 100%;
      padding-left: 0;
      padding-right: 0;
      margin-left: 0;
      margin-right: 0; }

  .column4FlexBox > DIV {
    width: 50%; }
  .column4FlexBox > DIV:nth-of-type(2n+1) {
    padding-left: 0;
    padding-right: calc(24px/2); }
  .column4FlexBox > DIV:nth-of-type(2n) {
    padding-left: calc(24px/2);
    padding-right: 0; } }
HEADER {
  background-color: #00c2b9;
  color: #FFFFFF;
  position: relative; }
  HEADER > DIV {
    padding-top: 8px; }
    HEADER > DIV > A,
    HEADER > DIV > HGROUP {
      position: relative;
      display: block;
      width: 450px;
      height: 60px;
      margin: auto;
      width: 450px;
      height: 60px;
      text-indent: -9999px;
      background-image: url("../img/logotype.svg");
      background-position: center top;
      background-repeat: no-repeat;
      background-size: contain; }

@media screen and (max-width: 960px) {
  HEADER {
    position: relative; }
    HEADER > DIV {
      padding-top: 8px;
      width: 50%; }
      HEADER > DIV > A,
      HEADER > DIV > HGROUP {
        position: relative;
        display: block;
        width: 33%;
        min-width: 280px;
        height: 48px;
        width: 100%;
        height: 48px;
        text-indent: -9999px;
        background-image: url("../img/logotype.svg");
        background-position: center top;
        background-repeat: no-repeat;
        background-size: contain; } }
@media screen and (max-width: 480px) {
  HEADER > DIV {
    padding-top: 8px;
    width: 240px; }
    HEADER > DIV > A,
    HEADER > DIV > HGROUP {
      min-width: 100%;
      width: 100%;
      height: 40px;
      text-indent: -9999px;
      background-image: url("../img/logotype.svg");
      background-position: center top;
      background-repeat: no-repeat;
      background-size: contain; } }
@media screen and (max-width: 359px) {
  HEADER > DIV {
    width: 208px; } }
#home HEADER {
  border-bottom: none; }

MAIN H1,
#wrapContents H1,
ARTICLE H1 {
  font-size: 28.8px;
  line-height: 47.232px; }
MAIN H2,
#wrapContents H2,
ARTICLE H2 {
  font-size: 25.6px;
  line-height: 41.984px; }
MAIN H3,
#wrapContents H3,
ARTICLE H3 {
  font-size: 22.4px;
  line-height: 36.736px; }
MAIN H4,
#wrapContents H4,
ARTICLE H4 {
  font-size: 19.2px;
  line-height: 31.488px; }
MAIN H5,
MAIN H6,
#wrapContents H5,
#wrapContents H6,
ARTICLE H5,
ARTICLE H6 {
  font-size: 16px;
  line-height: 26.24px; }
MAIN P,
#wrapContents P,
ARTICLE P {
  margin-bottom: 26.24px; }
MAIN DL,
#wrapContents DL,
ARTICLE DL {
  margin-bottom: 26.24px; }
MAIN OL,
#wrapContents OL,
ARTICLE OL {
  padding-left: 16px;
  margin-bottom: 26.24px; }
MAIN UL,
#wrapContents UL,
ARTICLE UL {
  padding-left: 16px;
  margin-bottom: 26.24px; }
MAIN TABLE,
#wrapContents TABLE,
ARTICLE TABLE {
  margin-bottom: 26.24px; }
MAIN TABLE, MAIN TH, MAIN TD,
#wrapContents TABLE,
#wrapContents TH,
#wrapContents TD,
ARTICLE TABLE,
ARTICLE TH,
ARTICLE TD {
  border-collapse: collapse; }
  MAIN TABLE TH, MAIN TABLE TD, MAIN TH TH, MAIN TH TD, MAIN TD TH, MAIN TD TD,
  #wrapContents TABLE TH,
  #wrapContents TABLE TD,
  #wrapContents TH TH,
  #wrapContents TH TD,
  #wrapContents TD TH,
  #wrapContents TD TD,
  ARTICLE TABLE TH,
  ARTICLE TABLE TD,
  ARTICLE TH TH,
  ARTICLE TH TD,
  ARTICLE TD TH,
  ARTICLE TD TD {
    border: #CCCCCC 1px solid;
    padding: 4px; }
MAIN FIGURE,
#wrapContents FIGURE,
ARTICLE FIGURE {
  display: table; }
MAIN FIGCAPTION,
#wrapContents FIGCAPTION,
ARTICLE FIGCAPTION {
  caption-side: bottom;
  display: table-caption;
  font-size: 14px;
  line-height: 22.96px; }
MAIN HR,
#wrapContents HR,
ARTICLE HR {
  border-width: 1px 0 0 0;
  color: #CCCCCC;
  border-style: solid; }

MAIN > SECTION + SECTION,
#wrapContents > SECTION + SECTION,
ARTICLE > SECTION + SECTION {
  margin-top: 52.48px; }
MAIN P + DL,
MAIN P + UL,
MAIN P + OL,
MAIN P + P,
#wrapContents P + DL,
#wrapContents P + UL,
#wrapContents P + OL,
#wrapContents P + P,
ARTICLE P + DL,
ARTICLE P + UL,
ARTICLE P + OL,
ARTICLE P + P {
  margin-top: 26.24px; }
MAIN P + TABLE,
MAIN DL + TABLE,
MAIN UL + TABLE,
MAIN OL + TABLE,
#wrapContents P + TABLE,
#wrapContents DL + TABLE,
#wrapContents UL + TABLE,
#wrapContents OL + TABLE,
ARTICLE P + TABLE,
ARTICLE DL + TABLE,
ARTICLE UL + TABLE,
ARTICLE OL + TABLE {
  margin-top: 31.36px; }
MAIN UL.footnote,
MAIN OL.footnote,
MAIN DL.footnote,
#wrapContents UL.footnote,
#wrapContents OL.footnote,
#wrapContents DL.footnote,
ARTICLE UL.footnote,
ARTICLE OL.footnote,
ARTICLE DL.footnote {
  padding-left: 0;
  margin-left: 0; }
MAIN .aster,
#wrapContents .aster,
ARTICLE .aster {
  padding-left: 1em;
  text-indent: -1em; }
MAIN .aster::before,
#wrapContents .aster::before,
ARTICLE .aster::before {
  content: "※"; }
MAIN LI.aster,
#wrapContents LI.aster,
ARTICLE LI.aster {
  list-style-type: none; }
MAIN P + P.note,
MAIN DL + P.note,
MAIN OL + P.note,
MAIN UL + P.note,
#wrapContents P + P.note,
#wrapContents DL + P.note,
#wrapContents OL + P.note,
#wrapContents UL + P.note,
ARTICLE P + P.note,
ARTICLE DL + P.note,
ARTICLE OL + P.note,
ARTICLE UL + P.note {
  margin-top: -16px; }
MAIN TABLE + P.note,
#wrapContents TABLE + P.note,
ARTICLE TABLE + P.note {
  margin-top: -21.12px; }
MAIN TABLE + UL.note,
#wrapContents TABLE + UL.note,
ARTICLE TABLE + UL.note {
  margin-top: -21.12px; }
MAIN P + .footnote,
MAIN UL + .footnote,
MAIN OL + .footnote,
#wrapContents P + .footnote,
#wrapContents UL + .footnote,
#wrapContents OL + .footnote,
ARTICLE P + .footnote,
ARTICLE UL + .footnote,
ARTICLE OL + .footnote {
  margin-top: -26.24px; }
MAIN TABLE + .footnote,
MAIN DIV.column2FlexBox + .footnote,
MAIN DIV.column3FlexBox + .footnote,
MAIN DIV.column4FlexBox + .footnote,
#wrapContents TABLE + .footnote,
#wrapContents DIV.column2FlexBox + .footnote,
#wrapContents DIV.column3FlexBox + .footnote,
#wrapContents DIV.column4FlexBox + .footnote,
ARTICLE TABLE + .footnote,
ARTICLE DIV.column2FlexBox + .footnote,
ARTICLE DIV.column3FlexBox + .footnote,
ARTICLE DIV.column4FlexBox + .footnote {
  margin-top: -21.12px; }
MAIN NAV.index UL,
#wrapContents NAV.index UL,
ARTICLE NAV.index UL {
  padding-left: 0; }
  MAIN NAV.index UL LI A::before,
  #wrapContents NAV.index UL LI A::before,
  ARTICLE NAV.index UL LI A::before {
    display: inline-block;
    font-family: FontAwesome;
    content: "";
    margin-right: 4.8px; }
MAIN NAV.box,
#wrapContents NAV.box,
ARTICLE NAV.box {
  margin-bottom: 26.24px; }
  MAIN NAV.box UL,
  #wrapContents NAV.box UL,
  ARTICLE NAV.box UL {
    margin-bottom: 0; }
MAIN NAV.box + SECTION,
#wrapContents NAV.box + SECTION,
ARTICLE NAV.box + SECTION {
  margin-top: 26.24px; }
MAIN .pInBox,
MAIN .objInBox,
#wrapContents .pInBox,
#wrapContents .objInBox,
ARTICLE .pInBox,
ARTICLE .objInBox {
  overflow: hidden; }
MAIN .picL,
#wrapContents .picL,
ARTICLE .picL {
  float: left; }
MAIN .picR,
#wrapContents .picR,
ARTICLE .picR {
  float: right; }
MAIN DIV.objL,
MAIN FIGURE.objL,
MAIN IMG.objL,
MAIN TABLE.objL,
#wrapContents DIV.objL,
#wrapContents FIGURE.objL,
#wrapContents IMG.objL,
#wrapContents TABLE.objL,
ARTICLE DIV.objL,
ARTICLE FIGURE.objL,
ARTICLE IMG.objL,
ARTICLE TABLE.objL {
  float: left;
  padding-right: calc(24px/2);
  margin-right: calc(24px/2); }
MAIN DIV.objR,
MAIN FIGURE.objR,
MAIN IMG.objR,
MAIN TABLE.objR,
#wrapContents DIV.objR,
#wrapContents FIGURE.objR,
#wrapContents IMG.objR,
#wrapContents TABLE.objR,
ARTICLE DIV.objR,
ARTICLE FIGURE.objR,
ARTICLE IMG.objR,
ARTICLE TABLE.objR {
  float: right;
  padding-left: calc(24px/2);
  margin-left: calc(24px/2); }
MAIN FIGURE.objL,
MAIN FIGURE.objR,
#wrapContents FIGURE.objL,
#wrapContents FIGURE.objR,
ARTICLE FIGURE.objL,
ARTICLE FIGURE.objR {
  margin-top: 5.12px; }
MAIN FIGURE.objL FIGCAPTION,
#wrapContents FIGURE.objL FIGCAPTION,
ARTICLE FIGURE.objL FIGCAPTION {
  padding-right: calc(24px/2); }
MAIN FIGURE.objR FIGCAPTION,
#wrapContents FIGURE.objR FIGCAPTION,
ARTICLE FIGURE.objR FIGCAPTION {
  padding-left: calc(24px/2); }

@media screen and (max-width: 967px) {
  MAIN DIV.objL,
  MAIN FIGURE.objL,
  MAIN IMG.objL,
  MAIN TABLE.objL,
  MAIN DIV.objR,
  MAIN FIGURE.objR,
  MAIN IMG.objR,
  MAIN TABLE.objR,
  #wrapContents DIV.objL,
  #wrapContents FIGURE.objL,
  #wrapContents IMG.objL,
  #wrapContents TABLE.objL,
  #wrapContents DIV.objR,
  #wrapContents FIGURE.objR,
  #wrapContents IMG.objR,
  #wrapContents TABLE.objR,
  ARTICLE DIV.objL,
  ARTICLE FIGURE.objL,
  ARTICLE IMG.objL,
  ARTICLE TABLE.objL,
  ARTICLE DIV.objR,
  ARTICLE FIGURE.objR,
  ARTICLE IMG.objR,
  ARTICLE TABLE.objR {
    max-width: 45%; } }
@media screen and (max-width: 480px) {
  MAIN DIV.objL,
  MAIN FIGURE.objL,
  MAIN IMG.objL,
  MAIN TABLE.objL,
  MAIN DIV.objR,
  MAIN FIGURE.objR,
  MAIN IMG.objR,
  MAIN TABLE.objR,
  #wrapContents DIV.objL,
  #wrapContents FIGURE.objL,
  #wrapContents IMG.objL,
  #wrapContents TABLE.objL,
  #wrapContents DIV.objR,
  #wrapContents FIGURE.objR,
  #wrapContents IMG.objR,
  #wrapContents TABLE.objR,
  ARTICLE DIV.objL,
  ARTICLE FIGURE.objL,
  ARTICLE IMG.objL,
  ARTICLE TABLE.objL,
  ARTICLE DIV.objR,
  ARTICLE FIGURE.objR,
  ARTICLE IMG.objR,
  ARTICLE TABLE.objR {
    padding-left: 0;
    padding-right: 0;
    margin-left: 0;
    margin-right: 0;
    float: none;
    max-width: 100%;
    margin-bottom: 13.12px; } }
MAIN .ls_m1,
#wrapContents .ls_m1,
ARTICLE .ls_m1 {
  letter-spacing: -1px; }
MAIN FIGURE + FIGURE,
#wrapContents FIGURE + FIGURE,
ARTICLE FIGURE + FIGURE {
  margin-top: 26.24px; }
MAIN FIGCAPTION,
#wrapContents FIGCAPTION,
ARTICLE FIGCAPTION {
  margin-top: -26.24px;
  margin-bottom: 26.24px; }
MAIN IMG + FIGCAPTION,
#wrapContents IMG + FIGCAPTION,
ARTICLE IMG + FIGCAPTION {
  margin-top: 5.12px; }
MAIN TABLE + FIGCAPTION,
#wrapContents TABLE + FIGCAPTION,
ARTICLE TABLE + FIGCAPTION {
  margin-top: -52.48px; }
MAIN HGROUP.icon,
#wrapContents HGROUP.icon,
ARTICLE HGROUP.icon {
  padding-left: 44.8px; }
MAIN OL.flow,
#wrapContents OL.flow,
ARTICLE OL.flow {
  padding-left: 0; }
MAIN .shadow,
#wrapContents .shadow,
ARTICLE .shadow {
  filter: drop-shadow(4px 4px 4px rgba(0, 0, 0, 0.35)); }
MAIN P + .contactBox,
MAIN .box + .contactBox,
#wrapContents P + .contactBox,
#wrapContents .box + .contactBox,
ARTICLE P + .contactBox,
ARTICLE .box + .contactBox {
  margin-top: 21.12px; }
MAIN .contactBox DL,
#wrapContents .contactBox DL,
ARTICLE .contactBox DL {
  overflow: hidden;
  margin-bottom: 0; }
  MAIN .contactBox DL DT, MAIN .contactBox DL DD,
  #wrapContents .contactBox DL DT,
  #wrapContents .contactBox DL DD,
  ARTICLE .contactBox DL DT,
  ARTICLE .contactBox DL DD {
    margin-bottom: 6.56px; }
  MAIN .contactBox DL DT,
  #wrapContents .contactBox DL DT,
  ARTICLE .contactBox DL DT {
    display: none; }
  MAIN .contactBox DL DD,
  #wrapContents .contactBox DL DD,
  ARTICLE .contactBox DL DD {
    display: inline-block;
    margin-right: 16px; }
  MAIN .contactBox DL DD::before,
  #wrapContents .contactBox DL DD::before,
  ARTICLE .contactBox DL DD::before {
    display: inline-block;
    width: 24px;
    background-color: #68AA3F;
    padding: 4px;
    border-radius: 2px;
    color: #FFFFFF;
    text-align: center;
    margin-right: 8px; }
  MAIN .contactBox DL SPAN,
  #wrapContents .contactBox DL SPAN,
  ARTICLE .contactBox DL SPAN {
    display: inline-block; }
MAIN .contactBox DL.name DD,
#wrapContents .contactBox DL.name DD,
ARTICLE .contactBox DL.name DD {
  font-weight: 800; }
MAIN .contactBox DL.name DD::before,
MAIN .contactBox DT.name + DD::before,
MAIN .contactBox DD.name::before,
#wrapContents .contactBox DL.name DD::before,
#wrapContents .contactBox DT.name + DD::before,
#wrapContents .contactBox DD.name::before,
ARTICLE .contactBox DL.name DD::before,
ARTICLE .contactBox DT.name + DD::before,
ARTICLE .contactBox DD.name::before {
  display: inline-block;
  font-family: FontAwesome;
  content: ""; }
MAIN .contactBox DL.addr DD::before,
MAIN .contactBox DT.addr + DD::before,
MAIN .contactBox DD.addr::before,
#wrapContents .contactBox DL.addr DD::before,
#wrapContents .contactBox DT.addr + DD::before,
#wrapContents .contactBox DD.addr::before,
ARTICLE .contactBox DL.addr DD::before,
ARTICLE .contactBox DT.addr + DD::before,
ARTICLE .contactBox DD.addr::before {
  display: inline-block;
  font-family: FontAwesome;
  content: ""; }
MAIN .contactBox DL.tel DD::before,
MAIN .contactBox DT.tel + DD::before,
MAIN .contactBox DD.tel::before,
#wrapContents .contactBox DL.tel DD::before,
#wrapContents .contactBox DT.tel + DD::before,
#wrapContents .contactBox DD.tel::before,
ARTICLE .contactBox DL.tel DD::before,
ARTICLE .contactBox DT.tel + DD::before,
ARTICLE .contactBox DD.tel::before {
  display: inline-block;
  font-family: FontAwesome;
  content: ""; }
MAIN .contactBox DL.fax DD::before,
MAIN .contactBox DT.fax + DD::before,
MAIN .contactBox DD.fax::before,
#wrapContents .contactBox DL.fax DD::before,
#wrapContents .contactBox DT.fax + DD::before,
#wrapContents .contactBox DD.fax::before,
ARTICLE .contactBox DL.fax DD::before,
ARTICLE .contactBox DT.fax + DD::before,
ARTICLE .contactBox DD.fax::before {
  display: inline-block;
  font-family: FontAwesome;
  content: ""; }
MAIN .contactBox DL.website DD::before,
MAIN .contactBox DT.website + DD::before,
MAIN .contactBox DD.website::before,
#wrapContents .contactBox DL.website DD::before,
#wrapContents .contactBox DT.website + DD::before,
#wrapContents .contactBox DD.website::before,
ARTICLE .contactBox DL.website DD::before,
ARTICLE .contactBox DT.website + DD::before,
ARTICLE .contactBox DD.website::before {
  display: inline-block;
  font-family: FontAwesome;
  content: ""; }
MAIN .contactBox DL.mail DD::before,
MAIN .contactBox DT.mail + DD::before,
MAIN .contactBox DD.mail::before,
#wrapContents .contactBox DL.mail DD::before,
#wrapContents .contactBox DT.mail + DD::before,
#wrapContents .contactBox DD.mail::before,
ARTICLE .contactBox DL.mail DD::before,
ARTICLE .contactBox DT.mail + DD::before,
ARTICLE .contactBox DD.mail::before {
  display: inline-block;
  font-family: FontAwesome;
  content: ""; }
MAIN .contactBox DL + DL,
#wrapContents .contactBox DL + DL,
ARTICLE .contactBox DL + DL {
  margin-top: 4px; }
MAIN .contactBox SPAN.zip::before,
#wrapContents .contactBox SPAN.zip::before,
ARTICLE .contactBox SPAN.zip::before {
  content: "〒"; }
MAIN .contactBox SPAN.tel::before,
#wrapContents .contactBox SPAN.tel::before,
ARTICLE .contactBox SPAN.tel::before {
  content: "☎"; }
MAIN .contactBox SPAN.fax::before,
#wrapContents .contactBox SPAN.fax::before,
ARTICLE .contactBox SPAN.fax::before {
  content: "FAX:"; }
MAIN .contactBox SPAN.name,
#wrapContents .contactBox SPAN.name,
ARTICLE .contactBox SPAN.name {
  font-weight: 800; }
  MAIN .contactBox SPAN.name .addr SPAN,
  #wrapContents .contactBox SPAN.name .addr SPAN,
  ARTICLE .contactBox SPAN.name .addr SPAN {
    display: inline-block; }
  MAIN .contactBox SPAN.name .zip,
  MAIN .contactBox SPAN.name .addr,
  MAIN .contactBox SPAN.name .tel,
  #wrapContents .contactBox SPAN.name .zip,
  #wrapContents .contactBox SPAN.name .addr,
  #wrapContents .contactBox SPAN.name .tel,
  ARTICLE .contactBox SPAN.name .zip,
  ARTICLE .contactBox SPAN.name .addr,
  ARTICLE .contactBox SPAN.name .tel {
    margin-right: 0.5em; }
MAIN .contactBox HR,
#wrapContents .contactBox HR,
ARTICLE .contactBox HR {
  border-width: 1px 0 0 0;
  color: #CCCCCC;
  border-style: dotted; }

@media screen and (min-width: 320px) and (max-width: 767px) {
  TABLE.formTbl COL {
    display: block;
    width: 100%; } }
@media screen and (min-width: 320px) and (max-width: 767px) {
  TABLE.formTbl TH, TABLE.formTbl TD {
    display: block;
    width: 100%; } }

#wrapContents MAIN DIV.bnrArea {
  width: 80%;
  max-width: 768px;
  margin: auto; }

/* ---------------- */
/*　トップページ */
/* id: home */
/* class: home */
/* ---------------- */
#home #wrapContents MAIN DIV#eyeCatchArea {
  width: 80%;
  max-width: 960px;
  margin: auto;
  margin-bottom: 26.24px; }
  #home #wrapContents MAIN DIV#eyeCatchArea IMG {
    display: block;
    margin: auto; }
#home #wrapContents MAIN #explain {
  border: #999 1px solid;
  height: 30vh;
  min-height: 12em;
  overflow-y: scroll;
  padding: 8px 16px 0;
  margin-bottom: 26.24px; }
#home #wrapContents MAIN #explain::-webkit-scrollbar {
  width: 10px; }
#home #wrapContents MAIN #explain::-webkit-scrollbar-thumb {
  background: #999;
  border-radius: 5px; }
#home #wrapContents MAIN #explain::-webkit-scrollbar-track-piece {
  background-color: #efefef; }
#home #wrapContents MAIN #explain H2 {
  font-size: 16px;
  line-height: 26.24px; }
#home #wrapContents MAIN #explain H3 {
  font-size: 13.6px;
  line-height: 22.304px; }
#home #wrapContents MAIN #explain P,
#home #wrapContents MAIN #explain UL,
#home #wrapContents MAIN #explain OL,
#home #wrapContents MAIN #explain LI {
  font-size: 14.72px;
  line-height: 24.1408px; }
#home #wrapContents MAIN #explain UL.list_icon {
  padding-left: 0; }
  #home #wrapContents MAIN #explain UL.list_icon OL {
    display: table;
    margin: 0;
    padding: 0; }
    #home #wrapContents MAIN #explain UL.list_icon OL LI {
      list-style-type: decimal;
      margin: 0;
      padding: 0;
      display: table-row;
      counter-increment: table-ol;
      text-indent: 0; }
    #home #wrapContents MAIN #explain UL.list_icon OL LI::before {
      content: counter(table-ol) ".";
      display: table-cell;
      padding-right: 0.4em;
      text-align: right; }
    #home #wrapContents MAIN #explain UL.list_icon OL LI::after {
      content: "";
      display: block; }
    #home #wrapContents MAIN #explain UL.list_icon OL LI:last-of-type::after {
      margin-bottom: 0; }
#home #wrapContents MAIN #campaign-closing P {
  text-align: center;
  margin-bottom: 52.48px; }
#home #wrapContents MAIN P.unavailableMsg {
  color: #ff0000; }

/* ---------------- */
/*　応募 */
/* class: application */
/* ---------------- */
.application TABLE.formTbl TH {
  font-weight: 400; }

/* ---------------- */
/*　応募 */
/* id: application-index */
/* class: application */
/* ---------------- */
#application-index #wrapContents {
  width: 100%;
  padding: 0;
  margin-top: 0; }
  #application-index #wrapContents MAIN {
    width: 100%;
    margin-bottom: 0;
    background-color: #fff; }
    #application-index #wrapContents MAIN DIV.pnl {
      min-height: calc(100vh - 10.8rem); }
      #application-index #wrapContents MAIN DIV.pnl > SECTION {
        display: block;
        width: 85.5%;
        min-width: 27.36rem;
        max-width: 96rem;
        margin: auto;
        padding-top: 5.4rem; }
        #application-index #wrapContents MAIN DIV.pnl > SECTION H2 {
          text-align: center;
          font-size: 86.4px;
          line-height: 131.2px;
          font-weight: 500; }
        #application-index #wrapContents MAIN DIV.pnl > SECTION H2 + P {
          font-size: 28px;
          line-height: 45.92px;
          margin-bottom: 45.92px; }
          @media screen and (min-width: 320px) and (max-width: 374px) {
            #application-index #wrapContents MAIN DIV.pnl > SECTION H2 + P {
              font-size: 22.4px;
              line-height: 36.736px;
              margin-bottom: 36.736px; } }
          #application-index #wrapContents MAIN DIV.pnl > SECTION H2 + P > SPAN {
            display: inline-block; }
        #application-index #wrapContents MAIN DIV.pnl > SECTION P {
          text-align: center; }
          #application-index #wrapContents MAIN DIV.pnl > SECTION P SPAN {
            display: inline-block; }
        #application-index #wrapContents MAIN DIV.pnl > SECTION DIV.bnrArea {
          margin-bottom: 45.92px; }
          @media screen and (min-width: 320px) and (max-width: 374px) {
            #application-index #wrapContents MAIN DIV.pnl > SECTION DIV.bnrArea {
              margin-bottom: 36.736px; } }
    #application-index #wrapContents MAIN DIV.pnl_hit {
      background: url(../../application/img/bg_pnl-hit.png) center top no-repeat;
      background-size: cover; }
      #application-index #wrapContents MAIN DIV.pnl_hit H2,
      #application-index #wrapContents MAIN DIV.pnl_hit H2 + P {
        text-align: center;
        color: #e2253a; }
      #application-index #wrapContents MAIN DIV.pnl_hit DIV.bnrArea + P {
        font-size: 12.8px;
        line-height: 20.992px; }
        #application-index #wrapContents MAIN DIV.pnl_hit DIV.bnrArea + P > SPAN {
          display: inline-block; }
    #application-index #wrapContents MAIN DIV.pnl_miss {
      background: -moz-linear-gradient(top, #8eb6d6 60%, #8eb6d6 69%, rgba(142, 182, 214, 0) 96%, rgba(142, 182, 214, 0) 100%);
      background: -webkit-linear-gradient(top, #8eb6d6 60%, #8eb6d6 69%, rgba(142, 182, 214, 0) 96%, rgba(142, 182, 214, 0) 100%);
      background: linear-gradient(to bottom, #8eb6d6 60%, #8eb6d6 69%, rgba(142, 182, 214, 0) 96%, rgba(142, 182, 214, 0) 100%); }
      #application-index #wrapContents MAIN DIV.pnl_miss H2,
      #application-index #wrapContents MAIN DIV.pnl_miss H2 + P {
        color: #123d60; }
    #application-index #wrapContents MAIN DIV.pnl_close P {
      color: #123d60;
      font-size: 28px;
      line-height: 45.92px;
      margin-bottom: 45.92px; }

/* ---------------- */
/*　応募 */
/* id: application-frm */
/* class: application */
/* ---------------- */
.application #wrapContents MAIN TABLE {
  width: 100%;
  margin: auto; }
  .application #wrapContents MAIN TABLE TH {
    color: #00918a; }
    @media screen and (min-width: 320px) and (max-width: 767px) {
      .application #wrapContents MAIN TABLE TH {
        background-color: #fdf88c;
        border: none;
        margin-bottom: 0.25em; } }
  @media screen and (min-width: 320px) and (max-width: 767px) {
    .application #wrapContents MAIN TABLE TD {
      padding-left: 0;
      padding-right: 0;
      border: none; } }
.application #wrapContents MAIN TABLE.questionnaireArea COL {
  width: 100%; }
.application #wrapContents MAIN TABLE.questionnaireArea TH {
  font-weight: 500;
  background-color: #fdf88c; }
.application #wrapContents MAIN TABLE.questionnaireArea TH, .application #wrapContents MAIN TABLE.questionnaireArea TD {
  display: block;
  border: none; }
@media screen and (min-width: 320px) and (max-width: 767px) {
  .application #wrapContents MAIN TABLE.questionnaireArea TD {
    padding-top: 0.5em !important; }
    .application #wrapContents MAIN TABLE.questionnaireArea TD P {
      margin-bottom: 0.5em; } }
.application #wrapContents MAIN TABLE {
  margin-bottom: 26.24px; }
.application #wrapContents MAIN TD.prizeItem LABEL {
  position: relative;
  display: block;
  width: 100%;
  min-width: 240px;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: contain;
  border: #00c2b9 2px solid;
  border-radius: 4px;
  margin-right: 0;
  margin: 0 2%;
  margin-bottom: 26.24px; }
.application #wrapContents MAIN TD.prizeItem LABEL::before {
  position: absolute;
  left: 8px;
  top: 8px; }
.application #wrapContents MAIN TD.prizeItems > DIV {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-evenly; }
  .application #wrapContents MAIN TD.prizeItems > DIV > LABEL {
    width: 45%;
    margin-bottom: 1em; }
@media screen and (min-width: 320px) and (max-width: 767px) {
  .application #wrapContents MAIN TD.prizeItems {
    padding-top: 1.4em !important; } }
.application #wrapContents MAIN TD.prizeItems LABEL {
  position: relative;
  display: block;
  background-position: center top;
  background-repeat: no-repeat;
  background-size: contain;
  border: #00c2b9 2px solid;
  border-radius: 4px;
  margin-right: 0;
  margin: 0 2%;
  margin-bottom: 26.24px; }
.application #wrapContents MAIN TD.prizeItems LABEL::before {
  position: absolute;
  left: 8px;
  top: 8px; }
.application #wrapContents MAIN TD.prizeItems LABEL > SPAN {
  position: absolute;
  text-align: center;
  bottom: 0.2em;
  background-color: rgba(255, 255, 255, 0.8);
  padding-top: 0.25em;
  font-size: 13.6px;
  line-height: 22.304px;
  width: 100%; }
.application #wrapContents MAIN TD.prizeItems LABEL IMG {
  display: block;
  padding-top: 0.6em;
  padding-bottom: 2.4em;
  margin: auto; }
.application #wrapContents MAIN TD.prizeItems INPUT:checked + LABEL {
  border-color: #00ddff 1px solid;
  background-color: var_bgHoverColor; }
  .application #wrapContents MAIN TD.prizeItems INPUT:checked + LABEL > SPAN {
    background-color: var_bgHoverColor; }

/* ---------------- */
/*　応募：入力 */
/* id: application-frm */
/* class: application */
/* ---------------- */
/* ---------------- */
/*　応募：確認 */
/* id: application-cnf */
/* class: application */
/* ---------------- */
/* ---------------- */
/*　応募 */
/* id: application-end */
/* class: application */
/* ---------------- */
/* レイアウト */
/* 必須 */
.mef SPAN {
  display: block;
  padding-right: 12px;
  position: relative; }
.mef SPAN::after {
  position: absolute;
  top: 0;
  right: 0;
  content: "必須";
  color: #FFFFFF;
  font-size: 10px;
  line-height: 10px;
  display: inline-block;
  padding: 2px 3px;
  background-color: #E21874; }

_:-ms-lang(x)::-ms-backdrop, .mef SPAN::after {
  padding-top: 4px;
  padding-bottom: 0; }

/* 任意 */
/* 入力例 */
::placeholder,
::-ms-input-placeholder,
::-ms-input-placeholder {
  color: #656565;
  font-size: 16px; }

.note {
  color: #666; }

.eg {
  color: #666; }

.inputAlert {
  color: #cc0000; }

FORM .inputAlert {
  padding-left: 20px;
  padding-top: 3px;
  background: url(../img/icon/ani_alert.gif) left top 3px no-repeat;
  min-height: 10px;
  font-size: 12px;
  line-height: 18px; }

_:-ms-lang(x)::-ms-backdrop, FORM .inputAlert {
  background-position: left top 1px; }

P.inputAlert + P {
  margin-top: -26.24px; }

.alertBox {
  margin-bottom: 7px; }

/* ここから */
INPUT {
  vertical-align: middle; }

INPUT[type="checkbox"],
INPUT[type="radio"] {
  display: none; }

INPUT[type="checkbox"] + LABEL::before,
INPUT[type="radio"] + LABEL::before {
  font-family: "FontAwesome";
  display: inline-block;
  width: 22.72px; }

INPUT[type="checkbox"] + LABEL::before {
  content: ""; }

INPUT[type="checkbox"]:checked + LABEL::before {
  content: ""; }

INPUT[type="radio"] + LABEL::before {
  content: ""; }

INPUT[type="radio"]:checked + LABEL::before {
  content: ""; }

INPUT:hover[type="checkbox"] + LABEL,
INPUT:hover[type="radio"] + LABEL,
INPUT:focus[type="checkbox"] + LABEL,
INPUT:focus[type="radio"] + LABEL {
  color: #f60; }

INPUT[type="TEXT"],
INPUT[type="TEL"],
INPUT[type="EMAIL"],
INPUT[type="PASSWORD"],
INPUT[type="NUMBER"],
INPUT[type="DATE"],
INPUT[type="DATETIME"],
INPUT[type="SEARCH"],
INPUT[type="URL"],
TEXTAREA {
  padding: 4px;
  border: #00c2b9 1px solid;
  background-color: #FFFFFF;
  color: #232323; }

SELECT {
  padding: 4px;
  border: #00c2b9 1px solid;
  vertical-align: top;
  background-color: #FFFFFF;
  color: #232323; }

SELECT:hover,
SELECT:focus,
INPUT[type="TEXT"]:hover,
INPUT[type="TEXT"]:focus,
INPUT[type="TEL"]:hover,
INPUT[type="TEL"]:focus,
INPUT[type="EMAIL"]:hover,
INPUT[type="EMAIL"]:focus,
INPUT[type="SEARCH"]:hover,
INPUT[type="SEARCH"]:focus,
INPUT[type="URL"]:hover,
INPUT[type="URL"]:focus,
INPUT[type="PASSWORD"]:hover,
INPUT[type="PASSWORD"]:focus,
INPUT[type="DATETIME"]:hover,
INPUT[type="DATETIME"]:focus,
INPUT[type="DATE"]:hover,
INPUT[type="DATE"]:focus,
INPUT[type="NUMBER"]:hover,
INPUT[type="NUMBER"]:focus,
TEXTAREA:hover,
TEXTAREA:focus {
  background-color: #d0f4f2;
  border: #00dbd1 1px solid; }

LABEL {
  margin-right: 1em; }

INPUT {
  margin-right: 4px; }

INPUT + SPAN.eg {
  display: inline-block;
  margin-right: 4px; }

INPUT[type="TEXT"] {
  width: 100%; }

INPUT.name {
  width: 20em; }

INPUT.name_a,
INPUT.name_b,
INPUT.nm_a,
INPUT.nm_b,
nm_a_old {
  width: 10em; }

INPUT.name_ruby {
  width: 24em; }

INPUT.name_ruby_a,
INPUT.name_ruby_b,
INPUT.nm_ruby_a,
INPUT.nm_ruby_b {
  width: 12em; }
  @media screen and (min-width: 320px) and (max-width: 767px) {
    INPUT.name_ruby_a,
    INPUT.name_ruby_b,
    INPUT.nm_ruby_a,
    INPUT.nm_ruby_b {
      width: 10em; } }

INPUT.dept {
  width: 24em; }

INPUT.zip {
  width: 10em; }

INPUT.addr_a,
INPUT.addr_b,
INPUT.addr_c,
INPUT.email {
  width: 100%; }

INPUT.tel,
INPUT.fax {
  width: 15em; }

INPUT.url {
  width: 100%; }

INPUT.company_name,
INPUT.organization,
INPUT.section {
  width: 100%; }

INPUT.yearY4 {
  width: 6em; }

INPUT.subject {
  width: 100%; }

TEXTAREA {
  width: 100%;
  height: 8em; }

DIV.agreeBox {
  text-align: center;
  margin-bottom: 1em; }

.selectArea SELECT {
  vertical-align: middle; }
.selectArea > SPAN {
  vertical-align: middle;
  font-size: 13.6px; }

FOOTER .btn_pTopArea {
  position: fixed;
  z-index: 8800;
  width: 80px;
  right: 2.5%;
  height: 80px;
  bottom: 24px; }
  FOOTER .btn_pTopArea .btn_pTop {
    position: relative;
    margin: auto;
    height: 80px;
    -webkit-opacity: 0.9;
    opacity: 0.9; }
    FOOTER .btn_pTopArea .btn_pTop A {
      position: absolute;
      top: 0;
      right: 0px;
      z-index: 999;
      display: block;
      width: 80px;
      height: 80px;
      text-indent: -9999px;
      background-image: url(../img/icon_pTop.svg);
      background-size: contain;
      background-position: center center;
      -webkit-border-radius: 20px;
      -moz-border-radius: 20px;
      border-radius: 20px;
      background-repeat: no-repeat;
      -webkit-opacity: 0.75;
      opacity: 0.75; }
    FOOTER .btn_pTopArea .btn_pTop A:hover, FOOTER .btn_pTopArea .btn_pTop A:focus {
      background-color: #FFFFFF;
      -webkit-opacity: 0.95;
      opacity: 0.95; }
FOOTER DIV.inner {
  text-align: center;
  font-size: 12px; }
  FOOTER DIV.inner H3 {
    display: inline-block;
    width: auto;
    height: 20px;
    text-indent: 0;
    background-image: url("../img/logo.svg");
    background-position: left top;
    background-repeat: no-repeat;
    background-size: contain;
    padding-left: 30px;
    margin-right: 20px; }
  FOOTER DIV.inner ADDRESS {
    display: inline-block; }
    FOOTER DIV.inner ADDRESS SPAN {
      display: inline-block; }
    FOOTER DIV.inner ADDRESS SPAN.zip::before {
      content: "〒"; }
    FOOTER DIV.inner ADDRESS SPAN.tel::before {
      content: "☎"; }
    FOOTER DIV.inner ADDRESS SPAN.fax::before {
      content: "FAX:"; }
    FOOTER DIV.inner ADDRESS SPAN.name {
      font-weight: 800; }
    FOOTER DIV.inner ADDRESS .addr SPAN {
      display: inline-block; }
    FOOTER DIV.inner ADDRESS .zip,
    FOOTER DIV.inner ADDRESS .addr,
    FOOTER DIV.inner ADDRESS .tel {
      margin-right: 0.5em; }
FOOTER SMALL {
  padding-top: 10px;
  padding-bottom: 10px;
  font-size: 10px;
  color: #333333;
  display: block;
  text-align: center; }
