@charset "UTF-8";

@keyframes fadeup {
    0% {
        opacity: 0;
        transform: translateY(10px)
    }

    100% {
        opacity: 1;
        transform: translateY(0)
    }
}

@keyframes fadeupfadeout {
    0% {
        opacity: 0;
        transform: translateY(10px)
    }

    11.54%,
    88.46%,
    100% {
        opacity: 1;
        transform: translateY(0)
    }
}

.fade-enter-active,
.fade-leave-active {
    transition: opacity .2s
}

.fade-enter,
.fade-leave-to {
    opacity: 0
}


/*! sanitize.css v3.3.0 | CC0 1.0 Public Domain | github.com/10up/sanitize.css */

abbr[title] {
    text-decoration: underline;
    text-decoration: underline dotted
}

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

b,
strong {
    font-weight: bolder
}

button {
    overflow: visible;
    -webkit-appearance: button
}

button::-moz-focus-inner,
input::-moz-focus-inner {
    padding: 0;
    border: 0
}

button:-moz-focusring,
input:-moz-focusring {
    outline: 1px dotted ButtonText
}

button,
select {
    text-transform: none
}

details {
    display: block
}

html {
    overflow-y: scroll;
    -ms-overflow-style: -ms-autohiding-scrollbar;
    -webkit-text-size-adjust: 100%
}

hr {
    overflow: visible
}

input {
    -webkit-border-radius: 0
}

input[type=button],
input[type=reset],
input[type=submit] {
    -webkit-appearance: button
}

input[type=number] {
    width: auto
}

input[type=search] {
    -webkit-appearance: textfield
}

input[type=search]::-webkit-search-cancel-button,
input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}

main {
    display: block
}

pre {
    overflow: auto
}

progress {
    display: inline-block
}

summary {
    display: block
}

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

template {
    display: none
}

textarea {
    overflow: auto
}

[hidden] {
    display: none
}

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

* {
    font-size: inherit;
    line-height: inherit
}

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

button,
input,
select,
textarea {
    font-weight: inherit;
    font-style: inherit;
    font-family: inherit
}

* {
    margin: 0;
    padding: 0
}

*,
:before,
:after {
    border-width: 0;
    border-style: solid
}

select {
    -moz-appearance: none;
    -webkit-appearance: none
}

select::-ms-expand {
    display: none
}

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

svg {
    fill: currentColor
}

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

[aria-controls] {
    cursor: pointer
}

[aria-disabled] {
    cursor: default
}

[hidden][aria-hidden=false] {
    position: absolute;
    display: inherit;
    clip: rect(0 0 0 0)
}

[hidden][aria-hidden=false]:focus {
    clip: auto
}

* {
    background-repeat: no-repeat
}

a {
    text-decoration: none
}

audio,
canvas,
iframe,
img,
svg,
video {
    vertical-align: middle
}

button,
input,
select,
textarea {
    background-color: transparent;
    color: inherit
}

button,
[type=button],
[type=date],
[type=datetime],
[type=datetime-local],
[type=email],
[type=month],
[type=number],
[type=password],
[type=reset],
[type=search],
[type=submit],
[type=tel],
[type=text],
[type=time],
[type=url],
[type=week],
select,
textarea {
    min-height: 1.5em
}

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

nav ol,
nav ul {
    list-style: none
}

small {
    font-size: 75%
}

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

textarea {
    resize: vertical
}

button {
    outline: 0
}

@font-face {
    font-weight: 500;
    font-family: MyYuGothic;
    src: local("YuGothic-Medium"), local("Yu Gothic Medium"), local("YuGothic-Regular"), local("游ゴシック")
}

html {
    box-sizing: border-box;
    color: #000;
    font-size: 62.5%;
    font-family: MyYuGothic, YuGothic, -apple-system, BlinkMacSystemFont, Hiragino Kaku Gothic ProN, Meiryo, sans-serif;
    line-height: 1.6;
    -webkit-text-size-adjust: none
}

body {
    width: 100%;
    font-size: 1.4rem
}

body.is-fixed {
    overflow: hidden;
    -ms-overflow-style: none;
    scrollbar-width: none
}

body.is-fixed::-webkit-scrollbar {
    display: none
}

@media print,
screen and (min-width:768px) {
    body {
        display: table;
        min-width: 1280px;
        table-layout: fixed
    }
}

em,
strong {
    font-weight: 700;
    font-style: normal
}

small,
sup {
    display: inline-block;
    font-size: .86em
}

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

img {
    width: 100%;
    height: auto
}

@media screen and (min-width:768px) {
    img {
        max-width: 100%;
        width: auto
    }
}

a {
    color: #000;
    transition: opacity .2s;
    -webkit-tap-highlight-color: transparent
}

a:hover,
a:active,
a:focus {
    opacity: .8
}

@media print,
screen and (min-width:768px) {
    .sp {
        display: none
    }
}

@media screen and (max-width:767px) {
    .pc {
        display: none
    }
}

.mb0 {
    margin-bottom: 0 !important
}

.mt0 {
    margin-top: 0 !important
}

.mtHalf {
    margin-top: .5em !important
}

.text-align-center {
    text-align: center !important
}

.hidden {
    position: absolute;
    overflow: hidden;
    clip: rect(1px 1px 1px 1px);
    width: 1px;
    height: 1px
}

.index .search__card--eigyo-1 {
    background: #fcdadc
}

.index .search__card--eigyo-1:before {
    border: 8px solid #eb0a14;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-1 .search__card-label {
    background: #eb0a14
}

.index .search__card--eigyo-2 {
    background: #fce5e2
}

.index .search__card--eigyo-2:before {
    border: 8px solid #eb503c;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-2 .search__card-label {
    background: #eb503c
}

.index .search__card--eigyo-3 {
    background: #f7dddd
}

.index .search__card--eigyo-3:before {
    border: 8px solid #ff820f;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-3 .search__card-label {
    background: #ff820f
}

.index .search__card--eigyo-4 {
    background: #fae2e3
}

.index .search__card--eigyo-4:before {
    border: 8px solid #e13c46;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-4 .search__card-label {
    background: #e13c46
}

.index .search__card--eigyo-5 {
    background: #f1dbdb
}

.index .search__card--eigyo-5:before {
    border: 8px solid #ff6414;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-5 .search__card-label {
    background: #ff6414
}

.index .search__card--eigyo-6 {
    background: #fadcdf
}

.index .search__card--eigyo-6:before {
    border: 8px solid #dc1428;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-6 .search__card-label {
    background: #dc1428
}

.index .search__card--eigyo-7 {
    background: #f4dcdf
}

.index .search__card--eigyo-7:before {
    border: 8px solid #b41428;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-7 .search__card-label {
    background: #b41428
}

.index .search__card--eigyo-8 {
    background: #e9f2df
}

.index .search__card--eigyo-8:before {
    border: 8px solid #6eaa28;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-8 .search__card-label {
    background: #6eaa28
}

.index .search__card--eigyo-9 {
    background: #dceceb
}

.index .search__card--eigyo-9:before {
    border: 8px solid #148278;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-9 .search__card-label {
    background: #148278
}

.index .search__card--eigyo-10 {
    background: #eff1e3
}

.index .search__card--eigyo-10:before {
    border: 8px solid #96a046;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-10 .search__card-label {
    background: #96a046
}

.index .search__card--eigyo-11 {
    background: #e3efec
}

.index .search__card--eigyo-11:before {
    border: 8px solid #469682;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-11 .search__card-label {
    background: #469682
}

.index .search__card--eigyo-12 {
    background: #dceee2
}

.index .search__card--eigyo-12:before {
    border: 8px solid #148c3c;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-12 .search__card-label {
    background: #148c3c
}

.index .search__card--eigyo-13 {
    background: #dce8f4
}

.index .search__card--eigyo-13:before {
    border: 8px solid #1464b4;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-13 .search__card-label {
    background: #1464b4
}

.index .search__card--eigyo-14 {
    background: #daf1fa
}

.index .search__card--eigyo-14:before {
    border: 8px solid #0aa0dc;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-14 .search__card-label {
    background: #0aa0dc
}

.index .search__card--eigyo-15 {
    background: #daebf4
}

.index .search__card--eigyo-15:before {
    border: 8px solid #0a78b4;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-15 .search__card-label {
    background: #0a78b4
}

.index .search__card--eigyo-16 {
    background: #e2eef7
}

.index .search__card--eigyo-16:before {
    border: 8px solid #3c8bcc;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-16 .search__card-label {
    background: #3c8bcc
}

.index .search__card--eigyo-17 {
    background: #e0e6f2
}

.index .search__card--eigyo-17:before {
    border: 8px solid #325aaa;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--eigyo-17 .search__card-label {
    background: #325aaa
}

.index .search__card--gijyutsu-0 {
    background: #dcf4f5
}

.index .search__card--gijyutsu-0:before {
    border: 8px solid #14b4be;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-0 .search__card-label {
    background: #14b4be
}

.index .search__card--gijyutsu-1 {
    background: #fce7e7
}

.index .search__card--gijyutsu-1:before {
    border: 8px solid #eb6161;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-1 .search__card-label {
    background: #eb6161
}

.index .search__card--gijyutsu-2 {
    background: #dcecf6
}

.index .search__card--gijyutsu-2:before {
    border: 8px solid #187fc4;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-2 .search__card-label {
    background: #187fc4
}

.index .search__card--gijyutsu-3 {
    background: #f7eaf1
}

.index .search__card--gijyutsu-3:before {
    border: 8px solid #cb72a5;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-3 .search__card-label {
    background: #cb72a5
}

.index .search__card--gijyutsu-4 {
    background: #e5efe5
}

.index .search__card--gijyutsu-4:before {
    border: 8px solid #509650;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-4 .search__card-label {
    background: #509650
}

