@charset "UTF-8";
html {
  box-sizing: border-box;
  overflow-y: scroll;
  -webkit-text-size-adjust: 100%; }

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

::before, ::after {
  text-decoration: inherit;
  vertical-align: inherit; }

* {
  background-repeat: no-repeat;
  padding: 0;
  margin: 0; }

audio:not([controls]) {
  display: none;
  height: 0; }

hr {
  overflow: visible; }

article, aside, details, figcaption, figure, footer, header, main, menu, nav, section, summary {
  display: block; }

summary {
  display: list-item; }

small {
  font-size: 80%; }

[hidden], template {
  display: none; }

abbr[title] {
  border-bottom: 1px dotted;
  text-decoration: none; }

a {
  background-color: transparent;
  -webkit-text-decoration-skip: objects; }

a:active, a:hover {
  outline-width: 0; }

code, kbd, pre, samp {
  font-family: monospace,monospace; }

b, strong {
  font-weight: bolder; }

dfn {
  font-style: italic; }

mark {
  background-color: #ff0;
  color: #000; }

sub, sup {
  font-size: 75%;
  line-height: 0;
  position: relative;
  vertical-align: baseline; }

sub {
  bottom: -0.25em; }

sup {
  top: -0.5em; }

input {
  border-radius: 0; }

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

textarea {
  overflow: auto;
  resize: vertical; }

button, input, optgroup, select, textarea {
  font: inherit; }

button {
  overflow: visible; }

button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  border-style: none;
  padding: 0; }

button:-moz-focusring, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
  outline: 1px dotted ButtonText; }

button, html [type="button"], [type="reset"], [type="submit"] {
  -webkit-appearance: button; }

button, select {
  text-transform: none; }

button, input, textarea {
  background-color: transparent;
  border-style: none;
  color: inherit; }

/*select{-moz-appearance:none;-webkit-appearance:none}*/
select::-ms-expand {
  display: none; }

select::-ms-value {
  color: currentColor; }

::-webkit-file-upload-button {
  -webkit-appearance: button;
  font: inherit; }

[type="search"] {
  -webkit-appearance: textfield;
  outline-offset: -2px; }

img {
  border-style: none; }

progress {
  vertical-align: baseline; }

svg:not(:root) {
  overflow: hidden; }

audio, canvas, progress, video {
  display: inline-block; }

@media screen {
  [hidden~="screen"] {
    display: inherit; }
  [hidden~="screen"]:not(:active):not(:focus):not(:target) {
    position: absolute !important;
    clip: rect(0 0 0 0) !important; } }

[aria-busy="true"] {
  cursor: progress; }

[aria-controls] {
  cursor: pointer; }

[aria-disabled] {
  cursor: default; }

::selection {
  background-color: #b3d4fc;
  color: #000;
  text-shadow: none; }

html {
  font-size: 62.5%;
  font-size: 10px; }
  @media screen and (max-width: 1080px) {
    html {
      font-size: .9259vw; } }
  @media screen and (max-width: 768px) {
    html {
      font-size: 1.5vw; } }

body {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, YuGothic, "ヒラギノ角ゴ ProN", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif;
  color: #000;
  font-size: 1.6rem;
  line-height: 1.75;
  -webkit-text-size-adjust: 100%;
  background: #f7fdff;
  word-break: break-all; }
  @media screen and (max-width: 768px) {
    body {
      font-size: 1.8rem; } }

*, h1, h2, h3, h4, h5, p {
  padding: 0;
  margin: 0;
  font-size: inherit; }

h1, h2, h3, h4 {
  line-height: 1.625; }

ul, li {
  list-style: none; }

a {
  color: inherit;
  text-decoration: none;
  transition: all .2s; }
  a img {
    transition: all .2s; }

img {
  vertical-align: bottom;
  border: none;
  max-width: 100%;
  height: auto; }

iframe {
  max-width: 100%; }

input, select, textarea {
  background-color: transparent;
  border-style: none;
  color: inherit;
  border: 1px solid #aaa;
  max-width: 100%;
  padding: 8px; }

input[type="radio"] {
  border: none;
  width: inherit;
  max-width: 100%;
  padding: 0; }

p {
  margin-bottom: 1.6rem; }
  p:last-child {
    margin-bottom: 0; }

strong {
  font-weight: bold;
  font-size: 100%; }

*:focus {
  outline: none; }

.is-menu-opened {
  -ms-touch-action: none;
      touch-action: none;
  height: 100%;
  overflow: hidden; }

.l-wrapper {
  position: relative;
  overflow: hidden; }

.l-main {
  position: relative;
  z-index: 0; }

.l-inner {
  width: 100%;
  max-width: 120rem;
  margin-left: auto;
  margin-right: auto;
  padding-left: 6rem;
  padding-right: 6rem; }
  @media screen and (max-width: 768px) {
    .l-inner {
      padding-left: 3rem;
      padding-right: 3rem; } }
  .l-inner--sm {
    max-width: 104rem; }
  .l-inner--full {
    max-width: none; }

.l-header {
  position: relative;
  width: 100%;
  z-index: 10; }
  @media screen and (max-width: 768px) {
    .l-header {
      height: 6rem;
      z-index: 1; } }

@media screen and (max-width: 768px) {
  #js-main-menu {
    display: none; } }

.l-nav {
  z-index: 5; }
  @media screen and (max-width: 768px) {
    .l-nav {
      position: fixed;
      top: 6rem;
      width: 100%;
      height: calc( 100% - 6rem);
      overflow: auto; } }

.l-nav-btn {
  position: fixed;
  right: 0px;
  top: 0px;
  width: 6rem;
  height: 6rem;
  z-index: 10;
  transition: .3s; }
  .l-nav-btn:before {
    content: "";
    position: absolute;
    width: 100%;
    height: 100%;
    top: 0;
    right: 0;
    background: rgba(245, 108, 82, 0.4);
    transition: .2s; }
  .is-menu-opened .l-nav-btn:before {
    opacity: .75; }
  .l-nav-btn__bar {
    position: absolute;
    display: block;
    width: 30px;
    top: calc(50% - 2px);
    left: calc(50% - 15px);
    height: 3px;
    background: #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
    transition: .3s ease; }
    .l-nav-btn__bar:before, .l-nav-btn__bar:after {
      content: "";
      position: absolute;
      right: 0;
      display: block;
      width: 100%;
      height: 3px;
      background: #fff;
      box-shadow: 0 2px 4px rgba(0, 0, 0, 0.15);
      transition: .3s ease; }
    .l-nav-btn__bar:before {
      top: -9px; }
    .l-nav-btn__bar:after {
      top: 9px; }
    .is-menu-opened .l-nav-btn__bar {
      background: transparent;
      box-shadow: none; }
      .is-menu-opened .l-nav-btn__bar:before, .is-menu-opened .l-nav-btn__bar:after {
        box-shadow: none;
        top: 0; }
      .is-menu-opened .l-nav-btn__bar:before {
        transform: rotate(-405deg); }
      .is-menu-opened .l-nav-btn__bar:after {
        transform: rotate(405deg); }
  @media screen and (min-width: 769px) {
    .l-nav-btn {
      display: none; } }

.l-nav-menu {
  position: relative;
  z-index: 0; }
  @media screen and (min-width: 769px) {
    .l-nav-menu {
      display: -ms-flexbox;
      display: flex; }
      .l-nav-menu__item {
        margin-left: 24px; } }
  @media screen and (max-width: 768px) {
    .l-nav-menu {
      width: 100%;
      height: 100%;
      background: rgba(255, 255, 255, 0.9); }
      .l-nav-menu__item {
        width: 100%; }
      .l-nav-menu__link {
        padding: 12px;
        display: block; } }

