/* Typography (heading) */


:root {
    /**
* ---------------------------------------------------------------------
* SPACING VARIABLES
*
* We are using a spacing inspired from frameworks like Tailwind CSS.
* ---------------------------------------------------------------------
*/
    --spacing-0-5: 0.125rem;
    /* 2px */
    --spacing-1: 0.25rem;
    /* 4px */
    --spacing-1-5: 0.375rem;
    /* 6px */
    --spacing-2: 0.5rem;
    /* 8px */
    --spacing-2-5: 0.625rem;
    /* 10px */
    --spacing-3: 0.75rem;
    /* 12px */
    --spacing-3-5: 0.875rem;
    /* 14px */
    --spacing-4: 1rem;
    /* 16px */
    --spacing-4-5: 1.125rem;
    /* 18px */
    --spacing-5: 1.25rem;
    /* 20px */
    --spacing-5-5: 1.375rem;
    /* 22px */
    --spacing-6: 1.5rem;
    /* 24px */
    --spacing-6-5: 1.625rem;
    /* 26px */
    --spacing-7: 1.75rem;
    /* 28px */
    --spacing-7-5: 1.875rem;
    /* 30px */
    --spacing-8: 2rem;
    /* 32px */
    --spacing-8-5: 2.125rem;
    /* 34px */
    --spacing-9: 2.25rem;
    /* 36px */
    --spacing-9-5: 2.375rem;
    /* 38px */
    --spacing-10: 2.5rem;
    /* 40px */
    --spacing-11: 2.75rem;
    /* 44px */
    --spacing-12: 3rem;
    /* 48px */
    --spacing-14: 3.5rem;
    /* 56px */
    --spacing-16: 4rem;
    /* 64px */
    --spacing-18: 4.5rem;
    /* 72px */
    --spacing-20: 5rem;
    /* 80px */
    --spacing-24: 6rem;
    /* 96px */
    --spacing-28: 7rem;
    /* 112px */
    --spacing-32: 8rem;
    /* 128px */
    --spacing-36: 9rem;
    /* 144px */
    --spacing-40: 10rem;
    /* 160px */
    --spacing-44: 11rem;
    /* 176px */
    --spacing-48: 12rem;
    /* 192px */
    --spacing-52: 13rem;
    /* 208px */
    --spacing-56: 14rem;
    /* 224px */
    --spacing-60: 15rem;
    /* 240px */
    --spacing-64: 16rem;
    /* 256px */
    --spacing-72: 18rem;
    /* 288px */
    --spacing-80: 20rem;
    /* 320px */
    --spacing-96: 24rem;
    /* 384px */

    /* Container */
    --container-max-width: 1600px;
    --container-narrow-max-width: 1350px;
    --container-gutter: var(--spacing-5);
    --section-outer-spacing-block: var(--spacing-12);
    --section-inner-max-spacing-block: var(--spacing-10);
    --section-inner-spacing-inline: var(--container-gutter);
    --section-stack-spacing-block: var(--spacing-8);

    /* Grid gutter */
    --grid-gutter: var(--spacing-5);

    /* Product list settings */
    --product-list-row-gap: var(--spacing-8);
    --product-list-column-gap: var(--grid-gutter);

    /* Form settings */
    --input-gap: var(--spacing-2);
    --input-height: 2.625rem;
    --input-padding-inline: var(--spacing-4);

    /* Other sizes */
    --sticky-area-height: calc(var(--sticky-announcement-bar-enabled, 0) * var(--announcement-bar-height, 0px) + var(--sticky-header-enabled, 0) * var(--header-height, 0px));

    /* RTL support */
    --transform-logical-flip: 1;
    --transform-origin-start: left;
    --transform-origin-end: right;

    /**
* ---------------------------------------------------------------------
* TYPOGRAPHY
* ---------------------------------------------------------------------
*/

    /* Font properties */
    --heading-font-family: "Open Sans", sans-serif;
    --heading-font-weight: 400;
    --heading-font-style: normal;
    --heading-text-transform: none;
    --heading-letter-spacing: -0.02em;
    --text-font-family: "Open Sans", sans-serif;
    --text-font-weight: 400;
    --text-font-style: normal;
    --text-letter-spacing: 0em;

    /* Font sizes */
    --text-h0: 2.5rem;
    --text-h1: 1.75rem;
    --text-h2: 1.5rem;
    --text-h3: 1.375rem;
    --text-h4: 1.125rem;
    --text-h5: 1.125rem;
    --text-h6: 1rem;
    --text-xs: 0.6875rem;
    --text-sm: 0.75rem;
    --text-base: 0.875rem;
    --text-lg: 1.125rem;

    /**
* ---------------------------------------------------------------------
* COLORS
* ---------------------------------------------------------------------
*/

    /* Color settings */
    --accent: 0 0 0;
    --text-primary: 26 26 26;
    --background-primary: 255 255 255;
    --dialog-background: 255 255 255;
    --border-color: var(--text-color, var(--text-primary)) / 0.12;

    /* Button colors */
    --button-background-primary: 0 0 0;
    --button-text-primary: 255 255 255;
    --button-background-secondary: 0 0 0;
    --button-text-secondary: 255 255 255;

    /* Status colors */
    --success-background: 224 244 232;
    --success-text: 0 163 65;
    --warning-background: 255 246 233;
    --warning-text: 255 183 74;
    --error-background: 254 231 231;
    --error-text: 248 58 58;

    /* Product colors */
    --on-sale-text: 0 166 186;
    --on-sale-badge-background: 0 166 186;
    --on-sale-badge-text: 255 255 255;
    --sold-out-badge-background: 0 0 0;
    --sold-out-badge-text: 255 255 255;
    --primary-badge-background: 128 60 238;
    --primary-badge-text: 255 255 255;
    --star-color: 255 183 74;
    --product-card-background: 255 255 255;
    --product-card-text: 26 26 26;

    /* Header colors */
    --header-background: 247 247 247;
    --header-text: 26 26 26;

    /* Footer colors */
    --footer-background: 255 255 255;
    --footer-text: 26 26 26;

    /* Rounded variables (used for border radius) */
    --rounded-xs: 0.25rem;
    --rounded-sm: 0.375rem;
    --rounded: 0.75rem;
    --rounded-lg: 1.5rem;
    --rounded-full: 9999px;

    --rounded-button: 2.5rem;
    --rounded-input: 0.5rem;

    /* Box shadow */
    --shadow-sm: 0 2px 8px rgb(var(--text-primary) / 0.1);
    --shadow: 0 5px 15px rgb(var(--text-primary) / 0.1);
    --shadow-md: 0 5px 30px rgb(var(--text-primary) / 0.1);
    --shadow-block: 0px 18px 50px rgb(var(--text-primary) / 0.1);

    /**
* ---------------------------------------------------------------------
* OTHER
* ---------------------------------------------------------------------
*/

    --stagger-products-reveal-opacity: 0;
    --cursor-close-svg-url: url(//geekom.jp/cdn/shop/t/33/assets/cursor-close.svg?v=147174565022153725511723055609);
    --cursor-zoom-in-svg-url: url(//geekom.jp/cdn/shop/t/33/assets/cursor-zoom-in.svg?v=154953035094101115921723055610);
    --cursor-zoom-out-svg-url: url(//geekom.jp/cdn/shop/t/33/assets/cursor-zoom-out.svg?v=16155520337305705181723055609);
    --checkmark-svg-url: url(//geekom.jp/cdn/shop/t/33/assets/checkmark.svg?v=77552481021870063511723055609);
}

[dir="rtl"]:root {
    /* RTL support */
    --transform-logical-flip: -1;
    --transform-origin-start: right;
    --transform-origin-end: left;
}

@media screen and (min-width: 700px) {
    :root {
        /* Typography (font size) */
        --text-h0: 3.25rem;
        --text-h1: 2.25rem;
        --text-h2: 1.75rem;
        --text-h3: 1.625rem;
        --text-h4: 1.25rem;
        --text-h5: 1.25rem;
        --text-h6: 1.125rem;

        --text-xs: 0.75rem;
        --text-sm: 0.875rem;
        --text-base: 1rem;
        --text-lg: 1.25rem;

        /* Spacing */
        --container-gutter: 2rem;
        --section-outer-spacing-block: var(--spacing-16);
        --section-inner-max-spacing-block: var(--spacing-12);
        --section-inner-spacing-inline: var(--spacing-12);
        --section-stack-spacing-block: var(--spacing-12);

        /* Grid gutter */
        --grid-gutter: var(--spacing-6);

        /* Product list settings */
        --product-list-row-gap: var(--spacing-12);

        /* Form settings */
        --input-gap: 1rem;
        --input-height: 3.125rem;
        --input-padding-inline: var(--spacing-5);
    }
}

@media screen and (min-width: 1000px) {
    :root {
        /* Spacing settings */
        --container-gutter: var(--spacing-12);
        --section-outer-spacing-block: var(--spacing-18);
        --section-inner-max-spacing-block: var(--spacing-16);
        --section-inner-spacing-inline: var(--spacing-16);
        --section-stack-spacing-block: var(--spacing-12);
    }
}

@media screen and (min-width: 1150px) {
    :root {
        /* Spacing settings */
        --container-gutter: var(--spacing-12);
        --section-outer-spacing-block: var(--spacing-20);
        --section-inner-max-spacing-block: var(--spacing-16);
        --section-inner-spacing-inline: var(--spacing-16);
        --section-stack-spacing-block: var(--spacing-12);
    }
}

@media screen and (min-width: 1400px) {
    :root {
        /* Typography (font size) */
        --text-h0: 4rem;
        --text-h1: 3rem;
        --text-h2: 2.5rem;
        --text-h3: 1.75rem;
        --text-h4: 1.5rem;
        --text-h5: 1.25rem;
        --text-h6: 1.25rem;

        --section-outer-spacing-block: var(--spacing-24);
        --section-inner-max-spacing-block: var(--spacing-18);
        --section-inner-spacing-inline: var(--spacing-18);
    }
}

@media screen and (min-width: 1600px) {
    :root {
        --section-outer-spacing-block: var(--spacing-24);
        --section-inner-max-spacing-block: var(--spacing-20);
        --section-inner-spacing-inline: var(--spacing-20);
    }
}

/**
* ---------------------------------------------------------------------
* LIQUID DEPENDANT CSS
*
* Our main CSS is Liquid free, but some very specific features depend on
* theme settings, so we have them here
* ---------------------------------------------------------------------
*/
@media screen and (pointer: fine) {
    .button:not([disabled]):hover,
    .btn:not([disabled]):hover,
    .shopify-payment-button__button--unbranded:not([disabled]):hover {
        --button-background-opacity: 0.85;
    }

    .button--subdued:not([disabled]):hover {
        --button-background: var(--text-color) / 0.05 !important;
    }
}


/* header */

:root {
    --sticky-header-enabled: 1;
}

#shopify-section-sections--22988846858524__header {
    --header-grid-template: "main-nav logo secondary-nav" / minmax(0, 1fr) auto minmax(0, 1fr);
    --header-padding-block: var(--spacing-3);
    --header-background-opacity: 1;
    --header-background-blur-radius: 0px;
    --header-transparent-text-color: 255 255 255;
    --header-logo-width: 105px;
    --header-logo-height: 16px;
    position: sticky;
    top: 0;
    z-index: 10;
}

.shopify-section--announcement-bar ~ #shopify-section-sections--22988846858524__header {
    top: calc(var(--sticky-announcement-bar-enabled, 0) * var(--announcement-bar-height, 0px));
}

@media screen and (min-width: 700px) {
    #shopify-section-sections--22988846858524__header {
        --header-logo-width: 150px;
        --header-logo-height: 23px;
        --header-padding-block: var(--spacing-6);
    }
}

@media screen and (min-width: 1150px) {
    #shopify-section-sections--22988846858524__header {
        --header-grid-template: "logo main-nav secondary-nav" / minmax(0, 1fr) fit-content(70%) minmax(0, 1fr);
    }
}


