*{
  margin:0;
  padding:0;
  box-sizing:border-box;
  vertical-align:middle;
  color:#444444;
}

html{
  font-size:15px;
}

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:1420px;
  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:#00b300;
  font-size:1.8rem;
  letter-spacing:-0.2rem;
}

#header_title h1 a span, #header_title span a span{
  color:#00b300;
  font-size:1.0rem;
  letter-spacing:-0.2rem;
  margin:0 5px 0 0;
}

#header_title p{
  margin:0 0 0 15px;
}

#header_title p span.pr{
  margin:0 0 0 10px;
  color:#d90000;
}

#header_title p span.pr span{
  color:#d90000;
}

#header_menu{
  float:right;
}

#header_menu p span{
  color:#00b300;
  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% - 640px);
  float:right;
  margin:0 320px 0 0;
  padding:0 25px;
}

#relation_count{
  width:100%;
  float:left;
  margin:0 0 10px 0;
  padding:10px;
  border:1px solid #cccccc;
  border-radius:10px;
  text-align:center;
}

#relation_count a{
  text-decoration:underline dotted;
}

#relation_count a span, #relation_count span{
  color:#00b300;
  margin:0 5px;
  font-size:1.8rem;
}

#cases{
  width:100%;
  float:left;
  margin:0 0 10px 0;
  padding:10px;
  border:1px solid #cccccc;
  border-radius:10px;
}

#cases_title{
  float:left;
  font-size:0.9rem;
  font-weight:bold;
}

#cases_change{
  display:none;
}

#cases_change:hover{
  text-decoration:none;
}

#cases_list{
  width:100%;
  float:left;
}

#cases_list span{
  display:inline-block;
  line-height:1.0rem;
  padding:0 5px;
}

.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:50px;
  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:#00b300; }
.jobs ul.pref li a{ color:#ffffff; }

.jobs h2 a, .jobs .ad a{
  font-size:1.3rem;
  text-decoration:underline dotted;
  -webkit-text-decoration:underline dotted;
}

.jobs .ad a{
  font-size:1.1rem;
}

.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:#00b300;
  font-size:1.0rem;
}

.jobs .link .lead{
  color:#00b300;
  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:50px;
  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:#00b300; }
.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:10px 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% - 1420px) / 2), 0px);
  width:320px;
  padding:10px 10px 0 10px;
  border:1px solid #cccccc;
  border-radius:10px;
  z-index:3;
}

#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:#00b300;
  border:none;
  cursor:pointer;
  outline:none;
  padding:10px 0;
  appearance:none;
  border-radius:5px;
}

.menus input[type=submit]:hover{
  background-color:#2db300;
}

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;
}

#body_favorite{
  position:fixed;
  top:80px;
  right:max(calc((100% - 1420px) / 2), 0px);
  width:320px;
  padding:10px 10px 0 10px;
  border:1px solid #cccccc;
  border-radius:10px;
  z-index
}

#body_favorite{
  -ms-overflow-style: none;
  scrollbar-width: none;
}

#body_favorite::-webkit-scrollbar{
  display:none;
}

.add_favorite{
  text-align:center;
  margin:100px 0 0 0;
}

.add_favorite span.material-icons{
  color:#ff4000;
}

#search{
  display:none;
  z-index:3;
}

#favorite{
  display:none;
  z-index:3;
}

#inquiry{
  min-width:300px;
  position:fixed;
  top:310px;
  right:max(calc((100% - 1420px) / 2 + 360px), 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:#00b300;
  border-radius:5px 5px 0 0;
}

#inquiry_ad{
  width:100%;
  text-align:center;
  border-radius:0 0 5px 5px;
  border:2px solid #00b300;
  padding:10px;
}

#inquiry_ad .material-icons{
  color:#00b300;
  font-size:1.0rem;
}

#inquiry_ad a{
  font-size:1.2rem;
  font-weight:bold;
}

#qr{
  position:fixed;
  bottom:30px;
  right:30px;
  border:2px solid #00b300;
  background-color:#ffffff;
  border-radius:10px;
}

#qr p{
  width:100%;
  line-height:1.8rem;
  text-align:center;
  font-weight:bold;
  color:#ffffff;
  background-color:#00b300;
}

#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;
}

#banner_pc{
  width:100%;
  float:left;
  text-align:center;
  margin:30px 0 20px;
  display:block;
}

#banner_sp{
  width:100%;
  float:left;
  text-align:center;
  margin:30px 0 20px;
  display:none;
}

#links{
  width:100%;
  float:left;
  margin:10px 0 0 0;
  padding:10px 0;
  border-top:1px solid #dddddd;
  text-align:left;
}

#links p{
  font-weight:bold;
  margin:10px 0 0 0;
}

#links ul{
  padding:3px;
}

#links a{
  text-decoration:underline dotted;
  -webkit-text-decoration:underline dotted;
}

.favorite, .job_favorite{
  position:absolute;
  top:5px;
  right:10px;
}

.favorite span, .job_favorite span{
  font-size:1.8rem;
  color:#ff4000;
  cursor:pointer;
  
}

.fav_list{
  margin:0 0 20px 0;
}

.fav_list a:hover{
  opacity:0.8;
}

.fav_list span{
  display:inline-block;
  background-color:#eeeeee;
  margin:0 5px 5px 0;
  padding:3px;
  border-radius:3px;
  font-size:0.8rem;
}

.fav_list span.material-icons{
  display:inline-block;
  background-color:transparent;
  color:#ff4000;
  margin:0 5px 5px 0;
  font-size:1.2rem;
  cursor:pointer;
}

.fav_list h4{
  font-weight:normal;
  font-size:0.9rem;
  line-height:1.1rem;
  text-decoration:underline dotted;
}

/* text_ad 20231014 */

.text_ad{
  width:100%;
  float:left;
  text-align:center;
  margin:0 0 10px;
  padding:15px 10px 0 10px;
  border-radius:10px;
  color:#ffffff;
  background-color:#00d900;
}
.text_ad *{
  color:#ffffff;
  font-weight:bold;
}
.text_ad a{
  display:block;
  color:#ffffff;
  text-decoration: underline dotted;
}
.text_ad a:hover{
  text-decoration: none;
}