html,body,div,span,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,table,caption,tbody,tfoot,thead,tr,th,td,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    vertical-align: baseline;
    background: transparent
}

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

body {
    line-height: 1
}

div,p,span,object,iframe,blockquote,pre,abbr,address,cite,code,del,dfn,em,img,ins,kbd,q,samp,small,strong,sub,sup,var,b,i,dl,dt,dd,ol,ul,li,fieldset,form,label,legend,article,aside,canvas,details,figcaption,figure,footer,header,hgroup,menu,nav,section,summary,time,mark,audio,video,table,tr,td,th,tbody,tfoot,thead {
    line-height: 1
}

h1,h2,h3,h4,h5,h6 {
    line-height: 1;
    font-weight: normal
}

address,caption,cite,code,dfn,em,strong,th,var {
    font-style: normal;
    font-weight: normal
}

ol,ul {
    list-style: none
}

blockquote,q {
    quotes: none
}

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

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

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
    padding: 0
}

a img {
    border: none
}

a {
    font-size: 100%;
    vertical-align: baseline;
    background: transparent
}

a:hover {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

a:hover img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

*,*::before,*::after {
    box-sizing: border-box;
    text-rendering: geometricPrecision;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-tap-highlight-color: rgba(0,0,0,0)
}

html {
    font-size: 62.5%;
    overflow-x: hidden
}

body {
    width: 100%;
    background-color: #f5f5f5;
    font-family: 'Noto Serif JP', serif;
    font-size: 1.0rem;
    font-weight: 500;
    color: #000;
    -webkit-font-feature-settings: 'palt';
    font-feature-settings: 'palt';
    -webkit-text-size-adjust: 100%;
    -webkit-overflow-scrolling: touch;
    letter-spacing: .05em;
    /* overflow-x: hidden; */
    overscroll-behavior-y: none
}

@media screen and (min-width: 1024px) {
    body:not(.t-top-body) {
        padding-top:80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    body:not(.t-top-body) {
        padding-top:80px
    }
}

@media screen and (max-width: 560px) {
    body:not(.t-top-body) {
        padding-top:70px
    }
}

body.t-top-body .l-header:not(.is-sticky) {
    background-color: rgba(255,255,255,0.3)
}

p,a,dt,dd,small,address,th,td {
    line-height: 1.5
}

@media screen and (min-width: 1024px) {
    p,a,dt,dd,small,address,th,td {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    p,a,dt,dd,small,address,th,td {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    p,a,dt,dd,small,address,th,td {
        font-size:1.3rem
    }
}

a {
    text-decoration: none;
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

a.is-hover:hover {
    opacity: .8
}

a,a:visited,a:focus,a:link,a:active {
    color: #000
}

h1,h2,h3,h4,h5,h6 {
    line-height: 1.5
}

ol,ul {
    list-style: none
}

main {
    display: block
}

table {
    -webkit-backface-visibility: visible;
    backface-visibility: visible
}

@-webkit-keyframes frame-01 {
    0%,24.999% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    25%,50% {
        -webkit-transform: rotate(2deg);
        transform: rotate(2deg)
    }

    50.001%,100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
}

@keyframes frame-01 {
    0%,24.999% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    25%,50% {
        -webkit-transform: rotate(2deg);
        transform: rotate(2deg)
    }

    50.001%,100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
}

@-webkit-keyframes frame-02 {
    0%,24.999% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    25%,50% {
        -webkit-transform: rotate(-2deg);
        transform: rotate(-2deg)
    }

    50.001%,100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
}

@keyframes frame-02 {
    0%,24.999% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }

    25%,50% {
        -webkit-transform: rotate(-2deg);
        transform: rotate(-2deg)
    }

    50.001%,100% {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg)
    }
}

@-webkit-keyframes grade-w-transparent {
    0% {
        border-color: transparent transparent transparent transparent
    }

    30% {
        border-color: transparent transparent transparent transparent
    }

    30.00001% {
        border-color: #fff transparent transparent transparent
    }

    80% {
        border-color: #fff transparent transparent transparent
    }

    80.00001% {
        border-color: transparent transparent transparent transparent
    }

    100% {
        border-color: transparent transparent transparent transparent
    }
}

@keyframes grade-w-transparent {
    0% {
        border-color: transparent transparent transparent transparent
    }

    30% {
        border-color: transparent transparent transparent transparent
    }

    30.00001% {
        border-color: #fff transparent transparent transparent
    }

    80% {
        border-color: #fff transparent transparent transparent
    }

    80.00001% {
        border-color: transparent transparent transparent transparent
    }

    100% {
        border-color: transparent transparent transparent transparent
    }
}

@-webkit-keyframes grade-b-transparent {
    0% {
        border-color: transparent transparent transparent transparent
    }

    30% {
        border-color: transparent transparent transparent transparent
    }

    30.00001% {
        border-color: #000 transparent transparent transparent
    }

    80% {
        border-color: #000 transparent transparent transparent
    }

    80.00001% {
        border-color: transparent transparent transparent transparent
    }

    100% {
        border-color: transparent transparent transparent transparent
    }
}

@keyframes grade-b-transparent {
    0% {
        border-color: transparent transparent transparent transparent
    }

    30% {
        border-color: transparent transparent transparent transparent
    }

    30.00001% {
        border-color: #000 transparent transparent transparent
    }

    80% {
        border-color: #000 transparent transparent transparent
    }

    80.00001% {
        border-color: transparent transparent transparent transparent
    }

    100% {
        border-color: transparent transparent transparent transparent
    }
}

@-webkit-keyframes scaleX-InOut {
    0% {
        -webkit-transform: scale3d(0, 1, 1);
        transform: scale3d(0, 1, 1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0
    }

    50% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0
    }

    50.00001% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
        -webkit-transform-origin: 100% 0;
        transform-origin: 100% 0
    }

    100% {
        -webkit-transform: scale3d(0, 1, 1);
        transform: scale3d(0, 1, 1);
        -webkit-transform-origin: 100% 0;
        transform-origin: 100% 0
    }
}

@keyframes scaleX-InOut {
    0% {
        -webkit-transform: scale3d(0, 1, 1);
        transform: scale3d(0, 1, 1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0
    }

    50% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0
    }

    50.00001% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
        -webkit-transform-origin: 100% 0;
        transform-origin: 100% 0
    }

    100% {
        -webkit-transform: scale3d(0, 1, 1);
        transform: scale3d(0, 1, 1);
        -webkit-transform-origin: 100% 0;
        transform-origin: 100% 0
    }
}

@-webkit-keyframes scaleY-InOut {
    0% {
        -webkit-transform: scale3d(1, 0, 1);
        transform: scale3d(1, 0, 1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0
    }

    50% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0
    }

    50.00001% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
        -webkit-transform-origin: 0 100%;
        transform-origin: 0 100%
    }

    100% {
        -webkit-transform: scale3d(1, 0, 1);
        transform: scale3d(1, 0, 1);
        -webkit-transform-origin: 0 100%;
        transform-origin: 0 100%
    }
}

@keyframes scaleY-InOut {
    0% {
        -webkit-transform: scale3d(1, 0, 1);
        transform: scale3d(1, 0, 1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0
    }

    50% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
        -webkit-transform-origin: 0 0;
        transform-origin: 0 0
    }

    50.00001% {
        -webkit-transform: scale3d(1, 1, 1);
        transform: scale3d(1, 1, 1);
        -webkit-transform-origin: 0 100%;
        transform-origin: 0 100%
    }

    100% {
        -webkit-transform: scale3d(1, 0, 1);
        transform: scale3d(1, 0, 1);
        -webkit-transform-origin: 0 100%;
        transform-origin: 0 100%
    }
}

@-webkit-keyframes slide_lr {
    0% {
        -webkit-transform: translate3d(-2%, 0, 0);
        transform: translate3d(-2%, 0, 0)
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@keyframes slide_lr {
    0% {
        -webkit-transform: translate3d(-2%, 0, 0);
        transform: translate3d(-2%, 0, 0)
    }

    100% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }
}

@-webkit-keyframes slide_c {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    100% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
}

@keyframes slide_c {
    0% {
        -webkit-transform: scale(1);
        transform: scale(1)
    }

    100% {
        -webkit-transform: scale(1.1);
        transform: scale(1.1)
    }
}

@-webkit-keyframes updown {
    0% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    25% {
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0)
    }

    50% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    75% {
        -webkit-transform: translate3d(0, 20px, 0);
        transform: translate3d(0, 20px, 0)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes updown {
    0% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    25% {
        -webkit-transform: translate3d(0, -20px, 0);
        transform: translate3d(0, -20px, 0)
    }

    50% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    75% {
        -webkit-transform: translate3d(0, 20px, 0);
        transform: translate3d(0, 20px, 0)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@-webkit-keyframes updown-10 {
    0% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    25% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0)
    }

    50% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    75% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

@keyframes updown-10 {
    0% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    25% {
        -webkit-transform: translate3d(0, -10px, 0);
        transform: translate3d(0, -10px, 0)
    }

    50% {
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0)
    }

    75% {
        -webkit-transform: translate3d(0, 10px, 0);
        transform: translate3d(0, 10px, 0)
    }

    100% {
        -webkit-transform: translateY(0);
        transform: translateY(0)
    }
}

[data-simplebar] {
    position: relative;
    flex-direction: column;
    flex-wrap: wrap;
    justify-content: flex-start;
    align-content: flex-start;
    align-items: flex-start
}

.simplebar-wrapper {
    overflow: hidden;
    width: inherit;
    height: inherit;
    max-width: inherit;
    max-height: inherit;
    margin-bottom: 10px
}

.simplebar-mask {
    direction: inherit;
    position: absolute;
    overflow: hidden;
    padding: 0;
    margin: 0;
    left: 0;
    top: 0;
    bottom: 0;
    right: 0;
    width: auto !important;
    height: auto !important;
    z-index: 0
}

.simplebar-offset {
    direction: inherit !important;
    box-sizing: inherit !important;
    resize: none !important;
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    right: 0;
    padding: 0;
    margin: 0;
    -webkit-overflow-scrolling: touch
}

.simplebar-content-wrapper {
    direction: inherit;
    box-sizing: border-box !important;
    position: relative;
    display: block;
    height: 100%;
    width: auto;
    visibility: visible;
    max-width: 100%;
    max-height: 100%;
    scrollbar-width: none;
    -ms-overflow-style: none !important
}

.simplebar-content-wrapper::-webkit-scrollbar,.simplebar-hide-scrollbar::-webkit-scrollbar {
    display: none
}

.simplebar-content:before,.simplebar-content:after {
    content: ' ';
    display: table
}

.simplebar-placeholder {
    max-height: 100%;
    max-width: 100%;
    width: 100%;
    pointer-events: none
}

.simplebar-height-auto-observer-wrapper {
    box-sizing: inherit !important;
    height: 100%;
    width: 100%;
    max-width: 1px;
    position: relative;
    float: left;
    max-height: 1px;
    overflow: hidden;
    z-index: -1;
    padding: 0;
    margin: 0;
    pointer-events: none;
    flex-grow: inherit;
    flex-shrink: 0;
    flex-basis: 0
}

.simplebar-height-auto-observer {
    box-sizing: inherit;
    display: block;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    height: 1000%;
    width: 1000%;
    min-height: 1px;
    min-width: 1px;
    overflow: hidden;
    pointer-events: none;
    z-index: -1
}

.simplebar-track {
    z-index: 1;
    position: absolute;
    right: 0;
    bottom: 0;
    pointer-events: none;
    overflow: hidden;
    background-color: #f5f5f5
}

[data-simplebar].simplebar-dragging .simplebar-content {
    pointer-events: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -webkit-user-select: none
}

[data-simplebar].simplebar-dragging .simplebar-track {
    pointer-events: all
}

.simplebar-scrollbar {
    position: absolute;
    right: 0;
    width: 3px;
    min-height: 10px;
    background-color: #f5f5f5
}

.simplebar-scrollbar:before {
    position: absolute;
    content: '';
    background: #b4b4b4;
    left: 0;
    right: 0;
    opacity: 0;
    transition: opacity 0.2s linear
}

.simplebar-scrollbar.simplebar-visible:before {
    opacity: 1;
    transition: opacity 0s linear
}

.simplebar-track.simplebar-vertical {
    top: 0;
    width: 3px
}

.simplebar-track.simplebar-vertical .simplebar-scrollbar:before {
    top: 0;
    bottom: 0
}

.simplebar-track.simplebar-horizontal {
    left: 0;
    height: 3px
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar:before {
    height: 100%;
    left: 0;
    right: 0
}

.simplebar-track.simplebar-horizontal .simplebar-scrollbar {
    right: auto;
    left: 0;
    bottom: 0;
    height: 3px;
    min-height: 0;
    min-width: 10px;
    width: auto
}

[data-simplebar-direction='rtl'] .simplebar-track.simplebar-vertical {
    right: auto;
    left: 0
}

.hs-dummy-scrollbar-size {
    direction: rtl;
    position: fixed;
    opacity: 0;
    visibility: hidden;
    height: 500px;
    width: 500px;
    overflow-y: hidden;
    overflow-x: scroll
}

.simplebar-hide-scrollbar {
    position: fixed;
    left: 0;
    visibility: hidden;
    overflow-y: scroll;
    scrollbar-width: none
}

@font-face {
    font-family: "slick";
    src: url("./fonts/slick.eot");
    src: url("./fonts/slick.eot?#iefix") format("embedded-opentype"),url("./fonts/slick.woff") format("woff"),url("./fonts/slick.ttf") format("truetype"),url("./fonts/slick.svg#slick") format("svg");
    font-weight: normal;
    font-style: normal
}

.slick-prev,.slick-next {
    position: absolute;
    display: block;
    height: 20px;
    width: 20px;
    line-height: 0px;
    font-size: 0px;
    cursor: pointer;
    background: transparent;
    color: transparent;
    top: 50%;
    -webkit-transform: translate(0, -50%);
    transform: translate(0, -50%);
    padding: 0;
    border: none;
    outline: none
}

.slick-prev:hover,.slick-prev:focus,.slick-next:hover,.slick-next:focus {
    outline: none;
    background: transparent;
    color: transparent
}

.slick-prev:hover:before,.slick-prev:focus:before,.slick-next:hover:before,.slick-next:focus:before {
    opacity: 1
}

.slick-prev.slick-disabled:before,.slick-next.slick-disabled:before {
    opacity: .25
}

.slick-prev:before,.slick-next:before {
    font-family: "slick";
    font-size: 20px;
    line-height: 1;
    color: #fff;
    opacity: .75;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.slick-dotted.slick-slider {
    margin-bottom: 30px
}

.slick-dots {
    position: absolute;
    bottom: -25px;
    list-style: none;
    display: block;
    text-align: center;
    padding: 0;
    margin: 0;
    width: 100%
}

.slick-dots li {
    position: relative;
    display: inline-block;
    height: 20px;
    width: 20px;
    margin: 0 5px;
    padding: 0;
    cursor: pointer
}

.slick-dots li button {
    border: 0;
    background: transparent;
    display: block;
    height: 20px;
    width: 20px;
    outline: none;
    line-height: 0px;
    font-size: 0px;
    color: transparent;
    padding: 5px;
    cursor: pointer
}

.slick-dots li button:hover,.slick-dots li button:focus {
    outline: none
}

.slick-dots li button:hover:before,.slick-dots li button:focus:before {
    opacity: 1
}

.slick-dots li button:before {
    position: absolute;
    top: 0;
    left: 0;
    content: "â€¢";
    width: 20px;
    height: 20px;
    font-family: "slick";
    font-size: 6px;
    line-height: 20px;
    text-align: center;
    color: #000;
    opacity: .25;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

.slick-dots li.slick-active button:before {
    color: #000;
    opacity: .75
}

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0
}

.slick-list:focus {
    outline: none
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand
}

.slick-slider .slick-track,.slick-slider .slick-list {
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
    margin-left: auto;
    margin-right: auto
}

.slick-track:before,.slick-track:after {
    content: "";
    display: table
}

.slick-track:after {
    clear: both
}

.slick-loading .slick-track {
    visibility: hidden
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none
}

[dir="rtl"] .slick-slide {
    float: right
}

.slick-slide img {
    display: block
}

.slick-slide.slick-loading img {
    display: none
}

.slick-slide.dragging img {
    pointer-events: none
}

.slick-initialized .slick-slide {
    display: block
}

.slick-loading .slick-slide {
    visibility: hidden
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent
}

.slick-arrow.slick-hidden {
    display: none
}

.l-aside-contact {
    background-color: #eee
}

@media screen and (min-width: 1024px) {
    .l-aside-contact {
        padding:100px 0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-aside-contact {
        padding:60px 0
    }
}

@media screen and (max-width: 560px) {
    .l-aside-contact {
        padding:30px 0
    }
}

.l-aside-contact li {
    box-shadow: 5px 5px 15px rgba(0,0,0,0.275);
    color: #fff;
    text-align: center
}

.l-aside-contact a {
    color: #fff
}

.l-aside-contact__cell {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column
}

@media screen and (min-width: 1024px) {
    .l-aside-contact__cell {
        padding:40px 20px 35px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-aside-contact__cell {
        padding:30px 20px 25px
    }
}

@media screen and (max-width: 560px) {
    .l-aside-contact__cell {
        padding:20px 15px
    }
}

.l-aside-contact__cell h2 {
    font-weight: bold;
    letter-spacing: .12em
}

@media screen and (min-width: 1024px) {
    .l-aside-contact__cell h2 {
        font-size:2.0rem;
        margin-bottom: 13px
    }
}

@media screen and (min-width: 1280px) {
    .l-aside-contact__cell h2 {
        font-size:2.2rem
    }
}

@media screen and (max-width: 1023px) {
    .l-aside-contact__cell h2 {
        font-size:1.6rem;
        margin-bottom: 10px
    }
}

@media screen and (max-width: 320px) {
    .l-aside-contact__cell h2 {
        font-size:1.4rem;
        margin-bottom: 8px
    }
}

.l-aside-contact__tel h2 {
    display: flex;
    align-items: center;
    justify-content: center
}

@media screen and (min-width: 1024px) {
    .l-aside-contact__tel h2 {
        margin-bottom:15px
    }
}

.l-aside-contact__tel h2::before {
    content: '';
    display: block;
    background-image: url("/assets/img/common/icon/tel-white.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .l-aside-contact__tel h2::before {
        width:20px;
        height: 30px;
        margin-right: 11px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-aside-contact__tel h2::before {
        width:14px;
        height: 21px;
        margin-right: 6px
    }
}

.l-aside-contact__tel a {
    width: 100%;
    height: 100%
}

.l-aside-contact__tel__number {
    letter-spacing: -.01em;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .l-aside-contact__tel__number {
        font-size:2.7rem;
        margin-bottom: 7px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-aside-contact__tel__number {
        font-size:calc( 1.0rem + 2.7vw)
    }
}

@media screen and (max-width: 560px) {
    .l-aside-contact__tel__number {
        font-size:2.7rem
    }
}

@media screen and (max-width: 414px) {
    .l-aside-contact__tel__number {
        font-size:calc( 1.0rem + 6vw)
    }
}

.l-aside-contact__tel__number span {
    font-size: 60%;
    vertical-align: middle;
    letter-spacing: .07em
}

@media screen and (min-width: 1024px) {
    .l-aside-contact__tel__number span {
        margin-right:12px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-aside-contact__tel__number span {
        margin-right:8px
    }
}

@media screen and (max-width: 560px) {
    .l-aside-contact__tel__number span {
        margin-right:4px
    }
}

.l-aside-contact__tel__time {
    font-weight: bold;
    letter-spacing: .14em
}

@media screen and (min-width: 1024px) {
    .l-aside-contact__tel__time {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-aside-contact__tel__time {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .l-aside-contact__tel__time {
        font-size:1.2rem
    }
}

.l-aside-contact__web a {
    color: #1aa7c7 !important
}

.l-aside-banner {
    background-color: #fff
}

@media screen and (min-width: 1024px) {
    .l-aside-banner {
        padding:60px 0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-aside-banner {
        padding:40px 0
    }
}

@media screen and (max-width: 560px) {
    .l-aside-banner {
        padding:30px 0
    }
}

.l-breadcrumb {
    position: relative;
    z-index: 1;
    max-width: 1080px;
    width: 90%;
    margin: 0 auto;
    display: flex;
    justify-content: flex-end;
    align-items: center;
    overflow: hidden;
    z-index: 2;
    padding-top: 20px
}

@media screen and (min-width: 1024px) {
    .l-breadcrumb {
        margin-bottom:80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-breadcrumb {
        margin-bottom:60px
    }
}

@media screen and (max-width: 560px) {
    .l-breadcrumb {
        margin-bottom:50px
    }
}

.l-breadcrumb li,.l-breadcrumb a {
    color: #333;
    letter-spacing: 0;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .l-breadcrumb li,.l-breadcrumb a {
        font-size:1.3rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-breadcrumb li,.l-breadcrumb a {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .l-breadcrumb li,.l-breadcrumb a {
        font-size:1.0rem
    }
}

.l-breadcrumb li {
    display: flex;
    align-items: center;
    overflow: hidden
}

.l-breadcrumb li:not(:last-of-type) {
    flex: none
}

.l-breadcrumb li:not(:last-of-type)::after {
    content: '';
    display: block;
    width: 5px;
    height: 7.5px;
    background-image: url("/assets/img/common/icon/arrow-gray.png");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin: 0 12px
}

.l-breadcrumb li:last-of-type a {
    pointer-events: none;
    text-decoration: none;
    overflow: hidden;
    white-space: nowrap;
    text-overflow: ellipsis
}

.l-breadcrumb a {
    display: block;
    transition-property: background-size;
    background-image: linear-gradient(180deg, #646464, #646464);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 100% 100%
}

.l-breadcrumb a.is-hover:hover {
    opacity: 1;
    background-size: 100% 1px;
    background-position: 0% 100%
}

.l-footer {
    position: relative
}

.l-footer__gotop {
    position: absolute;
    right: 20px;
    top: -64px;
    z-index: 1
}

@media screen and (min-width: 1024px) {
    .l-footer__gotop {
        width:60px;
        height: 60px
    }
}

@media screen and (max-width: 1023px) {
    .l-footer__gotop {
        width:50px;
        height: 50px
    }
}

.l-footer__gotop a {
    display: block;
    width: 100%;
    height: 100%;
    transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media screen and (min-width: 1024px) {
    .l-footer__gotop a {
        -webkit-animation:3000ms linear updown-10 infinite;
        animation: 3000ms linear updown-10 infinite
    }
}

.l-footer__gotop a.is-hover:hover {
    opacity: .8;
    -webkit-animation: none;
    animation: none
}

.l-footer__gotop a.is-hover:hover span,.l-footer__gotop a.is-hover:hover figure {
    -webkit-transform: translate3d(0, -30px, 0);
    transform: translate3d(0, -30px, 0)
}

.l-footer__gotop a.is-hover:hover span {
    opacity: 1
}

.l-footer__gotop a span,.l-footer__gotop a figure {
    display: block;
    transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.l-footer__gotop a span {
    margin-bottom: 10px
}

@media screen and (min-width: 1024px) {
    .l-footer__gotop a span {
        opacity:0
    }
}

.l-footer__body {
    background-image: url("/assets/img/common/bg_footer.jpg");
    background-size: 500px 500px;
    position: relative;
    z-index: 2
}

@media screen and (min-width: 1024px) {
    .l-footer__body {
        padding:60px 0 30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-footer__body {
        padding:50px 0 25px
    }
}

@media screen and (max-width: 560px) {
    .l-footer__body {
        padding:40px 0 20px
    }
}

.l-footer__main {
    position: relative;
    z-index: 1;
    margin: 0 auto;
    color: #fff
}

@media screen and (min-width: 769px) {
    .l-footer__main {
        display:flex;
        align-items: flex-start;
        justify-content: space-between;
        max-width: 1080px;
        width: 90%
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-footer__main {
        margin-bottom:40px
    }
}

@media screen and (max-width: 768px) {
    .l-footer__main {
        max-width:300px;
        width: 90%
    }
}

@media screen and (max-width: 560px) {
    .l-footer__main {
        margin-bottom:40px
    }
}

@media screen and (min-width: 769px) {
    .l-footer__content {
        max-width:330px
    }
}

@media screen and (min-width: 860px) {
    .l-footer__content {
        max-width:430px
    }
}

@media screen and (max-width: 768px) {
    .l-footer__content {
        margin-bottom:40px
    }
}

@media screen and (min-width: 561px) {
    .l-footer__content .l-sitemap__small {
        justify-content:flex-start
    }
}

.l-footer__logo {
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .l-footer__logo {
        width:200px;
        height: 61.6px;
        margin-bottom: 30px
    }
}

@media screen and (min-width: 1280px) {
    .l-footer__logo {
        width:250px;
        height: 77px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-footer__logo {
        width:175px;
        height: 53.9px;
        margin: 0 auto 25px
    }
}

@media screen and (max-width: 560px) {
    .l-footer__logo {
        width:150px;
        height: 46.2px;
        margin: 0 auto 20px
    }
}

.l-footer__logo a {
    display: block;
    width: 100%;
    height: 100%;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    position: relative;
    text-align: left;
    background-image: url("/assets/img/common/logo-white.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

.l-footer__address {
    color: #fff;
    letter-spacing: .1em;
    line-height: 1.85714;
    margin-bottom: 20px
}

@media screen and (max-width: 1023px) {
    .l-footer__address {
        text-align:center
    }
}

@media screen and (min-width: 1024px) {
    .l-footer__address,.l-footer__address a {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-footer__address,.l-footer__address a {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .l-footer__address,.l-footer__address a {
        font-size:1.2rem
    }
}

.l-footer__address a {
    color: #fff
}

.l-footer__contact {
    line-height: 1;
    margin: 0 auto 20px !important
}

@media screen and (min-width: 769px) {
    .l-footer__contact {
        max-width:412px !important
    }
}

@media screen and (max-width: 768px) {
    .l-footer__contact {
        max-width:100% !important
    }
}

.l-footer__contact a {
    background-color: #fff;
    letter-spacing: .12em
}

@media screen and (min-width: 1024px) {
    .l-footer__contact a {
        font-size:1.6rem !important
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-footer__contact a {
        font-size:1.4rem !important
    }
}

@media screen and (max-width: 560px) {
    .l-footer__contact a {
        font-size:1.2rem !important
    }
}

.l-footer__info a {
    color: #fff;
    letter-spacing: .12em;
    line-height: 1;
    transition-property: background-size;
    background-image: linear-gradient(180deg, #fff, #fff);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 100% 100%
}

.l-footer__info a.is-hover:hover {
    opacity: 1;
    background-size: 100% 1px;
    background-position: 0% 100%
}

@media screen and (min-width: 1024px) {
    .l-footer__info a {
        font-size:1.4rem
    }
}

@media screen and (min-width: 1280px) {
    .l-footer__info a {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-footer__info a {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .l-footer__info a {
        font-size:1.2rem
    }
}

.l-footer__tel {
    color: #fff
}

@media screen and (min-width: 1024px) {
    .l-footer__tel {
        font-size:2.7rem
    }
}

@media screen and (max-width: 1023px) {
    .l-footer__tel {
        text-align:center
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-footer__tel {
        font-size:2.2rem
    }
}

@media screen and (max-width: 560px) {
    .l-footer__tel {
        font-size:1.8rem
    }
}

.l-footer__tel a {
    display: block;
    width: 100%;
    height: 100%
}

@media screen and (max-width: 1023px) {
    .l-footer__fax {
        text-align:center
    }
}

@media screen and (min-width: 769px) {
    .l-footer__nav__cell:not(:last-of-type) {
        margin-right:40px
    }
}

@media screen and (min-width: 1024px) {
    .l-footer__nav__cell:not(:last-of-type) {
        margin-right:80px
    }
}

@media screen and (min-width: 1280px) {
    .l-footer__nav__cell:not(:last-of-type) {
        margin-right:120px
    }
}

@media screen and (max-width: 768px) {
    .l-footer__nav__cell:not(:last-of-type) {
        width:50%
    }
}

@media screen and (max-width: 414px) {
    .l-footer__nav__cell:not(:last-of-type) {
        width:auto;
        margin-right: 10%
    }
}

@media screen and (min-width: 1024px) {
    .l-footer__nav__cell>li:not(:last-of-type) {
        margin-bottom:20px
    }
}

@media screen and (max-width: 1023px) {
    .l-footer__nav__cell>li:not(:last-of-type) {
        margin-bottom:15px
    }
}

@media screen and (min-width: 1024px) {
    .l-footer__nav__children {
        margin-top:15px
    }
}

@media screen and (max-width: 1023px) {
    .l-footer__nav__children {
        margin-top:10px
    }
}

@media screen and (min-width: 1024px) {
    .l-footer__nav__children li:not(:last-of-type) {
        margin-bottom:12px
    }
}

@media screen and (max-width: 1023px) {
    .l-footer__nav__children li:not(:last-of-type) {
        margin-bottom:9px
    }
}

.l-footer__nav__children a::before {
    content: 'ãƒ¼ '
}

@media screen and (min-width: 1024px) {
    .l-footer__nav__download ul {
        margin-top:15px
    }
}

@media screen and (max-width: 1023px) {
    .l-footer__nav__download ul {
        margin-top:10px
    }
}

@media screen and (min-width: 1024px) {
    .l-footer__nav__download li:not(:last-of-type) {
        margin-bottom:13px
    }
}

@media screen and (max-width: 1023px) {
    .l-footer__nav__download li:not(:last-of-type) {
        margin-bottom:8px
    }
}

@media screen and (min-width: 1024px) {
    .l-footer__nav__download li a {
        font-size:1.2rem
    }
}

@media screen and (min-width: 1280px) {
    .l-footer__nav__download li a {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-footer__nav__download li a {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .l-footer__nav__download li a {
        font-size:1.1rem
    }
}

@media screen and (max-width: 1023px) {
    .l-footer__nav {
        text-align:center
    }
}

.l-footer__nav__small {
    font-weight: 400;
    line-height: 1.7 !important
}

@media screen and (min-width: 561px) {
    .l-footer__nav__small {
        font-size:1.2rem !important
    }
}

@media screen and (max-width: 560px) {
    .l-footer__nav__small {
        font-size:1.0rem !important
    }
}

@media screen and (min-width: 1024px) {
    .l-footer__fixed {
        position:fixed;
        top: 50%;
        left: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
        z-index: 100;
        width: 40px
    }
}

@media screen and (max-width: 1023px) {
    .l-footer__fixed {
        display:flex;
        flex-direction: column-reverse
    }

    .l-footer__fixed>* {
        width: 100%
    }
}

.l-footer__copyright {
    font-size: 1.0rem;
    line-height: 1;
    text-align: center;
    margin-top: 46px
}

.l-footer__copyright small {
    display: block;
    font-size: 1.0rem;
    letter-spacing: .22em;
    line-height: 1;
    color: #fff
}

.l-footer__sns {
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

@media screen and (min-width: 561px) {
    .l-footer__sns {
        justify-content:flex-start
    }
}

@media screen and (max-width: 560px) {
    .l-footer__sns {
        justify-content:center
    }
}

@media screen and (min-width: 1024px) {
    .l-footer__sns {
        margin-top:20px
    }
}

@media screen and (max-width: 1023px) {
    .l-footer__sns {
        display:flex;
        align-items: center;
        justify-content: center;
        margin-bottom: 12px
    }
}

.l-footer__sns li {
    width: 20px;
    height: 20px
}

@media screen and (min-width: 1024px) {
    .l-footer__sns li:not(:last-of-type) {
        margin-bottom:18px
    }
}

.l-footer__sns a {
    display: block;
    width: 100%;
    height: 100%
}

.l-footer__facebook a {
    background-image: url("/assets/img/common/icon/sns_facebook.svg")
}

.l-footer__instagram a {
    background-image: url("/assets/img/common/icon/sns_instagram.svg")
}

.l-header {
    width: 100%;
    background-color: #fff;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100;
    transition: all 600ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media screen and (min-width: 1024px) {
    .l-header {
        height:80px
    }
}

@media screen and (max-width: 1023px) {
    .l-header {
        transition:box-shadow 200ms ease
    }
}

.l-header__dummy {
    visibility: hidden;
    opacity: 0
}

@media screen and (min-width: 1024px) {
    .l-header__dummy {
        height:0
    }
}

@media screen and (max-width: 1023px) {
    .l-header__dummy {
        height:100%;
        position: absolute;
        top: 0;
        left: 0
    }
}

.l-header__inner {
    height: 100%
}

@media screen and (min-width: 1024px) {
    .l-header__inner {
        padding:0 50px
    }
}

@media screen and (max-width: 1023px) {
    .l-header__inner {
        padding:0 0 0 5%;
        position: relative;
        z-index: 100002;
        display: flex;
        align-items: center;
        justify-content: space-between
    }
}

.is-sitemap-open .l-header__inner {
    background-color: #fff
}

.l-header__content {
    height: 100%
}

@media screen and (min-width: 1024px) {
    .l-header__content {
        width:100%;
        display: flex;
        align-items: center;
        justify-content: space-between
    }
}

.l-header__logo {
    position: relative;
    z-index: 100003
}

@media screen and (min-width: 1024px) {
    .l-header__logo {
        width:136px;
        height: 42.4px
    }
}

@media screen and (min-width: 1280px) {
    .l-header__logo {
        width:170px;
        height: 53px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-header__logo {
        width:119px;
        height: 37.1px
    }
}

@media screen and (max-width: 560px) {
    .l-header__logo {
        width:102px;
        height: 31.8px
    }
}

.l-header__logo a {
    display: block;
    width: 100%;
    height: 100%;
    text-indent: 100%;
    white-space: nowrap;
    overflow: hidden;
    position: relative;
    text-align: left;
    background-image: url("/assets/img/common/logo.svg");
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .l-header__nav {
        display:flex;
        align-items: center
    }
}

@media screen and (max-width: 1023px) {
    .l-header__nav {
        display:none
    }
}

@media screen and (min-width: 1024px) {
    .l-header__nav a {
        display:block;
        font-size: 1.3rem
    }
}

@media screen and (min-width: 1280px) {
    .l-header__nav a {
        font-size:1.5rem
    }
}

@media screen and (min-width: 1024px) {
    .l-header__nav__main {
        display:flex;
        align-items: center
    }
}

.l-header__nav__main>li {
    position: relative
}

@media screen and (min-width: 1024px) {
    .l-header__nav__main>li:not(:last-of-type) {
        margin-right:20px
    }
}

@media screen and (min-width: 1280px) {
    .l-header__nav__main>li:not(:last-of-type) {
        margin-right:36px
    }
}

@media screen and (min-width: 1024px) {
    .l-header__nav__normal a {
        padding:8px 0 9px;
        transition-property: background-size;
        background-image: linear-gradient(180deg, #000, #000);
        background-repeat: no-repeat;
        background-size: 0 1px;
        background-position: 50% 100%
    }

    .l-header__nav__normal a.is-hover:hover {
        opacity: 1;
        background-size: 100% 1px;
        background-position: 50% 100%
    }
}

@media screen and (min-width: 1024px) {
    .l-header__nav__normal a::before {
        content:'';
        display: block;
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat;
        margin: 0 auto 6px
    }
}

.l-header__nav__black a {
    padding: 8px 15px;
    background-color: #000;
    color: #fff !important;
    line-height: 1
}

.l-header__nav__black a.is-hover:hover {
    background-color: #f7de04;
    color: #000 !important;
    opacity: 1
}

.l-header__nav__onlineshop a {
    display: flex !important;
    justify-content: center;
    align-items: flex-end
}

.l-header__nav__onlineshop a::before {
    content: '';
    display: block;
    background-image: url("/assets/img/common/icon/icon_cart_white.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-right: .5em
}

@media screen and (min-width: 1024px) {
    .l-header__nav__onlineshop a::before {
        width:15.6px;
        height: 14.4px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-header__nav__onlineshop a::before {
        width:15.6px;
        height: 14.4px
    }
}

@media screen and (max-width: 560px) {
    .l-header__nav__onlineshop a::before {
        width:13px;
        height: 12px
    }
}

.l-header__nav__onlineshop a.is-hover:hover::before {
    background-image: url("/assets/img/common/icon/icon_cart_black.svg")
}

@media screen and (min-width: 1024px) {
    .l-header__nav__contact {
        width:120px;
        height: 110px;
        margin-left: 3px
    }
}

@media screen and (min-width: 1024px) {
    .l-header__nav__contact a {
        display:flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        width: 100%;
        height: 100%;
        background: linear-gradient(45deg, #05aadc, #1aa7c7);
        text-align: center;
        color: #fff;
        font-weight: bold;
        font-size: 1.4rem;
        letter-spacing: .14em;
        line-height: 2;
        position: relative
    }

    .l-header__nav__contact a::before {
        content: '';
        display: block;
        width: 0;
        height: 100%;
        position: absolute;
        top: 0;
        left: auto;
        right: 0;
        z-index: 0;
        background-color: rgba(255,255,255,0.2);
        opacity: 0;
        transition: 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
        transition-property: opacity,width
    }

    .l-header__nav__contact a.is-hover:hover {
        opacity: 1
    }

    .l-header__nav__contact a.is-hover:hover::before {
        width: 100%;
        left: 0;
        right: auto;
        opacity: 1
    }
}

.l-header__btn {
    display: flex;
    z-index: 100002;
    overflow: hidden
}

@media screen and (min-width: 1024px) {
    .l-header__btn {
        position:fixed;
        top: 0;
        right: 0;
        background-color: #fff;
        box-shadow: 7px 7px 10px rgba(0,0,0,0.045);
        height: 0;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
        transition: height 300ms cubic-bezier(0.86, 0, 0.07, 1)
    }
}

@media screen and (max-width: 1023px) {
    .l-header__btn {
        position:relative
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-header__btn {
        height:80px
    }
}

@media screen and (max-width: 560px) {
    .l-header__btn {
        height:70px
    }
}

@media screen and (min-width: 1024px) {
    .l-header__btn.is-sticky {
        height:88px
    }
}

@media screen and (min-width: 1024px) {
    .l-header__btn .l-sitemap-btn {
        width:96px;
        height: 88px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-header__btn .l-sitemap-btn {
        width:80px;
        height: 80px
    }
}

@media screen and (max-width: 560px) {
    .l-header__btn .l-sitemap-btn {
        width:70px;
        height: 70px
    }
}

.l-header__btn a {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    text-align: center;
    color: #fff;
    font-weight: bold;
    letter-spacing: .14em;
    position: relative
}

.l-header__btn a::before {
    content: '';
    display: block;
    width: 0;
    height: 100%;
    position: absolute;
    top: 0;
    left: auto;
    right: 0;
    z-index: 0;
    background-color: rgba(255,255,255,0.2);
    opacity: 0;
    transition: 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    transition-property: opacity,width
}

.l-header__btn a.is-hover:hover {
    opacity: 1
}

.l-header__btn a.is-hover:hover::before {
    width: 100%;
    left: 0;
    right: auto;
    opacity: 1
}

@media screen and (min-width: 561px) {
    .l-header__btn a {
        font-size:1.2rem
    }
}

@media screen and (min-width: 1024px) {
    .l-header__btn a {
        line-height:2
    }
}

@media screen and (max-width: 1023px) {
    .l-header__btn a {
        line-height:1.8;
        font-size: 1.0rem
    }
}

@media screen and (max-width: 560px) {
    .l-header__btn a {
        font-size:1.0rem
    }
}

@media screen and (min-width: 1024px) {
    body.is-sitemap-open .l-header__btn {
        height:88px
    }
}

.l-header__contact a {
    background: linear-gradient(45deg, #05aadc, #1aa7c7)
}

.l-hero {
    position: relative;
    z-index: 2;
    margin: 0 0 0 auto;
    width: 100%
}

.l-hero.is-load .l-hero__inner::before {
    width: 0
}

body.is-animation .l-hero__inner::before,body.is-animation .l-hero__inner::after {
    width: 100% !important;
    transition-duration: 400ms
}

body.u-bg-white .l-hero__inner::before {
    background: #fff
}

.l-hero__content {
    max-width: 1080px;
    width: 90%;
    position: absolute;
    bottom: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    z-index: 1
}

.l-hero__content p,.l-hero__content h1 {
    line-height: 1
}

@media screen and (max-width: 1023px) {
    .l-hero__content .c-product-card__ttl span span {
        margin-right:1em
    }
}

.l-hero__content__inner {
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.045)
}

@media screen and (min-width: 1024px) {
    .l-hero__content__inner {
        padding:10px;
        max-width: 150px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-hero__content__inner {
        padding:8px;
        max-width: 120px
    }
}

@media screen and (max-width: 560px) {
    .l-hero__content__inner {
        padding:8px;
        max-width: 100px
    }
}

@media screen and (min-width: 1024px) {
    .l-hero__content--large .l-hero__content__inner {
        padding:25px 36px 20px 39px
    }
}

.l-hero__main-en {
    text-transform: uppercase;
    letter-spacing: .06em
}

@media screen and (min-width: 1024px) {
    .l-hero__main-en {
        font-size:4.0rem;
        margin-bottom: 6px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-hero__main-en {
        font-size:3.2rem;
        margin-bottom: 4px
    }
}

@media screen and (max-width: 560px) {
    .l-hero__main-en {
        font-size:2.8rem;
        margin-bottom: 2px
    }
}

.l-hero__sub-ja {
    border: 1px solid #000;
    width: 100%;
    padding: .6em 0;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column
}

@media screen and (min-width: 1024px) {
    .l-hero__sub-ja {
        font-size:2.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-hero__sub-ja {
        font-size:2.2rem
    }
}

@media screen and (max-width: 560px) {
    .l-hero__sub-ja {
        font-size:1.6rem
    }
}

.l-hero__sub-ja span {
    letter-spacing: .1em;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal;
    display: flex;
    align-items: center;
    justify-content: center
}

.l-hero__main-ja {
    font-weight: bold;
    letter-spacing: .11em
}

@media screen and (min-width: 1024px) {
    .l-hero__main-ja {
        font-size:3.0rem;
        margin-bottom: 12px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-hero__main-ja {
        font-size:2.8rem;
        margin-bottom: 12px
    }
}

@media screen and (max-width: 560px) {
    .l-hero__main-ja {
        font-size:2.0rem;
        margin-bottom: 10px
    }
}

.l-hero__main-ja span {
    color: #646464
}

@media screen and (min-width: 1024px) {
    .l-hero__main-ja span {
        font-size:1.8rem;
        margin-left: 13px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-hero__main-ja span {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .l-hero__main-ja span {
        font-size:1.0rem
    }
}

.l-hero__sub-en {
    text-transform: uppercase;
    font-weight: bold;
    letter-spacing: .14em;
    color: #646464
}

@media screen and (min-width: 1024px) {
    .l-hero__sub-en {
        font-size:1.3rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-hero__sub-en {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .l-hero__sub-en {
        font-size:1.0rem
    }
}

.l-hero__content__line {
    width: 100%;
    display: flex
}

@media screen and (min-width: 1024px) {
    .l-hero__content__line {
        height:8px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-hero__content__line {
        height:6px
    }
}

@media screen and (max-width: 560px) {
    .l-hero__content__line {
        height:4px
    }
}

.l-hero__content__line>* {
    flex-basis: 100%
}

.t-hero__subject-icon {
    background-image: url("/assets/img/common/cross.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%
}

@media screen and (min-width: 769px) {
    .t-hero__subject-icon {
        right:0;
        -webkit-transform: translate(50%, -50%);
        transform: translate(50%, -50%)
    }
}

@media screen and (min-width: 1024px) {
    .t-hero__subject-icon {
        width:54px;
        height: 54px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-hero__subject-icon {
        width:32.4px;
        height: 32.4px
    }
}

@media screen and (max-width: 768px) {
    .t-hero__subject-icon {
        right:5%;
        -webkit-transform: translate(0, -50%);
        transform: translate(0, -50%)
    }
}

@media screen and (max-width: 560px) {
    .t-hero__subject-icon {
        width:21.6px;
        height: 21.6px
    }
}

.l-hero__bg {
    position: relative;
    z-index: 0;
    width: 100%;
    height: 100%;
    background-color: #fff
}

.l-hero__parallax div {
    position: absolute;
    left: 0;
    bottom: 0;
    z-index: 0;
    width: 100%;
    height: 100%
}

.l-hero__parallax>div {
    height: calc( 100% + 110px)
}

@media screen and (max-width: 1023px) {
    .l-hero__parallax>div {
        margin-bottom:-60px
    }
}

.l-hero-label {
    -webkit-transform: rotate(-6deg);
    transform: rotate(-6deg);
    position: absolute;
    right: 2.66667%;
    bottom: 8px
}

@media screen and (min-width: 1024px) {
    .l-hero-label {
        font-size:9.3rem
    }
}

@media screen and (max-width: 1023px) {
    .l-hero-label {
        font-size:calc( 1.0rem + 6vw)
    }
}

.l-hero__circle {
    position: absolute;
    z-index: 1;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    line-height: 1;
    letter-spacing: 0
}

@media screen and (min-width: 1024px) {
    .l-hero__circle {
        width:212px;
        height: 212px;
        right: 40px;
        bottom: 35px;
        padding-bottom: 26px
    }
}

@media screen and (min-width: 1280px) {
    .l-hero__circle {
        right:100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-hero__circle {
        width:140px;
        height: 140px;
        right: 5%;
        bottom: 20px;
        padding-bottom: 15px
    }
}

@media screen and (max-width: 560px) {
    .l-hero__circle {
        width:110px;
        height: 110px;
        right: 5%;
        bottom: 10px;
        padding-bottom: 10px
    }
}

.l-hero__circle::before {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .l-hero__circle::before {
        width:45px;
        height: 22px;
        margin-bottom: 24px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-hero__circle::before {
        width:27px;
        height: 13.2px;
        margin-bottom: 14.4px
    }
}

@media screen and (max-width: 560px) {
    .l-hero__circle::before {
        width:22.5px;
        height: 11px;
        margin-bottom: 12px
    }
}

.l-hero__circle>span {
    display: block
}

.l-hero__circle--white::before {
    background-image: url("/assets/img/common/icon/hero_circle-white.svg")
}

.l-hero__circle--black::before {
    background-image: url("/assets/img/common/icon/hero_circle-black.svg")
}

.l-hero--column .l-hero__bg img {
    width: 50%
}

.l-hero--column .l-hero__bg img:nth-of-type(1) {
    right: 50%;
    left: auto
}

.l-hero--column .l-hero__bg img:nth-of-type(2) {
    left: 50%
}

.l-hero--basic .l-hero__bg div div {
    background: linear-gradient(135deg, #1aa7c7 0%, #05aadc 25%, #f26484 75%, #e64669 100%);
    opacity: .4;
    position: relative
}

.l-hero--basic .l-hero__bg div div::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-image: url("/assets/img/common/bg_pattern.png");
    background-size: 100px 100px;
    background-repeat: repeat;
    background-position: center;
    opacity: .2
}

@media screen and (min-width: 1024px) {
    .l-hero--small .l-hero__bg {
        height:250px
    }
}

@media screen and (min-width: 1500px) {
    .l-hero--small .l-hero__bg {
        height:320px
    }
}

@media screen and (min-width: 1921px) {
    .l-hero--small .l-hero__bg {
        height:350px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-hero--small .l-hero__bg {
        height:230px
    }
}

@media screen and (max-width: 560px) {
    .l-hero--small .l-hero__bg {
        height:160px
    }
}

@media screen and (min-width: 1024px) {
    .l-hero--large .l-hero__bg {
        height:300px
    }
}

@media screen and (min-width: 1500px) {
    .l-hero--large .l-hero__bg {
        height:400px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-hero--large .l-hero__bg {
        height:400px
    }
}

@media screen and (max-width: 560px) {
    .l-hero--large .l-hero__bg {
        height:180px
    }
}

.l-hero--hasei .l-hero__bg {
    background-position: top center;
    background-repeat: repeat-x
}

@media screen and (min-width: 1024px) {
    .l-hero--hasei .l-hero__bg {
        background-image:url("/assets/img/common/bg_hasei_hero.png");
        height: 220px;
        background-size: contain
    }
}

@media screen and (max-width: 1023px) {
    .l-hero--hasei .l-hero__bg {
        background-image:url("/assets/img/common/bg_hasei_hero_sp.png");
        background-size: contain
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-hero--hasei .l-hero__bg {
        height:180px
    }
}

@media screen and (max-width: 560px) {
    .l-hero--hasei .l-hero__bg {
        height:109px
    }
}

.l-hero--hasei .l-hero__bg.--gray {
    background-color: transparent
}

.l-loading {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 100001;
    width: 100%;
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: none;
    background-color: #f5f5f5
}

@media screen and (min-width: 1024px) {
    .l-loading div {
        width:40px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-loading div {
        width:35px
    }
}

@media screen and (max-width: 560px) {
    .l-loading div {
        width:30px
    }
}

body.is-load .l-loading {
    transition: 200ms ease;
    transition-property: opacity,visibility;
    opacity: 0;
    visibility: hidden
}

body.is-animation .l-loading {
    opacity: 1;
    visibility: visible
}

.l-sitemap {
    position: fixed;
    bottom: 0;
    right: 0;
    z-index: 100001;
    max-width: 500px;
    width: 100%;
    height: 100%;
    background-color: rgba(255,255,255,0.95);
    overflow: auto;
    opacity: 0;
    visibility: hidden;
    transition: 400ms cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-property: opacity,visibility
}

@media screen and (min-width: 1024px) {
    .l-sitemap {
        display:none
    }
}

@media screen and (max-width: 1023px) {
    .l-sitemap {
        padding-right:5%;
        padding-left: 5%
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-sitemap {
        padding-top:120px;
        padding-bottom: 110px
    }
}

@media screen and (max-width: 560px) {
    .l-sitemap {
        padding-top:100px;
        padding-bottom: 80px
    }
}

.l-sitemap>ul:first-of-type {
    margin-bottom: 48px
}

.l-sitemap>ul:nth-of-type(2) {
    margin-bottom: 20px
}

.l-sitemap>ul>li {
    opacity: 0;
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
    transition: 400ms cubic-bezier(0.25, 0.46, 0.45, 0.94);
    transition-property: opacity,-webkit-transform;
    transition-property: opacity,transform;
    transition-property: opacity,transform,-webkit-transform
}

.l-sitemap a {
    display: block;
    letter-spacing: .14em
}

@media screen and (min-width: 561px) {
    .l-sitemap a {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .l-sitemap a {
        font-size:1.4rem
    }
}

.l-sitemap.is-open {
    opacity: 1;
    visibility: visible
}

.l-sitemap.is-open>ul>li {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.l-sitemap.is-open>ul>li:nth-of-type(1) {
    transition-delay: 80ms
}

.l-sitemap.is-open>ul>li:nth-of-type(2) {
    transition-delay: 120ms
}

.l-sitemap.is-open>ul>li:nth-of-type(3) {
    transition-delay: 160ms
}

.l-sitemap.is-open>ul>li:nth-of-type(4) {
    transition-delay: 200ms
}

.l-sitemap.is-open>ul>li:nth-of-type(5) {
    transition-delay: 240ms
}

.l-sitemap.is-open>ul>li:nth-of-type(6) {
    transition-delay: 280ms
}

.l-sitemap.is-open>ul>li:nth-of-type(7) {
    transition-delay: 320ms
}

.l-sitemap.is-open>ul>li:nth-of-type(8) {
    transition-delay: 360ms
}

.l-sitemap.is-open>ul>li:nth-of-type(9) {
    transition-delay: 400ms
}

.l-sitemap.is-open>ul>li:nth-of-type(10) {
    transition-delay: 440ms
}

.l-sitemap__main>li {
    position: relative
}

.l-sitemap__main>li.l-header__nav__normal {
    margin-bottom: 2em
}

.l-sitemap__main>li.l-header__nav__black {
    margin: 0 auto 1em
}

@media screen and (min-width: 1024px) {
    .l-sitemap__main>li.l-header__nav__black {
        width:200px
    }
}

@media screen and (max-width: 1023px) {
    .l-sitemap__main>li.l-header__nav__black {
        width:240px
    }
}

.l-sitemap__main a {
    text-align: center
}

.l-sitemap__main a.is-hover:hover {
    padding-left: 15px
}

.l-sitemap__parent {
    color: #333;
    padding: 14px 10px
}

.l-sitemap__children li:last-of-type {
    padding-bottom: 10px
}

.l-sitemap__children a {
    display: flex;
    align-items: center;
    padding: 5px 20px
}

.l-sitemap__children a.is-hover:hover {
    padding-left: 25px
}

.l-sitemap__children a::before {
    content: 'ãƒ¼';
    display: block;
    font-weight: normal;
    margin-right: .5em
}

.l-sitemap__main__small {
    margin-top: 5px;
    padding-left: 10px
}

.l-sitemap__main__small li {
    line-height: 1.5;
    color: #333
}

@media screen and (min-width: 1024px) {
    .l-sitemap__main__small li {
        font-size:1.2rem
    }
}

@media screen and (max-width: 1023px) {
    .l-sitemap__main__small li {
        font-size:1.0rem
    }
}

.l-sitemap__btn li:not(:last-of-type) {
    margin-bottom: 24px
}

.l-sitemap__btn a {
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    border: 1px solid #000;
    color: #000;
    font-weight: 400;
    padding: 14px 0;
    font-size: 1.6rem;
    letter-spacing: .1em;
    position: relative;
    overflow: hidden;
    z-index: 1
}

.l-sitemap__btn a::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-color: rgba(51,51,51,0.1);
    opacity: 0;
    transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    pointer-events: none
}

.l-sitemap__btn a.is-hover:hover {
    opacity: 1
}

.l-sitemap__btn a.is-hover:hover::after {
    opacity: 1
}

.l-sitemap__tel {
    text-align: center
}

.l-sitemap__tel a {
    text-transform: uppercase
}

.l-sitemap__tel span {
    display: inline-block;
    margin-top: 1em;
    font-size: 1.2rem
}

.l-sitemap__small {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    justify-content: center
}

.l-sitemap__small li:not(:last-of-type) {
    display: flex;
    align-items: center
}

.l-sitemap__small li:not(:last-of-type)::after {
    content: 'ãƒ»';
    display: inline-block;
    margin: 0 5px;
    color: #787878
}

.l-sitemap__small a {
    color: #787878;
    font-size: 1.0rem;
    line-height: 1;
    transition-property: background-size;
    background-image: linear-gradient(180deg, #787878, #787878);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 100% 100%
}

.l-sitemap__small a.is-hover:hover {
    opacity: 1;
    background-size: 100% 1px;
    background-position: 0% 100%
}

.l-sitemap-btn a {
    background-color: #000
}

.l-sitemap-btn.is-open .l-sitemap-btn__icon span:nth-of-type(2) {
    opacity: 0
}

@media screen and (min-width: 561px) {
    .l-sitemap-btn.is-open .l-sitemap-btn__icon span:nth-of-type(1) {
        -webkit-transform:translate3d(0, 10px, 0) rotate(330deg);
        transform: translate3d(0, 10px, 0) rotate(330deg)
    }

    .l-sitemap-btn.is-open .l-sitemap-btn__icon span:nth-of-type(3) {
        -webkit-transform: translate3d(0, -10px, 0) rotate(-330deg);
        transform: translate3d(0, -10px, 0) rotate(-330deg)
    }
}

@media screen and (max-width: 560px) {
    .l-sitemap-btn.is-open .l-sitemap-btn__icon span:nth-of-type(1) {
        -webkit-transform:translate3d(0, 10px, 0) rotate(330deg);
        transform: translate3d(0, 10px, 0) rotate(330deg)
    }

    .l-sitemap-btn.is-open .l-sitemap-btn__icon span:nth-of-type(3) {
        -webkit-transform: translate3d(0, -10px, 0) rotate(-330deg);
        transform: translate3d(0, -10px, 0) rotate(-330deg)
    }
}

.l-sitemap-btn.is-open .l-sitemap-btn__menu span {
    opacity: 0;
    -webkit-transform: translate3d(2px, 0, 0);
    transform: translate3d(2px, 0, 0)
}

.l-sitemap-btn.is-open .l-sitemap-btn__close span {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

@media screen and (min-width: 1024px) {
    .l-sitemap-btn__icon {
        margin-bottom:6px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .l-sitemap-btn__icon {
        margin-bottom:3px
    }
}

@media screen and (max-width: 560px) {
    .l-sitemap-btn__icon {
        margin-bottom:4px
    }
}

.l-sitemap-btn__icon span {
    display: block;
    height: 2px;
    background-color: #fff;
    transition: 200ms cubic-bezier(0.25, 0.46, 0.45, 0.94)
}

@media screen and (min-width: 561px) {
    .l-sitemap-btn__icon span {
        width:30px;
        margin: 8px 0
    }
}

@media screen and (max-width: 560px) {
    .l-sitemap-btn__icon span {
        width:30px;
        margin: 8px 0
    }
}

.l-sitemap-btn__text {
    position: relative;
    z-index: 1;
    width: 100%;
    text-transform: uppercase;
    letter-spacing: .12em;
    text-align: center;
    height: 1em
}

.l-sitemap-btn__menu,.l-sitemap-btn__close {
    display: block;
    width: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.l-sitemap-btn__menu span,.l-sitemap-btn__close span {
    display: inline-block;
    transition: 200ms cubic-bezier(0.86, 0, 0.07, 1);
    transition-property: opacity,-webkit-transform;
    transition-property: opacity,transform;
    transition-property: opacity,transform,-webkit-transform
}

.l-sitemap-btn__close span {
    opacity: 0;
    -webkit-transform: translate3d(2px, 0, 0);
    transform: translate3d(2px, 0, 0)
}

.c-anchor-line {
    text-decoration: underline
}

.c-anchor-line.is-hover:hover {
    text-decoration: none
}

.c-bg-kumo {
    background-color: #f5f5f5;
    width: 100%;
    height: 100%;
    position: fixed;
    top: 0;
    left: 0;
    z-index: -1
}

.c-bg-kumo span {
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute
}

.c-bg-kumo span:nth-child(1) {
    background-image: url("/assets/img/common/icon/icon_kumo_01.svg");
    top: 20%;
    -webkit-animation: 10000ms linear updown infinite;
    animation: 10000ms linear updown infinite
}

@media screen and (min-width: 1024px) {
    .c-bg-kumo span:nth-child(1) {
        width:600px;
        height: 173px;
        right: calc( -600px / 3.4)
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-bg-kumo span:nth-child(1) {
        width:480px;
        height: 138.4px;
        right: calc( -600px * .8 / 3.4)
    }
}

@media screen and (max-width: 560px) {
    .c-bg-kumo span:nth-child(1) {
        width:360px;
        height: 103.8px;
        right: calc( -600px * .6 / 3.4)
    }
}

.c-bg-kumo span:nth-child(2) {
    background-image: url("/assets/img/common/icon/icon_kumo_02.svg");
    top: 50%;
    -webkit-animation: 11000ms linear updown infinite;
    animation: 11000ms linear updown infinite
}

@media screen and (min-width: 1024px) {
    .c-bg-kumo span:nth-child(2) {
        width:598px;
        height: 222px;
        left: calc( -598px / 2.6)
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-bg-kumo span:nth-child(2) {
        width:478.4px;
        height: 177.6px;
        left: calc( -598px * .8 / 2.6)
    }
}

@media screen and (max-width: 560px) {
    .c-bg-kumo span:nth-child(2) {
        width:358.8px;
        height: 133.2px;
        left: calc( -598px * .6 / 2.6)
    }
}

.c-bg-kumo span:nth-child(3) {
    background-image: url("/assets/img/common/icon/icon_kumo_03.svg");
    top: 60%;
    -webkit-animation: 8000ms linear updown infinite;
    animation: 8000ms linear updown infinite
}

@media screen and (min-width: 1024px) {
    .c-bg-kumo span:nth-child(3) {
        width:587px;
        height: 197px;
        right: calc( -587px / 2.5)
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-bg-kumo span:nth-child(3) {
        width:469.6px;
        height: 157.6px;
        right: calc( -587px * .8 / 2.5)
    }
}

@media screen and (max-width: 560px) {
    .c-bg-kumo span:nth-child(3) {
        width:352.2px;
        height: 118.2px;
        right: calc( -587px * .6 / 2.5)
    }
}

.c-btn {
    max-width: 300px;
    width: 100%;
    margin: 0 auto;
    line-height: 1
}

.c-btn a,.c-btn .c-btn-more__inner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    line-height: 1;
    color: #fff;
    font-weight: bold;
    overflow: hidden;
    position: relative;
    overflow: hidden;
    z-index: 1
}

.c-btn a::after,.c-btn .c-btn-more__inner::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-color: rgba(51,51,51,0.1);
    opacity: 0;
    transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    pointer-events: none
}

.c-btn a.is-hover:hover,.c-btn .c-btn-more__inner.is-hover:hover {
    opacity: 1
}

.c-btn a.is-hover:hover::after,.c-btn .c-btn-more__inner.is-hover:hover::after {
    opacity: 1
}

@media screen and (min-width: 1024px) {
    .c-btn a,.c-btn .c-btn-more__inner {
        font-size:1.6rem;
        padding: 22px 0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-btn a,.c-btn .c-btn-more__inner {
        font-size:1.4rem;
        padding: 20px 0
    }
}

@media screen and (max-width: 560px) {
    .c-btn a,.c-btn .c-btn-more__inner {
        font-size:1.3rem;
        padding: 18px 0
    }
}

@media screen and (max-width: 320px) {
    .c-btn a,.c-btn .c-btn-more__inner {
        font-size:1.2rem;
        padding: 16px 0
    }
}

.c-btn-more a.is-hover:hover .c-icon,.c-btn-more .c-btn-more__inner.is-hover:hover .c-icon {
    width: 30px
}

.c-btn-more .c-icon--left+.c-btn-more__text {
    margin-left: 15px;
    margin-right: 0
}

.c-btn-more__text {
    position: relative;
    z-index: 1;
    margin-right: 15px
}

.c-btn-more--gradation a,.c-btn-more--gradation .c-btn-more__inner {
    background: linear-gradient(135deg, #1aa7c7 0%, #05aadc 25%, #f26484 75%, #e64669 100%);
    position: relative
}

.c-btn-more--gradation a::before,.c-btn-more--gradation .c-btn-more__inner::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-image: url("/assets/img/common/bg_pattern.png");
    background-size: 100px 100px;
    background-repeat: repeat;
    background-position: center;
    opacity: .2;
    transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

.c-btn-more--gradation a.is-hover:hover::before,.c-btn-more--gradation .c-btn-more__inner.is-hover:hover::before {
    opacity: .1
}

.c-btn-more--gradation a::after,.c-btn-more--gradation .c-btn-more__inner::after {
    display: none
}

.c-btn-more--gray a,.c-btn-more--gray .c-btn-more__inner {
    background-color: #999;
    transition: background-color 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

.c-btn-more--gray a.is-hover:hover,.c-btn-more--gray .c-btn-more__inner.is-hover:hover {
    background-color: #b4b4b4
}

.c-btn-more--black-yellow a,.c-btn-more--black-yellow .c-btn-more__inner {
    background-color: #000;
    transition: background-color 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    color: #fff
}

.c-btn-more--black-yellow a.is-hover:hover,.c-btn-more--black-yellow .c-btn-more__inner.is-hover:hover {
    background-color: #ebc31e;
    color: #000
}

.c-btn-more--none-yellow a,.c-btn-more--none-yellow .c-btn-more__inner {
    border: 1px solid #fff;
    background-color: transparent;
    transition: background-color 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    color: #fff
}

.c-btn-more--none-yellow a.is-hover:hover,.c-btn-more--none-yellow .c-btn-more__inner.is-hover:hover {
    border: 1px solid #ebc31e;
    background-color: #ebc31e;
    color: #000;
    background-image: none
}

.c-btn-download span {
    display: flex;
    align-items: center;
    position: relative;
    z-index: 1
}

.c-btn-download span::after {
    content: '';
    display: block;
    background-image: url("/assets/img/common/icon/download-white.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .c-btn-download span::after {
        width:20px;
        height: 17px;
        margin-left: 16px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-btn-download span::after {
        width:16px;
        height: 13.6px;
        margin-left: 12.8px
    }
}

@media screen and (max-width: 560px) {
    .c-btn-download span::after {
        width:12px;
        height: 10.2px;
        margin-left: 9.6px
    }
}

.c-btm-large {
    line-height: 1
}

.c-btm-large a {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%;
    box-shadow: 5px 5px 0 #eee;
    color: #fff;
    font-weight: bold;
    text-shadow: 0px 0px 10px rgba(0,0,0,0.2)
}

.c-btm-large a span {
    transition: background-size 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    background-image: linear-gradient(180deg, #fff, #fff);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 100% 100%
}

.c-btm-large a.is-hover:hover span {
    opacity: 1;
    background-size: 100% 1px;
    background-position: 0% 100%
}

@media screen and (min-width: 1024px) {
    .c-btm-large a {
        font-size:2.0rem;
        letter-spacing: .25em;
        padding: 25px 0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-btm-large a {
        letter-spacing:.18em;
        padding: 22px 0
    }
}

@media screen and (max-width: 560px) {
    .c-btm-large a {
        letter-spacing:.1em;
        padding: 20px 0
    }
}

.c-btm-large a::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-size: 200% 100%;
    background-position: 0% 50%;
    transition: background-position 500ms ease
}

.c-btm-large a::after {
    content: '';
    position: relative;
    z-index: 1;
    display: block;
    background-image: url("/assets/img/common/icon/yazirushi-bold-white.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    transition: width 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media screen and (min-width: 1024px) {
    .c-btm-large a::after {
        width:92px;
        height: 44px;
        margin-bottom: 8px;
        margin-left: 10px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-btm-large a::after {
        width:73.6px;
        height: 35.2px;
        margin-bottom: 6.4px;
        margin-left: 8px
    }
}

.c-btm-large a.is-hover:hover {
    opacity: 1
}

.c-btm-large a.is-hover:hover::before {
    background-position: 100% 50%
}

.c-btm-large span {
    padding-bottom: 2px
}

.c-btm-large--blue a::before {
    background-image: linear-gradient(90deg, #54bdc3, #1aa7c7, #009ab7, #009ab7)
}

.c-btm-large--pink a::before {
    background-image: linear-gradient(90deg, #ff9d95, #fc7871, #fc7871, #f5d7e1)
}

.c-category {
    line-height: 1;
    letter-spacing: 0;
    color: #fff;
    font-weight: 400;
    text-align: center
}

@media screen and (min-width: 769px) {
    .c-category {
        font-size:1.2rem;
        padding: .2em .6em
    }
}

@media screen and (max-width: 768px) {
    .c-category {
        font-size:1.0rem;
        padding: 4px 8px
    }
}

.c-category--news {
    background-color: #000
}

.c-category--kumamoto {
    background-color: #000
}

.c-category--sweets {
    background-color: #000
}

.c-category--interview {
    background-color: #000
}

.c-category--event {
    background-color: #000
}

.c-category--kiyomasaseika {
    background-color: #000
}

.c-column {
    display: flex;
    flex-wrap: wrap
}

@media screen and (min-width: 561px) {
    .c-column-w360m40>* {
        width:47.36842%
    }

    .c-column-w360m40>*:nth-of-type(2n-1) {
        margin-right: 5.26316%
    }

    .c-column-w360m40>*:nth-of-type(n+3) {
        margin-top: 40px
    }
}

@media screen and (max-width: 560px) {
    .c-column-w360m40>* {
        width:100%
    }

    .c-column-w360m40>*:not(:last-of-type) {
        margin-bottom: 20px
    }
}

@media screen and (min-width: 1024px) {
    .c-column-w450m60>* {
        width:46.875%
    }

    .c-column-w450m60>*:nth-of-type(2n-1) {
        margin-right: 6.25%
    }

    .c-column-w450m60>*:nth-last-of-type(n+3) {
        margin-bottom: 90px
    }
}

@media screen and (max-width: 1023px) {
    .c-column-w450m60>* {
        width:100%
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-column-w450m60>*:not(:last-of-type) {
        margin-bottom:50px
    }
}

@media screen and (max-width: 560px) {
    .c-column-w450m60>*:not(:last-of-type) {
        margin-bottom:35px
    }
}

@media screen and (min-width: 1024px) {
    .c-column-w250m30>* {
        width:23.14815%
    }

    .c-column-w250m30>*:not(:nth-of-type(4n)) {
        margin-right: 2.46914%
    }
}

@media screen and (max-width: 1023px) {
    .c-column-w250m30>* {
        width:48%
    }

    .c-column-w250m30>*:not(:nth-of-type(2n)) {
        margin-right: 4%
    }

    .c-column-w250m30>*:nth-of-type(n+3) {
        margin-top: 4%
    }
}

.c-content {
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.045)
}

@media screen and (min-width: 1024px) {
    .c-content {
        padding:60px 60px 80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-content {
        padding:50px 40px 60px
    }
}

@media screen and (max-width: 560px) {
    .c-content {
        padding:35px 20px 40px
    }
}

@media screen and (max-width: 320px) {
    .c-content {
        padding:30px 10px 35px
    }
}

@media screen and (min-width: 1024px) {
    .c-content--small {
        padding-bottom:60px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-content--small {
        padding-bottom:50px
    }
}

@media screen and (max-width: 560px) {
    .c-content--small {
        padding-bottom:35px
    }
}

@media screen and (max-width: 320px) {
    .c-content--small {
        padding-bottom:30px
    }
}

.c-download {
    position: relative
}

@media screen and (min-width: 1024px) {
    .c-download,.c-download::after {
        border:solid 9px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-download,.c-download::after {
        border:solid 6px
    }
}

@media screen and (max-width: 560px) {
    .c-download,.c-download::after {
        border:solid 4px
    }
}

.c-download::before {
    content: '';
    display: block;
    background-color: #fff;
    background-size: auto 100%;
    background-position: center;
    background-repeat: no-repeat;
    transition: -webkit-transform 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: transform 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: transform 400ms cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    position: relative;
    z-index: 2
}

@media screen and (min-width: 561px) {
    .c-download::before {
        width:140px;
        height: 75px
    }
}

@media screen and (max-width: 560px) {
    .c-download::before {
        width:84px;
        height: 45px
    }
}

.c-download::after {
    content: '';
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 1;
    pointer-events: none;
    opacity: 1;
    transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0
}

@media screen and (min-width: 1024px) {
    .c-download::after {
        top:-9px;
        left: -9px;
        width: calc( 100% + 18px);
        height: calc( 100% + 18px)
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-download::after {
        width:calc( 100% + 6px);
        height: calc( 100% + 6px)
    }
}

@media screen and (max-width: 560px) {
    .c-download::after {
        width:calc( 100% + 4px);
        height: calc( 100% + 4px)
    }
}

.c-download.is-hover:hover::before {
    -webkit-transform: translate3d(0, -6px, 0);
    transform: translate3d(0, -6px, 0)
}

.c-download.is-hover:hover::after {
    opacity: .2
}

.c-download--graduate {
    border-color: #fcecde
}

.c-download--graduate::after {
    border-color: #f18826
}

.c-download--graduate::before {
    background-image: url("../img/download/graduate_icon.svg")
}

.c-download--graduate .c-download__font {
    color: #f18826
}

.c-download--recruit {
    border-color: #e7efdf
}

.c-download--recruit::after {
    border-color: #64aa32
}

.c-download--recruit::before {
    background-image: url("../img/download/recruit_icon.svg")
}

.c-download--recruit .c-download__font {
    color: #64aa32
}

.c-download--information {
    border-color: #f6ecf6
}

.c-download--information::after {
    border-color: #b067b3
}

.c-download--information::before {
    background-image: url("../img/download/information_icon.svg")
}

.c-download--information .c-download__font {
    color: #b067b3
}

.c-download--dt-solution {
    border-color: #eaf7f7
}

.c-download--dt-solution::after {
    border-color: #05aadc
}

.c-download--dt-solution::before {
    background-image: url("../img/download/dt-solution_icon.svg")
}

.c-download--dt-solution .c-download__font {
    color: #009ab7
}

.c-flex {
    display: flex;
    justify-content: space-between
}

.c-flex-center {
    display: flex;
    align-items: center;
    justify-content: space-between
}

@media screen and (min-width: 1024px) {
    .c-flex-mqUp-lg {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 769px) {
    .c-flex-mqUp-md {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 561px) {
    .c-flex-mqUp-sm {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .c-flex-mqUp-lg .c-flex__260 {
        width:24.07407%
    }
}

@media screen and (min-width: 1024px) {
    .c-flex-mqUp-lg .c-flex__760 {
        width:70.37037%
    }
}

.c-flex__1 {
    width: calc( 100% - 50px)
}

.c-flex__30 {
    width: 30px
}

@media screen and (min-width: 1024px) {
    .c-flex__30 {
        margin-right:50px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-flex__30 {
        margin-right:40px
    }
}

@media screen and (max-width: 560px) {
    .c-flex__30 {
        margin-right:20px
    }
}

.c-flex-2-column>* {
    width: 46.2963%
}

@media screen and (min-width: 769px) {
    .c-flex-mqUp-md.c-flex-2-column>* {
        width:48%
    }
}

@media screen and (max-width: 768px) {
    .c-flex-mqUp-md.c-flex-2-column>* {
        width:100%
    }

    .c-flex-mqUp-md.c-flex-2-column>*:not(:last-of-type) {
        margin-bottom: 5px
    }
}

.c-flex-3-column>* {
    width: 30.55556%
}

@media screen and (max-width: 560px) {
    .c-flex-mqUp-sm.c-flex-3-column>* {
        width:100%
    }

    .c-flex-mqUp-sm.c-flex-3-column>*:not(:last-of-type) {
        margin-bottom: 5px
    }
}

.c-gradation {
    width: 100%;
    height: 10px;
    background: linear-gradient(90deg, #1aa7c7 0%, #1aa7c7 25%, #fff 50%, #fc7871 75%, #fc7871 100%)
}

.c-icon {
    position: relative;
    height: 1px;
    transition: width 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media screen and (min-width: 1024px) {
    .c-icon {
        width:50px
    }
}

@media screen and (max-width: 1023px) {
    .c-icon {
        width:30px
    }
}

@media screen and (max-width: 414px) {
    .c-icon {
        width:25px
    }
}

@media screen and (max-width: 320px) {
    .c-icon {
        width:20px
    }
}

.c-icon::after {
    content: '';
    display: block;
    width: 5px;
    height: 5px;
    border-radius: 50%;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.c-icon--right::after {
    right: -10px
}

.c-icon--left::after {
    left: -10px
}

.c-icon--white {
    background-color: #fff
}

.c-icon--white::after {
    background-color: #fff
}

.c-icon--black-2 {
    background-color: #333
}

.c-icon--black-2::after {
    background-color: #333
}

.c-icon--blue-2 {
    background-color: #1aa7c7
}

.c-icon--blue-2::after {
    background-color: #1aa7c7
}

.c-icon-back {
    width: 22px;
    height: 11px;
    background-image: url("/assets/img/common/icon/back-black.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .c-icon-back {
        margin-right:16px
    }
}

@media screen and (max-width: 1023px) {
    .c-icon-back {
        margin-right:10px
    }
}

.c-icon-arrow {
    width: 34px;
    height: 6px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (max-width: 1023px) {
    .c-icon-arrow {
        display:none
    }
}

.c-icon-arrow.c-icon-arrow--right {
    background-image: url("/assets/img/common/icon/icon_arrow_black_r.svg");
    margin-left: 5px
}

.c-icon-arrow.c-icon-arrow--left {
    background-image: url("/assets/img/common/icon/icon_arrow_black_l.svg");
    margin-right: 5px
}

.c-inner-small,.c-inner-medium,.c-inner-large {
    width: 90%;
    margin: 0 auto
}

.c-inner-small {
    max-width: 950px
}

.c-inner-medium {
    max-width: 1000px
}

.c-inner-large {
    max-width: 1200px
}

.c-link-anchor-list {
    display: flex;
    justify-content: center
}

@media screen and (min-width: 1024px) {
    .c-link-anchor-list li:first-child {
        margin-right:12em
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-link-anchor-list li:first-child {
        margin-right:6em
    }
}

@media screen and (max-width: 560px) {
    .c-link-anchor-list li:first-child {
        margin-right:4em
    }
}

.c-link-anchor-list li a {
    display: flex;
    align-items: center;
    line-height: 1;
    position: relative
}

@media screen and (min-width: 1024px) {
    .c-link-anchor-list li a {
        font-size:2.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-link-anchor-list li a {
        font-size:2.2rem
    }
}

@media screen and (max-width: 560px) {
    .c-link-anchor-list li a {
        font-size:1.8rem
    }
}

.c-link-anchor-list li a::before {
    content: '';
    display: block;
    background-image: url(/assets/img/common/icon/icon_ttl.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .c-link-anchor-list li a::before {
        width:20px;
        height: 20px;
        margin-right: 10px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-link-anchor-list li a::before {
        width:16px;
        height: 16px;
        margin-right: 8px
    }
}

@media screen and (max-width: 560px) {
    .c-link-anchor-list li a::before {
        width:12px;
        height: 12px;
        margin-right: 6px
    }
}

.c-link-anchor-list li a::after {
    content: '';
    display: block;
    background-image: url(/assets/img/common/icon/icon_arrow_bottom.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 120%;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0
}

@media screen and (min-width: 1024px) {
    .c-link-anchor-list li a::after {
        width:6px;
        height: 53px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-link-anchor-list li a::after {
        width:4.8px;
        height: 42.4px
    }
}

@media screen and (max-width: 560px) {
    .c-link-anchor-list li a::after {
        width:3.6px;
        height: 31.8px
    }
}

.c-link-anchor-list li a.is-hover:hover::after {
    top: 140%;
    opacity: 1
}

.c-list-disc li {
    display: flex;
    align-items: baseline
}

.c-list-disc li::before {
    content: '\30FB';
    margin-right: 2px
}

.c-list-disc-large li {
    display: flex;
    align-items: baseline
}

.c-list-disc-large li::before {
    content: '\25CF';
    margin-right: 4px
}

.c-map {
    position: relative
}

@media screen and (min-width: 1024px) {
    .c-map {
        height:500px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-map {
        height:440px
    }
}

@media screen and (max-width: 560px) {
    .c-map {
        height:260px
    }
}

.c-map iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.c-map-link {
    display: inline-block;
    text-transform: uppercase
}

.c-map-link::before {
    content: '';
    display: inline-block;
    vertical-align: middle;
    width: 10px;
    height: 14px;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-top: -4px;
    margin-right: 6px
}

@media screen and (min-width: 1024px) {
    .c-map-link--margin {
        margin-left:22px
    }
}

@media screen and (min-width: 1024px) {
    .c-map-link--black {
        transition-property:background-size;
        background-image: linear-gradient(180deg, #646464, #646464);
        background-repeat: no-repeat;
        background-size: 0 1px;
        background-position: 100% 100%
    }

    .c-map-link--black.is-hover:hover {
        opacity: 1;
        background-size: 100% 1px;
        background-position: 0% 100%
    }
}

.c-map-link--black::before {
    background-image: url("/assets/img/common/icon/map-black.svg")
}

@media screen and (min-width: 1024px) {
    .c-map-link--white {
        transition-property:background-size;
        background-image: linear-gradient(180deg, #fff, #fff);
        background-repeat: no-repeat;
        background-size: 0 1px;
        background-position: 100% 100%
    }

    .c-map-link--white.is-hover:hover {
        opacity: 1;
        background-size: 100% 1px;
        background-position: 0% 100%
    }
}

.c-map-link--white::before {
    background-image: url("/assets/img/common/icon/map-white.svg")
}

.c-marker-40 {
    background: linear-gradient(transparent 60%, #ebc31e 40%)
}

.c-marker-100 {
    background: #ebc31e
}

.c-new {
    display: inline-block;
    line-height: 1;
    letter-spacing: .08em;
    border-bottom: solid 2px #000;
    padding-bottom: 3px
}

@media screen and (min-width: 769px) {
    .c-new {
        font-size:1.6rem
    }
}

@media screen and (max-width: 768px) {
    .c-new {
        font-size:1.4rem
    }
}

.c-new-maru {
    display: flex;
    justify-content: center;
    align-items: center;
    background-color: #ebc31e;
    line-height: 1;
    letter-spacing: .08em;
    border-radius: 100%
}

@media screen and (min-width: 769px) {
    .c-new-maru {
        font-size:1.2rem;
        width: 50px;
        height: 50px
    }
}

@media screen and (max-width: 768px) {
    .c-new-maru {
        font-size:1.0rem;
        width: 30px;
        height: 30px
    }
}

.c-new-shikaku {
    background-color: #ebc31e;
    line-height: 1;
    letter-spacing: .08em;
    padding: .2em .6em;
    color: #000 !important;
    width: 50px;
    text-align: center
}

@media screen and (min-width: 769px) {
    .c-new-shikaku {
        font-size:1.2rem
    }
}

@media screen and (max-width: 768px) {
    .c-new-shikaku {
        font-size:1.0rem
    }
}

.c-object {
    position: absolute;
    z-index: 1
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-01 {
        width:228px
    }
}

@media screen and (max-width: 560px) {
    .c-object-01 {
        width:152px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-02 {
        width:95.2px
    }
}

@media screen and (max-width: 560px) {
    .c-object-02 {
        width:71.4px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-03 {
        width:107.2px
    }
}

@media screen and (max-width: 560px) {
    .c-object-03 {
        width:80.4px
    }
}

.c-object-04 {
    opacity: .5
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-04 {
        width:76px
    }
}

@media screen and (max-width: 560px) {
    .c-object-04 {
        width:57px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-05 {
        width:217.6px
    }
}

@media screen and (max-width: 560px) {
    .c-object-05 {
        width:163.2px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-07 {
        width:178.4px
    }
}

@media screen and (max-width: 560px) {
    .c-object-07 {
        width:133.8px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-08 {
        width:162.4px
    }
}

@media screen and (max-width: 560px) {
    .c-object-08 {
        width:121.8px
    }
}

.c-object-08-small {
    opacity: .7
}

@media screen and (min-width: 1024px) {
    .c-object-08-small {
        width:108px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-08-small {
        width:86.4px
    }
}

@media screen and (max-width: 560px) {
    .c-object-08-small {
        width:64.8px
    }
}

.c-object-09 {
    opacity: .7
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-09 {
        width:76px
    }
}

@media screen and (max-width: 560px) {
    .c-object-09 {
        width:57px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-10 {
        width:157.6px
    }
}

@media screen and (max-width: 560px) {
    .c-object-10 {
        width:118.2px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-10-small {
        width:136px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-10-small {
        width:108.8px
    }
}

@media screen and (max-width: 560px) {
    .c-object-10-small {
        width:81.6px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-11 {
        width:155.2px
    }
}

@media screen and (max-width: 560px) {
    .c-object-11 {
        width:116.4px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-12 {
        width:208
    }
}

@media screen and (max-width: 560px) {
    .c-object-12 {
        width:156
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-13 {
        width:200px
    }
}

@media screen and (max-width: 560px) {
    .c-object-13 {
        width:150px
    }
}

.c-object-13-small {
    opacity: .7
}

@media screen and (min-width: 1024px) {
    .c-object-13-small {
        width:123px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-13-small {
        width:98.4px
    }
}

@media screen and (max-width: 560px) {
    .c-object-13-small {
        width:73.8px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-14 {
        width:222px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-14 {
        width:177.6px
    }
}

@media screen and (max-width: 560px) {
    .c-object-14 {
        width:133.2px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-15 {
        width:140px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-15 {
        width:112px
    }
}

@media screen and (max-width: 560px) {
    .c-object-15 {
        width:84px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-16 {
        width:118px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-16 {
        width:94.4px
    }
}

@media screen and (max-width: 560px) {
    .c-object-16 {
        width:70.8px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-position-01 {
        top:-110px;
        left: -160px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-position-01 {
        top:-88px;
        left: -128px
    }
}

@media screen and (max-width: 560px) {
    .c-object-position-01 {
        top:-66px;
        left: -96px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-position-02 {
        bottom:100px;
        right: -105px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-position-02 {
        bottom:80px;
        right: -84px
    }
}

@media screen and (max-width: 560px) {
    .c-object-position-02 {
        bottom:60px;
        right: -63px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-position-03 {
        top:8px;
        left: -150px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-position-03 {
        top:6.4px;
        left: -120px
    }
}

@media screen and (max-width: 560px) {
    .c-object-position-03 {
        top:4.8px;
        left: -90px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-position-04 {
        bottom:135px;
        right: -146px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-position-04 {
        bottom:108px;
        right: -116.8px
    }
}

@media screen and (max-width: 560px) {
    .c-object-position-04 {
        bottom:81px;
        right: -87.6px
    }
}

.c-object-position-05 {
    top: 60%
}

@media screen and (min-width: 1024px) {
    .c-object-position-05 {
        left:-150px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-position-05 {
        left:-120px
    }
}

@media screen and (max-width: 560px) {
    .c-object-position-05 {
        left:-90px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-position-06 {
        top:-110px;
        right: -146px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-position-06 {
        top:-88px;
        right: -116.8px
    }
}

@media screen and (max-width: 560px) {
    .c-object-position-06 {
        top:-66px;
        right: -87.6px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-position-06 {
        top:-110px;
        right: -146px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-position-06 {
        top:-88px;
        right: -116.8px
    }
}

@media screen and (max-width: 560px) {
    .c-object-position-06 {
        top:-66px;
        right: -87.6px
    }
}

.c-object-position-07 {
    top: 20%
}

@media screen and (min-width: 1024px) {
    .c-object-position-07 {
        left:-150px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-position-07 {
        left:-120px
    }
}

@media screen and (max-width: 560px) {
    .c-object-position-07 {
        left:-90px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-position-08 {
        top:-110px;
        right: -146px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-position-08 {
        top:-88px;
        right: -116.8px
    }
}

@media screen and (max-width: 560px) {
    .c-object-position-08 {
        top:-66px;
        right: -87.6px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-position-09 {
        top:70%;
        left: -160px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-position-09 {
        top:56%;
        left: -128px
    }
}

@media screen and (max-width: 560px) {
    .c-object-position-09 {
        top:42%;
        left: -96px
    }
}

@media screen and (min-width: 1024px) {
    .c-object-position-10 {
        top:50%;
        right: -105px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-object-position-10 {
        top:40%;
        right: -84px
    }
}

@media screen and (max-width: 560px) {
    .c-object-position-10 {
        top:30%;
        right: -63px
    }
}

.c-opencampus {
    text-align: center;
    line-height: 1
}

.c-opencampus::before {
    content: '';
    display: block;
    background-image: url("/assets/img/common/opencampus_title.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .c-opencampus::before {
        width:232px;
        height: 90px;
        margin: 0 auto 22px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-opencampus::before {
        width:139.2px;
        height: 54px;
        margin: 0 auto 10px
    }
}

@media screen and (max-width: 560px) {
    .c-opencampus::before {
        width:116px;
        height: 45px;
        margin: 0 auto 10px
    }
}

.c-opencampus span {
    display: block;
    text-transform: uppercase;
    white-space: nowrap
}

.c-opencampus__year {
    letter-spacing: -.01em
}

@media screen and (min-width: 1024px) {
    .c-opencampus__year {
        font-size:6.1rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-opencampus__year {
        font-size:4.0rem
    }
}

@media screen and (max-width: 560px) {
    .c-opencampus__year {
        font-size:calc( 1.0rem + 5vw);
        margin-bottom: .1em
    }
}

.c-opencampus__title {
    letter-spacing: -.01em
}

@media screen and (min-width: 1024px) {
    .c-opencampus__title {
        font-size:8.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-opencampus__title {
        font-size:5.0rem
    }
}

@media screen and (max-width: 560px) {
    .c-opencampus__title {
        font-size:calc( 1.0rem + 6vw)
    }
}

.c-opencampus__name {
    letter-spacing: .1em
}

@media screen and (min-width: 1024px) {
    .c-opencampus__name {
        font-size:1.9rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-opencampus__name {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .c-opencampus__name {
        font-size:1.2rem
    }
}

.c-opencampus--shadow .c-opencampus__year,.c-opencampus--shadow .c-opencampus__title {
    text-shadow: 0 0 11px rgba(255,255,255,0.75)
}

@media screen and (min-width: 1024px) {
    .c-pagination {
        padding:95px 0 80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-pagination {
        padding:70px 0 60px
    }
}

@media screen and (max-width: 560px) {
    .c-pagination {
        padding:50px 0 40px
    }
}

.c-pagination p,.c-pagination a {
    line-height: 1;
    font-size: 1.4rem
}

.c-pagination a {
    position: relative;
    overflow: hidden;
    z-index: 1
}

.c-pagination a::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-color: rgba(51,51,51,0.1);
    opacity: 0;
    transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    pointer-events: none
}

.c-pagination a.is-hover:hover {
    opacity: 1
}

.c-pagination a.is-hover:hover::after {
    opacity: 1
}

.c-pagination__inner {
    display: flex;
    align-items: center;
    justify-content: center
}

@media screen and (min-width: 1024px) {
    .c-pagination__inner {
        width:100%;
        margin: 0 auto
    }
}

.c-pagination__number {
    display: flex;
    margin-left: -10px
}

.c-pagination__number li {
    margin-left: 10px
}

.c-pagination__number a {
    display: block;
    width: auto;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    padding: 12px 10px 8px;
    background-color: #fff;
    border: 1px solid #000
}

@media screen and (min-width: 769px) {
    .c-pagination__number a {
        min-width:40px;
        min-height: 40px
    }
}

@media screen and (max-width: 768px) {
    .c-pagination__number a {
        min-width:34px;
        min-height: 34px
    }
}

.c-pagination__number a.is-current {
    background-color: #000;
    color: #fff;
    pointer-events: none
}

.c-pagination__ellipsis {
    display: flex;
    align-items: center;
    justify-content: center
}

.c-pagination__list a,.c-pagination__prev a,.c-pagination__next a {
    display: block;
    width: auto;
    height: auto;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #333;
    padding: 12px 10px 8px;
    background-color: #fff;
    border: 1px solid #000
}

@media screen and (min-width: 769px) {
    .c-pagination__list a,.c-pagination__prev a,.c-pagination__next a {
        font-size:1.6rem;
        min-width: 40px;
        min-height: 40px
    }
}

@media screen and (max-width: 768px) {
    .c-pagination__list a,.c-pagination__prev a,.c-pagination__next a {
        font-size:1.2rem;
        min-width: 34px;
        min-height: 34px
    }
}

@media screen and (max-width: 768px) {
    .c-pagination__list .c-icon,.c-pagination__list .c-icon-back,.c-pagination__prev .c-icon,.c-pagination__prev .c-icon-back,.c-pagination__next .c-icon,.c-pagination__next .c-icon-back {
        display:none
    }
}

@media screen and (min-width: 1024px) {
    .c-pagination__list {
        margin:0 10px
    }
}

.c-pagination__prev {
    margin-right: 10px
}

.c-pagination__next {
    margin-left: 10px
}

.c-paragraphs>*:not(:last-of-type) {
    margin-bottom: 1.875em
}

@media screen and (min-width: 1024px) {
    .c-paragraph-small,.c-paragraph-small * {
        line-height:2.06667;
        font-size: 1.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-paragraph-small,.c-paragraph-small * {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .c-paragraph-small,.c-paragraph-small * {
        font-size:1.2rem
    }
}

.c-paragraph-medium,.c-paragraph-medium * {
    line-height: 1.875
}

@media screen and (min-width: 1024px) {
    .c-paragraph-medium,.c-paragraph-medium * {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-paragraph-medium,.c-paragraph-medium * {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .c-paragraph-medium,.c-paragraph-medium * {
        font-size:1.3rem
    }
}

.c-point {
    line-height: 1;
    letter-spacing: 0
}

.c-point>span {
    padding-left: 3px;
    position: relative
}

.c-point__text {
    display: inline-block;
    color: #333;
    letter-spacing: -.02em;
    -webkit-transform: rotate(-4deg);
    transform: rotate(-4deg);
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0
}

.c-point__text span {
    margin-left: .2em
}

@media screen and (min-width: 1024px) {
    .c-point__text+.c-point__num {
        margin-left:3px
    }
}

@media screen and (min-width: 1024px) {
    .c-point--small .c-point__text {
        font-size:2.3rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-point--small .c-point__text {
        font-size:1.8rem
    }
}

@media screen and (max-width: 560px) {
    .c-point--small .c-point__text {
        font-size:1.4rem
    }
}

@media screen and (min-width: 1024px) {
    .c-point--small .c-point__num {
        font-size:7.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-point--small .c-point__num {
        font-size:5.0rem
    }
}

@media screen and (max-width: 560px) {
    .c-point--small .c-point__num {
        font-size:3.8rem
    }
}

.c-point--large .c-point__text {
    -webkit-transform: rotate(-4deg) translateY(-0.1em);
    transform: rotate(-4deg) translateY(-0.1em)
}

@media screen and (min-width: 1024px) {
    .c-point--large .c-point__text {
        font-size:2.5rem
    }
}

@media screen and (max-width: 1023px) {
    .c-point--large .c-point__text {
        margin-right:.1em
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-point--large .c-point__text {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .c-point--large .c-point__text {
        font-size:1.6rem
    }
}

@media screen and (min-width: 1024px) {
    .c-point--large .c-point__num {
        font-size:8.2rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-point--large .c-point__num {
        font-size:5.6rem
    }
}

@media screen and (max-width: 560px) {
    .c-point--large .c-point__num {
        font-size:4.8rem
    }
}

.c-product {
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap
}

@media screen and (min-width: 1024px) {
    .c-product {
        width:90%;
        max-width: 1000px;
        margin: 0 auto
    }
}

@media screen and (max-width: 1023px) {
    .c-product {
        width:84%;
        margin: 0 0 0 10%
    }
}

.c-product-card {
    position: relative
}

@media screen and (min-width: 561px) {
    .c-product-card {
        width:45%;
        margin-bottom: 70px
    }
}

@media screen and (max-width: 560px) {
    .c-product-card {
        width:100%;
        margin-bottom: 40px
    }
}

.c-product-card a {
    display: block;
    width: 100%;
    height: 100%
}

.c-product-card a.is-hover:hover .c-product-card__ttl>span {
    background-color: #000
}

.c-product-card a.is-hover:hover .c-product-card__ttl span {
    color: #fff
}

.c-product-card a.is-hover:hover .c-product-card__figure img {
    -webkit-transform: scale3d(1.1, 1.1, 1);
    transform: scale3d(1.1, 1.1, 1)
}

.c-product-card a.is-hover:hover .c-product-card__arrow::before,.c-product-card a.is-hover:hover .c-product-card__arrow::after {
    opacity: 1;
    right: 0
}

.c-product-card__ttl {
    position: absolute;
    z-index: 1;
    top: -1em;
    line-height: 1;
    display: flex;
    align-items: center;
    justify-content: space-between;
    flex-direction: column
}

@media screen and (min-width: 1024px) {
    .c-product-card__ttl {
        left:calc( -52px / 2);
        min-width: 52px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-product-card__ttl {
        left:calc( -40px / 2);
        min-width: 40px
    }
}

@media screen and (max-width: 560px) {
    .c-product-card__ttl {
        left:calc( -32px / 2);
        min-width: 32px
    }
}

.c-product-card__ttl::before {
    content: '';
    border-top: 2px solid #000;
    width: calc( 100% + 24px);
    position: absolute;
    top: -5px;
    left: -12px
}

.c-product-card__ttl::after {
    content: '';
    border-bottom: 2px solid #000;
    width: calc( 100% + 24px);
    position: absolute;
    bottom: -5px;
    left: -12px
}

.c-product-card__ttl>span {
    display: inline-block;
    padding: .7em .5em;
    background-color: #fff;
    border: 2px solid #000;
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal;
    position: relative;
    z-index: 1
}

@media screen and (min-width: 1024px) {
    .c-product-card__ttl>span {
        font-size:2.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-product-card__ttl>span {
        font-size:1.8rem
    }
}

@media screen and (max-width: 560px) {
    .c-product-card__ttl>span {
        font-size:1.4rem
    }
}

.c-product-card__ttl>span::before {
    content: '';
    border-left: 2px solid #000;
    height: calc( 100% + 24px);
    position: absolute;
    top: -12px;
    left: -6px
}

.c-product-card__ttl>span::after {
    content: '';
    border-right: 2px solid #000;
    height: calc( 100% + 24px);
    position: absolute;
    top: -12px;
    right: -6px
}

@media screen and (min-width: 1024px) {
    .c-product-card__ttl>span span {
        font-size:1.6rem;
        padding-bottom: 1em
    }
}

@media screen and (max-width: 1023px) {
    .c-product-card__ttl>span span {
        display:block;
        padding-left: .5em
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-product-card__ttl>span span {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .c-product-card__ttl>span span {
        font-size:1.1rem
    }
}

.c-product-card__figure {
    position: relative;
    overflow: hidden
}

.c-product-card__figure::before {
    content: '';
    display: block;
    padding-top: 71.11111%
}

.c-product-card__figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    position: absolute;
    top: 0;
    left: 0;
    transition: all 5000ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

.c-product-card__txt {
    line-height: 2;
    margin-top: 1.2em
}

@media screen and (min-width: 1024px) {
    .c-product-card__txt {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-product-card__txt {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .c-product-card__txt {
        font-size:1.3rem
    }
}

.c-product-card__arrow {
    text-align: right;
    padding: 0 2em .5em 0;
    position: relative
}

@media screen and (min-width: 1024px) {
    .c-product-card__arrow {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-product-card__arrow {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .c-product-card__arrow {
        font-size:1.0rem
    }
}

.c-product-card__arrow::before {
    content: '';
    border-bottom: 1px solid #000;
    position: absolute;
    bottom: 0;
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media screen and (min-width: 1024px) {
    .c-product-card__arrow::before {
        width:125px;
        right: 10px;
        opacity: 0
    }
}

@media screen and (max-width: 1023px) {
    .c-product-card__arrow::before {
        right:0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-product-card__arrow::before {
        width:100px
    }
}

@media screen and (max-width: 560px) {
    .c-product-card__arrow::before {
        width:87px
    }
}

.c-product-card__arrow::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 0 15px;
    border-color: transparent transparent transparent #000;
    position: absolute;
    bottom: 0;
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media screen and (min-width: 1024px) {
    .c-product-card__arrow::after {
        right:10px;
        opacity: 0
    }
}

@media screen and (max-width: 1023px) {
    .c-product-card__arrow::after {
        right:0
    }
}

@media screen and (min-width: 1024px) {
    .c-pullup-parent {
        padding-top:30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-pullup-parent {
        padding-top:25px
    }
}

@media screen and (max-width: 560px) {
    .c-pullup-parent {
        padding-top:15px
    }
}

@media screen and (min-width: 1024px) {
    .c-pullup {
        margin-top:-90px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-pullup {
        margin-top:-75px
    }
}

@media screen and (max-width: 560px) {
    .c-pullup {
        margin-top:-50px
    }
}

.c-scrool {
    display: flex;
    align-items: flex-start
}

.c-scrool p,.c-scrool a {
    margin-left: 12px;
    line-height: 1;
    letter-spacing: .17em;
    margin-bottom: 5px;
    font-size: 1.4rem
}

.c-scrool__icon {
    position: relative;
    width: 1px;
    height: 130px
}

.c-scrool__line__w__bg {
    width: 1px;
    height: 100%;
    margin: 0 auto 5px;
    position: absolute;
    top: 0;
    left: 0
}

.c-scrool__line__w__bg::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: #b4b4b4
}

.c-scrool__line__w__bg::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 6px 0 0;
    border-color: #b4b4b4 transparent transparent transparent;
    position: absolute;
    left: 0;
    bottom: 0
}

.c-scrool__line__w {
    width: 1px;
    height: 100%;
    margin: 0 auto 5px;
    position: absolute;
    top: 0;
    left: 0
}

.c-scrool__line__w::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    -webkit-animation: scaleY-InOut cubic-bezier(0.86, 0, 0.07, 1) 2000ms infinite;
    animation: scaleY-InOut cubic-bezier(0.86, 0, 0.07, 1) 2000ms infinite
}

.c-scrool__line__w::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 6px 0 0;
    border-color: transparent transparent transparent transparent;
    position: absolute;
    left: 0;
    bottom: 0;
    -webkit-animation: grade-w-transparent cubic-bezier(0.86, 0, 0.07, 1) 2000ms infinite;
    animation: grade-w-transparent cubic-bezier(0.86, 0, 0.07, 1) 2000ms infinite
}

.c-scrool__line__b__bg {
    width: 1px;
    height: 100%;
    margin: 0 auto 5px;
    position: absolute;
    top: 0;
    left: 0
}

.c-scrool__line__b__bg::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff
}

.c-scrool__line__b__bg::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 6px 0 0;
    border-color: #fff transparent transparent transparent;
    position: absolute;
    left: 0;
    bottom: 0
}

.c-scrool__line__b {
    width: 1px;
    height: 100%;
    margin: 0 auto 5px;
    position: absolute;
    top: 0;
    left: 0
}

.c-scrool__line__b::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: #000;
    -webkit-animation: scaleY-InOut cubic-bezier(0.86, 0, 0.07, 1) 2000ms infinite;
    animation: scaleY-InOut cubic-bezier(0.86, 0, 0.07, 1) 2000ms infinite
}

.c-scrool__line__b::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 15px 6px 0 0;
    border-color: transparent transparent transparent transparent;
    position: absolute;
    left: 0;
    bottom: 0;
    -webkit-animation: grade-b-transparent cubic-bezier(0.86, 0, 0.07, 1) 2000ms infinite;
    animation: grade-b-transparent cubic-bezier(0.86, 0, 0.07, 1) 2000ms infinite
}

.c-scrool__circle {
    width: 5px;
    height: 5px;
    margin: 0 auto;
    border-radius: 50%;
    background-color: #000
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-sidebar {
        display:flex;
        align-items: flex-start;
        flex-wrap: wrap;
        justify-content: space-between;
        margin-bottom: 40px
    }
}

@media screen and (max-width: 560px) {
    .c-sidebar {
        display:block;
        margin-bottom: 30px
    }
}

.c-sidebar__cell {
    position: relative;
    z-index: 1
}

@media screen and (min-width: 1024px) {
    .c-sidebar__cell:not(:last-of-type) {
        margin-bottom:63px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-sidebar__cell {
        width:47.36842%
    }
}

@media screen and (max-width: 560px) {
    .c-sidebar__cell:not(:last-of-type) {
        margin-bottom:10px
    }
}

@media screen and (min-width: 1024px) {
    .c-sidebar__title {
        padding-bottom:20px
    }
}

@media screen and (max-width: 1023px) {
    .c-sidebar__title {
        display:flex;
        align-items: baseline;
        cursor: pointer
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-sidebar__title {
        margin-bottom:13px
    }
}

@media screen and (max-width: 1023px) {
    .c-sidebar__title::before {
        content:'';
        display: block;
        border-right: solid 2px #646464;
        border-bottom: solid 2px #646464;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        position: absolute;
        right: 13px;
        z-index: 1
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-sidebar__title::before {
        width:10px;
        height: 10px;
        top: 15px
    }
}

@media screen and (max-width: 560px) {
    .c-sidebar__title::before {
        width:8px;
        height: 8px;
        top: 13px
    }
}

.c-sidebar__title h2 {
    width: 100%;
    display: flex;
    align-items: center;
    line-height: 1;
    transition-property: background-size;
    background-image: linear-gradient(180deg, #000, #000);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 100% 100%;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: .8em 0;
    font-weight: 600
}

@media screen and (min-width: 1024px) {
    .c-sidebar__title h2 {
        font-size:1.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-sidebar__title h2 {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .c-sidebar__title h2 {
        font-size:1.4rem
    }
}

.c-sidebar__title h2::before {
    content: '';
    display: block;
    background-image: url(/assets/img/common/icon/icon_ttl.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .c-sidebar__title h2::before {
        width:20px;
        height: 20px;
        margin-right: 10px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-sidebar__title h2::before {
        width:16px;
        height: 16px;
        margin-right: 8px
    }
}

@media screen and (max-width: 560px) {
    .c-sidebar__title h2::before {
        width:12px;
        height: 12px;
        margin-right: 6px
    }
}

@media screen and (min-width: 1024px) {
    .c-sidebar__nav {
        max-height:885px;
        height: auto
    }
}

@media screen and (max-width: 1023px) {
    .c-sidebar__nav {
        display:none
    }
}

.c-sidebar__nav:not(.is-view) li:nth-of-type(n+13) {
    display: none
}

.c-sidebar__nav a {
    position: relative;
    display: flex;
    align-items: center;
    width: 100%;
    height: 100%;
    line-height: 1;
    color: #000;
    padding: .5em 0
}

.c-sidebar__nav a::before {
    content: '>';
    display: block;
    margin-right: .5em
}

.c-sidebar__nav a.is-current::after {
    width: 100%;
    left: 0;
    right: auto;
    opacity: 1
}

.c-sidebar__nav span {
    position: relative;
    z-index: 1
}

@media screen and (min-width: 1024px) {
    .c-sidebar__more {
        margin-top:12px
    }
}

@media screen and (max-width: 1023px) {
    .c-sidebar__more {
        display:none
    }
}

.c-sidebar__more a {
    transition-property: background-size;
    background-image: linear-gradient(180deg, #646464, #646464);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 100% 100%
}

.c-sidebar__more a.is-hover:hover {
    opacity: 1;
    background-size: 100% 1px;
    background-position: 0% 100%
}

.c-sidebar__more.is-hidden {
    display: none
}

@media screen and (min-width: 1024px) {
    .c-sidebar__select {
        display:none
    }
}

@media screen and (max-width: 1023px) {
    .c-sidebar__select {
        position:absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        opacity: 0;
        z-index: 1
    }
}

.c-sidebar-newlist {
    width: 100%
}

@media screen and (max-width: 1023px) {
    .c-sidebar-newlist {
        margin-bottom:40px !important
    }
}

@media screen and (min-width: 1024px) {
    .c-sidebar-newlist .c-sidebar__title {
        padding-bottom:35px
    }
}

@media screen and (max-width: 1023px) {
    .c-sidebar-newlist .c-sidebar__title {
        margin-bottom:13px
    }
}

.c-sidebar-newlist .c-sidebar__title::before {
    content: none
}

.c-sidebar-newlist .p-card {
    width: 100%
}

.c-sidebar-newlist .p-card:not(:last-child) {
    margin-bottom: 25px
}

.c-sidebar-newlist .p-card a {
    display: flex;
    justify-content: space-between;
    box-shadow: none;
    background-color: transparent
}

.c-sidebar-newlist .p-card__figure {
    width: 42.85714%
}

.c-sidebar-newlist .p-card__info {
    width: 53.57143%;
    padding: 0
}

.c-sidebar-newlist .p-card__title {
    font-weight: 400
}

@media screen and (min-width: 1024px) {
    .c-sidebar-newlist .p-card__title {
        font-size:1.3rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-sidebar-newlist .p-card__title {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .c-sidebar-newlist .p-card__title {
        font-size:1.1rem
    }
}

@media screen and (min-width: 1024px) {
    .c-sidebar-newlist .p-card__time time {
        font-size:1.1rem
    }
}

@media screen and (max-width: 1023px) {
    .c-sidebar-newlist .p-card__time time {
        font-size:1.0rem
    }
}

.c-sidebar-newlist .c-category {
    position: absolute;
    bottom: 0;
    right: 0
}

.c-sidebar__other {
    width: 100%
}

@media screen and (max-width: 1023px) {
    .c-sidebar__other {
        margin-top:40px
    }
}

@media screen and (max-width: 1023px) {
    .c-sidebar__sns {
        display:none
    }
}

@media screen and (min-width: 1024px) {
    .c-space-xx-small {
        margin-bottom:20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-space-xx-small {
        margin-bottom:20px
    }
}

@media screen and (max-width: 560px) {
    .c-space-xx-small {
        margin-bottom:10px
    }
}

@media screen and (min-width: 1024px) {
    .c-space-x-small {
        margin-bottom:60px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-space-x-small {
        margin-bottom:45px
    }
}

@media screen and (max-width: 560px) {
    .c-space-x-small {
        margin-bottom:40px
    }
}

@media screen and (min-width: 1024px) {
    .c-space-small,.c-space-smalls>*:not(:last-child) {
        margin-bottom:80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-space-small,.c-space-smalls>*:not(:last-child) {
        margin-bottom:60px
    }
}

@media screen and (max-width: 560px) {
    .c-space-small,.c-space-smalls>*:not(:last-child) {
        margin-bottom:50px
    }
}

@media screen and (min-width: 1024px) {
    .c-space-medium,.c-space-mediums>*:not(:last-child) {
        margin-bottom:100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-space-medium,.c-space-mediums>*:not(:last-child) {
        margin-bottom:70px
    }
}

@media screen and (max-width: 560px) {
    .c-space-medium,.c-space-mediums>*:not(:last-child) {
        margin-bottom:60px
    }
}

@media screen and (min-width: 1024px) {
    .c-space-large,.c-space-larges>*:not(:last-child) {
        margin-bottom:120px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-space-large,.c-space-larges>*:not(:last-child) {
        margin-bottom:80px
    }
}

@media screen and (max-width: 560px) {
    .c-space-large,.c-space-larges>*:not(:last-child) {
        margin-bottom:70px
    }
}

@media screen and (min-width: 1024px) {
    .c-space-e-large {
        margin-bottom:140px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-space-e-large {
        margin-bottom:100px
    }
}

@media screen and (max-width: 560px) {
    .c-space-e-large {
        margin-bottom:80px
    }
}

@media screen and (min-width: 1024px) {
    .c-space-s-large {
        margin-bottom:200px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-space-s-large {
        margin-bottom:160px
    }
}

@media screen and (max-width: 560px) {
    .c-space-s-large {
        margin-bottom:120px
    }
}

.c-sticky {
    position: -webkit-sticky;
    position: sticky
}

@media screen and (min-width: 1024px) {
    .c-sticky {
        top:30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-sticky {
        top:110px
    }
}

@media screen and (max-width: 560px) {
    .c-sticky {
        top:90px
    }
}

@media screen and (min-width: 1024px) {
    .c-sticky-content {
        padding-right:20px
    }
}

.c-subject {
    display: flex;
    align-items: center;
    justify-content: center;
    text-align: center
}

.c-subject div {
    position: relative;
    padding: 0 5px
}

.c-subject div::before,.c-subject div::after {
    content: '';
    display: block;
    width: calc(100% + 10px);
    border-radius: 10px;
    transition: 1000ms -webkit-transform cubic-bezier(0.77, 0, 0.175, 1);
    transition: 1000ms transform cubic-bezier(0.77, 0, 0.175, 1);
    transition: 1000ms transform cubic-bezier(0.77, 0, 0.175, 1), 1000ms -webkit-transform cubic-bezier(0.77, 0, 0.175, 1);
    -webkit-transform: scaleX(0);
    transform: scaleX(0);
    margin-left: -5px
}

@media screen and (min-width: 561px) {
    .c-subject div::before,.c-subject div::after {
        height:4px
    }
}

@media screen and (max-width: 560px) {
    .c-subject div::before,.c-subject div::after {
        height:3px
    }
}

.c-subject div::before {
    background-color: #1aa7c7;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0
}

@media screen and (min-width: 561px) {
    .c-subject div::before {
        margin-bottom:25px
    }
}

@media screen and (max-width: 560px) {
    .c-subject div::before {
        margin-bottom:20px
    }
}

.c-subject div::after {
    background-color: #f26f78;
    -webkit-transform-origin: 100% 100%;
    transform-origin: 100% 100%
}

@media screen and (min-width: 561px) {
    .c-subject div::after {
        margin-top:25px
    }
}

@media screen and (max-width: 560px) {
    .c-subject div::after {
        margin-top:20px
    }
}

.c-subject p {
    opacity: 0;
    -webkit-transform: translate3d(0, 10px, 0);
    transform: translate3d(0, 10px, 0);
    transition: 1000ms 300ms cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-property: opacity,-webkit-transform;
    transition-property: opacity,transform;
    transition-property: opacity,transform,-webkit-transform
}

.c-subject p:nth-of-type(1) {
    transition-delay: 1000ms
}

.c-subject p:nth-of-type(2) {
    transition-delay: 1200ms
}

.c-subject.is-shown div::before,.c-subject.is-shown div::after {
    -webkit-transform: scaleX(1);
    transform: scaleX(1)
}

.c-subject.is-shown p {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

@media screen and (min-width: 561px) {
    .c-subject__name {
        display:flex;
        align-items: center;
        justify-content: center
    }
}

.c-subject__name span {
    font-weight: bold;
    letter-spacing: .09em
}

@media screen and (min-width: 1024px) {
    .c-subject__name span {
        font-size:2.8rem
    }
}

@media screen and (min-width: 1280px) {
    .c-subject__name span {
        font-size:3.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-subject__name span {
        font-size:2.4rem
    }
}

@media screen and (max-width: 560px) {
    .c-subject__name span {
        font-size:2.0rem
    }
}

@media screen and (min-width: 561px) {
    .c-subject__name span {
        display:flex;
        align-items: center;
        justify-content: center
    }
}

@media screen and (max-width: 560px) {
    .c-subject__name span {
        display:block
    }
}

.c-subject__name span:not(:last-of-type)::after {
    content: '';
    display: block;
    background-image: url("/assets/img/common/cross.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

.c-subject__text {
    line-height: 1;
    letter-spacing: .17em;
    color: #333
}

@media screen and (min-width: 561px) {
    .c-subject__text {
        margin-top:24px
    }
}

@media screen and (min-width: 1024px) {
    .c-subject__text {
        font-size:1.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-subject__text {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .c-subject__text {
        font-size:1.2rem;
        margin-top: 20px
    }
}

@media screen and (min-width: 1024px) {
    .c-subject--large .c-subject__name span:not(:last-of-type)::after {
        width:54px;
        height: 54px;
        margin: 0 15px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-subject--large .c-subject__name span:not(:last-of-type)::after {
        width:43.2px;
        height: 43.2px;
        margin: 0 12px
    }
}

@media screen and (max-width: 560px) {
    .c-subject--large .c-subject__name span:not(:last-of-type)::after {
        width:32.4px;
        height: 32.4px;
        margin: 15px auto
    }
}

@media screen and (min-width: 1024px) {
    .c-subject--small .c-subject__name span:not(:last-of-type)::after {
        width:42px;
        height: 42px;
        margin: 0 20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-subject--small .c-subject__name span:not(:last-of-type)::after {
        width:33.6px;
        height: 33.6px;
        margin: 0 16px
    }
}

@media screen and (max-width: 560px) {
    .c-subject--small .c-subject__name span:not(:last-of-type)::after {
        width:25.2px;
        height: 25.2px;
        margin: 15px auto
    }
}

@media screen and (min-width: 1024px) {
    .c-systems {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .c-systems .c-system {
        width:48.83721%
    }
}

.c-system {
    position: relative;
    border-radius: 10px;
    background-color: #fffceb;
    background-image: repeating-linear-gradient(-45deg, rgba(255,255,255,0.3), rgba(255,255,255,0.3) 10px, #fffceb 0, #fffceb 20px)
}

@media screen and (min-width: 1024px) {
    .c-system {
        padding:28px 15px 22px
    }
}

@media screen and (min-width: 1280px) {
    .c-system {
        padding:28px 25px 22px
    }
}

@media screen and (max-width: 1023px) {
    .c-system {
        padding:20px 20px 14px
    }

    .c-system:not(:last-of-type) {
        margin-bottom: 26px
    }
}

.c-system__title {
    text-align: center;
    font-weight: bold;
    letter-spacing: .06em;
    color: #333;
    line-height: 2
}

@media screen and (min-width: 1024px) {
    .c-system__title {
        font-size:1.6rem;
        margin-bottom: 18px
    }
}

@media screen and (min-width: 1280px) {
    .c-system__title {
        font-size:1.8rem
    }
}

@media screen and (max-width: 1023px) {
    .c-system__title {
        font-size:1.4rem;
        margin-bottom: 10px
    }
}

.c-system__title::before {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media screen and (min-width: 1024px) {
    .c-system__title::before {
        width:82px;
        height: 51px;
        top: -36px
    }
}

@media screen and (max-width: 1023px) {
    .c-system__title::before {
        width:49.2px;
        height: 30.6px;
        top: -18px
    }
}

.c-system__title span {
    border-bottom: solid 2px #333
}

@media screen and (min-width: 1024px) {
    .c-system__title span {
        padding-bottom:8px
    }
}

@media screen and (max-width: 1023px) {
    .c-system__title span {
        padding-bottom:4px
    }
}

@media screen and (min-width: 1024px) {
    .c-system__title--small {
        font-size:1.4rem
    }
}

@media screen and (min-width: 1280px) {
    .c-system__title--small {
        font-size:1.6rem
    }
}

.c-system__paragraph {
    line-height: 1.75;
    letter-spacing: .03em;
    color: #646464
}

@media screen and (min-width: 769px) {
    .c-system__paragraph {
        font-size:1.4rem;
        text-align: center
    }
}

@media screen and (min-width: 1280px) {
    .c-system__paragraph {
        font-size:1.6rem
    }
}

@media screen and (max-width: 768px) {
    .c-system__paragraph {
        font-size:1.2rem
    }
}

.c-table-simple {
    border-top: dotted 2px #999;
    word-break: break-all
}

.c-table-simple dl {
    border-bottom: dotted 2px #999;
    background-color: #fff
}

@media screen and (min-width: 561px) {
    .c-table-simple dl {
        display:flex;
        align-items: baseline;
        justify-content: space-between;
        padding: 26px 30px 26px 30px
    }
}

@media screen and (max-width: 560px) {
    .c-table-simple dl {
        padding:18px 5% 18px 5%
    }
}

.c-table-simple dd,.c-table-simple a {
    color: #000;
    line-height: 1.5
}

@media screen and (min-width: 1024px) {
    .c-table-simple dd,.c-table-simple a {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) {
    .c-table-simple dd,.c-table-simple a {
        font-size:1.4rem
    }
}

.c-table-simple dt {
    color: #4d4d4d;
    line-height: 1.5
}

@media screen and (min-width: 1024px) {
    .c-table-simple dt {
        width:238px;
        font-size: 1.2rem
    }
}

@media screen and (max-width: 1023px) {
    .c-table-simple dt {
        font-size:1.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-table-simple dt {
        width:180px
    }
}

@media screen and (max-width: 560px) {
    .c-table-simple dt {
        margin-bottom:8px
    }
}

@media screen and (min-width: 1024px) {
    .c-table-simple dd {
        width:calc( 100% - 238px)
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-table-simple dd {
        width:calc( 100% - 180px)
    }
}

.c-table-dt--16 dt {
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .c-table-dt--16 dt {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) {
    .c-table-dt--16 dt {
        font-size:1.4rem
    }
}

@media screen and (min-width: 1024px) {
    .c-table--200 dt {
        width:200px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-table--200 dt {
        width:170px
    }
}

@media screen and (min-width: 1024px) {
    .c-table--200 dd {
        width:calc( 100% - 200px)
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-table--200 dd {
        width:calc( 100% - 170px)
    }
}

@media screen and (min-width: 1024px) {
    .c-table--padding dt {
        padding-left:30px
    }
}

@media screen and (min-width: 769px) {
    .c-table-complex:not(:last-of-type) {
        margin-bottom:40px
    }
}

@media screen and (max-width: 768px) {
    .c-table-complex:not(:last-of-type) {
        margin-bottom:20px
    }
}

.c-table-complex__body table {
    width: 100%;
    word-break: break-all
}

.c-table-complex__body tr>*:first-child {
    border-left: 0px
}

.c-table-complex__body tr>*:last-child {
    border-right: 0px
}

.c-table-complex__body th {
    font-weight: bold;
    vertical-align: middle
}

.c-table-complex__body th,.c-table-complex__body td {
    border: solid 1px #666;
    color: #333
}

.c-table-complex__body thead th {
    border-top: 0px;
    font-weight: bold;
    color: #fff
}

@media screen and (min-width: 1024px) {
    .c-table-complex__body thead th {
        padding:8px 0;
        font-size: 1.4rem
    }
}

@media screen and (min-width: 1280px) {
    .c-table-complex__body thead th {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-table-complex__body thead th {
        font-size:1.2rem;
        padding: 8px 0
    }
}

@media screen and (max-width: 560px) {
    .c-table-complex__body thead th {
        font-size:1.3rem;
        padding: 6px 0
    }
}

.c-table-complex__body thead th:not([class^="u-bg"]) {
    background-color: #787878
}

.c-table-complex--large table,.c-table-complex--medium table {
    border: solid 4px #666
}

.c-table-complex--large tbody th,.c-table-complex--large tbody td {
    font-weight: bold;
    letter-spacing: .12em
}

@media screen and (min-width: 1024px) {
    .c-table-complex--large tbody th,.c-table-complex--large tbody td {
        font-size:1.6rem;
        padding: 13px 0
    }
}

@media screen and (min-width: 1280px) {
    .c-table-complex--large tbody th,.c-table-complex--large tbody td {
        font-size:2.0rem
    }
}

@media screen and (max-width: 1023px) {
    .c-table-complex--large tbody th,.c-table-complex--large tbody td {
        font-size:1.3rem;
        padding: 10px 0
    }
}

.c-table-complex--medium tbody th,.c-table-complex--medium tbody td {
    font-weight: bold;
    letter-spacing: .12em
}

@media screen and (min-width: 1024px) {
    .c-table-complex--medium tbody th,.c-table-complex--medium tbody td {
        font-size:1.4rem;
        padding: 14px 0
    }
}

@media screen and (min-width: 1280px) {
    .c-table-complex--medium tbody th,.c-table-complex--medium tbody td {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) {
    .c-table-complex--medium tbody th,.c-table-complex--medium tbody td {
        font-size:1.3rem;
        padding: 10px 0
    }
}

.c-table-complex--middle th,.c-table-complex--middle td {
    vertical-align: middle;
    padding: 15px 10px
}

@media screen and (min-width: 1024px) {
    .c-table-complex--height tbody th {
        height:120px
    }
}

@media screen and (max-width: 1160px) {
    .c-table-complex--scroll-lg .c-table-complex__body {
        padding-bottom:10px
    }
}

@media screen and (max-width: 1160px) {
    .c-table-complex--scroll-lg table {
        width:900px
    }
}

@media screen and (max-width: 768px) {
    .c-table-complex--scroll-lg table {
        width:800px
    }
}

@media screen and (max-width: 768px) {
    .c-table-complex--scroll-md .c-table-complex__body {
        padding-bottom:10px
    }
}

@media screen and (max-width: 768px) {
    .c-table-complex--scroll-md table {
        min-width:600px
    }
}

.c-table__smalls {
    margin-top: 10px;
    margin-bottom: -.57143em
}

.c-table__price {
    letter-spacing: .08em !important
}

@media screen and (min-width: 1024px) {
    .c-table__price {
        font-size:1.9rem
    }
}

.c-table__price div {
    -webkit-transform: translateY(2px);
    transform: translateY(2px)
}

.c-table__price span {
    display: inline-block;
    vertical-align: unset;
    margin-top: -2px;
    font-size: 157.89474%
}

@media screen and (min-width: 1024px) {
    .c-table__price span {
        margin-right:6px
    }
}

@media screen and (max-width: 1023px) {
    .c-table__price span {
        margin-right:4px
    }
}

@media screen and (min-width: 1024px) {
    .c-table__130 {
        width:130px
    }
}

@media screen and (max-width: 1023px) {
    .c-table__130 {
        width:90px
    }
}

@media screen and (min-width: 1024px) {
    .c-table__160 {
        width:160px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-table__160 {
        width:130px
    }
}

@media screen and (max-width: 560px) {
    .c-table__160 {
        width:120px
    }
}

@media screen and (min-width: 1024px) {
    .c-table__220 {
        width:230px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-table__220 {
        width:160px
    }
}

@media screen and (max-width: 560px) {
    .c-table__220 {
        width:130px
    }
}

.c-table__th-small {
    display: block;
    font-weight: normal;
    line-height: 1.5
}

@media screen and (min-width: 1024px) {
    .c-table__th-small {
        font-size:1.4rem
    }
}

@media screen and (min-width: 1024px) {
    .c-table__padding {
        padding:12px 26px 14px 28px !important
    }
}

@media screen and (max-width: 1023px) {
    .c-table__padding {
        padding:10px 16px 10px !important
    }
}

.c-table__padding.u-font-black-4 {
    color: #787878
}

.c-table-news.c-table-simple a {
    display: flex;
    width: 100%;
    height: 100%;
    position: relative;
    padding-right: 10%
}

.c-table-news.c-table-simple a.is-hover:hover {
    color: #666
}

.c-table-news.c-table-simple a.is-hover:hover::before {
    right: 0;
    opacity: 1
}

.c-table-news.c-table-simple a::before {
    content: '';
    background-image: url("/assets/img/common/icon/arrow_black.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    right: 2%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0
}

@media screen and (min-width: 1024px) {
    .c-table-news.c-table-simple a::before {
        width:40px;
        height: 6px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-table-news.c-table-simple a::before {
        width:32px;
        height: 4.8px
    }
}

.c-table-news.c-table-simple a span {
    display: block;
    flex: 1;
    line-height: 1;
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap
}

.c-table-news .c-new-shikaku {
    margin-left: 1em;
    display: block
}

.c-tategaki-35 {
    font-weight: bold;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal
}

@media screen and (min-width: 1024px) {
    .c-tategaki-35 {
        font-size:3.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-tategaki-35 {
        font-size:3.2rem
    }
}

@media screen and (max-width: 560px) {
    .c-tategaki-35 {
        font-size:2.6rem
    }
}

.c-tategaki-32 {
    font-weight: bold;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal
}

@media screen and (min-width: 1024px) {
    .c-tategaki-32 {
        font-size:3.2rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-tategaki-32 {
        font-size:2.8rem
    }
}

@media screen and (max-width: 560px) {
    .c-tategaki-32 {
        font-size:2.2rem
    }
}

.c-tategaki-24 {
    font-weight: bold;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal
}

@media screen and (min-width: 1024px) {
    .c-tategaki-24 {
        font-size:2.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-tategaki-24 {
        font-size:2.3rem
    }
}

@media screen and (max-width: 560px) {
    .c-tategaki-24 {
        font-size:1.8rem
    }
}

.c-text-g-blue {
    color: #009ab7;
    background: -webkit-linear-gradient(0deg, #54bdc3, #009ab7);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent
}

.c-text-g-pink {
    color: #fc7871;
    background: -webkit-linear-gradient(0deg, #ff9d95, #fc7871);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent
}

.c-title-vertical {
    position: relative;
    display: inline-flex;
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal;
    font-weight: bold;
    line-height: 1;
    letter-spacing: .15em;
    white-space: nowrap
}

@media screen and (min-width: 561px) {
    .c-title-vertical {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .c-title-vertical {
        font-size:1.4rem
    }
}

.c-title-vertical::after {
    content: '';
    display: block;
    width: 2px;
    height: 100%;
    background-color: #000;
    position: absolute;
    top: 0;
    right: -.9em
}

.c-title-section {
    position: relative
}

@media screen and (min-width: 1024px) {
    .c-title-section {
        margin-bottom:100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-title-section {
        margin-bottom:80px
    }
}

@media screen and (max-width: 560px) {
    .c-title-section {
        margin-bottom:60px
    }
}

.c-title-section::before {
    content: '';
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    width: 20px;
    height: 20px;
    position: absolute;
    top: 0;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.c-title-section h1,.c-title-section h2 {
    text-align: center;
    padding-top: 1em
}

@media screen and (min-width: 1024px) {
    .c-title-section h1,.c-title-section h2 {
        font-size:2.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-title-section h1,.c-title-section h2 {
        font-size:2.4rem
    }
}

@media screen and (max-width: 560px) {
    .c-title-section h1,.c-title-section h2 {
        font-size:2.0rem
    }
}

.c-title-section p {
    text-align: center;
    padding-top: 1em;
    line-height: 1.5
}

@media screen and (min-width: 1024px) {
    .c-title-section p {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-title-section p {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .c-title-section p {
        font-size:1.2rem
    }
}

.c-title-small {
    text-align: center;
    font-weight: bold;
    color: #333
}

@media screen and (min-width: 1024px) {
    .c-title-small {
        font-size:2.0rem;
        margin-bottom: 28px
    }
}

@media screen and (max-width: 1023px) {
    .c-title-small {
        font-size:1.6rem;
        margin-bottom: 20px
    }
}

.c-title-icon {
    display: flex;
    align-items: center;
    font-weight: bold
}

@media screen and (min-width: 1024px) {
    .c-title-icon {
        font-size:2.4rem;
        margin-bottom: 40px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .c-title-icon {
        font-size:2.0rem;
        margin-bottom: 30px
    }
}

@media screen and (max-width: 560px) {
    .c-title-icon {
        font-size:1.8rem;
        margin-bottom: 20px
    }
}

@media screen and (max-width: 414px) {
    .c-title-icon {
        font-size:1.6rem
    }
}

.c-title-icon::before {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 561px) {
    .c-title-icon::before {
        width:40px;
        height: 40px;
        margin-right: 30px
    }
}

@media screen and (max-width: 560px) {
    .c-title-icon::before {
        width:30px;
        height: 30px;
        margin-right: 14px
    }
}

@media screen and (max-width: 320px) {
    .c-title-icon::before {
        width:26px;
        height: 26px;
        margin-right: 10px
    }
}

.c-title-icon--center {
    justify-content: center
}

.c-title-icon--dt {
    color: #009ab7
}

.c-title-icon--dt::before {
    background-image: url("/assets/img/common/icon/dt.svg")
}

.c-title-icon--de {
    color: #f26f78
}

.c-title-icon--de::before {
    background-image: url("/assets/img/common/icon/de.svg")
}

.p-article {
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.045)
}

@media screen and (min-width: 1024px) {
    .p-article {
        padding:60px 10.52632% 70px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-article {
        padding:50px 40px 60px
    }
}

@media screen and (max-width: 560px) {
    .p-article {
        padding:35px 20px 40px
    }
}

.p-article__header {
    border-bottom: solid 1px #333
}

@media screen and (min-width: 1024px) {
    .p-article__header {
        padding-bottom:22px;
        margin-bottom: 28px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-article__header {
        padding-bottom:18px;
        margin-bottom: 20px
    }
}

@media screen and (max-width: 560px) {
    .p-article__header {
        padding-bottom:10px;
        margin-bottom: 12px
    }
}

.p-article__header h1 {
    color: #333;
    font-weight: bold
}

@media screen and (min-width: 1024px) {
    .p-article__header h1 {
        font-size:2.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-article__header h1 {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .p-article__header h1 {
        font-size:1.6rem
    }
}

.p-article__info {
    margin-bottom: 10px
}

.p-article__info div {
    display: flex;
    align-items: center
}

.p-article__time {
    line-height: 1;
    font-size: 1.4rem;
    color: #787878;
    margin-right: 20px
}

.p-article__body {
    color: #333
}

.p-article__body h2,.p-article__body h3,.p-article__body h4 {
    display: block;
    font-weight: bold;
    color: #333;
    margin-bottom: .5em
}

.p-article__body h2 {
    font-size: 1.17em;
    padding: 0 .4em;
    background-color: #eee;
    margin-bottom: 1.4em
}

.p-article__body h3 {
    font-size: 1em
}

.p-article__body h4 {
    font-size: 0.83em
}

.p-article__body img,.p-article__body iframe {
    max-width: 100%
}

.p-banner {
    margin: 0 auto;
    background-color: #fff
}

@media screen and (min-width: 1024px) {
    .p-banner {
        padding:80px 0 60px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-banner {
        padding:60px 0 80px
    }
}

@media screen and (max-width: 560px) {
    .p-banner {
        padding:50px 0 100px
    }
}

.p-banner li {
    width: 90%
}

@media screen and (max-width: 560px) {
    .p-banner li {
        margin-right:auto;
        margin-left: auto
    }
}

.p-banner a {
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.085)
}

.p-banner-recruit {
    max-width: 600px;
    margin: 0 auto
}

.p-banner-recruit a {
    background-color: #ebc31e;
    position: relative;
    padding: 2.5em 1em
}

.p-banner-recruit a::before {
    content: '';
    background-image: url("/assets/img/common/icon/icon_recruit.svg");
    background-size: 75px 75px;
    opacity: .3;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1
}

.p-banner-recruit__ttl {
    margin-bottom: .6em;
    position: relative;
    z-index: 2;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .p-banner-recruit__ttl {
        font-size:4.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-banner-recruit__ttl {
        font-size:3.0rem
    }
}

@media screen and (max-width: 560px) {
    .p-banner-recruit__ttl {
        font-size:2.0rem
    }
}

.p-banner-recruit__txt {
    font-weight: 400;
    position: relative;
    z-index: 2;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .p-banner-recruit__txt {
        font-size:1.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-banner-recruit__txt {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .p-banner-recruit__txt {
        font-size:1.4rem
    }
}

.p-card a {
    position: relative;
    z-index: 1;
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.045)
}

.p-card a.is-hover:hover {
    opacity: 1
}

.p-card a.is-hover:hover .p-card__title {
    color: #666
}

.p-card .c-new-maru {
    position: absolute;
    z-index: 1
}

@media screen and (min-width: 769px) {
    .p-card .c-new-maru {
        top:-25px;
        left: -25px
    }
}

@media screen and (max-width: 768px) {
    .p-card .c-new-maru {
        top:-15px;
        left: -15px
    }
}

.p-card__info {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    padding: 1em
}

.p-card__figure {
    position: relative;
    overflow: hidden
}

.p-card__figure::after {
    content: '';
    display: block;
    padding-top: 70.96774%
}

.p-card__figure img {
    transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

.p-card__time {
    line-height: 1
}

.p-card__time time {
    color: #666
}

@media screen and (min-width: 561px) {
    .p-card__time time {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .p-card__time time {
        font-size:1.2rem
    }
}

.p-card__time .c-category {
    display: inline-block;
    margin-left: 10px
}

.p-card__title {
    font-weight: bold;
    line-height: 1.5;
    transition: color 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    margin-bottom: 1em
}

@media screen and (min-width: 1024px) {
    .p-card__title {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-card__title {
        font-size:1.5rem
    }
}

@media screen and (max-width: 560px) {
    .p-card__title {
        font-size:1.4rem
    }
}

.p-card__paragraph {
    color: #646464
}

@media screen and (min-width: 769px) {
    .p-card__paragraph {
        font-size:1.3rem;
        line-height: 1.92308
    }
}

@media screen and (max-width: 560px) {
    .p-card__paragraph {
        font-size:1.1rem;
        line-height: 1.53846
    }
}

@media screen and (min-width: 561px) {
    .p-card--medium {
        width:45%
    }
}

@media screen and (max-width: 560px) {
    .p-card--medium {
        width:100%
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-card--small a {
        padding:25px 5% 34px
    }
}

@media screen and (min-width: 1024px) {
    .p-card--small .p-card__time {
        margin-bottom:12px
    }
}

.p-card--small .p-card__title {
    margin-bottom: 5px
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-card--small .p-card__title {
        font-size:1.2rem
    }
}

.p-card--small .p-card__title span {
    background-size: 100% 100%;
    background-position: 0% 100%
}

@media screen and (min-width: 561px) {
    .p-card-first {
        width:100%;
        min-height: 330px;
        margin-right: 0 !important
    }

    .p-card-first a {
        display: flex
    }

    .p-card-first .p-card__figure {
        width: 58.10811%
    }

    .p-card-first .p-card__info {
        flex: 1;
        padding: 2em 1em 1em
    }

    .p-card-first .p-card__txt {
        margin-bottom: 3em;
        font-weight: 400;
        font-size: 1.3rem;
        line-height: 2
    }
}

@media screen and (max-width: 560px) {
    .p-card-first .p-card__txt {
        display:none
    }
}

@media screen and (min-width: 561px) {
    .p-card-next:nth-of-type(2n-1) {
        margin-right:0 !important
    }

    .p-card-next:nth-of-type(2n) {
        margin-right: 5.26316% !important
    }

    .p-card-next:nth-of-type(n+2) {
        margin-top: 40px
    }
}

.p-form--tel {
    border: 1px solid #000;
    background-color: #fff;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .p-form--tel {
        padding:50px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-form--tel {
        padding:30px
    }
}

@media screen and (max-width: 560px) {
    .p-form--tel {
        padding:20px 5%
    }
}

.p-form--tel-number a,.p-form--tel-number span {
    font-weight: 400
}

@media screen and (min-width: 1024px) {
    .p-form--tel-number a,.p-form--tel-number span {
        font-size:3.2rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-form--tel-number a,.p-form--tel-number span {
        font-size:3vw
    }
}

@media screen and (max-width: 560px) {
    .p-form--tel-number a,.p-form--tel-number span {
        font-size:2.2rem
    }
}

.p-form--tel__description {
    margin-top: 1em
}

.p-form-description {
    margin-top: -0.4375em;
    color: #333
}

@media screen and (min-width: 769px) {
    .p-form-description {
        line-height:1.875
    }
}

@media screen and (max-width: 768px) {
    .p-form-description {
        line-height:1.875
    }
}

@media screen and (min-width: 1024px) {
    .p-form-description {
        margin-bottom:42px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-form-description {
        margin-bottom:30px
    }
}

@media screen and (max-width: 560px) {
    .p-form-description {
        margin-bottom:20px
    }
}

.p-form-description .p-form-required {
    position: relative !important;
    top: auto !important;
    right: auto !important;
    display: inline-block;
    text-align: center;
    padding-top: .2em
}

.p-form-color {
    color: #b80000 !important;
    text-decoration: underline
}

input,button,textarea,select {
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    box-sizing: border-box;
    cursor: pointer
}

input:disabled,button:disabled,textarea:disabled,select:disabled {
    opacity: .4
}

input,textarea {
    transition: all 260ms cubic-bezier(0.215, 0.61, 0.355, 1)
}

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

select::-moz-focusring {
    color: transparent;
    text-shadow: 0 0 0 #fff
}

textarea {
    resize: none;
    overflow: auto
}

[type="text"],[type="email"],[type="tel"],select,option,textarea,.js-form-dummy-textarea {
    width: 100%;
    background-color: #f5f5f5;
    border: solid 1px #b4b4b4;
    color: #646464;
    font-family: "æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“", "Yu Gothic", YuGothic, "ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro", "Hiragino Kaku Gothic Pro", "ãƒ¡ã‚¤ãƒªã‚ª", Meiryo, sans-serif;
    word-break: break-all
}

@media screen and (min-width: 1024px) {
    [type="text"],[type="email"],[type="tel"],select,option,textarea,.js-form-dummy-textarea {
        font-size:1.6rem;
        padding: 12px 16px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    [type="text"],[type="email"],[type="tel"],select,option,textarea,.js-form-dummy-textarea {
        font-size:1.4rem;
        padding: 10px 14px
    }
}

@media screen and (max-width: 560px) {
    [type="text"],[type="email"],[type="tel"],select,option,textarea,.js-form-dummy-textarea {
        font-size:1.3rem;
        padding: 8px 10px
    }
}

[type="text"]:placeholder-shown,[type="email"]:placeholder-shown,[type="tel"]:placeholder-shown,select:placeholder-shown,option:placeholder-shown,textarea:placeholder-shown,.js-form-dummy-textarea:placeholder-shown {
    color: #666
}

[type="text"]::-webkit-input-placeholder,[type="email"]::-webkit-input-placeholder,[type="tel"]::-webkit-input-placeholder,select::-webkit-input-placeholder,option::-webkit-input-placeholder,textarea::-webkit-input-placeholder,.js-form-dummy-textarea::-webkit-input-placeholder {
    color: #666
}

[type="text"]:-moz-placeholder,[type="email"]:-moz-placeholder,[type="tel"]:-moz-placeholder,select:-moz-placeholder,option:-moz-placeholder,textarea:-moz-placeholder,.js-form-dummy-textarea:-moz-placeholder {
    opacity: 1;
    color: #666
}

[type="text"]::-moz-placeholder,[type="email"]::-moz-placeholder,[type="tel"]::-moz-placeholder,select::-moz-placeholder,option::-moz-placeholder,textarea::-moz-placeholder,.js-form-dummy-textarea::-moz-placeholder {
    opacity: 1;
    color: #666
}

[type="text"]:-ms-input-placeholder,[type="email"]:-ms-input-placeholder,[type="tel"]:-ms-input-placeholder,select:-ms-input-placeholder,option:-ms-input-placeholder,textarea:-ms-input-placeholder,.js-form-dummy-textarea:-ms-input-placeholder {
    color: #666
}

[type="text"]:focus,[type="email"]:focus,[type="tel"]:focus,select:focus,option:focus,textarea:focus,.js-form-dummy-textarea:focus {
    background-color: #fff;
    border-color: #000
}

input:-webkit-autofill,select:-webkit-autofill,option:-webkit-autofill {
    -webkit-text-fill-color: #646464 !important;
    -webkit-box-shadow: 0 0 0px 1000px #f5f5f5 inset
}

@media screen and (min-width: 769px) {
    .p-form-checkbox,.p-form-radio {
        margin-top:-22px
    }
}

@media screen and (max-width: 768px) {
    .p-form-checkbox,.p-form-radio {
        margin-top:-18px
    }
}

.p-form-checkbox [type="checkbox"],.p-form-checkbox [type="radio"],.p-form-radio [type="checkbox"],.p-form-radio [type="radio"] {
    display: none
}

.p-form-checkbox [type="checkbox"]:checked+.wpcf7-list-item-label::after,.p-form-checkbox [type="radio"]:checked+.wpcf7-list-item-label::after,.p-form-radio [type="checkbox"]:checked+.wpcf7-list-item-label::after,.p-form-radio [type="radio"]:checked+.wpcf7-list-item-label::after {
    opacity: 1
}

.p-form-checkbox .wpcf7-form-control,.p-form-radio .wpcf7-form-control {
    display: flex;
    flex-wrap: wrap
}

.p-form-checkbox label,.p-form-radio label {
    margin-bottom: 0 !important
}

.p-form-checkbox .wpcf7-list-item,.p-form-radio .wpcf7-list-item {
    display: block
}

@media screen and (min-width: 769px) {
    .p-form-checkbox .wpcf7-list-item,.p-form-radio .wpcf7-list-item {
        margin-top:22px
    }
}

@media screen and (max-width: 768px) {
    .p-form-checkbox .wpcf7-list-item,.p-form-radio .wpcf7-list-item {
        margin-top:18px
    }
}

.p-form-checkbox .wpcf7-list-item-label,.p-form-radio .wpcf7-list-item-label {
    position: relative;
    padding-left: 27px
}

.p-form-checkbox .wpcf7-list-item-label::before,.p-form-checkbox .wpcf7-list-item-label::after,.p-form-radio .wpcf7-list-item-label::before,.p-form-radio .wpcf7-list-item-label::after {
    content: '';
    display: block;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

.p-form-checkbox .wpcf7-list-item-label::before,.p-form-radio .wpcf7-list-item-label::before {
    width: 16px;
    height: 16px;
    background-color: #fff;
    border: solid 1px #b4b4b4;
    position: absolute;
    left: 0
}

.p-form-checkbox .wpcf7-list-item-label::after,.p-form-radio .wpcf7-list-item-label::after {
    opacity: 0;
    transition: opacity 100ms linear
}

@media screen and (min-width: 1024px) {
    .p-form-checkbox .wpcf7-list-item {
        min-width:190px
    }
}

@media screen and (max-width: 1040px) {
    .p-form-checkbox .wpcf7-list-item {
        width:100%
    }
}

.p-form-checkbox .wpcf7-list-item-label {
    position: relative;
    padding-left: 27px
}

.p-form-checkbox .wpcf7-list-item-label::after {
    width: 8px;
    height: 13px;
    border-right: solid 3px #b80000;
    border-bottom: solid 3px #b80000;
    -webkit-transform: translateY(-62%) rotate(45deg);
    transform: translateY(-62%) rotate(45deg);
    left: 6px
}

@media screen and (min-width: 1024px) {
    .p-form-radio .wpcf7-list-item:not(:last-of-type) {
        margin-right:35px
    }
}

@media screen and (max-width: 1023px) {
    .p-form-radio .wpcf7-list-item:not(:last-of-type) {
        margin-right:30px
    }
}

@media screen and (min-width: 1024px) {
    .p-form-radio .wpcf7-list-item {
        min-width:125px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-form-radio .wpcf7-list-item {
        min-width:115px
    }
}

@media screen and (max-width: 560px) {
    .p-form-radio .wpcf7-list-item {
        min-width:100px
    }
}

.p-form-radio .wpcf7-list-item-label::before,.p-form-radio .wpcf7-list-item-label::after {
    border-radius: 50%
}

.p-form-radio .wpcf7-list-item-label::after {
    width: 10px;
    height: 10px;
    background-color: #1aa7c7;
    left: 3px
}

.p-form-select {
    position: relative;
    width: 100%
}

.p-form-select::before {
    content: '';
    display: block;
    border-right: solid 2px #646464;
    border-bottom: solid 2px #646464;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    position: absolute;
    right: 13px;
    z-index: 1
}

@media screen and (min-width: 1024px) {
    .p-form-select::before {
        width:12px;
        height: 12px;
        top: 15px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-form-select::before {
        width:10px;
        height: 10px;
        top: 15px
    }
}

@media screen and (max-width: 560px) {
    .p-form-select::before {
        width:8px;
        height: 8px;
        top: 13px
    }
}

.p-form-select--246 {
    max-width: 246px
}

.p-form-select--166 {
    max-width: 166px
}

.p-form-select--96 {
    width: 96px
}

.p-form-select--76 {
    width: 76px;
    min-width: 76px
}

@media screen and (min-width: 1024px) {
    .p-form-selects {
        display:flex;
        flex-wrap: wrap
    }
}

.p-form-select--block {
    display: flex;
    align-items: center
}

@media screen and (min-width: 1024px) {
    .p-form-select--block:not(:last-of-type) {
        margin-right:25px
    }
}

@media screen and (max-width: 1023px) {
    .p-form-select--block:not(:last-of-type) {
        margin-bottom:10px
    }
}

.p-form-select--block .p-form-select {
    margin-right: 10px
}

@media screen and (max-width: 1023px) {
    .p-form-select--block .p-form-select {
        width:166px
    }
}

.p-form-btn {
    display: flex;
    align-items: center;
    justify-content: center
}

.p-form-btn span {
    display: block;
    position: relative
}

.p-form-btn input {
    position: absolute;
    top: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 100%;
    z-index: 100;
    opacity: 0;
    border-radius: 100px
}

.p-form-btn input:disabled {
    cursor: not-allowed
}

.p-form-btn .ajax-loader {
    display: none !important
}

.p-form-confirm {
    margin: 0
}

.p-form-back,.p-form-submit {
    width: 49%
}

.p-form-back {
    margin-right: 20px
}

.p-form .wpcf7-not-valid-tip {
    line-height: 1.7em;
    margin-top: .5em;
    font-size: 1.2rem
}

.p-form-prog {
    display: flex;
    align-items: center;
    justify-content: space-between;
    max-width: 400px;
    width: 90%
}

@media screen and (min-width: 1024px) {
    .p-form-prog {
        margin:0 auto 80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-form-prog {
        margin:0 auto 60px
    }
}

@media screen and (max-width: 560px) {
    .p-form-prog {
        margin:0 auto 50px
    }
}

.p-form-prog li {
    position: relative;
    opacity: .2
}

@media screen and (min-width: 1024px) {
    .p-form-prog li {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-form-prog li {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .p-form-prog li {
        font-size:1.3rem
    }
}

.p-form-prog li:not(:first-child)::before {
    content: '';
    background-image: url("/assets/img/common/icon/icon_arrow_black_r.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media screen and (min-width: 561px) {
    .p-form-prog li:not(:first-child)::before {
        width:34px;
        height: 6px;
        left: -82px
    }
}

@media screen and (max-width: 560px) {
    .p-form-prog li:not(:first-child)::before {
        width:27.2px;
        height: 4.8px;
        left: -14vw
    }
}

.p-form-table {
    border-top: dotted 1px #999
}

@media screen and (min-width: 1024px) {
    .p-form-table {
        margin-bottom:57px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-form-table {
        margin-bottom:45px
    }
}

@media screen and (max-width: 560px) {
    .p-form-table {
        margin-bottom:35px
    }
}

.p-form-table dl {
    border-bottom: dotted 1px #999
}

@media screen and (min-width: 769px) {
    .p-form-table dl {
        display:flex;
        align-items: center;
        justify-content: space-between;
        padding: 30px 20px
    }
}

@media screen and (max-width: 768px) {
    .p-form-table dl {
        padding:20px 10px
    }
}

.p-form-table dt,.p-form-table dd {
    line-height: 1
}

.p-form-table dt {
    position: relative;
    font-weight: bold;
    color: #333
}

@media screen and (min-width: 769px) {
    .p-form-table dt {
        width:230px;
        margin-right: 47px
    }
}

@media screen and (min-width: 1024px) {
    .p-form-table dt {
        width:260px;
        padding-left: 10px;
        padding-top: 12px
    }
}

@media screen and (max-width: 768px) {
    .p-form-table dt {
        margin-bottom:15px
    }
}

.p-form-table dd {
    color: #646464
}

@media screen and (min-width: 769px) {
    .p-form-table dd {
        flex:1
    }
}

.p-form-small {
    display: block;
    color: #646464;
    font-weight: 500
}

@media screen and (min-width: 769px) {
    .p-form-small {
        font-size:1.2rem;
        margin-top: 12px
    }
}

@media screen and (max-width: 768px) {
    .p-form-small {
        font-size:1.1rem;
        margin-top: 7px
    }
}

.p-form-required {
    position: absolute;
    top: -2px;
    right: 0;
    display: flex;
    align-items: center;
    justify-content: center;
    background-color: #b80000;
    color: #fff;
    font-weight: 500;
    letter-spacing: 0
}

@media screen and (min-width: 769px) {
    .p-form-required {
        width:40px;
        height: 20px;
        font-size: 1.3rem
    }
}

@media screen and (max-width: 768px) {
    .p-form-required {
        width:34px;
        height: 18px;
        font-size: 1.1rem
    }
}

@media screen and (min-width: 769px) {
    .p-form-required--center {
        top:50%;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%)
    }
}

@media screen and (min-width: 769px) {
    .p-form-table__top {
        align-items:flex-start !important
    }
}

@media screen and (min-width: 1024px) {
    .p-form-table__top .p-form-required {
        top:12px
    }
}

@media screen and (min-width: 1024px) {
    .p-form-column {
        display:flex
    }
}

@media screen and (max-width: 1023px) {
    .p-form-column>*:not(:last-of-type) {
        margin-bottom:15px
    }
}

@media screen and (min-width: 1024px) {
    .p-form-column--margin {
        margin-bottom:20px
    }
}

@media screen and (max-width: 1023px) {
    .p-form-column--margin {
        margin-bottom:15px
    }
}

@media screen and (min-width: 1024px) {
    .p-form-column__cell {
        width:140px
    }
}

@media screen and (max-width: 1023px) {
    .p-form-column__cell {
        width:166px
    }
}

@media screen and (min-width: 1024px) {
    .p-form-column__cell:not(:last-of-type) {
        margin-right:12px
    }
}

.p-form-column__title {
    display: block;
    font-size: 1.2rem;
    margin-bottom: 10px
}

@media screen and (min-width: 1024px) {
    .p-form-material-type .wpcf7-list-item:nth-of-type(2) {
        order:0
    }

    .p-form-material-type .wpcf7-list-item:nth-of-type(3) {
        order: 2
    }

    .p-form-material-type .wpcf7-list-item:nth-of-type(4) {
        order: 1
    }

    .p-form-material-type .wpcf7-list-item:nth-of-type(5) {
        order: 3
    }
}

.p-form-course:not(.is-de) {
    display: none
}

.p-form-school-name:not(.is-student) {
    display: none
}

.p-form-policy {
    color: #787878
}

@media screen and (min-width: 769px) {
    .p-form-policy {
        text-align:center
    }
}

@media screen and (min-width: 1024px) {
    .p-form-policy {
        font-size:1.5rem;
        margin-bottom: 50px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-form-policy {
        margin-bottom:40px
    }
}

@media screen and (max-width: 560px) {
    .p-form-policy {
        margin-bottom:30px
    }
}

.p-form-policy__check {
    display: block;
    margin-top: 15px
}

.p-form-policy__check,.p-form-policy__check a {
    font-weight: bold;
    color: #646464
}

@media screen and (min-width: 1024px) {
    .p-form-policy__check,.p-form-policy__check a {
        font-size:1.6rem
    }
}

.p-form-policy__check .wpcf7-form-control {
    justify-content: center
}

.p-form-policy__check .wpcf7-list-item label {
    justify-content: center
}

.p-form-policy__check a {
    line-height: 1;
    text-decoration: underline
}

.p-form-policy__check a.is-hover:hover {
    text-decoration: none
}

@media screen and (max-width: 768px) {
    .p-form-policy__check .wpcf7-list-item-label {
        line-height:1.5
    }
}

[data-state="1"] .p-form-back,[data-state="1"] .p-form-submit {
    display: none
}

[data-state="1"] .p-form-prog li:nth-child(1) {
    opacity: 1;
    text-decoration: underline
}

[data-state="2"] .p-form-confirm {
    display: none
}

[data-state="2"] .p-form-table dt,[data-state="2"] .p-form-table dd,[data-state="2"] [type="text"],[data-state="2"] [type="text"],[data-state="2"] [type="email"],[data-state="2"] [type="tel"],[data-state="2"] select,[data-state="2"] option,[data-state="2"] textarea,[data-state="2"] .js-form-dummy-textarea {
    color: #646464 !important
}

[data-state="2"] [type="text"],[data-state="2"] [type="email"],[data-state="2"] [type="tel"],[data-state="2"] select,[data-state="2"] option,[data-state="2"] textarea,[data-state="2"] .js-form-dummy-textarea,[data-state="2"] input:-webkit-autofill,[data-state="2"] select:-webkit-autofill,[data-state="2"] option:-webkit-autofill {
    border-color: #fff !important;
    background-color: #fff !important;
    padding: 0 !important;
    opacity: 1;
    -webkit-box-shadow: 0 0 0px 1000px #fff inset !important
}

[data-state="2"] [type="text"]:placeholder-shown,[data-state="2"] [type="email"]:placeholder-shown,[data-state="2"] [type="tel"]:placeholder-shown,[data-state="2"] select:placeholder-shown,[data-state="2"] option:placeholder-shown,[data-state="2"] textarea:placeholder-shown,[data-state="2"] .js-form-dummy-textarea:placeholder-shown,[data-state="2"] input:-webkit-autofill:placeholder-shown,[data-state="2"] select:-webkit-autofill:placeholder-shown,[data-state="2"] option:-webkit-autofill:placeholder-shown {
    color: transparent !important
}

[data-state="2"] [type="text"]::-webkit-input-placeholder,[data-state="2"] [type="email"]::-webkit-input-placeholder,[data-state="2"] [type="tel"]::-webkit-input-placeholder,[data-state="2"] select::-webkit-input-placeholder,[data-state="2"] option::-webkit-input-placeholder,[data-state="2"] textarea::-webkit-input-placeholder,[data-state="2"] .js-form-dummy-textarea::-webkit-input-placeholder,[data-state="2"] input:-webkit-autofill::-webkit-input-placeholder,[data-state="2"] select:-webkit-autofill::-webkit-input-placeholder,[data-state="2"] option:-webkit-autofill::-webkit-input-placeholder {
    color: transparent !important
}

[data-state="2"] [type="text"]:-moz-placeholder,[data-state="2"] [type="email"]:-moz-placeholder,[data-state="2"] [type="tel"]:-moz-placeholder,[data-state="2"] select:-moz-placeholder,[data-state="2"] option:-moz-placeholder,[data-state="2"] textarea:-moz-placeholder,[data-state="2"] .js-form-dummy-textarea:-moz-placeholder,[data-state="2"] input:-webkit-autofill:-moz-placeholder,[data-state="2"] select:-webkit-autofill:-moz-placeholder,[data-state="2"] option:-webkit-autofill:-moz-placeholder {
    opacity: 1;
    color: transparent !important
}

[data-state="2"] [type="text"]::-moz-placeholder,[data-state="2"] [type="email"]::-moz-placeholder,[data-state="2"] [type="tel"]::-moz-placeholder,[data-state="2"] select::-moz-placeholder,[data-state="2"] option::-moz-placeholder,[data-state="2"] textarea::-moz-placeholder,[data-state="2"] .js-form-dummy-textarea::-moz-placeholder,[data-state="2"] input:-webkit-autofill::-moz-placeholder,[data-state="2"] select:-webkit-autofill::-moz-placeholder,[data-state="2"] option:-webkit-autofill::-moz-placeholder {
    opacity: 1;
    color: transparent !important
}

[data-state="2"] [type="text"]:-ms-input-placeholder,[data-state="2"] [type="email"]:-ms-input-placeholder,[data-state="2"] [type="tel"]:-ms-input-placeholder,[data-state="2"] select:-ms-input-placeholder,[data-state="2"] option:-ms-input-placeholder,[data-state="2"] textarea:-ms-input-placeholder,[data-state="2"] .js-form-dummy-textarea:-ms-input-placeholder,[data-state="2"] input:-webkit-autofill:-ms-input-placeholder,[data-state="2"] select:-webkit-autofill:-ms-input-placeholder,[data-state="2"] option:-webkit-autofill:-ms-input-placeholder {
    color: transparent !important
}

[data-state="2"] .p-form-checkbox,[data-state="2"] .p-form-radio {
    margin: 0
}

[data-state="2"] .p-form-checkbox .wpcf7-form-control,[data-state="2"] .p-form-radio .wpcf7-form-control {
    display: block
}

[data-state="2"] .p-form-checkbox .wpcf7-list-item-label,[data-state="2"] .p-form-radio .wpcf7-list-item-label {
    padding-left: 0
}

[data-state="2"] .p-form-checkbox .wpcf7-list-item-label::before,[data-state="2"] .p-form-checkbox .wpcf7-list-item-label after,[data-state="2"] .p-form-radio .wpcf7-list-item-label::before,[data-state="2"] .p-form-radio .wpcf7-list-item-label after {
    opacity: 0
}

[data-state="2"] .p-form-select::before {
    display: none
}

[data-state="2"] .p-form-select--166,[data-state="2"] .p-form-select--96,[data-state="2"] .p-form-select--76 {
    width: auto !important;
    min-width: 3em !important
}

@media screen and (min-width: 1024px) {
    [data-state="2"] .p-form-table__top {
        align-items:baseline !important
    }
}

[data-state="2"] .p-form-prog li:nth-child(2) {
    opacity: 1;
    text-decoration: underline
}

@media screen and (min-width: 769px) {
    .p-point__section {
        display:flex;
        justify-content: space-between
    }

    .p-point__section:nth-of-type(2n-1) {
        flex-direction: row-reverse
    }
}

@media screen and (min-width: 1024px) {
    .p-point__section:not(:last-of-type) {
        margin-bottom:100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-point__section:not(:last-of-type) {
        margin-bottom:60px
    }
}

@media screen and (max-width: 560px) {
    .p-point__section:not(:last-of-type) {
        margin-bottom:40px
    }
}

@media screen and (min-width: 769px) {
    .p-point__section__reverse {
        flex-direction:row !important
    }
}

@media screen and (min-width: 769px) {
    .p-point__text {
        width:55%
    }
}

@media screen and (min-width: 1024px) {
    .p-point__text {
        width:48.13953%
    }
}

@media screen and (max-width: 1023px) {
    .p-point__text {
        margin-bottom:26px
    }
}

@media screen and (max-width: 560px) {
    .p-point__text {
        margin-bottom:20px
    }
}

@media screen and (min-width: 1024px) {
    .p-point__point {
        margin-bottom:26px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-point__point {
        margin-bottom:10px
    }
}

@media screen and (max-width: 560px) {
    .p-point__point {
        margin-bottom:6px
    }
}

.p-point__title {
    font-weight: bold;
    line-height: 1.66667;
    color: #333
}

@media screen and (min-width: 1024px) {
    .p-point__title {
        font-size:2.6rem;
        margin-bottom: 13px
    }
}

@media screen and (min-width: 1280px) {
    .p-point__title {
        font-size:3.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-point__title {
        font-size:2.2rem;
        margin-bottom: 12px
    }
}

@media screen and (max-width: 560px) {
    .p-point__title {
        font-size:1.6rem;
        margin-bottom: 10px
    }
}

@media screen and (min-width: 769px) {
    .p-point__figure {
        width:40%;
        padding-top: 20px
    }
}

@media screen and (min-width: 1024px) {
    .p-point__figure {
        width:41.86047%;
        padding-top: 40px
    }
}

.p-point__figure img {
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.045)
}

.p-read {
    max-width: 930px;
    width: 90%;
    margin-right: auto;
    margin-left: auto
}

@media screen and (min-width: 1024px) {
    .p-read {
        margin-bottom:70px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-read {
        margin-bottom:50px
    }
}

@media screen and (max-width: 560px) {
    .p-read {
        margin-bottom:40px
    }
}

.p-read__title {
    text-align: center;
    font-weight: bold;
    line-height: 1.66667;
    margin-bottom: 1em
}

@media screen and (min-width: 1024px) {
    .p-read__title {
        font-size:3.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .p-read__title {
        font-size:2.4rem
    }
}

@media screen and (max-width: 560px) {
    .p-read__title {
        font-size:1.8rem
    }
}

@media screen and (max-width: 414px) {
    .p-read__title {
        font-size:calc( 1.0rem + 1.8vw)
    }
}

.p-thanks .p-form-prog li {
    opacity: 1
}

.p-thanks .p-form-prog li:nth-child(3) {
    text-decoration: underline
}

.p-thanks__paragraph {
    color: #333;
    max-width: 640px;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .p-thanks__paragraph {
        margin:0 auto 43px
    }
}

@media screen and (max-width: 1023px) {
    .p-thanks__paragraph {
        margin:0 auto 25px
    }
}

.u-bg-white {
    background-color: #fff
}

.u-bg-black-2 {
    background-color: #333
}

.u-bg-gray {
    background-color: #f5f5f5
}

.u-bg-orange {
    background-color: #f18826
}

.u-bg-gray-6 {
    background-color: #4d4d4d
}

.u-bg-green {
    background-color: #64aa32
}

.u-bg-purple {
    background-color: #b067b3
}

.u-bg-blue-3 {
    background-color: #54bdc3
}

.u-bg-blue-4 {
    background-color: #009ab7
}

.u-bg-pink-5 {
    background-color: #ff9d95
}

.u-bg-pink-3 {
    background-color: #f5d7e1
}

.u-bg-blue-5-1_90 {
    background-image: linear-gradient(90deg, #b3e2dc, #05aadc)
}

.u-bg-blue-5-2_90 {
    background-image: linear-gradient(90deg, #b3e2dc, #1aa7c7)
}

.u-bg-blue-3-2_90 {
    background-image: linear-gradient(90deg, #54bdc3, #1aa7c7)
}

.u-bg-blue-3-2_45 {
    background-image: linear-gradient(45deg, #54bdc3, #1aa7c7)
}

.u-bg-pink-5-6_90 {
    background-image: linear-gradient(90deg, #ff9d95, #fc7871)
}

.u-bg-pink-3-6_90 {
    background-image: linear-gradient(90deg, #f5d7e1, #fc7871)
}

.u-bg-pink-3-6_45 {
    background-image: linear-gradient(45deg, #f5d7e1, #fc7871)
}

.u-bg-orange-2-3_90 {
    background-image: linear-gradient(45deg, #ffb167, #ff9026)
}

.u-bg-green-2-1_90 {
    background-image: linear-gradient(45deg, #92c36f, #64aa32)
}

.u-bg-purple-6-1_90 {
    background-image: linear-gradient(45deg, #c895ca, #b067b3)
}

.u-ib {
    display: inline-block
}

.u-n {
    display: none
}

@media screen and (min-width: 1280px) {
    .u-n-mqUp-xl {
        display:none
    }
}

@media screen and (min-width: 1024px) {
    .u-n-mqUp-lg {
        display:none
    }
}

@media screen and (min-width: 769px) {
    .u-n-mqUp-md {
        display:none
    }
}

@media screen and (min-width: 561px) {
    .u-n-mqUp-sm {
        display:none
    }
}

@media screen and (min-width: 415px) {
    .u-n-mqUp-xs {
        display:none
    }
}

@media screen and (min-width: 321px) {
    .u-n-mqUp-ss {
        display:none
    }
}

@media screen and (max-width: 1279px) {
    .u-n-mqDown-xl {
        display:none
    }
}

@media screen and (max-width: 1023px) {
    .u-n-mqDown-lg {
        display:none
    }
}

@media screen and (max-width: 768px) {
    .u-n-mqDown-md {
        display:none
    }
}

@media screen and (max-width: 560px) {
    .u-n-mqDown-sm {
        display:none
    }
}

@media screen and (max-width: 414px) {
    .u-n-mqDown-xs {
        display:none
    }
}

@media screen and (max-width: 320px) {
    .u-n-mqDown-ss {
        display:none
    }
}

@media screen and (min-width: 1024px) {
    .u-f-order-1-mqUp {
        order:1
    }
}

@media screen and (min-width: 1024px) {
    .u-f-order-2-mqUp {
        order:2
    }
}

@media screen and (min-width: 1024px) {
    .u-f-order-3-mqUp {
        order:3
    }
}

@media screen and (min-width: 1024px) {
    .u-f-order-4-mqUp {
        order:4
    }
}

@media screen and (min-width: 1024px) {
    .u-f-order-5-mqUp {
        order:5
    }
}

@media screen and (min-width: 1024px) {
    .u-f-order-6-mqUp {
        order:6
    }
}

@media screen and (min-width: 1024px) {
    .u-f-order-7-mqUp {
        order:7
    }
}

@media screen and (min-width: 1024px) {
    .u-f-order-8-mqUp {
        order:8
    }
}

@media screen and (min-width: 1024px) {
    .u-f-order-9-mqUp {
        order:9
    }
}

.u-font-inherit {
    color: inherit !important
}

.u-font-white {
    color: #fff
}

.u-font-black {
    color: #000
}

.u-font-black-2 {
    color: #333
}

.u-font-black-3 {
    color: #646464
}

.u-font-blue-2 {
    color: #1aa7c7
}

.u-font-blue-4 {
    color: #009ab7
}

.u-font-pink-4 {
    color: #f26f78
}

.u-font-orange-3 {
    color: #ff9026
}

.u-font-bold {
    font-weight: bold
}

.u-pointerevent-none {
    pointer-events: none
}

.u-p-relative {
    position: relative
}

.u-p-absolute {
    position: absolute
}

.u-p-relative-0 {
    position: relative;
    z-index: 0
}

.u-p-relative-1 {
    position: relative;
    z-index: 1
}

.u-p-relative-2 {
    position: relative;
    z-index: 2
}

.u-t-underline {
    text-decoration: underline
}

.u-t-center {
    text-align: center
}

.u-t-justify {
    text-align: justify
}

.js-empty {
    display: none !important
}

.js-delay-1 {
    transition-delay: 100ms !important
}

.js-delay-2 {
    transition-delay: 200ms !important
}

.js-delay-3 {
    transition-delay: 300ms !important
}

.js-delay-4 {
    transition-delay: 400ms !important
}

.js-delay-5 {
    transition-delay: 500ms !important
}

.js-delay-6 {
    transition-delay: 600ms !important
}

.js-delay-7 {
    transition-delay: 700ms !important
}

.js-delay-8 {
    transition-delay: 800ms !important
}

.js-delay-9 {
    transition-delay: 900ms !important
}

.js-delay-10 {
    transition-delay: 1000ms !important
}

.js-delay-11 {
    transition-delay: 1100ms !important
}

.js-delay-12 {
    transition-delay: 1200ms !important
}

.js-delay-13 {
    transition-delay: 1300ms !important
}

.js-delay-14 {
    transition-delay: 1400ms !important
}

.js-delay-15 {
    transition-delay: 1500ms !important
}

.js-delay-16 {
    transition-delay: 1600ms !important
}

.js-delay-17 {
    transition-delay: 1700ms !important
}

.js-delay-18 {
    transition-delay: 1800ms !important
}

.js-delay-19 {
    transition-delay: 1900ms !important
}

.js-delay-20 {
    transition-delay: 2000ms !important
}

body.is-load .js-delayAnchor {
    opacity: 1
}

.js-delayAnchor {
    opacity: 0;
    transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

.js-fadeIn {
    opacity: 0;
    -webkit-transform: translate3d(0, 50px, 0);
    transform: translate3d(0, 50px, 0);
    transition: 1200ms 300ms cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-property: opacity,-webkit-transform;
    transition-property: opacity,transform;
    transition-property: opacity,transform,-webkit-transform
}

.is-shown.js-fadeIn,.is-shown .js-fadeIn {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.js-fadeIn-opa {
    opacity: 0;
    transition: 1200ms 500ms cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-property: opacity
}

.is-shown.js-fadeIn-opa,.is-shown .js-fadeIn-opa {
    opacity: 1
}

.js-fadeIns>* {
    opacity: 0;
    -webkit-transform: translate3d(0, 50px, 0);
    transform: translate3d(0, 50px, 0);
    transition: 1200ms cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-property: opacity,-webkit-transform;
    transition-property: opacity,transform;
    transition-property: opacity,transform,-webkit-transform
}

.js-fadeIns>*:nth-child(1) {
    transition-delay: 100ms
}

.js-fadeIns>*:nth-child(2) {
    transition-delay: 200ms
}

.js-fadeIns>*:nth-child(3) {
    transition-delay: 300ms
}

.js-fadeIns>*:nth-child(4) {
    transition-delay: 400ms
}

.js-fadeIns>*:nth-child(5) {
    transition-delay: 500ms
}

.js-fadeIns>*:nth-child(6) {
    transition-delay: 600ms
}

.js-fadeIns>*:nth-child(7) {
    transition-delay: 700ms
}

.js-fadeIns>*:nth-child(8) {
    transition-delay: 800ms
}

.js-fadeIns>*:nth-child(9) {
    transition-delay: 900ms
}

.js-fadeIns>*:nth-child(10) {
    transition-delay: 1000ms
}

.js-fadeIns>*:nth-child(11) {
    transition-delay: 1100ms
}

.js-fadeIns>*:nth-child(12) {
    transition-delay: 1200ms
}

.js-fadeIns>*:nth-child(13) {
    transition-delay: 1300ms
}

.js-fadeIns>*:nth-child(14) {
    transition-delay: 1400ms
}

.js-fadeIns>*:nth-child(15) {
    transition-delay: 1500ms
}

.js-fadeIns>*:nth-child(16) {
    transition-delay: 1600ms
}

.js-fadeIns>*:nth-child(17) {
    transition-delay: 1700ms
}

.js-fadeIns>*:nth-child(18) {
    transition-delay: 1800ms
}

.js-fadeIns>*:nth-child(19) {
    transition-delay: 1900ms
}

.js-fadeIns>*:nth-child(20) {
    transition-delay: 2000ms
}

.is-shown.js-fadeIns>* {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.js-lazyload {
    opacity: 0
}

.js-lazyload.is-set {
    opacity: 1;
    transition: opacity 200ms linear
}

.js-objectFit {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    position: absolute;
    top: 0;
    left: 0
}

.js-popup-body {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 1000000;
    width: 0;
    height: 100%;
    background-color: rgba(255,255,255,0.95);
    transition: width 420ms cubic-bezier(0.86, 0, 0.07, 1);
    transition-delay: 500ms;
    pointer-events: none
}

.js-popup-body.is-open {
    width: 100%;
    pointer-events: auto;
    transition-delay: 0ms;
    overflow: auto
}

.js-popup-body.is-open .js-popup-body__inner {
    opacity: 1;
    transition-delay: 540ms
}

.js-popup-body__inner {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    opacity: 0;
    transition: opacity 500ms ease;
    transition-delay: 0
}

.js-scaleIn {
    -webkit-transform: scale(0);
    transform: scale(0);
    transition: 800ms 200ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition-property: -webkit-transform;
    transition-property: transform;
    transition-property: transform, -webkit-transform
}

.is-shown.js-scaleIn,.is-shown .js-scaleIn {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.js-splitText,.js-splitIn {
    opacity: 0
}

.js-splitText.is-split,.js-splitIn.is-split {
    opacity: 1
}

.js-splitIn.is-shown .js-splitIn__text {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0)
}

.js-splitIn__cell {
    overflow: hidden
}

.js-splitIn__text {
    opacity: 0;
    -webkit-transform: translate3d(0, 1em, 0);
    transform: translate3d(0, 1em, 0);
    transition: 900ms cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-delay: 100ms;
    transition-property: opacity,-webkit-transform;
    transition-property: opacity,transform;
    transition-property: opacity,transform,-webkit-transform
}

.js-tabSwitch__content>*:not(.is-show) {
    display: none
}

@media screen and (min-width: 1024px) {
    .js-toggle-content-up {
        height:0;
        overflow: hidden;
        transition: height 300ms ease
    }
}

.grecaptcha-badge {
    opacity: 0;
    visibility: hidden
}

.wpcf7-not-valid-tip {
    line-height: 1.7em;
    margin-top: .5em;
    font-size: 1.6rem
}

div.wpcf7-mail-sent-ok,div.wpcf7-validation-errors {
    border: none !important;
    padding: 0;
    line-height: 1.7em;
    font-size: 1.6rem;
    text-align: center
}

div.wpcf7-response-output {
    color: red
}

@media screen and (max-width: 560px) {
    div.wpcf7-response-output {
        font-size:1.3rem
    }
}

span.wpcf7-list-item {
    margin-left: 0 !important
}

span.wpcf7-list-item label {
    display: flex;
    align-items: center;
    margin-bottom: 10px;
    cursor: pointer
}

.t-about-gmap {
    border: 1px solid #999
}

@media screen and (min-width: 1024px) {
    .t-about-gmap {
        height:320px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-about-gmap {
        height:220px
    }
}

@media screen and (max-width: 560px) {
    .t-about-gmap {
        height:150px
    }
}

.t-about-gmap iframe {
    width: 100%;
    height: 100%
}

.t-access-access__map h4 {
    font-weight: bold;
    color: #333;
    letter-spacing: .1em
}

@media screen and (min-width: 561px) {
    .t-access-access__map h4 {
        font-size:1.6rem
    }
}

@media screen and (min-width: 1024px) {
    .t-access-access__map h4 {
        margin-bottom:40px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-access-access__map h4 {
        margin-bottom:30px
    }
}

@media screen and (max-width: 560px) {
    .t-access-access__map h4 {
        font-size:1.4rem;
        margin-bottom: 20px
    }
}

.t-access-access__map figure {
    text-align: left
}

@media screen and (min-width: 1024px) {
    .t-access-access__table {
        margin-bottom:30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-access-access__table {
        margin-bottom:20px
    }
}

@media screen and (max-width: 560px) {
    .t-access-access__table {
        margin-bottom:15px
    }
}

.t-access-access__table dt,.t-access-access__table dd {
    color: #333
}

.t-access-access__table dt {
    position: relative;
    font-weight: bold
}

@media screen and (min-width: 1024px) {
    .t-access-access__table dt {
        padding-left:28px
    }
}

@media screen and (max-width: 1023px) {
    .t-access-access__table dt {
        padding-left:20px
    }
}

.t-access-access__table dt::before {
    content: '';
    display: block;
    background-position: 0 50%;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 0;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%)
}

@media screen and (min-width: 1024px) {
    .t-access-access__table dt::before {
        width:16px;
        height: 26px
    }
}

@media screen and (max-width: 1023px) {
    .t-access-access__table dt::before {
        width:12.8px;
        height: 20.8px
    }
}

.t-access-access__train dt::before {
    background-image: url("/assets/img/common/icon/train-blue.svg")
}

@media screen and (min-width: 1024px) {
    .t-access-access__train dt::before {
        background-size:15px 17px
    }
}

@media screen and (max-width: 1023px) {
    .t-access-access__train dt::before {
        background-size:12px 13.6px
    }
}

.t-access-access__walk dt::before {
    background-image: url("/assets/img/common/icon/walk-blue.svg")
}

@media screen and (min-width: 1024px) {
    .t-access-access__walk dt::before {
        background-size:13px 22px
    }
}

@media screen and (max-width: 1023px) {
    .t-access-access__walk dt::before {
        background-size:10.4px 17.6px
    }
}

.t-access-access__tram dt::before {
    background-image: url("/assets/img/common/icon/tram-blue.svg")
}

@media screen and (min-width: 1024px) {
    .t-access-access__tram dt::before {
        background-size:16px 26px
    }
}

@media screen and (max-width: 1023px) {
    .t-access-access__tram dt::before {
        background-size:12.8px 20.8px
    }
}

.t-access-access__btn {
    max-width: 250px;
    width: 100%;
    margin: 0 0 0 auto;
    line-height: 1
}

.t-access-access__btn a {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: row-reverse;
    width: 100%;
    height: 100%;
    background-color: #1aa7c7;
    color: #fff;
    line-height: 1;
    position: relative;
    overflow: hidden;
    z-index: 1
}

.t-access-access__btn a::after {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-color: rgba(51,51,51,0.1);
    opacity: 0;
    transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    pointer-events: none
}

.t-access-access__btn a.is-hover:hover {
    opacity: 1
}

.t-access-access__btn a.is-hover:hover::after {
    opacity: 1
}

@media screen and (min-width: 1024px) {
    .t-access-access__btn a {
        font-size:1.4rem;
        padding: 13px 0
    }
}

@media screen and (max-width: 1023px) {
    .t-access-access__btn a {
        font-size:1.2rem;
        padding: 10px 0
    }
}

.t-access-access__btn a::before {
    content: '';
    display: block;
    width: 12px;
    height: 10px;
    background-image: url("/assets/img/common/icon/blank-white.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    margin-left: 12px
}

@media screen and (min-width: 1024px) {
    .t-access-access__frame {
        width:calc(100% + 120px);
        margin-left: -60px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-access-access__frame {
        width:calc(100% + 80px);
        margin-left: -40px
    }
}

@media screen and (max-width: 560px) {
    .t-access-access__frame {
        width:calc(100% + 40px);
        margin-left: -20px
    }
}

.t-access-map__title {
    width: 100%;
    margin: 0 auto;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-access-map__title {
        max-width:504px;
        margin-bottom: 40px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-access-map__title {
        max-width:403.2px;
        margin-bottom: 32px
    }
}

@media screen and (max-width: 560px) {
    .t-access-map__title {
        max-width:302.4px;
        margin-bottom: 24px
    }
}

.t-access-map__paragraph {
    max-width: 654px;
    width: 100%;
    margin: 0 auto;
    color: #333
}

@media screen and (min-width: 1024px) {
    .t-access-map__paragraph {
        margin-bottom:70px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-access-map__paragraph {
        margin-bottom:40px
    }
}

@media screen and (max-width: 560px) {
    .t-access-map__paragraph {
        margin-bottom:20px
    }
}

.t-access-map__figure {
    max-width: 834px;
    width: 100%;
    margin: 0 auto
}

@media screen and (min-width: 1024px) {
    .t-access-object {
        top:-200px;
        left: -125px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-access-object {
        top:-120px;
        left: -75px
    }
}

@media screen and (max-width: 560px) {
    .t-access-object {
        top:-80px;
        left: -50px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-hero .l-hero__bg>div {
        width:130%;
        left: -30%
    }
}

.t-admission-hero .l-hero__circle {
    background-color: #ebc31e;
    color: #333
}

.t-admission-hero .l-hero__circle span:nth-of-type(1) {
    font-weight: bold;
    letter-spacing: .03em
}

@media screen and (min-width: 1024px) {
    .t-admission-hero .l-hero__circle span:nth-of-type(1) {
        font-size:2.6rem;
        margin-bottom: 12px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-hero .l-hero__circle span:nth-of-type(1) {
        font-size:1.6rem;
        margin-bottom: 8px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-hero .l-hero__circle span:nth-of-type(1) {
        font-size:1.4rem;
        margin-bottom: 5px
    }
}

.t-admission-hero .l-hero__circle span:nth-of-type(2) {
    letter-spacing: .01em
}

@media screen and (min-width: 1024px) {
    .t-admission-hero .l-hero__circle span:nth-of-type(2) {
        font-size:3.5rem;
        margin-bottom: 7px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-hero .l-hero__circle span:nth-of-type(2) {
        font-size:2.4rem;
        margin-bottom: 5px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-hero .l-hero__circle span:nth-of-type(2) {
        font-size:1.8rem;
        margin-bottom: 4px
    }
}

.t-admission-hero .l-hero__circle span:nth-of-type(3) {
    font-weight: bold;
    letter-spacing: .12em
}

@media screen and (min-width: 1024px) {
    .t-admission-hero .l-hero__circle span:nth-of-type(3) {
        font-size:1.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-hero .l-hero__circle span:nth-of-type(3) {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-admission-hero .l-hero__circle span:nth-of-type(3) {
        font-size:1.0rem
    }
}

.t-admission-nav {
    position: relative;
    z-index: 1;
    max-width: 960px;
    width: 90%;
    margin: 0 auto
}

@media screen and (min-width: 1024px) {
    .t-admission-nav {
        margin-top:-70px;
        margin-bottom: 55px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-nav {
        margin-top:-30px;
        margin-bottom: 40px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-nav {
        margin-top:-10px;
        margin-bottom: 30px
    }
}

.t-admission-nav ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center
}

.t-admission-nav li {
    display: flex;
    align-items: center;
    margin: 5px 0
}

.t-admission-nav li:not(:last-of-type)::after {
    content: '/';
    display: inline-block;
    vertical-align: middle;
    margin: 0 6px 0 4px
}

.t-admission-nav a {
    color: #646464;
    line-height: 1;
    letter-spacing: .15em;
    transition-property: background-size;
    background-image: linear-gradient(180deg, #646464, #646464);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 100% 100%
}

.t-admission-nav a.is-hover:hover {
    opacity: 1;
    background-size: 100% 1px;
    background-position: 0% 100%
}

@media screen and (min-width: 1024px) {
    .t-admission-nav a {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) {
    .t-admission-nav a {
        font-size:1.3rem
    }
}

@media screen and (min-width: 769px) {
    .t-admission-system__read {
        display:flex;
        flex-direction: row-reverse;
        align-items: flex-start;
        justify-content: space-between;
        margin-bottom: 60px
    }
}

@media screen and (max-width: 768px) {
    .t-admission-system__read {
        margin-bottom:40px
    }
}

@media screen and (min-width: 769px) {
    .t-admission-system__read__text {
        width:53.48837%
    }
}

@media screen and (max-width: 768px) {
    .t-admission-system__read__text {
        margin-bottom:20px
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-system__read__text h3 {
        margin-bottom:20px
    }
}

@media screen and (max-width: 1023px) {
    .t-admission-system__read__text h3 {
        margin-bottom:10px
    }
}

.t-admission-system__read__figure {
    position: relative
}

@media screen and (min-width: 769px) {
    .t-admission-system__read__figure {
        width:34.88372%
    }
}

@media screen and (max-width: 768px) {
    .t-admission-system__read__figure {
        max-width:300px;
        width: 100%;
        margin: 0 auto
    }
}

.t-admission-system__read__figure div {
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: #ebc31e;
    text-align: center;
    position: absolute
}

@media screen and (min-width: 1024px) {
    .t-admission-system__read__figure div {
        width:142px;
        height: 142px;
        padding-bottom: 2px;
        right: -40px;
        bottom: -20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-system__read__figure div {
        width:100px;
        height: 100px;
        right: -5%;
        bottom: -2%
    }
}

@media screen and (max-width: 560px) {
    .t-admission-system__read__figure div {
        width:80px;
        height: 80px;
        right: -4%;
        bottom: -2%
    }
}

.t-admission-system__read__figure p {
    border-bottom: solid 2px #333;
    font-weight: bold;
    line-height: 1;
    color: #333
}

@media screen and (min-width: 1024px) {
    .t-admission-system__read__figure p {
        font-size:1.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-system__read__figure p {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-admission-system__read__figure p {
        font-size:1.2rem
    }
}

.t-admission-system__read__figure p>span {
    display: block;
    letter-spacing: -.06em
}

@media screen and (min-width: 1024px) {
    .t-admission-system__read__figure p>span {
        font-size:1.7rem;
        margin-top: 10px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-system__read__figure p>span {
        font-size:1.3rem;
        margin-top: 6px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-system__read__figure p>span {
        font-size:1.1rem;
        margin-top: 5px
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-system__read__figure p>span span {
        font-size:5.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-system__read__figure p>span span {
        font-size:3.0rem;
        margin-right: 2px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-system__read__figure p>span span {
        font-size:2.2rem
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-system__table table {
        margin-bottom:12px
    }
}

.t-admission-system__table h3 {
    position: relative;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    line-height: 1;
    margin-bottom: 20px
}

@media screen and (min-width: 1024px) {
    .t-admission-system__table h3 {
        padding-right:185.6px
    }
}

@media screen and (min-width: 1280px) {
    .t-admission-system__table h3 {
        padding-right:232px
    }
}

.t-admission-system__table h3::before,.t-admission-system__table h3::after {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

.t-admission-system__table h3::before {
    background-image: url("../img/admission/system_table_img.jpg")
}

@media screen and (min-width: 1024px) {
    .t-admission-system__table h3::before {
        width:150.4px;
        height: 94.4px;
        margin-right: 35.2px
    }
}

@media screen and (min-width: 1280px) {
    .t-admission-system__table h3::before {
        width:188px;
        height: 118px;
        margin-right: 44px
    }
}

.t-admission-system__table h3::after {
    background-image: url("../img/admission/system_table_balloon.svg");
    position: absolute;
    right: 0;
    bottom: 0
}

@media screen and (min-width: 1024px) {
    .t-admission-system__table h3::after {
        width:116.8px;
        height: 96.8px
    }
}

@media screen and (min-width: 1280px) {
    .t-admission-system__table h3::after {
        width:146px;
        height: 121px
    }
}

.t-admission-system__table h3 span {
    display: block
}

@media screen and (min-width: 1024px) {
    .t-admission-system__table h3 span {
        padding-bottom:10px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-system__table h3 span {
        width:251.2px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-system__table h3 span {
        max-width:188.4px;
        width: 80%;
        margin: 0 auto
    }
}

.t-admission-system__contact {
    border-radius: 10px;
    background-color: #fffceb;
    background-image: repeating-linear-gradient(-45deg, rgba(255,255,255,0.3), rgba(255,255,255,0.3) 10px, #fffceb 0, #fffceb 20px)
}

@media screen and (min-width: 1024px) {
    .t-admission-system__contact {
        margin-top:20px;
        padding: 27px 30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-system__contact {
        margin-top:18px;
        padding: 20px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-system__contact {
        margin-top:15px;
        padding: 18px
    }
}

.t-admission-overview h3 {
    letter-spacing: .03em
}

@media screen and (min-width: 1024px) {
    .t-admission-overview h3 {
        font-size:3.8rem
    }
}

@media screen and (max-width: 560px) {
    .t-admission-overview h3 {
        font-size:calc( 1.0rem + 1.7vw)
    }
}

.t-admission-tuition__about {
    background-color: #d3a3d2;
    color: #fff
}

@media screen and (min-width: 1024px) {
    .t-admission-tuition__about {
        padding:10px;
        margin: 50px 0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-tuition__about {
        padding:8px;
        margin: 40px 0
    }
}

@media screen and (max-width: 560px) {
    .t-admission-tuition__about {
        padding:4px;
        margin: 30px 0 25px
    }
}

.t-admission-tuition__about div {
    border: solid 1px #fff
}

@media screen and (min-width: 1024px) {
    .t-admission-tuition__about div {
        padding:30px 55px 22px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-tuition__about div {
        padding:30px 20px 20px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-tuition__about div {
        padding:20px 20px 15px
    }
}

.t-admission-tuition__about h3 {
    text-align: center;
    font-weight: bold;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .t-admission-tuition__about h3 {
        font-size:1.8rem;
        margin-bottom: 15px
    }
}

@media screen and (max-width: 1023px) {
    .t-admission-tuition__about h3 {
        font-size:1.6rem;
        margin-bottom: 12px
    }
}

.t-admission-tuition__about__bold {
    text-align: center;
    font-weight: bold;
    letter-spacing: .13em;
    line-height: 1.875
}

@media screen and (min-width: 1024px) {
    .t-admission-tuition__about__bold {
        margin-bottom:10px
    }
}

@media screen and (max-width: 1023px) {
    .t-admission-tuition__about__bold {
        margin-bottom:12px
    }
}

.t-admission-tuition__about__bold span {
    border-bottom: solid 1px #fff;
    padding-bottom: 2px
}

@media screen and (max-width: 1023px) {
    .t-admission-tuition__about__bold br {
        display:none
    }
}

.t-admission-tuition__about__text {
    line-height: 1.64286
}

@media screen and (min-width: 1024px) {
    .t-admission-tuition__about__text {
        text-align:center;
        font-size: 1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-tuition__about__text {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-admission-tuition__about__text {
        font-size:1.2rem
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-tuition__point {
        margin-bottom:60px
    }
}

@media screen and (max-width: 1023px) {
    .t-admission-tuition__point {
        margin-bottom:40px
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-tuition__system {
        margin-bottom:60px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-tuition__system {
        margin-bottom:40px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-tuition__system {
        margin-bottom:30px
    }
}

.t-admission-tuition__test h3::before {
    background-image: url("../img/admission/system_icon_test.svg")
}

.t-admission-tuition__family h3::before {
    background-image: url("../img/admission/system_icon_family.svg")
}

@media screen and (min-width: 1024px) {
    .t-admission-tuition__benefit .p-point__title {
        font-size:2.2rem
    }
}

@media screen and (min-width: 1280px) {
    .t-admission-tuition__benefit .p-point__title {
        font-size:2.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-admission-tuition__benefit .p-point__title {
        font-size:1.6rem
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-tuition__benefit__system {
        margin-top:40px;
        padding-right: 15px;
        padding-left: 15px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-tuition__benefit__system {
        margin-top:30px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-tuition__benefit__system {
        margin-top:20px
    }
}

.t-admission-tuition__benefit__system h4::before {
    content: 'NEW';
    width: auto;
    height: auto;
    color: #646464;
    line-height: 1;
    top: -10px
}

@media screen and (min-width: 1024px) {
    .t-admission-tuition__benefit__system h4::before {
        font-size:2.2rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-tuition__benefit__system h4::before {
        font-size:1.8rem
    }
}

@media screen and (max-width: 560px) {
    .t-admission-tuition__benefit__system h4::before {
        font-size:1.6rem
    }
}

.t-admission-tuition__benefit__system h4 span {
    font-family: "æ¸¸ã‚´ã‚·ãƒƒã‚¯ä½“", "Yu Gothic", YuGothic, "ãƒ’ãƒ©ã‚®ãƒŽè§’ã‚´ Pro", "Hiragino Kaku Gothic Pro", "ãƒ¡ã‚¤ãƒªã‚ª", Meiryo, sans-serif
}

.t-admission-method__title {
    margin-bottom: 20px
}

@media screen and (min-width: 769px) {
    .t-admission-method__title {
        display:flex;
        justify-content: space-between
    }
}

.t-admission-method__title h3 {
    margin-bottom: 2px
}

@media screen and (min-width: 769px) {
    .t-admission-method__title__figure {
        width:19.30233%;
        margin-left: 20px
    }
}

@media screen and (min-width: 1280px) {
    .t-admission-method__title__figure {
        margin-right:20px
    }
}

@media screen and (max-width: 768px) {
    .t-admission-method__title__figure {
        display:none
    }
}

.t-admission-method__section {
    border-radius: 10px;
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.045);
    background-color: #fff
}

@media screen and (min-width: 1024px) {
    .t-admission-method__section {
        border:solid 3px #f5d7e1
    }
}

@media screen and (max-width: 1023px) {
    .t-admission-method__section {
        border:solid 2px #f5d7e1;
        margin-top: 10px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-method__section {
        padding:30px 20px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-method__section {
        padding:20px 15px 15px
    }
}

.t-admission-method__section__icon {
    display: flex;
    align-items: center;
    justify-content: center;
    flex: 1
}

.t-admission-method__section__icon::before {
    content: '';
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

.t-admission-method__section__title {
    color: #f26f78;
    font-weight: bold
}

.t-admission-method__section__title__num {
    display: inline-block;
    -webkit-transform: translateY(5%);
    transform: translateY(5%);
    margin-right: 5px
}

@media screen and (min-width: 561px) {
    .t-admission-method__section__title__num {
        font-size:3.0rem
    }
}

@media screen and (min-width: 1280px) {
    .t-admission-method__section__title__num {
        font-size:3.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-admission-method__section__title__num {
        font-size:2.0rem
    }
}

@media screen and (min-width: 561px) {
    .t-admission-method__section__title__text {
        font-size:2.0rem
    }
}

@media screen and (min-width: 1280px) {
    .t-admission-method__section__title__text {
        font-size:2.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-admission-method__section__title__text {
        font-size:1.6rem
    }
}

.t-admission-method__paragraph {
    line-height: 1.5;
    color: #787878
}

@media screen and (min-width: 1024px) {
    .t-admission-method__paragraph {
        font-size:1.3rem
    }
}

@media screen and (min-width: 1280px) {
    .t-admission-method__paragraph {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-admission-method__paragraph {
        font-size:1.2rem
    }
}

@media screen and (max-width: 320px) {
    .t-admission-method__paragraph {
        font-size:1.1rem
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-method__sections {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-method__sections .t-admission-method__section {
        padding:30px 26px 26px
    }
}

@media screen and (min-width: 1280px) {
    .t-admission-method__sections .t-admission-method__section {
        padding:30px 26px 26px
    }
}

.t-admission-method__sections .t-admission-method__section__icon {
    margin-bottom: 10px
}

@media screen and (min-width: 1024px) {
    .t-admission-method__sections .t-admission-method__paragraph:not(:last-child) {
        margin-bottom:8px
    }
}

@media screen and (max-width: 1023px) {
    .t-admission-method__sections .t-admission-method__paragraph:not(:last-child) {
        margin-bottom:6px
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-method__web {
        display:flex;
        align-items: center;
        justify-content: center;
        padding: 50px 25px 45px 55px;
        margin-bottom: 40px
    }
}

@media screen and (max-width: 1023px) {
    .t-admission-method__web .t-admission-method__section__icon {
        margin-bottom:15px
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-method__web .t-admission-method__section__icon::before {
        background-image:url("../img/admission/method_icon_web.svg");
        width: 70px;
        height: 70px;
        margin-right: 36px
    }
}

@media screen and (max-width: 1023px) {
    .t-admission-method__web .t-admission-method__section__icon::before {
        display:none
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-method__web .t-admission-method__section__icon div {
        flex:1
    }
}

.t-admission-method__web .t-admission-method__section__title {
    margin-bottom: 5px
}

@media screen and (max-width: 1023px) {
    .t-admission-method__web .t-admission-method__section__title {
        display:flex;
        align-items: center;
        justify-content: center
    }
}

@media screen and (max-width: 1023px) {
    .t-admission-method__web .t-admission-method__section__title::before {
        content:'';
        background-image: url("../img/admission/method_icon_web.svg");
        background-size: contain;
        background-position: center;
        background-repeat: no-repeat
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-method__web .t-admission-method__section__title::before {
        width:39.2px;
        height: 39.2px;
        margin-right: 20.16px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-method__web .t-admission-method__section__title::before {
        width:29.4px;
        height: 29.4px;
        margin-right: 15.12px
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-method__web__btn {
        width:44.44444%;
        margin-left: 30px
    }
}

.t-admission-method__tel {
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-admission-method__tel {
        width:46.51163%
    }
}

.t-admission-method__tel .t-admission-method__section__icon::before {
    background-image: url("../img/admission/method_icon_tel.svg")
}

@media screen and (min-width: 1024px) {
    .t-admission-method__tel .t-admission-method__section__icon::before {
        width:51px;
        height: 40px;
        margin-right: 20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-method__tel .t-admission-method__section__icon::before {
        width:40.8px;
        height: 32px;
        margin-right: 16px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-method__tel .t-admission-method__section__icon::before {
        width:30.6px;
        height: 24px;
        margin-right: 12px
    }
}

.t-admission-method__tel__link {
    letter-spacing: 0;
    line-height: 1
}

.t-admission-method__tel__link span,.t-admission-method__tel__link a {
    display: block;
    color: #f26f78;
    line-height: 1
}

.t-admission-method__tel__link a {
    letter-spacing: -.02em
}

@media screen and (min-width: 1024px) {
    .t-admission-method__tel__link a {
        font-size:3.8rem;
        margin-bottom: 2px
    }
}

@media screen and (min-width: 1280px) {
    .t-admission-method__tel__link a {
        font-size:4.7rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-method__tel__link a {
        font-size:3.6rem;
        margin-bottom: 3px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-method__tel__link a {
        font-size:2.8rem;
        margin-bottom: 5px
    }
}

@media screen and (max-width: 320px) {
    .t-admission-method__tel__link a {
        font-size:2.0rem
    }
}

.t-admission-method__tel__link span {
    font-weight: bold;
    letter-spacing: .14em
}

@media screen and (max-width: 560px) {
    .t-admission-method__tel__link span {
        font-size:1.2rem
    }
}

@media screen and (max-width: 320px) {
    .t-admission-method__tel__link span {
        font-size:1.0rem
    }
}

@media screen and (min-width: 1024px) {
    .t-admission-method__school {
        width:48.83721%
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-method__school {
        display:flex;
        flex-direction: column;
        align-items: center;
        justify-content: center
    }
}

.t-admission-method__school .t-admission-method__section__icon::before {
    background-image: url("../img/admission/method_icon_school.svg")
}

@media screen and (min-width: 1024px) {
    .t-admission-method__school .t-admission-method__section__icon::before {
        width:50px;
        height: 40px;
        margin-right: 20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-admission-method__school .t-admission-method__section__icon::before {
        width:40px;
        height: 32px;
        margin-right: 16px
    }
}

@media screen and (max-width: 560px) {
    .t-admission-method__school .t-admission-method__section__icon::before {
        width:30px;
        height: 24px;
        margin-right: 12px
    }
}

.t-admission-method__school address {
    letter-spacing: .06em;
    color: #f26f78
}

@media screen and (min-width: 1600px) {
    .t-campuslife-hero .l-hero__bg img {
        display:none
    }
}

@media screen and (min-width: 1600px) {
    .t-campuslife-hero .l-hero__bg {
        background-image:url("../img/campuslife/hero-large.jpg");
        background-size: cover;
        background-position: center;
        background-repeat: no-repeat
    }
}

@media screen and (min-width: 1600px) {
    .t-campuslife-hero .l-hero__bg img {
        display:none
    }
}

@media screen and (max-width: 768px) {
    .t-campuslife-hero .l-hero__bg img {
        -o-object-position:80% 50%;
        object-position: 80% 50%;
        background-position: 80% 50%
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-hero .l-hero__bg img {
        -o-object-position:90% 50%;
        object-position: 90% 50%;
        background-position: 90% 50%
    }
}

.t-campuslife-tab__switch {
    display: flex
}

@media screen and (min-width: 1024px) {
    .t-campuslife-tab__switch li:not(:last-of-type) {
        margin-right:30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-tab__switch li:not(:last-of-type) {
        margin-right:20px
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-tab__switch li:not(:last-of-type) {
        margin-right:10px
    }
}

.t-campuslife-tab__switch a {
    display: block;
    border-radius: 10px 10px 0 0;
    color: #fff;
    font-weight: bold;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .t-campuslife-tab__switch a {
        font-size:2.4rem;
        padding: 20px 38px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-tab__switch a {
        font-size:2.0rem;
        padding: 16px 30px
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-tab__switch a {
        font-size:1.4rem;
        padding: 14px 22px 12px
    }
}

.t-campuslife-section {
    background-color: #fff
}

@media screen and (min-width: 1024px) {
    .t-campuslife-section {
        border:solid 3px
    }
}

@media screen and (max-width: 1023px) {
    .t-campuslife-section {
        border:solid 2px
    }
}

@media screen and (min-width: 769px) {
    .t-campuslife-section {
        padding:80px 50px 70px
    }
}

@media screen and (min-width: 1280px) {
    .t-campuslife-section {
        padding:100px 80px 75px
    }
}

@media screen and (max-width: 768px) {
    .t-campuslife-section {
        padding:40px 20px
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-section {
        padding:30px 20px
    }
}

.t-campuslife-event {
    border-bottom: solid 2px #666
}

@media screen and (min-width: 769px) {
    .t-campuslife-event {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-event {
        padding-bottom:60px;
        margin-bottom: 80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-event {
        padding-bottom:50px;
        margin-bottom: 60px
    }
}

@media screen and (max-width: 768px) {
    .t-campuslife-event {
        padding:0 0 50px
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-event {
        padding-bottom:40px;
        margin-bottom: 40px
    }
}

@media screen and (max-width: 768px) {
    .t-campuslife-event__content {
        margin-bottom:20px;
        padding: 0 40px 0
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-event__content {
        padding:0 20px 0
    }
}

@media screen and (max-width: 414px) {
    .t-campuslife-event__content {
        padding:0 15px 0
    }
}

@media screen and (max-width: 320px) {
    .t-campuslife-event__content {
        padding:0 10px 0
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-event__list {
        margin-bottom:35px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-event__list {
        margin-bottom:30px
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-event__list {
        margin-bottom:10px
    }
}

.t-campuslife-event__list__cell {
    display: flex
}

@media screen and (min-width: 769px) {
    .t-campuslife-event__list__cell {
        min-height:160px
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-event__list__cell {
        min-height:210px
    }
}

@media screen and (min-width: 769px) {
    .t-campuslife-event__list__cell:last-of-type {
        min-height:130px
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-event__list__cell:last-of-type {
        min-height:155px
    }
}

.t-campuslife-event__list__day {
    font-weight: bold;
    line-height: 1;
    text-align: right;
    white-space: nowrap
}

@media screen and (min-width: 1024px) {
    .t-campuslife-event__list__day {
        font-size:2.6rem
    }
}

@media screen and (min-width: 1280px) {
    .t-campuslife-event__list__day {
        font-size:3.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-event__list__day {
        font-size:2.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-event__list__day {
        font-size:1.4rem
    }
}

.t-campuslife-event__list__day span {
    font-size: 166.66667%
}

.t-campuslife-event__list__day--2 {
    margin-left: -1em
}

.t-campuslife-event__list__icon {
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-campuslife-event__list__icon {
        width:80px
    }
}

@media screen and (min-width: 1280px) {
    .t-campuslife-event__list__icon {
        width:100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-event__list__icon {
        width:60px
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-event__list__icon {
        width:40px
    }
}

.t-campuslife-event__list__icon::before,.t-campuslife-event__list__icon::after {
    content: '';
    display: block;
    position: absolute;
    left: 50%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

.t-campuslife-event__list__icon::before {
    border-radius: 50%;
    z-index: 1
}

@media screen and (min-width: 769px) {
    .t-campuslife-event__list__icon::before {
        width:10px;
        height: 10px;
        top: 14px
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-event__list__icon::before {
        width:17px;
        height: 17px;
        top: 15px
    }
}

@media screen and (max-width: 768px) {
    .t-campuslife-event__list__icon::before {
        width:8px;
        height: 8px;
        top: 7px
    }
}

.t-campuslife-event__list__icon::after {
    z-index: 0;
    bottom: -2px
}

@media screen and (min-width: 769px) {
    .t-campuslife-event__list__icon::after {
        width:4px;
        height: calc(100% - 36px)
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-event__list__icon::after {
        width:6px;
        height: calc(100% - 48px)
    }
}

@media screen and (max-width: 768px) {
    .t-campuslife-event__list__icon::after {
        width:3px;
        height: calc(100% - 20px)
    }
}

@media screen and (max-width: 768px) {
    .t-campuslife-event__list__list {
        padding-bottom:40px
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-event__list__list {
        padding-bottom:20px
    }
}

.t-campuslife-event__list__list li {
    color: #646464;
    font-weight: bold;
    line-height: 1.77778
}

@media screen and (min-width: 1024px) {
    .t-campuslife-event__list__list li {
        font-size:1.6rem
    }
}

@media screen and (min-width: 1280px) {
    .t-campuslife-event__list__list li {
        font-size:1.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-event__list__list li {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-event__list__list li {
        font-size:1.3rem
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-event__smalls {
        margin:0 0 0 130px
    }
}

@media screen and (min-width: 1280px) {
    .t-campuslife-event__smalls {
        margin:0 0 0 160px
    }
}

.t-campuslife-event__smalls li {
    color: #646464;
    line-height: 2.14286
}

@media screen and (min-width: 1024px) {
    .t-campuslife-event__smalls li {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-event__smalls li {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-event__smalls li {
        font-size:1.2rem
    }
}

.t-campuslife-pickup {
    position: relative
}

.t-campuslife-pickup__title {
    position: relative;
    z-index: 2;
    text-align: center;
    width: 100%;
    margin: 0 auto
}

@media screen and (min-width: 1024px) {
    .t-campuslife-pickup__title {
        max-width:271px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-pickup__title {
        max-width:216.8px
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-pickup__title {
        max-width:162.6px
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-pickup__title {
        margin-bottom:65px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-pickup__title {
        margin-bottom:40px
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-pickup__title {
        margin-bottom:20px
    }
}

@media screen and (min-width: 561px) {
    .t-campuslife-pickup__list {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 561px) {
    .t-campuslife-pickup__list section {
        width:30.97826%
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-pickup__list section:not(:last-of-type) {
        margin-bottom:26px
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-pickup__list figure {
        margin-bottom:24px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-pickup__list figure {
        margin-bottom:20px
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-pickup__list figure {
        margin-bottom:16px
    }
}

.t-campuslife-pickup__list figure img {
    border-radius: 10px
}

.t-campuslife-pickup__list h3 {
    font-weight: bold;
    letter-spacing: .08em
}

@media screen and (min-width: 1024px) {
    .t-campuslife-pickup__list h3 {
        font-size:2.0rem;
        margin-bottom: 8px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-pickup__list h3 {
        font-size:1.6rem;
        margin-bottom: 6px
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-pickup__list h3 {
        font-size:1.4rem;
        margin-bottom: 4px
    }
}

@media screen and (max-width: 768px) {
    .t-campuslife-pickup__list p {
        font-size:1.2rem
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-pickup-object-01 {
        top:40px;
        right: 0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-pickup-object-01 {
        top:32px;
        right: 0
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-pickup-object-01 {
        top:24px;
        right: 0
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-pickup-object-02 {
        top:-13px;
        right: 53px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-campuslife-pickup-object-02 {
        top:-10.4px;
        right: 42.4px
    }
}

@media screen and (max-width: 560px) {
    .t-campuslife-pickup-object-02 {
        top:-7.8px;
        right: 31.8px
    }
}

.t-campuslife-dt {
    border-color: #05aadc
}

.t-campuslife-dt .t-campuslife-event__list__day {
    color: #009ab7
}

.t-campuslife-dt .t-campuslife-event__list__icon::before {
    background-color: #54bdc3
}

.t-campuslife-dt .t-campuslife-event__list__icon::after {
    background-color: #d2eeea
}

@media screen and (min-width: 769px) {
    .t-campuslife-dt .t-campuslife-event__figure {
        width:57.76805%;
        margin-top: -15px;
        margin-right: -20px
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-dt .t-campuslife-event__figure {
        max-width:528px;
        margin-top: -45px;
        margin-right: -50px
    }
}

.t-campuslife-de {
    border-color: #f5d7e1
}

.t-campuslife-de .t-campuslife-event__list__day {
    color: #f26f78
}

.t-campuslife-de .t-campuslife-event__list__icon::before {
    background-color: #fc7871
}

.t-campuslife-de .t-campuslife-event__list__icon::after {
    background-color: #ffd9ca
}

@media screen and (min-width: 769px) {
    .t-campuslife-de .t-campuslife-event__figure {
        width:57.76805%;
        margin-top: -15px
    }
}

@media screen and (min-width: 1024px) {
    .t-campuslife-de .t-campuslife-event__figure {
        max-width:528px;
        margin-top: -20px;
        margin-right: -20px
    }
}

.t-concept {
    background-color: #ebc31e
}

.t-concept .js-delayAnchor {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    background-position: top center
}

@media screen and (min-width: 1024px) {
    .t-concept .js-delayAnchor {
        background-image:url("../img/concept/bg.svg");
        padding-bottom: 140px
    }
}

@media screen and (max-width: 1023px) {
    .t-concept .js-delayAnchor {
        background-image:url("../img/concept/bg_sp.svg")
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept .js-delayAnchor {
        padding-bottom:100px
    }
}

@media screen and (max-width: 560px) {
    .t-concept .js-delayAnchor {
        padding-bottom:80px
    }
}

.t-concept-logo {
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-concept-logo {
        padding-top:100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-logo {
        padding-top:70px
    }
}

@media screen and (max-width: 560px) {
    .t-concept-logo {
        padding-top:60px
    }
}

@media screen and (min-width: 1024px) {
    .t-concept-logo img {
        width:350px;
        height: 108px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-logo img {
        width:280px;
        height: 86.4px
    }
}

@media screen and (max-width: 560px) {
    .t-concept-logo img {
        width:210px;
        height: 64.8px
    }
}

.t-concept-vision {
    max-width: 1080px;
    width: 100%;
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-concept-vision {
        margin:0 auto 100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-vision {
        margin:0 auto 70px
    }
}

@media screen and (max-width: 560px) {
    .t-concept-vision {
        margin:0 auto 60px
    }
}

.t-concept-vision.is-shown .t-concept-vision__txt p::after {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.t-concept-vision__figure {
    z-index: 1
}

@media screen and (min-width: 561px) {
    .t-concept-vision__figure {
        max-width:560px;
        width: 51.85185%;
        position: absolute;
        top: 0;
        left: 0
    }
}

@media screen and (max-width: 560px) {
    .t-concept-vision__figure {
        width:86.95652%
    }
}

.t-concept-vision__txt {
    max-width: 590px;
    margin-left: auto
}

@media screen and (min-width: 561px) {
    .t-concept-vision__txt {
        width:54.62963%
    }
}

@media screen and (max-width: 560px) {
    .t-concept-vision__txt {
        width:100%;
        margin-top: -8vw
    }
}

.t-concept-vision__txt h1 {
    text-align: right;
    margin-bottom: 4px
}

@media screen and (min-width: 1024px) {
    .t-concept-vision__txt h1 {
        padding-right:40px
    }
}

@media screen and (max-width: 1023px) {
    .t-concept-vision__txt h1 {
        width:auto
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-vision__txt h1 {
        height:7vw
    }
}

@media screen and (max-width: 560px) {
    .t-concept-vision__txt h1 {
        height:15.5vw
    }
}

@media screen and (max-width: 1023px) {
    .t-concept-vision__txt h1 img {
        width:auto;
        height: 100%
    }
}

.t-concept-vision__txt p {
    background-color: rgba(255,255,255,0.6);
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-concept-vision__txt p {
        height:422px;
        padding: 3.8em 2em
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-vision__txt p {
        font-size:3vw;
        height: 40vw;
        padding: 3.2em 2em
    }
}

@media screen and (min-width: 561px) {
    .t-concept-vision__txt p {
        width:100%
    }
}

@media screen and (max-width: 560px) {
    .t-concept-vision__txt p {
        width:72.46377%;
        height: 92vw;
        margin-left: 10%;
        padding: 3.2em 2em
    }
}

.t-concept-vision__txt p::after {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    pointer-events: none;
    content: '';
    background-image: url("/assets/img/common/icon/icon_hana.svg");
    content: '';
    position: absolute;
    -webkit-transform: scale(0);
    transform: scale(0);
    transition: all 800ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition-delay: 400ms !important
}

@media screen and (min-width: 1024px) {
    .t-concept-vision__txt p::after {
        width:120px;
        height: 116px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-vision__txt p::after {
        width:96px;
        height: 92.8px
    }
}

@media screen and (max-width: 560px) {
    .t-concept-vision__txt p::after {
        width:72px;
        height: 69.6px
    }
}

@media screen and (min-width: 1024px) {
    .t-concept-vision__txt p::after {
        bottom:-34px;
        right: 30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-vision__txt p::after {
        bottom:-27.2px;
        right: 5%
    }
}

@media screen and (max-width: 560px) {
    .t-concept-vision__txt p::after {
        bottom:-20.4px;
        right: 5%
    }
}

.t-concept-vision__txt p span {
    line-height: 2.8125;
    display: inline-block;
    height: 100%
}

.t-concept-mission {
    max-width: 1080px;
    width: 100%;
    margin: 0 auto;
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-concept-mission {
        margin:0 auto 100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-mission {
        margin:0 auto 70px
    }
}

@media screen and (max-width: 560px) {
    .t-concept-mission {
        margin:0 auto 60px
    }
}

.t-concept-mission.is-shown .t-concept-mission__txt .t-concept-mission__bg::after {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.t-concept-mission__figure {
    z-index: 3
}

@media screen and (min-width: 561px) {
    .t-concept-mission__figure {
        max-width:500px;
        width: 46.2963%;
        position: absolute;
        top: 0;
        right: 0
    }
}

@media screen and (max-width: 560px) {
    .t-concept-mission__figure {
        width:100%
    }
}

.t-concept-mission__txt {
    max-width: 590px;
    margin-right: auto
}

@media screen and (min-width: 561px) {
    .t-concept-mission__txt {
        width:54.62963%
    }
}

@media screen and (max-width: 560px) {
    .t-concept-mission__txt {
        width:100%;
        position: relative
    }
}

.t-concept-mission__txt h1 {
    text-align: left;
    margin-bottom: 4px
}

@media screen and (max-width: 1023px) {
    .t-concept-mission__txt h1 {
        width:100%
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-mission__txt h1 {
        height:7vw
    }
}

@media screen and (max-width: 560px) {
    .t-concept-mission__txt h1 {
        height:15.5vw;
        position: absolute;
        top: calc( -15.5vw - 4px);
        right: 0;
        text-align: right
    }
}

@media screen and (max-width: 1023px) {
    .t-concept-mission__txt h1 img {
        width:auto;
        height: 100%
    }
}

@media screen and (min-width: 561px) {
    .t-concept-mission__txt p {
        width:100%
    }
}

.t-concept-mission__bg {
    position: relative;
    margin: 0 auto
}

@media screen and (min-width: 561px) {
    .t-concept-mission__bg {
        padding:4em 3em;
        max-width: 500px
    }
}

@media screen and (max-width: 560px) {
    .t-concept-mission__bg {
        padding:4em 0;
        width: 90%
    }
}

.t-concept-mission__bg::before {
    content: '';
    display: block;
    background-color: rgba(255,255,255,0.6);
    width: 150vw;
    height: 100%;
    position: absolute;
    left: -50vw;
    top: 0;
    z-index: 1
}

.t-concept-mission__bg::after {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    pointer-events: none;
    content: '';
    background-image: url("/assets/img/common/icon/icon_hana.svg");
    content: '';
    position: absolute;
    -webkit-transform: scale(0);
    transform: scale(0);
    transition: all 800ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition-delay: 400ms !important
}

@media screen and (min-width: 1024px) {
    .t-concept-mission__bg::after {
        width:70px;
        height: 68px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-mission__bg::after {
        width:56px;
        height: 54.4px
    }
}

@media screen and (max-width: 560px) {
    .t-concept-mission__bg::after {
        width:42px;
        height: 40.8px
    }
}

@media screen and (min-width: 1024px) {
    .t-concept-mission__bg::after {
        bottom:-34px;
        left: -34px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-mission__bg::after {
        bottom:-27.2px;
        left: 2.5%
    }
}

@media screen and (max-width: 560px) {
    .t-concept-mission__bg::after {
        bottom:-20.4px;
        left: 2.5%
    }
}

.t-concept-mission__ttl,.t-concept-mission__p {
    position: relative;
    z-index: 2
}

.t-concept-mission__ttl {
    text-align: left;
    margin-bottom: .5em
}

@media screen and (min-width: 1024px) {
    .t-concept-mission__ttl {
        font-size:3.2rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-mission__ttl {
        font-size:3vw
    }
}

@media screen and (max-width: 560px) {
    .t-concept-mission__ttl {
        font-size:2.2rem
    }
}

.t-concept-mission__p {
    line-height: 2.44444
}

@media screen and (min-width: 1024px) {
    .t-concept-mission__p {
        font-size:1.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-mission__p {
        font-size:2vw
    }
}

@media screen and (max-width: 560px) {
    .t-concept-mission__p {
        font-size:1.2rem
    }
}

.t-concept-value {
    max-width: 1180px;
    width: 100%;
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-concept-value {
        margin:0 auto 100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-value {
        margin:0 auto 70px
    }
}

@media screen and (max-width: 560px) {
    .t-concept-value {
        margin:0 auto 60px
    }
}

.t-concept-value.is-shown .t-concept-value__txt p::after {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.t-concept-value__figure {
    z-index: 1
}

@media screen and (min-width: 561px) {
    .t-concept-value__figure {
        max-width:470px;
        width: 39.83051%;
        position: absolute;
        top: 0;
        left: 0
    }
}

@media screen and (max-width: 560px) {
    .t-concept-value__figure {
        width:86.95652%
    }
}

.t-concept-value__txt {
    max-width: 760px;
    margin-left: auto
}

@media screen and (min-width: 561px) {
    .t-concept-value__txt {
        width:64.40678%
    }
}

@media screen and (max-width: 560px) {
    .t-concept-value__txt {
        width:100%;
        margin-top: -8vw
    }
}

.t-concept-value__txt h1 {
    text-align: right;
    margin-bottom: 4px
}

@media screen and (min-width: 1024px) {
    .t-concept-value__txt h1 {
        padding-right:40px
    }
}

@media screen and (max-width: 1023px) {
    .t-concept-value__txt h1 {
        width:auto
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-value__txt h1 {
        height:7vw
    }
}

@media screen and (max-width: 560px) {
    .t-concept-value__txt h1 {
        height:15.5vw
    }
}

@media screen and (max-width: 1023px) {
    .t-concept-value__txt h1 img {
        width:auto;
        height: 100%
    }
}

.t-concept-value__txt p {
    padding: 2em;
    background-color: rgba(255,255,255,0.6);
    display: flex;
    justify-content: center;
    align-items: center;
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-concept-value__txt p {
        font-size:2.8rem
    }
}

@media screen and (max-width: 1023px) {
    .t-concept-value__txt p {
        text-align:center
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-value__txt p {
        font-size:3vw
    }
}

@media screen and (min-width: 561px) {
    .t-concept-value__txt p {
        width:100%
    }
}

@media screen and (max-width: 560px) {
    .t-concept-value__txt p {
        width:100%;
        font-size: 4vw
    }
}

.t-concept-value__txt p::after {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    pointer-events: none;
    content: '';
    background-image: url("/assets/img/common/icon/icon_hana.svg");
    content: '';
    position: absolute;
    -webkit-transform: scale(0);
    transform: scale(0);
    transition: all 800ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition-delay: 400ms !important
}

@media screen and (min-width: 1024px) {
    .t-concept-value__txt p::after {
        width:120px;
        height: 116px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-value__txt p::after {
        width:96px;
        height: 92.8px
    }
}

@media screen and (max-width: 560px) {
    .t-concept-value__txt p::after {
        width:72px;
        height: 69.6px
    }
}

@media screen and (min-width: 1024px) {
    .t-concept-value__txt p::after {
        bottom:-34px;
        right: 30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-value__txt p::after {
        bottom:-27.2px;
        right: 5%
    }
}

@media screen and (max-width: 560px) {
    .t-concept-value__txt p::after {
        bottom:-20.4px;
        right: 5%
    }
}

.t-concept-value__txt p span {
    line-height: 2.8125
}

.t-concept-product__txt {
    text-align: center;
    margin-bottom: .5em
}

@media screen and (min-width: 1024px) {
    .t-concept-product__txt {
        font-size:2.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-product__txt {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-concept-product__txt {
        font-size:1.6rem
    }
}

.t-concept-product__link {
    max-width: 500px;
    width: 90%;
    margin: 0 auto
}

.t-concept-product__link a {
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    color: #fff;
    overflow: hidden;
    padding: .9em 0;
    background-image: url("../img/concept/bg_product.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%
}

@media screen and (min-width: 1024px) {
    .t-concept-product__link a {
        font-size:4.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-concept-product__link a {
        font-size:3.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-concept-product__link a {
        font-size:2.4rem
    }
}

.t-concept-product__link a.is-hover:hover {
    background-size: 103%
}

@media screen and (min-width: 561px) {
    .t-download-read {
        text-align:center
    }
}

@media screen and (min-width: 1024px) {
    .t-download-read {
        margin-bottom:90px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-download-read {
        margin-bottom:80px
    }
}

@media screen and (max-width: 560px) {
    .t-download-read {
        margin-bottom:40px
    }
}

.t-download-section {
    margin-top: -100px;
    padding-top: 100px
}

.t-download-section h3,.t-download-section h4 {
    text-align: center;
    font-weight: bold;
    letter-spacing: .07em
}

@media screen and (min-width: 1024px) {
    .t-download-section h3 {
        font-size:2.2rem;
        margin-bottom: 10px
    }
}

@media screen and (min-width: 1280px) {
    .t-download-section h3 {
        font-size:2.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-download-section h3 {
        font-size:2.0rem;
        margin-bottom: 8px
    }
}

@media screen and (max-width: 560px) {
    .t-download-section h3 {
        font-size:1.6rem;
        margin-bottom: 8px
    }
}

.t-download-section h3 span {
    display: inline-block;
    padding: 0 3px;
    line-height: 1.5
}

@media screen and (min-width: 1024px) {
    .t-download-section h3 span {
        border-bottom:solid 3px;
        padding-bottom: 6px
    }
}

@media screen and (max-width: 1023px) {
    .t-download-section h3 span {
        border-bottom:solid 2px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-download-section h3 span {
        padding-bottom:4px
    }
}

@media screen and (max-width: 560px) {
    .t-download-section h3 span {
        padding-bottom:2px
    }
}

@media screen and (min-width: 1024px) {
    .t-download-section h4 {
        font-size:1.6rem;
        margin-bottom: 24px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-download-section h4 {
        font-size:1.4rem;
        margin-bottom: 20px
    }
}

@media screen and (max-width: 560px) {
    .t-download-section h4 {
        font-size:1.3rem;
        margin-bottom: 12px
    }
}

.t-download-section p {
    color: #646464
}

.t-download-section__inner {
    height: 100%
}

@media screen and (min-width: 1024px) {
    .t-download-section__inner {
        padding:0 25px 55px
    }
}

@media screen and (min-width: 1280px) {
    .t-download-section__inner {
        padding:0 30px 55px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-download-section__inner {
        padding:0 5% 35px
    }
}

@media screen and (max-width: 560px) {
    .t-download-section__inner {
        padding:0 5% 20px
    }
}

@media screen and (min-width: 561px) {
    .t-download-section__inner::before {
        margin:-45px auto 15px
    }
}

@media screen and (max-width: 560px) {
    .t-download-section__inner::before {
        margin:-27px auto 15px
    }
}

@media screen and (min-width: 1024px) {
    .t-download-section__btns {
        margin-top:32px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-download-section__btns {
        margin-top:20px
    }
}

@media screen and (max-width: 560px) {
    .t-download-section__btns {
        margin-top:10px
    }
}

@media screen and (min-width: 1024px) {
    .t-download-section__btns li:not(:last-of-type) {
        margin-bottom:20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-download-section__btns li:not(:last-of-type) {
        margin-bottom:15px
    }
}

@media screen and (max-width: 560px) {
    .t-download-section__btns li:not(:last-of-type) {
        margin-bottom:10px
    }
}

@media screen and (max-width: 1023px) {
    .t-employment-hero .l-hero__bg img:nth-of-type(1) {
        width:70%
    }
}

@media screen and (max-width: 560px) {
    .t-employment-hero .l-hero__bg img:nth-of-type(1) {
        width:100%;
        height: 120%;
        right: 0
    }
}

@media screen and (max-width: 414px) {
    .t-employment-hero .l-hero__bg img:nth-of-type(1) {
        height:110%
    }
}

@media screen and (max-width: 1023px) {
    .t-employment-hero .l-hero__bg img:nth-of-type(2) {
        width:70%
    }
}

@media screen and (max-width: 560px) {
    .t-employment-hero .l-hero__bg img:nth-of-type(2) {
        display:none
    }
}

.t-employment-hero .l-hero__circle {
    background-color: #74af46;
    color: #fff;
    font-weight: bold;
    text-align: center
}

@media screen and (max-width: 560px) {
    .t-employment-hero .l-hero__circle {
        left:5%
    }
}

@media screen and (min-width: 561px) {
    .t-employment-hero .l-hero__circle>span:nth-of-type(1) {
        letter-spacing:.08em
    }
}

@media screen and (min-width: 1024px) {
    .t-employment-hero .l-hero__circle>span:nth-of-type(1) {
        font-size:1.5rem;
        margin-bottom: 8px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-employment-hero .l-hero__circle>span:nth-of-type(1) {
        font-size:1.1rem;
        margin-bottom: 6px
    }
}

@media screen and (max-width: 560px) {
    .t-employment-hero .l-hero__circle>span:nth-of-type(1) {
        font-size:1.0rem;
        margin-bottom: 5px
    }
}

.t-employment-hero .l-hero__circle>span:nth-of-type(2) {
    letter-spacing: .06em;
    line-height: 1.4
}

@media screen and (min-width: 1024px) {
    .t-employment-hero .l-hero__circle>span:nth-of-type(2) {
        font-size:3.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-employment-hero .l-hero__circle>span:nth-of-type(2) {
        font-size:1.8rem
    }
}

@media screen and (max-width: 560px) {
    .t-employment-hero .l-hero__circle>span:nth-of-type(2) {
        font-size:1.4rem
    }
}

.t-employment-hero .l-hero__circle>span:nth-of-type(2) span {
    font-size: 1.16667em;
    letter-spacing: -.03em
}

.t-employment-status__figure__content {
    background-color: #fff
}

@media screen and (min-width: 1024px) {
    .t-employment-status__figure__content {
        border:solid 3px
    }
}

@media screen and (max-width: 1023px) {
    .t-employment-status__figure__content {
        border:solid 2px
    }
}

@media screen and (min-width: 769px) {
    .t-employment-status__figure__content {
        display:flex;
        align-items: center;
        justify-content: space-between;
        padding: 50px
    }
}

@media screen and (min-width: 1280px) {
    .t-employment-status__figure__content {
        padding:58px
    }
}

@media screen and (max-width: 768px) {
    .t-employment-status__figure__content {
        padding:30px
    }
}

@media screen and (max-width: 560px) {
    .t-employment-status__figure__content {
        padding:20px
    }
}

.t-employment-status__figure__content figure {
    text-align: center
}

@media screen and (min-width: 769px) {
    .t-employment-status__figure__content figure {
        width:61.37787%;
        margin-right: 5%
    }
}

@media screen and (max-width: 768px) {
    .t-employment-status__figure__content figure {
        margin-bottom:20px
    }
}

@media screen and (min-width: 769px) {
    .t-employment-status__figure__content div {
        flex:1;
        max-width: 280px
    }
}

.t-employment-status__figure__content h3 {
    font-weight: bold;
    letter-spacing: .09em
}

@media screen and (min-width: 1024px) {
    .t-employment-status__figure__content h3 {
        font-size:2.4rem;
        margin-bottom: 15px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-employment-status__figure__content h3 {
        font-size:2.0rem;
        margin-bottom: 12px
    }
}

@media screen and (max-width: 768px) {
    .t-employment-status__figure__content h3 {
        display:flex;
        align-items: center
    }
}

@media screen and (max-width: 560px) {
    .t-employment-status__figure__content h3 {
        font-size:1.6rem;
        margin-bottom: 8px
    }
}

.t-employment-status__figure__content h3::before {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 769px) {
    .t-employment-status__figure__content h3::before {
        margin-bottom:12px
    }
}

@media screen and (min-width: 1024px) {
    .t-employment-status__figure__content h3::before {
        width:73px;
        height: 46px;
        margin-bottom: 20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-employment-status__figure__content h3::before {
        width:43.8px;
        height: 27.6px
    }
}

@media screen and (max-width: 768px) {
    .t-employment-status__figure__content h3::before {
        margin-right:12px
    }
}

@media screen and (max-width: 560px) {
    .t-employment-status__figure__content h3::before {
        width:36.5px;
        height: 23px;
        margin-right: 12px
    }
}

@media screen and (min-width: 1024px) {
    .t-employment-status__figure__content ul {
        margin-bottom:45px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-employment-status__figure__content ul {
        margin-bottom:20px
    }
}

@media screen and (max-width: 560px) {
    .t-employment-status__figure__content ul {
        margin-bottom:12px
    }
}

.t-employment-status__figure__content li {
    color: #646464
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-employment-status__figure__content li {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-employment-status__figure__content li {
        font-size:1.2rem
    }
}

.t-employment-status__figure__content p {
    line-height: 1
}

.t-employment-status__figure__content p a {
    display: block;
    width: 100%;
    height: 100%;
    width: 100%;
    font-weight: bold;
    color: #fff;
    text-align: center;
    letter-spacing: .15em;
    position: relative;
    padding: 5px
}

.t-employment-status__figure__content p a::before {
    content: '';
    display: block;
    width: 0;
    height: 100%;
    position: absolute;
    top: 0;
    left: auto;
    right: 0;
    z-index: 0;
    background-color: rgba(255,255,255,0.2);
    opacity: 0;
    transition: 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    transition-property: opacity,width
}

.t-employment-status__figure__content p a.is-hover:hover {
    opacity: 1
}

.t-employment-status__figure__content p a.is-hover:hover::before {
    width: 100%;
    left: 0;
    right: auto;
    opacity: 1
}

@media screen and (min-width: 1024px) {
    .t-employment-status__figure__content p a {
        font-size:1.3rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-employment-status__figure__content p a {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-employment-status__figure__content p a {
        font-size:1.3rem
    }
}

.t-employment-dt .t-employment-status__figure__content {
    border-color: #80ced8
}

.t-employment-dt h3 {
    color: #009ab7
}

.t-employment-dt h3::before {
    background-image: url("../img/employment/status_dt_title_icon.svg")
}

.t-employment-de .t-employment-status__figure__content {
    border-color: #f8b7bb
}

.t-employment-de h3 {
    color: #f26f78
}

.t-employment-de h3::before {
    background-image: url("../img/employment/status_de_title_icon.svg")
}

@media screen and (min-width: 1024px) {
    .t-employment-point h3 {
        margin-bottom:22px
    }
}

@media screen and (max-width: 1023px) {
    .t-employment-point h3 {
        margin-bottom:1em
    }
}

@media screen and (min-width: 1024px) {
    .t-employment-detail h3 {
        margin-bottom:65px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-employment-detail h3 {
        margin-bottom:50px
    }
}

@media screen and (max-width: 560px) {
    .t-employment-detail h3 {
        font-size:calc( 1.0rem + 2.1vw);
        margin-bottom: 30px
    }
}

@media screen and (max-width: 320px) {
    .t-employment-detail h3 {
        font-size:calc( 1.0rem + 2vw)
    }
}

@media screen and (min-width: 1024px) {
    .t-employment-detail h4 {
        margin-bottom:30px
    }
}

@media screen and (max-width: 320px) {
    .t-employment-detail h4 {
        font-size:1.5rem
    }
}

.t-employment-detail__table h5 {
    text-align: center;
    color: #fff;
    font-weight: bold;
    letter-spacing: .14em;
    padding: 8px
}

@media screen and (min-width: 561px) {
    .t-employment-detail__table h5 {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-employment-detail__table h5 {
        font-size:1.4rem
    }
}

@media screen and (min-width: 1024px) {
    .t-employment-detail__list {
        display:flex;
        justify-content: space-between
    }
}

.t-employment-detail__list h6,.t-employment-detail__list div {
    border-bottom: solid 1px #666
}

@media screen and (min-width: 1024px) {
    .t-employment-detail__list h6,.t-employment-detail__list p {
        padding:32px 0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-employment-detail__list h6,.t-employment-detail__list p {
        padding:25px 0
    }
}

@media screen and (max-width: 560px) {
    .t-employment-detail__list h6,.t-employment-detail__list p {
        padding:10px 0
    }
}

@media screen and (min-width: 1024px) {
    .t-employment-detail__list div {
        width:46.51163%
    }
}

.t-employment-detail__list h6 {
    font-weight: bold;
    color: #333;
    line-height: 1.7
}

@media screen and (min-width: 1024px) {
    .t-employment-detail__list h6 {
        font-size:2.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-employment-detail__list h6 {
        font-size:1.6rem
    }
}

@media screen and (max-width: 768px) {
    .t-employment-detail__list h6 {
        background-color:#f5f5f5;
        padding-left: 6px
    }
}

@media screen and (max-width: 560px) {
    .t-employment-detail__list h6 {
        font-size:1.4rem
    }
}

.t-employment-graduate {
    background-color: #fff
}

@media screen and (min-width: 1024px) {
    .t-employment-graduate {
        padding:80px 0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-employment-graduate {
        padding:60px 0 0
    }
}

@media screen and (max-width: 560px) {
    .t-employment-graduate {
        padding:40px 0 0
    }
}

.t-employment-graduate__inner {
    max-width: 1080px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    background-color: #eee
}

.t-employment-graduate__inner::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-image: url("/assets/img/common/bg_pattern.png");
    background-size: 100px 100px;
    background-repeat: repeat;
    background-position: center;
    opacity: .7
}

@media screen and (min-width: 1024px) {
    .t-employment-graduate__inner {
        padding:80px 70px 20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-employment-graduate__inner {
        padding:60px 5% 60px
    }
}

@media screen and (max-width: 560px) {
    .t-employment-graduate__inner {
        padding:30px 5%
    }
}

.t-employment-graduate__inner a {
    display: block;
    max-width: 920px;
    width: 100%;
    margin: 0 auto;
    position: relative;
    z-index: 1
}

.t-employment-graduate__inner a.is-hover:hover .c-btn-more__inner::after {
    opacity: 1
}

@media screen and (min-width: 1024px) {
    .t-employment-graduate__inner p {
        -webkit-transform:translateY(-50%);
        transform: translateY(-50%)
    }
}

@media screen and (max-width: 1023px) {
    .t-employment-graduate__inner p {
        display:none
    }
}

.t-employment-graduate__inner .c-btn-more__inner {
    background-color: #ff9026
}

@media screen and (min-width: 1024px) {
    .t-graduate-section h2 {
        margin-bottom:60px
    }
}

.t-graduate-dt .t-graduate-list div {
    background-image: linear-gradient(90deg, #54bdc3, #1aa7c7)
}

.t-graduate-dt .t-graduate-list__more {
    color: #009ab7
}

.t-graduate-dt .t-graduate-article__close a {
    background-color: #54bdc3
}

.t-graduate-dt .t-graduate-article__read h4,.t-graduate-dt .t-graduate-article__profile h4,.t-graduate-dt .t-graduate-article__qa h5,.t-graduate-dt .t-graduate-article__hitokoto h4,.t-graduate-dt .t-graduate-article__message__text h5 {
    color: #009ab7
}

.t-graduate-dt .t-graduate-article__profile {
    border-color: #009ab7
}

.t-graduate-dt .t-graduate-article__hitokoto {
    background-image: linear-gradient(90deg, #54bdc3, #1aa7c7)
}

.t-graduate-de .t-graduate-list div {
    background-image: linear-gradient(90deg, #f5d7e1, #fc7871)
}

.t-graduate-de .t-graduate-list__more {
    color: #f26f78
}

.t-graduate-de .t-graduate-article__close a {
    background-color: #f5d7e1
}

.t-graduate-de .t-graduate-article__read h4,.t-graduate-de .t-graduate-article__profile h4,.t-graduate-de .t-graduate-article__qa h5,.t-graduate-de .t-graduate-article__hitokoto h4,.t-graduate-de .t-graduate-article__message__text h5 {
    color: #f26f78
}

.t-graduate-de .t-graduate-article__profile {
    border-color: #f26f78
}

.t-graduate-de .t-graduate-article__hitokoto {
    background-image: linear-gradient(90deg, #f5d7e1, #fc7871)
}

@media screen and (min-width: 1024px) {
    .t-graduate-list li:not(:last-of-type) {
        margin-bottom:60px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-graduate-list li:not(:last-of-type) {
        margin-bottom:40px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-list li:not(:last-of-type) {
        margin-bottom:20px
    }
}

.t-graduate-list a {
    color: #fff;
    position: relative;
    overflow: hidden;
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.045)
}

.t-graduate-list a::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-image: url("/assets/img/common/bg_pattern.png");
    background-size: 100px 100px;
    background-repeat: repeat;
    background-position: center;
    opacity: .2;
    transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

.t-graduate-list a.is-hover:hover::before {
    opacity: .1
}

.t-graduate-list a.is-hover:hover {
    box-shadow: 7px 7px 20px rgba(0,0,0,0.12)
}

@media screen and (min-width: 561px) {
    .t-graduate-list a {
        display:flex
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-list a {
        display:block
    }
}

.t-graduate-list a.is-hover:hover {
    opacity: 1
}

.t-graduate-list a.is-hover:hover img {
    -webkit-transform: scale(1.05);
    transform: scale(1.05)
}

.t-graduate-list figure {
    position: relative;
    overflow: hidden
}

@media screen and (min-width: 561px) {
    .t-graduate-list figure {
        width:39.81481%
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-list figure::after {
        content:'';
        display: block;
        padding-top: 74.4186%
    }
}

.t-graduate-list figure img {
    transition: -webkit-transform 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: transform 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    transition: transform 400ms cubic-bezier(0.165, 0.84, 0.44, 1), -webkit-transform 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    transition-property: opacity,-webkit-transform !important;
    transition-property: opacity,transform !important;
    transition-property: opacity,transform,-webkit-transform !important
}

@media screen and (min-width: 561px) {
    .t-graduate-list div {
        width:60.18519%
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-list div {
        padding:50px 5.55556% 60px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-graduate-list div {
        padding:40px 5.55556% 40px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-list div {
        padding:15px 5% 20px
    }
}

@media screen and (min-width: 561px) {
    .t-graduate-list__cell-reverse a {
        flex-direction:row-reverse
    }
}

.t-graduate-list__copy {
    line-height: 1.62162
}

@media screen and (min-width: 1024px) {
    .t-graduate-list__copy {
        font-size:calc( 1.0rem + 2vw);
        margin-bottom: 30px
    }
}

@media screen and (min-width: 1280px) {
    .t-graduate-list__copy {
        font-size:3.7rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-graduate-list__copy {
        font-size:calc( 1.0rem + 1.4vw);
        margin-bottom: 1em
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-list__copy {
        font-size:calc( 1.0rem + 1.4vw);
        margin-bottom: .5em
    }
}

@media screen and (min-width: 561px) {
    .t-graduate-list__copy--minus {
        letter-spacing:-.06em
    }
}

.t-graduate-list__name {
    line-height: 1.5
}

@media screen and (min-width: 1024px) {
    .t-graduate-list__name {
        font-size:1.8rem
    }
}

@media screen and (min-width: 1280px) {
    .t-graduate-list__name {
        font-size:2.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-graduate-list__name {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-list__name {
        font-size:1.2rem
    }
}

.t-graduate-list__more {
    position: absolute;
    right: 0;
    bottom: 0;
    text-transform: uppercase;
    letter-spacing: .22em;
    line-height: 1.75;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-graduate-list__more {
        font-size:1.2rem;
        padding: 34px 20px 22px 40px
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-list__more {
        font-size:1.0rem;
        padding: 20px 10px 12px 20px
    }
}

.t-graduate-list__more::after {
    content: '';
    display: block;
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0
}

@media screen and (min-width: 1024px) {
    .t-graduate-list__more::after {
        width:136px;
        height: 136px
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-list__more::after {
        width:95.2px;
        height: 95.2px
    }
}

.t-graduate-list__more span {
    position: relative;
    z-index: 1
}

.t-graduate-article__inner {
    position: relative;
    max-width: 1080px;
    margin: 0 auto;
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.045)
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__inner {
        width:90%;
        margin-top: 100px;
        margin-bottom: 100px
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-article__inner {
        width:100%
    }
}

@media screen and (min-width: 561px) {
    .t-graduate-article__close {
        height:80px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__close {
        height:50px
    }
}

.t-graduate-article__close a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    position: relative
}

.t-graduate-article__close a::before {
    content: '';
    display: block;
    width: 0;
    height: 100%;
    position: absolute;
    top: 0;
    left: auto;
    right: 0;
    z-index: 0;
    background-color: rgba(255,255,255,0.2);
    opacity: 0;
    transition: 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    transition-property: opacity,width
}

.t-graduate-article__close a.is-hover:hover {
    opacity: 1
}

.t-graduate-article__close a.is-hover:hover::before {
    width: 100%;
    left: 0;
    right: auto;
    opacity: 1
}

.t-graduate-article__close--top {
    position: absolute;
    top: 0;
    right: 0
}

@media screen and (min-width: 561px) {
    .t-graduate-article__close--top {
        width:80px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__close--top {
        width:50px
    }
}

.t-graduate-article__close__icon {
    display: block;
    background-color: #fff;
    position: absolute;
    top: 50%;
    left: 50%
}

@media screen and (min-width: 561px) {
    .t-graduate-article__close__icon {
        width:38px;
        height: 4px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__close__icon {
        width:26px;
        height: 2px
    }
}

.t-graduate-article__close__icon:nth-of-type(1) {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
    transform: translate(-50%, -50%) rotate(45deg)
}

.t-graduate-article__close__icon:nth-of-type(2) {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
    transform: translate(-50%, -50%) rotate(-45deg)
}

@media screen and (min-width: 769px) {
    .t-graduate-article__header {
        display:flex;
        align-items: flex-start;
        justify-content: space-between;
        padding: 0 5%;
        margin-bottom: 30px
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__header {
        padding:0 7.40741% 0 8.33333%
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__header {
        margin-bottom:20px
    }
}

.t-graduate-article__read {
    position: relative;
    z-index: 1;
    background-color: #fff;
    box-shadow: 5px 5px 12px rgba(0,0,0,0.065);
    background-color: rgba(255,255,255,0.95)
}

@media screen and (min-width: 769px) {
    .t-graduate-article__read {
        width:59.34066%;
        margin-top: -100px;
        padding: 0 5% 50px
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__read {
        margin-top:-170px;
        padding: 0 5.49451% 60px
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__read {
        width:90%;
        margin: -20px auto 20px;
        padding: 0 6% 24px
    }
}

.t-graduate-article__read h3 {
    color: #787878;
    text-shadow: 0px 0px 10px rgba(255,255,255,0.8),0px 0px 10px rgba(255,255,255,0.8),0px 0px 10px rgba(255,255,255,0.8);
    line-height: 1;
    -webkit-transform: rotate(-4deg);
    transform: rotate(-4deg)
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__read h3 {
        font-size:4.0rem;
        margin-top: -25px;
        margin-bottom: 28px
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__read h3 {
        font-size:5.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-graduate-article__read h3 {
        font-size:3.6rem;
        margin-top: -20px;
        margin-bottom: 26px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__read h3 {
        font-size:2.6rem;
        position: relative;
        -webkit-transform: rotate(-4deg) translateY(-20px);
        transform: rotate(-4deg) translateY(-20px)
    }
}

.t-graduate-article__read h4 {
    font-weight: bold;
    line-height: 1.66667
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__read h4 {
        font-size:2.8rem
    }
}

@media screen and (min-width: 1280px) {
    .t-graduate-article__read h4 {
        font-size:3.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-graduate-article__read h4 {
        font-size:2.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__read h4 {
        font-size:2.0rem
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__read h4 {
        margin-bottom:22px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-graduate-article__read h4 {
        margin-bottom:18px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__read h4 {
        margin-bottom:12px
    }
}

.t-graduate-article__profile {
    border: solid 1px
}

@media screen and (min-width: 769px) {
    .t-graduate-article__profile {
        width:32.96703%;
        margin-top: 40px;
        padding: 38px 4.3956% 30px
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__profile {
        display:flex;
        align-items: flex-start;
        width: 90%;
        margin: 0 auto;
        padding: 24px 5% 20px
    }
}

.t-graduate-article__profile h4 {
    letter-spacing: -.02em;
    line-height: 1
}

@media screen and (min-width: 769px) {
    .t-graduate-article__profile h4 {
        font-size:2.2rem;
        margin-bottom: 18px
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__profile h4 {
        font-size:2.5rem;
        margin-bottom: 20px
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__profile h4 {
        font-size:2.0rem;
        margin-right: 14px
    }
}

.t-graduate-article__profile p {
    color: #646464;
    line-height: 1.75
}

@media screen and (max-width: 768px) {
    .t-graduate-article__profile p {
        margin-top:-6px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__profile p {
        font-size:1.2rem
    }
}

.t-graduate-article__day {
    position: relative;
    display: flex;
    align-items: center;
    max-width: 880px;
    margin-right: auto;
    margin-left: auto
}

@media screen and (min-width: 769px) {
    .t-graduate-article__day {
        justify-content:space-between
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__day {
        width:100%
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-article__day {
        width:90%
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__day {
        flex-wrap:wrap;
        justify-content: center
    }
}

@media screen and (min-width: 769px) {
    .t-graduate-article__day__title {
        width:29.09091%
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__day__title {
        width:48%;
        margin-right: 2%
    }
}

.t-graduate-article__day__timeline {
    max-width: 286px
}

@media screen and (min-width: 769px) {
    .t-graduate-article__day__timeline {
        width:32.5%
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__day__timeline {
        width:50%
    }
}

.t-graduate-article__day__balloon {
    background-image: url("../img/graduate/balloon-yellow.png");
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    line-height: 1.71429;
    color: #333
}

@media screen and (min-width: 769px) {
    .t-graduate-article__day__balloon {
        max-width:280px;
        width: 31.81818%;
        font-size: 1.2rem;
        padding: 40px 3.63636%
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__day__balloon {
        font-size:1.4rem
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__day__balloon {
        max-width:260px;
        width: 100%;
        font-size: 1.3rem;
        padding: 26px 32px;
        margin-top: 10px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__day__balloon {
        font-size:1.2rem
    }
}

.t-graduate-article__qa {
    position: relative
}

@media screen and (min-width: 769px) {
    .t-graduate-article__qa {
        display:flex;
        align-items: center
    }
}

@media screen and (min-width: 769px) {
    .t-graduate-article__qa:nth-of-type(2n-1) {
        flex-direction:row-reverse
    }
}

.t-graduate-article__qa__text {
    position: relative;
    z-index: 1
}

@media screen and (min-width: 769px) {
    .t-graduate-article__qa__text {
        width:60%;
        padding: 0 5%
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__qa__text {
        width:61.11111%;
        padding: 0 6.48148%
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__qa__text {
        padding:40px 5% 0
    }
}

.t-graduate-article__qa__text h4 {
    font-weight: bold;
    color: #333
}

@media screen and (min-width: 769px) {
    .t-graduate-article__qa__text h4 {
        font-size:1.4rem;
        margin-bottom: 24px
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__qa__text h4 {
        font-size:1.6rem;
        margin-bottom: 28px
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__qa__text h4 {
        font-size:1.4rem;
        margin-bottom: 16px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__qa__text h4 {
        font-size:1.3rem;
        margin-bottom: 10px
    }
}

.t-graduate-article__qa__text h5 {
    font-weight: bold;
    line-height: 1.5
}

@media screen and (min-width: 769px) {
    .t-graduate-article__qa__text h5 {
        font-size:2.0rem;
        margin-bottom: 16px
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__qa__text h5 {
        font-size:2.4rem;
        margin-bottom: 20px
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__qa__text h5 {
        font-size:2.0rem;
        margin-bottom: 16px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__qa__text h5 {
        font-size:1.6rem;
        margin-bottom: 12px
    }
}

@media screen and (max-width: 320px) {
    .t-graduate-article__qa__text h5 {
        font-size:1.4rem
    }
}

@media screen and (min-width: 769px) {
    .t-graduate-article__qa__figure {
        width:40%
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__qa__figure {
        width:38.88889%
    }
}

.t-graduate-article__gallery {
    display: flex;
    flex-wrap: wrap;
    justify-content: flex-end;
    margin-left: -3.5%
}

.t-graduate-article__gallery figure {
    max-width: 420px;
    width: 46.5%;
    margin-top: 3.5%;
    margin-left: 3.5%
}

.t-graduate-article__hitokoto {
    position: relative;
    max-width: 960px;
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    border-radius: 10px;
    position: relative;
    overflow: hidden
}

.t-graduate-article__hitokoto::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-image: url("/assets/img/common/bg_pattern.png");
    background-size: 100px 100px;
    background-repeat: repeat;
    background-position: center;
    opacity: .15
}

@media screen and (min-width: 769px) {
    .t-graduate-article__hitokoto {
        padding:30px 4.62963% 35px 27.22222%
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__hitokoto {
        padding:43px 4.62963% 47px 27.22222%
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__hitokoto {
        padding:24px 6%
    }
}

.t-graduate-article__hitokoto h4 {
    background-image: url("../img/graduate/balloon-white.png");
    background-size: 100% 100%;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 0;
    right: 0;
    text-align: center;
    font-weight: bold;
    line-height: 1.57143;
    letter-spacing: .15em
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__hitokoto h4 {
        font-size:1.4rem;
        padding: 19px 24px 29px 32px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-graduate-article__hitokoto h4 {
        font-size:1.2rem;
        padding: 16px 20px 24px 26px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__hitokoto h4 {
        font-size:1.1rem;
        padding: 8px 10px 18px 18px
    }
}

.t-graduate-article__hitokoto__header {
    position: relative;
    z-index: 1
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__hitokoto__header {
        display:flex;
        flex-wrap: wrap;
        align-items: flex-end;
        margin-bottom: 15px;
        padding-right: 70px
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-article__hitokoto__header {
        margin-bottom:18px;
        padding-right: 80px
    }
}

.t-graduate-article__hitokoto__header h5,.t-graduate-article__hitokoto__header p {
    color: #fff;
    line-height: 1.5
}

.t-graduate-article__hitokoto__header h5 {
    font-weight: bold
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__hitokoto__header h5 {
        font-size:2.4rem;
        margin-right: 1em
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-article__hitokoto__header h5 {
        margin-bottom:.4em
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-graduate-article__hitokoto__header h5 {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__hitokoto__header h5 {
        font-size:1.6rem
    }
}

@media screen and (max-width: 414px) {
    .t-graduate-article__hitokoto__header h5 {
        font-size:calc( 1.0rem + 1.4vw)
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__hitokoto__header p {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-graduate-article__hitokoto__header p {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__hitokoto__header p {
        font-size:1.2rem
    }
}

.t-graduate-article__hitokoto__header p span {
    padding-left: 1.3em
}

@media screen and (max-width: 768px) {
    .t-graduate-article__hitokoto__content::after {
        content:".";
        display: block;
        clear: both;
        height: 0;
        line-height: 0;
        visibility: hidden
    }
}

@media screen and (min-width: 769px) {
    .t-graduate-article__hitokoto__figure {
        width:26.04167%;
        position: absolute;
        left: 0;
        bottom: 0
    }
}

@media screen and (max-width: 768px) {
    .t-graduate-article__hitokoto__figure {
        width:30%;
        float: right;
        margin-left: 20px;
        margin-bottom: 10px
    }
}

.t-graduate-article__message {
    position: relative;
    max-width: 920px;
    width: 90%;
    margin-left: auto;
    margin-right: auto
}

@media screen and (min-width: 561px) {
    .t-graduate-article__message {
        display:flex;
        align-items: flex-start;
        justify-content: space-between
    }
}

.t-graduate-article__message__text {
    position: relative;
    z-index: 1
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__message__text {
        padding-top:10px
    }
}

@media screen and (min-width: 561px) {
    .t-graduate-article__message__text {
        width:58.69565%
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__message__text {
        margin-bottom:20px
    }
}

.t-graduate-article__message__text h4 {
    color: #787878;
    line-height: 1;
    -webkit-transform: rotate(-4deg);
    transform: rotate(-4deg)
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__message__text h4 {
        font-size:4.0rem;
        margin-bottom: 60px
    }
}

@media screen and (min-width: 1280px) {
    .t-graduate-article__message__text h4 {
        font-size:5.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-graduate-article__message__text h4 {
        font-size:3.6rem;
        margin-bottom: 40px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__message__text h4 {
        font-size:2.6rem;
        margin-bottom: 30px
    }
}

.t-graduate-article__message__text h5 {
    font-weight: bold;
    line-height: 1.5
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__message__text h5 {
        font-size:2.4rem;
        margin-bottom: 26px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-graduate-article__message__text h5 {
        font-size:2.0rem;
        margin-bottom: 20px
    }
}

@media screen and (max-width: 560px) {
    .t-graduate-article__message__text h5 {
        font-size:1.6rem;
        margin-bottom: 14px
    }
}

.t-graduate-article__message__figure {
    text-align: center
}

@media screen and (min-width: 561px) {
    .t-graduate-article__message__figure {
        width:32.6087%
    }
}

.t-graduate-article__message__figure p {
    position: relative;
    z-index: 1;
    width: 100%;
    margin-right: auto;
    margin-left: auto
}

@media screen and (min-width: 1024px) {
    .t-graduate-article__message__figure p {
        margin-bottom:-40px
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-article__message__figure p {
        margin-bottom:-30px
    }
}

.t-graduate-article__message__figure figure {
    border-radius: 10px;
    overflow: hidden
}

.t-graduate-kakimoto .t-graduate-article__day__title {
    max-width: 254px
}

@media screen and (min-width: 1024px) {
    .t-graduate-kakimoto .t-graduate-article__message__figure p {
        max-width:275px
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-kakimoto .t-graduate-article__message__figure p {
        max-width:220px
    }
}

.t-graduate-araki .t-graduate-article__day__title {
    max-width: 256px
}

@media screen and (min-width: 1024px) {
    .t-graduate-araki .t-graduate-article__message__figure p {
        max-width:261px
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-araki .t-graduate-article__message__figure p {
        max-width:208.8px
    }
}

.t-graduate-matsue .t-graduate-article__day__title {
    max-width: 246px
}

@media screen and (min-width: 769px) {
    .t-graduate-matsue .t-graduate-article__day__balloon {
        padding-right:3%
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-matsue .t-graduate-article__message__figure p {
        max-width:204px
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-matsue .t-graduate-article__message__figure p {
        max-width:163.2px
    }
}

.t-graduate-honda .t-graduate-article__day__title {
    max-width: 255px
}

@media screen and (min-width: 1024px) {
    .t-graduate-honda .t-graduate-article__message__figure p {
        max-width:254px
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-honda .t-graduate-article__message__figure p {
        max-width:203.2px
    }
}

.t-graduate-uetani .t-graduate-article__day__title {
    max-width: 256px
}

@media screen and (min-width: 1024px) {
    .t-graduate-uetani .t-graduate-article__message__figure p {
        max-width:266px
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-uetani .t-graduate-article__message__figure p {
        max-width:212.8px
    }
}

.t-graduate-sakamoto .t-graduate-article__day__title {
    max-width: 248px
}

@media screen and (min-width: 1024px) {
    .t-graduate-sakamoto .t-graduate-article__message__figure p {
        max-width:197px
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-sakamoto .t-graduate-article__message__figure p {
        max-width:157.6px
    }
}

@media screen and (max-width: 1023px) {
    .t-graduate-object-01,.t-graduate-object-02,.t-graduate-object-03,.t-graduate-object-04,.t-graduate-object-05,.t-graduate-object-06 {
        display:none
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-object-01 {
        top:-70px;
        left: -200px
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-object-02 {
        top:-70px;
        right: -90px
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-object-03 {
        top:-62px;
        left: -172px
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-object-04 {
        top:-80px;
        left: -215px
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-object-05 {
        top:-160px;
        right: -74px
    }
}

@media screen and (min-width: 1024px) {
    .t-graduate-object-06 {
        top:-65px;
        left: -180px
    }
}

@media screen and (max-width: 1023px) {
    .t-greeting-hero .l-hero__bg img {
        -o-object-position:60% 50%;
        object-position: 60% 50%;
        background-position: 60% 50%
    }
}

@media screen and (max-width: 320px) {
    .t-greeting-hero .l-hero__bg img {
        height:86%;
        margin-top: 30px
    }
}

@media screen and (min-width: 769px) {
    .t-greeting-message__01 {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .t-greeting-message__01 {
        margin-bottom:104px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-greeting-message__01 {
        margin-bottom:40px
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-message__01 {
        margin-bottom:16px
    }
}

@media screen and (min-width: 769px) {
    .t-greeting-message__figure {
        width:34.88372%
    }
}

@media screen and (max-width: 768px) {
    .t-greeting-message__figure {
        max-width:300px;
        width: 100%;
        margin-bottom: 20px
    }
}

.t-greeting-message__figure p {
    font-weight: bold;
    color: #333;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .t-greeting-message__figure p {
        margin-top:25px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-greeting-message__figure p {
        margin-top:20px
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-message__figure p {
        margin-top:10px
    }
}

.t-greeting-message__figure p span {
    display: block
}

.t-greeting-message__title {
    line-height: 1.71429
}

@media screen and (min-width: 1024px) {
    .t-greeting-message__title {
        font-size:1.4rem;
        margin-bottom: 10px
    }
}

@media screen and (max-width: 1023px) {
    .t-greeting-message__title {
        font-size:1.1rem;
        margin-bottom: 8px
    }
}

.t-greeting-message__name {
    letter-spacing: .11em;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .t-greeting-message__name {
        font-size:2.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-greeting-message__name {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-message__name {
        font-size:1.4rem
    }
}

@media screen and (min-width: 769px) {
    .t-greeting-message__text {
        width:58%
    }
}

@media screen and (min-width: 1024px) {
    .t-greeting-message__text {
        width:52.32558%
    }
}

@media screen and (min-width: 1024px) {
    .t-greeting-message__text h3 {
        white-space:nowrap
    }
}

@media screen and (min-width: 1024px) {
    .t-greeting-message__02 {
        position:relative;
        display: flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .t-greeting-message__02 p {
        width:45.34884%
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-greeting-message__02 p {
        margin-bottom:40px
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-message__02 p {
        margin-bottom:20px
    }
}

.t-greeting-message__02 div {
    max-width: 415px
}

@media screen and (min-width: 1024px) {
    .t-greeting-message__02 div {
        width:48.25581%;
        position: absolute;
        bottom: -80px;
        right: -80px
    }
}

@media screen and (max-width: 1023px) {
    .t-greeting-message__02 div {
        margin:0 auto
    }
}

@media screen and (min-width: 1024px) {
    .t-greeting-teacher h3 {
        margin-bottom:90px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-greeting-teacher h3 {
        margin-bottom:50px
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-teacher h3 {
        margin-bottom:30px
    }
}

@media screen and (min-width: 561px) {
    .t-greeting-teacher__list {
        display:flex;
        flex-wrap: wrap
    }
}

@media screen and (min-width: 1100px) {
    .t-greeting-teacher__list>li {
        width:26.74419%
    }

    .t-greeting-teacher__list>li:not(:nth-of-type(3n)) {
        margin-right: 9.88372%
    }

    .t-greeting-teacher__list>li:nth-of-type(n+4) {
        margin-top: 60px
    }
}

@media screen and (max-width: 1099px) and (min-width: 769px) {
    .t-greeting-teacher__list>li {
        width:31%
    }

    .t-greeting-teacher__list>li:not(:nth-of-type(3n)) {
        margin-right: 3.5%
    }

    .t-greeting-teacher__list>li:nth-of-type(n+4) {
        margin-top: 50px
    }
}

@media screen and (max-width: 768px) and (min-width: 561px) {
    .t-greeting-teacher__list>li {
        width:48%
    }

    .t-greeting-teacher__list>li:nth-of-type(2n-1) {
        margin-right: 4%
    }

    .t-greeting-teacher__list>li:nth-of-type(n+3) {
        margin-top: 40px
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-teacher__list>li {
        display:flex;
        justify-content: space-between
    }

    .t-greeting-teacher__list>li:not(:last-of-type) {
        margin-bottom: 20px
    }
}

.t-greeting-teacher__list__figure {
    position: relative;
    z-index: 0
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-greeting-teacher__list__figure {
        margin-bottom:20px
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-teacher__list__figure {
        width:48%
    }
}

.t-greeting-teacher__list__text {
    position: relative;
    z-index: 1;
    display: flex
}

@media screen and (min-width: 1024px) {
    .t-greeting-teacher__list__text {
        margin-top:-26.08696%;
        margin-left: -8.69565%;
        padding-right: 10px
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-teacher__list__text {
        width:48%;
        padding-bottom: 10px
    }
}

@media screen and (min-width: 1024px) {
    .t-greeting-teacher__list__text div {
        min-width:200px;
        width: auto;
        min-height: 210px;
        height: auto;
        background-color: #fff;
        box-shadow: 7px 7px 10px rgba(0,0,0,0.045);
        background-color: rgba(255,255,255,0.7);
        padding: 20px 20px 15px
    }
}

.t-greeting-teacher__list__text p,.t-greeting-teacher__list__text h5 {
    font-weight: bold;
    letter-spacing: .06em;
    color: #333
}

@media screen and (min-width: 1024px) {
    .t-greeting-teacher__list__title,.t-greeting-teacher__list__category {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-greeting-teacher__list__title,.t-greeting-teacher__list__category {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-teacher__list__title,.t-greeting-teacher__list__category {
        font-size:1.2rem
    }
}

.t-greeting-teacher__list__title {
    line-height: 1
}

@media screen and (min-width: 561px) {
    .t-greeting-teacher__list__title {
        margin-bottom:6px
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-teacher__list__title {
        margin-bottom:8px
    }
}

.t-greeting-teacher__list__name {
    margin-bottom: 3px
}

@media screen and (min-width: 561px) {
    .t-greeting-teacher__list__name {
        margin-bottom:3px
    }
}

@media screen and (min-width: 1024px) {
    .t-greeting-teacher__list__name {
        font-size:2.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-greeting-teacher__list__name {
        font-size:1.8rem
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-teacher__list__name {
        font-size:1.6rem;
        margin-bottom: 1px
    }
}

.t-greeting-teacher__list__category {
    line-height: 1.42857
}

@media screen and (min-width: 1024px) {
    .t-greeting-teacher__list__category {
        margin-bottom:18px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-greeting-teacher__list__category {
        margin-bottom:15px
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-teacher__list__category {
        margin-bottom:12px
    }
}

.t-greeting-teacher__list__list li {
    line-height: 1.61538;
    color: #646464
}

@media screen and (min-width: 1280px) {
    .t-greeting-teacher__list__list li {
        font-size:1.3rem
    }
}

@media screen and (min-width: 1024px) {
    .t-greeting-teacher__list__list li {
        font-size:1.2rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-greeting-teacher__list__list li {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-greeting-teacher__list__list li {
        font-size:1.0rem
    }
}

.t-media {
    background-color: #fff;
    position: relative
}

.t-media::before,.t-media::after {
    width: 100%;
    position: absolute;
    top: 0;
    left: 0
}

@media screen and (min-width: 1024px) {
    .t-media::before,.t-media::after {
        height:600px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media::before,.t-media::after {
        height:400px
    }
}

@media screen and (max-width: 560px) {
    .t-media::before,.t-media::after {
        height:250px
    }
}

.t-media::before {
    content: '';
    background: linear-gradient(0deg, rgba(255,255,255,0) 0%, #ebc31e 100%);
    opacity: .7
}

.t-media::after {
    content: '';
    background-image: url(/assets/img/common/icon/media_pattern.svg);
    background-size: 100px 174px;
    opacity: .3
}

.t-media .js-delayAnchor {
    position: relative;
    z-index: 1
}

.t-media .js-delayAnchor::before,.t-media .js-delayAnchor::after {
    width: 100%;
    position: absolute;
    bottom: 0;
    left: 0
}

@media screen and (min-width: 1024px) {
    .t-media .js-delayAnchor::before,.t-media .js-delayAnchor::after {
        height:600px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media .js-delayAnchor::before,.t-media .js-delayAnchor::after {
        height:400px
    }
}

@media screen and (max-width: 560px) {
    .t-media .js-delayAnchor::before,.t-media .js-delayAnchor::after {
        height:250px
    }
}

.t-media .js-delayAnchor::before {
    content: '';
    background: linear-gradient(180deg, transparent 0%, #ebc31e 100%);
    opacity: .7
}

.t-media .js-delayAnchor::after {
    content: '';
    background-image: url(/assets/img/common/icon/media_pattern.svg);
    background-size: 100px 174px;
    opacity: .3
}

@media screen and (min-width: 1024px) {
    .t-media .js-delayAnchor {
        padding-bottom:140px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media .js-delayAnchor {
        padding-bottom:100px
    }
}

@media screen and (max-width: 560px) {
    .t-media .js-delayAnchor {
        padding-bottom:80px
    }
}

.t-media .p-article {
    position: relative
}

.t-media .p-article .c-new-maru {
    position: absolute;
    top: -10px;
    right: -10px
}

.t-media-hero {
    position: relative;
    z-index: 1
}

.t-media-nav {
    background-color: #000;
    width: 100%
}

.t-media-link {
    display: flex;
    justify-content: center;
    padding: 1.1em 0
}

@media screen and (max-width: 1023px) {
    .t-media-link {
        display:none
    }
}

@media screen and (min-width: 1024px) {
    .t-media-link li {
        border-right:1px solid #fff
    }

    .t-media-link li:first-child {
        border-left: 1px solid #fff
    }
}

@media screen and (max-width: 1023px) {
    .t-media-link li {
        width:33.33333%
    }

    .t-media-link li:nth-of-type(n+4) {
        margin-top: 1em
    }

    .t-media-link li:nth-child(1),.t-media-link li:nth-child(2),.t-media-link li:nth-child(4) {
        border-right: 1px solid #fff
    }
}

@media screen and (max-width: 560px) {
    .t-media-link li:nth-of-type(n+4) {
        width:50%
    }
}

.t-media-link a {
    display: block;
    width: 100%;
    height: 100%;
    color: #fff
}

@media screen and (min-width: 1024px) {
    .t-media-link a {
        font-size:1.5rem;
        padding: .2em 2em
    }
}

@media screen and (max-width: 1023px) {
    .t-media-link a {
        text-align:center
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-link a {
        font-size:1.4rem;
        padding: .2em 2em
    }
}

@media screen and (max-width: 560px) {
    .t-media-link a {
        font-size:1.2rem;
        padding: .2em 1em
    }
}

.t-media-link a.is-current {
    background-color: #ebc31e;
    color: #000
}

.t-media-link a.is-hover:hover span {
    opacity: 1;
    background-size: 100% 1px;
    background-position: 50% 100%
}

.t-media-link span {
    transition-property: background-size;
    background-image: linear-gradient(180deg, #fff, #fff);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 50% 100%;
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

.t-media-link__sp {
    position: relative;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-media-link__sp {
        display:none
    }
}

.t-media-link__name {
    display: inline-block;
    color: #fff;
    position: relative
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-link__name {
        font-size:1.4rem;
        padding: 1em 2em
    }
}

@media screen and (max-width: 560px) {
    .t-media-link__name {
        font-size:1.2rem;
        padding: 1em 1em
    }
}

.t-media-link__name::after {
    content: '';
    border-right: 1px solid #fff;
    border-bottom: 1px solid #fff;
    position: absolute;
    top: 41%;
    left: 91%;
    -webkit-transform: translateY(-50%) rotate(45deg);
    transform: translateY(-50%) rotate(45deg)
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-link__name::after {
        width:16px;
        height: 16px
    }
}

@media screen and (max-width: 560px) {
    .t-media-link__name::after {
        width:12px;
        height: 12px
    }
}

.t-media-form {
    text-align: center;
    opacity: 0;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.t-media-select {
    padding: 0;
    width: 100%;
    height: 100%
}

.t-media-logo {
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-media-logo {
        padding-top:100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-logo {
        padding-top:70px
    }
}

@media screen and (max-width: 560px) {
    .t-media-logo {
        padding-top:60px
    }
}

@media screen and (min-width: 1024px) {
    .t-media-logo img {
        width:455px;
        height: 109px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-logo img {
        width:364px;
        height: 87.2px
    }
}

@media screen and (max-width: 560px) {
    .t-media-logo img {
        width:273px;
        height: 65.4px
    }
}

.t-media-vision {
    max-width: 1080px;
    width: 100%;
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-media-vision {
        margin:0 auto 100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-vision {
        margin:0 auto 70px
    }
}

@media screen and (max-width: 560px) {
    .t-media-vision {
        margin:0 auto 60px
    }
}

.t-media-vision.is-shown .t-media-vision__txt p::after {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.t-media-vision__figure {
    z-index: 1
}

@media screen and (min-width: 561px) {
    .t-media-vision__figure {
        max-width:560px;
        width: 51.85185%;
        position: absolute;
        top: 0;
        left: 0
    }
}

@media screen and (max-width: 560px) {
    .t-media-vision__figure {
        width:86.95652%
    }
}

.t-media-vision__txt {
    max-width: 590px;
    margin-left: auto
}

@media screen and (min-width: 561px) {
    .t-media-vision__txt {
        width:54.62963%
    }
}

@media screen and (max-width: 560px) {
    .t-media-vision__txt {
        width:100%;
        margin-top: -8vw
    }
}

.t-media-vision__txt h1 {
    text-align: right;
    margin-bottom: 4px
}

@media screen and (min-width: 1024px) {
    .t-media-vision__txt h1 {
        padding-right:40px
    }
}

@media screen and (max-width: 1023px) {
    .t-media-vision__txt h1 {
        width:auto
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-vision__txt h1 {
        height:7vw
    }
}

@media screen and (max-width: 560px) {
    .t-media-vision__txt h1 {
        height:15.5vw
    }
}

@media screen and (max-width: 1023px) {
    .t-media-vision__txt h1 img {
        width:auto;
        height: 100%
    }
}

.t-media-vision__txt p {
    padding: 2em;
    background-color: rgba(255,255,255,0.6);
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 2.8125;
    position: relative;
    font-family: "TsukuAOldMinPr6-E"
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-vision__txt p {
        font-size:3vw
    }
}

@media screen and (min-width: 561px) {
    .t-media-vision__txt p {
        width:100%
    }
}

@media screen and (max-width: 560px) {
    .t-media-vision__txt p {
        width:72.46377%;
        margin-left: 20.28986%
    }
}

.t-media-vision__txt p::after {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    pointer-events: none;
    content: '';
    background-image: url("/assets/img/common/icon/icon_hana.svg");
    content: '';
    position: absolute;
    -webkit-transform: scale(0);
    transform: scale(0);
    transition: all 800ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition-delay: 400ms !important
}

@media screen and (min-width: 1024px) {
    .t-media-vision__txt p::after {
        width:120px;
        height: 116px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-vision__txt p::after {
        width:96px;
        height: 92.8px
    }
}

@media screen and (max-width: 560px) {
    .t-media-vision__txt p::after {
        width:72px;
        height: 69.6px
    }
}

@media screen and (min-width: 1024px) {
    .t-media-vision__txt p::after {
        bottom:-34px;
        right: 30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-vision__txt p::after {
        bottom:-27.2px;
        right: 5%
    }
}

@media screen and (max-width: 560px) {
    .t-media-vision__txt p::after {
        bottom:-20.4px;
        right: 5%
    }
}

.t-media-mission {
    max-width: 1080px;
    width: 100%;
    margin: 0 auto;
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-media-mission {
        margin:0 auto 100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-mission {
        margin:0 auto 70px
    }
}

@media screen and (max-width: 560px) {
    .t-media-mission {
        margin:0 auto 60px
    }
}

.t-media-mission.is-shown .t-media-mission__txt .t-media-mission__bg::after {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.t-media-mission__figure {
    z-index: 3
}

@media screen and (min-width: 561px) {
    .t-media-mission__figure {
        max-width:500px;
        width: 46.2963%;
        position: absolute;
        top: 0;
        right: 0
    }
}

@media screen and (max-width: 560px) {
    .t-media-mission__figure {
        width:100%
    }
}

.t-media-mission__txt {
    max-width: 590px;
    margin-right: auto
}

@media screen and (min-width: 561px) {
    .t-media-mission__txt {
        width:54.62963%
    }
}

@media screen and (max-width: 560px) {
    .t-media-mission__txt {
        width:100%;
        position: relative
    }
}

.t-media-mission__txt h1 {
    text-align: left;
    margin-bottom: 4px
}

@media screen and (max-width: 1023px) {
    .t-media-mission__txt h1 {
        width:100%
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-mission__txt h1 {
        height:7vw
    }
}

@media screen and (max-width: 560px) {
    .t-media-mission__txt h1 {
        height:15.5vw;
        position: absolute;
        top: calc( -15.5vw - 4px);
        right: 0;
        text-align: right
    }
}

@media screen and (max-width: 1023px) {
    .t-media-mission__txt h1 img {
        width:auto;
        height: 100%
    }
}

@media screen and (min-width: 561px) {
    .t-media-mission__txt p {
        width:100%
    }
}

.t-media-mission__bg {
    position: relative;
    margin: 0 auto
}

@media screen and (min-width: 561px) {
    .t-media-mission__bg {
        padding:4em 3em;
        max-width: 500px
    }
}

@media screen and (max-width: 560px) {
    .t-media-mission__bg {
        padding:4em 0;
        width: 90%
    }
}

.t-media-mission__bg::before {
    content: '';
    display: block;
    background-color: rgba(255,255,255,0.6);
    width: 150vw;
    height: 100%;
    position: absolute;
    left: -50vw;
    top: 0;
    z-index: 1
}

.t-media-mission__bg::after {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    pointer-events: none;
    content: '';
    background-image: url("/assets/img/common/icon/icon_hana.svg");
    content: '';
    position: absolute;
    -webkit-transform: scale(0);
    transform: scale(0);
    transition: all 800ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition-delay: 400ms !important
}

@media screen and (min-width: 1024px) {
    .t-media-mission__bg::after {
        width:70px;
        height: 68px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-mission__bg::after {
        width:56px;
        height: 54.4px
    }
}

@media screen and (max-width: 560px) {
    .t-media-mission__bg::after {
        width:42px;
        height: 40.8px
    }
}

@media screen and (min-width: 1024px) {
    .t-media-mission__bg::after {
        bottom:-34px;
        left: -34px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-mission__bg::after {
        bottom:-27.2px;
        left: 2.5%
    }
}

@media screen and (max-width: 560px) {
    .t-media-mission__bg::after {
        bottom:-20.4px;
        left: 2.5%
    }
}

.t-media-mission__ttl,.t-media-mission__p {
    position: relative;
    z-index: 2
}

.t-media-mission__ttl {
    text-align: left;
    margin-bottom: .5em;
    font-family: "TsukuAOldMinPr6-E"
}

@media screen and (min-width: 1024px) {
    .t-media-mission__ttl {
        font-size:3.2rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-mission__ttl {
        font-size:3vw
    }
}

@media screen and (max-width: 560px) {
    .t-media-mission__ttl {
        font-size:2.2rem
    }
}

.t-media-mission__p {
    line-height: 2.44444
}

@media screen and (min-width: 1024px) {
    .t-media-mission__p {
        font-size:1.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-mission__p {
        font-size:2vw
    }
}

@media screen and (max-width: 560px) {
    .t-media-mission__p {
        font-size:1.0rem
    }
}

.t-media-value {
    max-width: 1180px;
    width: 100%;
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-media-value {
        margin:0 auto 100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-value {
        margin:0 auto 70px
    }
}

@media screen and (max-width: 560px) {
    .t-media-value {
        margin:0 auto 60px
    }
}

.t-media-value.is-shown .t-media-value__txt p::after {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.t-media-value__figure {
    z-index: 1
}

@media screen and (min-width: 561px) {
    .t-media-value__figure {
        max-width:470px;
        width: 39.83051%;
        position: absolute;
        top: 0;
        left: 0
    }
}

@media screen and (max-width: 560px) {
    .t-media-value__figure {
        width:86.95652%
    }
}

.t-media-value__txt {
    max-width: 760px;
    margin-left: auto
}

@media screen and (min-width: 561px) {
    .t-media-value__txt {
        width:64.40678%
    }
}

@media screen and (max-width: 560px) {
    .t-media-value__txt {
        width:100%;
        margin-top: -8vw
    }
}

.t-media-value__txt h1 {
    text-align: right;
    margin-bottom: 4px
}

@media screen and (min-width: 1024px) {
    .t-media-value__txt h1 {
        padding-right:40px
    }
}

@media screen and (max-width: 1023px) {
    .t-media-value__txt h1 {
        width:auto
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-value__txt h1 {
        height:7vw
    }
}

@media screen and (max-width: 560px) {
    .t-media-value__txt h1 {
        height:15.5vw
    }
}

@media screen and (max-width: 1023px) {
    .t-media-value__txt h1 img {
        width:auto;
        height: 100%
    }
}

.t-media-value__txt p {
    padding: 2em;
    background-color: rgba(255,255,255,0.6);
    display: flex;
    justify-content: center;
    align-items: center;
    line-height: 2.8125;
    position: relative;
    font-family: "TsukuAOldMinPr6-E";
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-media-value__txt p {
        font-size:2.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-value__txt p {
        font-size:3vw
    }
}

@media screen and (min-width: 561px) {
    .t-media-value__txt p {
        width:100%
    }
}

@media screen and (max-width: 560px) {
    .t-media-value__txt p {
        width:100%;
        font-size: 4.6vw
    }
}

.t-media-value__txt p::after {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    pointer-events: none;
    content: '';
    background-image: url("/assets/img/common/icon/icon_hana.svg");
    content: '';
    position: absolute;
    -webkit-transform: scale(0);
    transform: scale(0);
    transition: all 800ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition-delay: 400ms !important
}

@media screen and (min-width: 1024px) {
    .t-media-value__txt p::after {
        width:120px;
        height: 116px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-value__txt p::after {
        width:96px;
        height: 92.8px
    }
}

@media screen and (max-width: 560px) {
    .t-media-value__txt p::after {
        width:72px;
        height: 69.6px
    }
}

@media screen and (min-width: 1024px) {
    .t-media-value__txt p::after {
        bottom:-34px;
        right: 30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-value__txt p::after {
        bottom:-27.2px;
        right: 5%
    }
}

@media screen and (max-width: 560px) {
    .t-media-value__txt p::after {
        bottom:-20.4px;
        right: 5%
    }
}

.t-media-product__txt {
    text-align: center;
    margin-bottom: .5em
}

@media screen and (min-width: 1024px) {
    .t-media-product__txt {
        font-size:2.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-product__txt {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-media-product__txt {
        font-size:1.6rem
    }
}

.t-media-product__link {
    max-width: 500px;
    width: 90%;
    margin: 0 auto
}

.t-media-product__link a {
    display: block;
    width: 100%;
    height: 100%;
    text-align: center;
    color: #fff;
    overflow: hidden;
    padding: .9em 0;
    background-image: url("../img/media/bg_product.jpg");
    background-position: center;
    background-repeat: no-repeat;
    background-size: 100%
}

@media screen and (min-width: 1024px) {
    .t-media-product__link a {
        font-size:4.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-media-product__link a {
        font-size:3.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-media-product__link a {
        font-size:2.4rem
    }
}

.t-media-product__link a.is-hover:hover {
    background-size: 103%
}

.t-news {
    padding-bottom: 50px
}

.t-news.t-news-single .l-breadcrumb li:last-child {
    display: none
}

.t-news.t-news-single .l-breadcrumb li:nth-last-child(2)::after {
    content: none
}

.t-news-p {
    font-weight: 400;
    text-align: center;
    line-height: 2
}

@media screen and (min-width: 1024px) {
    .t-news-p {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-news-p {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-news-p {
        font-size:1.2rem
    }
}

@media screen and (min-width: 769px) {
    .t-opencampus-hero .l-hero__bg>div {
        width:130%
    }
}

@media screen and (min-width: 1280px) {
    .t-opencampus-hero .l-hero__bg>div {
        width:100%
    }
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read {
        margin-bottom:95px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-read {
        margin-bottom:65px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read {
        margin-bottom:50px
    }
}

.t-opencampus-read__object-01 {
    top: -4px;
    z-index: 2
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read__object-01 {
        left:4px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-read__object-01 {
        left:calc(50% - 300px)
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__object-01 {
        left:calc(50% - 180px)
    }
}

.t-opencampus-read__object-02 {
    top: 4px;
    z-index: 2
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read__object-02 {
        right:0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-read__object-02 {
        right:calc(50% - 300px)
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__object-02 {
        right:calc(50% - 190px)
    }
}

.t-opencampus-read__title {
    position: relative;
    z-index: 3;
    display: flex;
    align-items: flex-end;
    justify-content: center;
    background-image: url("../img/opencampus/read_building.svg");
    background-repeat: no-repeat;
    background-position: 50% 12px;
    margin-bottom: 25px
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read__title {
        background-size:442px;
        padding-right: 38px
    }
}

@media screen and (max-width: 1023px) {
    .t-opencampus-read__title {
        flex-wrap:wrap;
        background-size: 353.6px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__title {
        background-size:221px
    }
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read__title h2 {
        order:1;
        margin: 0 4px 0 10px;
        padding-bottom: 25px
    }
}

@media screen and (max-width: 1023px) {
    .t-opencampus-read__title h2 {
        width:100%;
        margin-bottom: 20px
    }
}

.t-opencampus-read__students {
    display: flex;
    align-items: flex-end
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read__students:nth-of-type(1) {
        order:0
    }
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read__students:nth-of-type(2) {
        order:2
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-read__students:nth-of-type(2) {
        margin:0 20px 0 10px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__students:nth-of-type(2) {
        margin:0 6px 0 12px
    }
}

.t-opencampus-read__students img {
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    -webkit-font-smoothing: antialiased
}

.t-opencampus-read__student-01 {
    margin-right: -6px;
    -webkit-animation: frame-01 3000ms infinite;
    animation: frame-01 3000ms infinite
}

@media screen and (min-width: 561px) {
    .t-opencampus-read__student-01 {
        width:121px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__student-01 {
        width:96.8px
    }
}

.t-opencampus-read__student-02 {
    -webkit-animation: frame-02 3000ms 1500ms infinite;
    animation: frame-02 3000ms 1500ms infinite
}

@media screen and (min-width: 561px) {
    .t-opencampus-read__student-02 {
        width:59px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__student-02 {
        width:47.2px
    }
}

.t-opencampus-read__student-03 {
    margin-right: 6px;
    -webkit-animation: frame-01 3000ms 1500ms infinite;
    animation: frame-01 3000ms 1500ms infinite
}

@media screen and (min-width: 561px) {
    .t-opencampus-read__student-03 {
        width:71px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__student-03 {
        width:56.8px
    }
}

.t-opencampus-read__student-04 {
    -webkit-animation: frame-02 3000ms infinite;
    animation: frame-02 3000ms infinite
}

@media screen and (min-width: 561px) {
    .t-opencampus-read__student-04 {
        width:62px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__student-04 {
        width:49.6px
    }
}

.t-opencampus-read__voice h3 {
    text-align: center;
    font-weight: bold;
    line-height: 1;
    letter-spacing: .15em
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read__voice h3 {
        font-size:1.6rem;
        margin-bottom: 10px
    }
}

@media screen and (max-width: 1023px) {
    .t-opencampus-read__voice h3 {
        font-size:1.5rem;
        padding-bottom: 8px
    }
}

.t-opencampus-read__voice h3 span {
    display: inline-block;
    border-bottom: solid 2px #000
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read__voice h3 span {
        padding-bottom:12px
    }
}

@media screen and (max-width: 1023px) {
    .t-opencampus-read__voice h3 span {
        padding-bottom:10px
    }
}

.t-opencampus-read__voice ul {
    max-width: 790px;
    width: 100%;
    margin: 0 auto;
    display: flex
}

@media screen and (min-width: 561px) {
    .t-opencampus-read__voice ul {
        justify-content:space-between
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__voice ul {
        flex-wrap:wrap;
        justify-content: center
    }
}

.t-opencampus-read__voice li {
    position: relative
}

@media screen and (min-width: 561px) {
    .t-opencampus-read__voice li {
        width:21.51899%
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__voice li {
        margin:5px
    }
}

.t-opencampus-read__voice li::before {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    pointer-events: none
}

.t-opencampus-read__voice li:nth-of-type(1)::before {
    background-image: url("../img/opencampus/read_voice_icon_01.svg")
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read__voice li:nth-of-type(1)::before {
        width:32px;
        height: 40px;
        top: 19px;
        left: -39px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-read__voice li:nth-of-type(1)::before {
        width:25.6px;
        height: 32px;
        top: 15.2px;
        left: -31.2px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__voice li:nth-of-type(1)::before {
        width:19.2px;
        height: 24px;
        top: 11.4px;
        left: -23.4px
    }
}

.t-opencampus-read__voice li:nth-of-type(2)::before {
    background-image: url("../img/opencampus/read_voice_icon_02.svg");
    top: 0;
    left: 2px
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read__voice li:nth-of-type(2)::before {
        width:24px;
        height: 20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-read__voice li:nth-of-type(2)::before {
        width:19.2px;
        height: 16px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__voice li:nth-of-type(2)::before {
        width:14.4px;
        height: 12px
    }
}

.t-opencampus-read__voice li:nth-of-type(3)::before {
    background-image: url("../img/opencampus/read_voice_icon_03.svg")
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read__voice li:nth-of-type(3)::before {
        width:14px;
        height: 24px;
        top: 16px;
        right: -10px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-read__voice li:nth-of-type(3)::before {
        width:11.2px;
        height: 19.2px;
        top: 12.8px;
        right: -8px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__voice li:nth-of-type(3)::before {
        width:8.4px;
        height: 14.4px;
        top: 9.6px;
        right: -6px
    }
}

.t-opencampus-read__voice li:nth-of-type(4)::before {
    background-image: url("../img/opencampus/read_voice_icon_01.svg");
    right: 3px
}

@media screen and (min-width: 1024px) {
    .t-opencampus-read__voice li:nth-of-type(4)::before {
        width:32px;
        height: 40px;
        right: -30px;
        bottom: 18px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-read__voice li:nth-of-type(4)::before {
        width:25.6px;
        height: 32px;
        right: -24px;
        bottom: 14.4px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-read__voice li:nth-of-type(4)::before {
        width:19.2px;
        height: 24px;
        right: -18px;
        bottom: 10.8px
    }
}

@media screen and (max-width: 414px) {
    .t-opencampus-read__voice li img {
        max-width:150px
    }
}

@media screen and (min-width: 561px) {
    .t-opencampus-point__list {
        display:flex;
        flex-wrap: wrap;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .t-opencampus-point__cell {
        width:41.86047%
    }

    .t-opencampus-point__cell:nth-of-type(n+3) {
        margin-top: 55px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-point__cell {
        width:48%
    }

    .t-opencampus-point__cell:nth-of-type(n+3) {
        margin-top: 45px
    }
}

@media screen and (max-width: 768px) {
    .t-opencampus-point__cell:not(:last-of-type) {
        margin-bottom:30px
    }
}

.t-opencampus-point__cell figure {
    max-width: 300px;
    width: 100%;
    margin: 0 auto
}

@media screen and (max-width: 560px) {
    .t-opencampus-point__cell figure {
        margin-bottom:10px
    }
}

.t-opencampus-point__cell img {
    border-radius: 50%
}

.t-opencampus-point__cell h4 {
    color: #646464;
    font-weight: bold
}

@media screen and (min-width: 1024px) {
    .t-opencampus-point__cell h4 {
        font-size:2.0rem;
        margin-bottom: 16px
    }
}

@media screen and (min-width: 1280px) {
    .t-opencampus-point__cell h4 {
        font-size:2.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-point__cell h4 {
        font-size:1.8rem;
        margin-bottom: 12px
    }
}

@media screen and (max-width: 768px) {
    .t-opencampus-point__cell h4 {
        font-size:1.4rem;
        margin-bottom: 6px
    }
}

.t-opencampus-point__point {
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-opencampus-point__point {
        margin:-20px 45px 7px 0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-point__point {
        margin:-10px 20px 7px 0
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-point__point {
        margin:3px 10px 9px 0
    }
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule {
        margin-bottom:125px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule {
        margin-bottom:90px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule {
        margin-bottom:80px
    }
}

.t-opencampus-schedule__section {
    border-bottom: solid 2px #666
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__section {
        padding-bottom:50px;
        margin-bottom: 65px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__section {
        padding-bottom:40px;
        margin-bottom: 50px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__section {
        padding-bottom:30px;
        margin-bottom: 35px
    }
}

@media screen and (min-width: 769px) {
    .t-opencampus-schedule__header {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__header {
        margin-bottom:35px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__header {
        margin-bottom:30px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__header {
        margin-bottom:25px
    }
}

@media screen and (min-width: 769px) {
    .t-opencampus-schedule__header__text {
        flex:1
    }
}

@media screen and (max-width: 768px) {
    .t-opencampus-schedule__header__text {
        margin-bottom:20px
    }
}

.t-opencampus-schedule__header__copy {
    display: flex;
    align-items: center;
    font-weight: bold;
    letter-spacing: .12em
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__header__copy {
        font-size:2.4rem;
        margin-bottom: 18px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__header__copy {
        font-size:1.8rem;
        margin-bottom: 15px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__header__copy {
        font-size:1.6rem;
        margin-bottom: 10px
    }
}

.t-opencampus-schedule__header__copy::before {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__header__copy::before {
        margin-right:20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__header__copy::before {
        margin-right:16px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__header__copy::before {
        margin-right:16px
    }
}

.t-opencampus-schedule__header__copy span {
    flex: 1;
    line-height: 1.4
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__header__copy span {
        margin-bottom:-12px
    }
}

.t-opencampus-schedule__header__title {
    color: #333;
    font-weight: bold;
    margin-bottom: 10px
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__header__title {
        font-size:3.0rem
    }
}

@media screen and (min-width: 1280px) {
    .t-opencampus-schedule__header__title {
        font-size:4.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__header__title {
        font-size:2.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__header__title {
        font-size:2.0rem
    }
}

@media screen and (max-width: 414px) {
    .t-opencampus-schedule__header__title {
        font-size:calc( 1.0rem + 2.05vw)
    }
}

@media screen and (max-width: 320px) {
    .t-opencampus-schedule__header__title {
        font-size:1.6rem
    }
}

.t-opencampus-schedule__header__title span {
    display: inline-block;
    font-weight: normal;
    color: #646464
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__header__title span {
        font-size:1.4rem;
        margin-left: 16px
    }
}

@media screen and (max-width: 1023px) {
    .t-opencampus-schedule__header__title span {
        font-size:1.0rem;
        margin-left: 10px
    }
}

.t-opencampus-schedule__header__point {
    display: flex;
    flex-wrap: wrap
}

@media screen and (min-width: 769px) {
    .t-opencampus-schedule__header__point {
        position:relative;
        z-index: 1
    }
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__header__point {
        width:154.95495%;
        margin-top: 30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__header__point {
        margin-top:20px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__header__point {
        margin-top:14px
    }
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__header__point li {
        margin:5px 12px 5px 0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__header__point li {
        width:60px;
        margin: 4px 8px 4px 0
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__header__point li {
        width:36px;
        margin: 2px 4px 2px 0
    }
}

@media screen and (min-width: 561px) {
    .t-opencampus-schedule__header__target {
        display:flex;
        align-items: baseline
    }
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__header__target {
        margin-top:12px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__header__target {
        margin-top:10px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__header__target {
        margin-top:8px
    }
}

.t-opencampus-schedule__header__target dt {
    color: #fff;
    font-weight: bold;
    letter-spacing: .08em;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__header__target dt {
        font-size:1.6rem;
        padding: 7px;
        margin-right: 13px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__header__target dt {
        font-size:1.5rem;
        padding: 6px;
        margin-right: 10px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__header__target dt {
        font-size:1.4rem;
        padding: 6px;
        margin-bottom: 5px;
        text-align: center
    }
}

@media screen and (min-width: 561px) {
    .t-opencampus-schedule__header__target dd {
        flex:1
    }
}

.t-opencampus-schedule__header__target ul {
    display: flex;
    flex-wrap: wrap
}

.t-opencampus-schedule__header__target li {
    font-weight: bold;
    margin: 3px 6px 3px 0
}

.t-opencampus-schedule__header__target li::before {
    color: #b067b3
}

.t-opencampus-schedule__header__figure {
    position: relative;
    max-width: 260px;
    margin-left: 3%
}

@media screen and (min-width: 769px) {
    .t-opencampus-schedule__header__figure {
        width:25.5814%
    }
}

@media screen and (min-width: 1280px) {
    .t-opencampus-schedule__header__figure {
        width:30.23256%;
        margin-right: 20px
    }
}

@media screen and (max-width: 768px) {
    .t-opencampus-schedule__header__figure {
        width:100%;
        margin: 0 auto
    }
}

.t-opencampus-schedule__header__figure img {
    border-radius: 50%
}

.t-opencampus-schedule__header__figure p {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    text-align: center;
    color: #fff;
    font-weight: bold;
    line-height: 1.25;
    letter-spacing: .1em;
    position: absolute;
    top: 16px
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__header__figure p {
        width:90px;
        height: 90px;
        font-size: 2.0rem;
        right: -20px
    }
}

@media screen and (min-width: 1280px) {
    .t-opencampus-schedule__header__figure p {
        width:116px;
        height: 116px;
        font-size: 2.4rem
    }
}

@media screen and (max-width: 1023px) {
    .t-opencampus-schedule__header__figure p {
        right:-2%
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__header__figure p {
        width:80px;
        height: 80px;
        font-size: 1.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__header__figure p {
        width:70px;
        height: 70px;
        font-size: 1.4rem
    }
}

.t-opencampus-schedule__days {
    padding-top: 1px
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__days {
        margin-bottom:32px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__days {
        margin-bottom:26px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__days {
        margin-bottom:20px
    }
}

.t-opencampus-schedule__days li {
    border-top: solid 1px #666;
    border-bottom: solid 1px #666;
    margin-top: -1px
}

@media screen and (min-width: 769px) {
    .t-opencampus-schedule__days li {
        display:flex;
        align-items: center
    }
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__days li {
        padding:17px 20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__days li {
        padding:12px 14px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__days li {
        padding:8px 10px
    }
}

@media screen and (max-width: 340px) {
    .t-opencampus-schedule__days li {
        padding:8px 0
    }
}

.t-opencampus-schedule__days p {
    vertical-align: middle;
    color: #646464
}

@media screen and (max-width: 768px) {
    .t-opencampus-schedule__days p {
        margin-bottom:4px
    }
}

.t-opencampus-schedule__days p span {
    display: inline-block;
    vertical-align: middle
}

.t-opencampus-schedule__days p span:nth-of-type(1),.t-opencampus-schedule__days p span:nth-of-type(3) {
    margin-bottom: -.1em
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__days p span:nth-of-type(1),.t-opencampus-schedule__days p span:nth-of-type(3) {
        font-size:2.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__days p span:nth-of-type(1),.t-opencampus-schedule__days p span:nth-of-type(3) {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__days p span:nth-of-type(1),.t-opencampus-schedule__days p span:nth-of-type(3) {
        font-size:1.5rem
    }
}

.t-opencampus-schedule__days p span:nth-of-type(1) {
    min-width: 4.65em;
    letter-spacing: .04em
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__days p span:nth-of-type(1) {
        margin-right:10px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__days p span:nth-of-type(1) {
        margin-right:4px
    }
}

.t-opencampus-schedule__days p span:nth-of-type(2) {
    color: #fff;
    font-weight: bold;
    padding: 3px
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__days p span:nth-of-type(2) {
        font-size:1.3rem;
        margin-right: 15px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__days p span:nth-of-type(2) {
        font-size:1.2rem;
        margin-right: 10px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__days p span:nth-of-type(2) {
        font-size:1.0rem;
        margin-right: 6px
    }
}

.t-opencampus-schedule__days p span:nth-of-type(3) {
    letter-spacing: -.01em
}

.t-opencampus-schedule__days dl {
    display: flex;
    align-items: center
}

@media screen and (min-width: 769px) {
    .t-opencampus-schedule__days dl {
        margin-left:40px
    }
}

@media screen and (min-width: 1280px) {
    .t-opencampus-schedule__days dl {
        margin-left:80px
    }
}

.t-opencampus-schedule__days dl dt {
    margin-bottom: -.2em
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__days dl dt {
        margin-right:28px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__days dl dt {
        margin-right:10px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__days dl dt {
        margin-right:8px
    }
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__days dl dt,.t-opencampus-schedule__days dl span:nth-of-type(2) {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__days dl dt,.t-opencampus-schedule__days dl span:nth-of-type(2) {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__days dl dt,.t-opencampus-schedule__days dl span:nth-of-type(2) {
        font-size:1.2rem
    }
}

.t-opencampus-schedule__days dl span {
    display: inline-block;
    vertical-align: middle
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__days dl span:nth-of-type(1),.t-opencampus-schedule__days dl span:nth-of-type(3) {
        font-size:2.0rem;
        margin-bottom: -.1em
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__days dl span:nth-of-type(1),.t-opencampus-schedule__days dl span:nth-of-type(3) {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__days dl span:nth-of-type(1),.t-opencampus-schedule__days dl span:nth-of-type(3) {
        font-size:1.4rem;
        margin-bottom: -.2em
    }
}

.t-opencampus-schedule__days dl span:nth-of-type(1) {
    letter-spacing: .03em;
    margin-right: 2px
}

.t-opencampus-schedule__days dl span:nth-of-type(3) {
    letter-spacing: -.01em
}

@media screen and (min-width: 769px) {
    .t-opencampus-schedule__days-column {
        display:flex;
        flex-wrap: wrap
    }
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__days-column .t-opencampus-schedule__days:not(:last-of-type) {
        margin-right:30px
    }
}

@media screen and (min-width: 1280px) {
    .t-opencampus-schedule__days-column .t-opencampus-schedule__days:not(:last-of-type) {
        margin-right:70px
    }
}

@media screen and (max-width: 768px) {
    .t-opencampus-schedule__days-column .t-opencampus-schedule__days:not(:last-of-type) {
        margin-bottom:0
    }
}

@media screen and (max-width: 768px) {
    .t-opencampus-schedule__days-column .t-opencampus-schedule__days:not(:first-of-type) {
        margin-top:-1px
    }
}

.t-opencampus-schedule__banner {
    max-width: 860px;
    width: 100%
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__banner {
        margin:8px auto 32px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__banner {
        margin:6px auto 26px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__banner {
        margin:4px auto 20px
    }
}

.t-opencampus-schedule__opencampus .t-opencampus-schedule__header__copy {
    color: #009ab7
}

.t-opencampus-schedule__opencampus .t-opencampus-schedule__header__copy::before {
    background-image: url("../img/opencampus/opencampus_header_icon.svg")
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__opencampus .t-opencampus-schedule__header__copy::before {
        width:97px;
        height: 56px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__opencampus .t-opencampus-schedule__header__copy::before {
        width:77.6px;
        height: 44.8px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__opencampus .t-opencampus-schedule__header__copy::before {
        width:58.2px;
        height: 33.6px
    }
}

.t-opencampus-schedule__opencampus .t-opencampus-schedule__header__figure p {
    background-color: #ebc31e;
    color: #646464
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__opencampus .t-opencampus-schedule__header__figure p {
        font-size:1.5rem
    }
}

@media screen and (min-width: 1280px) {
    .t-opencampus-schedule__opencampus .t-opencampus-schedule__header__figure p {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__opencampus .t-opencampus-schedule__header__figure p {
        font-size:1.2rem
    }
}

.t-opencampus-schedule__guardian .t-opencampus-schedule__header__copy {
    color: #fc7871
}

.t-opencampus-schedule__guardian .t-opencampus-schedule__header__copy::before {
    background-image: url("../img/opencampus/guardian_header_icon.svg")
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__guardian .t-opencampus-schedule__header__copy::before {
        width:97px;
        height: 56px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__guardian .t-opencampus-schedule__header__copy::before {
        width:77.6px;
        height: 44.8px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__guardian .t-opencampus-schedule__header__copy::before {
        width:58.2px;
        height: 33.6px
    }
}

.t-opencampus-schedule__guardian .t-opencampus-schedule__header__figure p {
    background-color: #fc7871
}

.t-opencampus-schedule__guardian .t-opencampus-schedule__days dl {
    color: #fc7871
}

.t-opencampus-schedule__night .t-opencampus-schedule__header__copy {
    color: #b067b3
}

.t-opencampus-schedule__night .t-opencampus-schedule__header__copy::before {
    background-image: url("../img/opencampus/night_header_icon.svg")
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__night .t-opencampus-schedule__header__copy::before {
        width:74px;
        height: 54px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-schedule__night .t-opencampus-schedule__header__copy::before {
        width:59.2px;
        height: 43.2px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-schedule__night .t-opencampus-schedule__header__copy::before {
        width:44.4px;
        height: 32.4px
    }
}

.t-opencampus-schedule__night .t-opencampus-schedule__header__target dt {
    background-color: #b067b3
}

.t-opencampus-schedule__night .t-opencampus-schedule__header__figure p {
    background-color: #b067b3
}

.t-opencampus-schedule__night .t-opencampus-schedule__days dl {
    color: #b067b3
}

.t-opencampus-schedule__btn {
    max-width: 700px
}

@media screen and (min-width: 1024px) {
    .t-opencampus-schedule__btn {
        margin-bottom:40px
    }
}

.t-opencampus-schedule__btn a {
    background-image: linear-gradient(90deg, #c57bc0, #cb72ce)
}

.t-opencampus-voice__inner {
    position: relative;
    z-index: 2;
    max-width: 1080px;
    width: 100%;
    margin: 0 auto
}

.t-opencampus-voice__content {
    max-width: 900px;
    width: 100%;
    margin: 0 auto
}

.t-opencampus-voice__title {
    width: 100%;
    margin: 0 auto;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-opencampus-voice__title {
        max-width:538px;
        margin-bottom: 45px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-opencampus-voice__title {
        max-width:430.4px;
        margin-bottom: 36px
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-voice__title {
        max-width:322.8px;
        margin-bottom: 27px
    }
}

.t-opencampus-voice__list {
    display: flex;
    flex-wrap: wrap
}

@media screen and (min-width: 561px) {
    .t-opencampus-voice__list li {
        width:33.33333%
    }
}

@media screen and (max-width: 560px) {
    .t-opencampus-voice__list li {
        width:50%
    }

    .t-opencampus-voice__list li:nth-of-type(1) {
        order: 0
    }

    .t-opencampus-voice__list li:nth-of-type(2) {
        order: 1
    }

    .t-opencampus-voice__list li:nth-of-type(3) {
        order: 3
    }

    .t-opencampus-voice__list li:nth-of-type(4) {
        order: 2
    }

    .t-opencampus-voice__list li:nth-of-type(5) {
        order: 4
    }

    .t-opencampus-voice__list li:nth-of-type(6) {
        order: 5
    }

    .t-opencampus-voice__list li:nth-of-type(7) {
        order: 7
    }

    .t-opencampus-voice__list li:nth-of-type(8) {
        order: 6
    }

    .t-opencampus-voice__list li:nth-of-type(9) {
        order: 8
    }

    .t-opencampus-voice__list li:nth-of-type(10) {
        order: 9
    }

    .t-opencampus-voice__list li:nth-of-type(11) {
        order: 11
    }

    .t-opencampus-voice__list li:nth-of-type(12) {
        order: 10
    }
}

.t-privacy-read {
    color: #333
}

@media screen and (min-width: 1024px) {
    .t-privacy-read {
        text-align:center;
        margin-bottom: 32px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-privacy-read {
        margin-bottom:25px
    }
}

@media screen and (max-width: 560px) {
    .t-privacy-read {
        margin-bottom:20px
    }
}

.t-privacy-list {
    counter-reset: item
}

.t-privacy-list>li {
    border-top: solid 1px #999
}

@media screen and (min-width: 1024px) {
    .t-privacy-list>li {
        padding:35px 30px 30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-privacy-list>li {
        padding:25px 20px 20px
    }
}

@media screen and (max-width: 560px) {
    .t-privacy-list>li {
        padding:20px 5px 15px
    }
}

.t-privacy-list>li:last-of-type {
    padding-bottom: 0
}

.t-privacy-list h3 {
    font-weight: bold;
    color: #333
}

@media screen and (min-width: 561px) {
    .t-privacy-list h3 {
        font-size:1.6rem;
        margin-bottom: 10px
    }
}

@media screen and (max-width: 560px) {
    .t-privacy-list h3 {
        font-size:1.4rem;
        margin-bottom: 5px
    }
}

.t-privacy-list h3::before {
    counter-increment: item;
    content: counter(item) ". "
}

.t-privacy-list p,.t-privacy-list li,.t-privacy-list a {
    color: #646464
}

.t-product .c-product>.c-space-e-large {
    width: 100%
}

.t-product-single .l-hero__content {
    max-width: 1000px
}

@media screen and (max-width: 1023px) {
    .t-product-single .c-product-card__ttl {
        top:0;
        left: 0
    }
}

.t-product-single .c-product-card__ttl>span {
    font-weight: 600
}

@media screen and (max-width: 1023px) {
    .t-product-single .c-product-card__ttl>span {
        -webkit-writing-mode:unset;
        -ms-writing-mode: unset;
        writing-mode: unset
    }
}

@media screen and (max-width: 1023px) {
    .t-product-single .c-product-card__ttl>span span {
        display:inline-block
    }
}

@media screen and (max-width: 560px) {
    .t-product-single .l-breadcrumb {
        padding-top:44px;
        justify-content: flex-start
    }
}

@media screen and (min-width: 1170px) {
    .t-product-limited .c-product-card__ttl {
        left:calc( -152px / 2)
    }
}

.t-product-limited .c-product-card__ttl::before,.t-product-limited .c-product-card__ttl::after {
    content: none
}

.t-product-limited .c-product-card__ttl>span {
    border: none;
    line-height: 1.67857
}

@media screen and (min-width: 1024px) {
    .t-product-limited .c-product-card__ttl>span {
        padding:2em 1.5em
    }
}

@media screen and (max-width: 1023px) {
    .t-product-limited .c-product-card__ttl>span {
        padding:1.5em 1em
    }
}

.t-product-limited .c-product-card__ttl>span::before,.t-product-limited .c-product-card__ttl>span::after {
    content: none
}

.t-product-limited .c-product-card__ttl>span span {
    display: block;
    line-height: 1.67857;
    padding: 0
}

@media screen and (min-width: 1024px) {
    .t-product-limited .c-product-card__ttl>span span {
        font-size:2.4rem
    }
}

@media screen and (max-width: 1023px) {
    .t-product-limited .c-product-card__ttl>span span {
        padding:0;
        margin-right: 0
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-limited .c-product-card__ttl>span span {
        font-size:1.8rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-limited .c-product-card__ttl>span span {
        font-size:1.4rem
    }
}

.t-product-limited .t-product-hero-limited {
    position: absolute;
    top: -1em;
    line-height: 1 !important;
    z-index: 2
}

@media screen and (min-width: 1024px) {
    .t-product-limited .t-product-hero-limited {
        font-size:2.4rem;
        right: -1em;
        padding: 1em .5em !important
    }
}

@media screen and (max-width: 1023px) {
    .t-product-limited .t-product-hero-limited {
        left:-1em;
        padding: .5em 1em !important
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-limited .t-product-hero-limited {
        font-size:1.8rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-limited .t-product-hero-limited {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-limited .l-breadcrumb {
        padding-top:60px
    }
}

.t-product-first {
    max-width: 450px;
    width: 90%;
    margin: 0 auto
}

@media screen and (min-width: 1024px) {
    .t-product-first {
        padding-bottom:140px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-first {
        padding-bottom:100px
    }
}

@media screen and (max-width: 560px) {
    .t-product-first {
        padding-bottom:80px
    }
}

.t-product-first__ttl {
    margin-bottom: .7em;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-product-first__ttl {
        font-size:2.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-first__ttl {
        font-size:2.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-first__ttl {
        font-size:2.0rem
    }
}

.t-product-first__p {
    line-height: 2;
    font-weight: 400
}

@media screen and (min-width: 1024px) {
    .t-product-first__p {
        font-size:1.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-first__p {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-first__p {
        font-size:1.1rem
    }
}

.t-product-top {
    position: relative
}

.t-product-top figure {
    position: relative
}

@media screen and (min-width: 769px) {
    .t-product-top figure {
        width:55%
    }
}

.t-product-top figure::before {
    content: '';
    display: block;
    padding-top: 74.54545%
}

.t-product-top figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    position: absolute;
    top: 0;
    left: 0
}

.t-product-top__txt {
    padding: 3em 2em
}

@media screen and (min-width: 769px) {
    .t-product-top__txt {
        width:50%;
        position: absolute;
        top: 50%;
        right: 0;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%)
    }
}

.t-product-top__color__black-grade {
    background: linear-gradient(90deg, rgba(0,0,0,0.8), rgba(0,0,0,0.6))
}

.t-product-top__color__white-buleborder {
    background-color: #fff;
    border: 1px solid #05aadc
}

.t-product-top__color__red-black {
    background: linear-gradient(90deg, rgba(240,0,0,0.8), rgba(120,0,0,0.8))
}

.t-product-top__color__white-pinkborder {
    background-color: #fff;
    border: 1px solid #f26484
}

.t-product-top__ttl {
    color: #fff;
    margin-bottom: .6em
}

@media screen and (min-width: 1024px) {
    .t-product-top__ttl {
        font-size:2.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-top__ttl {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-top__ttl {
        font-size:1.6rem
    }
}

.t-product-top__p {
    color: #fff;
    font-weight: 400;
    line-height: 2
}

@media screen and (min-width: 1024px) {
    .t-product-top__p {
        font-size:1.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-top__p {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-top__p {
        font-size:1.2rem
    }
}

@media screen and (min-width: 769px) {
    .t-product-info .c-flex-mqUp-md:nth-child(odd) figure {
        order:2
    }

    .t-product-info .c-flex-mqUp-md:nth-child(odd) .t-product-info__txt {
        order: 1
    }
}

@media screen and (min-width: 769px) {
    .t-product-info figure {
        width:50%
    }
}

@media screen and (max-width: 768px) {
    .t-product-info figure {
        margin-bottom:30px
    }
}

@media screen and (max-width: 560px) {
    .t-product-info figure {
        margin-bottom:20px
    }
}

@media screen and (min-width: 769px) {
    .t-product-info__txt {
        width:45%
    }
}

@media screen and (min-width: 1024px) {
    .t-product-info__space {
        margin-bottom:40px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-info__space {
        margin-bottom:30px
    }
}

@media screen and (max-width: 560px) {
    .t-product-info__space {
        margin-bottom:20px
    }
}

.t-product-info__ttl {
    margin-bottom: .6em
}

@media screen and (min-width: 1024px) {
    .t-product-info__ttl {
        font-size:2.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-info__ttl {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-info__ttl {
        font-size:1.6rem
    }
}

.t-product-info__p {
    font-weight: 400;
    line-height: 2
}

@media screen and (min-width: 1024px) {
    .t-product-info__p {
        font-size:1.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-info__p {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-info__p {
        font-size:1.2rem
    }
}

.t-product-info__p span {
    line-height: 1.69231
}

@media screen and (min-width: 1024px) {
    .t-product-info__p span {
        font-size:1.3rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-info__p span {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-info__p span {
        font-size:1.1rem
    }
}

@media screen and (min-width: 1024px) {
    .t-product-info__award img {
        width:130px;
        height: 130px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-info__award img {
        width:104px;
        height: 104px
    }
}

@media screen and (max-width: 560px) {
    .t-product-info__award img {
        width:65px;
        height: 65px
    }
}

.t-product-message {
    padding: 4em 0 6em
}

.t-product-message__inr {
    max-width: 670px;
    width: 90%;
    margin: 0 auto
}

.t-product-message__ttl {
    line-height: 1.75;
    text-align: center;
    margin-bottom: 1em
}

@media screen and (min-width: 1024px) {
    .t-product-message__ttl {
        font-size:2.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-message__ttl {
        font-size:1.8rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-message__ttl {
        font-size:1.5rem
    }
}

.t-product-message__txt {
    font-weight: 400;
    line-height: 2
}

@media screen and (min-width: 1024px) {
    .t-product-message__txt {
        font-size:1.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-message__txt {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-message__txt {
        font-size:1.2rem
    }
}

.t-product-message__list {
    text-align: center
}

.t-product-message__list span {
    font-weight: 400;
    line-height: 2.31579;
    background: linear-gradient(transparent 75%, #f7de04 75%)
}

@media screen and (min-width: 1024px) {
    .t-product-message__list span {
        font-size:1.9rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-message__list span {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-message__list span {
        font-size:1.4rem
    }
}

.t-product-appearance {
    border: 1px solid #000;
    background-color: #fff
}

.t-product-appearance h2 {
    color: #fff;
    background-color: #000;
    padding: .5em 0;
    font-weight: 600;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-product-appearance h2 {
        font-size:3.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-appearance h2 {
        font-size:2.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-appearance h2 {
        font-size:1.5rem
    }
}

@media screen and (min-width: 769px) {
    .t-product-appearance .c-flex-mqUp-md {
        align-items:center
    }
}

@media screen and (min-width: 769px) {
    .t-product-appearance figure {
        width:50%
    }
}

.t-product-appearance__txt {
    line-height: 2
}

@media screen and (min-width: 1024px) {
    .t-product-appearance__txt {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-appearance__txt {
        font-size:1.4rem
    }
}

@media screen and (min-width: 769px) {
    .t-product-appearance__txt {
        width:50%;
        padding: 0 2em 0 0
    }
}

@media screen and (max-width: 768px) {
    .t-product-appearance__txt {
        padding:0 5% 40px
    }
}

@media screen and (max-width: 560px) {
    .t-product-appearance__txt {
        font-size:1.3rem
    }
}

.t-product-appearance__txt span {
    line-height: 1.69231
}

@media screen and (min-width: 1024px) {
    .t-product-appearance__txt span {
        font-size:1.3rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-appearance__txt span {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-appearance__txt span {
        font-size:1.1rem
    }
}

.t-product-lineup__list {
    max-width: 700px;
    width: 90%;
    margin: 0 auto
}

@media screen and (min-width: 561px) {
    .t-product-lineup__list {
        display:flex;
        justify-content: space-between;
        flex-wrap: wrap
    }
}

@media screen and (min-width: 561px) {
    .t-product-lineup__list li {
        width:44.28571%
    }
}

.t-product-lineup__list a {
    display: block;
    width: 100%;
    height: 100%
}

.t-product-lineup__list a.is-hover:hover figure img {
    -webkit-transform: scale3d(1.1, 1.1, 1);
    transform: scale3d(1.1, 1.1, 1)
}

.t-product-lineup__list a.is-hover:hover .t-product-lineup__btn {
    color: #000;
    background-color: #ebc31e
}

.t-product-lineup__list figure {
    position: relative;
    overflow: hidden
}

.t-product-lineup__list figure::before {
    content: '';
    display: block;
    padding-top: 70.96774%
}

.t-product-lineup__list figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    position: absolute;
    top: 0;
    left: 0;
    transition: all 800ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

.t-product-lineup__ttl {
    font-weight: 400;
    line-height: 1.75;
    margin-top: .5em
}

@media screen and (min-width: 1024px) {
    .t-product-lineup__ttl {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-lineup__ttl {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-lineup__ttl {
        font-size:1.2rem
    }
}

.t-product-lineup__money {
    font-weight: 400;
    line-height: 1.75;
    /*margin-bottom:.5em*/
}

@media screen and (min-width: 1024px) {
    .t-product-lineup__money {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-lineup__money {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-lineup__money {
        font-size:1.2rem
    }
}

@media screen and (min-width: 1024px) {
    .t-product-lineup__money span {
        font-size:1.3rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-lineup__money span {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-lineup__money span {
        font-size:1.0rem
    }
}

.t-product-lineup__btn {
    display: inline-block;
    color: #fff;
    background-color: #000;
    padding: .2em .6em;
    margin-top: 0.57143em;
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media screen and (min-width: 1024px) {
    .t-product-lineup__btn {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-lineup__btn {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-lineup__btn {
        font-size:1.0rem
    }
}

.t-product-relation .slick-arrow {
    background-image: url("/assets/img/common/icon/icon_arrow.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute
}

@media screen and (min-width: 1024px) {
    .t-product-relation .slick-arrow {
        width:22px;
        height: 31px;
        cursor: pointer
    }

    .t-product-relation .slick-arrow:hover {
        opacity: .5
    }
}

@media screen and (min-width: 561px) {
    .t-product-relation .slick-arrow {
        top:50%
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-relation .slick-arrow {
        width:17.6px;
        height: 24.8px
    }
}

@media screen and (max-width: 560px) {
    .t-product-relation .slick-arrow {
        width:13.2px;
        height: 18.6px;
        top: 30vw
    }
}

@media screen and (min-width: 561px) {
    .t-product-relation .slick-arrow.prev {
        -webkit-transform:rotate(180deg) translateY(-50%);
        transform: rotate(180deg) translateY(-50%);
        -webkit-transform-origin: top;
        transform-origin: top;
        right: 102%
    }
}

@media screen and (max-width: 560px) {
    .t-product-relation .slick-arrow.prev {
        -webkit-transform:rotate(180deg);
        transform: rotate(180deg);
        right: 101%
    }
}

@media screen and (min-width: 561px) {
    .t-product-relation .slick-arrow.next {
        -webkit-transform:translateY(-50%);
        transform: translateY(-50%);
        left: 102%
    }
}

@media screen and (max-width: 560px) {
    .t-product-relation .slick-arrow.next {
        left:101%
    }
}

.t-product-relation__item {
    position: relative;
    margin: 0 10px
}

@media screen and (min-width: 561px) {
    .t-product-relation__item {
        width:31.86813%
    }
}

@media screen and (min-width: 561px) {
    .t-product-relation__item::before {
        content:'';
        display: block;
        padding-top: 75.86207%
    }
}

.t-product-relation__item a {
    display: block;
    width: 100%;
    height: 100%
}

@media screen and (min-width: 561px) {
    .t-product-relation__item a {
        position:absolute;
        top: 0;
        left: 0
    }
}

@media screen and (min-width: 561px) {
    .t-product-relation__item a::before {
        content:'';
        background-color: rgba(0,0,0,0.3);
        width: 100%;
        height: 100%;
        display: block;
        position: relative;
        z-index: 1;
        opacity: 0;
        transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
    }
}

.t-product-relation__item a.is-hover:hover::before {
    opacity: 1
}

.t-product-relation__item a.is-hover:hover h3 {
    opacity: 1
}

.t-product-relation__item figure {
    width: 100%;
    height: 100%
}

@media screen and (min-width: 561px) {
    .t-product-relation__item figure {
        position:absolute;
        top: 0;
        left: 0
    }
}

@media screen and (max-width: 560px) {
    .t-product-relation__item figure {
        position:relative;
        margin-bottom: 10px
    }
}

@media screen and (max-width: 560px) {
    .t-product-relation__item figure::before {
        content:'';
        display: block;
        padding-top: 75.86207%
    }
}

.t-product-relation__item figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    position: absolute;
    top: 0;
    left: 0
}

.t-product-relation__item h3 {
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-product-relation__item h3 {
        font-size:2.0rem
    }
}

@media screen and (min-width: 561px) {
    .t-product-relation__item h3 {
        position:absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        z-index: 2;
        opacity: 0;
        color: #fff;
        transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-relation__item h3 {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-relation__item h3 {
        font-size:1.4rem
    }
}

.t-product-relation__item h3 span {
    display: block
}

.t-product-arrowlink-wrap h2 {
    line-height: 1.75;
    margin-bottom: 1em;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-product-arrowlink-wrap h2 {
        font-size:2.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-arrowlink-wrap h2 {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-arrowlink-wrap h2 {
        font-size:1.6rem
    }
}

.t-product-arrowlink {
    background-color: #fff;
    padding: 3.5em 3em;
    max-width: 750px;
    width: 90%;
    margin: 0 auto
}

@media screen and (min-width: 1024px) {
    .t-product-arrowlink {
        margin:0 auto 140px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-arrowlink {
        margin:0 auto 100px
    }
}

@media screen and (max-width: 560px) {
    .t-product-arrowlink {
        margin:0 auto 80px
    }
}

@media screen and (min-width: 769px) {
    .t-product-arrowlink figure {
        width:44%;
        order: 2
    }
}

@media screen and (max-width: 768px) {
    .t-product-arrowlink figure {
        margin-bottom:20px
    }
}

.t-product-arrowlink figcaption {
    font-weight: 400;
    margin-top: .8em
}

@media screen and (min-width: 1024px) {
    .t-product-arrowlink figcaption {
        font-size:1.9rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-arrowlink figcaption {
        font-size:1.7rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-arrowlink figcaption {
        font-size:1.3rem
    }
}

@media screen and (min-width: 769px) {
    .t-product-arrowlink__txt {
        display:flex;
        flex-direction: column;
        justify-content: space-between;
        width: 45.33333%;
        order: 1
    }
}

.t-product-arrowlink__ttl {
    font-weight: 400;
    line-height: 1.75;
    margin-bottom: 1em
}

@media screen and (min-width: 1024px) {
    .t-product-arrowlink__ttl {
        font-size:2.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-arrowlink__ttl {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-arrowlink__ttl {
        font-size:1.8rem
    }
}

.t-product-arrowlink__p {
    font-weight: 400;
    line-height: 1.75
}

@media screen and (min-width: 1024px) {
    .t-product-arrowlink__p {
        font-size:1.5rem
    }
}

@media screen and (max-width: 768px) {
    .t-product-arrowlink__p {
        margin-bottom:1em
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-arrowlink__p {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-arrowlink__p {
        font-size:1.1rem
    }
}

.t-product-arrowlink__link {
    font-weight: 400;
    line-height: 1.75
}

@media screen and (min-width: 1024px) {
    .t-product-arrowlink__link {
        font-size:1.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-arrowlink__link {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-arrowlink__link {
        font-size:1.1rem
    }
}

.t-product-arrowlink__link {
    display: inline-block;
    padding: 0 3em .5em 0;
    position: relative;
    width: 16em
}

@media screen and (min-width: 1024px) {
    .t-product-arrowlink__link {
        font-size:1.4rem
    }
}

@media screen and (min-width: 561px) {
    .t-product-arrowlink__link {
        margin-top:1em
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-arrowlink__link {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-arrowlink__link {
        font-size:1.0rem
    }
}

.t-product-arrowlink__link::before {
    content: '';
    border-bottom: 1px solid #000;
    width: 100%;
    position: absolute;
    bottom: 0;
    right: 0;
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

.t-product-arrowlink__link::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 0 15px;
    border-color: transparent transparent transparent #000;
    position: absolute;
    bottom: 0;
    right: 0;
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

.t-product-award {
    text-align: right;
    padding-top: 5px
}

@media screen and (max-width: 1023px) {
    .t-product-award {
        position:absolute;
        bottom: calc( 100% - 30px);
        right: 0
    }
}

@media screen and (min-width: 1024px) {
    .t-product-award img {
        width:130px;
        height: 130px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-award img {
        width:104px;
        height: 104px
    }
}

@media screen and (max-width: 560px) {
    .t-product-award img {
        width:65px;
        height: 65px
    }
}

.t-product-dan {
    position: relative
}

@media screen and (min-width: 769px) {
    .t-product-dan .c-inner-medium figure {
        margin-right:auto;
        width: 50%
    }
}

@media screen and (max-width: 768px) {
    .t-product-dan .c-inner-medium figure {
        width:100%
    }
}

.t-product-dan__txt {
    background-color: rgba(245,215,225,0.9)
}

@media screen and (min-width: 769px) {
    .t-product-dan__txt {
        width:52.8125%;
        position: absolute;
        top: 3em;
        right: 0;
        padding: 2em 4em 3em
    }
}

@media screen and (max-width: 768px) {
    .t-product-dan__txt {
        width:90%;
        margin: 0 auto;
        padding: 2em 5% 3em
    }
}

.t-product-dan__txt__inr {
    max-width: 470px
}

.t-product-dan__ttl {
    line-height: 1.75;
    margin-bottom: .6em
}

@media screen and (min-width: 1024px) {
    .t-product-dan__ttl {
        font-size:2.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-dan__ttl {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-dan__ttl {
        font-size:1.6rem
    }
}

.t-product-gallery img {
    width: 49%
}

.t-product-otoku {
    background-color: #fff;
    border: 1px solid #000
}

@media screen and (min-width: 769px) {
    .t-product-otoku {
        padding:3em 5em
    }
}

@media screen and (max-width: 768px) {
    .t-product-otoku {
        padding:3em 5%
    }
}

@media screen and (min-width: 769px) {
    .t-product-otoku__left {
        width:44%
    }
}

@media screen and (max-width: 768px) {
    .t-product-otoku__left {
        margin-bottom:30px
    }
}

.t-product-otoku__left .c-flex-center {
    background-color: #f5f5f5
}

@media screen and (min-width: 769px) {
    .t-product-otoku__left .c-flex-center {
        padding:38px 50px
    }
}

@media screen and (max-width: 768px) {
    .t-product-otoku__left .c-flex-center {
        padding:22.8px 30px
    }
}

.t-product-otoku__r-after .t-product-otoku__money {
    color: #e60000
}

.t-product-otoku__cat-before {
    padding: .4em 1em;
    line-height: 1;
    font-weight: 400;
    background-color: #000;
    color: #fff;
    text-align: center;
    margin-bottom: .5em
}

@media screen and (min-width: 1024px) {
    .t-product-otoku__cat-before {
        font-size:1.7rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-otoku__cat-before {
        font-size:1.5rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-otoku__cat-before {
        font-size:1.3rem
    }
}

.t-product-otoku__cat-after {
    padding: .4em 1em;
    line-height: 1;
    font-weight: 400;
    background-color: #f7de04;
    color: #000;
    text-align: center;
    margin-bottom: .5em
}

@media screen and (min-width: 1024px) {
    .t-product-otoku__cat-after {
        font-size:1.7rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-otoku__cat-after {
        font-size:1.5rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-otoku__cat-after {
        font-size:1.3rem
    }
}

.t-product-otoku__int {
    font-weight: 400;
    text-align: center;
    margin-bottom: .5em
}

@media screen and (min-width: 1024px) {
    .t-product-otoku__int {
        font-size:1.7rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-otoku__int {
        font-size:1.5rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-otoku__int {
        font-size:1.3rem
    }
}

.t-product-otoku__money {
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-product-otoku__money {
        font-size:2.7rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-otoku__money {
        font-size:2.5rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-otoku__money {
        font-size:2.3rem
    }
}

@media screen and (min-width: 1024px) {
    .t-product-otoku__money span {
        font-size:3.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-otoku__money span {
        font-size:2.8rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-otoku__money span {
        font-size:2.5rem
    }
}

.t-product-otoku__arrow {
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent transparent transparent #4d4d4d
}

@media screen and (min-width: 1024px) {
    .t-product-otoku__arrow {
        border-width:12.5px 0 12.5px 21.7px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-otoku__arrow {
        border-width:10px 0 10px 17.36px
    }
}

@media screen and (max-width: 560px) {
    .t-product-otoku__arrow {
        border-width:7.5px 0 7.5px 13.02px
    }
}

.t-product-otoku__l-p {
    font-weight: 400
}

@media screen and (min-width: 1024px) {
    .t-product-otoku__l-p {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-otoku__l-p {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-otoku__l-p {
        font-size:1.2rem
    }
}

@media screen and (min-width: 769px) {
    .t-product-otoku__right {
        width:45%
    }
}

.t-product-otoku__r-dl {
    align-items: flex-start;
    margin-bottom: .5em
}

.t-product-otoku__r-dl dd {
    flex: 1;
    padding-left: 1em
}

.t-product-otoku__r-dl dd span {
    color: #e60000
}

@media screen and (min-width: 1024px) {
    .t-product-otoku__r-dl dd span {
        font-size:2.2rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-otoku__r-dl dd span {
        font-size:1.8rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-otoku__r-dl dd span {
        font-size:1.6rem
    }
}

.t-product-otoku__r-p {
    font-weight: 400;
    margin-bottom: .5em
}

@media screen and (min-width: 1024px) {
    .t-product-otoku__r-p {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-otoku__r-p {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-otoku__r-p {
        font-size:1.2rem
    }
}

.t-product-otoku__r-dt-before {
    padding: .4em 1em;
    line-height: 1;
    font-weight: 400;
    background-color: #000;
    color: #fff;
    text-align: center;
    margin-bottom: .5em
}

@media screen and (min-width: 1024px) {
    .t-product-otoku__r-dt-before {
        font-size:1.6rem;
        width: 120px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-otoku__r-dt-before {
        font-size:1.4rem;
        width: 105px
    }
}

@media screen and (max-width: 560px) {
    .t-product-otoku__r-dt-before {
        font-size:1.2rem;
        width: 90px
    }
}

.t-product-otoku__r-dt-after {
    padding: .4em 1em;
    line-height: 1;
    font-weight: 400;
    background-color: #f7de04;
    color: #000;
    text-align: center;
    margin-bottom: .5em
}

@media screen and (min-width: 1024px) {
    .t-product-otoku__r-dt-after {
        font-size:1.6rem;
        width: 120px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-otoku__r-dt-after {
        font-size:1.4rem;
        width: 105px
    }
}

@media screen and (max-width: 560px) {
    .t-product-otoku__r-dt-after {
        font-size:1.2rem;
        width: 90px
    }
}

.t-product-spec__materials span {
    display: inline-block
}

.t-product-other {
    background-image: url("../img/product/higo/bg_other.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    padding: 7em 0
}

@media screen and (min-width: 1024px) {
    .t-product-other {
        background-size:461px 443px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-other {
        background-size:368.8px 354.4px
    }
}

@media screen and (max-width: 560px) {
    .t-product-other {
        background-size:276.6px 265.8px
    }
}

@media screen and (min-width: 769px) {
    .t-product-other figure {
        order:2;
        width: 48%
    }
}

@media screen and (min-width: 769px) {
    .t-product-other__txt {
        order:1;
        width: 50%
    }
}

.t-product-other__ttl {
    line-height: 1.75;
    margin-bottom: 1em
}

@media screen and (min-width: 1024px) {
    .t-product-other__ttl {
        font-size:2.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-other__ttl {
        font-size:2.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-other__ttl {
        font-size:1.6rem
    }
}

.t-product-other__p {
    font-weight: 400;
    line-height: 2
}

@media screen and (min-width: 1024px) {
    .t-product-other__p {
        font-size:1.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-other__p {
        font-size:1.3rem
    }
}

@media screen and (max-width: 560px) {
    .t-product-other__p {
        font-size:1.1rem
    }
}

.t-product-mirurun .t-product-message {
    background-image: url("../img/product/mirurun/bg_massage.jpg");
    background-position: center
}

@media screen and (min-width: 561px) {
    .t-product-mirurun .t-product-message {
        background-size:1180px 610px
    }
}

@media screen and (max-width: 560px) {
    .t-product-mirurun .t-product-message {
        background-size:240%
    }
}

.t-product-mirurun .t-product-message .t-product-message__ttl {
    color: #e64669
}

.t-product-amanatsumirurun .t-product-top__ttl,.t-product-amanatsumirurun .t-product-top__p {
    color: #05aadc
}

.t-product-amanatsumirurun .c-product-card__ttl>span {
    background-color: #05aadc
}

.t-product-amanatsumirurun .c-product-card__ttl span {
    color: #fff
}

.t-product-amanatsumirurun .t-product-hero-limited {
    background-color: #fff !important;
    color: #05aadc !important
}

.t-product-amanatsumirurun .t-product-info__ttl {
    color: #05aadc
}

.t-product-ichopai .l-hero__bg {
    background-color: #ffeb00;
    display: flex;
    align-items: center;
    justify-content: center
}

@media screen and (min-width: 561px) {
    .t-product-ichopai .l-hero__bg img {
        max-width:200px
    }
}

@media screen and (max-width: 560px) {
    .t-product-ichopai .l-hero__bg img {
        max-width:100px
    }
}

.t-product-ichopai .t-product-message {
    background-image: url("../img/product/ichopai/bg_massage.jpg");
    background-position: center
}

@media screen and (min-width: 561px) {
    .t-product-ichopai .t-product-message {
        background-size:1280px 616px
    }
}

@media screen and (max-width: 560px) {
    .t-product-ichopai .t-product-message {
        background-size:240%
    }
}

@media screen and (min-width: 561px) {
    .t-product-shokun .t-product-award {
        margin-top:-25px
    }
}

.t-product-shokun .t-product-message {
    background-image: url("../img/product/shokun/bg_massage.jpg");
    background-position: center;
    position: relative;
    background-size: cover
}

.t-product-shokun .t-product-message::before {
    content: '';
    background-image: url("../img/product/shokun/bg_massage_02.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media screen and (min-width: 561px) {
    .t-product-shokun .t-product-message::before {
        width:400px;
        height: 400px
    }
}

@media screen and (max-width: 560px) {
    .t-product-shokun .t-product-message::before {
        width:50vw;
        height: 50vw
    }
}

.t-product-shokun .t-product-message .c-flex-mqUp-sm {
    max-width: 890px;
    width: 100%;
    margin: 0 auto
}

@media screen and (min-width: 561px) {
    .t-product-shokun .t-product-message .c-flex-mqUp-sm .t-product-message__txt {
        width:44.94382%
    }
}

.t-product-gekkasakura .t-product-top__ttl,.t-product-gekkasakura .t-product-top__p {
    color: #e64669
}

.t-product-gekkasakura .c-product-card__ttl>span {
    background-color: #f26484
}

.t-product-gekkasakura .c-product-card__ttl span {
    color: #fff
}

.t-product-gekkasakura .t-product-hero-limited {
    background-color: #fff !important;
    color: #f26484 !important
}

.t-product-gekkasakura .t-product-info__ttl {
    color: #e64669
}

.t-product-gekkasakura .t-product-dan__ttl {
    color: #e64669
}

.t-product-gekkasakura .t-product-gallery {
    justify-content: center !important
}

.t-product-daiyouryou .t-product-message {
    background-color: #faf8be
}

.t-product-higo .t-product-arrowlink {
    max-width: 850px;
    border: 1px solid #000;
    border-top: 3px solid #000
}

@media screen and (min-width: 1024px) {
    .t-product-higo .t-product-arrowlink {
        margin:0 auto 40px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-product-higo .t-product-arrowlink {
        margin:0 auto 30px
    }
}

@media screen and (max-width: 560px) {
    .t-product-higo .t-product-arrowlink {
        margin:0 auto 20px
    }
}

.t-product-higo .t-product-arrowlink__link {
    width: 10em
}

.t-recruit-hero {
    background-color: #ebc31e;
    position: relative
}

.t-recruit-hero::before {
    content: '';
    background-image: url("/assets/img/common/icon/icon_recruit.svg");
    background-size: 75px 75px;
    opacity: .3;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    z-index: 1
}

@media screen and (min-width: 1024px) {
    .t-recruit-hero {
        padding:30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-hero {
        padding:20px
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-hero {
        padding:10px
    }
}

.t-recruit-hero .l-hero__inner {
    background-color: rgba(255,255,255,0.4);
    padding: 4em 0
}

.t-recruit-hero__jp {
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .t-recruit-hero__jp {
        font-size:6.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-hero__jp {
        font-size:4.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-hero__jp {
        font-size:2.2rem
    }
}

.t-recruit-hero__en {
    margin-top: 1em
}

@media screen and (min-width: 1024px) {
    .t-recruit-hero__en {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-hero__en {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-hero__en {
        font-size:1.2rem
    }
}

.t-recruit-hero__p {
    margin-top: 2em
}

@media screen and (min-width: 1024px) {
    .t-recruit-hero__p {
        font-size:2.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-hero__p {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-hero__p {
        font-size:1.4rem
    }
}

.t-recruit-hero__jp,.t-recruit-hero__en,.t-recruit-hero__p {
    text-align: center;
    position: relative;
    z-index: 2
}

@media screen and (min-width: 1024px) {
    .t-recruit-nav {
        margin:0 auto 200px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-nav {
        margin:0 auto 100px
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-nav {
        margin:0 auto 60px;
        padding-top: 40px
    }
}

.t-recruit-info__ttl {
    margin-bottom: 1em;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-recruit-info__ttl {
        font-size:2.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-info__ttl {
        font-size:2.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-info__ttl {
        font-size:2.0rem
    }
}

.t-recruit-info__p {
    max-width: 650px;
    margin: 0 auto;
    font-weight: 400;
    line-height: 2
}

@media screen and (min-width: 1024px) {
    .t-recruit-info__p {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-info__p {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-info__p {
        font-size:1.2rem
    }
}

@media screen and (min-width: 1024px) {
    .t-recruit-requirements__main:not(:last-child) {
        margin-bottom:80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-requirements__main:not(:last-child) {
        margin-bottom:60px
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-requirements__main:not(:last-child) {
        margin-bottom:50px
    }
}

@media screen and (min-width: 1024px) {
    .t-recruit-requirements {
        padding-top:100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-requirements {
        padding-top:70px
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-requirements {
        padding-top:60px
    }
}

.t-recruit-requirements__ttl {
    background-color: #f7de04;
    padding: 1em;
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-recruit-requirements__ttl {
        font-size:2.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-requirements__ttl {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-requirements__ttl {
        font-size:1.4rem
    }
}

@media screen and (min-width: 1024px) {
    .t-recruit-staff-voice {
        padding-top:100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-staff-voice {
        padding-top:70px
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-staff-voice {
        padding-top:60px
    }
}

.t-recruit-staff-voice__art {
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.045)
}

@media screen and (min-width: 1024px) {
    .t-recruit-staff-voice__art {
        padding:70px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-staff-voice__art {
        padding:40px
    }
}

@media screen and (min-width: 561px) {
    .t-recruit-staff-voice__art {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-staff-voice__art {
        padding:20px 5%
    }
}

@media screen and (min-width: 561px) {
    .t-recruit-staff-voice__art:nth-child(even) .t-recruit-staff-voice__figure {
        order:2
    }

    .t-recruit-staff-voice__art:nth-child(even) .t-recruit-staff-voice__txt {
        order: 1
    }
}

@media screen and (min-width: 1024px) {
    .t-recruit-staff-voice__art:not(:last-child) {
        margin-bottom:80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-staff-voice__art:not(:last-child) {
        margin-bottom:60px
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-staff-voice__art:not(:last-child) {
        margin-bottom:50px
    }
}

.t-recruit-staff-voice__figure {
    position: relative
}

@media screen and (min-width: 561px) {
    .t-recruit-staff-voice__figure {
        width:41.86047%
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-staff-voice__figure {
        margin-bottom:30px
    }
}

.t-recruit-staff-voice__figure::before {
    content: '';
    display: block;
    padding-top: 111.11111%
}

.t-recruit-staff-voice__figure img {
    width: 100%;
    height: 100%;
    -o-object-fit: cover;
    object-fit: cover;
    font-family: "object-fit: cover;";
    position: absolute;
    top: 0;
    left: 0
}

@media screen and (min-width: 561px) {
    .t-recruit-staff-voice__txt {
        width:50%
    }
}

.t-recruit-staff-voice__name {
    padding-bottom: 2em;
    margin-bottom: 2.5em;
    border-bottom: 1px dotted #999
}

@media screen and (min-width: 1024px) {
    .t-recruit-staff-voice__name h3 {
        font-size:2.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-staff-voice__name h3 {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-staff-voice__name h3 {
        font-size:1.4rem
    }
}

.t-recruit-staff-voice__job {
    font-weight: 400;
    margin-bottom: 1em
}

@media screen and (min-width: 1024px) {
    .t-recruit-staff-voice__job {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-staff-voice__job {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-staff-voice__job {
        font-size:1.0rem
    }
}

.t-recruit-staff-voice__lead {
    color: #8c6239;
    margin-bottom: 1.5em
}

@media screen and (min-width: 1024px) {
    .t-recruit-staff-voice__lead {
        font-size:1.8rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-staff-voice__lead {
        font-size:1.5rem
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-staff-voice__lead {
        font-size:1.3rem
    }
}

.t-recruit-staff-voice__p {
    line-height: 2;
    font-weight: 400
}

@media screen and (min-width: 1024px) {
    .t-recruit-staff-voice__p {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-recruit-staff-voice__p {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-recruit-staff-voice__p {
        font-size:1.0rem
    }
}

@media screen and (min-width: 1024px) {
    .t-sitemap-list {
        display:flex;
        padding: 65px 130px 68px
    }
}

@media screen and (min-width: 1024px) {
    .t-sitemap-list__block {
        margin-top:-35px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-sitemap-list__block:first-of-type {
        margin-top:-25px
    }
}

@media screen and (max-width: 560px) {
    .t-sitemap-list__block:first-of-type {
        margin-top:-15px
    }
}

@media screen and (min-width: 1024px) {
    .t-sitemap-list__block:not(:last-of-type) {
        margin-right:80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-sitemap-list__block:not(:last-of-type) {
        margin-bottom:25px
    }
}

@media screen and (max-width: 560px) {
    .t-sitemap-list__block:not(:last-of-type) {
        margin-bottom:15px
    }
}

@media screen and (min-width: 1024px) {
    .t-sitemap-list__block ul {
        padding-left:30px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-sitemap-list__block ul {
        padding-left:20px
    }
}

@media screen and (max-width: 560px) {
    .t-sitemap-list__block ul {
        padding-left:10px
    }
}

@media screen and (min-width: 1024px) {
    .t-sitemap-list__block li {
        margin-top:35px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-sitemap-list__block li {
        margin-top:25px
    }
}

@media screen and (max-width: 560px) {
    .t-sitemap-list__block li {
        margin-top:15px
    }
}

.t-sitemap-list__block a {
    display: inline-flex;
    align-items: center;
    color: #333;
    font-weight: bold;
    letter-spacing: .14em;
    transition-property: background-size;
    background-image: linear-gradient(180deg, #333, #333);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 100% 100%
}

.t-sitemap-list__block a.is-hover:hover {
    opacity: 1;
    background-size: 100% 1px;
    background-position: 0% 100%
}

@media screen and (min-width: 1024px) {
    .t-sitemap-list__block a {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-sitemap-list__block a {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-sitemap-list__block a {
        font-size:1.2rem
    }
}

.t-sitemap-list__block a::before {
    content: '';
    display: block
}

.t-sitemap-list__block a span {
    display: block;
    flex: 1;
    line-height: 1.5
}

.t-sitemap-list__parent::before {
    width: 6px;
    height: 8px;
    background-image: url("/assets/img/common/icon/arrow-gray.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .t-sitemap-list__parent::before {
        margin-right:10px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-sitemap-list__parent::before {
        margin-right:8px
    }
}

@media screen and (max-width: 560px) {
    .t-sitemap-list__parent::before {
        margin-right:6px
    }
}

.t-sitemap-list__children::before {
    height: 1px;
    background-color: #333;
    margin-right: 6px
}

@media screen and (min-width: 1024px) {
    .t-sitemap-list__children::before {
        width:18px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-sitemap-list__children::before {
        width:14.4px
    }
}

@media screen and (max-width: 560px) {
    .t-sitemap-list__children::before {
        width:10.8px
    }
}

.t-store {
    background-color: #fff
}

@media screen and (min-width: 1024px) {
    .t-store-nav {
        margin:0 auto 100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-nav {
        margin:0 auto 70px
    }
}

@media screen and (max-width: 560px) {
    .t-store-nav {
        margin:0 auto 60px;
        padding-top: 40px
    }
}

@media screen and (min-width: 561px) {
    .t-store-nav__list {
        display:flex;
        justify-content: center
    }
}

@media screen and (max-width: 560px) {
    .t-store-nav__list {
        width:90%;
        margin: 0 auto;
        display: block
    }
}

@media screen and (min-width: 1024px) {
    .t-store-nav__list li:not(:last-child) {
        margin-right:6em
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-nav__list li:not(:last-child) {
        margin-right:4em
    }
}

@media screen and (max-width: 560px) {
    .t-store-nav__list li:not(:last-child) {
        margin-right:4em;
        margin-bottom: 2em
    }
}

.t-store-nav__list li a {
    display: flex;
    align-items: center;
    line-height: 1;
    transition-property: background-size;
    background-image: linear-gradient(180deg, #000, #000);
    background-repeat: no-repeat;
    background-size: 0 1px;
    background-position: 100% 100%
}

@media screen and (min-width: 1024px) {
    .t-store-nav__list li a {
        font-size:2.5rem !important
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-nav__list li a {
        font-size:1.8rem
    }
}

@media screen and (max-width: 560px) {
    .t-store-nav__list li a {
        font-size:1.8rem
    }
}

.t-store-nav__list li a::before {
    content: '';
    display: block;
    background-image: url(/assets/img/common/icon/icon_ttl.svg);
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .t-store-nav__list li a::before {
        width:20px;
        height: 20px;
        margin-right: 10px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-nav__list li a::before {
        width:16px;
        height: 16px;
        margin-right: 8px
    }
}

@media screen and (max-width: 560px) {
    .t-store-nav__list li a::before {
        width:12px;
        height: 12px;
        margin-right: 6px
    }
}

@media screen and (max-width: 560px) {
    .t-store-nav__list li a.is-hover:hover {
        background-size:100% 1px;
        background-position: 0% 100%
    }

    .t-store-nav__list li a.is-hover:hover::after {
        content: none
    }
}

@media screen and (min-width: 1024px) {
    .t-store-main {
        padding:80px 0 140px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-main {
        padding:60px 0 100px
    }
}

@media screen and (max-width: 560px) {
    .t-store-main {
        padding:40px 0 60px
    }
}

.t-store-main#kiyomasa {
    background-color: #f5f5f5
}

@media screen and (min-width: 1024px) {
    .t-store-main#kiyomasa .t-store-logo img {
        width:350px;
        height: 108px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-main#kiyomasa .t-store-logo img {
        width:280px;
        height: 86.4px
    }
}

@media screen and (max-width: 560px) {
    .t-store-main#kiyomasa .t-store-logo img {
        width:210px;
        height: 64.8px
    }
}

.t-store-main#cheesecake {
    background-color: #fff
}

@media screen and (min-width: 1024px) {
    .t-store-main#cheesecake .t-store-logo img {
        width:200px;
        height: 231px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-main#cheesecake .t-store-logo img {
        width:160px;
        height: 184.8px
    }
}

@media screen and (max-width: 560px) {
    .t-store-main#cheesecake .t-store-logo img {
        width:120px;
        height: 138.6px
    }
}

.t-store-main#shiroikifujin {
    background-color: #fffceb
}

@media screen and (min-width: 1024px) {
    .t-store-main#shiroikifujin .t-store-logo img {
        width:350px;
        height: 350px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-main#shiroikifujin .t-store-logo img {
        width:280px;
        height: 280px
    }
}

@media screen and (max-width: 560px) {
    .t-store-main#shiroikifujin .t-store-logo img {
        width:210px;
        height: 210px
    }
}

.t-store-logo {
    text-align: center
}

@media screen and (min-width: 1024px) {
    .t-store-logo {
        padding-top:100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-logo {
        padding-top:70px
    }
}

@media screen and (max-width: 560px) {
    .t-store-logo {
        padding-top:60px
    }
}

@media screen and (min-width: 561px) {
    .t-store-art {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .t-store-art:not(:last-child) {
        margin-bottom:120px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-art:not(:last-child) {
        margin-bottom:80px
    }
}

@media screen and (max-width: 560px) {
    .t-store-art:not(:last-child) {
        margin-bottom:60px
    }
}

@media screen and (min-width: 561px) {
    .t-store-art figure,.t-store-art .t-store-map {
        width:42%
    }
}

@media screen and (max-width: 560px) {
    .t-store-art figure,.t-store-art .t-store-map {
        width:100%;
        margin-bottom: 20px
    }
}

.t-store-art .t-store-gmapin {
    position: relative
}

.t-store-art .t-store-gmapin::before {
    content: '';
    display: block;
    padding-top: 71.42857%
}

.t-store-art .t-store-gmapin iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.t-store-column {
    display: flex;
    flex-direction: column;
    justify-content: space-between
}

@media screen and (min-width: 561px) {
    .t-store-column {
        width:55%
    }
}

@media screen and (max-width: 560px) {
    .t-store-column {
        width:100%
    }
}

.t-store-txt h3 {
    margin-bottom: 1em
}

@media screen and (min-width: 1024px) {
    .t-store-txt h3 {
        font-size:2.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-txt h3 {
        font-size:2.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-store-txt h3 {
        font-size:1.8rem
    }
}

.t-store-address dl {
    display: flex;
    align-items: flex-start
}

.t-store-address dl:not(last-child) {
    margin-bottom: 5px
}

.t-store-address dt {
    min-width: 100px;
    background-color: #000;
    color: #fff;
    text-align: center;
    margin-right: 1em
}

@media screen and (min-width: 1024px) {
    .t-store-address dt {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-address dt {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-store-address dt {
        font-size:1.1rem
    }
}

@media screen and (min-width: 1024px) {
    .t-store-address dd {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-address dd {
        font-size:1.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-store-address dd {
        font-size:1.1rem
    }
}

.t-store-gmap {
    margin-top: 1em
}

.t-store-gmap a {
    padding: 0 3em .5em 0;
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-store-gmap a {
        font-size:1.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-gmap a {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-store-gmap a {
        font-size:1.0rem
    }
}

.t-store-gmap a::before {
    content: '';
    border-bottom: 1px solid #000;
    width: 100%;
    position: absolute;
    bottom: 0;
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media screen and (min-width: 1024px) {
    .t-store-gmap a::before {
        right:10px;
        opacity: 0
    }
}

@media screen and (max-width: 1023px) {
    .t-store-gmap a::before {
        opacity:1;
        right: 0
    }
}

.t-store-gmap a::after {
    content: '';
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 6px 0 0 15px;
    border-color: transparent transparent transparent #000;
    position: absolute;
    bottom: 0;
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

@media screen and (min-width: 1024px) {
    .t-store-gmap a::after {
        right:10px;
        opacity: 0
    }
}

@media screen and (max-width: 1023px) {
    .t-store-gmap a::after {
        opacity:1;
        right: 0
    }
}

.t-store-gmap a.is-hover:hover::before,.t-store-gmap a.is-hover:hover::after {
    opacity: 1;
    right: 0
}

.t-store-p {
    font-weight: 400;
    line-height: 2;
    max-width: 650px;
    width: 90%
}

@media screen and (min-width: 1024px) {
    .t-store-p {
        font-size:1.6rem;
        margin: 0 auto 50px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-store-p {
        font-size:1.4rem;
        margin: 0 auto 40px
    }
}

@media screen and (max-width: 560px) {
    .t-store-p {
        font-size:1.1rem;
        margin: 0 auto 40px
    }
}

.t-subject-detail-container {
    position: relative;
    background-color: #4d4d4d
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-container {
        padding-bottom:120px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-container {
        padding-bottom:80px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-container {
        padding-bottom:60px
    }
}

.t-subject-detail-container::before {
    content: '';
    display: block;
    width: 100%;
    height: 45px;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0
}

@media screen and (min-width: 769px) {
    .t-subject-detail-introduce {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-introduce {
        margin-bottom:80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-introduce {
        margin-bottom:50px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-introduce {
        margin-bottom:35px
    }
}

@media screen and (min-width: 769px) {
    .t-subject-detail-introduce div {
        width:48.14815%
    }
}

.t-subject-detail-introduce h2 {
    font-weight: bold;
    line-height: 1.5;
    color: #333
}

@media screen and (min-width: 769px) {
    .t-subject-detail-introduce h2 {
        margin-top:10px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-introduce h2 {
        font-size:calc( 1.0rem + 2vw);
        margin-bottom: 45px
    }
}

@media screen and (min-width: 1280px) {
    .t-subject-detail-introduce h2 {
        font-size:4.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-introduce h2 {
        font-size:calc( 1.0rem + 1.8vw);
        margin-bottom: 25px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-introduce h2 {
        font-size:calc( 1.0rem + 3.1vw);
        margin-bottom: 15px
    }
}

.t-subject-detail-introduce div {
    position: relative
}

@media screen and (max-width: 768px) {
    .t-subject-detail-introduce div {
        margin-bottom:30px
    }
}

.t-subject-detail-introduce div::after {
    content: '';
    display: block;
    background: repeating-linear-gradient(-45deg, #fff, #fff 13px, #4d4d4d 0, #4d4d4d 26px);
    position: absolute;
    z-index: 0
}

@media screen and (min-width: 769px) {
    .t-subject-detail-introduce div::after {
        width:107.69231%;
        height: 320px;
        left: 40px;
        bottom: -40px
    }
}

@media screen and (max-width: 768px) {
    .t-subject-detail-introduce div::after {
        width:100%;
        height: 90%;
        left: 10%;
        bottom: -5%
    }
}

.t-subject-detail-introduce div>* {
    position: relative;
    z-index: 2
}

.t-subject-detail-introduce figure {
    position: relative;
    z-index: 1
}

@media screen and (min-width: 769px) {
    .t-subject-detail-introduce figure {
        width:48.14815%
    }
}

.t-subject-detail-introduce figure img {
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.045)
}

.t-subject-detail-strength {
    position: relative;
    z-index: 2
}

.t-subject-detail-strength ul {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between
}

@media screen and (max-width: 560px) {
    .t-subject-detail-strength ul {
        margin-left:-5px
    }
}

.t-subject-detail-strength li {
    line-height: 1.33333;
    letter-spacing: .14em
}

@media screen and (min-width: 561px) {
    .t-subject-detail-strength li {
        width:23.61111%
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-strength li {
        width:48%;
        margin-top: 5px
    }
}

.t-subject-detail-strength img {
    width: 100%
}

.t-subject-detail-interview-banner {
    position: relative;
    z-index: 1;
    max-width: 724px;
    width: 100%;
    margin-right: auto;
    margin-left: auto
}

.t-subject-detail-interview-banner a {
    position: relative;
    display: block;
    width: 100%;
    height: 100%
}

.t-subject-detail-point {
    position: relative
}

.t-subject-detail-point h3 {
    margin-bottom: 25px
}

.t-subject-detail-point .p-point__section:nth-of-type(2) .p-point__text {
    position: relative
}

.t-subject-detail-point .p-point__section:nth-of-type(2) .p-point__text::before {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute
}

@media screen and (min-width: 769px) {
    .t-subject-detail-heading {
        display:flex;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-heading {
        margin-bottom:40px
    }
}

@media screen and (max-width: 1023px) {
    .t-subject-detail-heading {
        margin-bottom:30px
    }
}

@media screen and (min-width: 769px) {
    .t-subject-detail-heading div {
        width:59.30233%
    }
}

@media screen and (max-width: 768px) {
    .t-subject-detail-heading div {
        margin-bottom:15px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-heading h3 {
        margin-bottom:17px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-heading h3 {
        margin-bottom:14px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-heading h3 {
        margin-bottom:10px
    }
}

.t-subject-detail-heading p {
    line-height: 1.66667;
    color: #333
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-heading p {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-heading p {
        font-size:1.3rem
    }
}

.t-subject-detail-heading figure {
    position: relative;
    z-index: 1
}

@media screen and (min-width: 769px) {
    .t-subject-detail-heading figure {
        width:34.88372%
    }
}

.t-subject-detail-curriculum__table {
    position: relative;
    border-right: solid 1px #666;
    border-left: solid 1px #666
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table {
        display:flex;
        flex-wrap: wrap;
        margin-bottom: 55px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-curriculum__table {
        margin-bottom:45px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-curriculum__table {
        margin-bottom:35px
    }
}

.t-subject-detail-curriculum__table>* {
    border-bottom: solid 1px #666
}

.t-subject-detail-curriculum__table h4,.t-subject-detail-curriculum__table h5 {
    font-weight: bold;
    color: #333
}

.t-subject-detail-curriculum__table h4 {
    color: #fff;
    text-align: center;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table h4 {
        font-size:1.8rem;
        padding: 11px 0
    }
}

@media screen and (max-width: 1023px) {
    .t-subject-detail-curriculum__table h4 {
        font-size:1.6rem;
        padding: 8px 0
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table h5 {
        margin-bottom:22px;
        font-size: 1.5rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-curriculum__table h5 {
        font-size:1.4rem;
        margin-bottom: 16px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-curriculum__table h5 {
        font-size:1.3rem;
        margin-bottom: 10px
    }
}

.t-subject-detail-curriculum__table p {
    color: #646464
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table ul {
        margin-top:23px;
        margin-bottom: 8px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-curriculum__table ul {
        margin-top:18px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-curriculum__table ul {
        margin-top:10px
    }
}

.t-subject-detail-curriculum__table li {
    display: flex;
    align-items: baseline;
    color: #646464;
    font-weight: bold
}

@media screen and (max-width: 560px) {
    .t-subject-detail-curriculum__table li {
        font-size:1.2rem
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table li:not(:last-of-type) {
        margin-bottom:24px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-curriculum__table li:not(:last-of-type) {
        margin-bottom:10px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-curriculum__table li:not(:last-of-type) {
        margin-bottom:8px
    }
}

.t-subject-detail-curriculum__table li::before {
    content: 'â—';
    display: block;
    border-radius: 50%;
    font-size: 1.2rem
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table li::before {
        margin-top:-2px;
        margin-right: 10px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-curriculum__table li::before {
        margin-right:8px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-curriculum__table li::before {
        margin-right:5px
    }
}

.t-subject-detail-curriculum__table li span {
    flex: 1
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table__cell {
        padding:27px 30px 22px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-curriculum__table__cell {
        padding:20px 25px 20px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-curriculum__table__cell {
        padding:15px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table--2::before {
        content:'';
        display: block;
        width: 1px;
        height: 100%;
        background-color: #666;
        position: absolute;
        top: 0;
        left: 50%;
        z-index: 1;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table--2>* {
        width:50%
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table--3::before,.t-subject-detail-curriculum__table--3::after {
        content:'';
        display: block;
        width: 1px;
        height: 100%;
        background-color: #666;
        position: absolute;
        top: 0;
        z-index: 1;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%)
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table--3::before {
        left:33.333333%
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table--3::after {
        left:66.666666%
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__table--3>* {
        width:33.333333%
    }
}

.t-subject-detail-curriculum__schedule h4 {
    font-weight: bold;
    letter-spacing: .11em;
    color: #333
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__schedule h4 {
        font-size:1.8rem;
        margin-bottom: 25px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-curriculum__schedule h4 {
        font-size:1.6rem;
        margin-bottom: 20px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-curriculum__schedule h4 {
        font-size:1.4rem;
        margin-bottom: 10px
    }
}

@media screen and (max-width: 768px) {
    .t-subject-detail-curriculum__schedule>div {
        padding-bottom:5px
    }
}

@media screen and (min-width: 769px) {
    .t-subject-detail-curriculum__schedule table {
        width:100%
    }
}

@media screen and (max-width: 768px) {
    .t-subject-detail-curriculum__schedule table {
        width:600px;
        min-width: 600px;
        margin-bottom: 5px
    }
}

.t-subject-detail-curriculum__schedule thead,.t-subject-detail-curriculum__schedule tbody {
    width: 100%;
    text-align: center
}

.t-subject-detail-curriculum__schedule th,.t-subject-detail-curriculum__schedule td {
    vertical-align: middle;
    border: solid 1px #666;
    line-height: 1.75
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__schedule th,.t-subject-detail-curriculum__schedule td {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-curriculum__schedule th,.t-subject-detail-curriculum__schedule td {
        font-size:1.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-curriculum__schedule th,.t-subject-detail-curriculum__schedule td {
        font-size:1.2rem
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__schedule tr>*:first-child {
        width:40px
    }
}

@media screen and (max-width: 1023px) {
    .t-subject-detail-curriculum__schedule tr>*:first-child {
        width:22px
    }
}

.t-subject-detail-curriculum__schedule th {
    color: #fff;
    font-weight: bold;
    letter-spacing: .11em
}

.t-subject-detail-curriculum__schedule td {
    letter-spacing: .06em;
    color: #646464
}

.t-subject-detail-curriculum__schedule thead td {
    position: relative;
    overflow: hidden
}

.t-subject-detail-curriculum__schedule thead td::before {
    content: '';
    display: block;
    width: 60px;
    height: 60px;
    background-color: #787878;
    position: absolute;
    top: 0;
    left: 0;
    -webkit-transform-origin: 0 0;
    transform-origin: 0 0;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg)
}

.t-subject-detail-curriculum__schedule tbody tr:nth-of-type(3) th,.t-subject-detail-curriculum__schedule tbody tr:nth-of-type(3) td {
    padding: 6px 0
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__schedule tbody tr:not(:nth-of-type(3)) th {
        height:120px
    }
}

.t-subject-detail-curriculum__schedule tbody th {
    background-color: #787878
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__schedule tbody td {
        padding:20px 10px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-curriculum__schedule tbody td {
        padding:16px 10px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-curriculum__schedule tbody td {
        padding:12px 10px
    }
}

.t-subject-detail-curriculum__schedule [colspan="5"] {
    background-color: #eee
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-curriculum__schedule thead th,.t-subject-detail-curriculum__schedule [colspan="5"] {
        height:40px;
        padding: 0
    }
}

.t-subject-detail-capa {
    position: relative
}

@media screen and (min-width: 769px) {
    .t-subject-detail-capa__list {
        display:flex;
        flex-wrap: wrap;
        justify-content: space-between
    }
}

@media screen and (min-width: 769px) {
    .t-subject-detail-capa__list {
        margin-top:55px;
        margin-bottom: 40px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-capa__list {
        margin-top:70px;
        margin-bottom: 55px
    }
}

@media screen and (max-width: 768px) {
    .t-subject-detail-capa__list {
        margin-bottom:25px
    }
}

.t-subject-detail-capa__list__cell {
    display: flex;
    align-items: flex-start;
    justify-content: space-between
}

@media screen and (min-width: 769px) {
    .t-subject-detail-capa__list__cell {
        width:48%
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-capa__list__cell {
        width:46.51163%
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-capa__list__cell:not(:last-of-type) {
        margin-bottom:60px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-capa__list__cell:not(:last-of-type) {
        margin-bottom:40px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-capa__list__cell:not(:last-of-type) {
        margin-bottom:20px
    }
}

.t-subject-detail-capa__list__cell figure {
    text-align: center
}

@media screen and (min-width: 769px) {
    .t-subject-detail-capa__list__cell figure {
        width:19.75%;
        margin-right: 7.5%
    }
}

@media screen and (max-width: 1023px) {
    .t-subject-detail-capa__list__cell figure {
        width:50px
    }
}

@media screen and (max-width: 768px) {
    .t-subject-detail-capa__list__cell figure {
        width:40px;
        margin-right: 20px
    }
}

.t-subject-detail-capa__list__cell div {
    flex: 1
}

.t-subject-detail-capa__list__cell h4 {
    font-weight: bold;
    letter-spacing: .09em;
    margin-top: -.20833em
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-capa__list__cell h4 {
        font-size:2.4rem;
        margin-bottom: 15px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-capa__list__cell h4 {
        font-size:1.8rem;
        margin-bottom: 10px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-capa__list__cell h4 {
        font-size:1.4rem;
        margin-bottom: 6px
    }
}

.t-subject-detail-capa__list__cell p {
    color: #646464
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-capa__list__cell p {
        font-size:1.4rem;
        line-height: 1.875
    }
}

@media screen and (min-width: 1280px) {
    .t-subject-detail-capa__list__cell p {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) {
    .t-subject-detail-capa__list__cell p {
        font-size:1.2rem;
        line-height: 1.75
    }
}

.t-subject-detail-capa__comment {
    max-width: 430px
}

@media screen and (min-width: 769px) {
    .t-subject-detail-capa__comment {
        width:50%;
        margin-top: -3.48837%
    }
}

@media screen and (max-width: 768px) {
    .t-subject-detail-capa__comment {
        margin-top:20px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview {
        padding-top:130px
    }
}

@media screen and (max-width: 1023px) {
    .t-subject-detail-interview {
        padding-top:200px
    }
}

.t-subject-detail-interview__inner {
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__inner {
        padding:60px 60px 77px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__inner {
        padding:40px 40px 50px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__inner {
        padding:20px 20px 30px
    }
}

@media screen and (min-width: 561px) {
    .t-subject-detail-interview__inner::before {
        content:'';
        display: block;
        background-color: #fff;
        position: absolute;
        top: 0;
        left: calc(50% + 0px);
        z-index: 1;
        -webkit-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: 330px;
        height: 70px
    }
}

.t-subject-detail-interview__border {
    position: absolute;
    background-position: center;
    pointer-events: none
}

.t-subject-detail-interview__border:nth-of-type(1),.t-subject-detail-interview__border:nth-of-type(2) {
    width: 100%;
    height: 4px;
    background-repeat: repeat-x;
    background-size: 40px 4px;
    left: 0
}

.t-subject-detail-interview__border:nth-of-type(3),.t-subject-detail-interview__border:nth-of-type(4) {
    width: 4px;
    height: 100%;
    background-repeat: repeat-y;
    background-size: 4px 40px;
    top: 0
}

.t-subject-detail-interview__border:nth-of-type(1) {
    top: 0
}

.t-subject-detail-interview__border:nth-of-type(2) {
    bottom: 0
}

.t-subject-detail-interview__border:nth-of-type(3) {
    left: 0
}

.t-subject-detail-interview__border:nth-of-type(4) {
    right: 0
}

.t-subject-detail-interview__title {
    position: absolute;
    left: 50%;
    z-index: 1;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__title {
        top:-55px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__title {
        width:240px;
        top: -150px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__title {
        width:150px;
        top: -170px
    }
}

.t-subject-detail-interview__visual {
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__visual {
        height:490px;
        margin-bottom: 60px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__visual {
        height:430px;
        margin-bottom: 50px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__visual {
        margin-bottom:30px
    }
}

.t-subject-detail-interview__visual div {
    border-radius: 10px;
    overflow: hidden
}

@media screen and (min-width: 561px) {
    .t-subject-detail-interview__visual div {
        width:100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        z-index: 0
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__visual div {
        position:relative
    }
}

.t-subject-detail-interview__visual div::after {
    content: '';
    display: block;
    padding-top: 60%
}

.t-subject-detail-interview__visual figure {
    width: 100%;
    height: 120%;
    position: absolute;
    top: -10%;
    left: 0
}

.t-subject-detail-interview__visual h3 {
    display: flex;
    flex-direction: column;
    font-weight: bold;
    line-height: 2.15385;
    color: #fff
}

@media screen and (min-width: 561px) {
    .t-subject-detail-interview__visual h3 {
        position:absolute;
        left: 5.55556%;
        z-index: 1
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__visual h3 {
        bottom:60px;
        font-size: 2.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__visual h3 {
        bottom:30px;
        font-size: 2.0rem
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__visual h3 {
        font-size:1.8rem;
        margin-top: 10px
    }
}

.t-subject-detail-interview__visual h3 span {
    display: block
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__visual h3 span {
        padding:10px 15px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__visual h3 span {
        padding:10px 12px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__visual h3 span {
        padding:6px 8px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__visual h3 span:not(:last-of-type) {
        margin-bottom:7px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__visual h3 span:not(:last-of-type) {
        margin-bottom:4px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__visual h3 span:not(:last-of-type) {
        margin-bottom:2px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__article:not(:last-of-type) {
        margin-bottom:190px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__article:not(:last-of-type) {
        margin-bottom:120px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__article:not(:last-of-type) {
        margin-bottom:80px
    }
}

.t-subject-detail-interview__article h3 {
    font-weight: bold;
    line-height: 1.66667
}

@media screen and (min-width: 769px) {
    .t-subject-detail-interview__article__cell {
        display:flex;
        align-items: center;
        justify-content: space-between
    }

    .t-subject-detail-interview__article__cell:nth-of-type(2n) {
        flex-direction: row-reverse
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__article__cell:not(:last-of-type) {
        margin-bottom:60px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__article__cell:not(:last-of-type) {
        margin-bottom:45px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__article__cell:not(:last-of-type) {
        margin-bottom:30px
    }
}

@media screen and (min-width: 769px) {
    .t-subject-detail-interview__article__text {
        width:47.22222%
    }
}

@media screen and (max-width: 768px) {
    .t-subject-detail-interview__article__text {
        margin-bottom:30px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__article__title {
        font-size:2.4rem;
        margin-bottom: 20px
    }
}

@media screen and (min-width: 1280px) {
    .t-subject-detail-interview__article__title {
        font-size:3.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__article__title {
        font-size:1.8rem;
        margin-bottom: 16px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__article__title {
        font-size:1.6rem;
        margin-bottom: 10px
    }
}

@media screen and (min-width: 769px) {
    .t-subject-detail-interview__article__figure {
        width:40.74074%
    }
}

@media screen and (min-width: 769px) {
    .t-subject-detail-interview__profile {
        display:flex;
        align-items: center;
        justify-content: space-between
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__profile {
        margin-bottom:90px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__profile {
        margin-bottom:60px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__profile {
        margin-bottom:30px
    }
}

.t-subject-detail-interview__profile figure {
    position: relative
}

@media screen and (min-width: 769px) {
    .t-subject-detail-interview__profile figure {
        width:43.51852%
    }
}

@media screen and (max-width: 768px) {
    .t-subject-detail-interview__profile figure {
        display:flex;
        align-items: center;
        margin-bottom: 30px
    }
}

.t-subject-detail-interview__profile figure::before {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    z-index: 1
}

.t-subject-detail-interview__profile figure img {
    display: block
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__profile figure img {
        max-width:300px;
        width: 63.82979%;
        margin: 0 auto
    }
}

@media screen and (max-width: 768px) {
    .t-subject-detail-interview__profile figure img {
        width:50%
    }
}

.t-subject-detail-interview__profile figcaption {
    background-color: #fff;
    color: #333;
    line-height: 1.66667
}

@media screen and (min-width: 769px) {
    .t-subject-detail-interview__profile figcaption {
        text-align:right;
        position: absolute;
        right: 0;
        bottom: -2px;
        padding: 10px 10px 0 20px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__profile figcaption {
        text-align:left;
        width: 37.23404%;
        right: auto;
        left: 62.76596%;
        font-size: 1.3rem;
        padding: 15px 0 0 20px;
        white-space: nowrap
    }
}

@media screen and (min-width: 1280px) {
    .t-subject-detail-interview__profile figcaption {
        font-size:1.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__profile figcaption {
        font-size:1.4rem
    }
}

@media screen and (max-width: 768px) {
    .t-subject-detail-interview__profile figcaption {
        width:50%;
        padding: 20px 0 20px 20px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__profile figcaption {
        font-size:1.3rem
    }
}

.t-subject-detail-interview__profile figcaption span {
    display: block;
    font-weight: bold
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__profile figcaption span {
        font-size:2.0rem;
        margin-top: 8px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__profile figcaption span {
        font-size:1.8rem;
        margin-top: 5px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__profile figcaption span {
        margin-top:8px;
        font-size: 1.6rem;
        line-height: 1.4
    }
}

.t-subject-detail-interview__message {
    position: relative
}

.t-subject-detail-interview__message h3 {
    position: absolute;
    z-index: 1;
    font-weight: normal;
    line-height: 1;
    letter-spacing: 0;
    -webkit-transform: rotate(-4deg);
    transform: rotate(-4deg)
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__message h3 {
        font-size:5.0rem;
        top: -27px;
        left: 276px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__message h3 {
        font-size:4.0rem;
        top: -20.25px;
        left: 35px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__message h3 {
        font-size:3.0rem;
        top: -16.2px;
        left: 24px
    }
}

.t-subject-detail-interview__message__inner {
    border-radius: 10px;
    overflow: hidden;
    position: relative
}

.t-subject-detail-interview__message__inner::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-image: url("/assets/img/common/bg_pattern.png");
    background-size: 100px 100px;
    background-repeat: repeat;
    background-position: center;
    opacity: .15
}

@media screen and (min-width: 561px) {
    .t-subject-detail-interview__message__inner {
        display:flex;
        align-items: flex-end;
        justify-content: space-between
    }
}

.t-subject-detail-interview__message__inner figure,.t-subject-detail-interview__message__inner div {
    position: relative;
    z-index: 1
}

.t-subject-detail-interview__message__inner figure {
    display: flex;
    align-items: flex-end
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__message__inner figure {
        width:228px;
        height: 216px
    }
}

@media screen and (max-width: 1023px) {
    .t-subject-detail-interview__message__inner figure {
        display:none
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__message__inner figure img {
        width:100%
    }
}

@media screen and (min-width: 561px) {
    .t-subject-detail-interview__message__inner div {
        flex:1
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__message__inner div {
        padding:48px 90px 34px 46px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__message__inner div {
        padding:46px 30px 24px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__message__inner div {
        padding:40px 20px 20px
    }
}

.t-subject-detail-interview__message__inner h4 {
    font-weight: bold;
    color: #fff;
    margin-bottom: 8px
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__message__inner h4 {
        font-size:2.0rem
    }
}

@media screen and (min-width: 1280px) {
    .t-subject-detail-interview__message__inner h4 {
        font-size:2.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__message__inner h4 {
        font-size:1.6rem
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__message__inner h4 {
        font-size:1.4rem
    }
}

.t-subject-detail-interview__message__inner p {
    color: #fff
}

.t-subject-detail-interview__fav {
    position: relative;
    border-radius: 10px
}

.t-subject-detail-interview__fav::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background: repeating-linear-gradient(-45deg, #fff, #fff 13px, rgba(255,255,255,0.2) 0, rgba(255,255,255,0) 26px);
    position: absolute;
    left: 0;
    z-index: 0;
    opacity: .2
}

.t-subject-detail-interview__fav__inner {
    position: relative;
    z-index: 1
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__fav__inner {
        display:flex;
        align-items: flex-end
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__fav__inner {
        padding:30px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__fav__inner {
        padding:20px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__fav__figure {
        width:29.62963%;
        margin-top: -30px
    }
}

@media screen and (max-width: 1023px) {
    .t-subject-detail-interview__fav__figure {
        display:none
    }
}

.t-subject-detail-interview__fav__figure img {
    display: block;
    margin: auto
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__fav__text {
        width:62.96296%;
        padding-bottom: 50px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__fav__text h3 {
        margin-top:-15px;
        margin-bottom: 20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__fav__text h3 {
        width:366.6px;
        margin-bottom: 20px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__fav__text h3 {
        margin-bottom:20px
    }
}

.t-subject-detail-interview__fav__text h4 {
    color: #333;
    font-weight: bold;
    line-height: 1.5
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__fav__text h4 {
        font-size:2.4rem;
        margin-bottom: 8px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-interview__fav__text h4 {
        font-size:2.0rem;
        margin-bottom: 10px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__fav__text h4 {
        font-size:1.6rem;
        margin-bottom: 12px
    }
}

.t-subject-detail-interview__fav__text p {
    color: #333;
    line-height: 1.71429
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__fav__text p {
        font-size:1.4rem
    }
}

.t-subject-detail-interview__fav__text div {
    display: flex;
    flex-wrap: wrap
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-interview__fav__text div {
        margin-top:22px
    }
}

@media screen and (max-width: 1023px) {
    .t-subject-detail-interview__fav__text div {
        margin-top:20px
    }
}

@media screen and (min-width: 561px) {
    .t-subject-detail-interview__fav__text div figure {
        width:24.59499%
    }

    .t-subject-detail-interview__fav__text div figure:not(:last-of-type) {
        margin-right: 4.41826%
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-interview__fav__text div figure {
        width:49%
    }

    .t-subject-detail-interview__fav__text div figure:nth-of-type(2n-1) {
        margin-right: 2%
    }

    .t-subject-detail-interview__fav__text div figure:nth-of-type(n+3) {
        margin-top: 2%
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-01 {
        top:-60px;
        left: -100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-01 {
        top:-16px;
        left: -32px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-01 {
        top:-12px;
        left: -24px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-01 img {
        width:220px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-02 {
        top:-38px;
        right: -48px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-02 {
        top:-30.4px;
        right: -38.4px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-02 {
        top:-22.8px;
        right: -28.8px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-03 {
        top:-225px;
        right: -127px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-03 {
        top:-48px;
        right: -101.6px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-03 {
        top:-36px;
        right: -76.2px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-04 {
        bottom:-67px;
        left: -120px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-04 {
        bottom:-20px;
        left: -96px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-04 {
        bottom:-15px;
        left: -72px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-05 {
        top:-120px;
        right: -100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-05 {
        top:-40px;
        right: -80px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-05 {
        top:-30px;
        right: -60px
    }
}

@media screen and (max-width: 1023px) {
    .t-subject-detail-object-05 {
        z-index:-1
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-06 {
        bottom:-50px;
        left: -100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-06 {
        bottom:-40px;
        left: -80px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-06 {
        bottom:-30px;
        left: -60px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-07 {
        top:-190px;
        right: -80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-07 {
        top:-152px;
        right: -64px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-07 {
        top:-114px;
        right: -48px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-08 {
        top:-78px;
        left: -100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-08 {
        top:-32px;
        left: -10.4px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-08 {
        top:-24px;
        left: -7.8px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-08 img {
        width:250px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-09 {
        top:-47px;
        right: -47px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-09 {
        top:-37.6px;
        right: -37.6px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-09 {
        top:-28.2px;
        right: -28.2px
    }
}

.t-subject-detail-object-10 {
    z-index: 0
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-10 {
        top:-210px;
        right: -100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-10 {
        top:-168px;
        right: -80px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-10 {
        top:-126px;
        right: -60px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-11 {
        bottom:-50px;
        left: -100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-11 {
        bottom:-40px;
        left: -80px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-11 {
        bottom:-30px;
        left: -60px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-12 {
        top:-60px;
        right: -100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-12 {
        top:-48px;
        right: -80px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-12 {
        top:-36px;
        right: -60px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-13 {
        bottom:-60px;
        left: -100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-13 {
        bottom:-48px;
        left: -80px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-13 {
        bottom:-36px;
        left: -60px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-object-14 {
        top:-200px;
        right: -80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-object-14 {
        top:-160px;
        right: -64px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-detail-object-14 {
        top:-120px;
        right: -48px
    }
}

.t-service-dt .t-subject-detail-point h4 {
    color: #009ab7
}

.t-service-dt .p-point__section:nth-of-type(2) .p-point__text::before {
    background-image: url("../img/subject/dt/object.svg")
}

@media screen and (min-width: 1024px) {
    .t-service-dt .p-point__section:nth-of-type(2) .p-point__text::before {
        width:108px;
        height: 79px;
        top: 12px;
        right: -38px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-service-dt .p-point__section:nth-of-type(2) .p-point__text::before {
        width:86.4px;
        height: 63.2px;
        top: 9.6px;
        right: -30.4px
    }
}

@media screen and (max-width: 560px) {
    .t-service-dt .p-point__section:nth-of-type(2) .p-point__text::before {
        width:64.8px;
        height: 47.4px;
        top: 7.2px;
        right: -22.8px
    }
}

.t-service-dt .t-subject-detail-curriculum__table h4 {
    background-color: #54bdc3
}

.t-service-dt .t-subject-detail-curriculum__table li::before {
    color: #54bdc3
}

.t-service-dt .t-subject-detail-curriculum__schedule thead th,.t-service-dt .t-subject-detail-curriculum__schedule thead td {
    background-color: #54bdc3
}

.t-service-dt .t-subject-detail-capa__list__cell h4 {
    color: #009ab7
}

.t-service-dt .t-subject-detail-interview__border:nth-of-type(1),.t-service-dt .t-subject-detail-interview__border:nth-of-type(2) {
    background-image: url("/assets/img/common/dashed_side-blue.png")
}

.t-service-dt .t-subject-detail-interview__border:nth-of-type(3),.t-service-dt .t-subject-detail-interview__border:nth-of-type(4) {
    background-image: url("/assets/img/common/dashed_vertical-blue.png")
}

.t-service-dt .t-subject-detail-interview__visual h3 span {
    background-color: #009ab7
}

.t-service-dt .t-subject-detail-interview__article__title {
    color: #009ab7
}

.t-service-dt .t-subject-detail-interview__balloon-01::before {
    background-image: url("../img/subject/dt/interview_balloon_01.svg")
}

@media screen and (min-width: 1024px) {
    .t-service-dt .t-subject-detail-interview__balloon-01::before {
        width:176px;
        height: 100px;
        top: -25px;
        left: 8px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-service-dt .t-subject-detail-interview__balloon-01::before {
        width:140.8px;
        height: 80px;
        top: -20px;
        left: -24px
    }
}

@media screen and (max-width: 560px) {
    .t-service-dt .t-subject-detail-interview__balloon-01::before {
        width:105.6px;
        height: 60px;
        top: -15px;
        left: -18px
    }
}

.t-service-dt .t-subject-detail-interview__balloon-02::before {
    background-image: url("../img/subject/dt/interview_balloon_02.svg");
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media screen and (min-width: 769px) {
    .t-service-dt .t-subject-detail-interview__balloon-02::before {
        left:50%
    }
}

@media screen and (max-width: 768px) {
    .t-service-dt .t-subject-detail-interview__balloon-02::before {
        left:25%
    }
}

@media screen and (min-width: 1024px) {
    .t-service-dt .t-subject-detail-interview__balloon-02::before {
        width:253px;
        height: 55px;
        top: -35px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-service-dt .t-subject-detail-interview__balloon-02::before {
        width:202.4px;
        height: 44px;
        top: -28px
    }
}

@media screen and (max-width: 560px) {
    .t-service-dt .t-subject-detail-interview__balloon-02::before {
        width:151.8px;
        height: 33px;
        top: -21px
    }
}

.t-service-dt .t-subject-detail-interview__message h3 {
    color: #007ca1
}

.t-service-dt .t-subject-detail-interview__message__inner {
    background: repeating-linear-gradient(90deg, #54bdc3, #1aa7c7)
}

.t-service-dt .t-subject-detail-interview__fav {
    background-color: #d2eeea
}

.t-service-dt .t-subject-detail-interview__fav__figure img {
    width: 48.75%
}

.t-service-de .t-subject-detail-point h4 {
    color: #f26f78
}

.t-service-de .p-point__section:nth-of-type(2) .p-point__text::before {
    background-image: url("../img/subject/de/object.svg");
    z-index: 1
}

@media screen and (min-width: 1024px) {
    .t-service-de .p-point__section:nth-of-type(2) .p-point__text::before {
        width:85px;
        height: 100px;
        top: 10px;
        right: -50px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-service-de .p-point__section:nth-of-type(2) .p-point__text::before {
        width:68px;
        height: 80px;
        top: 8px;
        right: -40px
    }
}

@media screen and (max-width: 560px) {
    .t-service-de .p-point__section:nth-of-type(2) .p-point__text::before {
        width:51px;
        height: 60px;
        top: 6px;
        right: -30px
    }
}

.t-service-de .t-subject-detail-curriculum__table h4 {
    background-color: #f5d7e1
}

.t-service-de .t-subject-detail-curriculum__table .u-bg-pink-5 {
    background-color: #ff9d95
}

.t-service-de .t-subject-detail-curriculum__table li::before {
    color: #f5d7e1
}

.t-service-de .t-subject-detail-curriculum__schedule thead th,.t-service-de .t-subject-detail-curriculum__schedule thead td {
    background-color: #f5d7e1
}

.t-service-de .t-subject-detail-capa__list__cell h4 {
    color: #f26f78
}

.t-service-de .t-subject-detail-interview__border:nth-of-type(1),.t-service-de .t-subject-detail-interview__border:nth-of-type(2) {
    background-image: url("/assets/img/common/dashed_side-pink.png")
}

.t-service-de .t-subject-detail-interview__border:nth-of-type(3),.t-service-de .t-subject-detail-interview__border:nth-of-type(4) {
    background-image: url("/assets/img/common/dashed_vertical-pink.png")
}

.t-service-de .t-subject-detail-interview__visual h3 span {
    background-color: #f26f78
}

.t-service-de .t-subject-detail-interview__article__title {
    color: #f26f78
}

.t-service-de .t-subject-detail-interview__balloon-01::before {
    background-image: url("../img/subject/de/interview_balloon_01.svg")
}

@media screen and (min-width: 1024px) {
    .t-service-de .t-subject-detail-interview__balloon-01::before {
        width:186px;
        height: 100px;
        top: -25px;
        left: 14px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-service-de .t-subject-detail-interview__balloon-01::before {
        width:148.8px;
        height: 80px;
        top: -20px;
        left: -24px
    }
}

@media screen and (max-width: 560px) {
    .t-service-de .t-subject-detail-interview__balloon-01::before {
        width:111.6px;
        height: 60px;
        top: -15px;
        left: -18px
    }
}

.t-service-de .t-subject-detail-interview__balloon-02::before {
    background-image: url("../img/subject/de/interview_balloon_02.svg");
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%)
}

@media screen and (min-width: 769px) {
    .t-service-de .t-subject-detail-interview__balloon-02::before {
        left:50%
    }
}

@media screen and (max-width: 768px) {
    .t-service-de .t-subject-detail-interview__balloon-02::before {
        left:25%
    }
}

@media screen and (min-width: 1024px) {
    .t-service-de .t-subject-detail-interview__balloon-02::before {
        width:283px;
        height: 55px;
        top: -25px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-service-de .t-subject-detail-interview__balloon-02::before {
        width:226.4px;
        height: 44px;
        top: -20px
    }
}

@media screen and (max-width: 560px) {
    .t-service-de .t-subject-detail-interview__balloon-02::before {
        width:169.8px;
        height: 33px;
        top: -15px
    }
}

.t-service-de .t-subject-detail-interview__message h3 {
    color: #f25b65
}

.t-service-de .t-subject-detail-interview__message__inner {
    background: repeating-linear-gradient(90deg, #f5d7e1, #fc7871)
}

.t-service-de .t-subject-detail-interview__fav {
    background-color: #ffd9ca
}

.t-service-de .t-subject-detail-interview__fav__figure img {
    width: 46.875%;
    padding-bottom: 16px
}

@media screen and (min-width: 1024px) {
    .t-subject-detail-btn {
        padding:100px 0 50px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-detail-btn {
        padding:80px 0 40px
    }
}

@media screen and (max-width: 1023px) {
    .t-subject-detail-btn {
        padding:50px 0 20px
    }
}

.t-subject-read {
    padding: 0 5%
}

@media screen and (min-width: 1024px) {
    .t-subject-read {
        margin-bottom:80px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-read {
        margin-bottom:60px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-read {
        margin-bottom:50px
    }
}

@media screen and (min-width: 769px) {
    .t-subject-section__introduce {
        display:flex;
        align-items: flex-start
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-section__introduce {
        margin-bottom:50px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-section__introduce {
        margin-bottom:40px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-section__introduce {
        margin-bottom:30px
    }
}

.t-subject-section__introduce__text {
    position: relative
}

@media screen and (min-width: 769px) {
    .t-subject-section__introduce__text {
        width:51.85185%;
        padding: 20px 5% 30px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-section__introduce__text {
        padding:20px 50px 30px 40px
    }
}

@media screen and (max-width: 768px) {
    .t-subject-section__introduce__text {
        margin-bottom:30px;
        padding: 0px 20px
    }
}

.t-subject-section__introduce__text::before {
    content: '';
    display: block;
    width: 100%;
    background: repeating-linear-gradient(-45deg, #fff, #fff 13px, #4d4d4d 0, #4d4d4d 26px);
    position: absolute;
    left: 0;
    z-index: -1
}

@media screen and (min-width: 561px) {
    .t-subject-section__introduce__text::before {
        height:calc(100% - 50px);
        bottom: -1px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-section__introduce__text::before {
        height:100%;
        bottom: -20px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-section__introduce__title {
        display:flex;
        flex-wrap: wrap;
        align-items: center;
        margin-bottom: 55px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-section__introduce__title {
        margin-bottom:25px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-section__introduce__title {
        margin-bottom:15px
    }
}

.t-subject-section__introduce__title h2 {
    font-weight: bold;
    line-height: 1;
    letter-spacing: .09em;
    border-bottom: solid
}

@media screen and (min-width: 1024px) {
    .t-subject-section__introduce__title h2 {
        font-size:2.8rem
    }
}

@media screen and (min-width: 1280px) {
    .t-subject-section__introduce__title h2 {
        font-size:3.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-section__introduce__title h2 {
        font-size:2.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-subject-section__introduce__title h2 {
        font-size:2.0rem
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-section__introduce__title h2 {
        margin-right:25px;
        border-width: 3px;
        padding-left: 4px;
        padding-bottom: 15px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-section__introduce__title h2 {
        padding-left:3px;
        padding-bottom: 10px;
        margin-bottom: 10px
    }
}

@media screen and (max-width: 1023px) {
    .t-subject-section__introduce__title h2 {
        display:inline-block;
        padding-left: 2px;
        padding-bottom: 6px;
        margin-bottom: 12px
    }
}

.t-subject-section__introduce__title p {
    font-size: 1.2rem;
    margin-top: -3px
}

.t-subject-section__introduce__copy {
    font-weight: bold;
    line-height: 1.38889;
    color: #333
}

@media screen and (min-width: 1024px) {
    .t-subject-section__introduce__copy {
        font-size:calc( 1.0rem + 1.8vw);
        margin-bottom: 40px
    }
}

@media screen and (min-width: 1280px) {
    .t-subject-section__introduce__copy {
        font-size:3.6rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-section__introduce__copy {
        font-size:calc( 1.0rem + 1.5vw);
        margin-bottom: 30px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-section__introduce__copy {
        font-size:calc( 1.0rem + 2.9vw);
        margin-bottom: 16px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-section__introduce__paragraph {
        padding-right:25px
    }
}

@media screen and (min-width: 769px) {
    .t-subject-section__introduce__figure {
        width:48.14815%
    }
}

.t-subject-section__introduce__figure img {
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.045)
}

.t-subject-section__grid {
    text-align: center
}

@media screen and (min-width: 561px) {
    .t-subject-section__grid {
        margin-bottom:30px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-section__grid {
        margin-bottom:15px
    }
}

.t-subject-section__grid img {
    width: 100%
}

@media screen and (min-width: 1024px) {
    .t-subject-object-01 {
        top:-25px;
        left: -20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-object-01 {
        top:-20px;
        left: -16px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-object-01 {
        top:-15px;
        left: -12px
    }
}

@media screen and (min-width: 1024px) {
    .t-subject-object-02 {
        top:-40px;
        left: -13px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-subject-object-02 {
        top:-32px;
        left: -10.4px
    }
}

@media screen and (max-width: 560px) {
    .t-subject-object-02 {
        top:-24px;
        left: -7.8px
    }
}

.t-top-visual {
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-top-visual {
        min-height:768px
    }
}

@media screen and (max-width: 1023px) {
    .t-top-visual {
        min-height:600px
    }
}

.t-top-visual::before {
    content: '';
    display: block;
    width: 100vw;
    position: absolute;
    top: 0;
    left: 0
}

@media screen and (min-width: 561px) {
    .t-top-visual::before {
        height:100%
    }
}

@media screen and (max-width: 560px) {
    .t-top-visual::before {
        height:100px
    }
}

.t-top-visual.is-load .t-top-visual__slider::before {
    opacity: 0
}

.t-top-visual.is-load .t-top-visual__opencampus {
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
    transition-delay: 1000ms
}

body.is-animation .t-top-visual__slider::before {
    width: 100% !important;
    transition-duration: 400ms
}

body.is-animation .t-top-visual__opencampus {
    opacity: 0 !important;
    transition-delay: 0ms !important
}

.t-top-visual__slider {
    width: 100%;
    position: relative;
    z-index: 1;
    margin: 0 0 0 auto;
    overflow: hidden
}

@media screen and (min-width: 1024px) {
    .t-top-visual__slider {
        height:100%
    }
}

@media screen and (max-width: 1023px) {
    .t-top-visual__slider {
        height:100%
    }
}

.t-top-visual__slider::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    background-color: #f5f5f5;
    position: absolute;
    top: 0;
    right: 0;
    z-index: 2;
    transition: all 900ms cubic-bezier(0.86, 0, 0.07, 1);
    transition-delay: 200ms !important;
    opacity: 1
}

.t-top-visual__slider__content {
    width: 100%;
    height: 100%
}

.t-top-visual__slider__content li {
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat;
    opacity: 0;
    visibility: hidden;
    transition: 1200ms ease;
    transition-property: opacity,visibility;
    will-change: transform
}

.t-top-visual__slider__content li.is-active {
    opacity: 1;
    visibility: visible
}

.t-top-visual__slider__content li.--c {
    width: 100%;
    -webkit-transform: scale(1);
    transform: scale(1)
}

.t-top-visual__slider__content li.--c.is-put {
    -webkit-animation: 6000ms linear slide_c forwards;
    animation: 6000ms linear slide_c forwards
}

.t-top-visual__slider__content p {
    position: absolute;
    line-height: 1;
    text-align: center
}

.t-top-visual__slider__01 {
    background-image: url("../img/top/visual_01.jpg")
}

.t-top-visual__slider__02 {
    background-image: url("../img/top/visual_02.jpg")
}

.t-top-visual__slider__03 {
    background-image: url("../img/top/visual_03.jpg")
}

.t-top-visual__slider__04 {
    background-image: url("../img/top/visual_04.jpg")
}

.t-top-visual__slider__05 {
    background-image: url("../img/top/visual_05.jpg")
}

.t-top-visual__slider__06 {
    background-image: url("../img/top/visual_06.jpg")
}

.t-top-visual__slider__07 {
    background-image: url("../img/top/visual_07.jpg")
}

.t-top-visual__slider__08 {
    background-image: url("../img/top/visual_08.jpg")
}

.t-top-visual__slider__09 {
    background-image: url("../img/top/visual_09.jpg")
}

.t-top-visual__slider__10 {
    background-image: url("../img/top/visual_10.jpg")
}

.t-top-visual__slider__11 {
    background-image: url("../img/top/visual_11.jpg")
}

.t-top-visual__slider__12 {
    background-image: url("../img/top/visual_12.jpg")
}

.t-top-visual__txt {
    position: absolute;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

@media screen and (min-width: 1024px) {
    .t-top-visual__txt {
        top:calc( 50% + 55px);
        max-width: 600px
    }
}

@media screen and (max-width: 1023px) {
    .t-top-visual__txt {
        top:calc( 50% + 35px);
        max-width: 400px;
        width: 80%
    }
}

.t-top-visual__opencampus {
    width: 95%;
    opacity: 0;
    -webkit-transform: translate3d(0, 50px, 0);
    transform: translate3d(0, 50px, 0);
    transition: 1000ms cubic-bezier(0.215, 0.61, 0.355, 1);
    transition-property: opacity,-webkit-transform;
    transition-property: opacity,transform;
    transition-property: opacity,transform,-webkit-transform
}

@media screen and (min-width: 561px) {
    .t-top-visual__opencampus {
        max-width:360px;
        position: absolute;
        right: 0;
        bottom: -90px;
        z-index: 2
    }
}

@media screen and (min-width: 1024px) {
    .t-top-visual__opencampus {
        bottom:-22px
    }
}

@media screen and (max-width: 560px) {
    .t-top-visual__opencampus {
        margin:0 0 0 auto
    }
}

.t-top-visual__opencampus a {
    display: block;
    width: 100%;
    height: 100%;
    background-color: #fff;
    box-shadow: 7px 7px 10px rgba(0,0,0,0.15);
    background: linear-gradient(45deg, #05aadc 0%, #05aadc 25%, #ff9d95 75%, #ff9d95 100%);
    position: relative;
    color: #fff
}

.t-top-visual__opencampus a::before {
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    z-index: 0;
    background-image: url("/assets/img/common/bg_pattern.png");
    background-size: 100px 100px;
    background-repeat: repeat;
    background-position: center;
    opacity: .2;
    transition: opacity 400ms cubic-bezier(0.165, 0.84, 0.44, 1)
}

.t-top-visual__opencampus a.is-hover:hover::before {
    opacity: .1
}

@media screen and (min-width: 1024px) {
    .t-top-visual__opencampus a {
        padding:28px 30px 18px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-visual__opencampus a {
        padding:24px 24px 12px
    }
}

@media screen and (max-width: 560px) {
    .t-top-visual__opencampus a {
        padding:22px 20px 20px
    }
}

.t-top-visual__opencampus__title {
    text-transform: uppercase;
    line-height: 1;
    letter-spacing: .02em
}

@media screen and (min-width: 1024px) {
    .t-top-visual__opencampus__title {
        font-size:4.4rem;
        margin-bottom: 1px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-visual__opencampus__title {
        font-size:3.0rem;
        margin-bottom: 3px
    }
}

@media screen and (max-width: 560px) {
    .t-top-visual__opencampus__title {
        font-size:2.8rem;
        margin-bottom: 8px
    }
}

.t-top-visual__opencampus__text {
    font-weight: bold;
    line-height: 1.33333;
    letter-spacing: .15em
}

@media screen and (min-width: 1024px) {
    .t-top-visual__opencampus__text {
        font-size:2.1rem;
        margin-bottom: 9px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-visual__opencampus__text {
        font-size:1.8rem;
        margin-bottom: 8px
    }
}

@media screen and (max-width: 560px) {
    .t-top-visual__opencampus__text {
        font-size:1.5rem;
        font-size: calc( 1.0rem + 1.56vw);
        margin-bottom: 8px
    }
}

.t-top-visual__opencampus__day {
    line-height: 1;
    letter-spacing: .06em
}

@media screen and (min-width: 1024px) {
    .t-top-visual__opencampus__day {
        font-size:2.4rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-visual__opencampus__day {
        font-size:2.2rem
    }
}

@media screen and (max-width: 560px) {
    .t-top-visual__opencampus__day {
        font-size:1.8rem
    }
}

.t-top-visual__opencampus__day span {
    letter-spacing: .04em
}

@media screen and (min-width: 1024px) {
    .t-top-visual__opencampus__day span {
        font-size:2.8rem
    }
}

@media screen and (min-width: 1280px) {
    .t-top-visual__opencampus__day span {
        font-size:3.0rem
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-visual__opencampus__day span {
        font-size:2.4rem
    }
}

@media screen and (max-width: 560px) {
    .t-top-visual__opencampus__day span {
        font-size:2.0rem
    }
}

.t-top-visual__opencampus__more {
    position: absolute;
    right: 0;
    bottom: 0;
    overflow: hidden;
    line-height: 1
}

@media screen and (min-width: 1024px) {
    .t-top-visual__opencampus__more {
        width:100px;
        height: 94px;
        padding: 22px 0 18px 28px
    }
}

@media screen and (max-width: 1023px) {
    .t-top-visual__opencampus__more {
        width:80px;
        height: 75.2px;
        padding: 22px 0 12px 25px
    }
}

.t-top-visual__opencampus__more::before,.t-top-visual__opencampus__more::after {
    content: '';
    display: block
}

.t-top-visual__opencampus__more::before {
    border-radius: 50%;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0
}

@media screen and (min-width: 1024px) {
    .t-top-visual__opencampus__more::before {
        width:122px;
        height: 122px
    }
}

@media screen and (max-width: 1023px) {
    .t-top-visual__opencampus__more::before {
        width:97.6px;
        height: 97.6px
    }
}

.t-top-visual__opencampus__more::after {
    position: relative;
    z-index: 1;
    background-image: url("/assets/img/common/icon/yazirushi-gray.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .t-top-visual__opencampus__more::after {
        width:59px;
        height: 7px;
        margin-top: 5px
    }
}

@media screen and (max-width: 1023px) {
    .t-top-visual__opencampus__more::after {
        width:47.2px;
        height: 5.6px;
        margin-top: 4px
    }
}

.t-top-visual__opencampus__more span {
    position: relative;
    z-index: 1;
    color: #646464;
    font-weight: bold;
    line-height: 1.3125;
    letter-spacing: .13em;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal;
    text-align: justify
}

@media screen and (min-width: 1024px) {
    .t-top-visual__opencampus__more span {
        font-size:1.6rem;
        padding-left: 2px
    }
}

@media screen and (max-width: 1023px) {
    .t-top-visual__opencampus__more span {
        font-size:1.2rem
    }
}

@media screen and (min-width: 1024px) {
    .t-top-visual__scroll {
        position:absolute;
        right: 26px;
        bottom: 30px;
        z-index: 3
    }
}

@media screen and (max-width: 1023px) {
    .t-top-visual__scroll {
        display:none
    }
}

.t-top-visual__scroll p {
    color: #fff
}

@media screen and (min-width: 1024px) {
    .t-top-visual__scroll p {
        text-transform:uppercase;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
        -webkit-font-feature-settings: normal;
        font-feature-settings: normal
    }
}

.t-top-pickup {
    background-color: #fff
}

.t-top-pickup time {
    display: block;
    color: #333
}

@media screen and (min-width: 561px) {
    .t-top-pickup time {
        font-size:1.2rem;
        margin-right: 3.6%
    }
}

@media screen and (max-width: 560px) {
    .t-top-pickup time {
        font-size:1.0rem;
        margin-right: 1em
    }
}

.t-top-pickup a {
    font-weight: 400;
    color: #000;
    position: relative
}

@media screen and (min-width: 561px) {
    .t-top-pickup a {
        font-size:1.6rem;
        width: 85%
    }
}

@media screen and (max-width: 560px) {
    .t-top-pickup a {
        font-size:1.2rem
    }
}

.t-top-pickup a.is-hover:hover {
    color: #666;
    text-decoration: underline
}

.t-top-pickup a.is-hover:hover::before {
    left: 110%;
    opacity: 1
}

.t-top-pickup a::before {
    content: '';
    background-image: url("/assets/img/common/icon/arrow_black.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    top: 50%;
    left: 106%;
    -webkit-transform: translateX(-50%);
    transform: translateX(-50%);
    transition: all 400ms cubic-bezier(0.165, 0.84, 0.44, 1);
    opacity: 0
}

@media screen and (min-width: 1024px) {
    .t-top-pickup a::before {
        width:40px;
        height: 6px
    }
}

@media screen and (max-width: 1023px) {
    .t-top-pickup a::before {
        width:32px;
        height: 4.8px
    }
}

.t-top-pickup a span {
    display: block;
    line-height: 1.5
}

.t-top-pickup__inr {
    display: flex;
    align-items: center
}

@media screen and (min-width: 561px) {
    .t-top-pickup__inr {
        padding:16px 0
    }
}

@media screen and (max-width: 560px) {
    .t-top-pickup__inr {
        padding:20px 0
    }
}

.t-top-concept {
    background-color: #ebc31e;
    position: relative
}

.t-top-concept::before {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    pointer-events: none;
    content: '';
    background-image: url("/assets/img/common/icon/icon_hana.svg");
    content: '';
    position: absolute;
    top: 50px;
    left: calc( ( 100% - 730px ) / 2);
    -webkit-transform: scale(0);
    transform: scale(0);
    transition: all 800ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition-delay: 100ms !important
}

@media screen and (min-width: 1024px) {
    .t-top-concept::before {
        width:70px;
        height: 68px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-concept::before {
        width:56px;
        height: 54.4px
    }
}

@media screen and (max-width: 560px) {
    .t-top-concept::before {
        width:42px;
        height: 40.8px
    }
}

@media screen and (min-width: 1024px) {
    .t-top-concept::before {
        top:50px;
        left: calc( ( 100% - 730px ) / 2)
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-concept::before {
        top:4%;
        left: 6%
    }
}

@media screen and (max-width: 560px) {
    .t-top-concept::before {
        top:4%;
        left: 6%
    }
}

.t-top-concept::after {
    content: '';
    display: block;
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat;
    position: absolute;
    pointer-events: none;
    content: '';
    background-image: url("/assets/img/common/icon/icon_hana.svg");
    content: '';
    position: absolute;
    -webkit-transform: scale(0);
    transform: scale(0);
    transition: all 800ms cubic-bezier(0.175, 0.885, 0.32, 1.275);
    transition-delay: 400ms !important
}

@media screen and (min-width: 1024px) {
    .t-top-concept::after {
        width:120px;
        height: 116px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-concept::after {
        width:96px;
        height: 92.8px
    }
}

@media screen and (max-width: 560px) {
    .t-top-concept::after {
        width:72px;
        height: 69.6px
    }
}

@media screen and (min-width: 1024px) {
    .t-top-concept::after {
        bottom:-34px;
        right: calc( ( 100% - 900px ) / 2)
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-concept::after {
        bottom:-27.2px;
        right: 5%
    }
}

@media screen and (max-width: 560px) {
    .t-top-concept::after {
        bottom:-20.4px;
        right: 5%
    }
}

.t-top-concept.is-shown::before,.t-top-concept.is-shown::after {
    -webkit-transform: scale(1);
    transform: scale(1)
}

.t-top-concept__overflow {
    overflow: hidden;
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-top-concept__overflow {
        padding:100px 0 44px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-concept__overflow {
        padding:100px 0 44px
    }
}

@media screen and (max-width: 560px) {
    .t-top-concept__overflow {
        padding:50px 0 30px
    }
}

.t-top-concept__inner {
    max-width: 510px;
    width: 90%;
    margin: 0 auto;
    position: relative;
    z-index: 2
}

@media screen and (min-width: 1024px) {
    .t-top-concept__inner {
        height:366px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-concept__inner {
        height:366px
    }
}

@media screen and (max-width: 560px) {
    .t-top-concept__inner {
        height:430px
    }
}

.t-top-concept__ttl {
    position: absolute;
    top: -.5em;
    right: 0
}

.t-top-concept__text {
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%);
    line-height: 2.57143
}

@media screen and (min-width: 561px) {
    .t-top-concept__text {
        justify-content:flex-start;
        height: 100%
    }
}

@media screen and (max-width: 560px) {
    .t-top-concept__text {
        justify-content:center;
        height: 60%
    }
}

.t-top-concept__scroll {
    height: 150px;
    position: absolute;
    bottom: 0;
    left: 0
}

.t-top-concept__scroll .c-scrool__icon {
    height: 100%
}

.t-top-concept__scroll a {
    -webkit-writing-mode: vertical-rl;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    text-orientation: upright;
    -webkit-font-feature-settings: normal;
    font-feature-settings: normal;
    margin-bottom: 0
}

.t-top-concept__bg {
    z-index: 1;
    position: absolute
}

.t-top-concept__bg-map {
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.t-top-concept__bg-map__inr {
    background-image: url("../img/top/concept_map.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .t-top-concept__bg-map__inr {
        width:640px;
        height: 636px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-concept__bg-map__inr {
        width:512px;
        height: 508.8px
    }
}

@media screen and (max-width: 560px) {
    .t-top-concept__bg-map__inr {
        width:384px;
        height: 381.6px
    }
}

@media screen and (min-width: 1024px) {
    .t-top-concept__bg-rasen__01 {
        top:-36%;
        left: -25%
    }
}

@media screen and (min-width: 1280px) {
    .t-top-concept__bg-rasen__01 {
        top:-36%;
        left: -10%
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-concept__bg-rasen__01 {
        top:-13.8%;
        left: -31%
    }
}

@media screen and (max-width: 560px) {
    .t-top-concept__bg-rasen__01 {
        display:none
    }
}

.t-top-concept__bg-rasen__01__inr {
    background-image: url("../img/top/concept_rasen_01.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .t-top-concept__bg-rasen__01__inr {
        width:1168.7px;
        height: 977.6px
    }
}

@media screen and (min-width: 1280px) {
    .t-top-concept__bg-rasen__01__inr {
        width:1348.5px;
        height: 1128px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-concept__bg-rasen__01__inr {
        width:899px;
        height: 752px
    }
}

@media screen and (min-width: 1024px) {
    .t-top-concept__bg-rasen__02 {
        top:-36%;
        right: -28.4%
    }
}

@media screen and (min-width: 1280px) {
    .t-top-concept__bg-rasen__02 {
        top:-36%;
        right: -8%
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-concept__bg-rasen__02 {
        top:8.2%;
        right: -28.4%
    }
}

@media screen and (max-width: 560px) {
    .t-top-concept__bg-rasen__02 {
        display:none
    }
}

.t-top-concept__bg-rasen__02__inr {
    background-image: url("../img/top/concept_rasen_02.svg");
    background-size: contain;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .t-top-concept__bg-rasen__02__inr {
        width:1137.6px;
        height: 951.6px
    }
}

@media screen and (min-width: 1280px) {
    .t-top-concept__bg-rasen__02__inr {
        width:1137.6px;
        height: 951.6px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-concept__bg-rasen__02__inr {
        width:758.4px;
        height: 634.4px
    }
}

@media screen and (min-width: 1024px) {
    .t-top-product .c-title-section {
        margin-bottom:100px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-product .c-title-section {
        margin-bottom:80px
    }
}

@media screen and (max-width: 560px) {
    .t-top-product .c-title-section {
        margin-bottom:60px
    }
}

.t-top-media-top {
    width: 100%;
    background-image: url("../img/top/media_top.jpg");
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat
}

@media screen and (min-width: 1024px) {
    .t-top-media-top {
        height:300px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-media-top {
        height:300px
    }
}

@media screen and (max-width: 560px) {
    .t-top-media-top {
        height:200px
    }
}

.t-top-media-top {
    display: none
}

.t-top-media {
    background-color: #f5f5f5;
    position: relative
}

@media screen and (min-width: 1024px) {
    .t-top-media {
        padding:140px 0 70px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    .t-top-media {
        padding:100px 0 50px
    }
}

@media screen and (max-width: 560px) {
    .t-top-media {
        padding:80px 0 40px
    }
}

.t-top-media::before {
    content: '';
    width: 100%;
    height: 50%;
    background: linear-gradient(180deg, rgba(255,255,255,0) 0%, #ebc31e 100%);
    position: absolute;
    bottom: 0;
    left: 0;
    opacity: .7
}

.t-top-media::after {
    content: '';
    width: 100%;
    height: 50%;
    background-image: url("/assets/img/common/icon/media_pattern.svg");
    background-size: 100px 174px;
    position: absolute;
    bottom: 0;
    left: 0;
    opacity: .3
}

.t-top-media {
    display: none
}

.t-top-media__list {
    display: flex;
    flex-wrap: wrap
}

@media screen and (min-width: 561px) {
    .t-top-media__list {
        margin-bottom:60px
    }
}

@media screen and (max-width: 560px) {
    .t-top-media__list {
        margin-bottom:40px
    }
}

@media screen and (min-width: 561px) {
    .t-top-media__list>* {
        width:30%
    }

    .t-top-media__list>*:not(:last-child) {
        margin-right: 5%
    }
}

@media screen and (max-width: 560px) {
    .t-top-media__list>* {
        width:100%
    }

    .t-top-media__list>*:not(:last-child) {
        margin-bottom: 40px
    }
}

body.ua-ie .l-main {
    overflow: hidden
}

@media screen and (min-width: 1024px) {
    body.ua-ie .l-header__nav__children a {
        padding-top:6px;
        padding-bottom: 2px
    }
}

body.ua-ie .l-header__nav__children a::before {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px)
}

body.ua-ie .l-sitemap__parent {
    padding-top: 14px;
    padding-bottom: 8px
}

body.ua-ie .l-sitemap__btn a {
    padding-top: 16px;
    padding-bottom: 12px
}

body.ua-ie .l-footer__contact a::before {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px)
}

body.ua-ie .l-hero__inner::before,body.ua-ie .t-top-visual__slider::before {
    transition-timing-function: ease
}

@media screen and (min-width: 1024px) {
    body.ua-ie .l-hero__content--large .l-hero__content__inner {
        padding-top:27px;
        padding-bottom: 18px
    }
}

body.ua-ie .l-hero__circle {
    padding-bottom: 0
}

body.ua-ie.is-animation .l-hero__inner::before,body.ua-ie.is-animation .l-hero__inner::after {
    transition-duration: 600ms
}

body.ua-ie.is-animation .t-top-visual__slider::before {
    transition-duration: 600ms
}

body.ua-ie .l-breadcrumb {
    font-family: "ãƒ¡ã‚¤ãƒªã‚ª", Meiryo, sans-serif
}

body.ua-ie .js-splitIn__cell {
    overflow: visible
}

@media screen and (min-width: 1024px) {
    body.ua-ie .c-title-copy {
        font-size:3.6rem
    }
}

@media screen and (min-width: 1024px) {
    body.ua-ie .c-btn a,body.ua-ie .c-btn .c-btn-more__inner {
        padding:24px 0 20px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    body.ua-ie .c-btn a,body.ua-ie .c-btn .c-btn-more__inner {
        padding:22px 0 18px
    }
}

@media screen and (max-width: 560px) {
    body.ua-ie .c-btn a,body.ua-ie .c-btn .c-btn-more__inner {
        padding:20px 0 16px
    }
}

@media screen and (max-width: 320px) {
    body.ua-ie .c-btn a,body.ua-ie .c-btn .c-btn-more__inner {
        padding:20px 0 14px
    }
}

body.ua-ie .c-btn-download span::after {
    -webkit-transform: translateY(-2px);
    transform: translateY(-2px)
}

@media screen and (max-width: 1023px) {
    body.ua-ie .c-table-complex table {
        table-layout:fixed
    }
}

body.ua-ie .c-marker-40 {
    background: linear-gradient(transparent 45%, #ebc31e 45%, #ebc31e 70%, transparent 0)
}

body.ua-ie .c-marker-100 {
    background: linear-gradient(transparent 10%, #ebc31e 10%, #ebc31e 70%, transparent 0)
}

body.ua-ie .c-pagination__number a {
    padding-top: 14px;
    padding-bottom: 6px
}

body.ua-ie .c-pagination__list a,body.ua-ie .c-pagination__prev a,body.ua-ie .c-pagination__next a {
    padding-top: 14px;
    padding-bottom: 10px
}

body.ua-ie .c-sidebar__nav a {
    padding-top: 23px;
    padding-bottom: 19px
}

@media screen and (min-width: 769px) {
    body.ua-ie .c-category {
        padding-top:7px;
        padding-bottom: 3px
    }
}

@media screen and (max-width: 768px) {
    body.ua-ie .c-category {
        padding-top:6px;
        padding-bottom: 2px
    }
}

@media screen and (min-width: 1024px) {
    body.ua-ie [type="text"],body.ua-ie [type="email"],body.ua-ie [type="tel"],body.ua-ie select,body.ua-ie option,body.ua-ie textarea,body.ua-ie .js-form-dummy-textarea {
        padding-top:14px;
        padding-bottom: 10px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    body.ua-ie [type="text"],body.ua-ie [type="email"],body.ua-ie [type="tel"],body.ua-ie select,body.ua-ie option,body.ua-ie textarea,body.ua-ie .js-form-dummy-textarea {
        padding-top:12px;
        padding-bottom: 8px
    }
}

@media screen and (max-width: 560px) {
    body.ua-ie [type="text"],body.ua-ie [type="email"],body.ua-ie [type="tel"],body.ua-ie select,body.ua-ie option,body.ua-ie textarea,body.ua-ie .js-form-dummy-textarea {
        padding-top:10px;
        padding-bottom: 6px
    }
}

body.ua-ie .p-form-required {
    padding-top: 4px
}

body.ua-ie .p-form-table dt {
    padding-top: 2px
}

body.ua-ie .p-form-radio .wpcf7-list-item-label,body.ua-ie .p-form-checkbox .wpcf7-list-item-label {
    padding-top: 2px
}

body.ua-ie .t-about-banner a.is-hover:hover .t-about-banner__title span {
    text-decoration: underline
}

body.ua-ie .t-about-banner__title span {
    background: none
}

body.ua-ie .t-subject-section__introduce__copy {
    letter-spacing: .01em
}

body.ua-ie .t-subject-section__grid img {
    width: auto
}

body.ua-ie .t-subject-section__btn a span {
    -webkit-transform: translateY(2px);
    transform: translateY(2px)
}

body.ua-ie .t-subject-detail-introduce h2 {
    letter-spacing: .01em
}

body.ua-ie .t-subject-detail-strength img {
    width: auto
}

body.ua-ie .t-employment-status__figure__content div {
    max-width: none
}

body.ua-ie .t-employment-status__figure__content p a {
    padding-top: 7px;
    padding-bottom: 3px
}

@media screen and (min-width: 1024px) {
    body.ua-ie .t-campuslife-tab__switch a {
        padding-top:22px;
        padding-bottom: 18px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    body.ua-ie .t-campuslife-tab__switch a {
        padding-top:18px;
        padding-bottom: 28px
    }
}

@media screen and (max-width: 560px) {
    body.ua-ie .t-campuslife-tab__switch a {
        padding-top:16px;
        padding-bottom: 10px
    }
}

@media screen and (min-width: 769px) {
    body.ua-ie .t-campuslife-event__list__icon {
        min-height:160px
    }
}

@media screen and (min-width: 1024px) {
    body.ua-ie .t-campuslife-event__list__icon {
        min-height:205px
    }
}

@media screen and (min-width: 769px) {
    body.ua-ie .t-campuslife-event__list__cell:last-of-type .t-campuslife-event__list__icon {
        min-height:130px
    }
}

@media screen and (min-width: 1024px) {
    body.ua-ie .t-campuslife-event__list__cell:last-of-type .t-campuslife-event__list__icon {
        min-height:155px
    }
}

body.ua-ie .t-graduate-list__copy:not(.t-graduate-list__copy--minus) {
    letter-spacing: 0
}

body.ua-ie .t-graduate-article__read h4 {
    letter-spacing: 0
}

body.ua-ie .t-graduate-article__message__text h5 {
    letter-spacing: 0
}

@media screen and (min-width: 1024px) {
    body.ua-ie .t-opencampus-schedule__days li {
        padding-top:19px;
        padding-bottom: 15px
    }
}

@media screen and (max-width: 1023px) and (min-width: 561px) {
    body.ua-ie .t-opencampus-schedule__days li {
        padding-top:14px;
        padding-bottom: 10px
    }
}

@media screen and (max-width: 560px) {
    body.ua-ie .t-opencampus-schedule__days li {
        padding-top:10px;
        padding-bottom: 6px
    }
}

@media screen and (min-width: 1024px) {
    body.ua-ie .t-opencampus-schedule__night .t-opencampus-schedule__header__target dt {
        padding-top:9px;
        padding-bottom: 5px
    }
}

@media screen and (max-width: 1023px) {
    body.ua-ie .t-opencampus-schedule__night .t-opencampus-schedule__header__target dt {
        padding-top:8px;
        padding-bottom: 4px
    }
}

body.ua-ie .t-opencampus-schedule__days p span:nth-of-type(2) {
    padding-top: 5px;
    padding-bottom: 1px
}

body.ua-ie .t-sitemap-list__block:nth-of-type(1) {
    width: 190px
}

body.ua-ie .t-sitemap-list__block:nth-of-type(2) {
    flex: 1
}

body.ua-ie .t-sitemap-list__block a {
    display: flex
}
.oemPage .fade-in {
  opacity: 0;
  transition-duration: 500ms;
  transition-property: opacity, transform;
}

.oemPage .fade-in-up {
  transform: translate(0, 50px);
}

.oemPage .fade-in-down {
  transform: translate(0, -50px);
}

.oemPage .fade-in-left {
  transform: translate(-50px, 0);
}

.oemPage .fade-in-right {
  transform: translate(50px, 0);
}

.oemPage .scroll-in {
  opacity: 1;
  transform: translate(0, 0);
}
.oemPage{
    padding-bottom: 325px;
}
.oemPage .df{
    display: flex;
}
.oemPage .dg{
    display: grid;
}
.oemPage .oemBlock1{
    padding-top: 59px;
    width: 90%;
    max-width: 1000px;
    margin: 0 auto 179px;
}
.oemPage .oemBlock1 .c-title-section{
    margin-bottom: 65px;
}
.oemPage .oemBlock1 .innerBox{
    align-items: center;
    margin-bottom: 80px;
}
.oemPage .oemBlock1 .innerBox:last-child{
    margin-bottom: 0;
}
.oemPage .oemBlock1 .innerBox .txtBox{
    width: 60%;
    position: relative;
    z-index: 1;
    background-color: rgba(0,0,0,0.75);
    height: fit-content;
    padding: 47px 5% 70px;
    box-sizing: border-box;
}
.oemPage .oemBlock1 .innerBox .txtBox h3{
    font-size: 28px;
    font-weight: 400;
    color: #fff;
    margin-bottom: 37px;
}
.oemPage .oemBlock1 .innerBox .txtBox p{
    font-size: 16px;
    font-weight: 400;
    color: #fff;
    line-height: 28px;
}
.oemPage .oemBlock1 .innerBox.no1 .txtBox,
.oemPage .oemBlock1 .innerBox.no3 .txtBox{
    margin-right: -5%;
}
.oemPage .oemBlock1 .innerBox.no2 .txtBox{
    margin-left: -5%;
}
.oemPage .oemBlock1 .innerBox img{
    width: 50%;
}
.oemPage .oemBlock2{
    width: 90%;
    max-width: 1319px;
    margin: 0 auto 180px;
    background-color: #E8E8E8;
    border-top: 2px dotted #707070;
    border-bottom: 2px dotted #707070;
    padding: 96px 5% 133px;
    box-sizing: border-box;
}
.oemPage .oemBlock2 .c-title-section{
    margin-bottom: 68.5px;
}
.oemPage .oemBlock2 .memo{
    font-size: 20px;
    font-weight: 400;
    border-bottom: 1px solid #000000;
    width: fit-content;
    margin: 0 auto 58.5px;
}
.oemPage .oemBlock2 .dg{
    grid-template-columns: 1fr 1fr 1fr 1fr;
    gap: 0 25px;
    margin-bottom: 38px;
}
.oemPage .oemBlock2 .dg li .ttlWrap{
    width: 90%;
    height: 120px;
    margin: -27px auto 0;
    background-color: rgba(255,255,255,0.78);
    text-align: center;
    position: relative;
    z-index: 1;
    display: flex;
    justify-content: center;
    align-items: center;
}
.oemPage .oemBlock2 .dg li h3{
    font-size: 17px;
    font-weight: 400;
}
.oemPage .oemBlock2 .dg li h3 span{
    font-size: 17px;
    font-weight: 400;
    color: #9D7D00;
}
.oemPage .oemBlock2 .attentionBox{
    background-color: #fff;
    padding: 40px 5%;
    align-items: center;
}
.oemPage .oemBlock2 .attentionBox .left{
    width: 40%;
    text-align: center;
    font-size: 18px;
}
.oemPage .oemBlock2 .attentionBox .right{
    width: 60%;
    padding-left: 5%;
    box-sizing: border-box;
    border-left: 1px solid #C1C1C1;
    font-size: 15px;
}
.oemPage .oemBlock3{
    background: url('/assets/img/oemImg/strongBg.jpg') no-repeat center;
    padding: 147px 0 218.2px;
    margin-bottom: 201px;
    position: relative;
}
.oemPage .oemBlock3 .cloudLeft{
    position: absolute;
    top: 0;
    left: -100%;
    opacity: 0;
    transition: left .8s ease, opacity 1s ease .5s;
}
.oemPage .oemBlock3.scroll-in .cloudLeft{
    opacity: 1;
    left: 0;
}
.oemPage .oemBlock3 .cloudRight{
    position: absolute;
    bottom: 0;
    right: -100%;
    transition: right .8s ease .3s, opacity 1s ease .5s;
    opacity: 0;
}
.oemPage .oemBlock3.scroll-in .cloudRight{
    opacity: 1;
    right: 0;
}
.oemPage .oemBlock3 .c-title-section{
    margin-bottom: 98.6px;
}
.oemPage .oemBlock3 .dg{
    width: 90%;
    max-width: 1035px;
    margin: 0 auto;
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0 15.2px;
    margin-bottom: 57px;
}
.oemPage .oemBlock3 .dg li{
    background-color: #fff;
    padding: 4px;
    box-sizing: 3px 3px 6px rgba(0,0,0,0.18);
    height: 397px;
    position: relative;
}
.oemPage .oemBlock3 .dg li::before,
.oemPage .oemBlock3 .dg li::after{
    display: block;
    content: "";
    width: 36px;
    height: 36px;
}
.oemPage .oemBlock3 .dg li::before{
    background: linear-gradient(135deg, #000 0%, #000 50%, transparent 50%, transparent 100%);
    position: absolute;
    top: -5.7px;
    left: -5.7px;
}
.oemPage .oemBlock3 .dg li::after{
    background: linear-gradient(-45deg, #000 0%, #000 50%, transparent 50%, transparent 100%);
    position: absolute;
    bottom: -2.2px;
    right: -2.2px;
}
.oemPage .oemBlock3 .dg li .innerLine{
    border: 1px solid #000000;
    height: 100%;
    box-sizing: border-box;
    padding-top: 39px;
}
.oemPage .oemBlock3 .dg li .innerLine .num{
    font-size: 35px;
    width: fit-content;
    margin: 0 auto 48.8px;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
}
.oemPage .oemBlock3 .dg li .innerLine h3{
    font-size: 24px;
    font-weight: 400;
    margin-bottom: 38px;
    text-align: center;
}
.oemPage .oemBlock3 .dg li:last-child .innerLine h3{
    margin-top: 22px;
}
.oemPage .oemBlock3 .dg li .innerLine img{
    margin: 0 auto;
    display: block;
    width: fit-content;
}
.oemPage .oemBlock4{
    margin-bottom: 222px;
}
.oemPage .oemBlock4 .c-title-section{
    margin-bottom: 84px;
}
.oemPage .oemBlock4 .dg{
    grid-template-columns: 1fr 1fr 1fr;
    gap: 17px 37px;
    width: 90%;
    max-width: 1000px;
    margin: 0 auto 84px;
    max-height: 1080px;
    overflow: hidden;
    transition: .3s;
}
.oemPage .oemBlock4.on .dg{
    max-height: 3000px;
}
.oemPage .oemBlock4 .dg li img{
    display: block;
    margin-bottom: 11px;
}
.oemPage .oemBlock4 .dg li h3{
    font-size: 20px;
    font-weight: 400;
    text-align: center;
}
.oemPage .oemBlock4 .longBtn{
    width: 90%;
    max-width: 1000px;
    margin: 0 auto 80px;
    padding: 5px 0;
    background-color: #000000;
    transition: .3s;
    cursor: pointer;
}
.oemPage .oemBlock4 .longBtn:hover{
    background-color: #fff;
}
.oemPage .oemBlock4 .longBtn .longBtnInner{
    width: 100%;
    height: 100%;
    border-top: 2px dotted #fff;
    border-bottom: 2px dotted #fff;
    display: flex;
    justify-content: center;
    align-items: center;
    color: #fff;
    font-size: 24px;
    padding: 33px 0;
    transition: .3s;
    position: relative;
}
.oemPage .oemBlock4 .longBtn:hover .longBtnInner{
    color: #000;
    border-top: 2px dotted #000;
    border-bottom: 2px dotted #000;
}
.oemPage .oemBlock4 .longBtn .longBtnInner .arrow{
    position: absolute;
    top: 50%;
    right: 30%;
    transform: translateY(-50%);
    transition: .3s;
}
.oemPage .oemBlock4.on .longBtn .longBtnInner .arrow{
    transform: translateY(-50%) rotate(180deg);
}
.oemPage .oemBlock4 .longBtn:hover .longBtnInner .arrow{
    content: url('/assets/img/oemImg/btnArrow_k.svg');
}
.oemPage .contactBox{
    width: 90%;
    max-width: 906px;
    margin: 0 auto;
    border-top: 2px solid #000000;
    border-bottom: 2px solid #000000;
    padding: 6px 0;
    position: relative;
}
.oemPage .contactBox::before,
.oemPage .contactBox::after{
    display: block;
    content: "";
    width: 2px;
    height: 110%;
    background-color: #000;
    position: absolute;
    transform: translateY(-50%);
}
.oemPage .contactBox::before{
    top: 50%;
    left: 10px;
}
.oemPage .contactBox::after{
    top: 50%;
    right: 10px;
}
.oemPage .contactBox .contactBoxInner{
    width: 96%;
    margin: 0 auto;
    padding: 50px 0;
    background-color: #FFFFFF;
    border: 2px solid #000;
}
.oemPage .contactBox .contactBoxInner .note{
    font-size: 24px;
    font-weight: 400;
    text-align: center;
    width: 90%;
    margin: 0 auto 23px;
}
.oemPage .contactBox .contactBoxInner .df{
    justify-content: center;
}
.oemPage .contactBox .contactBoxInner .df li:nth-child(1){
    margin-right: 5%;
}
.oemPage .contactBox .contactBoxInner .df li a{
    display: flex;
    justify-content: center;
    width: 288px;
    padding: 18px;
    font-size: 16px;
    font-weight: 400;
    color: #fff;
    background-color: #000;
    border: 1px solid #000;
}
.oemPage .contactBox .contactBoxInner .df li a:hover{
    background-color: #fff;
    color: #000;
}
.oemPage .yellowBg{
    background-color: #EBC11E;
    padding: 181px 0 211px;
    margin-bottom: 233px;
    position: relative;
    overflow: hidden;
    z-index: 1;
}
.oemPage .yellowBg .effectImg{
    position: absolute;
    top: 0;
    left: 0;
    z-index: -1;
    transition: transform 0.1s ease-out;
}
.oemPage .oemBlock5{
    width: 90%;
    max-width: 1000px;
    margin: 0 auto 299px;
    position: relative;
}
.oemPage .oemBlock5 .c-title-section{
    margin-bottom: 50px;
}
.oemPage .oemBlock5 li{
    align-items: center;
    background-color: #fff;
    padding: 11px 3% 11px 1%;
    border-radius: 46px;
    position: relative;
    margin-bottom: 20px;
    box-sizing: border-box;
}
.oemPage .oemBlock5 li:last-child{
    margin-bottom: 0;
}
.oemPage .oemBlock5 li::after{
    display: block;
    content: "";
    width: 5px;
    height: 20px;
    background-color: #fff;
    position: absolute;
    top: 100%;
    left: 5%;
}
.oemPage .oemBlock5 li:last-child::after{
    display: none;
}
.oemPage .oemBlock5 li .num{
    width: 70px;
    height: 70px;
    border-radius: 50%;
    background-color: #EBC11E;
    font-size: 35px;
    font-weight: 800;
    color: #fff;
    display: flex;
    align-items: center;
    justify-content: center;
    margin-right: 2%;
}
.oemPage .oemBlock5 li h3{
    font-size: 21px;
    font-weight: 500;
    width: 40%;
}
.oemPage .oemBlock5 li .memo{
    font-size: 16px;
    font-weight: 400;
}
.oemPage .oemSlide{
    margin-bottom: 160px;
    position: relative;
}
.oemPage .oemSlide .swiper-wrapper{
    transition-timing-function: linear;
}
.oemPage .oemSlide .swiper-wrapper .swiper-slide{
    transform: none;
}
.oemPage .oemSlide .swiper-wrapper .swiper-slide .arrow{
    position: absolute;
    top: 50%;
    left: 95%;
    transform: translateY(-50%);
    z-index: 999;
}
.oemPage .oemBlock6 .c-title-section{
    margin-bottom: 57px;
}
.oemPage .oemBlock6 .memo{
    width: 90%;
    max-width: 1000px;
    margin: 0 auto 74px;
    text-align: center;
}
.oemPage .oemBlock6 .innerBox{
    width: 90%;
    max-width: 1319px;
    margin: 0 auto;
    background-color: #fff;
    padding: 152px 0;
    border-top: 2px dotted #707070;
    border-bottom: 2px dotted #707070;
}
.oemPage .oemBlock6 .innerBox h3{
    font-size: 24px;
    font-weight: 400;
    text-align: center;
    margin-bottom: 110px;
}
.oemPage .oemBlock6 .innerBox .dg{
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0 30px;
    width: 90%;
    max-width: 1000px;
    margin: 0 auto;
}
.oemPage .oemBlock6 .innerBox .dg li img{
    display: block;
    margin-bottom: 10px;
}
.oemPage .oemBlock6 .innerBox .dg li h3{
    font-size: 18px;
    color: #9D7D00;
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    font-weight: 300;
    font-style: normal;
    text-align: left;
    margin-bottom: 18px;
}
.oemPage .oemBlock6 .innerBox .dg li .note{
    font-size: 16px;        
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    font-weight: 300;
    font-style: normal;
}
.oemPage .oemBlock7{
    width: 90%;
    max-width: 1000px;
    margin: 0 auto 277px;
}
.oemPage .oemBlock7 .c-title-section{
    margin-bottom: 213px;
}
.oemPage .oemBlock7 .dg{
    grid-template-columns: 1fr 1fr 1fr;
    gap: 0 23.6px;
}
.oemPage .oemBlock7 .dg .c-product-card{
    width: 100%;
    margin-bottom: 0;
}
.oemPage .oemBlock7 .dg .c-product-card .c-product-card__ttl{
    left: calc( -20px / 2);
}
.oemPage .oemBlock7 .dg .c-product-card a img{
    display: block;
    margin-bottom: 17px;
    width: 100%;
}
.oemPage .oemBlock7 .dg .c-product-card a .tag{
    padding: 4px 6px;
    border: 1px solid #707070;
    font-size: 16px;
    font-family: "hiragino-kaku-gothic-pron", sans-serif;
    font-weight: 300;
    font-style: normal;
    color: #696969;
    margin-right: 2%;
}
.oemPage .oemBlock7 .dg .c-product-card a .tag::last-child{
    margin-right: 0;
}
.oemPage .oemBlock8 .c-title-section{
    margin-bottom: 95px;
}
.oemPage .oemBlock8 .qaWrap{
    width: 90%;
    max-width: 1000px;
    margin: 0 auto 95px;
}
.oemPage .oemBlock8 .qaBox{
    border-bottom: 2px dotted #707070;
    padding: 28px 3%;
    cursor: pointer;
}
.oemPage .oemBlock8 .qaBox:first-child{
    border-top: 2px dotted #707070;
}
.oemPage .oemBlock8 .qaBox .iconNum{
    display: block;
    font-size: 20px;
    font-weight: 400;
    color: #EBC11E;
    width: 5%;
}
.oemPage .oemBlock8 .qaBox .note{
    width: 95%;
    font-size: 16px;
    font-weight: 400;
}
.oemPage .oemBlock8 .qBox,
.oemPage .oemBlock8 .aBox{
    display: flex;
    align-items: center;
}
.oemPage .oemBlock8 .qBox{
    position: relative;
}
.oemPage .oemBlock8 .qBox img{
    position: absolute;
    top: 50%;
    right: 0;
    transform: translateY(-50%) rotate(-180deg);
    transition: .3s;
}
.oemPage .oemBlock8 .qaBox.on .qBox img{
    transform: translateY(-50%) rotate(0);
}
.oemPage .oemBlock8 .aBox{
    max-height: 0;
    overflow: hidden;
    transition: .3s;
}
.oemPage .oemBlock8 .qaBox .aBox .note{
    line-height: 23px;
}
.oemPage .oemBlock8 .qaBox.on .aBox{
    max-height: 500px;
    margin-top: 50px;
}
.oemPage .oemBlock9 .c-title-section{
    margin-bottom: 95px;
	margin-top:100px
}
@media ( width < 1000px ){
    .oemPage .oemBlock2 .dg{
        grid-template-columns: 1fr 1fr;
        gap: 30px 20px;
    }
    .oemPage .oemBlock3 .dg{
        grid-template-columns: 1fr;
        gap: 40px 0;
    }
    .oemPage .oemBlock4 .dg{
        grid-template-columns: 1fr 1fr 1fr;
    }
    .oemPage .contactBox .contactBoxInner .note{
        font-size: 18px;
    }
    .oemPage .oemBlock5{
        margin-bottom: 80px;
    }
    .oemPage .oemBlock5 li .num{
        width: 50px;
        height: 50px;
        font-size: 28px;
    }
    .oemPage .oemBlock5 li h3{
        font-size: 16px;
        width: 30%;
    }
    .oemPage .oemBlock5 li .memo{
        font-size: 14px;
    }
    .oemPage .oemBlock6 .innerBox{
        padding: 80px 0;
    }
    .oemPage .yellowBg{
        padding: 80px 0;
        margin-bottom: 80px;
    }
    .oemPage .oemBlock7{
        margin-bottom: 80px;
    }
    .oemPage .oemBlock7 .dg{
        grid-template-columns: 1fr;
        gap: 80px 0;
    }
    .oemPage .oemBlock7 .c-title-section{
        margin-bottom: 80px;
    }
    .oemPage .oemBlock4 .longBtn .longBtnInner{
        font-size: 16px;
        padding: 20px 0;
    }
}
@media ( width < 820px ){
    .oemPage{
        padding-bottom: 80px;
    }
    .oemPage .contactBox .contactBoxInner .df{
        flex-flow: column;
    }
    .oemPage .oemBlock1 .innerBox{
        flex-flow: column;
    }
    .oemPage .oemBlock1 .innerBox .txtBox{
        width: 96%;
        order: 2;
        margin-top: -5%;
        padding: 40px 3%;
    }
    .oemPage .oemBlock1 .innerBox.no1 .txtBox, 
    .oemPage .oemBlock1 .innerBox.no3 .txtBox{
        margin-right: 0;
    }
    .oemPage .oemBlock1 .innerBox.no2 .txtBox{
        margin-left: 0;
    }
    .oemPage .oemBlock1 .innerBox .txtBox h3{
        font-size: 20px;
        margin-bottom: 30px;
    }
    .oemPage .oemBlock1 .innerBox .txtBox p{
        font-size: 14px;
    }
    .oemPage .oemBlock1 .innerBox img{
        width: 100%;
        order: 1;
    }
    .oemPage .oemBlock1{
        margin-bottom: 80px;
    }
    .oemPage .oemBlock2{
        padding: 80px 5%;
        margin-bottom: 80px;
    }
    .oemPage .oemBlock2 .memo{
        font-size: 18px;
    }
    .oemPage .oemBlock2 .c-title-section{
        margin-bottom: 40px;
    }
    .oemPage .oemBlock2 .dg{
        grid-template-columns: 1fr;
        gap: 40px 0;
    }
    .oemPage .oemBlock3{
        padding: 80px 0;
    }
    .oemPage .oemBlock3 .c-title-section{
        margin-bottom: 40px;
    }
    .oemPage .oemBlock3 .dg li{
        height: 357px;
    }
    .oemPage .oemBlock3 .dg li .innerLine .num{
        margin-bottom: 20px;
    }
    .oemPage .oemBlock3{
        margin-bottom: 80px;
    }
    .oemPage .oemBlock4 .dg{
        grid-template-columns: 1fr 1fr;
        gap: 20px 10px;
        max-height: 650px;
    }
    .oemPage .oemBlock4 .dg li h3{
        font-size: 18px;
    }
    .oemPage .oemBlock4 .c-title-section{
        margin-bottom: 40px;
    }
    .oemPage .contactBox .contactBoxInner{
        width: 90%;
    }
    .oemPage .contactBox .contactBoxInner .df li{
        width: 90%;
        margin: 0 auto;
    }
    .oemPage .contactBox .contactBoxInner .df li:first-child{
        margin-right: auto;
        margin-bottom: 20px;
    }
    .oemPage .contactBox .contactBoxInner .df li a{
        width: 100%;
    }
    .oemPage .contactBox .contactBoxInner .note{
        font-size: 14px;
    }
    .oemPage .contactBox .contactBoxInner .note br{
        display: none;
    }
    .oemPage .oemBlock4{
        margin-bottom: 80px;
    }
    .oemPage .oemBlock5 li{
        flex-flow: column;
        border-radius: 20px;
        padding: 20px 3%;
    }
    .oemPage .oemBlock5 li h3{
        width: 100%;
        text-align: center;
        margin-bottom: 20px;
    }
    .oemPage .oemBlock5 li::after{
        left: 50%;
        transform: translateX(-50%);
    }
    .oemPage .oemBlock5 li .num{
        margin-right: 0;
        margin-bottom: 20px;
    }
    .oemPage .oemSlide{
        margin-bottom: 80px;
    }
    .oemPage .oemBlock6 .c-title-section{
        margin-bottom: 40px;
    }
    .oemPage .oemBlock6 .memo{
        margin-bottom: 40px;
    }
    .oemPage .oemBlock6 .innerBox h3{
        margin-bottom: 40px;
    }
    .oemPage .oemBlock6 .innerBox .dg{
        grid-template-columns: 1fr;
        gap: 40px 0;
    }
    .oemPage .oemBlock6 .innerBox .dg li h3{
        margin-bottom: 5px;
    }
    .oemPage .oemBlock7 .c-title-section{
        margin-bottom: 40px;
    }
    .oemPage .oemBlock7 .dg .c-product-card .c-product-card__ttl{
        left: calc( 10px / 2);
    }
    .oemPage .oemBlock8 .c-title-section{
        margin-bottom: 40px;
    }
    .oemPage .oemBlock8 .qaBox .iconNum{
        font-size: 12px;
        width: 10%;
    }
    .oemPage .oemBlock8 .qaBox .note{
        font-size: 12px;
        width: 90%;
    }
    .oemPage .oemBlock8 .qBox img{
        width: 10px;
    }
    .oemPage .oemBlock8 .qaWrap{
        margin-bottom: 80px;
    }
    .oemPage .oemBlock4 .longBtn .longBtnInner .arrow{
        right: 10%;
    }
    .oemPage .oemBlock6 .innerBox .dg li .note{
        font-size: 14px;
    }
    .oemPage .oemSlide .swiper-wrapper .swiper-slide .arrow{
        width: 50px;
    }
    .oemPage .oemBlock2 .attentionBox{
        flex-direction: column;
    }
    .oemPage .oemBlock2 .attentionBox .left{
        width: 100%;
        margin-bottom: 20px;
    }
    .oemPage .oemBlock2 .attentionBox .right{
        width: 100%;
        padding-left: 0;
        border-left: none;
    }
}