@media screen and (min-width: 769px), print {
  header {
    background: #00469B;
  }
  header.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99;
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    background-color: #fff;
    -moz-box-shadow: 0px 0px 8px 0px rgba(50, 49, 49, 0.39);
         box-shadow: 0px 0px 8px 0px rgba(50, 49, 49, 0.39);
  }
  header .bHeader {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 20px 40px;
    position: relative;
  }
  header .bHeader__logo {
    z-index: 9;
  }
  header .bHeader__logo h1 {
    height: 50px;
  }
  header .bHeader__logo a {
    display: inline-block;
  }
  header .bHeader__logo img {
    width: 400px;
    height: 50px;
    -webkit-transition: width 0.3s ease-out;
    -moz-transition: width 0.3s ease-out;
    transition: width 0.3s ease-out;
  }
  figure {
    display: block;
    text-align: center;
  }
  picture img {
    width: 100%;
  }
  h2,
  h3 {
    text-align: center;
  }
  .row h2 {
    padding: 30px 0;
  }
  .row figure {
    display: block;
    text-align: center;
    padding-bottom: 30px;
  }
  .hbanner {
    text-align: center;
    position: relative;
    margin-top: -20px;
    z-index: -1;
  }
  .contact_btns {
    background-color: #fffcda;
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 99;
  }
  .contact_btns .row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .contact_btns .row a {
    width: -webkit-calc(100% / 3);
    width: -moz-calc(100% / 3);
    width: calc(100% / 3);
    padding: 15px 10px;
  }
  .contact_btns figure {
    width: 100%;
    background-color: #0098d8;
    padding: 20px 0;
  }
  .linkbtn {
    text-align: center;
  }
  .slide {
    padding: 0;
    padding-top: 40px;
  }
  .slide figure img {
    margin: 0 auto;
  }
  .slide .slick-arrow {
    z-index: 99;
    width: 34px;
    height: 58px;
    top: 85px;
  }
  .slide .slick-prev {
    left: -webkit-calc(50% - 370px);
    left: -moz-calc(50% - 370px);
    left: calc(50% - 370px);
    background: url(../images/icon_prev.png);
    -moz-background-size: contain;
         background-size: contain;
  }
  .slide .slick-prev::before {
    content: "";
  }
  .slide .slick-prev:hover {
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
    opacity: 0.7;
    background: url(../images/icon_prev.png);
    -moz-background-size: contain;
         background-size: contain;
  }
  .slide .slick-prev:focus {
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
    opacity: 1;
    background: url(../images/icon_prev.png);
    -moz-background-size: contain;
         background-size: contain;
  }
  .slide .slick-next {
    right: -webkit-calc(50% - 360px);
    right: -moz-calc(50% - 360px);
    right: calc(50% - 360px);
    background: url(../images/icon_next.png);
    -moz-background-size: contain;
         background-size: contain;
  }
  .slide .slick-next::before {
    content: "";
  }
  .slide .slick-next:hover {
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
    opacity: 0.7;
    background: url(../images/icon_next.png);
    -moz-background-size: contain;
         background-size: contain;
  }
  .slide .slick-next:focus {
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
    opacity: 1;
    background: url(../images/icon_next.png);
    -moz-background-size: contain;
         background-size: contain;
  }
  .part01 {
    background-color: #FFF100;
    padding-bottom: 60px;
  }
  .part01 .row h2 {
    padding-bottom: 0;
  }
  .part02 {
    background-color: #96D0EE;
  }
  .part03 {
    background-color: #d7e7af;
  }
  .part04 {
    background-color: #fffcda;
    padding: 50px 0;
  }
  .part04 h2 img {
    -webkit-transform: translateX(15px);
       -moz-transform: translateX(15px);
        -ms-transform: translateX(15px);
            transform: translateX(15px);
  }
  .part05  {
    padding: 50px 0;
    /*padding-bottom: 40px;*/
  }
  .part06 {
    background-color: #fbdfd3;
  }
  .part06 h2 {
    padding: 53px 0;
    background: url(../images/part06_bg.png);
    background-repeat: repeat-x;
    margin-bottom: 30px;
  }
  .part07 h2 {
    padding: 40px 0;
    background-color: #008CD6;
    margin-bottom: 30px;
  }
  .part07 .row .linkbtn {
    margin-bottom: 30px;
  }
  .part07 h3 {
    padding: 40px 0;
    background-color: #fdd35c;
  }
  .part07_hl {
    position: relative;
  }
  .part07_hl-link1, .part07_hl-link2 {
    position: absolute;
    right: 18.5%;
    top: 35%;
  }
  .part07_hl-link2 {
    top: 59%;
  }
  .part07_hl-link3 {
    position: absolute;
    right: 10%;
    top: 30%;
  }
  .location {
    background-color: #fff;
    padding: 0 0;
  }
  .part08 {
    background: #008CD6;
    padding-top: 50px;
  }
  .location iframe {
    width: 100%;
    height: 580px;
  }
  footer {
    background-color: #00469B;
    padding-bottom: 5px;
  }
  footer span {
    margin-top: 15px;
    color: #fff;
    padding-bottom: 10px;
    display: block;
    font-size: 1.8rem;
    text-align: center;
  }
  footer h2,
  footer figure {
    background-color: #00469B;
    padding: 60px 0;
  }
  footer .ft_time {
    /*margin: 80px 0;*/
  }
}

