html {
  width: 100%;
  height: 100%;
}

body {
  width: 100%;
  margin: 0;
  padding: 0;
  font-size: 14px;
  font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Yu Gothic", YuGothic, "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
  color: #4d4d4d;
  background-color: #fff;
  -webkit-text-size-adjust: 100%;
}


header .logo {
    width: 200px;
    height: 47px;
  display: block;
margin:20px auto;
  background: url(../images/common/logo@2x.png);
  background-size: 100% 100%;
  text-indent: 104%;
  white-space: nowrap;
  overflow: hidden;
}

@media print, screen and (min-width: 769px) {
  header .logo {
    width: 280px;
    height: 66px;
  }
}


form {
  margin: 0;
  padding: 0;
}

input,
button,
textarea {
  border-radius: 0;
}

input[type="text"],
input[type="email"],
input[type="submit"] {
  -webkit-appearance: none;
}

table.base {
  display: block;
  width: 100%;
  border-top: 2px solid #a60312;
  border-bottom: 2px solid #a60312;
  margin:50px auto 20px;
  line-height:30px;
}

table.base .f_big {
  font-size:30px;
  font-weight:bold;
}

@media print, screen and (min-width: 769px) {
  table.base {
    display: table;
    border-collapse: collapse;
  max-width: 1200px;
  }

table.base th {
  border-bottom: 1px solid #a60312;
  font-size:18px;
}


table.base td {
  border-bottom: 1px solid #a60312;
  border-left: 1px solid #a60312;
}

}

table.base tbody {
  display: block;
  width: 100%;
}




@media print, screen and (min-width: 769px) {
  table.base tbody {
    display: table-row-group;
  }
}

table.base tbody tr {
  display: block;
}

@media print, screen and (min-width: 769px) {
  table.base tbody tr {
    display: table-row;
  }
  table.base tbody tr:nth-child(even) td {
    background: #fff;
  }
  table.base tbody tr:nth-child(even) th {
    background: #fff;
  }
}

table.base tbody th,
table.base tbody td {
  display: block;
  padding: 8px 3%;
}

@media print, screen and (min-width: 769px) {
  table.base tbody th,
  table.base tbody td {
    display: table-cell;
  }
}

table.base tbody th {
  display: block;
  color: #000;
background-color:#eee;

  text-align: left;
  width:94%;
}

@media print, screen and (min-width: 769px) {
table.base tbody th {
  display: block;
  color: #000;
  background: #fff;
  text-align: left;
  width:30%;
}
}


@media print, screen and (min-width: 769px) {
  table.base tbody th {
    display: table-cell;
  }
}




table.base input[type="text"] ,
table.base input[type="email"] {
height: 30px;
border:solid #ddd 1px;
    margin: 5px auto;
}

table.base select{
height: 30px;
border:solid #ddd 1px;
    margin: 5px auto;
}

table.base textarea {
border:solid #ddd 1px;
    margin: 5px auto;
}

textarea::placeholder {
  color: #666;
  font-size: 14px;
  font-style: italic;
}

.red {
	color:#f00;
}

img.none {
    display: block;
	width:auto;
    margin: 0;
    padding: 0;
}


@media screen and (max-width: 768px) {
table.base textarea {
width: 90%;
height: 5em;
}

table.base input[type="text"],
table.base input[type="email"] {
width: 90%;
}
}



input:focus {
	background-color: #F7CFE1;
}

textarea:focus {
	background-color: #F7CFE1;
}

select:focus {
	background-color: #F7CFE1;
}

h1 {
	color:#a60312;
	font-size:30px;
	text-align:center;
}

@media print, screen and (max-width: 768px) {
	h1 {
		font-size:18px;
	}
}

h2 {
  font-size: 22px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-weight: 200;
  color: #ffffff;
  margin-top: 50px;
  margin-bottom: 12px;
  letter-spacing: 4px;
  text-align: center;
  background:#a60312;
}

.submit-button {
  width:80%;
  max-width:300px;
  display:block;
  font-size:16px;
  text-align:center;
  padding:10px;
  background:#a60312;
  color:#fff;
  line-height:1em;
  border:none;
  margin:20px auto;
}
.submit-button:hover {
  color:#fff;
  background:#000000;
}


@media screen and (max-width: 769px) {

table.base {
  display: block;
  width: 100%;
  border-top: 2px solid #a60312;
  border-bottom: 2px solid #a60312;
  margin:50px auto 20px;
  line-height:30px;
}

table.base tbody tr {
  display: block;
  width: 100%;
}


table.base tbody th,
table.base tbody td {
  width: 94%;
  display: block;
  padding: 8px 3%;
}
}