@charset "UTF-8";
/*body, form, aタグなどの設定 */

:root {
    --brand-color: black;;
    --main-bg-color: #e6d2b5;
    --sub-bg-color: #FFFBE5;
    --color-black: black;
}

*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
html {
    box-sizing:border-box;
    position: relative;
    font-size:12px;
}

body{
    position: relative;
    font-family: "ヒラギノ角ゴ Pro W3", Hiragino Kaku Gothic Pro," メイリオ", Meiryo, Osaka," ＭＳ Ｐゴシック", MS PGothic, sans-serif;
    margin:0;
    padding:0;
    font-size:16px;
    font-weight:300;
    letter-spacing:.01em;
    line-height:1.6;
    color: black;
}
a{
    text-decoration: none;
    -webkit-transition: all 0.2s linear;
    transition: all 0.2s linear;
}
a:hover{
    opacity:0.8;
}
fieldset{
    border: none;
    margin:0 0 1em 0;
    padding:0;
}

header, footer{
    width: 100%;
}


h1, h2, h3, h4, h5, h6 {
    font-weight: 300;
    letter-spacing: -.1rem;
    margin-bottom: 1.0rem;
    margin-top: 0;
}

h3 {
    font-size: 2rem;
    line-height: 1.2;
}

fieldset, input, select, textarea {
    margin-bottom: 0.5rem;
}

.button, button, input[type='button'], input[type='reset'], input[type='submit'] {
}

input[type='email'], input[type='number'], input[type='password'], input[type='search'], input[type='tel'], input[type='text'], input[type='url'], input[type='color'], input[type='date'], input[type='month'], input[type='week'], input[type='datetime'], input[type='datetime-local'], input:not([type]), textarea, select {
    background-color: white;
    border: 0.1rem solid #d1d1d1;
    border-radius: .4rem;
    box-shadow: none;
    box-sizing: inherit;
    padding: .6rem 1.0rem;
    width: 100%;
    font-size: 1em;
}

input[type='email'], input[type='number'], input[type='password'], input[type='search'], input[type='tel'], input[type='text'], input[type='url'], input[type='color'], input[type='date'], input[type='month'], input[type='week'], input[type='datetime'], input[type='datetime-local'], input:not([type]), select {
    height: 2.8rem;
}

.button, button, input[type='button'], input[type='reset'], input[type='submit'] {
    background-color: var(--brand-color);
    border: 0.1rem solid var(--brand-color);
    border-radius: .4rem;
    color: #fff;
    font-size: 1.2rem;
    cursor: pointer;
    display: inline-block;
    font-weight: 700;
    height: 2.8rem;
    line-height: 2.8rem;
    padding: 0 3.0rem;
    text-align: center;
    text-decoration: none;
    text-transform: uppercase;
    white-space: nowrap;
    margin-bottom: 0.5em;
}

label {
    margin-bottom: 0rem;
    display: inline-block;
    font-weight: bold;
}
label:has(input) {
    font-weight: normal;
    margin-right: 0.5rem;
}

div.checkbox{
    display: inline-block;
    margin-right:1em;
}

legend {
    display: block;
    width: 100%;
    font-weight: 700;
}

hr {
    border-top: 0.1rem dotted gray;
    margin: 1.0rem 0;
}

table {
    border-spacing: 0;
    width: 100%;
}
td, th {
    border-bottom: 0.1rem solid #cccccc;
    padding: 1rem 1rem;
    text-align: left;
    word-break: break-all;
}

@media screen and (max-width: 640px) {
    td, th {
        padding: 1rem 0.3rem;
    }
}

section {
    clear: both;
}

pre {
    margin:0;
    white-space: pre-wrap;
    word-break: break-word;
}