@charset "utf-8";

/*
 * File       : rwd-blocks.css
 * Author     : STUDIO-JT (KMS)
 * Guideline  : JTstyle.2.1
 *
 * Dependency : css/reset.css
 *              css/blocks.css
 *
 * SUMMARY:
 * 01) 1850px
 * 02) 1480px
 * 03) 1023px
 * 04) 860px
 * 05) 540px
 */



/* **************************************** *
 * 1850px
 * **************************************** */
@media (max-width: 1850px){

    .ke-blocks .wp-block-image { max-width: auto; margin-left: 90rem; margin-right: 90rem; }

}



/* **************************************** *
 * 1480px
 * **************************************** */
@media (max-width: 1480px){

    .ke-blocks .wp-block-table, 
    .ke-blocks .wp-block-separator, 
    .ke-blocks .wp-block-gallery { max-width: inherit; margin-left: 200rem; margin-right: 200rem; }

    .ke-blocks h1 { font-size: 40rem; }

    .ke-blocks .wp-block-image { margin-left: 40rem; margin-right: 40rem; }

}



/* **************************************** *
 * 1023px
 * **************************************** */
@media (max-width: 1023px){

    .ke-blocks .wp-block-table,
    .ke-blocks .wp-block-separator, 
    .ke-blocks .wp-block-gallery { margin-left: 100rem; margin-right: 100rem; }

    .ke-blocks h1, .ke-blocks h2, .ke-blocks h3, .ke-blocks h4, .ke-blocks h5, .ke-blocks h6 { margin-top: 64rem; margin-bottom: 22rem; }
    .ke-blocks h1 { font-size: 37rem; }
    .ke-blocks h2 { font-size: 30rem; }
    .ke-blocks h3 { font-size: 26rem; }
    .ke-blocks h4 { font-size: 22rem; }
    .ke-blocks h5 { font-size: 19rem; }
    .ke-blocks h6 { font-size: 17rem; }

    .ke-blocks p { margin-bottom: 18rem; }

    .ke-blocks ul:not(.blocks-gallery-grid),
    .ke-blocks ol:not(.blocks-gallery-grid) { margin-bottom: 18rem; }
    .ke-blocks li:not(.blocks-gallery-item) { margin-bottom: 5rem; }
    .ke-blocks li:not(.blocks-gallery-item) ul, 
    .ke-blocks li:not(.blocks-gallery-item) ol { margin-top: 9rem; margin-bottom: 9rem; }

    .ke-blocks .wp-block-image { margin-top: 80rem; margin-bottom: 80rem; }
    .ke-blocks .wp-block-image figcaption { margin-top: 13rem; }

    .ke-blocks .wp-block-gallery { margin-top: 80rem; margin-bottom: -webkit-calc(80rem - var(--gallery-block--gutter-size)); margin-bottom: calc(80rem - var(--gallery-block--gutter-size)); }

    .ke-blocks .wp-block-quote { margin-top: 80rem; margin-bottom: 80rem; }
    .ke-blocks .wp-block-quote:before { width: 20rem; height: 15rem; }
    .ke-blocks .wp-block-quote p { font-size: 19rem; }
    .ke-blocks blockquote.wp-block-quote.is-style-large { padding-left: 20rem; }

    .ke-blocks .wp-block-buttons { margin-top: 60rem; margin-bottom: 60rem; }

    .ke-blocks .wp-block-table { margin-top: 32rem; margin-bottom: 64rem; }
    .ke-blocks .wp-block-table td, .ke-blocks .wp-block-table th { padding: 17rem 25rem 15rem; }
    .ke-blocks .wp-block-table figcaption { margin-top: 13rem; }

    .ke-blocks .wp-block-embed { margin-top: 80rem; margin-bottom: 80rem; }

    .ke-blocks .wp-block-separator { margin-top: 80rem; margin-bottom: 80rem; }
    .ke-blocks .wp-block-separator:not(.is-style-wide) { margin-left: auto; margin-right: auto; }

}



/* **************************************** *
 * 860px
 * **************************************** */
