@charset "uft-8";

html {
    overflow-x: hidden;
}

body {
    /* overflow: hidden; */
    overflow-x: hidden;
    background-color: #FCF7E0;

}

/*  
.hidden-scroll {
    height: 100dvh;
    overflow: hidden;
    animation: enable-scroll 3.8s forwards;
}

@keyframes enable-scroll {
    to {
        overflow: auto;
    }
}
*/

#Header {
    width: 100%;
    height: auto;
    background-color: rgba(252, 247, 224, 0.4);
    opacity: 0;
    animation-name: fadein;
    animation-duration: 0.5s;
    animation-delay: 3.8s;
    animation-fill-mode: forwards;
    position: fixed;
    z-index: 9999;

}

@keyframes fadein {
    0% {
        opacity: 0;
        transform: translateY(-20px);
    }

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

.Header_wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 30px 3% 30px 3%;
}

#Header h1 {
    width: 249px;
}


.pc_nav {
    padding: 0 34px;
    width: 502px;
    height: 76px;
    background-color: #FFFCEE;
    border-radius: 38px;
}


.pc_nav ul {
    list-style: none;
    display: flex;
    justify-content: center;
}

.pc_nav li {

    padding-top: 28px;
}

.pc_nav a {
    padding: 0 30px;
    position: relative;
    /* 縦並び */
    display: flex;
    flex-direction: column;
    align-items: center;
    text-decoration: none;
    color: inherit;
    line-height: 1.5em;
    /* 高さをline-heightと一緒に */
    height: 1.5em;
    font-size: 15px;
    font-weight: 800;
    color: #72716E;
    /* はみ出たところを隠す */
    overflow: hidden;
}

/* ホバー時の変化をゆっくりに */
span {
    transition: 0.5s;
}

.pc_nav a span:nth-child(1) {
    clip-path: inset(0 0 0 0);
}

.pc_nav a span:nth-child(2) {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, 50%);
    white-space: nowrap;
}

/* ホバーした時に、テキストを上に1行分ずつずらす */
a:hover span:nth-child(1) {
    transform: translateY(-100%);
}

.pc_nav a:hover span:nth-child(2) {
    transform: translate(-50%, -50%);
}

/* afterで丸を作成 */
.pc_nav li::after {
    content: "";
    display: block;
    background: #05c87a;
    width: 0.3em;
    height: 0.3em;
    border-radius: 50%;
    /* 初期状態は透明に */
    opacity: 0;
    /* ホバー時ゆっくり表示されるように */
    transition: 0.5s;
}

/* 丸とリンクを縦並びで左右中央揃え */
.pc_nav li {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 5px;
}

/* aタグにホバーした時、親要素のliタグのafterの見た目を変更 */
.pc_nav li:has(a:hover)::after {
    opacity: 1;
}

#top {
    margin-top: 108px;
    text-align: center;

}

.main_visual_wrap {
    position: relative;
    padding: 14% 3%;
    display: flex;
    justify-content: center;
    align-items: center;

}



.main_title_inner {
    position: relative;
    max-width: 848px;
    width: 100%;
    height: 100%;
    aspect-ratio: 848 / 285;
}

.main_title_off img,
.main_title_on img {
    position: absolute;
    width: 100%;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    z-index: 1;
}

.main_title_off img {
    animation-name: title_none;
    animation-duration: 0.5s;
    animation-delay: 1.4s;
    animation-fill-mode: forwards;
}

@keyframes title_none {
    0% {
        opacity: 1;
    }

    20% {
        transition: 0.5s;
    }

    100% {
        opacity: 0;
    }
}

.swichOn_inner {
    position: absolute;
    width: 32%;
    top: 0;
    right: 0;
    animation-name: poyooon;
    animation-duration: 0.5s;
    animation-delay: 2.6s;
    animation-iteration-count: 2;
    animation-fill-mode: forwards;
}

