
* {
    box-sizing: border-box;
}

/*
    1rem = 10pxになるように設定。 
*/
:root{
    font-size: 62.5%;
    scroll-behavior: smooth;
}

@font-face{
    font-family: "maru-gothic";
    src: local('HiraMaruProN-W4'),
         local('HGMaruGothicMPRO');
}
/*
@font-face{
    font-family: "mincho";
    font-weight: "normal";
    src: local('HiraMinProN-W3'),
         local('游明朝体'),
         local('Yu Mincho'),
         local('ＭＳ 明朝');
}
@font-face{
    font-family: "mincho";
    font-weight: "bold";
    src: local('HiraMinProN-W6'),
         local('游明朝体'),
         local('Yu Mincho'),
         local('ＭＳ 明朝');
} 
*/
@font-face{
    font-family: "maru-folk-medium";
    font-display: optional;
    src: url('Maru Folk Medium');
} 


body{
    color: #000;
    font-family: "ヒラギノ明朝 ProN", "游明朝体", "Yu Mincho", "ＭＳ 明朝", serif;
}

ul, ol, dl, dd{
    margin: 0;
    padding: 0;
    list-style: none;
}
dl, dd{
    font-size: 1.6rem;
    line-height: 1.5;
}

h1, h2, h3, h4, h5, h6{
    font-size: 1.6rem;
    margin: 0;
    font-weight: inherit;
    line-height: 1.5;
}

p{
    font-size: 1.6rem;
    line-height: 1.5;
    margin: 0;
}

span{
    font-size: 1.6rem;
}
/* p:has(small){
    line-height: 1.2;
} */

li{
    font-size: 1.6rem;
}

a{
    color: #03c;
}
a:hover{
    color: #f60;
    transition: color 0.3s;
}

/* polyfill用 */
dialog{
    position: fixed;
}
dialog[role=dialog] {
    top: 20px;
    height: calc(100vh - 40px);
    overflow-y: auto;
}

button{
    background-color: #fff;
    border: 1px solid #efefef;
    border-radius: 5px;
    cursor: auto;
}

address{
    font-style: normal;
}

label{
    font-size: 1.6rem;
}

input[type="text"],input[type="tel"],input[type="email"]{
    font-size: 1.6rem;
    padding: 0.5em;
    width: 100%;
    height: 36px;
    border: 1px solid #ddd;
    border-radius: 3px;
    box-shadow: inset 1px 4px 4px -6px rgba(0,0,0,0.3);
}

/* input[type="radio"]{
    margin-right: 5px;
} */

textarea{
    font-size: 1.6rem;
    line-height: 1.5;
    padding: 0.5em;
    width: 100%;
    height: 150px;
    border: 1px solid #ddd;
    border-radius: 3px;
    box-shadow: inset 1px 4px 4px -6px rgba(0,0,0,0.3);
}

figure{
    margin: 0;
}

img{
    width: 100%;
    height: auto;
    vertical-align: middle;
}

/* 医院の声 */
img[src*="voice-of-clinic"]{
    border: 1px solid #3d84d4;
}

iframe{
    width: 100%;
    border-width: 0;
}