@media screen and (max-width: 768px) {
  header {
    background: #00469B;
  }
  .part08 {
    background: #008CD6;
    padding-top: 10px;
  }
  header.fixed {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    z-index: 99;
    -webkit-transform: translate3d(0, 0, 0);
       -moz-transform: translate3d(0, 0, 0);
            transform: translate3d(0, 0, 0);
    background-color: #fff;
    -moz-box-shadow: 0px 0px 8px 0px rgba(50, 49, 49, 0.39);
         box-shadow: 0px 0px 8px 0px rgba(50, 49, 49, 0.39);
  }
  header .bHeader {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -webkit-box-align: center;
       -moz-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    padding: 1.95313vw 4.55729vw 1.69271vw 1.95313vw;
    position: relative;
  }
  header .bHeader__logo {
    line-height: 0;
  }
  header .bHeader__logo a {
    display: inline-block;
  }
  header .bHeader__logo img {
    width: 36.45833vw;
    height: auto;
    -webkit-transition: width 0.3s ease-out;
    -moz-transition: width 0.3s ease-out;
    transition: width 0.3s ease-out;
  }
  header .bHeader p {
    font-size: 4.6875vw;
    color: #231815;
    font-weight: bold;
    line-height: 1.1;
  }
  header .bHeader__bNav .overlay {
    position: fixed;
    z-index: 99;
    top: 0;
    right: 0;
    width: 100%;
    height: 100vh;
    -webkit-transition: .3s ease-in-out;
    -moz-transition: .3s ease-in-out;
    transition: .3s ease-in-out;
    background: rgba(0, 0, 0, 0.5);
    opacity: 0;
    -webkit-backface-visibility: hidden;
       -moz-backface-visibility: hidden;
            backface-visibility: hidden;
    visibility: hidden;
  }
  header .bHeader__bNav .overlay.open {
    opacity: 1;
    -webkit-backface-visibility: visible;
       -moz-backface-visibility: visible;
            backface-visibility: visible;
    visibility: visible;
  }
  header .bHeader__bNav .icon_nav {
    position: relative;
    margin-bottom: 1.30208vw;
  }
  header .bHeader__bNav .icon_nav .icon_menu {
    cursor: pointer;
    width: 6.90104vw;
    height: 4.55729vw;
    position: relative;
  }
  header .bHeader__bNav .icon_nav .icon_menu .icon_inner, header .bHeader__bNav .icon_nav .icon_menu .icon_inner::before, header .bHeader__bNav .icon_nav .icon_menu .icon_inner::after {
    position: absolute;
    width: 6.90104vw;
    height: 3px;
    -webkit-transition-timing-function: ease;
       -moz-transition-timing-function: ease;
            transition-timing-function: ease;
    -webkit-transition-duration: .1s;
       -moz-transition-duration: .1s;
            transition-duration: .1s;
    -webkit-transition-property: -webkit-transform;
    transition-property: -webkit-transform;
    -moz-transition-property: transform, -moz-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform, -moz-transform;
    background: #231815;
  }
  header .bHeader__bNav .icon_nav .icon_menu .icon_inner {
    -webkit-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
       -moz-transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
            transition-timing-function: cubic-bezier(0.68, -0.55, 0.265, 1.55);
    -webkit-transition-duration: .4s;
       -moz-transition-duration: .4s;
            transition-duration: .4s;
    display: block;
    top: 0;
    left: 0;
  }
  header .bHeader__bNav .icon_nav .icon_menu .icon_inner::before, header .bHeader__bNav .icon_nav .icon_menu .icon_inner::after {
    content: "";
    display: block;
  }
  header .bHeader__bNav .icon_nav .icon_menu .icon_inner::before {
    top: 2.34375vw;
    -webkit-transition: opacity .15s ease .4s;
    -moz-transition: opacity .15s ease .4s;
    transition: opacity .15s ease .4s;
  }
  header .bHeader__bNav .icon_nav .icon_menu .icon_inner::after {
    top: 4.94792vw;
    -webkit-transition: -webkit-transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: -webkit-transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    -moz-transition: transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55), -moz-transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
    transition: transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55), -webkit-transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55), -moz-transform 0.4s cubic-bezier(0.68, -0.55, 0.265, 1.55);
  }
  header .bHeader__bNav .nav {
    position: fixed;
    right: -100%;
    top: 0;
    height: 100vh;
    width: 50%;
    background-color: #00469B;
    padding-top: 9.11458vw;
    z-index: 999;
    -webkit-transition: right 0.3s ease-out;
    -moz-transition: right 0.3s ease-out;
    transition: right 0.3s ease-out;
  }
  header .bHeader__bNav .nav.open {
    right: 0;
  }
  header .bHeader__bNav .nav__menu {
    text-align: center;
  }
  header .bHeader__bNav .nav__menu li {
    line-height: 0;
  }
  header .bHeader__bNav .nav__menu li:not(:last-child) {
    margin-bottom: 2.60417vw;
  }
  header .bHeader__bNav .nav__menu li a {
    font-size: 4.16667vw;
    line-height: 1.5;
    text-align: center;
    letter-spacing: 1px;
    color: #fff;
  }
  figure {
    display: block;
    text-align: center;
  }
  picture img {
    width: 100%;
  }
  h2,
  h3 {
    text-align: center;
  }
  .row h2 {
    padding: 3.90625vw 0;
  }
  .row figure {
    display: block;
    text-align: center;
    padding-bottom: 3.90625vw;
  }
  .hbanner {
    text-align: center;
    position: relative;
    margin-top: -10px;
    z-index: -1;
  }
  .contact_btns {
    background-color: #00469B;
    position: fixed;
    bottom: 0;
    width: 100%;
    z-index: 99;
  }
  .contact_btns .row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
       -moz-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .contact_btns .row a {
    width: -webkit-calc(100% / 3);
    width: -moz-calc(100% / 3);
    width: calc(100% / 3);
    padding: 1.95313vw 1.30208vw;
  }
  .contact_btns figure {
    width: 100%;
    background-color: #0098d8;
    padding: 2.60417vw 0;
  }
  .linkbtn {
    text-align: center;
  }
  .slide {
    padding: 0;
    padding-top: 5.20833vw;
  }
  .slide figure img {
    margin: 0 auto;
  }
  .slide .slick-arrow {
    z-index: 99;
    width: 4.42708vw;
    height: 7.55208vw;
    top: 11.06771vw;
  }
  .slide .slick-prev {
    left: -webkit-calc(50% - vw(370));
    left: -moz-calc(50% - vw(370));
    left: calc(50% - vw(370));
    background: url(../images/icon_prev.png);
    -moz-background-size: contain;
         background-size: contain;
  }
  .slide .slick-prev::before {
    content: "";
  }
  .slide .slick-prev:hover {
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
    opacity: 0.7;
    background: url(../images/icon_prev.png);
    -moz-background-size: contain;
         background-size: contain;
  }
  .slide .slick-prev:focus {
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
    opacity: 1;
    background: url(../images/icon_prev.png);
    -moz-background-size: contain;
         background-size: contain;
  }
  .slide .slick-next {
    right: -webkit-calc(50% - vw(360));
    right: -moz-calc(50% - vw(360));
    right: calc(50% - vw(360));
    background: url(../images/icon_next.png);
    -moz-background-size: contain;
         background-size: contain;
  }
  .slide .slick-next::before {
    content: "";
  }
  .slide .slick-next:hover {
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
    opacity: 0.7;
    background: url(../images/icon_next.png);
    -moz-background-size: contain;
         background-size: contain;
  }
  .slide .slick-next:focus {
    -webkit-transition: opacity 0.3s ease-out;
    -moz-transition: opacity 0.3s ease-out;
    transition: opacity 0.3s ease-out;
    opacity: 1;
    background: url(../images/icon_next.png);
    -moz-background-size: contain;
         background-size: contain;
  }
  .part01 {
    background-color: #FFF100;
    padding-bottom: 7.8125vw;
  }
  .part01 .row h2 {
    padding-bottom: 0;
  }
  .part02 {
    background-color: #96D0EE;
  }
  .part03 {
    background-color: #d7e7af;
  }
  .part04 {
    background-color: #fffcda;
    padding: 6.51042vw 0;
  }
  .part04 h2 img {
    -webkit-transform: translateX(1.95313vw);
       -moz-transform: translateX(1.95313vw);
        -ms-transform: translateX(1.95313vw);
            transform: translateX(1.95313vw);
  }
  .part05 h2 {
    padding-bottom: 5.20833vw;
  }
  .part06 {
    background-color: #eaf6fd;
  }
  .part06 h2 {
    padding: 5.85938vw;
    background: url(../images/part06_bg.png);
    background-repeat: repeat-x;
    -moz-background-size: 8%;
         background-size: 8%;
    margin-bottom: 3.90625vw;
  }
  .part07 h2 {
    padding: 5.20833vw 5.85938vw;
    background-color: #008CD6;
    margin-bottom: 3.90625vw;
  }
  .part07 .row .linkbtn {
    margin-bottom: 3.90625vw;
  }
  .part07 h3 {
    padding: 5.20833vw 5.85938vw;
    background-color: #fdd35c;
  }
  .part07_hl {
    position: relative;
  }
  .part07_hl-link1, .part07_hl-link2 {
    position: absolute;
    width: 41.66667vw;
    right: 15%;
    top: 35%;
  }
  .part07_hl-link2 {
    top:59.5%;
  }
  .part07_hl-link3 {
    position: absolute;
    width: 34.50521vw;
    right: 6.5%;
    top: 31%;
  }
  .location {
    background-color: #fff;
    padding: 0 0;
  }
  .location iframe {
    width: 100%;
    height: 75.52083vw;
  }
  footer {
    background-color: #00469B;
    padding-bottom: 0.65104vw;
  }
  footer span {
    margin-top: 1.95313vw;
    color: #fff;
    padding-bottom: 1.30208vw;
    display: block;
    font-size: 2.08333vw;
    text-align: center;
  }
  footer h2,
  footer figure {
    background-color: #00469B;
    padding: 7.8125vw 5.85938vw;
  }
  footer .ft_time {
    /*margin: 10.41667vw 0;*/
  }
}
