*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  vertical-align:middle;
  color:#444444;
}

body{
  font-size:15px;
  font-family:"Helvetica Neue",Arial,"Hiragino Kaku Gothic ProN","Hiragino Sans",Meiryo,sans-serif;
}

input,textarea{
  font-size:15px;
  font-family:inherit;
}

h1{ font-size:1.8rem; }
h2{ font-size:1.2rem; }
h3{ font-size:1.0rem; }

a{
  text-decoration:none;
}

a:hover{
  color:#777777;
}

ul{
  list-style:none;
}

input[type=text], input[type=number]{
  padding:5px;
}

.attention{
  color:#d90000;
  font-size:0.8rem;
}

.wrapper{
  width:100%;
  max-width:1100px;
  margin:0 auto;
}

.font05{ font-size:0.5rem; }
.font06{ font-size:0.6rem; }
.font07{ font-size:0.7rem; }
.font08{ font-size:0.8rem; }
.font09{ font-size:0.9rem; }

#header{
  position:fixed;
  top:0;
  left:0;
  width:100%;
  padding:10px;
  background-color:#ffffff;
  z-index:1;
}

#header *{
  vertical-align:bottom;
}

#header_title{
  float:left;
  font-weight:bold;
}

#header_title h1, #header_title span, #header_title p{
  display:inline-block;
}

#header_title h1 a, #header_title span a{
  color:#ff8000;
  font-size:1.8rem;
  letter-spacing:-0.2rem;
}

#header_title h1 a span, #header_title span a span{
  color:#ff8000;
  font-size:1.0rem;
  letter-spacing:-0.2rem;
  margin:0 5px 0 0;
}

#header_title p{
  margin:0 0 0 15px;
}

#header_menu{
  float:right;
}

#header_menu p span{
  color:#ff8000;
  font-size:1.8rem;
  font-weight:bold;
  margin:0 5px;
}

#header_menu li{
  display:inline-block;
  margin:0 0 0 10px;
}

#body{
  width:100%;
  float:left;
  margin:80px 0 0 0;
}

#body_content{
  width:calc(100% - 320px);
  float:right;
  padding:0 0 0 25px;
}

.jobs{
  position:relative;
  width:100%;
  float:left;
  margin:0 0 10px 0;
  padding:10px;
  border:1px solid #cccccc;
  border-radius:10px;
}

.jobs span.ts{
  position:absolute;
  top:10px;
  right:10px;
  font-size:0.8rem;
}

.jobs ul{
  display:inline-block;
  margin:0 5px 0 0;
}

.jobs li{
  display:inline-block;
  margin:0 2px 5px 0;
  padding:2px 6px;
  border-radius:5px;
  font-size:0.8rem;
  background-color:#eeeeee;
}

.jobs ul.pref li{ background-color:#ff8000; }
.jobs ul.pref li a{ color:#ffffff; }

.jobs h2 a, .jobs .ad a{
  text-decoration:underline dotted;
  -webkit-text-decoration:underline dotted;
}

.jobs p.salary{
  font-weight:bold;
  font-size:0.8rem;
}
.jobs p.salary span{
  font-size:1.2rem;
  margin:0 0 0 5px;
}

.jobs .address{
  font-size:0.9rem;
}

.jobs p.message{
  background-color:#eeeeee;
  margin:5px 0 0 0;
  padding:5px;
  border-radius:5px;
  font-size:0.8rem;
  word-wrap:break-word;
}

.jobs .link{
  float:right;
  margin:10px 0 0 0;
  line-height:1.0rem;
}

.jobs .link .material-icons{
  color:#ff8000;
  font-size:1.0rem;
}

.jobs .link .lead{
  color:#ff8000;
  font-size:0.8rem;
}

.jobs .link span a{
  font-weight:bold;
}

/* job */
.job{
  position:relative;
  width:100%;
  float:left;
  margin:0 0 10px 0;
  padding:10px;
  border:1px solid #cccccc;
  border-radius:10px;
}

.job span.ts{
  position:absolute;
  top:10px;
  right:10px;
  font-size:0.8rem;
}

.job ul{
  display:inline-block;
  margin:0 5px 0 0;
}

.job li{
  display:inline-block;
  margin:0 2px 5px 0;
  padding:2px 6px;
  border-radius:5px;
  background-color:#eeeeee;
  font-size:0.9rem;
}

.job ul.pref li{ background-color:#ff8000; }
.job ul.pref li a{ color:#ffffff; }

.job p.salary{
  font-weight:bold;
  font-size:0.8rem;
}
.job p.salary span{
  font-size:1.6rem;
  margin:0 5px;
}

.job .address{
  font-size:1.0rem;
}

.job p.message{
  background-color:#eeeeee;
  margin:5px 0 0 0;
  padding:5px;
  border-radius:5px;
  font-size:0.8rem;
  word-wrap:break-word;
}

.job .content{
  margin:10px 0 0 0;
  padding:10px 0 0 0;
  border-top:1px solid #cccccc;
}

.job .content h3{
  margin:20px 0 0 0;
}

.job .content p{
  padding:0 5px;
  font-size:0.9rem;
}

#relation_title{
  width:100%;
  float:left;
  margin:10px 0 10px 0;
}

#relation_title h2 span{
  font-size:1.8rem;
}

#cover{
  width:100%;
  height:100vh;
  height: -webkit-fill-available;
  position:fixed;
  top:0;
  left:0;
  background-color:#444444;
  opacity:0.5;
  display:none;
  z-index:2;
}

#body_menu{
  position:fixed;
  top:80px;
  left:max(calc((100% - 1100px) / 2), 0px);
  width:320px;
  padding:10px 10px 0 10px;
  border:1px solid #cccccc;
  border-radius:10px;
  z-index
}