.index .search__card--gijyutsu-5 {
    background: #fdf0d9
}

.index .search__card--gijyutsu-5:before {
    border: 8px solid #f39800;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-5 .search__card-label {
    background: #f39800
}

.index .search__card--gijyutsu-6 {
    background: #f2eaf3
}

.index .search__card--gijyutsu-6:before {
    border: 8px solid #a674b0;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-6 .search__card-label {
    background: #a674b0
}

.index .search__card--gijyutsu-7 {
    background: #f6eee9
}

.index .search__card--gijyutsu-7:before {
    border: 8px solid #c28c6f;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-7 .search__card-label {
    background: #c28c6f
}

.index .search__card--gijyutsu-8 {
    background: #f2efe8
}

.index .search__card--gijyutsu-8:before {
    border: 8px solid #aa9664;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-8 .search__card-label {
    background: #aa9664
}

.index .search__card--gijyutsu-9 {
    background: #f8e1e9
}

.index .search__card--gijyutsu-9:before {
    border: 8px solid #ce346f;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-9 .search__card-label {
    background: #ce346f
}

.index .search__card--gijyutsu-10 {
    background: #d9f2e7
}

.index .search__card--gijyutsu-10:before {
    border: 8px solid #00a95f;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-10 .search__card-label {
    background: #00a95f
}

.index .search__card--gijyutsu-11 {
    background: #dceff7
}

.index .search__card--gijyutsu-11:before {
    border: 8px solid #1496c8;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-11 .search__card-label {
    background: #1496c8
}

.index .search__card--gijyutsu-12 {
    background: #fbece0
}

.index .search__card--gijyutsu-12:before {
    border: 8px solid #e68232;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-12 .search__card-label {
    background: #e68232
}

.index .search__card--gijyutsu-13 {
    background: #ebeae5
}

.index .search__card--gijyutsu-13:before {
    border: 8px solid #7d7355;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-13 .search__card-label {
    background: #7d7355
}

.index .search__card--gijyutsu-14 {
    background: #ecf4e5
}

.index .search__card--gijyutsu-14:before {
    border: 8px solid #82b450;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-14 .search__card-label {
    background: #82b450
}

.index .search__card--gijyutsu-15 {
    background: #fcebf1
}

.index .search__card--gijyutsu-15:before {
    border: 8px solid #ec7aa2;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-15 .search__card-label {
    background: #ec7aa2
}

.index .search__card--gijyutsu-16 {
    background: #f6eee2
}

.index .search__card--gijyutsu-16:before {
    border: 8px solid #c3913e;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-16 .search__card-label {
    background: #c3913e
}

.index .search__card--gijyutsu-17 {
    background: #e0eaf5
}

.index .search__card--gijyutsu-17:before {
    border: 8px solid #3275bc;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-17 .search__card-label {
    background: #3275bc
}

.index .search__card--gijyutsu-18 {
    background: #dcf4f5
}

.index .search__card--gijyutsu-18:before {
    border: 8px solid #14a0a5;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-18 .search__card-label {
    background: #14a0a5
}

.index .search__card--gijyutsu-19 {
    background: #f5e0dc
}

.index .search__card--gijyutsu-19:before {
    border: 8px solid #be3214;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-19 .search__card-label {
    background: #be3214
}

.index .search__card--gijyutsu-20 {
    background: #efe7f8
}

.index .search__card--gijyutsu-20:before {
    border: 8px solid #925ed2;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-20 .search__card-label {
    background: #925ed2
}

.index .search__card--gijyutsu-21 {
    background: #f6eee9
}

.index .search__card--gijyutsu-21:before {
    border: 8px solid #c28c6f;
    border-top: 8px solid transparent;
    border-left: 8px solid transparent
}

.index .search__card--gijyutsu-21 .search__card-label {
    background: #c28c6f
}

.index .c-header {
    background-color: #fff
}

@media screen and (max-width:767px) {
    .index .c-header {
        position: relative;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        justify-content: space-between;
        padding: 1.33333vw 4.66667vw;
        -ms-flex-pack: justify;
        -ms-flex-align: center
    }

    .index .c-header__logo {
        width: 30.8vw
    }
}

.index .c-gnav {
    color: #fff
}

.index .c-gnav a {
    color: #fff
}

.index .c-gnav__list span {
    display: block;
    font-weight: 700
}

.index .c-gnav__list button {
    text-align: left
}

.index .c-gnav__list a,
.index .c-gnav__list button {
    display: block
}

