/* ローディング画面 */
#loading {
  width: 100%;
  height: 100%;
  transition: all 1s;
  background-color: #3BA6B1;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}
.spinner {
  width: 100px;
  height: 100px;
  background-color: #fff;
  border-radius: 100%;
  animation: sk-scaleout 1.0s infinite ease-in-out;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
}
/* ローディングアニメーション */
@keyframes sk-scaleout {
  0% {
    transform: scale(0);
  } 100% {
    transform: scale(1.0);
    opacity: 0;
  }
}

.loaded {
  opacity: 0;
  visibility: hidden;
}



#MqMark {
    display: none
}

@media only screen and (min-width: 751px), print {
    #MqMark {
        font-family:'pc'
    }
}

@media only screen and (max-width: 750px) {
    #MqMark {
        font-family:'sp'
    }
}

.u-dib {
    display: inline-block !important
}

.u-di {
    display: inline !important
}

.u-db {
    display: block !important
}

.u-dfl {
    display: -webkit-box !important;
    display: -ms-flexbox !important;
    display: flex !important
}

.u-dnone,.u-hide {
    display: none !important
}

@media only screen and (min-width: 751px), print {
    .u-pcBlock {
        display:block
    }

    .u-spBlock {
        display: none
    }

    .u-pcBlock-i {
        display: inline-block
    }

    .u-spBlock-i {
        display: none
    }

    .u-pcNone {
        display: none
    }
}

@media only screen and (max-width: 750px) {
    .u-pcBlock {
        display:none
    }

    .u-spBlock {
        display: block
    }

    .u-pcBlock-i {
        display: none
    }

    .u-spBlock-i {
        display: inline-block
    }

    .u-spNone {
        display: none
    }
}



.js-animeWrap.js-animeDelay,.js-animeWrap .js-animeDelay {
    opacity: 0
}

.js-animeWrap.is-animeInit.js-animeDelay,.js-animeWrap.is-animeInit .js-animeDelay {
    -webkit-transition: opacity ease .2s;
    transition: opacity ease .2s
}

.js-animeWrap.is-animeInit.js-animeDelay.-normal,.js-animeWrap.is-animeInit .js-animeDelay.-normal {
    -webkit-transition: ease .4s;
    transition: ease .4s;
    -webkit-transition-property: opacity , -webkit-transform;
    transition-property: opacity , -webkit-transform;
    transition-property: opacity , transform;
    transition-property: opacity , transform , -webkit-transform;
    -webkit-transform: translateY(30px);
    transform: translateY(30px);
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0
}

.js-animeWrap.is-animeInit.js-animeDelay.-normal.-noTranslate,.js-animeWrap.is-animeInit .js-animeDelay.-normal.-noTranslate {
    -webkit-transform: scale(0.95);
    transform: scale(0.95)
}

.js-animeWrap.is-animeInit.js-animeDelay.-fromLeft,.js-animeWrap.is-animeInit.js-animeDelay.-fromRight,.js-animeWrap.is-animeInit .js-animeDelay.-fromLeft,.js-animeWrap.is-animeInit .js-animeDelay.-fromRight {
    -webkit-transition: ease .4s;
    transition: ease .4s;
    -webkit-transition-property: opacity , -webkit-transform;
    transition-property: opacity , -webkit-transform;
    transition-property: opacity , transform;
    transition-property: opacity , transform , -webkit-transform;
    -webkit-transform-origin: 50% 0;
    transform-origin: 50% 0
}

.js-animeWrap.is-animeInit.js-animeDelay.-fromLeft,.js-animeWrap.is-animeInit .js-animeDelay.-fromLeft {
    -webkit-transform: translateX(-30px);
    transform: translateX(-30px)
}

