@charset "UTF-8";

* {
    margin: 0;
    padding: 0;
}

body {
    margin: 2.5vw;
    box-sizing: border-box;
    background-color: #ca2500;    
}

header {    
    border: 0.2vw solid;
    border-color: #fff #fff transparent #fff;
}

h1 {
    display: flex;
    font-family: 'Zen Kaku Gothic New', sans-serif;
}

/* ロゴ画像 */
header h1 a {
    width: 10%;
    background-color: blue;
}

header h1 a img {
    width: 100%;
    height: 100%;
    padding: 0 30% 0;
    background-color: #fff;
}

.title {
    margin: auto 20vw auto 35vw;
    letter-spacing: 0.3em;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1.3vw;
    color: #fff;
}

header nav ul {
    display: flex;
    margin: 0 -0.1vw;
    list-style-type: none;
}

header nav ul li {
    width: 100%;
    height: 4vw;
    line-height: 3vw;
    text-align: center;
    letter-spacing: 0.2em;
    border: solid #fff;
    border-width: 0.2vw 0.1vw 0.2vw 0.1vw;
}

header nav ul li:nth-child(4) {
    border-color: #fff;
}

header nav ul li a {
    display: block;
    padding: 0.5vw;
    text-decoration: none;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1.3vw;
    color: #fff;
    cursor: default;
}

header nav ul li:nth-of-type(3) a,
header nav ul li:nth-of-type(4) a {
    cursor: pointer;
}
header nav ul li:nth-of-type(3) a:hover,
header nav ul li:nth-of-type(4) a:hover {
    color: #ca2500;
    background-color: #fff;
}

.this_page::before {
    content: '●';
    margin-left: -1.2em;
    color: #fff;
}

.page_title {
    margin-top: -0.3vw;
    border: 0.20vw solid;
    border-color: #fff;
}

.page_title h1 {
    width: 8.4vw;
    padding: 5vw 0;
    margin-left: 5vw;
    letter-spacing: 0.2em;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 4vw;
    color: #fff;
}

/* コンタクト */
.main_contents {
    margin: -0.15vw auto 0;
    padding: 5vw;
    border: 0.2vw solid #fff;
}

.main_contents h2 {
    text-align: center;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 2.5vw;
    color: #fff;
}

.main_sentence {
    margin: 1vw auto 5vw;
    text-align: center;
    white-space: pre-wrap;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1.2vw;
    color: #fff;
}

/* フォーム */
.contact_parent {
    margin-bottom: 7vw;
}

h3 {
    position: relative;
    margin: 0 10vw 2vw;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 2.2vw;
    font-weight: 500;
    color: #fff;
}

h3::after {
    position: absolute;
    top: 3.3vw;
    left: 0;
    content: '';
    width: 64.5vw;
    height: 0.1vw;
    background-color: #fff;
}

.form {
    display: flex;
    margin: 3vw 10vw;
    line-height: 3vw;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1.5vw;
    color: #fff;
}

input {
    margin: auto 0 auto auto;
    padding: 0.1vw 0 0.1vw 1vw;
    width: 43vw;
    height: 2.5vw;
    border: 0.1vw solid #fff;  
    border-radius: 0.5vw;
    font-size: 1.5vw;
}

select {
    margin: auto 0 auto auto;
    padding: 0.3vw 0 0.1vw 0.5vw;
    width: 44.2vw;
    height: 3vw;
    border: 0.1vw solid #fff;  
    border-radius: 0.5vw;
    font-size: 1.5vw;
}

.area {
    font-weight: 900;
}

.date {
    margin-left: 13.3vw;
    width: 15vw;
}

.radio_flex {
    display: flex;
    margin: 3vw 10vw;
    justify-content: space-between;
}

.radio_parent {
    width: 47%;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1.35vw;
    color: #fff;
}

.radio_button {
    display: flex;
    align-items: center;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1vw;
    color: #fff;
}

.radio_button input {
    width: 4%;
    margin-right: 1.5vw;
}

.radio_chara {
    margin-left: -1.25vw;
    margin-right: 1.25vw;
}

textarea {
    border-radius: 1vw;
}

.res {
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1.3vw;
    color: #fff;
}

.res .radio_button {
    width: 30vw;
}

.res ul {
    margin: -2vw 11.5vw 0;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1vw;
    color: #fff;
}

.res ul li:nth-child(4) {
    white-space: pre-wrap;
}

.submit {
    margin: 0 auto ;
    width: 30vw;
    height: 5vw;
    border: none;
    letter-spacing: 0.5em;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1.7vw;
    color: #008cff;
    background-color: #fff;
}

/* フッター */
footer {
    margin-top: 5vw;
    border: 0.1vw solid #fff;    
}

.footer_parent {
    display: flex;
}

.footer_parent ul {
    display: flex;    
    margin-left: auto;
    margin-right: auto;
    width: 100%;
    justify-content: space-around;  
    list-style-type: none;
}

.footer_parent ul li {
    text-align: center;    
    width: 100%;
    line-height: 3vw;
    border: 0.1vw solid #fff;
}

.this_page::before {
    content: '●';
    margin-left: -1.2em;
    color: #fff;
}

.footer_parent ul li a {
    display: block;
    padding: 0.5vw;
    letter-spacing: 0.2em;
    text-decoration: none;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1.3vw;
    color: #fff;
}

.footer_parent ul li a:hover {
    color: #ca2500;
    background-color: #fff;
}

.Copyright {
    display: block;
    padding: 0.5vw;
    letter-spacing: 0.1em;
    font-family: 'Zen Kaku Gothic New', sans-serif;
    font-size: 1.2vw;
    color: #fff;
}   