@keyframes poyooon {
    0% {
        transform: scale(1.0, 1.0) translate(0%, 0%);
    }

    10% {
        transform: scale(1.1, 0.9) translate(0%, 5%);
    }

    40% {
        transform: scale(1.2, 0.8) translate(0%, 15%);
    }

    50% {
        transform: scale(1.0, 1.0) translate(0%, 0%);
    }

    60% {
        transform: scale(0.9, 1.2) translate(0%, -100%);
    }

    75% {
        transform: scale(0.9, 1.2) translate(0%, -20%);
    }

    85% {
        transform: scale(1.2, 0.8) translate(0%, 15%);
    }

    100% {
        transform: scale(1.0, 1.0) translate(0%, 0%);
    }
}

.toggleButton_on {
    position: relative;
    display: block;
    max-width: 276px;
    width: 100%;
    height: 100%;
    aspect-ratio: 275 / 119;
    border-radius: 60px;
    background-color: #fc6349;
    animation-name: color;
    animation-duration: 0.5s;
    animation-delay: 1.4s;
    animation-fill-mode: forwards;
}

@keyframes color {
    0% {
        background-color: #05c87a
    }

    100% {
        background-color: #05c87a
    }
}

.checkbox {
    position: absolute;
    top: 4%;
    left: 2%;
    width: 40%;
    aspect-ratio: 1;
    border-radius: 50%;
    background-color: #ffd63a;
    animation-name: slide;
    animation-duration: 0.7s;
    animation-delay: 0.7s;
    animation-fill-mode: forwards;
    z-index: 2;
}

@keyframes slide {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(142%);
    }
}

.swichOn_face {
    position: absolute;
    top: 50%;
    left: 20%;
    width: 14%;
    opacity: 0;
    transform: translate(-50%, -50%);
    animation-name: onface;
    animation-duration: 0.5s;
    animation-delay: 1.4s;
    animation-fill-mode: forwards;
}

@keyframes onface {
    0% {
        opacity: 1;
    }

    100% {
        opacity: 1;
    }
}

.swichOff_face {
    position: absolute;
    top: 50%;
    left: 80%;
    width: 14%;
    transform: translate(-50%, -50%);
}

.loop_text {
    align-items: center;
    background: #ffd63a;
    display: flex;
    height: 75px;

    overflow: hidden;
    width: 100%;
    white-space: nowrap;
    margin-top: 100px;
    z-index: 1;
    opacity: 0;
    animation-name: loop_textColor;
    /*animation-duration: 0.5s;*/
    animation-delay: 3.8s;
    animation-fill-mode: forwards;
}

@keyframes loop_textColor {
    0% {
        opacity: 0;
    }

    20% {
        transition: 0.5s;
    }

    100% {
        opacity: 1;
    }
}

.loop_text ul {
    transform: translateX(100%);
    margin: 0;
    padding: 0;
    animation-name: flowing;
    animation-delay: 3.8s;
    animation: flowing 50s linear infinite;
}

.loop_text ul li {
    display: inline-block;
    font-size: 30px;
    font-weight: 800;
    color: #FCF7E0;
    padding-right: 10px;
    line-height: 1.5;
}

@keyframes flowing {
    0% {
        transform: translateX(0);
    }

    100% {
        transform: translateX(-100%);
    }
}

/*ここからコンセプト*/
#concept {
    position: relative;
    text-align: center;
}

.concept_text {
    padding-top: 248px;
    padding-bottom: 143px;
    font-weight: 800;
}

.catch_1 {
    padding-bottom: 45px;
    font-size: 40px;
    line-height: 1.75;
    color: #ffd63a;
    letter-spacing: 0.1em;

}

.font_style {
    font-size: 125%;
    color: #05c87a;
}

.catch_2 {
    font-size: 22px;
    line-height: 2;
    color: #72716E;
    letter-spacing: 0.1em;
}

/*コンセプトの円のオブジェクト*/

.fadeIn_left {
    position: absolute;
    width: 300px;
    height: 300px;
    top: 4%;
    left: 2%;
    opacity: 0;
    transform: translate(-10%, 0);
    transition: 2s;
}

.fadeIn_left.is-show {
    transform: translate(0, 0);
    opacity: 1;
}

