@charset "UTF-8";
/* Scss Document */
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline; }

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
  display: block; }

body {
  line-height: 1; }

ol, ul {
  list-style: none; }

blockquote, q {
  quotes: none; }

blockquote:before, blockquote:after,
q:before, q:after {
  content: '';
  content: none; }

table {
  border-collapse: collapse;
  border-spacing: 0; }

* {
  -webkit-box-sizing: border-box;
  box-sizing: border-box; }

html {
  /* 文字サイズ：ブラウザ規定サイズ16px→10pxへ */
  font-size: 10px;
  font-size: 62.5%; }

body {
  width: 100%;
  margin: 0 auto;
  /* 文字サイズ：ページ規定サイズ14px */
  font-size: 14px;
  font-size: 1.4rem;
  font-family: "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
  text-align: justify;
  line-height: 1.4;
  color: #333333;
  /*スマホで勝手に文字が大きくなる対策*/
  -webkit-text-size-adjust: 100%; }
  @media (max-width: 767px) {
    body {
      min-width: auto; } }

.wrapper {
  overflow: hidden;
  background: #5aadd8;
  /* Old browsers */
  background: -moz-linear-gradient(top, #5aadd8 0%, #57a9d3 46%, #0a7ab8 75%, #005280 100%);
  /* FF3.6-15 */
  background: -webkit-linear-gradient(top, #5aadd8 0%, #57a9d3 46%, #0a7ab8 75%, #005280 100%);
  /* Chrome10-25,Safari5.1-6 */
  background: -webkit-gradient(linear, left top, left bottom, from(#5aadd8), color-stop(46%, #57a9d3), color-stop(75%, #0a7ab8), to(#005280));
  background: -o-linear-gradient(top, #5aadd8 0%, #57a9d3 46%, #0a7ab8 75%, #005280 100%);
  background: linear-gradient(to bottom, #5aadd8 0%, #57a9d3 46%, #0a7ab8 75%, #005280 100%);
  /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
  filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#5aadd8', endColorstr='#005280',GradientType=0 );
  /* IE6-9 */ }

.inner {
  position: relative;
  width: 94%; }
  .inner_base {
    max-width: 800px;
    margin-left: auto;
    margin-right: auto; }
  .inner_full {
    max-width: 1020px;
    margin-left: auto;
    margin-right: auto; }
  @media (max-width: 767px) {
    .inner {
      width: 90%; }
      .inner .inner {
        width: 100%; } }

.row, .row_rev {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between; }
  .row_rev {
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse; }

.bg_base {
  background-color: white; }

.bg_main {
  background-color: #0079BD; }

/* margin / padding
--------------------------------------- */
.mb_sec {
  margin-bottom: 100px !important; }

.mb_cont {
  margin-bottom: 60px !important; }

.mb_pgh {
  margin-bottom: 30px !important; }

.mb_small {
  margin-bottom: 15px !important; }

.mb_large {
  margin-bottom: 120px !important; }

.mb_xl {
  margin-bottom: 160px !important; }

.pb_sec {
  padding-bottom: 100px !important; }

.pb_cont {
  padding-bottom: 60px !important; }

.pb_pgh {
  padding-bottom: 30px !important; }

.pb_small {
  padding-bottom: 15px !important; }

.pb_large {
  padding-bottom: 120px !important; }

.pb_xl {
  padding-bottom: 160px !important; }

.m_wA {
  margin-left: auto;
  margin-right: auto; }

/* font
--------------------------------------- */
.fw_bold {
  font-weight: bold !important; }

.fw_sec {
  font-size: !important; }

.fw_cont {
  font-size: !important; }

.fw_pgh {
  font-size: !important; }

.fw_small {
  font-size: !important; }

.fw_large {
  font-size: !important; }

.fw_xl {
  font-size: !important; }

/* text align
--------------------------------------- */
.ta_c {
  text-align: center !important; }

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

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

/* boeder
--------------------------------------- */
.bd_n {
  border: none !important; }

/* float
--------------------------------------- */
.left {
  float: left; }

.right {
  float: right; }

/* position
--------------------------------------- */
.relative {
  position: relative; }

.absolute {
  position: absolute; }

.fixed {
  position: fixed; }

/* clearfix
--------------------------------------- */
.clear {
  clear: both; }

.cf:after {
  content: "";
  clear: both;
  display: table; }

/* linkstyle
--------------------------------------- */
a {
  color: #3452aa;
  text-decoration: none;
  outline: none; }
  a:not(.hv_unset):hover {
    /*color:inherit;*/
    text-decoration: underline;
    outline: none; }

/*a img:hover {
    filter: alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
    transition: opacity 0.3s ease 0s;
}*/
.link_btn {
  display: block;
  width: 100%;
  height: 100%;
  color: inherit;
  font-size: inherit;
  font-weight: inherit;
  /*&:not(.hv_unset):hover {
        color: inherit;
        filter: alpha(opacity=50);
        -moz-opacity: 0.5;
        opacity: 0.5;
        text-decoration:none;
    }*/ }

.link_btn img:hover {
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  opacity: 1; }

a.notLink,
a[href^="tel:"] {
  cursor: default;
  pointer-events: none; }

@media (max-width: 767px) {
  a img:hover,
  .link_btn:hover {
    filter: alpha(opacity=100);
    -moz-opacity: 1;
    opacity: 1; }
  a[href^="tel:"] {
    cursor: default;
    pointer-events: auto; }
  a[href^="tel:"]:hover {
    color: inherit;
    text-decoration: none;
    outline: none; } }

/* img
--------------------------------------- */
img {
  /*width:100%;*/
  vertical-align: bottom; }

/* pc/sp
--------------------------------------- */
.spObj {
  display: none;
  visibility: hidden;
  height: 0; }

.pcObj {
  display: block;
  visibility: visible;
  height: auto; }

@media (max-width: 767px) {
  .spObj {
    display: block;
    visibility: visible;
    height: auto; }
  .pcObj {
    display: none;
    visibility: hidden;
    height: 0; }
  .sp_w100 {
    width: 100%; }
  .sp_mw100 {
    max-width: 100%; } }

/*アニメーション
/----------------------- */
@-webkit-keyframes ttlAnime {
  0% {
    width: 200%;
    opacity: 0.2;
    margin-top: -25%;
    margin-left: -50%; }
  99% {
    opacity: 1; }
  100% {
    width: 100%;
    margin-top: 0;
    margin-left: 0; } }
@keyframes ttlAnime {
  0% {
    width: 200%;
    opacity: 0.2;
    margin-top: -25%;
    margin-left: -50%; }
  99% {
    opacity: 1; }
  100% {
    width: 100%;
    margin-top: 0;
    margin-left: 0; } }

@-webkit-keyframes ttlAnime_sp {
  0% {
    width: 200%;
    opacity: 0;
    margin-top: -50%;
    margin-left: -50%; }
  100% {
    width: 100%;
    opacity: 1;
    margin-top: 0;
    margin-left: 0; } }

@keyframes ttlAnime_sp {
  0% {
    width: 200%;
    opacity: 0;
    margin-top: -50%;
    margin-left: -50%; }
  100% {
    width: 100%;
    opacity: 1;
    margin-top: 0;
    margin-left: 0; } }

@-webkit-keyframes boxAnime {
  0% {
    bottom: 0;
    opacity: 0; }
  100% {
    bottom: 15%;
    opacity: 1; } }

@keyframes boxAnime {
  0% {
    bottom: 0;
    opacity: 0; }
  100% {
    bottom: 15%;
    opacity: 1; } }

/*ヘッダー部
----------------------- */
.header {
  position: relative;
  height: 757px;
  margin-bottom: 75px;
  background-image: url(../img/head-bg_2400.png);
  background-position: bottom center;
  background-repeat: no-repeat; }
  @media (min-width: 2401px) {
    .header {
      background-size: 100%; } }
  @media (max-width: 767px) {
    .header {
      height: auto;
      min-height: 468px;
      background-image: url(../img/sp-head-bg.png);
      background-position: bottom center;
      background-repeat: no-repeat;
      background-size: 100%; } }
  @media (max-width: 400px) {
    .header {
      height: auto;
      min-height: 468px;
      background-image: url(../img/sp-head-bg.png);
      background-position: top center;
      background-repeat: no-repeat;
      background-size: 100%; } }
  .header-ttl {
    padding-top: 10px;
    padding-bottom: 10px;
    margin-bottom: 50px; }
    @media (max-width: 767px) {
      .header-ttl {
        margin-bottom: 20px; } }
  .header-mainCatch {
    position: relative; }
  .header-btnWrap {
    position: absolute;
    width: 100%;
    bottom: 15%;
    -webkit-animation-name: boxAnime;
    animation-name: boxAnime;
    -webkit-animation-duration: 0.7s;
    animation-duration: 0.7s;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1; }
  .header-btnLink {
    width: 32%; }
    .header-btnLink img {
      width: 100%; }
  .header-check {
    width: 58px;
    margin-left: auto;
    margin-right: auto; }

.mainCatch-bg {
  width: 90%;
  max-width: 719px;
  text-align: center;
  margin-left: auto;
  margin-right: auto; }
  .mainCatch-bg img {
    width: 100%; }
  @media (max-width: 767px) {
    .mainCatch-bg {
      width: 56%;
      max-width: 184px; } }

.mainCatch-float {
  position: absolute;
  width: 38%;
  max-width: 303px;
  top: -14%;
  left: 0;
  right: 0;
  margin-left: auto;
  margin-right: auto;
  text-align: center; }
  .mainCatch-float img {
    width: 100%; }
  @media (max-width: 767px) {
    .mainCatch-float {
      width: 56%;
      max-width: 184px;
      top: 0; } }
  .mainCatch-float .ttlAnime {
    -webkit-animation-name: ttlAnime;
    animation-name: ttlAnime;
    -webkit-animation-duration: 0.6s;
    animation-duration: 0.6s;
    -webkit-animation-timing-function: ease-out;
    animation-timing-function: ease-out;
    -webkit-animation-iteration-count: 1;
    animation-iteration-count: 1;
    -webkit-transform-origin: 50% 50%;
    -ms-transform-origin: 50% 50%;
    transform-origin: 50% 50%; }
    @media (max-width: 767px) {
      .mainCatch-float .ttlAnime {
        -webkit-animation-name: ttlAnime_sp;
        animation-name: ttlAnime_sp; } }

/*フッター部
----------------------- */
.footer {
  position: relative;
  padding-top: 18px;
  padding-bottom: 18px;
  background-color: #fff; }

.footer-copyright {
  text-align: center; }
  @media (max-width: 767px) {
    .footer-copyright {
      font-size: 1.0rem; } }

/* ---------------------------------------
_ページ共通
--------------------------------------- */
.sec-heading_2 {
  margin-bottom: 25px;
  padding-top: 15px;
  padding-bottom: 25px;
  text-align: center;
  border-bottom: 2px solid #333333; }
  @media (max-width: 767px) {
    .sec-heading_2 img {
      max-width: 100%; } }

.sec_bottom {
  padding-top: 200px; }

.sec-ttl {
  text-align: center;
  margin-bottom: 40px; }
  @media (max-width: 767px) {
    .sec-ttl img {
      max-width: 100%; } }

.sec-sns {
  width: 231px;
  margin-left: auto;
  margin-right: auto; }

.sec-bannerImg {
  max-width: 100%; }

.sns-btn {
  width: 54px; }

.btn_primary {
  width: 252px;
  max-width: 100%;
  margin-left: auto;
  margin-right: auto;
  margin-bottom: 25px;
  text-align: center;
  border: 2px solid #333;
  border-radius: 30px;
  -webkit-box-shadow: 5px 5px 0px 0px #333333;
  box-shadow: 5px 5px 0px 0px #333333;
  background-color: #FCC30B; }
  .btn_primary a {
    padding-top: 15px;
    padding-bottom: 15px; }

.fadeIn {
  opacity: 0.0;
  -webkit-transform: translate(0, 50px);
  -ms-transform: translate(0, 50px);
  transform: translate(0, 50px);
  -webkit-transition: all 500ms;
  -o-transition: all 500ms;
  transition: all 500ms; }

.scrollIn {
  opacity: 1;
  -webkit-transform: translate(0, 0);
  -ms-transform: translate(0, 0);
  transform: translate(0, 0); }

/*トップページ
----------------------- */
.mainCatch {
  position: relative;
  height: 418px;
  margin-bottom: 10px; }
  @media (max-width: 767px) {
    .mainCatch {
      max-width: 350px;
      height: 300px; } }
  .mainCatch-ttl {
    position: absolute;
    width: 204px;
    height: 166px;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    margin-top: auto;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: auto; }
    @media (max-width: 767px) {
      .mainCatch-ttl {
        padding-top: 20px;
        overflow: visible; } }

.sm-movieWrap {
  max-width: 100%;
  height: 450px; }
  @media (max-width: 767px) {
    .sm-movieWrap {
      position: relative;
      padding-bottom: 56.25%;
      padding-top: 30px;
      height: auto;
      overflow: hidden; }
      .sm-movieWrap iframe,
      .sm-movieWrap object,
      .sm-movieWrap embed {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%; } }

.sec_bottom {
  padding-bottom: 60px;
  background-image: url(../img/foot-awa.png);
  background-repeat: no-repeat;
  background-position: -500px; }
  @media (max-width: 767px) {
    .sec_bottom {
      background-image: url(../img/sp-foot-awa.png); } }
  .sec_bottom .sec-ttl, .sec_bottom .sec-sns {
    position: relative; }

.oni {
  padding: 0; }