/* ====================================================================== */

:host {
    display: block;
    position: relative;
    contain: strict;
    width: 300px;
    height: 150px;
}

/* NOTE: This ruleset is our integration surface area with the
* :focus-visible polyfill.
*
* @see https://github.com/WICG/focus-visible/pull/196 */
:host([data-js-focus-visible]:focus:not(.focus-visible)),
:host([data-js-focus-visible]) :focus:not(.focus-visible) {
    outline: none;
}

.container {
    position: relative;
}

.userInput {
    width: 100%;
    height: 100%;
    display: block;
    position: relative;
    overflow: hidden;
}

canvas {
    position: absolute;
    display: none;
    pointer-events: none;
    /* NOTE(cdata): Chrome 76 and below apparently have a bug
* that causes our canvas not to display pixels unless it is
* on its own render layer
* @see https://github.com/google/model-viewer/pull/755#issuecomment-536597893
*/
    transform: translateZ(0);
}

canvas.show {
    display: block;
}

/* Adapted from HTML5 Boilerplate
*
* @see https://github.com/h5bp/html5-boilerplate/blob/ceb4620c78fc82e13534fc44202a3f168754873f/dist/css/main.css#L122-L133 */
.screen-reader-only {
    border: 0;
    left: 0;
    top: 0;
    clip: rect(0, 0, 0, 0);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    position: absolute;
    white-space: nowrap;
    width: 1px;
    pointer-events: none;
}