.fadeIn_right {
    position: absolute;
    width: 284px;
    height: 284px;
    top: 65%;
    right: 5%;
    opacity: 0;
    transform: translate(10%, 0);
    transition: 2s;
}

.fadeIn_right.is-show {
    transform: translate(0, 0);
    opacity: 1;
}

.GREEN_Box {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: transparent;
    border: 25px solid #05c87a;
    animation: 7s linear infinite rotation1;
}

.YELLOW_cicle1 {
    position: absolute;
    display: block;
    max-width: 72px;
    max-height: 72px;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #FFD63A;
}

@keyframes rotation1 {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(360deg);
    }
}

.RED_Box {
    display: block;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    top: 65%;
    right: 5%;
    background: transparent;
    border: 23px solid #fc6349;
    animation: 6s linear infinite rotation2;
}

@keyframes rotation2 {
    0% {
        transform: rotate(0);
    }

    100% {
        transform: rotate(-360deg);
    }
}

.YELLOW_cicle2 {
    position: absolute;
    display: block;
    max-width: 72px;
    max-height: 72px;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    background: #FFD63A;
}


/*ここからスキル＆ワークス*/

#skill_works {
    margin: 0 auto;
    max-width: 1366px;
    width: 100%;
    height: 2102px;
    background-color: #05c87a;
    border-top-left-radius: 662px 518px;
    border-top-right-radius: 662px 518px;
    border-bottom-left-radius: 662px 518px;
    border-bottom-right-radius: 662px 518px;
}


.skill_title h2 {
    padding-top: 260px;
    padding-bottom: 10px;
    margin: 0 auto;
    width: 204px;
}

.skill_title p {
    padding-bottom: 55px;
    text-align: center;
    font-size: 23px;
    color: #FFFCEE;
}

.skill_inner {
    margin: 0 auto;
    max-width: 970px;
    display: flex;
    justify-content: space-between;
}

.skill_inner h3 {
    padding-top: 20%;
    padding-bottom: 4px;
    font-size: 26px;
    color: #72716E;
    letter-spacing: 0.1em;
}

.text_jp {
    font-size: 14px;
    color: #72716E;
    letter-spacing: 0.15em;
}

.skill_inner p {
    padding: 0 15%;
    font-size: 16px;
    line-height: 1.75;
}

.skill_design {
    margin-right: 55px;
    text-align: center;
    width: 436px;
    height: 667px;
    background-color: #FFFCEE;
    border-radius: 218px;
}

.skill_text {
    text-align: left;
}

.skill_inner img {
    padding: 6% 0;
    width: 154px;
}

.slill_tool {
    display: flex;
    justify-content: center;
}

.slill_tool ul {
    padding-top: 9%;
    max-width: 232px;
    width: 100%;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.slill_tool ul li {
    font-size: 14px;
    width: 108px;
    height: 25px;
    line-height: 25px;
    border-radius: 12px;
    border: 1px solid #4C4B46;
}

.skill_coding {
    text-align: center;
    width: 436px;
    height: 667px;
    background-color: #FFFCEE;
    border-radius: 218px;
}

.skill_coding ul {
    padding-top: 9%;

}


#works h2 {
    padding-top: 117px;
    padding-bottom: 10px;
    width: 293px;
    margin: 0 auto;
}

#works p {
    padding-bottom: 86px;
    text-align: center;
    font-size: 23px;
    font-size: 23px;
    color: #FFFCEE;
}



.works_btn {
    position: relative;
    margin: 0 auto;
    margin-top: 40px;
    width: 174px;
    height: 44px;
    background-color: #fc6349;
    border-radius: 32px;
    cursor: pointer;
    border: 3px solid transparent;
}

.works_btn p {
    padding-top: 15px;
    padding-left: 8px;
    text-align: center;
    font-size: 16px;
    font-weight: 800;
    letter-spacing: 0.1em;
    color: #FFFCEE;
}

.check_btn {
    position: absolute;
    top: 2px;
    left: 1px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #ffd63a;
    cursor: pointer;
    transition: 0.4s;
}