.l-footer {
  padding: 3.2rem 0;
  background: #2C6AB3;
  font-size: 1.4rem;
  text-align: center;
  color: #fff; }
  .l-footer__name {
    margin-bottom: 2.8rem;
    font-weight: bold; }
  .l-footer__btn {
    display: inline-block;
    width: 14rem;
    height: 3.2rem;
    line-height: 3.2rem;
    border: 1px solid #fff;
    border-radius: 20rem;
    transition: .2s; }
    .l-footer__btn:hover {
      opacity: .8; }
  .l-footer__copy {
    display: block;
    margin-top: 3.6rem; }

.c-contain {
  padding-top: 10rem;
  padding-bottom: 10rem; }

.c-box {
  margin-bottom: 10rem; }
  .c-box:last-child {
    margin-bottom: 0; }

.c-read {
  margin-bottom: 4.8rem;
  font-size: 2.8rem;
  line-height: 1.5;
  font-weight: bold;
  text-align: center; }
  @media screen and (max-width: 768px) {
    .c-read {
      font-size: 2.4rem; } }

.c-link {
  text-decoration: underline; }
  .c-link:hover {
    text-decoration: none; }

.c-bbl {
  text-align: center;
  margin-bottom: 6rem; }
  .c-bbl__txt {
    position: relative;
    display: inline-block;
    min-width: 26.8rem;
    line-height: 1.5;
    padding: 1.6rem 2.4rem;
    background: #2C6AB3;
    color: #fff;
    font-size: 2.8rem;
    border-radius: 20rem; }
    .c-bbl__txt:before {
      content: "";
      display: block;
      position: absolute;
      top: 100%;
      left: calc( 50% - 2rem);
      border: 2rem solid transparent;
      border-top: 2.4rem solid #2C6AB3; }

.c-btn {
  display: block;
  text-align: center; }
  .c-btn__item {
    display: inline-block;
    width: 24rem;
    max-width: 100%;
    text-align: center;
    background: #2C6AB3;
    color: #fff;
    line-height: 1.2;
    padding: 2rem;
    transition: .2s; }
    .c-btn__item:hover {
      opacity: 0.7; }

.c-sepper {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: -4rem;
  margin-left: -2rem;
  margin-right: -2rem; }
  .c-sepper .c-sepper__box--2 {
    width: calc( 100% / 2);
    margin-top: 4rem;
    padding-left: 2rem;
    padding-right: 2rem; }
  .c-sepper .c-sepper__box--3 {
    width: calc( 100% / 3);
    margin-top: 4rem;
    padding-left: 2rem;
    padding-right: 2rem; }
  .c-sepper .c-sepper__box--4 {
    width: calc( 100% / 4);
    margin-top: 4rem;
    padding-left: 2rem;
    padding-right: 2rem; }
  .c-sepper .c-sepper__box--5 {
    width: calc( 100% / 5);
    margin-top: 4rem;
    padding-left: 2rem;
    padding-right: 2rem; }
  .c-sepper--thin {
    margin-top: -2rem;
    margin-left: -1rem;
    margin-right: -1rem; }
    .c-sepper--thin .c-sepper__box--2 {
      margin-top: 2rem;
      padding-left: 1rem;
      padding-right: 1rem; }
    .c-sepper--thin .c-sepper__box--3 {
      margin-top: 2rem;
      padding-left: 1rem;
      padding-right: 1rem; }
    .c-sepper--thin .c-sepper__box--4 {
      margin-top: 2rem;
      padding-left: 1rem;
      padding-right: 1rem; }
    .c-sepper--thin .c-sepper__box--5 {
      margin-top: 2rem;
      padding-left: 1rem;
      padding-right: 1rem; }
  @media screen and (max-width: 768px) {
    .c-sepper {
      margin-top: -2rem;
      margin-left: -1rem;
      margin-right: -1rem; }
      .c-sepper .c-sepper__box--2,
      .c-sepper .c-sepper__box--3 {
        width: 100%;
        margin-top: 2rem; }
      .c-sepper--sp-2 .c-sepper__box--2,
      .c-sepper--sp-2 .c-sepper__box--3 {
        width: 50%;
        padding-left: 1rem;
        padding-right: 1rem; }
      .c-sepper .c-sepper__box--4,
      .c-sepper .c-sepper__box--5 {
        width: 50%;
        margin-top: 2rem;
        padding-left: 1rem;
        padding-right: 1rem; } }

.c-input,
.c-select,
.c-submit,
.c-textarea {
  border: 1px solid #eee; }

.c-input,
.c-select,
.c-textarea {
  width: 100%;
  background: #fff;
  color: #000;
  padding-left: 1.6rem;
  padding-right: 1.6rem; }

.c-submit {
  padding-left: 1.6rem;
  padding-right: 1.6rem;
  padding-top: 0;
  padding-bottom: 0;
  height: 6rem; }

.c-textarea {
  width: 100%;
  height: 30rem; }

.c-select {
  width: auto;
  position: relative; }

.c-submit {
  background: #000;
  color: #fff;
  line-height: 6rem;
  text-align: center;
  transition: .2s; }
  .c-submit:hover {
    background: #fff;
    color: #000; }

@media screen and (min-width: 769px) {
  .c-search {
    display: -ms-flexbox;
    display: flex; }
    .c-search__text {
      margin-right: 16px;
      width: 542px; }
    .c-search__select {
      margin-right: 16px;
      width: 256px; }
    .c-search__submit {
      width: 130px; } }

@media screen and (max-width: 768px) {
  .c-search__text, .c-search__select, .c-search__submit {
    width: 100%;
    margin-bottom: 8px; } }

.p-cvs {
  background: #eee;
  padding: 10rem 0;
  text-align: center; }

.p-ttl {
  margin-bottom: 6rem;
  text-align: center; }
  .p-ttl__main, .p-ttl__sub {
    display: block; }
  .p-ttl__main {
    font-size: 5.6rem;}
  .gform {
    font-size: 4rem;
    background: #89B4F0;
    color: #fff;
    padding: 16px 40px;
    text-decoration: none;
    border-radius: 30px;
    transition-property: opacity;
    -webkit-transition-property: opacity;
    transition-duration: .5s;
    -webkit-transition-duration: .5s; }
  .p-ttl__sub {
    font-size: 1.8rem;
    font-weight: normal; }

.p-ttl-overbbl {
  position: absolute;
  top: -4.8rem;
  left: 0;
  width: 100%;
  text-align: center; }
  .p-ttl-overbbl__txt {
    position: relative;
    display: inline-block;
    padding: 2.8rem 4rem;
    background: #000;
    color: #fff;
    border-radius: 2rem;
    font-size: 2.8rem;
    line-height: 1.25; }
    .p-ttl-overbbl__txt:before {
      content: "";
      display: block;
      position: absolute;
      top: 100%;
      left: calc( 50% - 2rem);
      border: 2rem solid transparent;
      border-top: 2.4rem solid #000; }
  @media screen and (max-width: 768px) {
    .p-ttl-overbbl {
      top: -3.2rem; }
      .p-ttl-overbbl__txt {
        padding: 1.6rem 2rem;
        font-size: 2.4rem; } }

.p-bar-list {
  margin-bottom: 2.4rem;
  text-align: center; }
  .p-bar-list__cts {
    display: inline-block; }
    @media screen and (max-width: 768px) {
      .p-bar-list__cts {
        display: block; } }
  .p-bar-list__item {
    margin-bottom: 1.6rem;
    padding: 0 2rem;
    background: #2C6AB3;
    color: #fff;
    font-size: 4rem;
    font-weight: bold;
    line-height: 1.5; }
    @media screen and (max-width: 768px) {
      .p-bar-list__item {
        font-size: 3.8rem; } }

.p-point-list {
  margin-top: 4rem;
  text-align: center; }
  .p-point-list__cts {
    display: inline-block; }
  .p-point-list__item {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
        align-items: center;
    margin-bottom: 2rem;
    padding: 2rem;
    padding-right: 4.8rem;
    border: 4px solid #2C6AB3;
    background: #fff;
    border-radius: 20rem;
    font-weight: bold;
    text-align: left; }
    .p-point-list__item:last-child {
      margin-bottom: 0; }
    @media screen and (max-width: 768px) {
      .p-point-list__item {
        margin-left: -2rem;
        margin-right: -2rem; } }
  .p-point-list__bbl {
    position: relative;
    width: 5.2rem;
    height: 5.2rem;
    margin-right: 3.2rem;
    line-height: 5.2rem;
    background: #2C6AB3;
    color: #fff;
    font-size: 1.5rem;
    text-align: center;
    border-radius: 50%;
    -ms-flex-negative: 0;
        flex-shrink: 0; }
    .p-point-list__bbl:before {
      content: "";
      display: block;
      position: absolute;
      left: calc( 100% - .1rem);
      top: calc( 50% - .6rem);
      border: .6rem solid transparent;
      border-left: 1.2rem solid #2C6AB3; }
    @media screen and (max-width: 768px) {
      .p-point-list__bbl {
        margin-right: 2rem; } }
  .p-point-list__txt {
    font-size: 2.8rem; }
    @media screen and (max-width: 768px) {
      .p-point-list__txt {
        font-size: 2.4rem;
        line-height: 1.2; } }

.p-mv {
  padding-top: 7.2rem;
  padding-bottom: 2.4rem;
  background: url(../images/mv_lt.png) no-repeat left top/46.8rem, url(../images/mv_rt.png) no-repeat right top/49.1rem, url(../images/mv_rb.png) no-repeat right bottom/36rem, url(../images/bg_dot.png) repeat; }
  @media screen and (max-width: 1440px) {
    .p-mv {
      background-size: 33rem, 34rem, 25rem, auto; } }
  @media screen and (max-width: 1180px) {
    .p-mv {
      background-size: 27rem, 28rem, 20rem, auto; } }
  @media screen and (max-width: 768px) {
    .p-mv {
      padding-top: 15.6rem;
      padding-bottom: 33rem;
      background: url(../images/mv_t_sp.png) no-repeat center top/100%, url(../images/mv_b_sp.png) no-repeat center bottom/100%, url(../images/bg_dot.png) repeat; } }
  .p-mv__cts {
    margin-bottom: 4rem;
    text-align: center; }
  .p-mv__read {
    margin-bottom: 2.4rem;
    font-size: 2.2rem;
    line-height: 1.5; }
  .p-mv__ttl {
    margin-bottom: 3.2rem; }
    @media screen and (min-width: 769px) {
      .p-mv__ttl img {
        max-width: 48vw; } }
    @media screen and (max-width: 768px) {
      .p-mv__ttl img {
        max-width: 53.5rem; } }
  .p-mv__date {
    margin-bottom: 2.4rem; }
    @media screen and (max-width: 768px) {
      .p-mv__date img {
        max-width: 40rem; } }
  .p-mv__copy {
    display: inline-block;
    text-align: left;
    position: relative;
    padding: 1.6rem 2rem;
    font-size: 2rem;
    font-weight: bold; }
    .p-mv__copy strong {
      font-size: 2.4rem;
      color: #2C6AB3; }
    .p-mv__copy:before, .p-mv__copy:after {
      content: "";
      display: block;
      position: absolute;
      width: 24rem;
      height: 7.2rem; }
    .p-mv__copy:before {
      top: 0;
      right: 0;
      border-top: 1px solid #777;
      border-right: 1px solid #777; }
    .p-mv__copy:after {
      bottom: 0;
      left: 0;
      border-bottom: 1px solid #777;
      border-left: 1px solid #777; }
  .p-mv__copy-sakura {
    position: absolute;
    z-index: 1; }
    .p-mv__copy-sakura--1 {
      right: -1.6rem;
      top: -1.6rem;
      width: 3rem;
      height: 3.6rem;
      background: url(../images/mark_bira.svg) no-repeat center/contain; }
    .p-mv__copy-sakura--2, .p-mv__copy-sakura--3 {
      width: 5.2rem;
      height: 5.2rem;
      background: url(../images/mark_sakura.svg) no-repeat center/contain; }
    .p-mv__copy-sakura--2 {
      left: -3.4rem;
      bottom: -2.6rem;
      transform: rotate(-15deg); }
    .p-mv__copy-sakura--3 {
      right: -5.2rem;
      top: -7.6rem;
      transform: rotate(20deg); }
      @media screen and (max-width: 768px) {
        .p-mv__copy-sakura--3 {
          display: none; } }
  @media screen and (max-width: 768px) {
    .p-mv__aside {
      display: none; } }

.p-intro {
  position: relative;
  z-index: 1; }
  @media screen and (max-width: 768px) {
    .p-intro {
      padding-top: 1.2rem; } }
  .p-intro__bg {
    position: absolute;
    width: 47.6rem;
    height: 91.2rem;
    left: calc( 50% + 30rem);
    bottom: 2.4rem;
    background: url(../images/intro_bg.png) no-repeat center/contain; }
    @media screen and (max-width: 768px) {
      .p-intro__bg {
        width: 40rem;
        height: 70.8rem;
        left: 51%;
        bottom: 1rem;
        z-index: -1; } }
  .p-intro__catch {
    margin-bottom: 7.2rem; }
    @media screen and (max-width: 768px) {
      .p-intro__catch {
        margin-bottom: 10.4rem; } }
  .p-intro__read {
    font-size: 4.8rem;
    line-height: 1.5;
    color: #fff; }
    @media screen and (max-width: 768px) {
      .p-intro__read {
        font-size: 4.2rem; } }
  .p-intro__txt {
    margin-top: 4.8rem;
    font-size: 1.8rem;
    font-weight: bold;
    line-height: 1.92; }
    @media screen and (max-width: 768px) {
      .p-intro__txt {
        padding-right: 52%; } }

.p-flow-card {
  margin-bottom: 4.8rem; }
  @media screen and (min-width: 769px) {
    .p-flow-card {
      padding: 0 2.4rem; } }
  @media screen and (max-width: 768px) {
    .p-flow-card {
      padding: 0 10rem; } }
  .p-flow-card__img {
    text-align: center;
    margin-bottom: 2.8rem; }
    @media screen and (max-width: 768px) {
      .p-flow-card__img img {
        width: 32rem; } }
  .p-flow-card__ttl {
    margin-bottom: 1.2rem;
    font-size: 2rem;
    font-weight: bold;
    color: #2C6AB3; }

.p-chance__box {
  padding: 0 6.4rem 5.6rem;
  background: #B5D8F3;
  border-radius: 3rem; }
  @media screen and (max-width: 768px) {
    .p-chance__box {
      padding-left: 4.4rem;
      padding-right: 4.4rem; } }

.p-chance__ttl {
  position: relative;
  top: -4rem; }
  @media screen and (max-width: 768px) {
    .p-chance__ttl {
      top: -6rem;
      margin-bottom: -2.8rem; } }

.p-chance__list-item:not(:last-child) {
  margin-bottom: 3.2rem;
  padding-bottom: 3.2rem;
  border-bottom: 4px solid #fff; }

.p-chance-present__img {
  margin-bottom: 2.4rem; }
  .p-chance-present__img img {
    border-radius: 2rem; }

.p-chance-present__ttl {
  font-size: 4rem;
  line-height: 1.25; }

.p-chance-present__txt {
  margin-top: 0.8rem;
  font-size: 2rem; }

@media screen and (min-width: 769px) {
  .p-chance-present--sub {
    display: -ms-grid;
    display: grid;
    -ms-grid-rows: auto;
    grid-template-rows: auto;
    -ms-grid-columns: 50% 50%;
    grid-template-columns: 50% 50%; }
  .p-chance-present--sub > *:nth-child(1) {
    -ms-grid-row: 1;
    -ms-grid-column: 1; }
  .p-chance-present--sub > *:nth-child(2) {
    -ms-grid-row: 1;
    -ms-grid-column: 2; }
    .p-chance-present--sub .p-chance-present__bbl {
      -ms-grid-row: 1;
      -ms-grid-row-span: 1;
      grid-row: 1 / 2;
      -ms-grid-column: 1;
      -ms-grid-column-span: 1;
      grid-column: 1 / 2; }
    .p-chance-present--sub .p-chance-present__img {
      padding-top: 2rem;
      -ms-grid-row: 1;
      -ms-grid-row-span: 2;
      grid-row: 1 / 3;
      -ms-grid-column: 2;
      -ms-grid-column-span: 1;
      grid-column: 2 / 3; }
    .p-chance-present--sub .p-chance-present__body {
      padding-right: 2rem;
      -ms-grid-row: 2;
      -ms-grid-row-span: 1;
      grid-row: 2 / 3;
      -ms-grid-column: 1;
      -ms-grid-column-span: 1;
      grid-column: 1 / 2; } }

@media screen and (max-width: 768px) {
  .p-chance-present--sub {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    -ms-flex-pack: justify;
        justify-content: space-between; }
    .p-chance-present--sub .p-chance-present__bbl {
      width: 40%; }
    .p-chance-present--sub .p-chance-present__img {
      width: 53%; }
    .p-chance-present--sub .p-chance-present__body {
      width: 100%; } }

.p-about__box {
  position: relative;
  margin-bottom: 6.8rem;
  padding: 4.8rem 8rem 6.8rem;
  border: 0.8rem solid #2C6AB3;
  background: url(../images/bg_stripe.png) repeat; }
  @media screen and (max-width: 768px) {
    .p-about__box {
      padding: 4.8rem 4.8rem 6rem; } }
  .p-about__box:last-child {
    margin-bottom: 0; }
  .p-about__box:before, .p-about__box:after {
    content: "";
    display: block;
    position: absolute;
    border: 3.2rem solid transparent; }
  .p-about__box:before {
    top: -1px;
    left: -1px;
    border-top-color: #2C6AB3;
    border-left-color: #2C6AB3; }
  .p-about__box:after {
    bottom: -1px;
    right: -1px;
    border-bottom-color: #2C6AB3;
    border-right-color: #2C6AB3; }
  .p-about__box--first {
    margin-top: 8rem;
    padding-top: 12rem; }

.p-amb__card-img {
  margin-bottom: 2rem; }

.p-amb__card-ttl {
  margin-bottom: 2.4rem;
  font-size: 2.8rem;
  line-height: 1.25; }

@media screen and (max-width: 768px) {
  .p-amb__card {
    margin-bottom: 8rem; }
    .p-amb__card-img {
      height: 42rem; }
      .p-amb__card-img img {
        width: 100%; }
      .p-amb__card-img img {
        width: 100%;
        height: 100%;
        object-fit: cover; } }

.p-product-combi {
  display: -ms-flexbox;
  display: flex;
  -ms-flex-pack: justify;
      justify-content: space-between;
  -ms-flex-align: center;
      align-items: center; }
  .p-product-combi__item {
    width: 35rem; }
    .p-product-combi__item--plus {
      position: relative;
      width: 3rem;
      height: 3rem;
      margin-top: 3rem; }
      .p-product-combi__item--plus:before, .p-product-combi__item--plus:after {
        content: "";
        display: block;
        position: absolute;
        width: 100%;
        height: .8rem;
        top: calc( 50% - .4rem);
        left: 0;
        background: #2C6AB3; }
      .p-product-combi__item--plus:after {
        transform: rotate(90deg); }
    @media screen and (max-width: 768px) {
      .p-product-combi__item {
        width: 32rem; }
        .p-product-combi__item--plus {
          width: 2.8rem;
          height: 2.8rem; } }
  .p-product-combi__num {
    margin: 0 auto 1.6rem;
    width: 8rem; }
    @media screen and (max-width: 768px) {
      .p-product-combi__num {
        width: 10rem; } }
  .p-product-combi__txt {
    margin-top: 1.2rem;
    font-size: 2rem;
    color: #2C6AB3;
    text-align: left; }

.p-case__list-ttl {
  margin-bottom: 2.8rem; }

.p-case__list-cts {
  margin-bottom: 6.8rem;
  font-size: 2rem; }
  @media screen and (max-width: 768px) {
    .p-case__list-cts {
      font-size: 1.8rem; } }
  .p-case__list-cts:last-child {
    margin-bottom: 0; }
  .p-case__list-cts img {
    width: 100%; }

.p-contact-form {
  background: #eee;
  padding: 6rem; }
  @media screen and (max-width: 768px) {
    .p-contact-form {
      padding-left: 3.2rem;
      padding-right: 3.2rem; } }

.p-form-box {
  margin-bottom: 2rem; }

.p-required-mark {
  font-size: 1.2rem;
  color: #f00; }

@media screen and (max-width: 768px) {
  .u-pc-only {
    display: none !important; } }

@media screen and (min-width: 769px) {
  .u-sp-only {
    display: none !important; } }

.u-text-center {
  text-align: center !important; }
  @media screen and (max-width: 768px) {
    .u-text-center--sm {
      text-align: center !important; } }
  .u-text-center iframe {
    margin-left: auto !important;
    margin-right: auto !important; }

.u-text-left {
  text-align: left !important; }

.u-text-right {
  text-align: right !important; }

.u-deco-line {
  text-decoration: underline; }

.u-ib {
  display: inline-block !important;
  vertical-align: middle; }

.u-block {
  display: block !important; }

.u-flex--wrap {
  -ms-flex-wrap: wrap;
      flex-wrap: wrap; }

.u-flex--between {
  -ms-flex-pack: justify;
      justify-content: space-between; }

.u-flex--jcenter {
  -ms-flex-pack: center;
      justify-content: center; }

.u-lh-0 {
  line-height: 0 !important; }

.u-lh-1 {
  line-height: 1 !important; }

.u-lh-125 {
  line-height: 1.25 !important; }

.u-lh-14 {
  line-height: 1.4 !important; }

.u-lh-15 {
  line-height: 1.5 !important; }

.u-lh-2 {
  line-height: 2 !important; }

.u-m-0 {
  margin: 0 !important; }

.u-mt-0,
.u-my-0 {
  margin-top: 0 !important; }

.u-mr-0,
.u-mx-0 {
  margin-right: 0 !important; }

.u-mb-0,
.u-my-0 {
  margin-bottom: 0 !important; }

.u-ml-0,
.u-mx-0 {
  margin-left: 0 !important; }

@media screen and (max-width: 768px) {
  .u-m-0--sp {
    margin: 0 !important; }
  .u-mt-0--sp,
  .u-my-0--sp {
    margin-top: 0 !important; }
  .u-mr-0--sp,
  .u-mx-0--sp {
    margin-right: 0 !important; }
  .u-mb-0--sp,
  .u-my-0--sp {
    margin-bottom: 0 !important; }
  .u-ml-0--sp,
  .u-mx-0--sp {
    margin-left: 0 !important; } }

@media screen and (min-width: 769px) {
  .u-m-0--pc {
    margin: 0 !important; }
  .u-mt-0--pc,
  .u-my-0--pc {
    margin-top: 0 !important; }
  .u-mr-0--pc,
  .u-mx-0--pc {
    margin-right: 0 !important; }
  .u-mb-0--pc,
  .u-my-0--pc {
    margin-bottom: 0 !important; }
  .u-ml-0--pc,
  .u-mx-0--pc {
    margin-left: 0 !important; } }

.u-m-8 {
  margin: 0.8rem !important; }

.u-mt-8,
.u-my-8 {
  margin-top: 0.8rem !important; }

.u-mr-8,
.u-mx-8 {
  margin-right: 0.8rem !important; }

.u-mb-8,
.u-my-8 {
  margin-bottom: 0.8rem !important; }

.u-ml-8,
.u-mx-8 {
  margin-left: 0.8rem !important; }

@media screen and (max-width: 768px) {
  .u-m-8--sp {
    margin: 0.8rem !important; }
  .u-mt-8--sp,
  .u-my-8--sp {
    margin-top: 0.8rem !important; }
  .u-mr-8--sp,
  .u-mx-8--sp {
    margin-right: 0.8rem !important; }
  .u-mb-8--sp,
  .u-my-8--sp {
    margin-bottom: 0.8rem !important; }
  .u-ml-8--sp,
  .u-mx-8--sp {
    margin-left: 0.8rem !important; } }

@media screen and (min-width: 769px) {
  .u-m-8--pc {
    margin: 0.8rem !important; }
  .u-mt-8--pc,
  .u-my-8--pc {
    margin-top: 0.8rem !important; }
  .u-mr-8--pc,
  .u-mx-8--pc {
    margin-right: 0.8rem !important; }
  .u-mb-8--pc,
  .u-my-8--pc {
    margin-bottom: 0.8rem !important; }
  .u-ml-8--pc,
  .u-mx-8--pc {
    margin-left: 0.8rem !important; } }

.u-m-12 {
  margin: 1.2rem !important; }

.u-mt-12,
.u-my-12 {
  margin-top: 1.2rem !important; }

.u-mr-12,
.u-mx-12 {
  margin-right: 1.2rem !important; }

.u-mb-12,
.u-my-12 {
  margin-bottom: 1.2rem !important; }

.u-ml-12,
.u-mx-12 {
  margin-left: 1.2rem !important; }

@media screen and (max-width: 768px) {
  .u-m-12--sp {
    margin: 1.2rem !important; }
  .u-mt-12--sp,
  .u-my-12--sp {
    margin-top: 1.2rem !important; }
  .u-mr-12--sp,
  .u-mx-12--sp {
    margin-right: 1.2rem !important; }
  .u-mb-12--sp,
  .u-my-12--sp {
    margin-bottom: 1.2rem !important; }
  .u-ml-12--sp,
  .u-mx-12--sp {
    margin-left: 1.2rem !important; } }

@media screen and (min-width: 769px) {
  .u-m-12--pc {
    margin: 1.2rem !important; }
  .u-mt-12--pc,
  .u-my-12--pc {
    margin-top: 1.2rem !important; }
  .u-mr-12--pc,
  .u-mx-12--pc {
    margin-right: 1.2rem !important; }
  .u-mb-12--pc,
  .u-my-12--pc {
    margin-bottom: 1.2rem !important; }
  .u-ml-12--pc,
  .u-mx-12--pc {
    margin-left: 1.2rem !important; } }

.u-m-16 {
  margin: 1.6rem !important; }

.u-mt-16,
.u-my-16 {
  margin-top: 1.6rem !important; }

.u-mr-16,
.u-mx-16 {
  margin-right: 1.6rem !important; }

.u-mb-16,
.u-my-16 {
  margin-bottom: 1.6rem !important; }

.u-ml-16,
.u-mx-16 {
  margin-left: 1.6rem !important; }

@media screen and (max-width: 768px) {
  .u-m-16--sp {
    margin: 1.6rem !important; }
  .u-mt-16--sp,
  .u-my-16--sp {
    margin-top: 1.6rem !important; }
  .u-mr-16--sp,
  .u-mx-16--sp {
    margin-right: 1.6rem !important; }
  .u-mb-16--sp,
  .u-my-16--sp {
    margin-bottom: 1.6rem !important; }
  .u-ml-16--sp,
  .u-mx-16--sp {
    margin-left: 1.6rem !important; } }

@media screen and (min-width: 769px) {
  .u-m-16--pc {
    margin: 1.6rem !important; }
  .u-mt-16--pc,
  .u-my-16--pc {
    margin-top: 1.6rem !important; }
  .u-mr-16--pc,
  .u-mx-16--pc {
    margin-right: 1.6rem !important; }
  .u-mb-16--pc,
  .u-my-16--pc {
    margin-bottom: 1.6rem !important; }
  .u-ml-16--pc,
  .u-mx-16--pc {
    margin-left: 1.6rem !important; } }

.u-m-20 {
  margin: 2rem !important; }

.u-mt-20,
.u-my-20 {
  margin-top: 2rem !important; }

.u-mr-20,
.u-mx-20 {
  margin-right: 2rem !important; }

.u-mb-20,
.u-my-20 {
  margin-bottom: 2rem !important; }

.u-ml-20,
.u-mx-20 {
  margin-left: 2rem !important; }

@media screen and (max-width: 768px) {
  .u-m-20--sp {
    margin: 2rem !important; }
  .u-mt-20--sp,
  .u-my-20--sp {
    margin-top: 2rem !important; }
  .u-mr-20--sp,
  .u-mx-20--sp {
    margin-right: 2rem !important; }
  .u-mb-20--sp,
  .u-my-20--sp {
    margin-bottom: 2rem !important; }
  .u-ml-20--sp,
  .u-mx-20--sp {
    margin-left: 2rem !important; } }

@media screen and (min-width: 769px) {
  .u-m-20--pc {
    margin: 2rem !important; }
  .u-mt-20--pc,
  .u-my-20--pc {
    margin-top: 2rem !important; }
  .u-mr-20--pc,
  .u-mx-20--pc {
    margin-right: 2rem !important; }
  .u-mb-20--pc,
  .u-my-20--pc {
    margin-bottom: 2rem !important; }
  .u-ml-20--pc,
  .u-mx-20--pc {
    margin-left: 2rem !important; } }

.u-m-24 {
  margin: 2.4rem !important; }

.u-mt-24,
.u-my-24 {
  margin-top: 2.4rem !important; }

.u-mr-24,
.u-mx-24 {
  margin-right: 2.4rem !important; }

.u-mb-24,
.u-my-24 {
  margin-bottom: 2.4rem !important; }

.u-ml-24,
.u-mx-24 {
  margin-left: 2.4rem !important; }

@media screen and (max-width: 768px) {
  .u-m-24--sp {
    margin: 2.4rem !important; }
  .u-mt-24--sp,
  .u-my-24--sp {
    margin-top: 2.4rem !important; }
  .u-mr-24--sp,
  .u-mx-24--sp {
    margin-right: 2.4rem !important; }
  .u-mb-24--sp,
  .u-my-24--sp {
    margin-bottom: 2.4rem !important; }
  .u-ml-24--sp,
  .u-mx-24--sp {
    margin-left: 2.4rem !important; } }

@media screen and (min-width: 769px) {
  .u-m-24--pc {
    margin: 2.4rem !important; }
  .u-mt-24--pc,
  .u-my-24--pc {
    margin-top: 2.4rem !important; }
  .u-mr-24--pc,
  .u-mx-24--pc {
    margin-right: 2.4rem !important; }
  .u-mb-24--pc,
  .u-my-24--pc {
    margin-bottom: 2.4rem !important; }
  .u-ml-24--pc,
  .u-mx-24--pc {
    margin-left: 2.4rem !important; } }

.u-m-32 {
  margin: 3.2rem !important; }

.u-mt-32,
.u-my-32 {
  margin-top: 3.2rem !important; }

.u-mr-32,
.u-mx-32 {
  margin-right: 3.2rem !important; }

.u-mb-32,
.u-my-32 {
  margin-bottom: 3.2rem !important; }

.u-ml-32,
.u-mx-32 {
  margin-left: 3.2rem !important; }

@media screen and (max-width: 768px) {
  .u-m-32--sp {
    margin: 3.2rem !important; }
  .u-mt-32--sp,
  .u-my-32--sp {
    margin-top: 3.2rem !important; }
  .u-mr-32--sp,
  .u-mx-32--sp {
    margin-right: 3.2rem !important; }
  .u-mb-32--sp,
  .u-my-32--sp {
    margin-bottom: 3.2rem !important; }
  .u-ml-32--sp,
  .u-mx-32--sp {
    margin-left: 3.2rem !important; } }

@media screen and (min-width: 769px) {
  .u-m-32--pc {
    margin: 3.2rem !important; }
  .u-mt-32--pc,
  .u-my-32--pc {
    margin-top: 3.2rem !important; }
  .u-mr-32--pc,
  .u-mx-32--pc {
    margin-right: 3.2rem !important; }
  .u-mb-32--pc,
  .u-my-32--pc {
    margin-bottom: 3.2rem !important; }
  .u-ml-32--pc,
  .u-mx-32--pc {
    margin-left: 3.2rem !important; } }

.u-m-40 {
  margin: 4rem !important; }

.u-mt-40,
.u-my-40 {
  margin-top: 4rem !important; }

.u-mr-40,
.u-mx-40 {
  margin-right: 4rem !important; }

.u-mb-40,
.u-my-40 {
  margin-bottom: 4rem !important; }

.u-ml-40,
.u-mx-40 {
  margin-left: 4rem !important; }

@media screen and (max-width: 768px) {
  .u-m-40--sp {
    margin: 4rem !important; }
  .u-mt-40--sp,
  .u-my-40--sp {
    margin-top: 4rem !important; }
  .u-mr-40--sp,
  .u-mx-40--sp {
    margin-right: 4rem !important; }
  .u-mb-40--sp,
  .u-my-40--sp {
    margin-bottom: 4rem !important; }
  .u-ml-40--sp,
  .u-mx-40--sp {
    margin-left: 4rem !important; } }

@media screen and (min-width: 769px) {
  .u-m-40--pc {
    margin: 4rem !important; }
  .u-mt-40--pc,
  .u-my-40--pc {
    margin-top: 4rem !important; }
  .u-mr-40--pc,
  .u-mx-40--pc {
    margin-right: 4rem !important; }
  .u-mb-40--pc,
  .u-my-40--pc {
    margin-bottom: 4rem !important; }
  .u-ml-40--pc,
  .u-mx-40--pc {
    margin-left: 4rem !important; } }

.u-m-48 {
  margin: 4.8rem !important; }

.u-mt-48,
.u-my-48 {
  margin-top: 4.8rem !important; }

.u-mr-48,
.u-mx-48 {
  margin-right: 4.8rem !important; }

.u-mb-48,
.u-my-48 {
  margin-bottom: 4.8rem !important; }

.u-ml-48,
.u-mx-48 {
  margin-left: 4.8rem !important; }

@media screen and (max-width: 768px) {
  .u-m-48--sp {
    margin: 4.8rem !important; }
  .u-mt-48--sp,
  .u-my-48--sp {
    margin-top: 4.8rem !important; }
  .u-mr-48--sp,
  .u-mx-48--sp {
    margin-right: 4.8rem !important; }
  .u-mb-48--sp,
  .u-my-48--sp {
    margin-bottom: 4.8rem !important; }
  .u-ml-48--sp,
  .u-mx-48--sp {
    margin-left: 4.8rem !important; } }

@media screen and (min-width: 769px) {
  .u-m-48--pc {
    margin: 4.8rem !important; }
  .u-mt-48--pc,
  .u-my-48--pc {
    margin-top: 4.8rem !important; }
  .u-mr-48--pc,
  .u-mx-48--pc {
    margin-right: 4.8rem !important; }
  .u-mb-48--pc,
  .u-my-48--pc {
    margin-bottom: 4.8rem !important; }
  .u-ml-48--pc,
  .u-mx-48--pc {
    margin-left: 4.8rem !important; } }

.u-m-60 {
  margin: 6rem !important; }

.u-mt-60,
.u-my-60 {
  margin-top: 6rem !important; }

.u-mr-60,
.u-mx-60 {
  margin-right: 6rem !important; }

.u-mb-60,
.u-my-60 {
  margin-bottom: 6rem !important; }

.u-ml-60,
.u-mx-60 {
  margin-left: 6rem !important; }

@media screen and (max-width: 768px) {
  .u-m-60--sp {
    margin: 6rem !important; }
  .u-mt-60--sp,
  .u-my-60--sp {
    margin-top: 6rem !important; }
  .u-mr-60--sp,
  .u-mx-60--sp {
    margin-right: 6rem !important; }
  .u-mb-60--sp,
  .u-my-60--sp {
    margin-bottom: 6rem !important; }
  .u-ml-60--sp,
  .u-mx-60--sp {
    margin-left: 6rem !important; } }

@media screen and (min-width: 769px) {
  .u-m-60--pc {
    margin: 6rem !important; }
  .u-mt-60--pc,
  .u-my-60--pc {
    margin-top: 6rem !important; }
  .u-mr-60--pc,
  .u-mx-60--pc {
    margin-right: 6rem !important; }
  .u-mb-60--pc,
  .u-my-60--pc {
    margin-bottom: 6rem !important; }
  .u-ml-60--pc,
  .u-mx-60--pc {
    margin-left: 6rem !important; } }

.u-m-80 {
  margin: 8rem !important; }

.u-mt-80,
.u-my-80 {
  margin-top: 8rem !important; }

.u-mr-80,
.u-mx-80 {
  margin-right: 8rem !important; }

.u-mb-80,
.u-my-80 {
  margin-bottom: 8rem !important; }

.u-ml-80,
.u-mx-80 {
  margin-left: 8rem !important; }

@media screen and (max-width: 768px) {
  .u-m-80--sp {
    margin: 8rem !important; }
  .u-mt-80--sp,
  .u-my-80--sp {
    margin-top: 8rem !important; }
  .u-mr-80--sp,
  .u-mx-80--sp {
    margin-right: 8rem !important; }
  .u-mb-80--sp,
  .u-my-80--sp {
    margin-bottom: 8rem !important; }
  .u-ml-80--sp,
  .u-mx-80--sp {
    margin-left: 8rem !important; } }

@media screen and (min-width: 769px) {
  .u-m-80--pc {
    margin: 8rem !important; }
  .u-mt-80--pc,
  .u-my-80--pc {
    margin-top: 8rem !important; }
  .u-mr-80--pc,
  .u-mx-80--pc {
    margin-right: 8rem !important; }
  .u-mb-80--pc,
  .u-my-80--pc {
    margin-bottom: 8rem !important; }
  .u-ml-80--pc,
  .u-mx-80--pc {
    margin-left: 8rem !important; } }

.u-p-0 {
  padding: 0 !important; }

.u-pt-0,
.u-py-0 {
  padding-top: 0 !important; }

.u-pr-0,
.u-px-0 {
  padding-right: 0 !important; }

.u-pb-0,
.u-py-0 {
  padding-bottom: 0 !important; }

.u-pl-0,
.u-px-0 {
  padding-left: 0 !important; }

@media screen and (max-width: 768px) {
  .u-p-0--sp {
    padding: 0 !important; }
  .u-pt-0--sp,
  .u-py-0--sp {
    padding-top: 0 !important; }
  .u-pr-0--sp,
  .u-px-0--sp {
    padding-right: 0 !important; }
  .u-pb-0--sp,
  .u-py-0--sp {
    padding-bottom: 0 !important; }
  .u-pl-0--sp,
  .u-px-0--sp {
    padding-left: 0 !important; } }

@media screen and (min-width: 769px) {
  .u-p-0--pc {
    padding: 0 !important; }
  .u-pt-0--pc,
  .u-py-0--pc {
    padding-top: 0 !important; }
  .u-pr-0--pc,
  .u-px-0--pc {
    padding-right: 0 !important; }
  .u-pb-0--pc,
  .u-py-0--pc {
    padding-bottom: 0 !important; }
  .u-pl-0--pc,
  .u-px-0--pc {
    padding-left: 0 !important; } }

.u-p-8 {
  padding: 0.8rem !important; }

.u-pt-8,
.u-py-8 {
  padding-top: 0.8rem !important; }

.u-pr-8,
.u-px-8 {
  padding-right: 0.8rem !important; }

.u-pb-8,
.u-py-8 {
  padding-bottom: 0.8rem !important; }

.u-pl-8,
.u-px-8 {
  padding-left: 0.8rem !important; }

@media screen and (max-width: 768px) {
  .u-p-8--sp {
    padding: 0.8rem !important; }
  .u-pt-8--sp,
  .u-py-8--sp {
    padding-top: 0.8rem !important; }
  .u-pr-8--sp,
  .u-px-8--sp {
    padding-right: 0.8rem !important; }
  .u-pb-8--sp,
  .u-py-8--sp {
    padding-bottom: 0.8rem !important; }
  .u-pl-8--sp,
  .u-px-8--sp {
    padding-left: 0.8rem !important; } }

@media screen and (min-width: 769px) {
  .u-p-8--pc {
    padding: 0.8rem !important; }
  .u-pt-8--pc,
  .u-py-8--pc {
    padding-top: 0.8rem !important; }
  .u-pr-8--pc,
  .u-px-8--pc {
    padding-right: 0.8rem !important; }
  .u-pb-8--pc,
  .u-py-8--pc {
    padding-bottom: 0.8rem !important; }
  .u-pl-8--pc,
  .u-px-8--pc {
    padding-left: 0.8rem !important; } }

.u-p-12 {
  padding: 1.2rem !important; }

.u-pt-12,
.u-py-12 {
  padding-top: 1.2rem !important; }

.u-pr-12,
.u-px-12 {
  padding-right: 1.2rem !important; }

.u-pb-12,
.u-py-12 {
  padding-bottom: 1.2rem !important; }

.u-pl-12,
.u-px-12 {
  padding-left: 1.2rem !important; }

@media screen and (max-width: 768px) {
  .u-p-12--sp {
    padding: 1.2rem !important; }
  .u-pt-12--sp,
  .u-py-12--sp {
    padding-top: 1.2rem !important; }
  .u-pr-12--sp,
  .u-px-12--sp {
    padding-right: 1.2rem !important; }
  .u-pb-12--sp,
  .u-py-12--sp {
    padding-bottom: 1.2rem !important; }
  .u-pl-12--sp,
  .u-px-12--sp {
    padding-left: 1.2rem !important; } }

@media screen and (min-width: 769px) {
  .u-p-12--pc {
    padding: 1.2rem !important; }
  .u-pt-12--pc,
  .u-py-12--pc {
    padding-top: 1.2rem !important; }
  .u-pr-12--pc,
  .u-px-12--pc {
    padding-right: 1.2rem !important; }
  .u-pb-12--pc,
  .u-py-12--pc {
    padding-bottom: 1.2rem !important; }
  .u-pl-12--pc,
  .u-px-12--pc {
    padding-left: 1.2rem !important; } }

.u-p-16 {
  padding: 1.6rem !important; }

.u-pt-16,
.u-py-16 {
  padding-top: 1.6rem !important; }

.u-pr-16,
.u-px-16 {
  padding-right: 1.6rem !important; }

.u-pb-16,
.u-py-16 {
  padding-bottom: 1.6rem !important; }

.u-pl-16,
.u-px-16 {
  padding-left: 1.6rem !important; }

@media screen and (max-width: 768px) {
  .u-p-16--sp {
    padding: 1.6rem !important; }
  .u-pt-16--sp,
  .u-py-16--sp {
    padding-top: 1.6rem !important; }
  .u-pr-16--sp,
  .u-px-16--sp {
    padding-right: 1.6rem !important; }
  .u-pb-16--sp,
  .u-py-16--sp {
    padding-bottom: 1.6rem !important; }
  .u-pl-16--sp,
  .u-px-16--sp {
    padding-left: 1.6rem !important; } }

@media screen and (min-width: 769px) {
  .u-p-16--pc {
    padding: 1.6rem !important; }
  .u-pt-16--pc,
  .u-py-16--pc {
    padding-top: 1.6rem !important; }
  .u-pr-16--pc,
  .u-px-16--pc {
    padding-right: 1.6rem !important; }
  .u-pb-16--pc,
  .u-py-16--pc {
    padding-bottom: 1.6rem !important; }
  .u-pl-16--pc,
  .u-px-16--pc {
    padding-left: 1.6rem !important; } }

.u-p-20 {
  padding: 2rem !important; }

.u-pt-20,
.u-py-20 {
  padding-top: 2rem !important; }

.u-pr-20,
.u-px-20 {
  padding-right: 2rem !important; }

.u-pb-20,
.u-py-20 {
  padding-bottom: 2rem !important; }

.u-pl-20,
.u-px-20 {
  padding-left: 2rem !important; }

@media screen and (max-width: 768px) {
  .u-p-20--sp {
    padding: 2rem !important; }
  .u-pt-20--sp,
  .u-py-20--sp {
    padding-top: 2rem !important; }
  .u-pr-20--sp,
  .u-px-20--sp {
    padding-right: 2rem !important; }
  .u-pb-20--sp,
  .u-py-20--sp {
    padding-bottom: 2rem !important; }
  .u-pl-20--sp,
  .u-px-20--sp {
    padding-left: 2rem !important; } }

@media screen and (min-width: 769px) {
  .u-p-20--pc {
    padding: 2rem !important; }
  .u-pt-20--pc,
  .u-py-20--pc {
    padding-top: 2rem !important; }
  .u-pr-20--pc,
  .u-px-20--pc {
    padding-right: 2rem !important; }
  .u-pb-20--pc,
  .u-py-20--pc {
    padding-bottom: 2rem !important; }
  .u-pl-20--pc,
  .u-px-20--pc {
    padding-left: 2rem !important; } }

.u-p-24 {
  padding: 2.4rem !important; }

.u-pt-24,
.u-py-24 {
  padding-top: 2.4rem !important; }

.u-pr-24,
.u-px-24 {
  padding-right: 2.4rem !important; }

.u-pb-24,
.u-py-24 {
  padding-bottom: 2.4rem !important; }

.u-pl-24,
.u-px-24 {
  padding-left: 2.4rem !important; }

@media screen and (max-width: 768px) {
  .u-p-24--sp {
    padding: 2.4rem !important; }
  .u-pt-24--sp,
  .u-py-24--sp {
    padding-top: 2.4rem !important; }
  .u-pr-24--sp,
  .u-px-24--sp {
    padding-right: 2.4rem !important; }
  .u-pb-24--sp,
  .u-py-24--sp {
    padding-bottom: 2.4rem !important; }
  .u-pl-24--sp,
  .u-px-24--sp {
    padding-left: 2.4rem !important; } }

@media screen and (min-width: 769px) {
  .u-p-24--pc {
    padding: 2.4rem !important; }
  .u-pt-24--pc,
  .u-py-24--pc {
    padding-top: 2.4rem !important; }
  .u-pr-24--pc,
  .u-px-24--pc {
    padding-right: 2.4rem !important; }
  .u-pb-24--pc,
  .u-py-24--pc {
    padding-bottom: 2.4rem !important; }
  .u-pl-24--pc,
  .u-px-24--pc {
    padding-left: 2.4rem !important; } }

.u-p-32 {
  padding: 3.2rem !important; }

.u-pt-32,
.u-py-32 {
  padding-top: 3.2rem !important; }

.u-pr-32,
.u-px-32 {
  padding-right: 3.2rem !important; }

.u-pb-32,
.u-py-32 {
  padding-bottom: 3.2rem !important; }

.u-pl-32,
.u-px-32 {
  padding-left: 3.2rem !important; }

@media screen and (max-width: 768px) {
  .u-p-32--sp {
    padding: 3.2rem !important; }
  .u-pt-32--sp,
  .u-py-32--sp {
    padding-top: 3.2rem !important; }
  .u-pr-32--sp,
  .u-px-32--sp {
    padding-right: 3.2rem !important; }
  .u-pb-32--sp,
  .u-py-32--sp {
    padding-bottom: 3.2rem !important; }
  .u-pl-32--sp,
  .u-px-32--sp {
    padding-left: 3.2rem !important; } }

@media screen and (min-width: 769px) {
  .u-p-32--pc {
    padding: 3.2rem !important; }
  .u-pt-32--pc,
  .u-py-32--pc {
    padding-top: 3.2rem !important; }
  .u-pr-32--pc,
  .u-px-32--pc {
    padding-right: 3.2rem !important; }
  .u-pb-32--pc,
  .u-py-32--pc {
    padding-bottom: 3.2rem !important; }
  .u-pl-32--pc,
  .u-px-32--pc {
    padding-left: 3.2rem !important; } }

.u-p-40 {
  padding: 4rem !important; }

.u-pt-40,
.u-py-40 {
  padding-top: 4rem !important; }

.u-pr-40,
.u-px-40 {
  padding-right: 4rem !important; }

.u-pb-40,
.u-py-40 {
  padding-bottom: 4rem !important; }

.u-pl-40,
.u-px-40 {
  padding-left: 4rem !important; }

@media screen and (max-width: 768px) {
  .u-p-40--sp {
    padding: 4rem !important; }
  .u-pt-40--sp,
  .u-py-40--sp {
    padding-top: 4rem !important; }
  .u-pr-40--sp,
  .u-px-40--sp {
    padding-right: 4rem !important; }
  .u-pb-40--sp,
  .u-py-40--sp {
    padding-bottom: 4rem !important; }
  .u-pl-40--sp,
  .u-px-40--sp {
    padding-left: 4rem !important; } }

@media screen and (min-width: 769px) {
  .u-p-40--pc {
    padding: 4rem !important; }
  .u-pt-40--pc,
  .u-py-40--pc {
    padding-top: 4rem !important; }
  .u-pr-40--pc,
  .u-px-40--pc {
    padding-right: 4rem !important; }
  .u-pb-40--pc,
  .u-py-40--pc {
    padding-bottom: 4rem !important; }
  .u-pl-40--pc,
  .u-px-40--pc {
    padding-left: 4rem !important; } }

.u-p-48 {
  padding: 4.8rem !important; }

.u-pt-48,
.u-py-48 {
  padding-top: 4.8rem !important; }

.u-pr-48,
.u-px-48 {
  padding-right: 4.8rem !important; }

.u-pb-48,
.u-py-48 {
  padding-bottom: 4.8rem !important; }

.u-pl-48,
.u-px-48 {
  padding-left: 4.8rem !important; }

@media screen and (max-width: 768px) {
  .u-p-48--sp {
    padding: 4.8rem !important; }
  .u-pt-48--sp,
  .u-py-48--sp {
    padding-top: 4.8rem !important; }
  .u-pr-48--sp,
  .u-px-48--sp {
    padding-right: 4.8rem !important; }
  .u-pb-48--sp,
  .u-py-48--sp {
    padding-bottom: 4.8rem !important; }
  .u-pl-48--sp,
  .u-px-48--sp {
    padding-left: 4.8rem !important; } }

@media screen and (min-width: 769px) {
  .u-p-48--pc {
    padding: 4.8rem !important; }
  .u-pt-48--pc,
  .u-py-48--pc {
    padding-top: 4.8rem !important; }
  .u-pr-48--pc,
  .u-px-48--pc {
    padding-right: 4.8rem !important; }
  .u-pb-48--pc,
  .u-py-48--pc {
    padding-bottom: 4.8rem !important; }
  .u-pl-48--pc,
  .u-px-48--pc {
    padding-left: 4.8rem !important; } }

.u-p-60 {
  padding: 6rem !important; }

.u-pt-60,
.u-py-60 {
  padding-top: 6rem !important; }

.u-pr-60,
.u-px-60 {
  padding-right: 6rem !important; }

.u-pb-60,
.u-py-60 {
  padding-bottom: 6rem !important; }

.u-pl-60,
.u-px-60 {
  padding-left: 6rem !important; }

@media screen and (max-width: 768px) {
  .u-p-60--sp {
    padding: 6rem !important; }
  .u-pt-60--sp,
  .u-py-60--sp {
    padding-top: 6rem !important; }
  .u-pr-60--sp,
  .u-px-60--sp {
    padding-right: 6rem !important; }
  .u-pb-60--sp,
  .u-py-60--sp {
    padding-bottom: 6rem !important; }
  .u-pl-60--sp,
  .u-px-60--sp {
    padding-left: 6rem !important; } }

@media screen and (min-width: 769px) {
  .u-p-60--pc {
    padding: 6rem !important; }
  .u-pt-60--pc,
  .u-py-60--pc {
    padding-top: 6rem !important; }
  .u-pr-60--pc,
  .u-px-60--pc {
    padding-right: 6rem !important; }
  .u-pb-60--pc,
  .u-py-60--pc {
    padding-bottom: 6rem !important; }
  .u-pl-60--pc,
  .u-px-60--pc {
    padding-left: 6rem !important; } }

.u-p-80 {
  padding: 8rem !important; }

.u-pt-80,
.u-py-80 {
  padding-top: 8rem !important; }

.u-pr-80,
.u-px-80 {
  padding-right: 8rem !important; }

.u-pb-80,
.u-py-80 {
  padding-bottom: 8rem !important; }

.u-pl-80,
.u-px-80 {
  padding-left: 8rem !important; }

@media screen and (max-width: 768px) {
  .u-p-80--sp {
    padding: 8rem !important; }
  .u-pt-80--sp,
  .u-py-80--sp {
    padding-top: 8rem !important; }
  .u-pr-80--sp,
  .u-px-80--sp {
    padding-right: 8rem !important; }
  .u-pb-80--sp,
  .u-py-80--sp {
    padding-bottom: 8rem !important; }
  .u-pl-80--sp,
  .u-px-80--sp {
    padding-left: 8rem !important; } }

@media screen and (min-width: 769px) {
  .u-p-80--pc {
    padding: 8rem !important; }
  .u-pt-80--pc,
  .u-py-80--pc {
    padding-top: 8rem !important; }
  .u-pr-80--pc,
  .u-px-80--pc {
    padding-right: 8rem !important; }
  .u-pb-80--pc,
  .u-py-80--pc {
    padding-bottom: 8rem !important; }
  .u-pl-80--pc,
  .u-px-80--pc {
    padding-left: 8rem !important; } }

.u-m-auto {
  margin: auto !important; }

.u-mt-auto,
.u-my-auto {
  margin-top: auto !important; }

.u-mr-auto,
.u-mx-auto {
  margin-right: auto !important; }

.u-mb-auto,
.u-my-auto {
  margin-bottom: auto !important; }

.u-ml-auto,
.u-mx-auto {
  margin-left: auto !important; }

.u-font-goth {
  font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", Arial, YuGothic, "ヒラギノ角ゴ ProN", Hiragino Kaku Gothic ProN, "メイリオ", Meiryo, sans-serif; }

.u-font-mincho {
  font-family: "Times New Roman", 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif; }

.u-font-12 {
  font-size: 1.2rem !important; }

@media screen and (max-width: 768px) {
  .u-font-12--sp {
    font-size: 1.2rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-12--pc {
    font-size: 1.2rem !important; } }

.u-font-16 {
  font-size: 1.6rem !important; }

@media screen and (max-width: 768px) {
  .u-font-16--sp {
    font-size: 1.6rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-16--pc {
    font-size: 1.6rem !important; } }

.u-font-20 {
  font-size: 2rem !important; }

@media screen and (max-width: 768px) {
  .u-font-20--sp {
    font-size: 2rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-20--pc {
    font-size: 2rem !important; } }

.u-font-24 {
  font-size: 2.4rem !important; }

@media screen and (max-width: 768px) {
  .u-font-24--sp {
    font-size: 2.4rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-24--pc {
    font-size: 2.4rem !important; } }

.u-font-28 {
  font-size: 2.8rem !important; }

@media screen and (max-width: 768px) {
  .u-font-28--sp {
    font-size: 2.8rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-28--pc {
    font-size: 2.8rem !important; } }

.u-font-32 {
  font-size: 3.2rem !important; }

@media screen and (max-width: 768px) {
  .u-font-32--sp {
    font-size: 3.2rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-32--pc {
    font-size: 3.2rem !important; } }

.u-font-36 {
  font-size: 3.6rem !important; }

@media screen and (max-width: 768px) {
  .u-font-36--sp {
    font-size: 3.6rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-36--pc {
    font-size: 3.6rem !important; } }

.u-font-40 {
  font-size: 4rem !important; }

@media screen and (max-width: 768px) {
  .u-font-40--sp {
    font-size: 4rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-40--pc {
    font-size: 4rem !important; } }

.u-font-48 {
  font-size: 4.8rem !important; }

@media screen and (max-width: 768px) {
  .u-font-48--sp {
    font-size: 4.8rem !important; } }

@media screen and (min-width: 769px) {
  .u-font-48--pc {
    font-size: 4.8rem !important; } }

.u-font-normal {
  font-weight: normal !important; }

.u-font-bold {
  font-weight: bold !important; }

.u-color-wh {
  color: #fff !important; }

.u-color-bk {
  color: #000 !important; }

.u-color-primary {
  color: #2C6AB3 !important; }

.u-color-gray {
  color: #777 !important; }

.u-color-danger {
  color: #f00 !important; }

.u-bg-wh {
  background: #fff !important; }

.u-bg-bk {
  background: #000 !important; }

.u-bg-primary {
  background: #B5D8F3 !important; }

.u-bg-light {
  background: #f7fdff !important; }

.u-w100 {
  width: 100%; }

.u-indent {
  padding-left: 1rem;
  text-indent: -1rem; }