.slot {
    position: absolute;
    pointer-events: none;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}

.slot > * {
    pointer-events: initial;
}

.annotation-wrapper ::slotted(*) {
    opacity: var(--max-hotspot-opacity, 1);
    transition: opacity 0.3s;
}

.pointer-tumbling .annotation-wrapper ::slotted(*) {
    pointer-events: none;
}

.annotation-wrapper ::slotted(*) {
    pointer-events: initial;
}

.annotation-wrapper.hide ::slotted(*) {
    opacity: var(--min-hotspot-opacity, 0.25);
}

.slot.poster {
    opacity: 0;
    transition: opacity 0.3s 0.3s;
    background-color: inherit;
}

.slot.poster.show {
    opacity: 1;
    transition: none;
}

.slot.poster.quick {
    transition: none;
}

.slot.poster > * {
    pointer-events: initial;
}

.slot.poster:not(.show) > * {
    pointer-events: none;
}

#default-poster {
    width: 100%;
    height: 100%;
    /* The default poster is a <button> so we need to set display
* to prevent it from being affected by text-align: */
    display: block;
    position: absolute;
    border: none;
    padding: 0;
    background-size: contain;
    background-repeat: no-repeat;
    background-position: center;
    background-color: var(--poster-color, #fff);
    background-image: var(--poster-image, none);
}