.works_btn:hover .check_btn {
    transform: translateX(130px);
}

.works_btn:hover {
    background-color: #05c87a;
    border-color: #ffd63a;
    border-radius: 25px;
}


#about {
    margin: 0 auto;
    padding: 0 3%;
    padding-bottom: 194px;
}

.about_title h2 {
    padding-top: 180px;
    padding-bottom: 10px;
    margin: 0 auto;
    width: 280px;
}

.about_title p {
    padding-bottom: 80px;
    text-align: center;
    font-size: 23px;
    color: #fc6349;
}

.about_btn {
    position: relative;
    margin: 0 auto;
    max-width: 940px;
    width: 100%;
    height: 100%;
    background-color: #fc6349;
    border-radius: 246px;
}

.about_check_btn {
    position: relative;
    max-width: 470px;
    width: 50%;
    height: 100%;
    aspect-ratio: 1 / 1;
    transition: 0.8s;
    width: 50%;
    z-index: 100;
}

.about_btn img {
    padding-top: 2%;
    padding-left: 2%;
    width: 96%;
}

.click_text {
    position: absolute;
    top: 72%;
    left: 17%;
    max-width: 274px;
    width: 100%;
}

.click_text img {
    width: 100%;
    cursor: pointer;
    animation-name: poyopoyo;
    animation-timing-function: ease-in-out;
    animation-iteration-count: infinite;
    animation-direction: alternate;
    animation-duration: 1.5s;
}

@keyframes poyopoyo {

    0%,
    40%,
    60%,
    80% {
        transform: scale(1.0);
    }

    50%,
    70% {
        transform: scale(0.95);
    }
}

.about_btn_inner {
    display: flex;
    align-items: center;
}

.about_text_box {
    padding: 0 8%;
    width: 50%;
    box-sizing: border-box;
}

.about_text1 {
    padding-bottom: 22px;
    font-size: 35px;
    font-weight: 800;
    color: #FFFCEE;
}


.about_text2 {
    max-width: 486px;
    font-size: 18px;
    color: #FFFCEE;
    line-height: 1.94;
}

.about_btn:hover .about_check_btn {
    transform: translateX(100%);
}

.about_btn:hover {
    background-color: #05c87a;
    border-radius: 246px;
}

.about_more {
    position: absolute;
    display: flex;
    justify-content: center;
    align-items: center;
    max-width: 470px;
    width: 50%;
    height: 100%;
    aspect-ratio: 1 / 1;
    width: 50%;
    padding-bottom: 22px;
    font-size: 35px;
    font-weight: 800;
    color: #FFFCEE;
    letter-spacing: 0.1em;
    z-index: 1;
    opacity: 0;
    transition: 0.5s;
}

.about_btn:hover .about_more {
    opacity: 1;
}


/*ここからコンタクトページ*/
#contact {
    padding: 0 3% 72px 3%;
}

.contact_wrap {
    margin: 0 auto;
    max-width: 862px;
    height: 1298px;
    background-color: #FFFCEE;
    border: 3px solid #ffd63a;
    border-radius: 100px;
}

#contact h2 {
    padding-top: 116px;
    padding-bottom: 10px;
    margin: 0 auto;
    width: 383px;
}

.contact_title p {
    padding-bottom: 34px;
    text-align: center;
    font-size: 23px;
    color: #05c87a;
}

.contact_text {
    padding-bottom: 64px;
    text-align: center;
    font-size: 16px;
    color: #4C4B46;
    line-height: 1.87;

}

.c-form {
    max-width: 684px;
    margin: 0 auto;
}

.c-form__item {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-evenly;
    margin-bottom: 40px;
}

.c-form__label,
.c-form__input {
    padding: 10px;
}

.c-form__label {
    width: 90%;
}

.c-form__input {
    padding-left: 18px;
    width: 90%;
    font-size: 16px;
    background-color: #F5F5EB;
    border-radius: 32px;
    border: none;
    font-family: "heisei-maru-gothic-std", sans-serif;
}

