*, ::before, ::after {
    box-sizing: border-box
}
::before, ::after {
    text-decoration: inherit;
    vertical-align: inherit
}
html {
    cursor: default;
    line-height: 1.5;
    -moz-tab-size: 4;
    tab-size: 4;
    -webkit-tap-highlight-color: transparent;
    -ms-text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%;
    word-break: break-word
}
body {
    margin: 0
}
h1 {
    font-size: 2em;
    margin: 0.67em 0
}
dl dl, dl ol, dl ul, ol dl, ul dl {
    margin: 0
}
ol ol, ol ul, ul ol, ul ul {
    margin: 0
}
hr {
    height: 0;
    overflow: visible
}
main {
    display: block
}
nav ol, nav ul {
    list-style: none;
    padding: 0
}
pre {
    font-family: monospace, monospace;
    font-size: 1em
}
a {
    background-color: transparent
}
abbr[title] {
    text-decoration: underline;
    text-decoration: underline dotted
}
b, strong {
    font-weight: bolder
}
code, kbd, samp {
    font-family: monospace, monospace;
    font-size: 1em
}
small {
    font-size: 80%
}
audio, canvas, iframe, img, svg, video {
    vertical-align: middle
}
audio, video {
    display: inline-block
}
audio:not([controls]) {
    display: none;
    height: 0
}
iframe {
    border-style: none
}
img {
    border-style: none
}
svg:not([fill]) {
    fill: currentColor
}
svg:not(:root) {
    overflow: hidden
}
table {
    border-collapse: collapse
}
button, input, select {
    margin: 0
}
button {
    overflow: visible;
    text-transform: none
}
button, [type="button"], [type="reset"], [type="submit"] {
    -webkit-appearance: button
}
fieldset {
    border: 1px solid #a0a0a0;
    padding: 0.35em 0.75em 0.625em
}
input {
    overflow: visible
}
legend {
    color: inherit;
    display: table;
    max-width: 100%;
    white-space: normal
}
progress {
    display: inline-block;
    vertical-align: baseline
}
select {
    text-transform: none
}
textarea {
    margin: 0;
    overflow: auto;
    resize: vertical
}
[type="checkbox"], [type="radio"] {
    padding: 0
}
[type="search"] {
    -webkit-appearance: textfield;
    outline-offset: -2px
}
::-webkit-inner-spin-button, ::-webkit-outer-spin-button {
    height: auto
}
::-webkit-input-placeholder {
    color: inherit;
    opacity: 0.54
}
::-webkit-search-decoration {
    -webkit-appearance: none
}
::-webkit-file-upload-button {
    -webkit-appearance: button;
    font: inherit
}
::-moz-focus-inner {
    border-style: none;
    padding: 0
}
:-moz-focusring {
    outline: 1px dotted ButtonText
}
:-moz-ui-invalid {
    box-shadow: none
}
details {
    display: block
}
dialog {
    background-color: white;
    border: solid;
    color: black;
    display: block;
    height: -moz-fit-content;
    height: -webkit-fit-content;
    height: fit-content;
    left: 0;
    margin: auto;
    padding: 1em;
    position: absolute;
    right: 0;
    width: -moz-fit-content;
    width: -webkit-fit-content;
    width: fit-content
}
dialog:not([open]) {
    display: none
}
summary {
    display: list-item
}
canvas {
    display: inline-block
}
template {
    display: none
}
a, area, button, input, label, select, summary, textarea, [tabindex] {
    -ms-touch-action: manipulation;
    touch-action: manipulation
}
[hidden] {
    display: none
}
[aria-busy="true"] {
    cursor: progress
}
[aria-controls] {
    cursor: pointer
}
[aria-disabled="true"], [disabled] {
    cursor: not-allowed
}
[aria-hidden="false"][hidden] {
    display: initial
}
[aria-hidden="false"][hidden]:not(:focus) {
    clip: rect(0, 0, 0, 0);
    position: absolute
}
html, body, p, ol, ul, li, dl, dt, dd, blockquote, figure, fieldset, legend, textarea, pre, iframe, hr, h1, h2, h3, h4, h5, h6 {
    margin: 0;
    padding: 0
}
ul, ol {
    list-style: none
}
button, input, select, textarea {
    margin: 0
}
img, embed, object, audio, video {
    height: auto;
    max-width: 100%
}
iframe {
    border: 0
}
table {
    border-collapse: collapse;
    border-spacing: 0
}
td, th {
    padding: 0;
    text-align: left
}
a {
    text-decoration: none
}
em, s, q, i, b, u, mark, address {
    font-style: normal
}
header, main, footer, aside, article, section, nav {
    display: block
}
select {
    background: url("../../img/lp/select-arrow.png") right 15px center no-repeat #fff;
    cursor: pointer;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    position: relative
}
html, body {
    width: 100%;
    height: 100%
}