#default-progress-bar {
    display: block;
    position: relative;
    width: 100%;
    height: 100%;
    pointer-events: none;
    overflow: hidden;
}

#default-progress-bar > .mask {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: var(--progress-mask, #fff);
    transition: opacity 0.3s;
    opacity: 0.2;
}

#default-progress-bar > .bar {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: var(--progress-bar-height, 5px);
    background-color: var(--progress-bar-color, rgba(0, 0, 0, 0.4));
    transition: transform 0.09s;
    transform-origin: top left;
    transform: scaleX(0);
    overflow: hidden;
}

#default-progress-bar > .bar.hide {
    transition: opacity 0.3s 1s;
    opacity: 0;
}

.centered {
    align-items: center;
    justify-content: center;
}

.cover {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
}

.slot.interaction-prompt {
    display: var(--interaction-prompt-display, flex);
    overflow: hidden;
    opacity: 0;
    will-change: opacity;
    transition: opacity 0.3s;
}

.slot.interaction-prompt.visible {
    opacity: 1;
}

.animated-container {
    will-change: transform, opacity;
    opacity: 0;
    transition: opacity 0.3s;
}

.slot.interaction-prompt > * {
    pointer-events: none;
}

.slot.ar-button {
    -moz-user-select: none;
    -webkit-tap-highlight-color: transparent;
    user-select: none;

    display: var(--ar-button-display, block);
}

.slot.ar-button:not(.enabled) {
    display: none;
}

.fab {
    display: flex;
    align-items: center;
    justify-content: center;
    box-sizing: border-box;
    width: 40px;
    height: 40px;
    cursor: pointer;
    background-color: #fff;
    box-shadow: 0px 0px 4px rgba(0, 0, 0, 0.15);
    border-radius: 100px;
}

.fab > * {
    opacity: 0.87;
}

#default-ar-button {
    position: absolute;
    bottom: 16px;
    right: 16px;
    transform: scale(var(--ar-button-scale, 1));
    transform-origin: bottom right;
}