.c-form__input:focus-visible {
    outline: #ffd63a auto 1px;
}

.c-form__required {
    width: 38px;
    height: 16px;
    font-size: 12px;
    color: #FFFCEE;
    background-color: #fc6349;
    border-radius: 8px;
    padding: 3px 7px 3px 7px;
    margin: 0 0 0 18px;
}

textarea.c-form__input {
    height: 260px;
}

.c-form__submit {
    text-align: center;
    position: relative;
    margin: 0 auto;
    margin-top: 70px;
    width: 173px;
    height: 50px;
}


.c-form__submit button {
    width: 100%;
    height: 100%;
    background-color: #fc6349;
    border-radius: 32px;
    border: none;
    border: 3px solid transparent;
    cursor: pointer;
    font-size: 16px;
    letter-spacing: 0.1em;
    color: #FFFCEE;
    font-weight: 800;
    font-family: "heisei-maru-gothic-std", sans-serif;
}

.c-form__submit button:hover {
    background-color: #05c87a;
    border: 3px solid #ffd63a;
    border-radius: 25px;
}

.c-form__submit:hover .send_check_btn {
    transform: translateX(124px);
}


.send_check_btn {
    position: absolute;
    top: 5px;
    left: 4px;
    width: 40px;
    height: 40px;
    border-radius: 50%;
    background-color: #ffd63a;
    cursor: pointer;
    transition: 0.4s;
}

#Footer {
    max-width: 100%;
    height: 150px;
    background-color: #ffd63a;
}

#Footer h1 {
    width: 249px;
    height: 32px;
}

#Footer p {
    padding-top: 24px;
    padding-left: 3%;
    font-size: 14px;
    color: #FFFCEE;
}

.footer-wrap {
    display: flex;
    justify-content: space-between;
    align-items: center;
    padding: 58px 3% 0 3%;
}

.footer-list ul {

    display: flex;
    justify-content: space-between;
    width: 462px;
}

.footer-list ul li {
    display: flex;
    font-size: 16px;
    font-weight: 800;
    color: #FFFCEE;
}

.sp_nav,
.sp_btn {
    display: none;
}

@media screen and (max-width: 1100px) {
    .Header_wrap {
        padding-left: 20px;
        padding-right: 20px;
    }

    .logo {
        z-index: 3;
    }

    .pc_nav {
        display: none;
    }

    .sp_btn {
        display: block;
        width: 52px;
        height: 52px;
        border-radius: 50%;
        background-color: #FFFCEE;
        border: 3px solid #FFD63A;
        cursor: pointer;
        position: absolute;
        top: 18px;
        right: 18px;
        z-index: 3;
    }

    .sp_btn span {
        display: block;
        width: 20px;
        height: 3px;
        background: #72716E;
        border-radius: 2px;
        /*位置の調整*/
        position: relative;
        top: 45%;
        left: 50%;
        transition: 0.3s;
        transform: translateX(-50%);
    }

    .sp_btn span::before,
    .sp_btn span::after {
        content: "";
        display: block;
        width: 20px;
        height: 3px;
        background: #72716E;
        border-radius: 2px;
        /*位置の調整*/
        position: absolute;
        /*重なり具合の調整*/
        z-index: 3;
        transition: 0.3s;
    }

    .sp_btn span::before {
        bottom: 8px;
    }

    .sp_btn span::after {
        top: 8px;
    }

    /*バツ印*/
    .sp_btn.open span {
        background: transparent;
    }

    .sp_btn.open span::before {
        bottom: 0;
        transform: rotate(45deg);
    }

    .sp_btn.open span::after {
        top: 0;
        transform: rotate(135deg);
    }


    .sp_nav {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;
        /*デバイスの高さ*/
        background: #FCF7E0;
        /*重なり具合の調整*/
        z-index: 2;
    }

    .sp_nav ul {
        display: flex;
        flex-direction: column;
        align-items: center;
        justify-content: center;
        height: 95%;
        gap: 50px;
    }

    #top {
        margin-top: 128px;
    }

    .main_visual_wrap {
        padding: 14% 7%;
    }

    /* コンセプトの円の調節 */
    .fadeIn_left {
        left: -6%;
    }

    .fadeIn_right {
        right: 1%;
    }

    .sp_nav ul li {
        color: #72716E;
        font-size: 18px;
        font-weight: 800;
    }

    .skill_wrap {
        padding: 0 20px;
    }

    .mk_box img {
        max-width: initial;
    }

    .mk_box2 img {
        max-width: initial;
    }

    .click_text {
        width: 65%;
    }


    .about_text1 {
        font-size: 30px;
    }

    .about_text2 {
        font-size: 16px;
    }


}