@media screen and (max-width:767px) {
    .index .c-gnav {
        position: fixed;
        top: 0;
        left: 0;
        z-index: 2;
        overflow: scroll;
        padding-top: 17.33333vw;
        padding-bottom: 16vw;
        width: 100%;
        height: 100%;
        background-color: #df0523
    }

    .index .c-gnav-btn {
        margin-right: -2.66667vw;
        width: 18.66667vw;
        height: 16vw;
        background: url(../img/index/btn-gnav.png) 0 0/cover no-repeat
    }

    .index .c-gnav-btn.is-active {
        position: fixed;
        top: 0;
        right: 4vw;
        z-index: 3;
        background: url(../img/index/btn-gnav-close.png) 50% 50%/10.66667vw 10.66667vw no-repeat
    }

    .index .c-gnav__list {
        margin: 0 auto;
        width: 82.66667vw;
        font-size: 1rem
    }

    .index .c-gnav__list a,
    .index .c-gnav__list button {
        padding: 1em 1em 1em .66667vw
    }

    .index .c-gnav__list-item {
        position: relative;
        padding-right: 1.5em;
        border-top: 1px solid
    }

    .index .c-gnav__list-item:after {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: inline-block;
        margin: auto;
        margin-right: 2.26667vw;
        width: 1.5rem;
        height: 1.5rem;
        border: 2px solid #fff;
        border-bottom: 0;
        border-left: 0;
        content: '';
        transform: rotate(45deg)
    }

    .index .c-gnav__list-item:last-child {
        border-bottom: 1px solid
    }

    .index .c-gnav__list-item--type-b {
        font-size: 1.5rem
    }

    .index .c-gnav__list-item-label {
        font-size: 1.6rem
    }

    .index .c-gnav__list-item-label small {
        font-size: .9rem
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-balloon {
        position: absolute;
        width: 2.93333vw;
        height: 6.26667vw;
        background-size: 2.93333vw 6.26667vw !important
    }

    .index .main__obj-balloon--yellow {
        background: url(../img/index/img-balloon-yellow.png) 0 0 no-repeat
    }

    .index .main__obj-balloon--blue {
        background: url(../img/index/img-balloon-blue.png) 0 0 no-repeat
    }

    .index .main__obj-balloon--green {
        background: url(../img/index/img-balloon-green.png) 0 0 no-repeat
    }

    .index .main__obj-balloon--murasaki {
        background: url(../img/index/img-balloon-murasaki.png) 0 0 no-repeat
    }

    .index .main__obj-balloon--pink {
        background: url(../img/index/img-balloon-pink.png) 0 0 no-repeat
    }

    .index .main__obj-balloon--1 {
        top: 10.66667vw;
        left: 9.33333vw
    }

    .index .main__obj-balloon--2 {
        top: 13.33333vw;
        left: 13.86667vw
    }

    .index .main__obj-balloon--3 {
        top: -10.66667vw;
        left: 72.53333vw
    }

    .index .main__obj-balloon--4 {
        top: -16vw;
        left: 80.53333vw
    }

    .index .main__obj-balloon--5 {
        top: -10.66667vw;
        left: 91.2vw
    }

    .index .main__obj-balloon--6 {
        top: 101.33333vw;
        left: 77.06667vw
    }

    .index .main__obj-balloon--7 {
        top: 104vw;
        left: 85.86667vw
    }

    .index .main__obj-balloon--8 {
        top: 96vw;
        left: 91.2vw
    }

    .index .main__obj-balloon--9 {
        display: none
    }

    .index .main__obj-balloon--10 {
        display: none
    }

    .index .main__obj-balloon--11 {
        display: none
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-balloon {
        position: absolute;
        width: 22px;
        height: 47px;
        background-size: 22px 47px !important
    }

    .index .main__obj-balloon--yellow {
        background: url(../img/index/img-balloon-yellow.png) 0 0 no-repeat
    }

    .index .main__obj-balloon--blue {
        background: url(../img/index/img-balloon-blue.png) 0 0 no-repeat
    }

    .index .main__obj-balloon--green {
        background: url(../img/index/img-balloon-green.png) 0 0 no-repeat
    }

    .index .main__obj-balloon--murasaki {
        background: url(../img/index/img-balloon-murasaki.png) 0 0 no-repeat
    }

    .index .main__obj-balloon--pink {
        background: url(../img/index/img-balloon-pink.png) 0 0 no-repeat
    }

    .index .main__obj-balloon--1 {
        top: -60px;
        left: 303px
    }

    .index .main__obj-balloon--2 {
        top: -20px;
        left: 340px
    }

    .index .main__obj-balloon--3 {
        top: 20px;
        left: 860px
    }

    .index .main__obj-balloon--4 {
        top: -40px;
        left: 930px
    }

    .index .main__obj-balloon--5 {
        top: 40px;
        left: 1010px
    }

    .index .main__obj-balloon--6 {
        top: 580px;
        left: 817px
    }

    .index .main__obj-balloon--7 {
        top: 620px;
        left: 880px
    }

    .index .main__obj-balloon--8 {
        top: 540px;
        left: 930px
    }

    .index .main__obj-balloon--9 {
        top: 500px;
        left: 107px
    }

    .index .main__obj-balloon--10 {
        top: 550px;
        left: 150px
    }

    .index .main__obj-balloon--11 {
        top: 540px;
        left: 210px
    }
}

.index .main__obj-balloon--1 {
    animation: main__obj-balloon-float 3s ease-in-out infinite alternate
}

.index .main__obj-balloon--2 {
    animation: main__obj-balloon-float 1.65s ease-in-out .2s infinite alternate
}

.index .main__obj-balloon--3 {
    animation: main__obj-balloon-float 1.95s ease-in-out .3s infinite alternate
}

.index .main__obj-balloon--4 {
    animation: main__obj-balloon-float 3.45s ease-in-out .8s infinite alternate
}

.index .main__obj-balloon--5 {
    animation: main__obj-balloon-float 3.9s ease-in-out 1.1s infinite alternate
}

.index .main__obj-balloon--6 {
    animation: main__obj-balloon-float 4.05s ease-in-out .7s infinite alternate
}

.index .main__obj-balloon--7 {
    animation: main__obj-balloon-float 2.85s ease-in-out .5s infinite alternate
}

.index .main__obj-balloon--8 {
    animation: main__obj-balloon-float 2.55s ease-in-out .3s infinite alternate
}

.index .main__obj-balloon--9 {
    animation: main__obj-balloon-float 4.35s ease-in-out .1s infinite alternate
}

.index .main__obj-balloon--10 {
    animation: main__obj-balloon-float 2.1s ease-in-out .4s infinite alternate
}

.index .main__obj-balloon--11 {
    animation: main__obj-balloon-float 2.85s ease-in-out .3s infinite alternate
}

@keyframes main__obj-balloon-float {
    0% {
        transform: translateY(0)
    }

    100% {
        transform: translateY(-30px)
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-three-people {
        position: absolute;
        bottom: -13.33333vw;
        left: 29.86667vw;
        width: 12.33333vw;
        height: 23.4vw;
        background: url(../img/index/img-three-people.png) 0 0/12.33333vw 23.4vw no-repeat
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-three-people {
        position: absolute;
        bottom: -30px;
        left: 280px;
        width: 77.0px;
        height: 146.09189px;
        background: url(../img/index/img-three-people.png) 0 0/77.0px 146.09189px no-repeat
    }
}

.index .main__obj-pc {
    opacity: 0
}

.index .main__obj-pc--1 {
    animation: main__obj-pc 16s linear infinite
}

.index .main__obj-pc--2 {
    animation: main__obj-pc 16s linear 4s infinite
}

.index .main__obj-pc--3 {
    animation: main__obj-pc 16s linear 8s infinite
}

.index .main__obj-pc--4 {
    animation: main__obj-pc 16s linear 12s infinite
}

@keyframes main__obj-pc {

    0%,
    25%,
    100% {
        opacity: 0
    }

    1%,
    24% {
        opacity: 1
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-pc {
        position: absolute;
        top: 0;
        left: 0;
        width: 16.93333vw;
        height: 22.93333vw
    }

    .index .main__obj-pc-wrapper {
        position: absolute;
        top: 52vw;
        left: 4.26667vw;
        width: 16.93333vw;
        height: 22.93333vw;
        background: url(../img/index/img-pc-base.png) 0 0/16.93333vw 22.93333vw no-repeat
    }

    .index .main__obj-pc--1 {
        background: url(../img/index/img-pc1.png) 0 0/16.93333vw 22.93333vw no-repeat
    }

    .index .main__obj-pc--2 {
        background: url(../img/index/img-pc2.png) 0 0/16.93333vw 22.93333vw no-repeat
    }

    .index .main__obj-pc--3 {
        background: url(../img/index/img-pc3.png) 0 0/16.93333vw 22.93333vw no-repeat
    }

    .index .main__obj-pc--4 {
        background: url(../img/index/img-pc4.png) 0 0/16.93333vw 22.93333vw no-repeat
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-pc {
        position: absolute;
        top: 0;
        left: 0;
        width: 106.0px;
        height: 143.55906px
    }

    .index .main__obj-pc-wrapper {
        position: absolute;
        top: 327px;
        left: 226px;
        width: 106.0px;
        height: 143.55906px;
        background: url(../img/index/img-pc-base.png) 0 0/106.0px 143.55906px no-repeat
    }

    .index .main__obj-pc--1 {
        background: url(../img/index/img-pc1.png) 0 0/106.0px 143.55906px no-repeat
    }

    .index .main__obj-pc--2 {
        background: url(../img/index/img-pc2.png) 0 0/106.0px 143.55906px no-repeat
    }

    .index .main__obj-pc--3 {
        background: url(../img/index/img-pc3.png) 0 0/106.0px 143.55906px no-repeat
    }

    .index .main__obj-pc--4 {
        background: url(../img/index/img-pc4.png) 0 0/106.0px 143.55906px no-repeat
    }
}

.index .main__obj-staff {
    opacity: 0
}

.index .main__obj-staff--1 {
    animation: main__obj-staff 15s linear infinite
}

.index .main__obj-staff--2 {
    animation: main__obj-staff 15s linear 5s infinite
}

.index .main__obj-staff--3 {
    animation: main__obj-staff 15s linear 10s infinite
}

@keyframes main__obj-staff {

    0%,
    33.33%,
    100% {
        opacity: 0
    }

    1%,
    32.33% {
        opacity: 1
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-staff {
        position: absolute;
        top: 1.06667vw;
        left: 1.6vw;
        width: 23.6vw;
        height: 28vw
    }

    .index .main__obj-staff-wrapper {
        position: absolute;
        top: 37.6vw;
        left: 54.93333vw;
        width: 25.73333vw;
        height: 29.73333vw;
        background: url(../img/index/img-staff-base.png) 0 0/25.73333vw 29.73333vw no-repeat
    }

    .index .main__obj-staff--1 {
        background: url(../img/index/img-staff1.png) 0 0/23.6vw 28vw no-repeat
    }

    .index .main__obj-staff--2 {
        background: url(../img/index/img-staff2.png) 0 0/23.6vw 28vw no-repeat
    }

    .index .main__obj-staff--3 {
        background: url(../img/index/img-staff3.png) 0 0/23.6vw 28vw no-repeat
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-staff {
        position: absolute;
        top: 6px;
        left: 9px;
        width: 146.73575px;
        height: 174.09326px
    }

    .index .main__obj-staff-wrapper {
        position: absolute;
        top: 236px;
        left: 547px;
        width: 160.0px;
        height: 184.87047px;
        background: url(../img/index/img-staff-base.png) 0 0/160.0px 184.87047px no-repeat
    }

    .index .main__obj-staff--1 {
        background: url(../img/index/img-staff1.png) 0 0/146.73575px 174.09326px no-repeat
    }

    .index .main__obj-staff--2 {
        background: url(../img/index/img-staff2.png) 0 0/146.73575px 174.09326px no-repeat
    }

    .index .main__obj-staff--3 {
        background: url(../img/index/img-staff3.png) 0 0/146.73575px 174.09326px no-repeat
    }
}

.index .main__obj-projector {
    opacity: 0
}

.index .main__obj-projector--1 {
    animation: main__obj-projector 11s linear infinite
}

.index .main__obj-projector--2 {
    animation: main__obj-projector 11s linear 5.5s infinite
}

@keyframes main__obj-projector {

    0%,
    50%,
    100% {
        opacity: 0
    }

    1%,
    49% {
        opacity: 1
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-projector {
        position: absolute;
        top: 0;
        left: 0;
        width: 13.33333vw;
        height: 19vw;
        background: 0 0/13.33333vw 19vw no-repeat
    }

    .index .main__obj-projector-wrapper {
        position: absolute;
        top: 24vw;
        left: -2.66667vw;
        width: 13.33333vw;
        height: 19vw;
        background: url(../img/index/img-projector-base.png) 0 0/13.33333vw 19vw no-repeat
    }

    .index .main__obj-projector--1 {
        background-image: url(../img/index/img-projector1.png)
    }

    .index .main__obj-projector--2 {
        background-image: url(../img/index/img-projector2.png)
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-projector {
        position: absolute;
        top: 0;
        left: 0;
        width: 82.90155px;
        height: 118.13472px
    }

    .index .main__obj-projector-wrapper {
        position: absolute;
        top: 149px;
        left: 182px;
        width: 82.90155px;
        height: 118.13472px;
        background: url(../img/index/img-projector-base.png) 0 0/82.90155px 118.13472px no-repeat
    }

    .index .main__obj-projector--1 {
        background: url(../img/index/img-projector1.png) 0 0/82.90155px 118.13472px no-repeat
    }

    .index .main__obj-projector--2 {
        background: url(../img/index/img-projector2.png) 0 0/82.90155px 118.13472px no-repeat
    }
}

.index .main__obj-game {
    opacity: 0
}

.index .main__obj-game--1 {
    animation: main__obj-game 11s linear infinite
}

.index .main__obj-game--2 {
    animation: main__obj-game 11s linear 5.5s infinite
}

.index .main__obj-game.insta {
    opacity: 1;
}


@keyframes main__obj-game {

    0%,
    50%,
    100% {
        opacity: 0
    }

    1%,
    49% {
        opacity: 1
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-game {
        position: absolute;
        top: 0;
        left: 0;
        width: 27vw;
        height: 17.2vw;
        background: 0 0/27vw 17.2vw no-repeat
    }

    .index .main__obj-game-wrapper {
        position: absolute;
        top: 3.73333vw;
        left: 72.53333vw;
        width: 27vw;
        height: 17.2vw;
        background: url(../img/index/img-game-base.png) 0 0/27vw 17.2vw no-repeat
    }

    .index .main__obj-game--1 {
        background-image: url(../img/index/img-game1.png)
    }

    .index .main__obj-game--2 {
        background-image: url(../img/index/img-game2.png)
    }

    .index .main__obj-insta--1 {
        background-image: url(../img/index/img-instagram.png)
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-game {
        position: absolute;
        top: 0;
        left: 0;
        width: 167.87565px;
        height: 106.94301px
    }

    .index .main__obj-game-wrapper {
        position: absolute;
        top: 21px;
        left: 651px;
        width: 167.87565px;
        height: 106.94301px;
        background: url(../img/index/img-game-base.png) 0 0/167.87565px 106.94301px no-repeat
    }

    .index .main__obj-game--1 {
        background: url(../img/index/img-game1.png) 0 0/167.87565px 106.94301px no-repeat
    }

    .index .main__obj-game--2 {
        background: url(../img/index/img-game2.png) 0 0/167.87565px 106.94301px no-repeat
    }

    .index .main__obj-insta--1 {
        background: url(../img/index/img-instagram.png) 0 0/167.87565px 106.94301px no-repeat
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-hakase {
        position: absolute;
        top: 26.66667vw;
        left: 8vw;
        width: 8.6964vw;
        height: 12.77946vw
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-hakase {
        position: absolute;
        top: 180px;
        left: 255px;
        width: 44.11034px;
        height: 64.82069px
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-earth {
        position: absolute;
        top: 71.73333vw;
        left: 46.93333vw;
        width: 15.90805vw;
        height: 15.90805vw
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-earth {
        position: absolute;
        top: 447px;
        left: 495px;
        width: 100.0px;
        height: 100.0px
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-ojigi1 {
        position: absolute;
        top: 90.66667vw;
        left: 56.53333vw;
        width: 3.44674vw;
        height: 10.4728vw
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-ojigi1 {
        position: absolute;
        top: 560px;
        left: 550px;
        width: 21.32px;
        height: 64.78px
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-ojigi2 {
        position: absolute;
        top: 78.66667vw;
        left: 37.6vw;
        width: 4.10958vw;
        height: 10.34023vw
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-ojigi2 {
        position: absolute;
        top: 485px;
        left: 439px;
        width: 25.42px;
        height: 63.96px
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-ojigi3 {
        position: absolute;
        top: 115px;
        left: 869px;
        width: 30.34px;
        height: 59.45px
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-walker1 {
        position: absolute;
        top: 85.33333vw;
        left: 72.53333vw;
        width: 5.06667vw;
        height: 9.73333vw;
        animation: main__obj-walker1 10s linear infinite
    }

    .index .main__obj-walker1-el {
        width: 100%;
        height: 100%;
        background: url(../img/index/img-human-walk1.png) 0 0/121.6vw 9.73333vw repeat-x;
        animation: main__obj-walker1-el 10s steps(12) infinite
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-walker1 {
        position: absolute;
        top: 550px;
        left: 630px;
        width: 31.16px;
        height: 59.86px;
        animation: main__obj-walker1-pc 10s linear infinite
    }

    .index .main__obj-walker1-el {
        width: 100%;
        height: 100%;
        background: url(../img/index/img-human-walk1.png) 0 0/747.84px 59.86px repeat-x;
        animation: main__obj-walker1-el-pc 10s steps(12) infinite
    }
}

@keyframes main__obj-walker1 {

    0%,
    80%,
    100% {
        transform: translate(0, 0)
    }

    30%,
    50% {
        transform: translate(16vw, -10.66667vw)
    }
}

@keyframes main__obj-walker1-el {
    0% {
        background-position: 0 0
    }

    30%,
    50% {
        background-position: -60.8vw 0
    }

    80%,
    100% {
        background-position: -121.6vw 0
    }
}

@keyframes main__obj-walker1-pc {

    0%,
    80%,
    100% {
        transform: translate(0, 0)
    }

    30%,
    50% {
        transform: translate(140px, -90px)
    }
}

@keyframes main__obj-walker1-el-pc {
    0% {
        background-position: 0 0
    }

    30%,
    50% {
        background-position: -373.92px 0
    }

    80%,
    100% {
        background-position: -747.84px 0
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-walker2 {
        position: absolute;
        top: 32vw;
        left: 37.86667vw;
        width: 3.86667vw;
        height: 9.6vw;
        animation: main__obj-walker2 12s linear 3s infinite
    }

    .index .main__obj-walker2-el {
        width: 100%;
        height: 100%;
        background: url(../img/index/img-human-walk2.png) 0 0/92.8vw 9.6vw repeat-x;
        animation: main__obj-walker2-el 12s steps(12) 3s infinite
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-walker2 {
        position: absolute;
        top: 190px;
        left: 450px;
        width: 23.78px;
        height: 59.04px;
        animation: main__obj-walker2-pc 12s linear 3s infinite
    }

    .index .main__obj-walker2-el {
        width: 100%;
        height: 100%;
        background: url(../img/index/img-human-walk2.png) 0 0/570.72px 59.04px repeat-x;
        animation: main__obj-walker2-el-pc 12s steps(12) 3s infinite
    }
}

@keyframes main__obj-walker2 {

    0%,
    80%,
    100% {
        transform: translate(0, 0)
    }

    30%,
    50% {
        transform: translate(18.66667vw, -10.66667vw)
    }
}

@keyframes main__obj-walker2-el {
    0% {
        background-position: 0 0
    }

    30%,
    50% {
        background-position: -46.4vw 0
    }

    80%,
    100% {
        background-position: -92.8vw 0
    }
}

@keyframes main__obj-walker2-pc {

    0%,
    80%,
    100% {
        transform: translate(0, 0)
    }

    30%,
    50% {
        transform: translate(110px, -50px)
    }
}

@keyframes main__obj-walker2-el-pc {
    0% {
        background-position: 0 0
    }

    30%,
    50% {
        background-position: -285.36px 0
    }

    80%,
    100% {
        background-position: -570.72px 0
    }
}

@media screen and (max-width:767px) {
    .index .main__obj-walker3 {
        position: absolute;
        top: 53.33333vw;
        left: 88.53333vw;
        width: 4.53333vw;
        height: 9.06667vw;
        animation: main__obj-walker3 8s linear 1s infinite
    }

    .index .main__obj-walker3-el {
        width: 100%;
        height: 100%;
        background: url(../img/index/img-human-walk3.png) 0 0/90.66667vw 9.06667vw repeat-x;
        animation: main__obj-walker3-el 8s steps(10) 1s infinite
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-walker3 {
        position: absolute;
        top: 347px;
        left: 755px;
        width: 27.88px;
        height: 55.76px;
        animation: main__obj-walker3-pc 8s linear 1s infinite
    }

    .index .main__obj-walker3-el {
        width: 100%;
        height: 100%;
        background: url(../img/index/img-human-walk3.png) 0 0/557.6px 55.76px repeat-x;
        animation: main__obj-walker3-el-pc 8s steps(10) 1s infinite
    }
}

@keyframes main__obj-walker3 {

    0%,
    80%,
    100% {
        transform: translate(0, 0)
    }

    30%,
    50% {
        transform: translate(16vw, 13.33333vw)
    }
}

@keyframes main__obj-walker3-el {
    0% {
        background-position: 0 0
    }

    30%,
    50% {
        background-position: -45.33333vw 0
    }

    80%,
    100% {
        background-position: -90.66667vw 0
    }
}

@keyframes main__obj-walker3-pc {

    0%,
    80%,
    100% {
        transform: translate(0, 0)
    }

    30%,
    50% {
        transform: translate(108px, 53px)
    }
}

@keyframes main__obj-walker3-el-pc {
    0% {
        background-position: 0 0
    }

    30%,
    50% {
        background-position: -278.8px 0
    }

    80%,
    100% {
        background-position: -557.6px 0
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__obj-kanban {
        position: absolute;
        top: 58px;
        left: 869px;
        width: 118.0px;
        height: 110.07774px;
        background: url(../img/index/bg-kanban.png) 0 0/118.0px 110.07774px no-repeat
    }

    .index .main__obj-kanban-display {
        position: absolute;
        top: 41px;
        left: 6px;
        overflow: hidden;
        width: 104px;
        height: 26px;
        transform: skewY(30deg)
    }

    .index .main__obj-kanban-display-txt {
        width: 409.45583px;
        height: 26px;
        background: url(../img/index/img-kanban2.png) 0 50%/204.72792px 16.26148px repeat-x;
        animation: main__obj-kanban 8s linear infinite
    }
}

@keyframes main__obj-kanban {
    0% {
        transform: translateX(0)
    }

    100% {
        transform: translateX(-204.72792px)
    }
}

.index transition {
    display: none
}

.index .intro {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5)
}

.index .intro button {
    cursor: pointer;
    transition: opacity .2s
}

.index .intro button:hover,
.index .intro button:focus,
.index .intro button:active {
    opacity: .8
}

.index .intro__btn {
    display: block;
    color: #fff
}

.index .intro__btn--gijyutsu {
    background-color: #0091d2
}

.index .intro__btn--eigyo {
    background-color: #e0343c
}

@media screen and (max-width:767px) {
    .index .intro {
        -ms-flex-direction: column;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        -ms-flex-align: center;
        -ms-flex-pack: center
    }

    .index .intro__btn {
        padding: 4vw 0;
        padding-left: 19.2vw;
        width: 77.33333vw;
        text-align: left;
        font-size: 4.8vw
    }

    .index .intro__btn ~ .intro__btn {
        margin-top: 5.33333vw
    }

    .index .intro__btn:before {
        position: relative;
        top: .8vw;
        display: inline-block;
        margin-right: .25em;
        width: 4.93333vw;
        height: 4.93333vw;
        content: ''
    }

    .index .intro__btn--gijyutsu:before {
        background: url(../img/index/ico-init-tab-blue.png) 0 0/4.93333vw 4.93333vw no-repeat
    }

    .index .intro__btn--eigyo:before {
        background: url(../img/index/ico-init-tab-red.png) 0 0/4.93333vw 4.93333vw no-repeat
    }
}

@media print,
screen and (min-width:768px) {
    .index .intro {
        align-items: center;
        justify-content: center;
        -ms-flex-align: center;
        -ms-flex-pack: center
    }

    .index .intro__btn {
        padding: 20px 0;
        width: 290px;
        text-align: center;
        font-size: 1.8rem
    }

    .index .intro__btn ~ .intro__btn {
        margin-left: 20px
    }

    .index .intro__btn:before {
        position: relative;
        top: 3px;
        display: inline-block;
        margin-right: .25em;
        width: 19px;
        height: 19px;
        content: ''
    }

    .index .intro__btn--gijyutsu:before {
        background: url(../img/index/ico-init-tab-blue.png) 0 0/19px 19px no-repeat
    }

    .index .intro__btn--eigyo:before {
        background: url(../img/index/ico-init-tab-red.png) 0 0/19px 19px no-repeat
    }
}

.index .youtube {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 3;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5)
}

.index .youtube > div {
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    -ms-flex-align: center;
    -ms-flex-pack: center
}

@media screen and (max-width:767px) {
    .index .youtube > div {
        -ms-flex-direction: column;
        flex-direction: column
    }

    .index .youtube__player-wrapper {
        position: relative;
        width: 90.66667vw;
        height: 51.06667vw
    }

    .index .youtube__player-wrapper span {
        position: absolute;
        top: -10.66667vw;
        right: 0;
        display: inline-block;
        width: 8vw;
        height: 8vw;
        background: url(../img/index/btn-modal-close.png) 0 0/cover no-repeat;
        content: '';
        cursor: pointer
    }

    .index .youtube__player iframe {
        width: 100%;
        height: 100%
    }
}

@media print,
screen and (min-width:768px) {
    .index .youtube__player-wrapper {
        position: relative;
        width: 980px;
        height: 552px
    }

    .index .youtube__player-wrapper span {
        position: absolute;
        top: -60px;
        right: 0;
        display: inline-block;
        width: 40px;
        height: 40px;
        background: url(../img/index/btn-modal-close.png) 0 0/cover no-repeat;
        content: '';
        cursor: pointer
    }
}

@media screen and (max-width:767px) {
    .index .main {
        position: relative;
        overflow: hidden;
        padding: 5.33333vw 0 10.66667vw;
        background: url(../img/index/bg-mv.png) 0 0/16vw 9.33333vw repeat
    }

    .index .main__ttl {
        margin-left: 4.66667vw;
        width: 48.26667vw
    }

    .index .main__illust-area {
        position: relative;
        margin-top: -2.66667vw;
        width: 100%;
        height: 110.93333vw;
        background: url(../img/index/img-mv.png) calc(50% + 24vw/750*100) 50%/171.6vw 110.93333vw repeat
    }
}

@media print,
screen and (min-width:768px) {
    .index .main {
        position: relative;
        min-width: 1280px;
        background: url(../img/index/bg-mv.png) 0 0/99.996px 58.331px repeat
    }

    .index .main__inner {
        margin: 0 auto;
        padding-top: 20px;
        min-height: 875px;
        width: 1280px;
        height: 100vh
    }

    .index .main__ttl {
        position: relative;
        z-index: 1;
        margin-left: 40px;
        width: 224.2px
    }

    .index .main__ttl-logo {
        display: block;
        margin-bottom: 36px;
        width: 142px
    }

    .index .main__illust-area {
        position: absolute;
        top: 125px;
        right: 0;
        bottom: 0;
        left: 0;
        margin: auto;
        width: 1068px;
        height: 690px;
        background: url(../img/index/img-mv.png) 50% 50%/1068px 690px repeat
    }
}

.index .main__marker-list-item {
    z-index: 1;
    opacity: 0;
    transform: translateY(10px)
}

@media screen and (max-width:767px) {
    .index .main__marker-list-item {
        position: absolute;
        width: 9.46667vw;
        height: 12.8vw
    }

    .index .main__marker-list-item--a {
        top: 52.53333vw;
        left: 21.33333vw;
        background: url(../img/index/ico-be-marker.png) 0 0/9.46667vw 12.8vw no-repeat
    }

    .index .main__marker-list-item--b {
        top: 21.33333vw;
        left: 14.93333vw;
        background: url(../img/index/ico-light-marker.png) 0 0/9.46667vw 12.8vw no-repeat
    }

    .index .main__marker-list-item--c {
        top: 10.66667vw;
        left: 28.26667vw;
        background: url(../img/index/ico-eigyo-marker.png) 0 0/9.46667vw 12.8vw no-repeat
    }

    .index .main__marker-list-item--d {
        top: 5.33333vw;
        left: 32vw;
        background: url(../img/index/ico-gijyutsu-marker.png) 0 0/9.46667vw 12.8vw no-repeat
    }

    .index .main__marker-list-item--e {
        top: -9.6vw;
        left: 81.33333vw;
        background: url(../img/index/ico-instagram-marker.png) 0 0/9.46667vw 12.8vw no-repeat
    }

    .index .main__marker-list-item--f {
        top: 54.4vw;
        left: 71.73333vw;
        background: url(../img/index/ico-product-marker.png) 0 0/9.46667vw 12.8vw no-repeat
    }

    .index .main__marker-list-item--g {
        top: 64vw;
        left: 49.33333vw;
        background: url(../img/index/ico-kyoten-marker.png) 0 0/9.46667vw 12.8vw no-repeat
    }

    .index .main__marker-list-item--i {
        top: 40.8vw;
        left: 88.8vw;
        background: url(../img/index/ico-data-marker.png) 0 0/9.46667vw 12.8vw no-repeat
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__marker-list-item {
        position: absolute;
        width: 71px;
        height: 96px
    }

    .index .main__marker-list-item--a {
        top: 305px;
        left: 339px;
        background: url(../img/index/ico-be-marker.png) 0 0/71px 96px no-repeat
    }

    .index .main__marker-list-item--b {
        top: 120px;
        left: 295px;
        background: url(../img/index/ico-light-marker.png) 0 0/71px 96px no-repeat
    }

    .index .main__marker-list-item--c {
        top: 60px;
        left: 378px;
        background: url(../img/index/ico-eigyo-marker.png) 0 0/71px 96px no-repeat
    }

    .index .main__marker-list-item--d {
        top: 22px;
        left: 468px;
        background: url(../img/index/ico-gijyutsu-marker.png) 0 0/71px 96px no-repeat
    }

    .index .main__marker-list-item--e {
        top: -43px;
        left: 740px;
        background: url(../img/index/ico-instagram-marker.png) 0 0/71px 96px no-repeat
    }

    .index .main__marker-list-item--f {
        top: 260px;
        left: 715px;
        background: url(../img/index/ico-product-marker.png) 0 0/71px 96px no-repeat
    }

    .index .main__marker-list-item--g {
        top: 400px;
        left: 510px;
        background: url(../img/index/ico-kyoten-marker.png) 0 0/71px 96px no-repeat
    }

    .index .main__marker-list-item--h {
        top: 252px;
        left: 72px;
        background: url(../img/index/ico-movie-marker.png) 0 0/71px 96px no-repeat
    }

    .index .main__marker-list-item--i {
        top: 203px;
        left: 904px;
        background: url(../img/index/ico-data-marker.png) 0 0/71px 96px no-repeat
    }
}

.index .main__marker-list.is-active .main__marker-list-item--a {
    animation: fadeupfadeout 2.6s ease-out forwards
}

.index .main__marker-list.is-active .main__marker-list-item--b {
    animation: fadeupfadeout 2.6s ease-out .1s forwards
}

.index .main__marker-list.is-active .main__marker-list-item--c {
    animation: fadeupfadeout 2.6s ease-out .2s forwards
}

.index .main__marker-list.is-active .main__marker-list-item--d {
    animation: fadeupfadeout 2.6s ease-out .3s forwards
}

.index .main__marker-list.is-active .main__marker-list-item--e {
    animation: fadeupfadeout 2.6s ease-out .4s forwards
}

.index .main__marker-list.is-active .main__marker-list-item--f {
    animation: fadeupfadeout 2.6s ease-out .5s forwards
}

.index .main__marker-list.is-active .main__marker-list-item--g {
    animation: fadeupfadeout 2.6s ease-out .6s forwards
}

.index .main__marker-list.is-active .main__marker-list-item--h {
    animation: fadeupfadeout 2.6s ease-out .7s forwards
}

.index .main__marker-list.is-active .main__marker-list-item--i {
    animation: fadeupfadeout 2.6s ease-out .8s forwards
}

.index .main__list {
    border-radius: 5px;
    color: #fff
}

.index .main__list a {
    color: #fff
}

.index .main__list button {
    text-align: left
}

.index .main__list a,
.index .main__list button {
    line-height: 1.8
}

@media screen and (max-width:767px) {
    .index .main__list {
        position: absolute;
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 2;
        display: none;
        overflow: scroll;
        margin: auto;
        padding: 0 4vw;
        width: 90.66667vw;
        height: 111.2vw;
        background-color: #df0523;
        font-size: 1rem;
        opacity: 0;
        transform: translateY(10px)
    }

    .index .main__list.is-active {
        display: block;
        animation: fadeup .2s ease-out forwards
    }

    .index .main__list-item {
        position: relative
    }

    .index .main__list-item-card a,
    .index .main__list-item-card button {
        display: block;
        padding: 3.86667vw 0 3.86667vw 15.73333vw
    }

    .index .main__list-item-label {
        display: block;
        font-weight: 700;
        font-size: 1.6rem
    }

    .index .main__list-item-label small {
        font-size: 2.3994vw
    }

    .index .main__list-item + .main__list-item {
        border-top: 1px solid
    }

    .index .main__list-item--a {
        background: url(../img/index/ico-product.png) 0 50%/12vw 12vw no-repeat
    }

    .index .main__list-item--b {
        background: url(../img/index/ico-gijyutsu.png) 0 50%/12vw 12vw no-repeat
    }

    .index .main__list-item--c {
        background: url(../img/index/ico-eigyo.png) 0 50%/12vw 12vw no-repeat
    }

    .index .main__list-item--d {
        background: url(../img/index/ico-light.png) 0 50%/12vw 12vw no-repeat
    }

    .index .main__list-item--e {
        background: url(../img/index/ico-be.png) 0 50%/12vw 12vw no-repeat
    }

    .index .main__list-item--f {
        background: url(../img/index/ico-instagram.png) 0 50%/12vw 12vw no-repeat
    }

    .index .main__list-item--g {
        background: url(../img/index/ico-kyoten.png) 0 50%/12vw 12vw no-repeat
    }

    .index .main__list-item--i {
        background: url(../img/index/ico-data.png) 0 50%/12vw 12vw no-repeat
    }

    .index .main__list-item--h {
        background: url(../img/index/ico-movie.png) 0 50%/12vw 12vw no-repeat
    }
}

@media screen and (max-width:359px) {
    .index .main__list {
        height: 101.06667vw
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__list-item {
        position: absolute
    }

    .index .main__list-item--d .main__list-item-card {
        width: 360px;
        height: 228px
    }

    .index .main__list-item--d .main__list-item-card a {
        width: 100%;
        height: 100%
    }

    .index .main__list-item--f .main__list-item-card {
        width: 270px;
        height: 228px
    }

    .index .main__list-item--f .main__list-item-card a {
        width: 100%;
        height: 100%
    }

    .index .main__list-item-card {
        position: absolute;
        z-index: 2;
        display: none;
        width: 221px;
        height: 190px;
        text-align: center;
        font-size: 1.2rem;
        transition: filter .2s ease-out
    }

    .index .main__list-item-card:hover,
    .index .main__list-item-card:focus,
    .index .main__list-item-card:active {
        filter: brightness(1.1)
    }

    .index .main__list-item-card a,
    .index .main__list-item-card button {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-direction: column;
        flex-direction: column;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        width: 221px;
        height: 190px;
        border-radius: 5px;
        background-color: #df0523;
        text-align: center;
        opacity: 0;
        cursor: pointer;
        transition: opacity .1s ease-out, transform .1s ease-out;
        transform: translate(0, -10px);
        -ms-flex-align: center;
        -ms-flex-pack: center
    }

    .index .main__list-item-card a.is-active,
    .index .main__list-item-card button.is-active {
        opacity: 1;
        transform: translate(0, 0)
    }

    .index .main__list-item-card a:before,
    .index .main__list-item-card button:before {
        display: inline-block;
        width: 52px;
        height: 52px;
        content: ''
    }

    .index .main__list-item-card a:after,
    .index .main__list-item-card button:after {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: inline-block;
        margin: auto;
        margin-bottom: -26px;
        width: 18px;
        height: 18px;
        border: 18px solid #df0523;
        border-right: 9px solid transparent;
        border-bottom: 9px solid transparent;
        border-left: 9px solid transparent;
        content: ""
    }

    .index .main__list-item-label {
        display: block;
        margin-top: .5em;
        margin-bottom: 5px;
        font-weight: 700;
        font-size: 1.6rem;
        line-height: 1.5em
    }

    .index .main__list-item-label small {
        display: block;
        font-size: 1.2rem
    }

    .index .main__list-item--arrow-above a,
    .index .main__list-item--arrow-above button {
        transform: translate(0, 10px)
    }

    .index .main__list-item--arrow-above a:after,
    .index .main__list-item--arrow-above button:after {
        margin-top: -26px;
        margin-bottom: auto;
        border-top: 9px solid transparent;
        border-bottom: 18px solid #df0523
    }

    .index .main__list-item--arrow-right a,
    .index .main__list-item--arrow-right button {
        transform: translate(-10px, 0)
    }

    .index .main__list-item--arrow-right a:after,
    .index .main__list-item--arrow-right button:after {
        margin-right: -26px;
        margin-bottom: auto;
        margin-left: auto;
        border-top: 9px solid transparent;
        border-right: 9px solid transparent;
        border-bottom: 9px solid transparent;
        border-left: 18px solid #df0523
    }

    .index .main__list-item--arrow-left a,
    .index .main__list-item--arrow-left button {
        transform: translate(10px, 0)
    }

    .index .main__list-item--arrow-left a:after,
    .index .main__list-item--arrow-left button:after {
        margin-right: auto;
        margin-bottom: auto;
        margin-left: -26px;
        border-top: 9px solid transparent;
        border-right: 9px solid transparent;
        border-right: 18px solid #df0523;
        border-bottom: 9px solid transparent
    }

    .index .main__list-item-enter {
        margin-top: .5em;
        padding: 0 1em;
        border: 1px solid;
        font-weight: 400;
        font-size: 1rem
    }

    .index .main__list-item-enter:before {
        display: inline-block;
        width: 6px;
        height: 6px;
        border: 6px solid;
        border-top: 4px solid transparent;
        border-right: 4px solid transparent;
        border-bottom: 4px solid transparent;
        content: ""
    }

    .index .main__list-item--a {
        top: 240px;
        left: 505px
    }

    .index .main__list-item--a a:before,
    .index .main__list-item--a button:before {
        background: url(../img/index/ico-product.png) 0 50%/52px 52px no-repeat
    }

    .index .main__list-item--b {
        top: 104px;
        left: 350px
    }

    .index .main__list-item--b a:before,
    .index .main__list-item--b button:before {
        background: url(../img/index/ico-gijyutsu.png) 0 50%/52px 52px no-repeat
    }

    .index .main__list-item--c {
        top: 104px;
        left: 350px
    }

    .index .main__list-item--c a:before,
    .index .main__list-item--c button:before {
        background: url(../img/index/ico-eigyo.png) 0 50%/52px 52px no-repeat
    }

    .index .main__list-item--d {
        top: 119px;
        left: 170px
    }

    .index .main__list-item--d a:before,
    .index .main__list-item--d button:before {
        background: url(../img/index/ico-light.png) 0 50%/52px 52px no-repeat
    }

    .index .main__list-item--e {
        top: 295px;
        left: 210px
    }

    .index .main__list-item--e a:before,
    .index .main__list-item--e button:before {
        background: url(../img/index/ico-be.png) 0 50%/52px 52px no-repeat
    }

    .index .main__list-item--f {
        top: -42px;
        left: 647px
    }

    .index .main__list-item--f a:before,
    .index .main__list-item--f button:before {
        background: url(../img/index/ico-instagram.png) 0 50%/52px 52px no-repeat
    }

    .index .main__list-item--g {
        top: 400px;
        left: 420px
    }

    .index .main__list-item--g a:before,
    .index .main__list-item--g button:before {
        background: url(../img/index/ico-kyoten.png) 0 50%/52px 52px no-repeat
    }

    .index .main__list-item--h {
        top: 290px;
        left: -5px
    }

    .index .main__list-item--h a:before,
    .index .main__list-item--h button:before {
        background: url(../img/index/ico-movie.png) 0 50%/52px 52px no-repeat
    }

    .index .main__list-item--i {
        top: 206px;
        left: 820px
    }

    .index .main__list-item--i a:before,
    .index .main__list-item--i button:before {
        background: url(../img/index/ico-data.png) 0 50%/52px 52px no-repeat
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__list-item--a .main__list-item-card {
        top: -49px;
        left: 97px
    }

    .index .main__list-item--b .main__list-item-card {
        top: -63px;
        left: 148px
    }

    .index .main__list-item--c .main__list-item-card {
        top: 122px;
        left: -48px
    }

    .index .main__list-item--d .main__list-item-card {
        top: -90px;
        left: -20px
    }

    .index .main__list-item--e .main__list-item-card {
        top: -1px;
        left: -9px
    }

    .index .main__list-item--f .main__list-item-card {
        top: -120px;
        left: -43px
    }

    .index .main__list-item--g .main__list-item-card {
        top: -8px;
        left: 38px
    }

    .index .main__list-item--h .main__list-item-card {
        top: -25px;
        left: 98px
    }

    .index .main__list-item--i .main__list-item-card {
        top: -13px;
        left: 36px
    }
}

.index .main__list-item-touch {
    z-index: 1
}

@media screen and (max-width:767px) {
    .index .main__list-item-touch {
        display: none
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__list-item-touch {
        position: absolute;
        display: block;
        width: 100%;
        height: 100%
    }

    .index .main__list-item--a .main__list-item-touch {
        width: 283px;
        height: 180px
    }

    .index .main__list-item--b .main__list-item-touch {
        width: 200px;
        height: 120px
    }

    .index .main__list-item--c .main__list-item-touch {
        width: 100px;
        height: 120px
    }

    .index .main__list-item--d .main__list-item-touch {
        width: 200px;
        height: 220px
    }

    .index .main__list-item--e .main__list-item-touch {
        z-index: 1;
        width: 200px;
        height: 214px
    }

    .index .main__list-item--f .main__list-item-touch {
        width: 200px;
        height: 180px
    }

    .index .main__list-item--g .main__list-item-touch {
        z-index: 1;
        width: 220px;
        height: 200px
    }

    .index .main__list-item--h .main__list-item-touch {
        width: 210px;
        height: 130px
    }

    .index .main__list-item--i .main__list-item-touch {
        width: 210px;
        height: 240px
    }
}

.index .main__job-search-btn {
    z-index: 1;
    cursor: pointer;
    transition: opacity .2s
}

.index .main__job-search-btn:hover,
.index .main__job-search-btn:focus,
.index .main__job-search-btn:active {
    opacity: .8
}

@media screen and (max-width:767px) {
    .index .main__job-search-btn {
        position: absolute;
        bottom: 2.66667vw;
        left: 2.66667vw;
        width: 22.53333vw
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__job-search-btn {
        position: absolute;
        bottom: 20px;
        left: 40px;
        width: 120px
    }
}

.index .main__schedule-bnr {
    cursor: pointer;
    transition: opacity .2s
}

.index .main__schedule-bnr:hover,
.index .main__schedule-bnr:focus,
.index .main__schedule-bnr:active {
    opacity: .8
}

@media screen and (max-width:767px) {
    .index .main__schedule {
        position: absolute;
        top: 5.33333vw;
        right: 4vw;
        width: 32vw
    }

    .index .main__schedule-bnr ~ .main__schedule-bnr {
        margin-top: 1.33333vw
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__schedule {
        position: absolute;
        right: 108px;
        bottom: 71px;
        width: 163px
    }

    .index .main__schedule img {
        width: 163px
    }

    .index .main__schedule-bnr ~ .main__schedule-bnr {
        margin-top: 10px
    }
}

@media screen and (max-width:767px) {
    .index .main__footer {
        position: relative;
        bottom: -4vw;
        margin-right: 4.66667vw;
        text-align: right;
        font-size: 1rem
    }

    .index .main__footer-txt a:before {
        display: inline-block;
        width: 6px;
        height: 6px;
        border: 6px solid #000;
        border-top: 4px solid transparent;
        border-right: 4px solid transparent;
        border-bottom: 4px solid transparent;
        content: ""
    }

    .index .main__footer-txt a + a {
        margin-left: 1em
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__footer {
        position: absolute;
        right: 110px;
        bottom: 30px;
        text-align: right;
        font-size: 1rem
    }

    .index .main__footer-txt a:before {
        display: inline-block;
        width: 6px;
        height: 6px;
        border: 6px solid #000;
        border-top: 4px solid transparent;
        border-right: 4px solid transparent;
        border-bottom: 4px solid transparent;
        content: ""
    }

    .index .main__footer-txt a + a {
        margin-left: 2em
    }
}

.index .main__copyright {
    position: absolute;
    font-size: 1.2rem
}

@media screen and (max-width:767px) {
    .index .main__copyright {
        right: 4.66667vw;
        bottom: 1.33333vw
    }
}

@media print,
screen and (min-width:768px) {
    .index .main__copyright {
        right: 110px;
        bottom: 10px
    }
}

.index .main__note {
    text-align: right;
    font-size: 1rem
}

.index .search__wrapper {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5)
}

.index .search__header {
    background-color: #fff
}

.index .search__header-btn {
    display: -ms-flexbox;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 38.66667vw;
    height: 12vw;
    background-color: #b4b4b4;
    color: #fff;
    cursor: pointer;
    transition: opacity .2s;
    -ms-flex-align: center;
    -ms-flex-pack: center
}

.index .search__header-btn:hover,
.index .search__header-btn:focus,
.index .search__header-btn:active {
    opacity: .8
}

.index .search__header-btn-wrapper {
    display: -ms-flexbox;
    display: flex;
    justify-content: space-between;
    margin-bottom: 11.33333vw;
    -ms-flex-pack: justify
}

.index .search__header-btn span {
    margin-right: .5em;
    width: 3.33333vw;
    height: 3.2vw;
    background: url(../img/index/ico-product-tab.png) 0 0/3.33333vw 3.2vw no-repeat
}

.index .search__header-btn.is-gijyutsu-active {
    background-color: #0091d2
}

.index .search__header-btn.is-gijyutsu-active span {
    background: url(../img/index/ico-product-tab-active-blue.png) 0 0/3.33333vw 3.2vw no-repeat
}

.index .search__header-btn.is-eigyo-active {
    background-color: #df0523
}

.index .search__header-btn.is-eigyo-active span {
    background: url(../img/index/ico-product-tab-active-red.png) 0 0/3.33333vw 3.2vw no-repeat
}

.index .search__ttl {
    color: #df0523;
    font-weight: 700
}

.index .search__lead {
    color: #df0523;
    font-weight: 700
}

.index .search__note {
    margin-top: 1em;
    margin-bottom: 6.66667vw;
    font-size: .86em
}

.index .search__note a {
    text-decoration: underline
}

.index .search__note a:hover,
.index .search__note a:focus,
.index .search__note a:active {
    text-decoration: none
}

.index .search__note a + a {
    margin-left: 1em
}

.index .search__tab-list-item button {
    transition: opacity .2s
}

.index .search__tab-list-item button:hover,
.index .search__tab-list-item button:focus,
.index .search__tab-list-item button:active {
    opacity: .8
}

@media screen and (max-width:767px) {
    .index .search {
        margin: 0 auto;
        width: 90.66667vw
    }

    .index .search__wrapper {
        overflow: scroll;
        padding: 13.33333vw 0
    }

    .index .search__close-btn {
        position: fixed;
        top: 4vw;
        right: 4.66667vw;
        z-index: 1;
        display: block;
        width: 8vw
    }

    .index .search__header-inner {
        padding: 5.33333vw 6.26667vw
    }

    .index .search__ttl {
        margin-left: 6.66667vw;
        font-size: 2.8rem
    }

    .index .search__ttl-wrapper {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        height: 28vw;
        background: url(../img/index/img-job-search-header.jpg) 0 0/90.66667vw 28vw no-repeat;
        -ms-flex-align: center
    }

    .index .search__lead {
        text-align: center
    }

    .index .search__tab-list {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-top: 4vw;
        color: #fff;
        font-size: 1.4rem;
        -ms-flex-pack: justify
    }

    .index .search__tab-list-item--gijyutsu button.is-active {
        background-color: #0091d2
    }

    .index .search__tab-list-item--gijyutsu button.is-active:before {
        background: url(../img/index/ico-product-tab-active-blue.png) 0 0/3.33333vw 3.2vw no-repeat
    }

    .index .search__tab-list-item--eigyo button.is-active {
        background-color: #df0523
    }

    .index .search__tab-list-item--eigyo button.is-active:before {
        background: url(../img/index/ico-product-tab-active-red.png) 0 0/3.33333vw 3.2vw no-repeat
    }

    .index .search__tab-list-item button {
        display: block;
        padding: 3.2vw 0;
        width: 38.66667vw;
        background-color: #b4b4b4
    }

    .index .search__tab-list-item button:before {
        position: relative;
        bottom: -1px;
        left: -5px;
        display: inline-block;
        width: 3.33333vw;
        height: 3.2vw;
        background: url(../img/index/ico-product-tab.png) 0 0/3.33333vw 3.2vw no-repeat;
        content: ''
    }
}

@media print,
screen and (min-width:768px) {
    .index .search {
        margin: 0 auto;
        padding-bottom: 70px;
        width: 980px
    }

    .index .search__wrapper {
        overflow-y: scroll;
        padding: 70px 0
    }

    .index .search__close-btn {
        position: fixed;
        top: 20px;
        right: 40px;
        display: block;
        width: 40px;
        cursor: pointer;
        transition: opacity .2s
    }

    .index .search__close-btn:hover,
    .index .search__close-btn:focus,
    .index .search__close-btn:active {
        opacity: .8
    }

    .index .search__header {
        padding: 40px 54px 20px;
        background: #fff url(../img/index/img-job-search-header-pc.jpg) 0 0/980px 190px no-repeat
    }

    .index .search__header-inner {
        position: relative
    }

    .index .search__header-btn {
        width: 170px;
        height: 40px
    }

    .index .search__header-btn:not(:first-child) {
        margin-left: 2px
    }

    .index .search__header-btn-wrapper {
        justify-content: center;
        margin-bottom: 30px;
        -ms-flex-pack: center
    }

    .index .search__header-btn span {
        margin-right: .5em;
        width: 14px;
        height: 14px;
        background: url(../img/index/ico-product-tab.png) 0 0/14px 14px no-repeat
    }

    .index .search__header-btn.is-gijyutsu-active {
        background-color: #0091d2
    }

    .index .search__header-btn.is-gijyutsu-active span {
        background: url(../img/index/ico-product-tab-active-blue.png) 0 0/14px 14px no-repeat
    }

    .index .search__header-btn.is-eigyo-active {
        background-color: #df0523
    }

    .index .search__header-btn.is-eigyo-active span {
        background: url(../img/index/ico-product-tab-active-red.png) 0 0/14px 14px no-repeat
    }

    .index .search__ttl {
        font-size: 3rem
    }

    .index .search__tab-list {
        position: absolute;
        top: 3px;
        right: 0;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: space-between;
        color: #fff;
        font-size: 1.6rem;
        -ms-flex-pack: justify
    }

    .index .search__tab-list button {
        cursor: pointer
    }

    .index .search__tab-list-item {
        background-color: #b4b4b4
    }

    .index .search__tab-list-item ~ .search__tab-list-item {
        margin-left: 2px
    }

    .index .search__tab-list-item--gijyutsu button.is-active {
        background-color: #0091d2
    }

    .index .search__tab-list-item--gijyutsu button.is-active:before {
        background: url(../img/index/ico-product-tab-active-blue.png) 0 0/15px 14.4px no-repeat
    }

    .index .search__tab-list-item--eigyo button.is-active {
        background-color: #df0523
    }

    .index .search__tab-list-item--eigyo button.is-active:before {
        background: url(../img/index/ico-product-tab-active-red.png) 0 0/15px 14.4px no-repeat
    }

    .index .search__tab-list button {
        display: block;
        padding: 10px 0;
        width: 170px
    }

    .index .search__tab-list button:before {
        position: relative;
        bottom: -1px;
        left: -5px;
        display: inline-block;
        width: 15px;
        height: 14.4px;
        background: url(../img/index/ico-product-tab.png) 0 0/15px 14.4px no-repeat;
        content: ''
    }

    .index .search__note {
        margin-bottom: 55px
    }
}

.index .prod-search__wrapper {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 2;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, .5)
}

.index .prod-search__header {
    background-color: #fff
}

.index .prod-search__ttl {
    border-bottom: 2px solid #df0523;
    color: #df0523;
    font-weight: 700
}

.index .prod-search__lead {
    margin-top: .5em;
    color: #df0523;
    font-weight: 700
}

.index .prod-search__note {
    margin-top: 1em;
    font-size: .86em
}

.index .prod-search__note a {
    text-decoration: underline
}

.index .prod-search__note a:hover,
.index .prod-search__note a:focus,
.index .prod-search__note a:active {
    text-decoration: none
}

.index .prod-search__note a + a {
    margin-left: 1em
}

@media screen and (max-width:767px) {
    .index .prod-search {
        margin: 0 auto;
        width: 90.66667vw
    }

    .index .prod-search__wrapper {
        overflow: scroll;
        padding: 13.33333vw 0
    }

    .index .prod-search__close-btn {
        position: fixed;
        top: 4vw;
        right: 4.66667vw;
        z-index: 1;
        display: block;
        width: 8vw
    }

    .index .prod-search__header {
        padding: 6.66667vw 6.26667vw
    }

    .index .prod-search__ttl {
        text-align: center;
        font-size: 2.8rem
    }

    .index .prod-search__lead {
        text-align: center
    }

    .index .prod-search__tab-list {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-top: 4vw;
        color: #fff;
        font-size: 1.4rem;
        -ms-flex-pack: justify
    }

    .index .prod-search__tab-list-item--gijyutsu button.is-active {
        background-color: #0091d2
    }

    .index .prod-search__tab-list-item--gijyutsu button.is-active:before {
        background: url(../img/index/ico-product-tab-active-blue.png) 0 0/3.33333vw 3.2vw no-repeat
    }

    .index .prod-search__tab-list-item--eigyo button.is-active {
        background-color: #df0523
    }

    .index .prod-search__tab-list-item--eigyo button.is-active:before {
        background: url(../img/index/ico-product-tab-active-red.png) 0 0/3.33333vw 3.2vw no-repeat
    }

    .index .prod-search__tab-list-item button {
        display: block;
        padding: 3.2vw 0;
        width: 38.66667vw;
        background-color: #b4b4b4
    }

    .index .prod-search__tab-list-item button:before {
        position: relative;
        bottom: -1px;
        left: -5px;
        display: inline-block;
        width: 3.33333vw;
        height: 3.2vw;
        background: url(../img/index/ico-product-tab.png) 0 0/3.33333vw 3.2vw no-repeat;
        content: ''
    }
}

@media print,
screen and (min-width:768px) {
    .index .prod-search {
        margin: 0 auto;
        padding-bottom: 70px;
        width: 980px
    }

    .index .prod-search__wrapper {
        overflow-y: scroll;
        padding: 70px 0
    }

    .index .prod-search__close-btn {
        position: fixed;
        top: 20px;
        right: 40px;
        display: block;
        width: 40px;
        cursor: pointer;
        transition: opacity .2s
    }

    .index .prod-search__close-btn:hover,
    .index .prod-search__close-btn:focus,
    .index .prod-search__close-btn:active {
        opacity: .8
    }

    .index .prod-search__header {
        padding: 30px 54px
    }

    .index .prod-search__header-inner {
        position: relative
    }

    .index .prod-search__ttl {
        font-size: 3rem
    }

    .index .prod-search__tab-list {
        position: absolute;
        top: 3px;
        right: 0;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: space-between;
        color: #fff;
        font-size: 1.6rem;
        -ms-flex-pack: justify
    }

    .index .prod-search__tab-list button {
        cursor: pointer
    }

    .index .prod-search__tab-list-item {
        background-color: #b4b4b4
    }

    .index .prod-search__tab-list-item ~ .prod-search__tab-list-item {
        margin-left: 2px
    }

    .index .prod-search__tab-list-item--gijyutsu button.is-active {
        background-color: #0091d2
    }

    .index .prod-search__tab-list-item--gijyutsu button.is-active:before {
        background: url(../img/index/ico-product-tab-active-blue.png) 0 0/15px 14.4px no-repeat
    }

    .index .prod-search__tab-list-item--eigyo button.is-active {
        background-color: #df0523
    }

    .index .prod-search__tab-list-item--eigyo button.is-active:before {
        background: url(../img/index/ico-product-tab-active-red.png) 0 0/15px 14.4px no-repeat
    }

    .index .prod-search__tab-list button {
        display: block;
        padding: 10px 0;
        width: 170px
    }

    .index .prod-search__tab-list button:before {
        position: relative;
        bottom: -1px;
        left: -5px;
        display: inline-block;
        width: 15px;
        height: 14.4px;
        background: url(../img/index/ico-product-tab.png) 0 0/15px 14.4px no-repeat;
        content: ''
    }
}

.index .schedule__list {
    padding: 1em 0;
    background-color: #fff
}

.index .search__card {
    position: relative
}

.index .search__card a {
    display: block
}

.index .search__card-label {
    color: #fff;
    text-align: center
}

@media screen and (max-width:767px) {
    .index .search__card {
        margin: 2.66667vw 0;
        min-height: 46.66667vw
    }

    .index .search__card:before {
        position: absolute;
        right: 1.6vw;
        bottom: 1.6vw;
        width: 8px;
        height: 8px;
        content: ""
    }

    .index .search__card a {
        padding: 1.6vw
    }

    .index .search__card-label {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        padding: 0 .5em;
        height: 21.33333vw;
        font-size: 5.06667vw;
        -ms-flex-pack: center;
        -ms-flex-align: center
    }

    .index .search__card-label--3rows {
        height: 26.66667vw
    }

    .index .search__card-label span {
        display: block;
        margin-top: -7.46667vw;
        width: 100%;
        font-size: 3.73333vw;
        line-height: 1
    }

    .index .search__card-body {
        padding: 1em;
        font-size: 1.5rem
    }
}

@media print,
screen and (min-width:768px) {
    .index .search__card {
        margin: 5px;
        width: 320px;
        height: 190px
    }

    .index .search__card-inner--eigyo .search__card {
        min-height: 200px
    }

    .index .search__card-inner {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: 5px -5px
    }

    .index .search__card:before {
        position: absolute;
        right: 12px;
        bottom: 12px;
        width: 8px;
        height: 8px;
        content: ""
    }

    .index .search__card a {
        padding: 6px
    }

    .index .search__card-label {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        padding: 0 .5em;
        height: 70px;
        font-size: 1.6rem;
        -ms-flex-pack: center;
        -ms-flex-align: center
    }

    .index .search__card-label--3rows {
        height: 90px
    }

    .index .search__card-label span {
        display: block;
        margin-top: -1.5em;
        width: 100%;
        font-size: 1.2rem;
        line-height: 1
    }

    .index .search__card-body {
        padding: 1em;
        font-size: 1.3rem
    }
}

.index .search__table label {
    cursor: pointer;
    transition: opacity .2s
}

.index .search__table label:hover,
.index .search__table label:focus,
.index .search__table label:active {
    opacity: .8
}

.index .search__table input {
    position: absolute;
    overflow: hidden;
    clip: rect(1px 1px 1px 1px);
    width: 1px;
    height: 1px
}

.index .search__table input:focus + label {
    opacity: .8
}

.index .search__table input:checked + label {
    color: #fff
}

.index .search__table-block--style-gijyutsu .search__table-label {
    background-color: #505050
}

.index .search__table-block--style-gijyutsu .search__table-list-item input:checked + label {
    background-color: #df0523
}

.index .search__table-block--style-eigyo .search__table-label {
    background-color: #df0523
}

.index .search__table-block--style-eigyo .search__table-list-item input:checked + label {
    background-color: #0091d2
}

.index .search__table-label {
    color: #fff
}

@media screen and (max-width:767px) {
    .index .search__table {
        font-size: 3.46667vw
    }

    .index .search__table-block {
        margin: 5.33333vw 0
    }

    .index .search__table-label {
        padding: 1.33333vw 0;
        text-align: center
    }

    .index .search__table-list {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: space-between;
        -ms-flex-pack: justify
    }

    .index .search__table-list-item {
        margin: .93333vw 0
    }

    .index .search__table-list-item label {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        padding: .25em;
        width: 38.66667vw;
        height: 12vw;
        background-color: #e1e1e1;
        text-align: center;
        -ms-flex-pack: center;
        -ms-flex-align: center
    }
}

@media print,
screen and (min-width:768px) {
    .index .search__table {
        margin-top: 80px;
        font-size: 1.3rem
    }

    .index .search__table-block {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        justify-content: space-between;
        margin: 10px 0;
        -ms-flex-pack: justify
    }

    .index .search__table-label {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        width: 102px;
        background-color: #cdcdcd;
        -ms-flex-pack: center;
        -ms-flex-align: center
    }

    .index .search__table-list {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: -1px 0;
        width: calc(100% - 102px - 2px)
    }

    .index .search__table-list-item label {
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        align-items: center;
        justify-content: center;
        margin: 1px;
        padding: .25em;
        width: 190px;
        height: 30px;
        background-color: #e1e1e1;
        -ms-flex-align: center;
        -ms-flex-pack: center
    }
}

span.main__list-item-touch {
    display: none !important
}

@media print,
screen and (min-width:768px) {
    .ua-mobile-android span.main__list-item-touch {
        display: block !important
    }

    .ua-mobile-android a.main__list-item-touch,
    .ua-mobile-android button.main__list-item-touch {
        display: none !important
    }
}