body {
    font-size: 16px;
    line-height: 1.8;
    letter-spacing: 0.2em;
    color: #fff;
    background: #000;
    position: relative
}
@keyframes nav_fadein {
    0% {
        opacity: 0;
        -webkit-transform: translateY(-10px);
        -ms-transform: translateY(-10px);
        transform: translateY(-10px)
    }
    100% {
        opacity: 1;
        -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
        transform: translateY(0)
    }
}
@font-face {
    font-family: 'Noto Sans JP';
    font-style: normal;
    font-weight: 300;
    font-display: swap;
    src: local("Noto Sans Japanese Light"), local("NotoSansJapanese-Light"), url(https://fonts.gstatic.com/s/notosansjp/v27/-F6pfjtqLzI2JPCgQBnw7HFQaioq131nj-pXANNwpfqCt9pay6XIBdsAJNIhVEwQ.0.woff2) format("woff2")
}
@font-face {
    font-family: 'Noto Sans JP';
    font-style: normal;
    font-weight: 400;
    font-display: swap;
    src: local("Noto Sans Japanese Regular"), local("NotoSansJapanese-Regular"), url(https://fonts.gstatic.com/s/notosansjp/v25/-F62fjtqLzI2JPCgQBnw7HFowwII2lcnk-AFfrgQrvWXpdFg3KXxAMsKMbdN.0.woff2) format("woff2")
}
@font-face {
    font-family: 'Noto Sans JP';
    font-style: normal;
    font-weight: 500;
    font-display: swap;
    src: local("Noto Sans Japanese Medium"), local("NotoSansJapanese-Medium"), url(https://fonts.gstatic.com/s/notosansjp/v27/-F6pfjtqLzI2JPCgQBnw7HFQMisq131nj-pXANNwpfqCt9pay6XIBdsAJNIhVEwQ.0.woff2) format("woff2")
}
@font-face {
    font-family: 'Noto Sans JP';
    font-style: normal;
    font-weight: 700;
    font-display: swap;
    src: local("Noto Sans Japanese Bold"), local("NotoSansJapanese-Bold"), url(https://fonts.gstatic.com/s/notosansjp/v25/-F6pfjtqLzI2JPCgQBnw7HFQei0q131nj-pXANNwpfqCt9pay6XIBdsAJNIhVEwQ.0.woff2) format("woff2")
}
body, h1 {
    font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
    font-family: "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
    font-weight: 500;
    letter-spacing: 0.15em
}
h2, h3, h4, h5, h6 {
    font-family: 'Oswald', "Yu Gothic", "游ゴシック", "YuGothic", "游ゴシック体", sans-serif;
    font-weight: 700
}
a {
    transition: .1s;
    cursor: pointer
}
a:hover {
    opacity: .95
}
p {
    line-height: 1.8
}
#wrapper {
    width: 100%;
    height: 100%;
    position: relative
}
@media screen and (max-width: 1240px) {
    #wrapper {
        display: block;
        height: auto
    }
}
.fv h1.logo_toyotakyushu {
    width: 185px;
    height: auto;
    position: absolute;
    z-index: 1;
    top: 10px;
    left: 10px
}
@media screen and (max-width: 980px) {
    .fv h1.logo_toyotakyushu {
        width: 198px
    }
}
@media screen and (max-width: 480px) {
    .fv h1.logo_toyotakyushu {
        width: 41.25vw
    }
}

.fv .logo_lchub {
    width: 122px;
    height: auto;
    position: absolute;
    z-index: 1;
    top: 10px;
    right: 130px
}
@media screen and (max-width: 980px) {
    .fv .logo_lchub {
        right: 80px;
        width: 95px
    }
}
@media screen and (max-width: 480px) {
    .fv .logo_lchub {
        width: 25.4166666667vw
    }
}
.fv {
    position: relative;
    z-index: 0;
    text-align: center;
    width: 100%;
    height: 100vh;
    margin: 0 auto;
    background: url(../../img/top/fv_bg.jpg) 0 0 no-repeat;
    background-size: cover
}
@media screen and (max-width: 480px) {
    .fv {
        height: 100vh
    }
}
.fv .container {
    max-width: 996px;
    height: 480px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    margin: auto;
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    padding: 0;
}
@media screen and (max-width: 750px) {
    .fv .container {
        height: 380px
    }
}
@media screen and (max-width: 580px) {
    .fv .container {
        height: 280px
    }
}
@media screen and (max-width: 380px) {
    .fv .container {
        height: 220px
    }
}
.fv .container * img {
    width: 100%
}
.fv .container h2 {
    width: 616px;
    height: 184px;
    margin: 0 auto
}
@media screen and (max-width: 750px) {
    .fv .container h2 {
        width: 80%;
        height: auto
    }
}
.fv .container .fv_txt01 {
    margin: 0 auto;
    width: 100%
}
@media screen and (max-width: 750px) {
    .fv .container .fv_txt01 {
        width: 90%
    }
}
@media screen and (max-width: 480px) {
    .fv .container .fv_txt01 {
        width: 100%
    }
}
.fv .container .fv_txt02 {
    margin: 0 auto;
    width: 229px;
    height: 112px;
    margin-top: 3vh;
}

@media screen and (max-width: 480px) {
  .fv .container .fv_txt02 {
    width: 170px;
  }
}

.fv .container .fv_txt03 {
  position: relative;
  width: 90%;
  max-width: 680px;
  margin-top: 3vh;
  padding: 1em;
  color: #000;
  background: #fff;
  border-radius: 5px;
}

.fv .container .fv_txt03 .ic {
  display: inline-block;
  vertical-align: baseline;
  width: 18px;
  margin-left: .25em;
}

.fv .container .fv_txt03 .reject {
  display: none;
}

@media screen and (max-width: 480px) {
  .fv .container .fv_txt03 {
    font-size: 11px;
  }
  .fv .container .fv_txt03 .ic {
    width: 14px;
  }  
  .fv .container .fv_txt03 .reject {
    display: block;
  }
}

main {
    width: 100%;
    overflow-x: hidden;
    overflow-y: hidden
}
main section .container-fluid, main>div .container-fluid {
    width: 100%;
    padding: 80px 0;
    margin: auto
}
@media screen and (max-width: 980px) {
    main section .container-fluid, main>div .container-fluid {
        padding: 60px 0
    }
}
@media screen and (max-width: 750px) {
    main section .container-fluid, main>div .container-fluid {
        padding: 40px 0
    }
}
@media screen and (max-width: 480px) {
    main section .container-fluid, main>div .container-fluid {
        padding: 0px 0
    }
}
main section .container,
main>div .container {
    width: 100%;
    max-width: 1600px;
    padding: 80px 0;
    margin: 0 auto
}
@media screen and (max-width: 1680px) {
    main section .container, main>div .container {
        max-width: 100%;
        padding: 80px 80px
    }
}
@media screen and (max-width: 980px) {
    main section .container, main>div .container {
        padding: 60px 60px
    }
}
@media screen and (max-width: 750px) {
    main section .container, main>div .container {
        padding: 40px 40px
    }
}
@media screen and (max-width: 580px) {
    main section .container, main>div .container {
        padding: 40px 30px
    }
}
@media screen and (max-width: 480px) {
    main section .container, main>div .container {
        padding: 30px 20px
    }
}
footer {
    width: 100%;
    position: relative;
    border-top: 2px solid #fff;
    padding: 0;
}
@media screen and (max-width: 750px) {
    footer {
        border-top: none
    }
}
footer * {
    color: #fff
}
footer .footer_toyotakyushu {
    width: 185px;
    height: auto;
    position: absolute;
    z-index: 1;
    left: 20px;
    top: 40px
}
@media screen and (max-width: 750px) {
    footer .footer_toyotakyushu {
        width: 24.6666666667vw
    }
}
@media screen and (max-width: 480px) {
    footer .footer_toyotakyushu {
        width: 38.5416666667vw
    }
}
footer .footer_lchub {
    width: 122px;
    height: auto;
    position: absolute;
    z-index: 1;
    right: 20px;
    top: 40px
}
@media screen and (max-width: 750px) {
    footer .footer_lchub {
        width: 16.2666666667vw
    }
}
@media screen and (max-width: 480px) {
    footer .footer_lchub {
        width: 25.4166666667vw
    }
}
footer .inner {
    position: relative;
    width: 100%;
    padding: 40px;
    margin: 0 auto;
    display: flex;
    justify-content: space-between;
    align-items: center;
    flex-direction: column
}
footer .inner .footer_logo {
    width: 240px;
    margin-bottom: 30px
}
@media screen and (max-width: 750px) {
    footer .inner .footer_logo {
        width: 32vw;
        margin-top: 40px;
        margin-bottom: 20px
    }
}
@media screen and (max-width: 480px) {
    footer .inner .footer_logo {
        width: 50vw;
        margin-top: 60px;
        margin-bottom: 10px
    }
}
footer .inner .footer_logo img {
    width: 100%
}
footer .inner .footer_sub_logo {
    width: 145px;
    margin-bottom: 20px
}
@media screen and (max-width: 750px) {
    footer .inner .footer_sub_logo {
        margin-bottom: 10px
    }
}
footer .inner .footer_sub_logo img {
    width: 100%
}
footer .inner .copyright {
    font-size: 1.1rem;
    letter-spacing: 0.06em;
    font-family: "Oswald", sans-serif;
    font-weight: 400
}
@media screen and (max-width: 750px) {
    footer .inner .copyright {
        padding: 0 20px
    }
}
@media screen and (max-width: 480px) {
    footer .inner .copyright {
        font-size: 1.0rem
    }
}
@media screen and (max-width: 430px) {
    footer .inner .copyright {
        letter-spacing: 0.03em;
        font-size: 0.9rem
    }
}
@media screen and (max-width: 380px) {
    footer .inner .copyright {
        letter-spacing: 0.0em
    }
}
footer .page_top {
    position: absolute;
    bottom: 20px;
    right: 20px;
    width: 16px;
    height: auto
}
footer .page_top img {
    width: 100%
}
footer .footer_sns {
    width: 100%;
    display: flex;
    margin: 0 auto
}
@media screen and (min-width: 981px) {
    footer .footer_sns {
        display: none
    }
}
@media screen and (min-width: 751px) {
    footer .footer_sns {
        width: 50%;
        padding-bottom: 20px;
        justify-content: space-between
    }
}
footer .footer_sns li {
    width: 25%
}
@media screen and (min-width: 751px) {
    footer .footer_sns li {
        width: 80px
    }
}
 h2.sttl {
    font-size: 5.2rem;
    font-weight: 400;
    letter-spacing: 0.14em;
    line-height: 1.0;
    margin-bottom: 60px
}
@media screen and (max-width: 1240px) {
     h2.sttl {
        margin-bottom: 40px
    }
}
@media screen and (max-width: 750px) {
     h2.sttl {
        font-size: 4.8rem
    }
}
@media screen and (max-width: 580px) {
     h2.sttl {
        font-size: 4.4rem
    }
}
@media screen and (max-width: 480px) {
     h2.sttl {
        font-size: 4.0rem
    }
}
@media screen and (max-width: 380px) {
     h2.sttl {
        font-size: 3.6rem
    }
}
 .sec01 {
    position: relative
}
 .sec01 .container {
    display: flex;
    flex-wrap: wrap
}
 .sec01 .container .inner.block01 {
    display: flex;
    align-items: flex-start;
    width: 100%;
    border-bottom: 3px solid #fff;
    padding-bottom: 80px
}
 .sec01 .container .inner.block01 .sttl {
    margin-bottom: 0;
    margin-right: 60px;
    word-break: keep-all
}
@media screen and (max-width: 1480px) {
     .sec01 .container .inner.block01 .sttl {
        margin-right: 40px
    }
}
@media screen and (max-width: 1240px) {
     .sec01 .container .inner.block01 .sttl {
        margin-right: 0;
        margin-bottom: 20px
    }
}
@media screen and (max-width: 980px) {
     .sec01 .container .inner.block01 .sttl {
        text-align: center
    }
}
@media screen and (max-width: 1240px) {
     .sec01 .container .inner.block01 {
        flex-direction: column;
        padding-bottom: 40px
    }
}
@media screen and (max-width: 980px) {
     .sec01 .container .inner.block01 {
        align-items: center
    }
}
 .sec01 .container .inner.block01 p {
    font-size: 2.6rem
}
@media screen and (max-width: 1480px) {
     .sec01 .container .inner.block01 p {
        font-size: 2.2rem
    }
}
@media screen and (max-width: 980px) {
     .sec01 .container .inner.block01 p {
        text-align: left
    }
}
@media screen and (max-width: 580px) {
     .sec01 .container .inner.block01 p {
        font-size: 1.8rem
    }
}
 .sec01 .container .inner.block02,  .sec01 .container .inner.block03 {
    width: 50%;
    padding: 80px 70px 60px
}
 .sec01 .container .inner.block02 .sttl,  .sec01 .container .inner.block03 .sttl {
    margin-bottom: 30px
}
@media screen and (max-width: 980px) {
     .sec01 .container .inner.block02 .sttl,  .sec01 .container .inner.block03 .sttl {
        text-align: center
    }
}
@media screen and (max-width: 1240px) {
     .sec01 .container .inner.block02,  .sec01 .container .inner.block03 {
        padding: 40px 50px 40px
    }
}
@media screen and (max-width: 980px) {
     .sec01 .container .inner.block02,  .sec01 .container .inner.block03 {
        width: 100%;
        padding: 40px 0
    }
}
@media screen and (max-width: 480px) {
     .sec01 .container .inner.block02,  .sec01 .container .inner.block03 {
        padding: 40px 0 0
    }
}
 .sec01 .container .inner.block02 p,  .sec01 .container .inner.block03 p {
    font-size: 1.8rem;
    letter-spacing: 0.08em;
    margin-bottom: 30px
}
@media screen and (max-width: 580px) {
     .sec01 .container .inner.block02 p,  .sec01 .container .inner.block03 p {
        font-size: 1.6rem
    }
}
 .sec01 .container .inner.block02 .info,  .sec01 .container .inner.block03 .info {
    letter-spacing: 0em;
    display: flex;
    align-items: flex-start;
    font-size: 1.6rem
}
@media screen and (max-width: 580px) {
     .sec01 .container .inner.block02 .info,  .sec01 .container .inner.block03 .info {
        flex-direction: column
    }
}
 .sec01 .container .inner.block02 .info em,  .sec01 .container .inner.block03 .info em {
    width: 10em;
    text-align: center;
    font-size: 1.6rem;
    font-weight: bold;
    border: 1px solid #fff;
    padding: 0.2em;
    margin-right: 20px
}
@media screen and (max-width: 1240px) {
     .sec01 .container .inner.block02 .info em,  .sec01 .container .inner.block03 .info em {
        width: 15em
    }
}
@media screen and (max-width: 580px) {
     .sec01 .container .inner.block02 .info em,  .sec01 .container .inner.block03 .info em {
        font-size: 1.5rem;
        margin-bottom: 10px;
        width: auto;
        padding: 0.2em 0.5em
    }
}
@media screen and (max-width: 580px) {
     .sec01 .container .inner.block02 .info,  .sec01 .container .inner.block03 .info {
        font-size: 1.5rem
    }
}
 .sec01 .container .inner.block03 {
    border-left: 3px solid #fff
}
@media screen and (max-width: 980px) {
     .sec01 .container .inner.block03 {
        border: none
    }
     .sec01 .container .inner.block03 .sttl {
        margin-top: 40px
    }
     .sec01 .container .inner.block03:before {
        content: "";
        width: 50%;
        height: 2px;
        background: #fff;
        display: block
    }
}
@media screen and (max-width: 480px) {
     .sec01 .container .inner.block03 {
        padding: 40px 0 20px
    }
}
 .sec02 {
    position: relative;
    width: 100%;
    min-height: 100vh;
    margin: 0 auto;
    background: url(../../img/top/sec02_bg.jpg) 0 0 no-repeat;
    background-size: cover
}
 .sec02 .container {
    text-align: center;
    padding-bottom: 0
}
 .sec02 .container .lead {
    font-size: 1.6rem;
    margin-bottom: 60px
}
@media screen and (max-width: 1240px) {
     .sec02 .container .lead {
        margin-bottom: 40px
    }
}
@media screen and (max-width: 980px) {
     .sec02 .container .lead {
        text-align: left
    }
}
 .sec02 .container .inner {
    margin-bottom: 80px
}
@media screen and (max-width: 1240px) {
     .sec02 .container .inner {
        margin-bottom: 40px
    }
}
 .sec02 .container .inner h3 {
    border: 2px solid #fff;
    padding: 10px;
    font-size: 3.2rem;
    font-weight: 400;
    margin-bottom: 60px
}
@media screen and (max-width: 750px) {
     .sec02 .container .inner h3 {
        font-size: 2.8rem;
        padding: 6px;
        margin-bottom: 40px
    }
}
@media screen and (max-width: 580px) {
     .sec02 .container .inner h3 {
        font-size: 2.4rem;
        padding: 4px;
        margin-bottom: 30px
    }
}
@media screen and (max-width: 480px) {
     .sec02 .container .inner h3 {
        font-size: 2.2rem;
        margin-bottom: 20px
    }
}
 .sec02 .container .inner.block01 .info {
    font-size: 2.8rem;
    letter-spacing: 0.1em;
    font-weight: bold
}
@media screen and (max-width: 750px) {
     .sec02 .container .inner.block01 .info {
        font-size: 2.4rem
    }
}
@media screen and (max-width: 580px) {
     .sec02 .container .inner.block01 .info {
        font-size: 1.8rem
    }
}
@media screen and (max-width: 480px) {
     .sec02 .container .inner.block01 .info {
        font-size: 1.6rem
    }
}
 .sec02 .container .inner.block01 .info em {
    font-size: 4.6rem
}
@media screen and (max-width: 750px) {
     .sec02 .container .inner.block01 .info em {
        font-size: 4.2rem
    }
}
@media screen and (max-width: 580px) {
     .sec02 .container .inner.block01 .info em {
        font-size: 3.4rem
    }
}
@media screen and (max-width: 480px) {
     .sec02 .container .inner.block01 .info em {
        font-size: 3.0rem
    }
}
@media screen and (max-width: 380px) {
     .sec02 .container .inner.block01 .info em {
        font-size: 2.4rem
    }
}
 .sec02 .container .inner.block01 .info br.sp {
    display: none
}
@media screen and (max-width: 480px) {
     .sec02 .container .inner.block01 .info br.sp {
        display: block
    }
}
 .sec02 .container .inner.block01 .wrap_bnr {
    width: 100%;
    max-width: 1020px;
    margin: 40px auto;
    display: flex;
    justify-content: space-between
}
@media screen and (max-width: 750px) {
     .sec02 .container .inner.block01 .wrap_bnr {
        flex-wrap: wrap;
        padding: 0 40px;
        margin-bottom: 0
    }
}
@media screen and (max-width: 480px) {
     .sec02 .container .inner.block01 .wrap_bnr {
        margin: 20px auto 0;
        padding: 0 20px
    }
}
@media screen and (max-width: 380px) {
     .sec02 .container .inner.block01 .wrap_bnr {
        padding: 0 0
    }
}
 .sec02 .container .inner.block01 .wrap_bnr a {
    width: calc(50% - 20px)
}
@media screen and (max-width: 750px) {
     .sec02 .container .inner.block01 .wrap_bnr a {
        width: 100%;
        margin-bottom: 40px
    }
}
@media screen and (max-width: 480px) {
     .sec02 .container .inner.block01 .wrap_bnr a {
        margin-bottom: 20px
    }
}
 .sec02 .container .inner.block01 .wrap_bnr a img {
    width: 100%
}
 .sec02 .container .inner.block02 {
    border-bottom: 1px solid #fff;
    padding-bottom: 80px
}
@media screen and (max-width: 980px) {
     .sec02 .container .inner.block02 {
        padding-bottom: 40px
    }
}
 .sec02 .container .inner.block02 .point {
    width: 100%;
    max-width: 1020px;
    margin: 40px auto;
    display: flex;
    justify-content: space-between;
    align-items: center
}
@media screen and (max-width: 980px) {
     .sec02 .container .inner.block02 .point {
        flex-direction: column;
        margin: 20px auto 0
    }
}
@media screen and (max-width: 580px) {
     .sec02 .container .inner.block02 .point {
        padding: 0 40px
    }
}
@media screen and (max-width: 480px) {
     .sec02 .container .inner.block02 .point {
        padding: 0 20px
    }
}
@media screen and (max-width: 380px) {
     .sec02 .container .inner.block02 .point {
        padding: 0 10px
    }
}
 .sec02 .container .inner.block02 .point li {
    display: flex;
    align-items: center;
    justify-content: center;
    width: calc(33.3% - 15px);
    height: 70px;
    background: #fff;
    color: #000;
    font-size: 2.4rem;
    font-weight: 500;
    padding: 10px
}
@media screen and (max-width: 1240px) {
     .sec02 .container .inner.block02 .point li {
        width: auto;
        min-width: 20%;
        margin: 0 15px
    }
}
@media screen and (max-width: 980px) {
     .sec02 .container .inner.block02 .point li {
        width: 70%;
        height: 50px;
        max-width: 450px;
        margin-bottom: 20px;
        font-size: 2.0rem
    }
}
@media screen and (max-width: 580px) {
     .sec02 .container .inner.block02 .point li {
        width: 100%;
        max-width: 100%;
        font-size: 1.8rem
    }
}
 .sec02 .container .inner.block02 .info {
    font-size: 2.0rem;
    letter-spacing: 0.1em;
    font-weight: bold
}
@media screen and (max-width: 750px) {
     .sec02 .container .inner.block02 .info {
        font-size: 1.8rem
    }
}
@media screen and (max-width: 580px) {
     .sec02 .container .inner.block02 .info {
        font-size: 1.6rem
    }
}
@media screen and (max-width: 380px) {
     .sec02 .container .inner.block02 .info {
        font-size: 1.5rem
    }
}
 .sec02 .container .inner.block02 .info em {
    font-size: 4.0rem
}
@media screen and (max-width: 750px) {
     .sec02 .container .inner.block02 .info em {
        font-size: 3.6rem
    }
}
@media screen and (max-width: 580px) {
     .sec02 .container .inner.block02 .info em {
        font-size: 3.4rem
    }
}
@media screen and (max-width: 480px) {
     .sec02 .container .inner.block02 .info em {
        font-size: 2.8rem
    }
}
@media screen and (max-width: 380px) {
     .sec02 .container .inner.block02 .info em {
        font-size: 2.4rem
    }
}
 .sec02 .container .inner.block02 .info span {
    font-size: 3.0rem
}
@media screen and (max-width: 750px) {
     .sec02 .container .inner.block02 .info span {
        font-size: 2.8rem
    }
}
@media screen and (max-width: 580px) {
     .sec02 .container .inner.block02 .info span {
        font-size: 2.4rem
    }
}
@media screen and (max-width: 480px) {
     .sec02 .container .inner.block02 .info span {
        font-size: 1.8rem
    }
}
@media screen and (max-width: 380px) {
     .sec02 .container .inner.block02 .info span {
        font-size: 1.8rem
    }
}
.sec02 .container .inner.block03 {
	width: 100%;
	max-width: 910px;
	margin: 40px auto
}
@media screen and (max-width: 750px) {
	.sec02 .container .inner.block03 {
		margin-bottom: 0
	}
}
.sec02 .container .inner.block03 .info {
	font-size: 2.2rem;
	letter-spacing: 0.1em;
	font-weight: bold;
	margin-bottom: 40px
}
@media screen and (max-width: 750px) {
	.sec02 .container .inner.block03 .info {
		font-size: 1.8rem
	}
}
@media screen and (max-width: 580px) {
	.sec02 .container .inner.block03 .info {
		font-size: 1.6rem;
		margin-bottom: 20px
	}
}
@media screen and (max-width: 380px) {
	.sec02 .container .inner.block03 .info {
		font-size: 1.4rem
	}
}
.sec02 .container .inner.block03 .info br {
	display: none
}
@media screen and (max-width: 580px) {
	.sec02 .container .inner.block03 .info br {
		display: block
	}
}
.sec02 .container .inner.block03 ul {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap
}
@media screen and (max-width: 1240px) {
	.sec02 .container .inner.block03 ul {
		justify-content: flex-start;
	}
}
@media screen and (max-width: 580px) {
	.sec02 .container .inner.block03 ul {
		justify-content: flex-start;
	}
}
.sec02 .container .inner.block03 ul li {
	width: calc(20% - 20px);
	margin: 0 0 20px;
	max-width: 180px
}
@media screen and (min-width: 1241px) {
	/*
	.sec02 .container .inner.block03 ul li:nth-of-type(1) {
	margin-left: 100px
}
	.sec02 .container .inner.block03 ul li:nth-of-type(4) {
	margin-right: 100px
}
	*/
}
@media screen and (max-width: 1240px) {
	.sec02 .container .inner.block03 ul li {
		max-width: 120px;
		width: calc(20% - 40px);
		margin: 0 20px 20px;
	}
}
@media screen and (max-width: 580px) {
	.sec02 .container .inner.block03 ul li {
		width: 25%;
		max-width: 100%;
		margin: 0 0px 10px;
		padding: 0 2.5px;
		box-sizing: border-box;
	}
	/*
	.sec02 .container .inner.block03 ul li:nth-child(4),
	.sec02 .container .inner.block03 ul li:nth-child(5){
	width: calc(40% - 20px);
}
	.sec02 .container .inner.block03 ul li:nth-child(9),
	.sec02 .container .inner.block03 ul li:nth-child(10){
	width: calc(40% - 20px);
}
	*/
}
.sec02 .container .inner.block03 ul li img {
	width: 100%
}

@media screen and (max-width: 580px) {
	.sec02 .container .inner.block03 ul li img {
		max-width: 100px;
	}
}

@media screen and (max-width: 480px) {
	.sec02 .container .inner.block03 ul li img {
		max-width: 70px;
	}
}
 .sec03 {
    position: relative
}
 .sec03 .container-fluid {
    text-align: center
}
 .sec03 .container-fluid h3 {
    border: 2px solid #fff;
    padding: 10px;
    font-size: 3.2rem;
    font-weight: 400;
    width: 100%;
    max-width: 1600px;
    margin: 0 auto 60px
}
@media screen and (max-width: 1680px) {
     .sec03 .container-fluid h3 {
        max-width: 100%;
        width: calc(100% - 160px)
    }
}
@media screen and (max-width: 980px) {
     .sec03 .container-fluid h3 {
        width: calc(100% - 120px)
    }
}
@media screen and (max-width: 750px) {
     .sec03 .container-fluid h3 {
        width: calc(100% - 80px);
        font-size: 2.8rem;
        padding: 6px;
        margin-bottom: 40px
    }
}
@media screen and (max-width: 580px) {
     .sec03 .container-fluid h3 {
        font-size: 2.4rem;
        padding: 4px;
        margin-bottom: 30px
    }
}
@media screen and (max-width: 480px) {
     .sec03 .container-fluid h3 {
        margin-bottom: 20px;
        width: calc(100% - 60px);
        font-size: 2.2rem
    }
}
@media screen and (max-width: 340px) {
     .sec03 .container-fluid h3 {
        width: calc(100% - 40px)
    }
}
 .sec03 .container-fluid ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}
 .sec03 .container-fluid ul li {
    width: calc(33% - 10px);
    margin-bottom: 20px
}
@media screen and (max-width: 750px) {
     .sec03 .container-fluid ul li {
        width: calc(50% - 10px)
    }
}
@media screen and (max-width: 480px) {
     .sec03 .container-fluid ul li {
        width: calc(50% - 5px);
        margin-bottom: 10px
    }
}
 .sec04 .container {
    display: flex;
    justify-content: center;
    padding-bottom: 0
}
@media screen and (max-width: 1480px) {
     .sec04 .container {
        padding-top: 0
    }
}
@media screen and (max-width: 1180px) {
     .sec04 .container {
        flex-direction: column
    }
}
 .sec04 .container .inner {
    border-top: 3px solid #fff;
    border-bottom: 3px solid #fff;
    text-align: center;
    width: 50%;
    padding: 60px 60px 80px;
    margin-bottom: 80px;
    display: flex;
    align-items: center;
    flex-direction: column
}
@media screen and (max-width: 1480px) {
     .sec04 .container .inner {
        padding: 40px 40px 60px;
        margin-bottom: 60px
    }
}
@media screen and (max-width: 1180px) {
     .sec04 .container .inner {
        width: 100%;
        border-top: none;
        text-align: center;
        padding: 0 20px 60px;
        margin-bottom: 40px
    }
}
 .sec04 .container .inner .fb-container {
    width: 500px
}
@media screen and (max-width: 750px) {
     .sec04 .container .inner .fb-container {
        width: 100%;
        margin-bottom: 20px
    }
}
@media screen and (max-width: 768px) {
     .sec04 .container .inner .fb-page {
        display: block !important;
        width: 100%;
        max-width: 500px;
        margin-left: auto;
        margin-right: auto
    }
}
 .sec04 .container .inner.block02 {
    border-left: 3px solid #fff
}
@media screen and (max-width: 1180px) {
     .sec04 .container .inner.block02 {
        border-left: none
    }
}
@media screen and (max-width: 750px) {
     .sec04 .container .inner.block02 {
        height: 840px
    }
}
 .sec04 .container-fluid {
    text-align: center
}
@media screen and (max-width: 750px) {
     .sec04 .container-fluid {
        padding-top: 0
    }
}
 .sec04 .container-fluid .inner {
    margin-bottom: 80px
}
@media screen and (max-width: 980px) {
     .sec04 .container-fluid .inner {
        margin-bottom: 60px
    }
}
@media screen and (max-width: 750px) {
     .sec04 .container-fluid .inner {
        margin-bottom: 40px
    }
}
 .sec04 .container-fluid .inner.block03 {
    width: 100%;
    max-width: 100%;
    padding: 0 120px
}
@media screen and (max-width: 1480px) {
     .sec04 .container-fluid .inner.block03 {
        padding: 0 60px
    }
}
@media screen and (max-width: 980px) {
     .sec04 .container-fluid .inner.block03 {
        padding: 0 40px
    }
}
@media screen and (max-width: 750px) {
     .sec04 .container-fluid .inner.block03 {
        padding: 0 30px
    }
}
@media screen and (max-width: 480px) {
     .sec04 .container-fluid .inner.block03 {
        padding: 0 20px
    }
}
 .sec04 .container-fluid .inner.block03 .wrap_igfeed {
    height: 536px
}
@media screen and (max-width: 1760px) {
     .sec04 .container-fluid .inner.block03 .wrap_igfeed {
        height: 30.4545454545vw
    }
}
@media screen and (max-width: 980px) {
     .sec04 .container-fluid .inner.block03 .wrap_igfeed {
        height: 120.4081632653vw
    }
}
@media screen and (max-width: 580px) {
     .sec04 .container-fluid .inner.block03 .wrap_igfeed {
        height: 110.3448275862vw
    }
}
@media screen and (max-width: 480px) {
     .sec04 .container-fluid .inner.block03 .wrap_igfeed {
        height: 120.8333333333vw
    }
}
 .sec04 .container-fluid .inner.block03 .wrap_igfeed .instagram_gallery {
    display: flex;
    flex-wrap: wrap
}
 .sec04 .container-fluid .inner.block03 .wrap_igfeed .instagram_gallery a {
    width: calc(16.6% - 20px);
    margin: 0 10px 10px
}
@media screen and (max-width: 980px) {
     .sec04 .container-fluid .inner.block03 .wrap_igfeed .instagram_gallery a {
        width: calc(33.3% - 20px)
    }
}
@media screen and (max-width: 480px) {
     .sec04 .container-fluid .inner.block03 .wrap_igfeed .instagram_gallery a {
        width: calc(33.3% - 10px);
        margin: 0 5px 5px
    }
}
 .sec04 .container-fluid .inner.block03 .wrap_igfeed .instagram_gallery a img {
    width: 100% !important
}
 .sec04 .container-fluid .inner.block04 .info {
    width: 780px;
    height: 142px;
    margin: 0 auto;
    font-size: 3.4rem;
    font-weight: bold;
    margin-bottom: 40px;
    background: url(../../img/top/svg/sec04_fukidashi.svg) center 0 no-repeat;
    background-size: cover
}
@media screen and (max-width: 800px) {
     .sec04 .container-fluid .inner.block04 .info {
        width: 100%;
        height: 100px;
        font-size: 3.0rem;
        background-size: 90%
    }
}
@media screen and (max-width: 580px) {
     .sec04 .container-fluid .inner.block04 .info {
        font-size: 2.4rem
    }
}
@media screen and (max-width: 480px) {
     .sec04 .container-fluid .inner.block04 .info {
        font-size: 2.2rem;
        height: 80px;
        margin-bottom: 0px
    }
}
@media screen and (max-width: 420px) {
     .sec04 .container-fluid .inner.block04 .info {
        font-size: 2.0rem
    }
}
@media screen and (max-width: 380px) {
     .sec04 .container-fluid .inner.block04 .info {
        font-size: 1.8rem
    }
}
@media screen and (max-width: 340px) {
     .sec04 .container-fluid .inner.block04 .info {
        font-size: 1.7rem
    }
}
 .sec04 .container-fluid .inner.block04 .nav_sns {
    display: flex;
    justify-content: center
}
 .sec04 .container-fluid .inner.block04 .nav_sns li {
    max-width: 120px;
    margin: 0 20px
}
@media screen and (max-width: 480px) {
     .sec04 .container-fluid .inner.block04 .nav_sns li {
        margin: 0 10px
    }
}
 .sec04 .container-fluid .inner.block04 .nav_sns li img {
    width: 100%
}
 .sec05 {
    position: relative;
    width: 100%;
    min-height: 100vh;
    margin: 0 auto;
    background: url(../../img/top/sec05_bg.jpg) 0 0 no-repeat;
    background-size: cover
}
 .sec05 .container-fluid {
    text-align: center
}
@media screen and (max-width: 480px) {
    .sec05 {
        background: none;
    }
}
@media screen and (max-width: 480px) {
     .sec05 .container-fluid {
        padding: 40px 0
    }
}
 .sec05 .container-fluid .sttl {
    text-align: center
}
 .sec05 .container-fluid .wrap_map iframe {
    filter: grayscale(1);
    height: 560px
}
@media screen and (max-width: 480px) {
     .sec05 .container-fluid .wrap_map iframe {
        height: 40vh
    }
}
 .sec05 .container {
    text-align: center;
    display: flex;
    flex-wrap: wrap
}
@media screen and (max-width: 1240px) {
     .sec05 .container {
        flex-direction: column;
        align-items: center;
        padding-top: 0
    }
}
 .sec05 .container .wrap_access {
    text-align: left;
    width: 40%;
    padding-right: 60px
}
@media screen and (max-width: 1240px) {
     .sec05 .container .wrap_access {
        width: 80%;
        padding-right: 0;
        margin-bottom: 40px
    }
}
@media screen and (max-width: 980px) {
     .sec05 .container .wrap_access {
        width: 100%
    }
}
 .sec05 .container .wrap_access dl.access_txt01 {
    border-bottom: 1px solid #fff;
    margin-bottom: 20px;
    padding-bottom: 20px
}
 .sec05 .container .wrap_access dl.access_txt01 div {
    display: flex;
    margin-bottom: 5px
}
@media screen and (max-width: 750px) {
     .sec05 .container .wrap_access dl.access_txt01 div {
        flex-direction: column;
        margin-bottom: 10px
    }
}
@media screen and (max-width: 750px) {
     .sec05 .container .wrap_access dl.access_txt01 div dd {
        padding-left: 10px
    }
}
 .sec05 .container .wrap_access dl.access_txt02 div {
    margin-bottom: 5px
}
 .sec05 .container .wrap_access dl.access_txt02 div dt {
    margin-bottom: 5px
}
 .sec05 .container .wrap_access dl.access_txt02 div dd {
    padding-left: 1em
}
 .sec05 .container .floormap {
    width: 60%;
    max-width: 910px
}
@media screen and (max-width: 1180px) {
     .sec05 .container .floormap {
        width: 80%;
        max-width: 100%
    }
}
@media screen and (max-width: 980px) {
     .sec05 .container .floormap {
        width: 100%
    }
}
 .sec05 .container .floormap img {
    width: 100%
}
 .sec05 .container .access_video {
    width: 100%;
    margin: 80px auto;
    display: flex;
    justify-content: center
}
@media screen and (max-width: 980px) {
     .sec05 .container .access_video {
        margin: 60px auto 0;
        flex-wrap: wrap;
        justify-content: flex-start
    }
}
 .sec05 .container .access_video .video-wrap {
    width: 100%;
    max-width: 460px;
    margin: 0 20px;
    position: relative
}
@media screen and (max-width: 980px) {
     .sec05 .container .access_video .video-wrap {
        margin: 0 10px 30px;
        width: calc(50% - 20px)
    }
}
@media screen and (max-width: 750px) {
     .sec05 .container .access_video .video-wrap {
        margin: 0 5px 20px;
        width: calc(50% - 10px)
    }
}
@media screen and (max-width: 480px) {
     .sec05 .container .access_video .video-wrap {
        margin: 0 auto 20px;
        width: calc(80% - 10px)
    }
}
 .sec05 .container .access_video .video-btn {
    content: "";
    top: 0;
    left: 0;
    right: 0;
    bottom: 40px;
    cursor: pointer
}
 .sec05 .container .access_video .cap {
    margin-top: 10px;
    font-size: 1.8rem;
    text-align: left
}
@media screen and (max-width: 750px) {
     .sec05 .container .access_video .cap {
        font-size: 1.6rem
    }
}
@media screen and (max-width: 480px) {
     .sec05 .container .access_video .cap {
        font-size: 1.5rem
    }
}
 .sec06 {
    position: relative;
    width: 100%;
    margin: 0 auto;
    background: url(../../img/top/sec06_bg.jpg) 0 0 no-repeat;
    background-size: cover
}
@media screen and (max-width: 750px) {
     .sec06 {
        background: url(../../img/top/sec06_bg_sp.jpg) center 0 no-repeat
    }
}
 .sec06 .container {
    padding-bottom: 120px;
    text-align: center
}
@media screen and (max-width: 980px) {
     .sec06 .container {
        padding-bottom: 80px
    }
}
@media screen and (max-width: 750px) {
     .sec06 .container {
        padding-bottom: 60px
    }
}
 .sec06 .container dl {
    display: flex;
    justify-content: center;
    text-align: left
}
@media screen and (max-width: 750px) {
     .sec06 .container dl {
        flex-direction: column
    }
}
 .sec06 .container dl div {
    padding: 5px 100px 20px 30px;
    border-left: 1px solid #fff
}
@media screen and (max-width: 980px) {
     .sec06 .container dl div {
        padding: 5px 80px 20px 30px
    }
}
@media screen and (max-width: 750px) {
     .sec06 .container dl div {
        padding: 5px 30px 20px 30px;
        margin: 0 auto 20px;
        width: 60%
    }
}
@media screen and (max-width: 640px) {
     .sec06 .container dl div {
        width: 70%
    }
}
@media screen and (max-width: 580px) {
     .sec06 .container dl div {
        width: 80%
    }
}
@media screen and (max-width: 480px) {
     .sec06 .container dl div {
        width: 90%;
        padding: 5px 20px 20px 20px
    }
}
@media screen and (max-width: 380px) {
     .sec06 .container dl div {
        width: 100%;
        padding: 5px 0px 20px 20px
    }
}
 .sec06 .container dl div dt {
    font-family: "Oswald", sans-serif;
    font-weight: 400;
    font-size: 3.0rem;
    letter-spacing: 0.2em;
    line-height: 1.0;
    margin-bottom: 15px
}
 .sec06 .container dl div dd {
    font-weight: bold;
    margin-bottom: 8px;
    letter-spacing: 0.06em
}
 .sec06 .container dl div dd a {
    margin-top: 5px;
    font-weight: 400;
    display: block;
    color: #fff
}
@media screen and (max-width: 750px) {
     .sec06 .container dl div dd a {
        font-size: 1.4rem
    }
}
 .sec07 {
    position: relative
}
 .sec07 .container {
    text-align: center
}
 .sec07 .container .info {
    margin-bottom: 40px;
    font-size: 1.8rem;
    letter-spacing: 0.1em
}
@media screen and (max-width: 750px) {
     .sec07 .container .info {
        font-size: 1.6rem;
        margin-bottom: 30px
    }
}
 .sec07 .container .bnr {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto
}
 .sec07 .container .bnr img {
    width: 100%
}