.slot.pan-target {
    display: block;
    position: absolute;
    width: 0;
    height: 0;
    left: 50%;
    top: 50%;
    transform: translate3d(-50%, -50%, 0);
    background-color: transparent;
    opacity: 0;
    transition: opacity 0.3s;
}

#default-pan-target {
    width: 6px;
    height: 6px;
    border-radius: 6px;
    border: 1px solid white;
    box-shadow: 0px 0px 2px 1px rgba(0, 0, 0, 0.8);
}

.slot.default {
    pointer-events: none;
}

.slot.progress-bar {
    pointer-events: none;
}

.slot.exit-webxr-ar-button {
    pointer-events: none;
}

.slot.exit-webxr-ar-button:not(.enabled) {
    display: none;
}

#default-exit-webxr-ar-button {
    display: flex;
    align-items: center;
    justify-content: center;
    position: absolute;
    top: 16px;
    right: 16px;
    width: 40px;
    height: 40px;
    box-sizing: border-box;
}

#default-exit-webxr-ar-button > svg {
    fill: #fff;
}

/* ========================================================================== */



/* footer__aside-bottom */

.footer__aside-bottom {
    text-align: center;
}

.footer__aside-top, .footer__aside-bottom {
    /* justify-content: center !important; */
}

footer .footer__copyright{
    width: 240px;
}

footer .footer__copyright img{
    margin-bottom: 20px;
}



/* header anchor links */

.anchor_links_container {
    display: flex;
    align-items: center;
    justify-content: space-between;
}

.anchor_links_container .anchor_link_text {
    padding-right: 30px;
    display: flex;
    align-items: center;
    position: relative;
    margin-right: 40px;
}

.anchor_links_container .anchor_link_text:hover {
    opacity: .75;
}

.anchor_links_container .anchor_link_text::after {
    content: "";
    position: absolute;
    right: 0;
    top: 42%;
    transform: translateY(-50%) rotate(45deg);
    width: 10px;
    height: 10px;
    border-right: 2px solid black;
    border-bottom: 2px solid black;
}

.anchor_links_container .anchor_link_text:last-child {
    margin-right: 0;
}

@media screen and (max-width: 767px){
    .anchor_links_container {
        display: none;
    }
}

.header .header__logo{
    display: flex;
    align-items: center;
    gap: 20px;
}

.header .header__logo img{
    width: 150px;
}

.header .header__logo .x{
    margin-left: 3px;
    font-size: 14px;
    font-family: "Noto Sans JP", "メイリオ", Meiryo, " ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic ProN", "ＭＳ Ｐゴシック", Arial, Helvetica, sans-serif;
}

/* purchase_btn */

.purchase_btn {
    margin-top: 40px;
}

/* main_banner */

#main_banner {
    max-height: 600px;
    /* overflow: hidden !important; */
    position: relative;
}

#main_banner .slider_container {
    width: 100%;
    height: 100%;
}

#main_banner .slider_container .slide {
    height: 100%;
    overflow: hidden !important;
}

#main_banner .slider_container .slide img {
    max-height: 600px;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: center 80% !important;
    overflow: hidden !important;
}

.slider_btns {
    position: absolute;
    right: 30px;
    bottom: 30px;
    display: flex;
    z-index: 9;
}

.slider_btns .slider_btn {
    width: 56px;
    height: 56px;
    border-radius: 56px;
    background-color: #FFF;
    cursor: pointer;
    position: relative;
    transition: all .3s ease-in;
}

.slider_btns .slider_btn:hover {
    opacity: .75;
}

.slider_btns .slider_btn::after {
    content: "";
    position: absolute;
    left: 0;
    right: 0;
    top: 0;
    bottom: 0;
    width: 7px;
    height: 7px;
    border-right: 2px solid #000;
    border-bottom: 2px solid #000;
    margin: auto;
}

.slider_btns .slider_btn.prev::after {
    transform: rotate(135deg);
}

.slider_btns .slider_btn.next::after {
    transform: rotate(-45deg);
}

.slider_btns .slider_btn.prev {
    margin-right: 12px;
}


