/*
Theme Name: Akademia Trade - Child of Twenty Twentyfive
Version: 1.0
Description: 
Author: Akademia Trade
Author URI: https://www.akademia-trade.com/
Template: twentytwentyfive
License: GNU General Public License v2 or later
License URI: http://www.gnu.org/licenses/gpl-2.0.html
Text Domain: akademia_trade
*/

body {
    padding-top: 100px;
    font-family: "Open Sans", "open sans", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", sans-serif;
    font-style: normal;
    color: rgb(51, 51, 51);
}

#wpadminbar {
    opacity: .7;
}

header {
    position: fixed;
    left: 0;
    top: 0;
    box-sizing: border-box;
    width: 100%;
    height: 100px;
    padding: 22px 0 23px 0;
    background: #FFF;
    z-index: 999;
}
#custom-header {
    width: 311px;
    height: 55px;
    margin: 0 0 0 calc((100% - 980px) * 0.5);
}
:root :where(.is-layout-flex) {
    gap: 0;
}
.wp-block-site-logo.is-default-size img {
    width: 51px;
    height: 55px;
    object-fit: cover;
}
.wp-block-site-title :where(a) {
    display: block;
    width: 260px;
    height: 35px;
    font-size: 28px;
    line-height: 1em;
    text-align: center;
    letter-spacing: 0.05em;
    font-weight: normal;
    color: #56ACE0;
}
.wp-block-site-title :where(a):hover {
    text-decoration: none;
}
.wp-block-site-tagline {
    position: relative;
    left: 23px;
    width: 214px;
    font-size: 12px;
    letter-spacing: 0.2em;
    font-weight: 400;
}

:where(.wp-site-blocks) > .main-visual-area {
    position: relative;
    margin: 0;
}
.main-visual {
    display: block;
    width: 100%;
}
.main-visual img {
    display: block;
    width: 100%;
    height: 530px;
    object-fit: cover;
}
@keyframes fade-in-msg {
    0% {
        transform: translateY(360px);
        opacity: 0;
    }
    30% {
        transform: translateY(190px);
        opacity: 0;
    }
    100% {
        transform: translateY(0);
        opacity: 1;
    }
}
.main-visual-message {
    position: absolute;
    top: 190px;
    min-height: 169px;
    font-family: "Raleway", sans-serif;
    font-style: normal;
    font-size: 75px;
    line-height: 75px;
    font-weight: bold;
    letter-spacing: 0.1em;
    text-align: center;
    color: #FFF;
    animation: fade-in-msg 2s ease-in-out;
}

.custom-info {
    margin-top: 0;
    padding: 70px 10px 70px 10px;
    font-size: 20px;
    font-weight: 400;
    color: #959595;

    .custom-title-sub {
        margin-bottom: 10px;
        font-size: 14px;
        font-weight: bold;
    }
    .custom-title-main {
        margin-bottom: 40px;
        font-size: 40px;
        font-weight: bold;
        letter-spacing: 0.05em;
        color: rgb(81, 81, 81);
    }
    .custom-description-en {
        margin-bottom: 30px;
        max-width: 700px;
        line-height: 36px;
    }
    .custom-description-jp {
        margin-bottom: 30px;
        max-width: 700px;
        line-height: 36px;
    }
    .custom-description-jp-top {
        padding-top: 40px;
    }
    img {
        width: 980px;
        margin: 60px 0 0 0;
    }

    &.products,
    &.contact {
        padding-top: 100px;
        background: rgb(248, 249, 249);
    }
    &.products .images {
        display: flex;
        justify-content: space-between;
        flex-wrap: wrap;
        width: 980px;

        .product-image {
            display: flex;
            justify-content: center;
            align-items: center;
            width: calc((100% - 28px) / 2);
            height: 400px;
            margin: 0 0 14px;
            background: #FFF;;

            img {
                display: block;
                width: 72%;
                margin: 0;
            }
        }
    }
    &.contact {
        font-size: 16px;
        color: rgb(51, 51, 51);

        .contact-inner{
            display: flex;
            justify-content: center;
            align-items: start;
            flex-wrap: wrap;

            .contact-form {
                width: 500px;
                padding: 20px;
                font-size: 12px;
                color: rgb(119, 119, 119);

                input,
                textarea {
                    display: block;
                    box-sizing: border-box;
                    width: 100%;
                    padding: 10px;
                    margin: 5px 0 20px 0;
                    box-shadow: inset 1px 2px 3px 0 rgba(0, 0, 0, .2);
                    border: 1px solid #888;
                    border-radius: 4px;
                    font-size: 16px;
                }
                .wpcf7-submit {
                    background: rgb(86, 172, 224);
                    color: #FFF;
                    box-shadow: none;
                    cursor: pointer;

                    &:hover {
                        opacity: .7;
                    }
                }
            }
            .contact-description {
                width: 456px;
            }
            .custom-description-en,
            .custom-description-jp {
                margin-bottom: 15px;
                line-height: 1.7em;
            }
            .about {
                padding: 35px 0 15px 0;
                font-size: 20px;
                font-weight: bold;
            }
            .mail-to {
                dispaly: flex;
                color: #3D9BE9;

                svg {
                    display: block;
                    width: 25px;
                    height: 25px;
                    margin-right: 10px;
                }
            }
        }
    }
}

footer {
    display: flex;
    justify-content: center;
    align-items: center;
    min-height: 100px;
    margin: 0;
    background: rgb(34, 34, 34);
    font-size: 14px;
    letter-spacing: 0.1em;
    color: #FFF;
    font-family: Arial, Helvetica, sans-serif;
    font-weight: 400;
}

#wpfront-scroll-top-container {
    box-sizing: border-box;
    width: 66px;
    height: 66px;
    background: #FFF;
    border: 1px solid #FFF;
    border-radius: 50%;
}

@media (max-width: 767px) {
    #custom-header {
        margin: 0 0 0 10px;
    }

    .main-visual img {
        height: 185px;
    }
    .main-visual-message {
        min-height: 86px;
        top: 49px;
        font-size: 28px;
        line-height: 1.5em;
    }

    .custom-info {
        padding-top: 30px;

        .custom-title-main {
            font-size: 30px;
            letter-spacing: 1.5px;
        }
        &.products {
            padding: 40px 0;
        }
        &.products .images {
            width: 100%;
            padding: 0;

            .product-image {
                width: 100%;
                height: 250px;
                margin: 0;
                padding: 40px 10px;

                img {
                    width: 100%;
                }
            }
        }
        &.contact {
            padding: 40px 0;

            .contact-inner{
                padding: 10px;

                .contact-form {
                    width: 100%;
                    padding: 0;

                    .wpcf7-submit {
                        padding: 20px 10px;
                    }
                }
                .contact-description {
                    width: 100%;
                }
            }
        }
    }
}