.js-animeWrap.is-animeInit.js-animeDelay.-fromRight,.js-animeWrap.is-animeInit .js-animeDelay.-fromRight {
    -webkit-transform: translateX(30px);
    transform: translateX(30px)
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay {
    -webkit-transition-duration: .6s;
    transition-duration: .6s;
    opacity: 1
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-normal,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-normal {
    -webkit-transition-duration: 1.2s;
    transition-duration: 1.2s;
    -webkit-transform: scale(1) translateY(0px);
    transform: scale(1) translateY(0px)
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-normal.-short,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-normal.-short {
    -webkit-transition-duration: .6s;
    transition-duration: .6s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-fromLeft,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-fromRight,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-fromLeft,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-fromRight {
    -webkit-transition-duration: 1.2s;
    transition-duration: 1.2s;
    -webkit-transform: translateX(0px);
    transform: translateX(0px)
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay0,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay0 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay0,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay0 mask path {
    -webkit-transition-delay: 0s;
    transition-delay: 0s;
    -webkit-animation-delay: 0s;
    animation-delay: 0s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay1,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay1 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay1,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay1 mask path {
    -webkit-transition-delay: .2s;
    transition-delay: .2s;
    -webkit-animation-delay: .2s;
    animation-delay: .2s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay2,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay2 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay2,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay2 mask path {
    -webkit-transition-delay: .4s;
    transition-delay: .4s;
    -webkit-animation-delay: .4s;
    animation-delay: .4s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay3,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay3 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay3,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay3 mask path {
    -webkit-transition-delay: .6s;
    transition-delay: .6s;
    -webkit-animation-delay: .6s;
    animation-delay: .6s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay4,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay4 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay4,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay4 mask path {
    -webkit-transition-delay: .8s;
    transition-delay: .8s;
    -webkit-animation-delay: .8s;
    animation-delay: .8s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay5,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay5 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay5,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay5 mask path {
    -webkit-transition-delay: 1s;
    transition-delay: 1s;
    -webkit-animation-delay: 1s;
    animation-delay: 1s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay6,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay6 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay6,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay6 mask path {
    -webkit-transition-delay: 1.2s;
    transition-delay: 1.2s;
    -webkit-animation-delay: 1.2s;
    animation-delay: 1.2s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay7,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay7 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay7,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay7 mask path {
    -webkit-transition-delay: 1.4s;
    transition-delay: 1.4s;
    -webkit-animation-delay: 1.4s;
    animation-delay: 1.4s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay8,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay8 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay8,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay8 mask path {
    -webkit-transition-delay: 1.6s;
    transition-delay: 1.6s;
    -webkit-animation-delay: 1.6s;
    animation-delay: 1.6s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay9,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay9 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay9,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay9 mask path {
    -webkit-transition-delay: 1.8s;
    transition-delay: 1.8s;
    -webkit-animation-delay: 1.8s;
    animation-delay: 1.8s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay10,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay10 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay10,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay10 mask path {
    -webkit-transition-delay: 2s;
    transition-delay: 2s;
    -webkit-animation-delay: 2s;
    animation-delay: 2s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay11,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay11 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay11,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay11 mask path {
    -webkit-transition-delay: 2.2s;
    transition-delay: 2.2s;
    -webkit-animation-delay: 2.2s;
    animation-delay: 2.2s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay12,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay12 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay12,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay12 mask path {
    -webkit-transition-delay: 2.4s;
    transition-delay: 2.4s;
    -webkit-animation-delay: 2.4s;
    animation-delay: 2.4s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay13,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay13 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay13,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay13 mask path {
    -webkit-transition-delay: 2.6s;
    transition-delay: 2.6s;
    -webkit-animation-delay: 2.6s;
    animation-delay: 2.6s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay14,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay14 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay14,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay14 mask path {
    -webkit-transition-delay: 2.8s;
    transition-delay: 2.8s;
    -webkit-animation-delay: 2.8s;
    animation-delay: 2.8s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay15,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay15 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay15,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay15 mask path {
    -webkit-transition-delay: 3s;
    transition-delay: 3s;
    -webkit-animation-delay: 3s;
    animation-delay: 3s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay16,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay16 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay16,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay16 mask path {
    -webkit-transition-delay: 3.2s;
    transition-delay: 3.2s;
    -webkit-animation-delay: 3.2s;
    animation-delay: 3.2s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay17,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay17 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay17,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay17 mask path {
    -webkit-transition-delay: 3.4s;
    transition-delay: 3.4s;
    -webkit-animation-delay: 3.4s;
    animation-delay: 3.4s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay18,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay18 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay18,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay18 mask path {
    -webkit-transition-delay: 3.6s;
    transition-delay: 3.6s;
    -webkit-animation-delay: 3.6s;
    animation-delay: 3.6s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay19,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay19 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay19,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay19 mask path {
    -webkit-transition-delay: 3.8s;
    transition-delay: 3.8s;
    -webkit-animation-delay: 3.8s;
    animation-delay: 3.8s
}

.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay20,.js-animeWrap.is-animeInit.is-animeActive.js-animeDelay.-delay20 mask path,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay20,.js-animeWrap.is-animeInit.is-animeActive .js-animeDelay.-delay20 mask path {
    -webkit-transition-delay: 4s;
    transition-delay: 4s;
    -webkit-animation-delay: 4s;
    animation-delay: 4s
}

@media only screen and (min-width: 751px) and (max-width: 1220px) {
    .breadcrumb {
        margin-bottom:20px;
        padding: 0 3vw
    }
}

.l-inner {
    position: relative;
    margin: 0 auto
}

@media only screen and (min-width: 751px), print {
    .l-inner {
        max-width:1360px;
        padding: 0;
    }
}

@media only screen and (max-width: 750px) {
    .l-inner {
        padding:0 5.33333vw
    }
}



/* -------------------------------------------------
  MAINVISUAL
------------------------------------------------- */
.p-mainvisual {
    position: relative;
    color: #fff;
    background: #000
}

.p-mainvisual__bgWrap {
    position: relative
}

.p-mainvisual__bg {
    position: absolute;
    top: 0;
    left: 0;
    overflow: hidden;
    width: 100%;
    height: 100%;
    -webkit-transition: opacity ease 1s;
    transition: opacity ease 1s;
    opacity: 0;
    background: no-repeat center center;
    -webkit-background-size: cover;
    background-size: cover
}

.p-mainvisual__bg:after {
    position: absolute;
    display: block;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: 0 0;
    -webkit-background-size: 100% auto;
    background-size: 100% auto;
    content: '';
    left: 0%;
    top: 0%;
    opacity: 0;
    background: #000
}

.p-mainvisual__bg.is-movieActive {
    opacity: 1
}

.p-mainvisual__bg.is-noVideo {
    opacity: 1
}

.p-mainvisual__bg.is-noVideo video {
    display: none
}

.p-mainvisual__bg video {
    position: absolute;
    top: 50%;
    left: 50%;
    width: 100%;
    height: auto;
    -webkit-transform: scale(1.005) translate(-50%, -50%);
    transform: scale(1.005) translate(-50%, -50%);
    -webkit-transform-origin: 50% 50%;
    transform-origin: 50% 50%;
    pointer-events: none;
    background-color: #000
}

.is-IE .p-mainvisual__bg video {
    -webkit-transform: translate(-50%, -50%);
    transform: translate(-50%, -50%)
}

.p-mainvisual__bg video.h100 {
    width: auto;
    height: 100%
}

.p-mainvisual__inner {
    position: relative;
    z-index: 1
}

.p-mainvisual__title {
    position: absolute;
    right: 0;
    bottom: 0
}

.p-mainvisual__lead {
    text-align: center;
    color: #fff;
    background-color: #008500
}

@media only screen and (min-width: 751px), print {
    .p-mainvisual__bg.is-noVideo {
        background-image:url(../../../img/special/agu-tf2021/kv_bg01.jpg)
    }

    .p-mainvisual__inner {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        max-width: 100vw;
        min-height: 56.25vw;
    }

    .p-mainvisual__inner _:-ms-fullscreen,:root .p-mainvisual__inner {
        height: 640px
    }

    .p-mainvisual__logo {
        width: 480px
    }

    .p-mainvisual__title {
        width: 477px;
        margin-right: 30px;
        margin-bottom: 90px
    }

    .p-mainvisual__lead {
        font-size: 18px;
        padding: 20px 20px
    }
}

@media only screen and (min-width: 751px) and (max-width: 1220px) and (min-width: 751px) and (max-width: 1220px), print {
    .p-mainvisual__inner {
        max-width: 100vw;
        min-height: 56.25vw;
    }
}

@media only screen and (min-width: 751px) and (max-width: 1220px) and (min-width: 751px) and (max-width: 1220px), print {
    .p-mainvisual__logo {
        width:39.34426vw
    }
}

@media only screen and (min-width: 751px) and (max-width: 1220px) and (min-width: 751px) and (max-width: 1220px), print {
    .p-mainvisual__title {
        width:39.34426vw;
        margin-right: 2.45902vw;
        margin-bottom: 7.37705vw
    }
}

@media only screen and (min-width: 751px) and (max-width: 1220px) and (min-width: 751px) and (max-width: 1220px), print {
    .p-mainvisual__lead {
        font-size:1.47541vw;
        padding: 1.63934vw 1.63934vw
    }
}

@media only screen and (max-width: 750px) {
    .p-mainvisual__bg.is-noVideo {
        background-image:url(../../../img/special/agu-tf2021/kv_bg01-sp.jpg)
    }

    .p-mainvisual__inner {
        min-height: 126.66667vw
    }

    .p-mainvisual__logo {
        width: 54.66667vw;
        padding-top: 10.4vw
    }

    .p-mainvisual__title {
        width: 57.33333vw;
        margin-right: 5.33333vw;
        margin-bottom: 17.33333vw
    }

    .p-mainvisual__lead {
        font-size: 3.46667vw;
        padding: 4vw 5.33333vw
    }
}



/* -------------------------------------------------
  CONCEPT
------------------------------------------------- */
.p-leadSect__main {
    position: relative
}

.p-leadSect__main:after {
    opacity: .5
}

.p-leadSect__title {
    position: absolute;
    z-index: 2;
    top: 0;
    left: 0;
    width: 169%;
    height: 100%;
    white-space: nowrap;
    pointer-events: none;
    opacity: 1;
    color: #008500
}

.p-leadSect__title span {
    position: absolute;
    z-index: 2
}

.p-leadSect__title span:nth-child(2) {
    letter-spacing: .0em
}

.p-leadSect__item {
    position: relative;
    z-index: 0
}

.p-leadSect__photo {
    position: relative;
    z-index: 0
}

.p-leadSect__photo img {
    width: 100%
}

.p-leadSect__lead {
    font-weight: bold;
    line-height: 1;
    position: absolute;
    white-space: nowrap
}

.p-leadSect__lead>span,.p-leadSect__lead>strong {
    display: inline-block;
    background-color: #fff
}

.p-leadSect__item.-item2 {
    z-index: 1
}

.p-leadSect__twitter {
    line-height: 1.8
}

.p-leadSect__twitter a {
    display: inline-block
}

.p-leadSect__twitter img {
    vertical-align: middle
}

@media only screen and (min-width: 751px), print {
    .p-leadSect {
        padding: 0;
    }

    .p-leadSect__banner {
        text-align: right
    }

    .p-leadSect__banner img {
        width: 700px;
        -webkit-box-shadow: 16px 20px 40px rgba(0,0,0,0.2);
        box-shadow: 16px 20px 40px rgba(0,0,0,0.2)
    }

    .p-leadSect__main {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        margin-top: 90px
    }



    .p-leadSect__main:after {
        top: 50%;
        left: 0;
        width: 104%;
        height: 2px;
        -webkit-transform: translate(-10%, 20px) rotate(-25deg);
        transform: translate(-10%, 20px) rotate(-25deg)
    }

    .p-leadSect__block {
        position: relative;
        z-index: 1;
        width: 50%
    }

    .p-leadSect__block.-left {
        padding-right: 6.15%
    }

    .p-leadSect__block.-right {
        padding-top: 25%
    }

}

@media only screen and (min-width: 751px), print {
    .p-leadSect__title span:nth-child(1) {
        top:0;
        left: 100%
    }

    .p-leadSect__title span:nth-child(2) {
        right: 0;
        bottom: 0;
        margin: 0 14% -10% 0
    }

    .p-leadSect__lead>span,.p-leadSect__lead>strong {
        margin-bottom: 14px;
        padding: 6px 12px 8px 12px
    }

    .p-leadSect__item.-item2 {
        width: 351px;
        margin-left: -30px
    }

    .p-leadSect__item.-item1 .p-leadSect__lead {
		font-size: 1.6vw;
		line-height: 0.6;
        top: 0;
        left: 0;
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead1 {
        font-size: 26px;
        top: 0;
        left: 100%;
        margin: -1em 0 0 -2em
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead1 span {
        margin-bottom: 10px
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead2 {
        font-size: 22px;
        top: 0;
        left: 100%;
        margin: 60% 0 0 -1.5em
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead2 span {
        margin-bottom: 10px
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead2 strong {
        font-size: 30px;
        margin-top: 25px
    }

    .p-leadSect__twitter {
        font-size: 18px;
        max-width: 1000px;
        margin: 0 auto;
        padding: 30px 0
    }

    .p-leadSect__twitter img {
        width: 3.5em;
        margin-top: -.1em;
        margin-left: 1.5em
    }
}

@media only screen and (min-width: 751px) and (max-width: 1220px), print {
    .p-leadSect {
        padding: 0;
    }

    .p-leadSect__banner img {
        width: 80%;
        max-width: 700px
    }



    .p-leadSect__main:after {
        width: 90%;
        height: .16393vw;
        -webkit-transform: translate(0%, 1.63934vw) rotate(-28deg);
        transform: translate(0%, 1.63934vw) rotate(-28deg)
    }

    .p-leadSect__lead>span,.p-leadSect__lead>strong {
        margin-bottom: 1.14754vw;
        padding: .4918vw .98361vw .65574vw .98361vw
    }

    .p-leadSect__item.-item2 {
        width: 28.77049vw;
        margin-left: -2.45902vw
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead1 {
        font-size: 2.13115vw
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead1 span {
        margin-bottom: .81967vw
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead2 {
        font-size: 1.80328vw
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead2 span {
        margin-bottom: .81967vw
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead2 strong {
        font-size: 2.45902vw;
        margin-top: 2.04918vw
    }

    .p-leadSect__twitter {
        font-size: 1.47541vw;
        max-width: 81.96721vw;
        padding: 2.45902vw 0
    }
}

@media only screen and (max-width: 750px) {
    .p-leadSect {
        padding:12vw 0 16vw
    }

    .p-leadSect__banner img {
        width: 100%;
        -webkit-box-shadow: 2.13333vw 2.66667vw 5.33333vw rgba(0,0,0,0.2);
        box-shadow: 2.13333vw 2.66667vw 5.33333vw rgba(0,0,0,0.2)
    }

    .p-leadSect__main {
        position: relative;
        margin-top: 13.33333vw;
        padding-top: 21.33333vw;
        padding-bottom: 21.33333vw
    }



    .p-leadSect__main:after {
        top: 10.66667vw;
        left: 50%;
        width: 1px;
        height: calc(100% - 40vw);
        margin-left: -2.66667vw;
        -webkit-transform: rotate(11deg);
        transform: rotate(11deg)
    }

    .p-leadSect__block {
        position: static;
        z-index: 3
    }

    .p-leadSect__block.-left {
        padding: 12% 8.5% 0
    }

    .p-leadSect__block.-right {
        padding: 16% 5% 0
    }

    .p-leadSect__title span:nth-child(1) {
        top: 0;
        right: 0;
        margin: -.5em -.2em 0 0
    }

    .p-leadSect__title span:nth-child(2) {
        bottom: 0;
        left: 0;
        margin: 0 0 .5em -.3em
    }

    .p-leadSect__lead>span,.p-leadSect__lead>strong {
        margin-bottom: 1.33333vw;
        padding: 1.06667vw 1.33333vw 1.06667vw 1.6vw
    }

    .p-leadSect__item.-item2 {
        width: 64%
    }

    .p-leadSect__item.-item1 .p-leadSect__lead {
        font-size: 4.53333vw;
        top: 0;
        left: 0;
        margin: -2.5em 0 0 -1.5em
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead1 {
        font-size: 3.46667vw;
        top: 0;
        left: 100%;
        margin: -.5em 0 0 -2.5em
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead2 {
        font-size: 3.46667vw;
        top: 0;
        left: 100%;
        margin: 60% -0 0 -1.5em
    }

    .p-leadSect__item.-item2 .p-leadSect__lead.-lead2 strong {
        font-size: 4.8vw;
        margin-top: 4vw
    }

    .p-leadSect__twitter {
        font-size: 3.73333vw;
        position: relative;
        padding: 12vw 4em 12vw 1.33333vw
    }

    .p-leadSect__twitter a {
        display: block
    }

    .p-leadSect__twitter img {
        position: absolute;
        top: 50%;
        right: 0;
        width: 4em;
        margin-right: 2.66667vw;
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%)
    }
}



/* -------------------------------------------------
  PRODUCT
------------------------------------------------- */
.p-productSect__lead,
.p-gallerySect__lead,
.p-linkSect__lead {
    line-height: 1.6;
    text-align: center
}

@media only screen and (max-width: 750px) {
    .c-borderTit01{
        font-size: 9vw
    }

    .p-productSect,
    .p-gallerySect,
    .p-linkSect {
        padding-top:14.66667vw
    }

    .p-productSect__main,
    .p-gallerySect__main,
    .p-linkSect__main {
        margin-top: 5.33333vw
    }

.p-productSect__lead,
.p-gallerySect__lead,
.p-linkSect__lead {
    font-size: 3.6vw;
    font-weight: bolder;
    letter-spacing: 0.18rem;
    margin-top: -4.8vw;
    }
	.p-gallerySect__lead {
		margin-bottom: -6vw;
	}

}

@media only screen and (min-width: 751px), print {
    .c-borderTit01{
        font-size: 7.2vw
    }

    .p-productSect,
    .p-gallerySect,
    .p-linkSect {
        padding-top:105px
    }

    .p-productSect__main,
    .p-gallerySect__main,
    .p-linkSect__main {
        margin-top: 25px
    }

    .p-productSect__lead,
    .p-gallerySect__lead,
    .p-linkSect__lead {
		font-size: 1.62vw;
		font-weight: bolder;
		letter-spacing: 0.18rem;
		margin-top: -3.9%;
    }

}

@media only screen and (min-width: 1361px),
print{
    .c-borderTit01{
        font-size: 98px
    }
    .p-productSect__lead,
    .p-gallerySect__lead,
    .p-linkSect__lead {
		font-size: 22px;
    }
}



/* -------------------------------------------------
  GALLERY
------------------------------------------------- */
.p-gallerySect{
    padding-top: 160px;
}
@media only screen and (max-width: 750px) {
    .p-gallerySect{
        padding-top: 14vw;
    }
}

.p-gallerySect .gallery_ttl{
    margin-right: 7%;
    margin-bottom: 50px;
    font-size: clamp(28px, 3.52941vw, 50px);
    font-weight: bold;
    color: #3BA6B1;
    letter-spacing: 0.1em;
    text-align: right;
    font-family: Montserrat, sans-serif !important;
    position: relative;
    z-index: 2;
}
.p-gallerySect .gallery_ttl .font_small{
    display: block;
    font-size: clamp(14px, 1.02941vw, 16px);
    color: #000;
    letter-spacing: 0.1em;
}
@media only screen and (max-width: 750px) {
    .p-gallerySect .gallery_ttl{
        text-align: left;
    }
}


.p-gallerySect .p-gallerySect__inner{
      /*width: min(92.64706vw, 1800px);*/
      /*width: 1260px;*/
      width:  min(92.64706vw, 1800px);
      margin: 0 0 0 auto;
      overflow: hidden;
}

.p-gallerySect .belt_sheet{
    display: -webkit-box;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-around;
}
.p-gallerySect .belt_sheet img{
    width: 100%;
}

@media only screen and (max-width: 750px) {
    .p-gallerySect .belt_box{
        width: 100.8vw;
    }
    .p-gallerySect .belt_box img{
        max-width: 100%;
        height: auto;
    }
}

.p-gallerySect .belt_sheet.sheet_type01 li:first-of-type,
.p-gallerySect .belt_sheet.sheet_type01 li:nth-child(2){
    width: calc(100% / 2 - 10px);
    margin-bottom: 10px;
}
.p-gallerySect .belt_sheet.sheet_type01 li:nth-child(3){
    width: 17.8%;
    margin: 0 5px;
}
.p-gallerySect .belt_sheet.sheet_type01 li:nth-child(4),
.p-gallerySect .belt_sheet.sheet_type01 li:nth-child(5){
    width: 39.8%;
    margin: 0 5px;
}

@media only screen and (max-width: 1350px) {
    .p-gallerySect .belt_sheet.sheet_type01 li:first-of-type,
    .p-gallerySect .belt_sheet.sheet_type01 li:nth-child(2){
        width: calc(100% / 2 - 7px);
        margin-bottom: 7px;
    }
    .p-gallerySect .belt_sheet.sheet_type01 li:nth-child(3){
        width: 17.85%;
        margin: 0;
    }
    .p-gallerySect .belt_sheet.sheet_type01 li:nth-child(4),
    .p-gallerySect .belt_sheet.sheet_type01 li:nth-child(5){
        width: 40.05%;
        margin: 0;
    }
}
@media only screen and (max-width: 750px) {
    .p-gallerySect .belt_sheet.sheet_type01 li:first-of-type,
    .p-gallerySect .belt_sheet.sheet_type01 li:nth-child(2){
        width: calc(100% / 2 - 4px);
        margin-bottom: 4px;
    }
}


/* gallery用slick */

/*.p-gallerySect .slick-dotted.slick-slider{
    width: 1260px;
    margin: 0 0 0 auto;
}*/

.p-gallerySect .slick-list{
    overflow: visible;
}
/*
@media only screen and (min-width: 751px) and (max-width: 1630px) {
    .p-gallerySect .slick-list{
        overflow: hidden;
    }
}
*/


.p-gallerySect .slider-dots{
    width: 100%;
    margin: 0;
    padding: 0 0 12px 0;
    text-align: center;
    list-style: none;
}
.p-gallerySect .slider-dots li {
    display: inline-block;

    width: 10%;

}
.p-gallerySect .slider-dots button {
    position: relative;
    width: 100%;
    height: 1px;
    border: 0;
    background-color: #3BA6B1;
    font-size: 0;
}
.p-gallerySect .slider-dots button:after {
    position: absolute;
    top: -2px;
    left: 0;
    content: '';
    display: block;
    width: 0%;
    height: 5px;
}
.p-gallerySect .slider-dots .slick-active button:after {
    background-color: #3BA6B1;
    animation: progress 5.5s linear forwards;
}
@keyframes progress {
    from {
        width: 0%;
    }
    to {
        width: 100%;
    }
}
