@charset "UTF-8";
/*
Theme Name: Hirano clinic Original Theme
Description: Hirano clinic Original templete.
Author: https://besties.co.jp
Version: 1.0.0
*/





/*------------------------------------*\
    $CONTENTS
\*------------------------------------*/
/**
 * CONTENTS............目次
 * GLOBAL-VARIABLES....グローバル変数
 * RESET...............デフォルトの設定
 * FONT-FACE...........ブランドフォントの設定
 * BASIC-PATTERN.......基本パターン
 * VARIABLE-HIDE.......可変幅による表示非表示
 */





/*------------------------------------*\
    $GLOBAL-VARIABLES
\*------------------------------------*/
:root {
    /**
     * Color set
     */
    --black     : #444444;
    --white     : #FFFFFF;
    --gray      : #7e7e7e;
    --brown     : #d5bca7;
    --green     : #8bcd6b;
    --lightGreen: #f0ffe8;

    --lightGreen70: rgba(240, 255, 232, .7);
    --lightGreen80: rgba(240, 255, 232, .8);

    /**
     * Font set
     */
    --font  : 'Noto Sans JP', sans-serif;
    --fontJp: 'Noto Sans JP', sans-serif; /* 400, 500, 700 */
    --fontEn: 'Josefin Sans', sans-serif; /* 600 */

    /**
     * Types of easing
     */
    --linear        : cubic-bezier(0.250, 0.250, 0.750, 0.750);
    --easeInSine    : cubic-bezier(0.47,  0,     0.745, 0.715);
    --easeOutSine   : cubic-bezier(0.39,  0.575, 0.565, 1    );
    --easeInOutSine : cubic-bezier(0.445, 0.05,  0.55,  0.95 );
    --easeInQuad    : cubic-bezier(0.55,  0.085, 0.68,  0.53 );
    --easeOutQuad   : cubic-bezier(0.25,  0.46,  0.45,  0.94 );
    --easeInOutQuad : cubic-bezier(0.455, 0.03,  0.515, 0.955);
    --easeInCubic   : cubic-bezier(0.55,  0.055, 0.675, 0.19 );
    --easeOutCubic  : cubic-bezier(0.215, 0.61,  0.355, 1    );
    --easeInOutCubic: cubic-bezier(0.645, 0.045, 0.355, 1    );
    --easeInQuart   : cubic-bezier(0.895, 0.03,  0.685, 0.22 );
    --easeOutQuart  : cubic-bezier(0.165, 0.84,  0.44,  1    );
    --easeInOutQuart: cubic-bezier(0.77,  0,     0.175, 1    );
    --easeInQuint   : cubic-bezier(0.755, 0.05,  0.855, 0.06 );
    --easeOutQuint  : cubic-bezier(0.23,  1,     0.32,  1    );
    --easeInOutQuint: cubic-bezier(0.86,  0,     0.07,  1    );
    --easeInExpo    : cubic-bezier(0.95,  0.05,  0.795, 0.035);
    --easeOutExpo   : cubic-bezier(0.19,  1,     0.22,  1    );
    --easeInOutExpo : cubic-bezier(1,     0,     0,     1    );
    --easeInCirc    : cubic-bezier(0.6,   0.04,  0.98,  0.335);
    --easeOutCirc   : cubic-bezier(0.075, 0.82,  0.165, 1    );
    --easeInOutCirc : cubic-bezier(0.785, 0.135, 0.15,  0.86 );
    --easeInBack    : cubic-bezier(0.6,  -0.28,  0.735, 0.045);
    --easeOutBack   : cubic-bezier(0.175, 0.885, 0.32,  1.275);
    --easeInOutBack : cubic-bezier(0.68, -0.55,  0.265, 1.55 );

}





/*------------------------------------*\
    $RESET
\*------------------------------------*/
html {
    background: var(--white);
    color: var(--black);
    font-family: var(--font);
    font-size: 62.5%;
    font-weight: 400;
    -webkit-text-size-adjust: 100%;
}

* {
    margin: 0;
    padding: 0;
    border: 0;
    box-sizing: border-box;
}

picture, img {
    display: block;
    width: auto;
    height: auto;
    max-width: 100%;
    pointer-events: none;
}

ol, ul { list-style: none }

table {
    border-collapse: collapse;
    border-spacing: 0;
}

caption, th {
    text-align: left;
    font-weight: 400;
}

h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: 400;
}

a {
    color: inherit;
    text-decoration: none;
}

q:before, q:after { content: "" }

::before, ::after { box-sizing: border-box }

:focus { outline: none }

::placeholder { color: var(--gray) }

input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
    -webkit-box-shadow: 0 0 0 1000px var(--white) inset !important;
    -webkit-text-fill-color: inherit !important;
}
input::-webkit-calendar-picker-indicator { display: none }

input, select, textarea, button {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    outline: 0;
    padding: 0;
    margin: 0;
    background : none;
    border: none;
    border-radius: 0;
    color: inherit;
    font-family: inherit;
    box-sizing: border-box;
}
input { -webkit-tap-highlight-color: rgba(0, 0, 0, 0) }
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button,
input[type=date]::-webkit-outer-spin-button,
input[type=date]::-webkit-inner-spin-button {
        -webkit-appearance: none;
        margin: 0;
}
input[type=submit],
input[type=button],
input[type=image],
button {
    appearance: button;
    display: block;
    cursor: pointer;
}
input[type=submit]::-webkit-search-decoration,
input[type=button]::-webkit-search-decoration { display: none }
input[type=submit]:focus,
input[type=button]:focus { outline-offset: -2px }





/*------------------------------------*\
    $BASIC-PATTERN
\*------------------------------------*/
.wrap { overflow: hidden }





/*------------------------------------*\
    $VARIABLE-HIDE
\*------------------------------------*/
/* Aspect ratio */
@media screen and (orientation: landscape) {
    .portrait { display: none !important }
}
@media screen and (orientation: portrait) {
    .landscape { display: none !important }
}

/* iPad */
@media screen and (min-width: 768px) {
    .less768 { display: none !important }
}
@media screen and (max-width: 767px) {
    .over768 { display: none !important }
}

/* iPad Pro */
@media screen and (min-width: 1024px) {
    .less1024 { display: none !important }
}
@media screen and (max-width: 1023px) {
    .over1024 { display: none !important }
}

/* laptop */
@media screen and (min-width: 1280px) {
    .less1280 { display: none !important }
}
@media screen and (max-width: 1279px) {
    .over1280 { display: none !important }
}





