@charset "UTF-8";
.button {
  display: inline-block;
  width: 360px;
  height: 60px;
  background-color: white;
  color: #2a89c4;
  line-height: 60px;
  font-size: 1.25rem;
  font-weight: 700;
  text-align: center;
  border-radius: 4px;
}
.button:hover {
  opacity: 0.7;
}
@media (max-width: 767px) {
  .button {
    width: 240px;
    height: 48px;
    font-size: 0.875rem;
    line-height: 48px;
  }
}

.pc {
  display: block !important;
}

.pci {
  display: inline !important;
}

.sp {
  display: none !important;
}

.spi {
  display: none !important;
}

.lpc {
  display: block !important;
}

.lpci {
  display: inline !important;
}

.tb {
  display: none !important;
}

.tbi {
  display: none !important;
}

.ltb {
  display: block !important;
}

.ltbi {
  display: inline !important;
}

.smt {
  display: none !important;
}

.smti {
  display: none !important;
}

.xsp {
  display: none !important;
}

.xspi {
  display: none !important;
}

@media screen and (max-width: 768px) {
  .lpc {
    display: none !important;
  }
  .lpci {
    display: none !important;
  }
  .tb {
    display: block !important;
  }
  .tbi {
    display: inline !important;
  }
}
@media screen and (max-width: 767px) {
  .pc {
    display: none !important;
  }
  .pci {
    display: none !important;
  }
  .sp {
    display: block !important;
  }
  .spi {
    display: inline !important;
  }
}
@media screen and (max-width: 480px) {
  .ltb {
    display: none !important;
  }
  .ltbi {
    display: none !important;
  }
  .smt {
    display: block !important;
  }
  .smti {
    display: inline !important;
  }
}
@media screen and (max-width: 320px) {
  .sp.ex-xp {
    display: none !important;
  }
  .spi.ex-xp {
    display: none !important;
  }
  .ex-xp {
    display: none !important;
  }
  .xsp {
    display: block !important;
  }
  .xspi {
    display: inline !important;
  }
}
html {
  height: 100%;
  margin: 0px;
  padding: 0px;
}

html {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
  -webkit-tap-highlight-color: rgba(255, 255, 255, 0);
}

*,
*:before,
*:after {
  -webkit-box-sizing: inherit;
  box-sizing: inherit;
}

:focus {
  outline: 0;
}

body {
  width: 100%;
  height: 100%;
  margin: 0px;
  padding: 0px;
}

a:hover, button:hover {
  opacity: 0.6;
}

a {
  text-decoration: none;
  outline: none;
  color: inherit;
}
a:hover {
  opacity: 0.6;
}
a.line:hover {
  opacity: 1;
  text-decoration: underline;
}
a.text-link {
  display: inline-block;
  text-decoration: underline;
}
a.text-link:hover {
  opacity: 0.6;
}
a.read-more:before {
  content: "— ";
}
a.arrow:before {
  content: "> ";
}
a.arrow-link {
  position: relative;
  display: inline-block;
  line-height: 1;
  vertical-align: top;
}
a.arrow-link:after {
  content: "»";
  margin-left: 0.25em;
  display: inherit;
  line-height: inherit;
  vertical-align: inherit;
}

button, input[type=submit], input[type=reset] {
  cursor: pointer;
}

figure, picture {
  display: block;
  -webkit-margin-before: 0;
          margin-block-start: 0;
  -webkit-margin-after: 0;
          margin-block-end: 0;
  -webkit-margin-start: 0;
          margin-inline-start: 0;
  -webkit-margin-end: 0;
          margin-inline-end: 0;
  margin: 0;
}
figure img, picture img {
  width: 100%;
  height: auto;
}
figure img.auto-image, picture img.auto-image {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}
figure figcaption, picture figcaption {
  margin-top: 0.5rem;
}
figure + figure {
  margin-top: 1.5rem;
}
@media (max-width: 767px) {
  figure + figure {
    margin-top: 1.25rem;
  }
}

img {
  vertical-align: top;
}
img.fit {
  width: 100%;
  height: auto;
}
img.circle-image {
  border-radius: 50%;
}
img.fit-image {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: cover;";
}
img.fit-image.contain {
  width: 100%;
  height: 100%;
  -o-object-fit: contain;
     object-fit: contain;
  -o-object-position: top;
     object-position: top;
  font-family: "object-fit: contain;";
}
img.round-image {
  border-radius: 8px;
}
img.auto-image {
  width: auto;
  height: auto;
  max-width: 100%;
  max-height: 100%;
}

svg {
  display: block;
  width: 100%;
  height: auto;
}

ul, ol {
  margin: 0;
  padding: 0;
  list-style-type: none;
}

#incode-web {
  height: 100%;
  font-family: "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "メイリオ", Meiryo, "Helvetica Neue", Helvetica, sans-serif;
}

main {
  height: 100%;
}

.copyright {
  position: absolute;
  bottom: 12px;
  left: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  font-family: Arial, Helvetica, sans-serif;
  font-size: 0.75rem;
  text-align: center;
}

.container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  width: 100%;
  height: 100%;
}

.content {
  width: 90%;
  height: 90%;
  max-width: 1000px;
  max-height: 480px;
  background-color: white;
  /*-webkit-box-shadow: 16px 16px 8px rgba(36, 130, 224, 0.1);
          box-shadow: 16px 16px 8px rgba(36, 130, 224, 0.1);*/
  -webkit-box-shadow: 8px 8px 12px rgba(25, 95, 160, 0.2);
          box-shadow: 8px 8px 12px rgba(25, 95, 160, 0.2);
  position: relative;
}
.content .content-text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  height: 100%;
  padding: 24px 40px;
  position: relative;
  z-index: 2;
}
.content .content-text h1 {
  line-height: 1;
  vertical-align: top;
  width: 50%;
  min-width: 200px;
  margin: 1.5rem auto 4rem;
}
.content .content-text h1 img {
  width: 100%;
  height: auto;
}
.content .content-text p {
  line-height: 1.85;
  margin: 1.5rem auto;
  color: white;
  width: 80%;
  font-weight: 700;
  max-width: 560px;
}
.content .content-image {
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
}
.content .content-image:before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  background-color: rgba(15, 100, 150, 0.9);/*rgba(76, 173, 233, 0.9);*/
  z-index: 1;
}
.content .content-image img {
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
  font-family: "object-fit: cover; object-position: center;";
  width: 100%;
  height: 100%;
}
@media (max-width: 767px) {
  .content .content-text {
    padding: 24px 24px;
  }
  .content .content-text h1 {
    margin: 1.5rem auto 3rem;
  }
  .content .content-text p {
    width: 100%;
  }
}