@media screen and (max-width: 940px) {
    .sp_br {
        display: block;
    }

    .loop_text {
        margin-top: 140px;
    }

    #top {
        margin-top: 178px;
    }

    .fadeIn_left {
        width: 250px;
        height: 250px;
        left: -8%;
    }

    .fadeIn_right {
        width: 234px;
        height: 234px;
        right: -4%;
    }

    .YELLOW_cicle1,
    .YELLOW_cicle2 {
        max-width: 58px;
        max-height: 58px;
    }

    .contact_wrap {
        border-radius: 70px;
    }


}

@media screen and (max-width: 768px) {
    #Header {
        padding-bottom: 0px;
    }


    #Header h1 {
        width: 188px;
    }

    .loop_text {
        height: 50px;


    }

    .loop_text ul li {
        font-size: 22px;
    }


    #concept {
        margin: 0 auto;
    }

    .catch_1 {
        font-size: 30px;
    }

    .catch_2 {
        font-size: 17px;
    }

    .fadeIn_left {
        width: 174px;
        height: 174px;
        top: 8%;
    }

    .fadeIn_right {
        width: 152px;
        height: 152px;
        top: 78%;
        right: -3%;
    }

    .GREEN_Box {
        border: 14px solid #05c87a;
    }

    .RED_Box {
        border: 12px solid #fc6349;
    }

    .YELLOW_cicle1 {
        max-width: 38px;
        max-height: 38px;
    }

    .YELLOW_cicle2 {
        max-width: 34px;
        max-height: 34px;
    }

    .concept_text {
        padding-top: 278px;
        padding-bottom: 182px;
    }

    #skill_works {
        height: 2402px;
    }

    .skill_title h2 {
        padding-top: 160px;
    }

    .skill_inner {
        max-width: 345px;
        margin: 0 auto;
        flex-direction: column;
        gap: 40px;
    }


    .skill_design {
        margin-right: 0;
        width: 100%;
        height: 580px;
    }

    .skill_coding {
        margin-right: 0;
        width: 100%;
        height: 550px;
    }

    .skill_inner h3 {
        font-size: 22px;
    }

    .skill_inner img {
        width: 117px;
    }

    .skill_inner p {
        padding: 0 11%;
        font-size: 15px;
    }

    .skill_coding ul {
        padding-top: 3%;
    }

    .skill_design ul {
        padding-top: 3%;
    }

    .skill_coding ul {
        padding-top: 10%;
    }

    .about_btn {
        position: relative;
        margin: 0 auto;
        max-width: 365px;
        height: 652px;
        background-color: #fc6349;
        border-radius: 246px;
    }

    .about_btn_inner {
        display: block;
    }

    .about_check_btn {
        width: 100%;
    }

    .about_text_box {
        width: 100%;
    }

    .about_text1 {
        padding-top: 22px;
        text-align: center;
        font-size: 20px;
    }

    .about_text2 {
        text-align: center;
    }

    #contact {
        padding-left: 20px;
        padding-right: 20px;
    }

    .contact_wrap {
        height: 1442px;
    }

    #contact h2 {
        width: 243px;
    }

    .contact_title p {
        padding-bottom: 46px;
        font-size: 16px;
    }

    .contact_text {
        padding: 0 46px 65px 46px;
        font-size: 16px;
    }

    .c-form__item {
        margin: 0 24px 40px 24px;
    }

    textarea.c-form__input {
        height: 260px;
    }

    #Footer {
        height: 571px;
    }

    .footer-wrap {
        padding-top: 28px;
        flex-direction: column;
    }

    .footer-logo {
        padding-bottom: 92px;
        order: 2;
    }

    .footer-list {
        order: 1;
    }

    .footer-list ul {
        padding: 68px;
        order: 3;
        flex-direction: column;
        align-items: center;
        width: 362px;
        height: 190px;
    }

    #Footer p {
        text-align: center;
    }
}



