@charset "UTF-8";
@media screen and (max-width: 600px) {

    /* wrapper */
    #wrapper {
        min-width: 300px;
    }

    /* fv */
    #fv #title {
        position: absolute;
        width: 60%;
        min-width: 200px;
    }

    #fv div {
        height: 100vh;
    }

    #fv div img {
        position: absolute;
        top: 50%;
        left: 50%;
        -webkit-transform: translate(-50%, -50%);
        -moz-transform: translate(-50%, -50%);
        -ms-transform: translate(-50%, -50%);
        -o-transform: translate(-50%, -50%);
        transform: translate(-50%, -50%);
        width: auto;
        height: auto;
        min-height: 100%;
        max-width: 100%;
        object-fit: cover;
        user-drag: none;
        -webkit-user-drag: none;
        -moz-user-select: none;
    }

    /* introduction */
    #introduction {
        width: 95%;
        margin: 6em auto;
    }

    #introduction p {
        font-size: 1em;
    }

    #introduction p:nth-child(2) {
        font-size: 0.9em;
        margin-top: 3em;
    }

    /* feature */
    #feature {
        width: 95%;
        margin: 0 auto;
    }

    #feature .ft_block {
        margin-bottom: 5em;
    }

    #feature .ft_block .title {
        border-top: 1px solid #626262;
        padding: 2em 0 3em;
    }

    #feature .ft_block .title p.en {
        font-size: 0.9em;
    }

    #feature .ft_block .title p.number {
        font-size: 1.3em;
    }

    #feature .ft_block .title p.jp {
        font-size: 0.9em;
    }

    #feature .ft_block .detail {
        display: block;
    }

    #feature .ft_block .detail .slide {
        width: 100%;
        margin-bottom: 3em;
    }

    #feature .ft_block .detail section {
        width: 100%;
        padding: 0 8%;
    }

    #feature .ft_block .detail section h2 {
        font-size: 1.2em;
        margin-bottom: 2em;
    }

    #feature .ft_block .detail section p {
        text-align: justify;
        font-size: 1em;
    }


    /* profile */
    #profile {
        width: 92%;
        margin: 6em auto;
        background-color: #FFF;
        border-radius: 10px;
        display: block;
        padding: 4em 8%;
    }

    #profile h3 {
        width: 100%;
        font-size: 1.2em;
        text-align: center;
    }

    #profile figure {
        width: 160px;
        margin: 4em auto;
    }

    #profile p {
        width: 100%;
        text-align: justify;
    }

    /* contact */
    #contact {
        width: 92%;
        margin: 6em auto;
        padding: 3em 5% 4em;
    }

    #contact h2 {
        font-size: 1.2em;
        padding-bottom: 2em;
        margin-bottom: 2.5em;
    }

    #contact #info {
        display: block;
    }

    #contact #info .left {
        width: 100%;
        padding-right: 0;
    }

    #contact #info .right {
        border-left: none;
        width: 100%;
        padding-left: 0;
    }

    #contact #info dl {
        margin-bottom: 3em;
    }

    #contact #info dl:last-child {
        margin-bottom: 3em;
    }

    #contact #info dl dd:last-child {
        margin-bottom: 0;
    }

    #contact #info dl dt {
        border: 1px solid #626262;
        display: inline-block;
        padding: 0 1em;
        margin-bottom: 1.5em;
    }

    #contact #info dl dd {
        margin-bottom: 1em;
        font-size: 1em;
    }

    #contact #info dl dd.caption {
        font-size: 0.8em;
    }

    #contact #form {
        border-top: 1px dashed #626262;
        padding-top: 3em;
        margin-top: 3em;
    }

    #contact #form h3 {
        font-size: 1.1em;
    }


    /* snow monkey form */
    .snow-monkey-form {
        margin: 4em auto 0;
        width: 100%;
    }

    .smf-form .smf-item .smf-text-control__control {
        border: 1px solid #6B6A6B !important;
        background-color: #FFF;
        color: #6B6A6B;
        font-size: 1em;
        letter-spacing: 0.01em;
        font-family: 'Zen Old Mincho', "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        width: 100%;
        border-radius: 0;
    }

    .smf-form .smf-item .smf-textarea-control__control {
        border: 1px solid #6B6A6B !important;
        background-color: #FFF;
        font-size: 1em;
        color: #6B6A6B;
        letter-spacing: 0.01em;
        font-family: 'Zen Old Mincho', "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
        width: 100%;
        border-radius: 0;
    }

    .smf-form--letter .smf-item {
        margin-bottom: 1em !important;
    }

    .smf-item__description {
        font-size: 0.9em !important;
    }

    .smf-item {
        margin: 0 auto 3em;
        display: block;
    }

    .smf-item.info {
        margin: 0;
    }

    .smf-item__col.smf-item__col--label {
        width: 100%;
        margin-bottom: 1em;
    }

    .smf-item__col.smf-item__col--controls {
        width: 100%;
    }

    .smf-item__label {
        text-align: left;
        font-size: 1em;
    }

    .smf-item__controls {
        text-align: left;
        font-size: 0.9em;
    }

    .smf-select-control {
        border: 1px solid #6B6A6B !important;
        border-radius: 0;
        width: 100%;
    }

    .smf-form .smf-item .smf-select-control__control {
        border: 0;
    }

    .smf-form .smf-item .smf-radio-button-control__control {
        border: 1px solid #6B6A6B !important;
    }

    .smf-item__controls a {
        border-bottom: 1px dashed #6B6A6B;
    }

    .smf-placeholder {
        font-size: 1.1em;
    }

    .smf-action .smf-button-control__control {
        margin-top: 2em;
        background-color: #6B6A6B;
        background-image: none;
        border-radius: 30px;
        padding: 1.35em 0;
        width: 100%;
        color: #F1F1F1;
        border: none !important;
        font-size: 1.1em;
        line-height: 1;
        letter-spacing: 0.01em;
        font-family: 'Zen Old Mincho', "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
    }

}