@charset "UTF-8";
/* CSS Document */
html {
  font-size: 100%;
  /* 16px */
  line-height: 1.2em; }

body {
  font-family: Helvetica, "游ゴシック", "Yu Gothic", sans-serif;
  padding-top: 100px; }

.clearfix:after {
  content: " ";
  display: block;
  visibility: hidden;
  height: 0.1px;
  font-size: 0.1em;
  line-height: 0;
  clear: both; }

.t_left {
  text-align: left !important; }

.t_right {
  text-align: right !important; }

.t_center {
  text-align: center !important; }

.f_left {
  float: left; }

.f_right {
  float: right; }

.clear {
  clear: both; }

.none {
  display: none !important; }

.view {
  display: block !important; }

img {
  display: block;
  width: 100%;
  vertical-align: bottom; }

a:hover img {
  opacity: 0.55;
  filter: alpha(opacity=55);
  -ms-filter: "alpha( opacity=55 )";
  border: 0; }

a {
  text-decoration: none;
  border-bottom: 1px dashed #938152;
  color: #282828; }

input[type="text"],
input[type="email"],
input[type="url"],
input[type="tel"],
input[type="number"],
input[type="search"],
input[type="date"],
select,
textarea {
  border: 1px solid #666;
  cursor: pointer;
  font-size: 1em;
  padding: 0.3em 0.2em 0.2em 0.2em;
  margin-bottom: 0.3em; }

select {
  height: 3em;
  padding: 0;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }

input[type="submit"],
input[type="button"] {
  border: 1px solid #666;
  cursor: pointer;
  border-radius: 5px;
  font-size: 1.1em;
  font-weight: bold;
  color: #333;
  background-color: #efefef;
  padding: 0.5em 0.4em 0.4em 0.4em; }

/* チェックボックスボタン化 ======================= */
.check-group {
  width: 70%; }

.check-group input {
  display: none; }

.check-group label {
  font-size: 1em;
  display: block;
  cursor: pointer;
  padding: 0.9em 1em 0.8em 1em;
  border: solid 1px #666;
  margin-top: 0;
  margin-bottom: -1px;
  background: #fff;
  width: 100%;
  text-align: center; }

.check-group label:first-of-type {
  border-radius: 5px 5px 0 0;
  margin-top: 0.2rem; }

.check-group label:last-of-type {
  border-radius: 0 0 5px 5px;
  margin-bottom: 0.2rem; }

.check-group.clum2 label {
  width: 50%;
  float: left; }

.check-group.clum3 label {
  width: 33.3%;
  float: left; }

.check-group.clearfix label:nth-of-type(1) {
  border-radius: 5px 0 0 0;
  margin-top: 0.2rem; }

.check-group.clearfix label:nth-of-type(2) {
  border-radius: 0 5px 0 0;
  margin-top: 0.2rem; }

.check-group.clearfix label:nth-last-of-type(2) {
  border-radius: 0 0 0 5px;
  margin-bottom: 0.2rem; }

.check-group.clearfix label:nth-last-of-type(1) {
  border-radius: 0 0 5px 0;
  margin-bottom: 0.2rem; }

.check-group.clearfix label:nth-of-type(odd) {
  border-right: 0; }

.check-group.hori {
  margin: 0 auto; }

.check-group.hori label {
  border-right: 0;
  margin: 0; }

.check-group.hori label:first-of-type {
  border-radius: 5px 0 0 5px; }

.check-group.hori label:last-of-type {
  border-radius: 0 5px 5px 0;
  border-right: 1px solid #666; }

.check-group input:checked + label {
  background: #efefef; }

header {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  border-bottom: 1px solid #ccc;
  background-color: #fff;
  font-size: 1.2em; }

header > a.site_id {
  display: block;
  float: left;
  width: auto;
  margin: 12px 0 0 2.5%; }

.menu_button {
  display: block;
  width: 4vw;
  /*height: 4vw;*/
  height: 45px;
  float: right;
  cursor: pointer; }

.menu_button img {
  width: 3vw;
  min-width: 35px;
  margin: 0.5vw;
  margin: 5px 5px 0 0; }

.menu_list {
  display: none;
  position: fixed;
  /*top: 4vw;*/
  top: 45px;
  left: 0;
  width: 100%;
  margin: 0;
  padding: 0;
  list-style: none;
  border-top: 1px solid #ccc;
  background-color: #fff;
  height: 100vh;
  background-color: rgba(0, 0, 0, 0.8); }

.menu_list li {
  display: block;
  width: 100%;
  text-align: center;
  border-bottom: 1px solid #ccc;
  background-color: #fff; }

.menu_list li a {
  display: block;
  width: 100%;
  text-align: center;
  padding: 1em 0 0.85em 0;
  text-decoration: none;
  border: none; }

div.footer {
  width: 100%;
  margin-top: 100px;
  /*background-color: #eeeeee;*/
  border-top: 1px  solid #999999; }

div.footer .inner {
  margin: 20px 0 40px 0;
  text-align: center; }

.contents {
  width: 95%;
  margin: 0 auto; }

.contents .inner {
  width: 95%;
  margin: 0 auto; }

/* トップページ メニュー一覧 */
.top_menu {
  width: 95%;
  margin: 0 auto; }

.top_menu h2 {
  width: 100%;
  font-size: 1rem;
  margin: 0 auto;
  padding: 2px 0 2px 3px;
  border-bottom: 1px  dotted #999999; }

.top_menu p {
  margin: 10px;
  line-height: 1.5em; }

.top_menu .t_right {
  border-bottom: 1px  dotted #999999;
  padding-bottom: 3px;
  margin-bottom: 25px;
  line-height: 1.5em; }

/* 蜈ｱ騾・*/
a {
  color: #666666;
  font-weight: normal;
  text-decoration: none;
  border-width: 0px;
  border-bottom-width: 1px;
  border-style: dotted;
  border-color: #cccccc; }

a:hover {
  color: #aaaaaa; }

h1 {
  /* width: 100%; */
  font-size: 1.2em;
  margin: 0 auto 30px auto;
  padding: 0.2em 0 0.2em 0.2em;
  border-left: 6px solid #999999;
  border-bottom: 1px  solid #999999; }

form {
  text-align: center; }

.error {
  text-align: center;
  margin: 20px auto;
  color: #cc0000; }

.complete_message {
  margin: 200px auto;
  text-align: center; }

table.list {
  width: 100%;
  margin: 5px 0;
  border-collapse: collapse;
  border-spacing: 0;
  border-top: 1px solid #999999; }

table.sortable {
  border-top: none;
  border-bottom: 1px dotted #999999; }

table.list th {
  border-bottom: 1px solid #999999;
  background-color: #ededed;
  padding: 0.5em;
  font-size: 10px; }

table.list td {
  border-bottom: 1px dotted #999999;
  border-right: 1px dotted #999999;
  padding: 0.7em 1em;
  text-align: center; }

table.list td:last-of-type {
  border-right: none; }

table.list tr:last-of-type {
  border-bottom: 1px solid #999999; }

table.sortable td {
  border-bottom: none; }

table.list form {
  display: inline;
  margin: 0;
  padding: 0; }

table.list input[type=submit] {
  font-size: 1em;
  padding: 0.3em 0.2em 0.2em 0.2em; }

table.list .img img {
  width: 100%; }

table.list tr.red {
  color: #ff0000;
  background-color: #F6D5D5; }

ul#order_list {
  list-style-type: none;
  cursor: hand;
  cursor: pointer;
  margin: 5px 0 5px 0;
  padding: 0;
  /*border-top: 1px dotted #999999;*/
  /* 隕句・縺励′縺ｪ縺・ｴ蜷・*/ }

ul#order_list li {
  margin: 0;
  padding: 0; }

ul#order_list table {
  margin: 0 auto; }

table.input {
  width: 100%;
  margin: 0 auto 40px auto;
  border-collapse: separate;
  border-spacing: 5px; }

table.input th {
  width: 15%;
  min-width: 120px;
  background-color: #ededed;
  padding: 1em; }

table.input td {
  padding: 1em 2em;
  text-align: left; }

table.input th span.require {
  display: block;
  background-color: #990000;
  color: #fff;
  padding: 0.1em;
  font-size: 0.7em;
  width: 3em;
  margin: 0.3em auto 0 auto;
  border-radius: 0.3em; }

table.input td .caution {
  font-size: 0.8em;
  color: #000099; }

table.input td textarea {
  width: 80%; }

/* selectbox 横並び */
.select_date select {
  display: inline-block;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content; }

/* パンくずリスト */
.topic_path {
  position: fixed;
  top: 4vw;
  left: 0;
  width: 100%;
  background-color: #fff;
  padding: 0.5vw 0 0.5vw 40px;
  /*margin: -25px 0 40px 30px;*/
  font-size: 14px;
  z-index: 1; }

.topic_path a {
  cursor: pointer; }

.topic_path span {
  font-weight: bold; }