#body_menu{
  -ms-overflow-style: none;
  scrollbar-width: none;
}
#body_menu::-webkit-scrollbar{
  display:none;
}

.menus{
  width:100%;
  margin:0 0 10px 0;
}

.menus p{
  font-size:1.1rem;
  font-weight:bold;
}

.menus label{
  display:inline-block;
  width:49%;
  line-height:1.5rem;
  cursor:pointer;
}

.menus label input{
  margin:0 5px 0 0;
}

.menus input[type=text]{
  width:100%;
  outline:none;
  appearance:none;
  border:1px solid #aaaaaa;
  border-radius:5px;
}

.menu_price label{
  width:auto;
}

.menu_price input[type=number]{
  margin:0 5px 0 0;
  outline:none;
  appearance:none;
  border:1px solid #aaaaaa;
  border-radius:5px;
}

.menus input[type=submit]{
  width:100%;
  margin:10px 0 0 0;
  color:#ffffff;
  background-color:#ff8000;
  border:none;
  cursor:pointer;
  outline:none;
  padding:10px 0;
  appearance:none;
  border-radius:5px;
}

.menus input[type=submit]:hover{
  background-color:#ff9326;
}

button#reset{
  width:100%;
  margin:10px 0 0 0;
  color:#ffffff;
  background-color:#777777;
  border:none;
  cursor:pointer;
  outline:none;
  padding:10px 0;
  appearance:none;
  border-radius:5px;
  font-size:15px;
}

button#reset:hover{
  background-color:#888888;
}

#search{
  display:none;
  z-index:3;
}

#inquiry{
  min-width:300px;
  position:fixed;
  top:200px;
  right:max(calc((100% - 1100px) / 2 - 200px), 0px);
  background-color:#ffffff;
  border-radius:5px;
  opacity:0.8;
  z-index:3;
}

#inquiry_title{
  width:100%;
  line-height:30px;
  text-align:center;
  font-weight:bold;
  color:#ffffff;
  background-color:#ff8000;
  border-radius:5px 5px 0 0;
}

#inquiry_ad{
  width:100%;
  text-align:center;
  border-radius:0 0 5px 5px;
  border:2px solid #ff8000;
  padding:10px;
}

#inquiry_ad .material-icons{
  color:#ff8000;
  font-size:1.0rem;
}

#inquiry_ad a{
  font-size:1.2rem;
  font-weight:bold;
}

#qr{
  position:fixed;
  bottom:30px;
  right:30px;
  border:2px solid #ff8000;
  background-color:#ffffff;
  border-radius:10px;
}

#qr p{
  width:100%;
  line-height:1.8rem;
  text-align:center;
  font-weight:bold;
  color:#ffffff;
  background-color:#ff8000;
}

#qr img{
  width:120px;
  padding:10px;
}

#footer{
  width:100%;
  position:fixed;
  bottom:0;
  left:0;
  background-color:#dddddd;
  padding:10px;
}

#footer_title{
  width:15%;
  float:left;
}

#footer_list{
  width:85%;
  float:left;
}

#footer li{
  width:5%;
  min-width:100px;
  display:inline-block;
  text-align:center;
}

#links{
  width:100%;
  float:left;
  margin:10px 0 0 0;
  padding:10px 0;
  border-top:1px solid #dddddd;
  text-align:center;
}

#links a{
  text-decoration:underline dotted;
  -webkit-text-decoration:underline dotted;
}