/*
Theme Name: Classic Special
Requires at least: 6.1
Tested up to: 6.1
Requires PHP: 7.4
Version: 1.0
License: GNU General Public License v2 or later
License URI: https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
Tags: one-column, custom-colors, custom-menu, custom-logo, editor-style, featured-images, full-site-editing, block-patterns, rtl-language-support, sticky-post, threaded-comments, translation-ready, wide-blocks, block-styles, accessibility-ready, news
*/



/*  Foundation
*/

:root {
    --scrollbar-width: calc(100vw - 100%);
    --max-viewport-width: calc(100vw - var(--scrollbar-width));
}

body {
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: var(--max-viewport-width);
    overflow-x: hidden;

    font-weight: var(--cp--font-weight--medium);
    font-feature-settings: "palt";

    letter-spacing: -1px;

    /* https://yumegori.com/font-choose20190711 */
    /* フォントサイズを正確に */
    -webkit-text-size-adjust: 100%;
    /* 文字をシャープに */
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    /* カーニングとリガチャ（合字）を調整 */
    text-rendering: optimizeLegibility;

    -webkit-text-size-adjust: 100%;
}

a, span {
    display: inline-block;
    padding: 0;
    text-decoration: none;
}

figure {
    margin: 0;
    width: auto;
    height: auto;
}

img {
    width: auto;
    height: auto;
    max-width: 100%;
    object-fit: contain;
    vertical-align: top;
}

svg {
    width: auto;
    height: auto;
    max-width: 100%;
    object-fit: contain;
    vertical-align: top;
}

article {
    width: 100%;
}

main {
	display: block;
    margin: 0;
    padding: 0;
    width: 100%;
    max-width: 100vw;
    height: auto;
    overflow: visible;
}

.wp-site-blocks > main {
    margin-block-start: 0;
}

h1, h2, h3, h4, h5, h6 {
    margin: 0;
}

ul {
    list-style: none;
    margin: 0;
    padding: 0;
}

*,
*::before,
*::after {
    /* transition: var(--cp--transition-main); */    /* cp is custom properties in assets/styles/custom-properties.css */
    box-sizing: border-box;
}

a:focus {
    text-decoration: none;
}



.entry-content > .wp-block-group {
    /* margin: var(--vgap-outline-surface-pc) auto; */
}

body .is-layout-constrained > * + * {
    margin-block-start: 0;
}



/*  Utilities
*/

.wp-block-image img {
    display: inline-block;
}

.wp-block-image:not(.is-style-rounded) img {
    border-radius: initial;
}

.float-clear-both {
    clear: both;
}



.pc {
    display: block !important;
}

.pc.flex {
    display: flex !important;
}

.tab {
    display: none !important;
}

.sp {
    display: none !important;
}



.pc.tab, .pc.sp {
    display: block !important;
}

.pc.tab.flex, .pc.sp.flex {
    display: flex !important;
}



.animated.delay-300ms {
    -webkit-animation-delay: 0.3s;
    animation-delay: 0.3s;
}

.animated.delay-400ms {
    -webkit-animation-delay: 0.4s;
    animation-delay: 0.4s;
}



.entry-content {
    padding: 0;
}

.wp-block-image {
    width: auto;
}

.wp-block-image .alignleft,
.wp-block-image.alignleft {
    text-align: left;
}

.wp-block-image .aligncenter,
.wp-block-image.aligncenter {
    text-align: center;
}

.wp-block-image .alignright,
.wp-block-image.alignright {
    text-align: right;
}

.wp-site-blocks > footer.wp-block-template-part {
    margin-block-start: 0;
}



/*  pc x-small : pc small ((1080 + 1280) / 2)
*/

@media screen and (max-width: 1180px) {
    .entry-content > .wp-block-group {
        /* margin: var(--vgap-outline-surface-tab) auto; */
    }
}



/*  new iPad　portrate : pc x-small ((810px + 1024px) / 2)
*/
@media screen and (max-width: 917px) {
    .entry-content > .wp-block-group {
        /* margin: var(--vgap-outline-surface-tab) auto; */
    }

    .pc, .pc.flex {
        display: none !important;
    }

    .pc.sp {
        display: none !important;
    }

    .tab {
        display: block !important;
    }

    .pc.tab {
        display: block !important;
    }

    .tab.flex {
        display: flex !important;
    }

    .pc.tab.flex {
        display: flex !important;
    }

    .pc.sp.flex {
        display: none !important;
    }

}



/*  iPhone 12 pro Max : iPad portrate ((428px + 768px) / 2)
*/

@media screen and (max-width: 598px) {
    .entry-content > .wp-block-group {
        /* margin: var(--vgap-outline-surface-sp) auto; */
    }

    .tab, .tab.flex, .pc.tab {
        display: none !important;
    }

    .sp, .pc.sp {
        display: block !important;
    }

    .tab.sp {
        display: block !important;
    }

    .sp.flex {
        display: flex !important;
    }

    .pc.tab.flex {
        display: none !important;
    }

    .tab.sp.flex {
        display: flex !important;
    }

}