@media (max-width: 860px){

    .ke-blocks .wp-block-table,
    .ke-blocks .wp-block-separator, 
    .ke-blocks .wp-block-gallery { margin-left: 64rem; margin-right: 64rem; }

    .ke-blocks h1,
    .ke-blocks h2,
    .ke-blocks h3,
    .ke-blocks h4,
    .ke-blocks h5,
    .ke-blocks h6,
    .ke-blocks p,
    .ke-blocks ul:not(.blocks-gallery-grid), 
    .ke-blocks ol:not(.blocks-gallery-grid),
    .ke-blocks .wp-block-quote, 
    .ke-blocks .wp-block-buttons,
    .ke-blocks .wp-block-embed { max-width: inherit; margin-left: 64rem; margin-right: 64rem; }

    .ke-blocks h1,
    .ke-blocks h2,
    .ke-blocks h3,
    .ke-blocks h4,
    .ke-blocks h5,
    .ke-blocks h6 { margin-top: 58rem; margin-bottom: 18rem; font-weight: bold; letter-spacing: -0.025em; }
    .ke-blocks h1 { font-size: 32rem; }
    .ke-blocks h2 { font-size: 28rem; }
    .ke-blocks h3 { font-size: 24rem; }
    .ke-blocks h4 { font-size: 22rem; }

    .ke-blocks p { margin-bottom: 16rem; letter-spacing: -0.025em; }
    .ke-blocks strong { font-weight: bold; }

    .ke-blocks ul:not(.blocks-gallery-grid), 
    .ke-blocks ol:not(.blocks-gallery-grid) { margin-bottom: 16rem; }
    .ke-blocks li:not(.blocks-gallery-item) { letter-spacing: -0.025em; }
    .ke-blocks li:not(.blocks-gallery-item) ul, 
    .ke-blocks li:not(.blocks-gallery-item) ol { margin-top: 7rem; margin-bottom: 8rem; }
    .ke-blocks ol:not(.blocks-gallery-grid) li { padding-left: 17rem; }
    .ke-blocks ol:not(.blocks-gallery-grid) li:nth-child(n+10) { padding-left: 27rem; }
    .ke-blocks ul:not(.blocks-gallery-grid) li { padding-left: 14rem; }
    html.ios .ke-blocks ul:not(.blocks-gallery-grid) li:before { top: 11rem; }

    .ke-blocks .wp-block-image { margin: 75rem 32rem; }
    .ke-blocks .wp-block-image img { border-radius: 12rem; }
    .ke-blocks .wp-block-image figcaption { margin-top: 11rem; }

    .ke-blocks .wp-block-gallery { margin-top: 75rem; margin-bottom: -webkit-calc(75rem - var(--gallery-block--gutter-size)); margin-bottom: calc(75rem - var(--gallery-block--gutter-size)); }
    .ke-blocks .wp-block-gallery.has-nested-images figure.wp-block-image figcaption { border-radius: 0 0 12rem 12rem; }

    .ke-blocks .wp-block-quote { margin-top: 75rem; margin-bottom: 75rem; padding-top: 28rem; }
    .ke-blocks .wp-block-quote cite { margin-top: 6rem; }
    .ke-blocks blockquote.wp-block-quote.is-style-large { padding-left: 17rem; }

    .ke-blocks .wp-block-buttons { margin-top: 54rem; margin-bottom: 54rem; }
    html.ios .ke-blocks .wp-block-button__link { padding-top: 16rem; padding-bottom: 14rem; }

    .ke-blocks .wp-block-table { margin-top: 29rem; margin-bottom: 58rem; }
    .ke-blocks .wp-block-table td,
    .ke-blocks .wp-block-table th { padding: 15rem 25rem 13rem; letter-spacing: -0.025em; }
    .ke-blocks .wp-block-table figcaption { margin-top: 11rem; }

    .ke-blocks .wp-block-embed { margin-top: 75rem; margin-bottom: 75rem; }

    .ke-blocks .wp-block-separator { margin-top: 75rem; margin-bottom: 75rem; }

}



/* **************************************** *
 * 540px
 * **************************************** */