@media screen and (max-width: 1920px){
    #main_banner {
        /* max-height: 560px; */
    }
    #main_banner .slider_container .slide img {
        /* max-height: 560px; */
        height: 100%;
    }
}

@media screen and (max-width: 1600px){
    #main_banner {
        /* max-height: 460px; */
    }
    #main_banner .slider_container .slide img {
        /* max-height: 460px; */
    }
}

@media screen and (max-width: 1100px){
    #main_banner {
        /* height: 380px; */
    }
    #main_banner .slider_container .slide img {
        /* height: 380px; */
    }
}

@media screen and (max-width: 767px){
    #main_banner {
        height: auto;
    }
    #main_banner .slider_container .slide img {
        height: auto;
    }
    .slider_btns .slider_btn {
        width: 40px;
        height: 40px;
        border-radius: 40px;
    }
    .slider_btns .slider_btn:hover {
        opacity: .75;
    }
    .slider_btns .slider_btn::after {
        width: 5px;
        height: 5px;
        border-right: 1px solid #000;
        border-bottom: 1px solid #000;
    }
}

@media screen and (max-width: 500px){
    #main_banner {
        /* height: 240px; */
    }
    #main_banner .slider_container .slide img {
        /* height: 240px; */
    }
}

/* css fixes */
.cRSspv .nav-style-1,
.hzhAqI .nav-style-1 {
    display: flex;
    justify-content: center;
}




.footer_menu ul{
    display: flex;
    justify-content: center;
    gap: 10px;
}

.footer_menu ul li{
    list-style: none;
}

.footer_menu ul li:after{
    content: "|";
    margin: 0 10px;
}

.footer_menu ul li:last-child:after{
    content: "";
    margin: 0;
}

.footer_menu ul li a{
    color: #000;
    text-decoration: none;
    font-size: 14px;

    transition: all .3s;
}

.footer_menu ul li a:hover{
    opacity: .75;
}


/* order-flow */

.order-flow .flow-title{
    padding: 12px 0 4px;
    border-bottom: 1px solid #073f80;
    margin-bottom: 22px;
    color: #073f80;
}

.order-flow li{
    position: relative;
    display: flex;
    flex-direction: column;
    /* align-items: center; */
    margin-bottom: 30px;
    font-size: 14px;
}

/* .order-flow li .subtitle{
    background-color: #073f80;
    color: #fff;
    padding: 2px 18px;
    border-radius: 14px;
    font-size: 16px;
    margin-bottom: 10px;
    font-family: "Shippori Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Sawarabi Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
} */

.order-flow li .subtitle{
    color: #073f80;
    padding: 2px 8px;
    font-weight: bold;
    font-size: 18px;
    margin-bottom: 10px;
    font-family: "Shippori Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Sawarabi Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.order-flow li .subtext{
    font-size: 14px;
    padding-left: 35px;
}

.order-flow li .numbering{
    background-color: #073f80;
    color: #fff;
    padding: 1px 9px;
    border-radius: 20px;
    font-size: 16px;
    margin-bottom: 10px;
    font-family: "Shippori Mincho", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Sawarabi Mincho", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
}

.order-flow li:after{
    content: "";
    width: 0;
    height: 0;
    border: 10px solid transparent;
    border-top: 10px solid #073f80;
    position: absolute;
    right: auto;
    left: 60px;
    margin: auto;
    bottom: -32px;
}

.order-flow li:last-child:after{
    display: none;
}

/* entry form */

.p-contact-form__form-content .wpcf7-form .form-item.name-form dt:not(:nth-of-type(1)) {
    width: 15%;
}
@media screen and (max-width: 767px){
    .p-contact-form__form-content .wpcf7-form .form-item.name-form dt {
        width: 100%;
    }
}
.p-contact-form__form-content .wpcf7-form .form-item.name-form dd {
    max-width: 174px;
}
@media screen and (max-width: 767px){
    .p-contact-form__form-content .wpcf7-form .form-item.name-form dd {
        width: 100%;
        max-width: 100%;
    }
}
.p-contact-form__form-content .wpcf7-form .form-item.gender-form input[name="your-gender"] {
    box-shadow: none;
}
.p-contact-form__form-content .wpcf7-form .form-item.age-form dd select {
    max-width: 250px;
}


.has-indent {
    padding-left: 20px;
}