@media (min-width: 767px) {

    .c-form__item {
        flex-wrap: nowrap;
    }

    .c-form__label {
        width: 40%;
    }

    .c-form__input {
        width: 55%;
    }

}

@media screen and (max-width: 390px) {

    #Header h1 {
        width: 148px;
    }

    #top {
        margin-top: 198px;
    }

    .loop_text {
        margin-top: 180px;
    }


    .catch_1 {
        font-size: 26px;
    }

    .catch_2 {
        font-size: 16px;
    }

    #skill_works {
        margin-top: 30px;
        height: 2102px;
    }

    .skill_title h2 {
        padding-top: 120px;
        width: 130px;
    }

    .skill_title p {
        font-size: 16px;
    }

    .skill_inner {
        max-width: 335px;
    }

    .skill_inner h3 {
        padding-top: 82px;
        font-size: 22px;
    }

    .skill_inner img {
        width: 117px;
    }

    .skill_inner p {
        font-size: 15px;
    }

    .skill_coding ul {
        padding-top: 24px;
    }

    #works h2 {
        padding-top: 137px;
        width: 186px;

    }

    #works p {
        padding-bottom: 38px;
        font-size: 16px;

    }

    #about {
        padding: 0 20px 110px 20px;
        padding-bottom: 110px;
    }

    .about_title h2 {
        padding-top: 110px;
        width: 177px;

    }

    .about_title p {
        padding-bottom: 35px;
        font-size: 16px;
    }

}


.slider {
    position: relative;
    margin: 0 auto;
    max-width: 1366px;
    width: 100%;
    padding: 0 50px;
    box-sizing: border-box;
}

.slider li {
    margin: 11px;
    width: 100%;
    height: 100%;
    aspect-ratio: 25 / 19;
    text-align: center;
    background-color: #FFFCEE;
    border-radius: 36px;
}


.slider li a {
    display: inline-block;
    width: 100%;
    height: 100%;
    border-radius: 36px;
    transition: .3s;
}

.slider li a:hover {
    box-shadow: 8px 8px #FFD63A;
}

.mk_box img {
    padding-top: 5%;
    padding-left: 6%;
    width: 92%;
    height: 89%;
    object-fit: cover;
}

.mk_box2 img {
    padding-top: 5%;
    padding-left: 4%;
    width: 92%;
    height: 89%;
    object-fit: cover;
}

.slick-dots {
    bottom: 20px;
}


.slick-dotted.slick-slider {
    margin-bottom: 0;
}

.slick-prev {
    /*戻る矢印の位置と形状*/
    position: absolute;
    width: 40px;
    height: 40px;
    background-color: #ffd63a;
    border-radius: 50%;
    top: 50%;
    left: -38px;
    z-index: 100;
}

.slick-prev::before {
    position: relative;
    content: '';
    display: block;
    width: 12px;
    height: 12px;
    left: 12px;
    border-top: 3px solid #FFFCEE;
    border-right: 3px solid #FFFCEE;
    transform: rotate(-135deg);
    opacity: 1;
}

.slick-next {
    /*次へ矢印の位置と形状*/
    position: absolute;
    width: 40px;
    height: 40px;
    background-color: #ffd63a;
    border-radius: 50%;
    top: 50%;
    right: -38px;
    z-index: 100;
}

.slick-next::before {
    position: relative;
    content: '';
    display: block;
    width: 12px;
    height: 12px;
    left: 9px;
    border-top: 3px solid #FFFCEE;
    border-right: 3px solid #FFFCEE;
    transform: rotate(45deg);
    opacity: 1;
}