@media (max-width: 540px){

    body { --gallery-block--gutter-size: 10rem; }
    
    .ke-blocks .wp-block-gallery,
    .ke-blocks .wp-block-table,
    .ke-blocks .wp-block-separator { margin-left: 24rem; margin-right: 24rem; }

    .ke-blocks h1,
    .ke-blocks h2,
    .ke-blocks h3,
    .ke-blocks h4,
    .ke-blocks h5,
    .ke-blocks h6,
    .ke-blocks p,
    .ke-blocks ul:not(.blocks-gallery-grid), 
    .ke-blocks ol:not(.blocks-gallery-grid),
    .ke-blocks .wp-block-quote, 
    .ke-blocks .wp-block-buttons,
    .ke-blocks .wp-block-embed { margin-left: 24rem; margin-right: 24rem; }
    
    .ke-blocks h1,
    .ke-blocks h2,
    .ke-blocks h3,
    .ke-blocks h4,
    .ke-blocks h5,
    .ke-blocks h6 { margin-top: 50rem; margin-bottom: 16rem; }
    .ke-blocks h1,
    .ke-blocks h2 { font-size: 24rem; }
    .ke-blocks h3 { font-size: 23rem; }

    .ke-blocks p { line-height: 1.75; }

    .ke-blocks p a:not(.wp-block-button__link)[target="_blank"]:after, 
    .ke-blocks ul a:not(.wp-block-button__link)[target="_blank"]:after, 
    .ke-blocks ol a:not(.wp-block-button__link)[target="_blank"]:after { width: 10rem; height: 9rem; }
    html.ios .ke-blocks p a:not(.wp-block-button__link)[target="_blank"]:after, 
    html.ios .ke-blocks ul a:not(.wp-block-button__link)[target="_blank"]:after, 
    html.ios .ke-blocks ol a:not(.wp-block-button__link)[target="_blank"]:after { top: 6rem; }
    
    .ke-blocks li:not(.blocks-gallery-item) { margin-bottom: 4rem; line-height: 1.75; }
    .ke-blocks ul:not(.blocks-gallery-grid) li { padding-left: 12rem; }
    .ke-blocks ul:not(.blocks-gallery-grid) li:before { top: 12rem; }
    .ke-blocks ol:not(.blocks-gallery-grid) li { padding-left: 16rem; }
    .ke-blocks ol:not(.blocks-gallery-grid) li:nth-child(n+10) { padding-left: 26rem; }

    .ke-blocks .wp-block-image { margin: 60rem 24rem; }
    .ke-blocks .wp-block-image figcaption { margin-top: 9rem; }

    .ke-blocks .wp-block-gallery { margin-top: 60rem; margin-bottom: -webkit-calc(60rem - var(--gallery-block--gutter-size)); margin-bottom: calc(60rem - var(--gallery-block--gutter-size)); }
    .ke-blocks .wp-block-gallery.has-nested-images figure.wp-block-image figcaption { padding: 10rem 12rem 6rem; font-size: 12rem; }

    .ke-blocks .wp-block-quote { margin-top: 60rem; margin-bottom: 60rem; }
    .ke-blocks .wp-block-quote:before { width: 19rem; height: 14rem; }
    .ke-blocks .wp-block-quote p { font-size: 18rem; }
    .ke-blocks .wp-block-quote cite { margin-top: 4rem; font-size: 15rem; }
    .ke-blocks blockquote.wp-block-quote.is-style-large { padding-left: 16rem; border-width: 2rem; }

    .ke-blocks .wp-block-buttons { margin-top: 46rem; margin-bottom: 46rem; }
    .ke-blocks .wp-block-button__link { min-width: 140rem; padding: 13rem 26rem 14rem; }
    html.ios .ke-blocks .wp-block-button__link { padding-top: 14rem; padding-bottom: 13rem; }
    
    .ke-blocks .wp-block-table { margin-top: 26rem; margin-bottom: 50rem; }
    .ke-blocks .wp-block-table td,
    .ke-blocks .wp-block-table th { padding: 13rem 16rem 11rem; font-size: 15rem; line-height: 1.75; }
    .ke-blocks .wp-block-table figcaption { margin-top: 9rem; }

    .ke-blocks .wp-block-embed { margin-top: 60rem; margin-bottom: 60rem; }

    .ke-blocks .wp-block-separator { margin-top: 60rem; margin-bottom: 60rem; }

}



/* **************************************** *
 * FORCE RESET MARGIN TOP
 * TODO : Find a better way
 * **************************************** */
.ke-blocks > *:first-child { margin-top: 0; }
.ke-blocks > *:last-child { margin-bottom: 0; }