@charset "UTF-8";
/* reset */

html, body, div, span, object, iframe,h1, h2, h3, h4, h5, h6, p, blockquote, pre,abbr, address, cite, code,del, dfn, em, img, ins, kbd, q, samp,small, strong, sub, sup, var,b, i,dl, dt, dd, ol, ul, li,fieldset, form, label, legend,table, caption, tbody, tfoot, thead, tr, th, td,article, aside, canvas, details, figcaption, figure, footer, header, hgroup, menu, nav, section, summary,time, mark, audio, video,input,select,textarea,button {margin: 0;padding: 0;border: 0;outline: 0;vertical-align: baseline;background: transparent;width:auto;box-sizing:border-box;font-family: "メイリオ", sans-serif;}
img{vertical-align:middle;}
ul{list-style: none;text-align: left;margin: 0;padding: 0;}
li{text-align: left;margin: 0;}
#loading{display:none;}

/* basic-layout */
html {
  font-size: 62.5%;
  text-align: center;
  line-height: 1.5;
  height: 100%;
  position: relative;
}
@media screen and (max-width:950px) {
  html {
    font-size: 55%;
  }
}
body {
  font-size: 12px;
  font-size: 1.2rem;
  height: 100%;
  min-width: 1180px;
}

/* header */
header {
  min-width:1085px;
  background: #35A065;
  border-bottom: 1px solid #ccc;
  padding: 10px 0;
  width: 100%;
  text-align: left;
  position: fixed;
  z-index: 100;
}
header h1 {
  width: 160px;
  padding:3px 10px;
  margin: 0;
  line-height: 1;
  float: left;
  color: #fff;
  text-align: center;
}
header h1 a{
  color: #fff;
}
header h1 a:hover{
  color: #7EC29D;
  text-decoration: none;
}
header #menu-global{
  margin: 0 0 -5px 0;
  width: 1100px;
  float: left;
}
header #menu-global li{
  color: #fff;
  display: inline-block;
  margin: 0 0 5px 0;
}
header #menu-global li a{
  min-width: 85px;
  display: inline-block;
  padding: 3px 10px;
  font-size: 14px;
  font-size: 1.4rem;
  letter-spacing: 1px;
  text-align: center;
  color: #fff;
  background: #5BB282;
  border-radius: 15px;
}
header #menu-global li a:hover{
  background: #7EC29D;
  border-radius: 15px;
  text-decoration: none;
}
header #menu-global li a.current{
  color: #fff;
  background: #8BC34A;
  font-weight: bold;
}
header #menu-global li a.current:hover{
  background: #9CCC65;
}
header #menu-global li.setting{
  margin: 2px 0 5px 10px;
}
header #menu-global li.setting a{
  min-width: 50px;
  background: url(../img/common/global_settings.png) 0 4px no-repeat;
  background-size: 18px 18px;
  border: none;
  text-align: left;
  border-radius: 0;
  padding: 3px 10px 3px 25px;
}
header #menu-global li.setting a:hover{
  text-decoration: underline;
}

/* footer */
footer {
  color: #fff;
  background: #35A065;
  clear: both;
  width: 100%;
  bottom: 0;
  position: fixed;
  text-align: right;
  z-index: -10;
}
footer small {
  display:inline-block;
  padding: 5px 10px;
  font-size: 10px;
  font-size: 1.0rem;
}

/* basic-adjust */
.t-center {
  text-align: center;
}
.t-left {
  text-align: left;
}
.t-right {
  text-align: right;
}
.fs-12{
  font-size: 12px;
  font-size: 1.2rem;
}
.fs-14{
  font-size: 14px;
  font-size: 1.4rem;
}
.fs-16{
  font-size: 16px;
  font-size: 1.6rem;
}
.mt30 {
  margin-top: 30px;
}
.w20 {
  width: 20px;
}
.w30 {
  width: 30px;
}
.w40 {
  width: 40px;
}
.w50 {
  width: 50px;
}
.w60 {
  width: 60px;
}
.w70 {
  width: 70px;
}
.w80 {
  width: 80px;
}
.w90 {
  width: 90px;
}
.w100 {
  width: 100px;
}
.w125 {
  width: 125px;
}
.w150 {
  width: 150px;
}
.w200 {
  width: 200px;
}
.w250 {
  width: 250px;
}
.w300 {
  width: 300px;
}
.w350 {
  width: 350px;
}
.w400 {
  width: 400px;
}
.w450 {
  width: 450px;
}
.w500 {
  width: 500px;
}
.w725 {
  width: 725px;
}
.w10p{
  width:10%;
}
.w25p{
  width:25%;
}
.w20p{
  width:20%;
}
.w30p{
  width:30%;
}
.w40p{
  width:40%;
}
.w50p{
  width:50%;
}
.w65p{
  width:65%;
}
.w70p{
  width:70%;
}
.w75p{
  width:75%;
}
.w80p{
  width:80%;
}
.w90p{
  width:90%;
}
.w95p{
  width:95%;
}
.w100p{
  width:100%;
}


/* basic-parts */
p{
  margin: 0 0 10px 0;
  padding: 5px 10px;
  text-align: left;
  line-height: 1.6;
}
/* basic-color */
span.required {
  display: inline-block;
  background: #ef5350;
  color: #fff;
  font-size:12px;
  font-size:1.2rem;
  border-radius: 3px;
  padding: 2px 10px;
  margin: 0 5px 3px 5px;
}
a {
  color: #35A065;
  transition: 0.3s;
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
}
a:hover img{
  opacity: 0.7;
  text-decoration: underline;
}
.fc-red {
  color: #f00;
}
.fc-sk {
  color: #29B6F6;
}
.fc-bl {
  color: #0663AD;
}
/* basic-input */
input,
textarea,
select {
  border: 2px solid #bbb;
  border-radius: 3px;
  font-size: 14px;
  font-size: 1.4rem;
  margin: 0 0 3px 0;
  padding: 1px 5px;
  transition: 0.3s;
  vertical-align: middle;
  background: #fff;
}
input[type=checkbox]{
  margin: 5px 5px 5px 0;
  vertical-align: middle;
}
input[type=file]{
  margin: 5px 5px 5px 0;
  padding:0;
  vertical-align: middle;
}
input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button{
	-webkit-appearance:none;
	margin:0;
}

input[type="number"] {
  -moz-appearance:textfield;
}

@media screen and (max-width:420px) {
input,
textarea,
select {
  font-size: 12px;
  font-size: 1.2rem;
  }
}
select {
  padding: 1px 5px 1px 5px;
}
input:focus,
textarea:focus,
select:focus {
  background: #ffffcc;
  border: 2px solid #35A065;
}
input:hover,
textarea:hover,
select:hover {
  background: #ffffcc;
}
button,.download-pdf {
  background: #FF7B7B;
  border-radius: 3px;
  border: 2px solid #FF7676;
  border-left: 2px solid  #FF9F9F;
  border-top: 2px solid  #FF9F9F;
  color: #fff;
  cursor: pointer;
  font-size: 16px;
  font-size: 1.6rem;
  padding: 5px 10%;
  transition: 0.3s;
}
button:hover {
  background: #FF9F9F;
}
button.data-option,
a.data-option{
  background: #333;
  border-radius: 3px;
  border: 2px solid #222;
  border-left: 2px solid  #666;
  border-top: 2px solid  #666;
  color: #fff;
  cursor: pointer;
  font-size: 1.2px;
  font-size: 1.2rem;
  padding: 3px 8px;
  margin: 1px auto ;
  transition: 0.3s;
}
button.data-option:hover,
a.data-option:hover{
  background: #666;
}



/* checkbox・redioボタン化 */
.design-input {
    padding: 6px;
}
.design-input input[type=radio],
.design-input input[type=checkbox] {
    display: inline-block;
    margin-right: 6px;
}
.design-input input[type=radio] + label,
.design-input input[type=checkbox] + label {
    position: relative;
    display: inline-block;
    margin-right: 12px;
    font-size: 14px;
    font-size: 1.4rem;
    cursor: pointer;
}

@media (min-width: 1px) {
    .design-input input[type=radio],
    .design-input input[type=checkbox] {
        display: none;
        margin: 0;
    }
    .design-input input[type=radio] + label,
    .design-input input[type=checkbox] + label {
    padding: 3px 4px 3px 24px;
    }
    .design-input input[type=radio] + label::before,
    .design-input input[type=checkbox] + label::before {
        content: "";
        position: absolute;
        top: 50%;
        left: 0;

        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
        width: 18px;
        height: 18px;
        margin-top: -9px;

        background: #FFF;
    }
    .design-input input[type=radio] + label::before {
        border: 2px solid #ccc;
        border-radius: 30px;
    }
    .design-input input[type=checkbox] + label::before {
        border: 2px solid #ccc;
    }
    .design-input input[type=radio]:checked + label::after,
    .design-input input[type=checkbox]:checked + label::after {
        content: "";
        position: absolute;
        top: 50%;

        -moz-box-sizing: border-box;
        box-sizing: border-box;
        display: block;
    }
    .design-input input[type=radio]:checked + label::after {
        left: 5px;

        width: 8px;
        height: 8px;
        margin-top: -4px;

        background: #ff4242;
        border-radius: 8px;
    }
    .design-input input[type=checkbox]:checked + label::after {
        left: 3px;

        width: 16px;
        height: 8px;
        margin-top: -8px;

        border-left: 3px solid #ff4242;
        border-bottom: 3px solid #ff4242;

        -webkit-transform: rotate(-45deg);
        -ms-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}

.design-input.notext{
  display: inline-block;
  padding: 0;
}
.design-input.notext label,
.design-input.notext label{
  height:8px;
}
td .design-input.notext label,
td .design-input.notext label{
  margin-right:2px;
}


/* 共通ボタン群 */
a.btn ,
span.btn.result.no{
  display: inline-block;
  text-align:center;
  min-width:80px;
  margin:0;
  padding: 6px 10px;
  border-radius: 3px;
  color: #fff;
  background: #1976D2;
}
a.btn,
a.btn.text{
  color: #fff;
  background: #35A065;
}
a.btn:hover,
a.btn.text:hover{
  text-decoration:none;
  background: #5BB282;
}

a.btn.mails{
  padding: 8px 10px 8px 30px;
  background:url(../img/common/ico_mailhistory_wh.png) #1976D2 7px 7px no-repeat;
  background-size: 20px 20px;
}
a.btn.mail{
  padding: 8px 10px 8px 35px;
  background:url(../img/common/global_mail.png) #1976D2 8px 8px no-repeat;
  background-size: 20px 20px;
}
a.btn.mail:hover{
  background:url(../img/common/global_mail.png) #03A9F4 8px 8px no-repeat;
  background-size: 20px 20px;
}
a.btn.mails:hover{
  background:url(../img/common/ico_mailhistory_wh.png) #03A9F4 7px 7px no-repeat;
  background-size: 20px 20px;
}
a.btn.detail{
  padding: 4px 10px 4px 30px;
  background:url(../img/common/global_items.png) #1976D2 6px 6px no-repeat;
  background-size: 20px 20px;
}
a.btn.detail:hover{
  background:url(../img/common/global_items.png) #03A9F4 6px 6px no-repeat;
  background-size: 20px 20px;
}

a.btn.delete{
  color: #333;
  border-radius:3px;
  padding: 5px 10px 5px 15px;
  background:url(../img/common/ico_clear_gr.png) #ECEFF1 6px 4px no-repeat;
  background-size: 20px 20px;
  border:1px solid #CFD8DC;
}
a.btn.delete:hover{
  color:#333;
  background:url(../img/common/ico_clear_gr.png) #fff 6px 4px no-repeat;
  background-size: 20px 20px;
}
a.btn.cancel{
  color: #000;
  background: #ECEFF1;
}
a.btn.result{
  margin: 0 0 0 5px;
  background: #43A047;
}
a.btn.result:hover{
  background:#00C853;
}
span.btn.result.no{
  background: #ccc;
  display: inline-block;
  min-width:100px;
  margin: 0 0 0 5px;
}

/* 決定系ボタン */
.wrap-buttons{
  position: relative;
  text-align: center;
  padding: 20px 0 0 0;
}
.wrap-buttons.fixed-buttons .go{
  float: right;
  margin: 2px 10px 0 0;
  padding: 4px 30px 4px 40px;
  background:url(../img/common/ico_add_whc.png) 10px center #FF7B7B no-repeat;
  background-size: 20px;
  position: relative;
  font-size: 14px;
  font-size: 1.4rem;
}
.wrap-buttons.fixed-buttons .go:hover{
  background:url(../img/common/ico_add_whc.png) 10px center #FF9F9F no-repeat;
  background-size: 20px;
}
.wrap-buttons.fixed-buttons .go:hover:after{
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 3px solid #fff;
  border-top: 3px solid #fff;
  position: absolute;
  right: 10px;
  top: 8px;
  transform: rotate(45deg);
}

.wrap-buttons .clear{
  position: absolute;
  left: 0;
  bottom: 0;
  background: #e6e6e6;
  border-radius: 0;
  border: none;
  color: #333;
  font-size: 12px;
  font-size: 1.2rem;
  padding: 4px 15px;
  transition: 0.3s;
  border: 1px solid #fff;
}
.wrap-buttons .clear:hover{
  background: #fff;
}

.wrap-buttons .prev,
.wrap-buttons .next{
  width: auto;
  padding: 4px 20px;
  font-size: 14px;
  color: #FF7B7B;
  background: #fff;
  border-radius: 22px;
  position: relative;
}
.wrap-buttons .prev{
  padding: 4px 20px 4px 35px;
  margin: 0 100px 0 0;
}
.wrap-buttons .next{
  padding: 4px 35px 4px 20px;
  margin: 0 0 0 100px;
}
.wrap-buttons .prev:after,
.wrap-buttons .next:after{
  content: "";
  display: block;
  width: 8px;
  height: 8px;
  margin: 0;
  border-right: 3px solid #FF7B7B;
  border-top: 3px solid #FF7B7B;
  position: absolute;
  left: 15px;
  top: 9px;
  transform: rotate(225deg);
}
.wrap-buttons .next:after{
  right: 15px;
  left: auto;
  transform: rotate(45deg);
}
.wrap-buttons .prev:hover,
.wrap-buttons .next:hover{
  background: #ffe8e8;
}
/* table内注釈 */
td p.exp,
th p.exp{
  margin: 0;
  padding: 5px 2px;
}

/* tooltip */
.tooltip li{
  position: relative;
}
.tooltip li:hover{
  padding-right:130px;
}
.tooltip .tooltip-unit {
  display: none;
  position: absolute;
  top: 12px;
  left: 55px;
  z-index: 9999;
  padding: 3px 8px;
  color: #FFFFFF;
  background: #333;
  border-radius: 4px;
  font-size:12px;
}
.tooltip-unit:after{
  width: 0;
  content: "";
  display: block;
  position: absolute;
  left: -11px;
  top: 6px;
  border: 6px solid transparent;
  border-top: 6px solid #333;
  transform: rotate(90deg);
}
.tooltip li:hover .tooltip-unit{
  display: block;
}
.tooltip-unit a {
  color: #fff;
}

/* modal-common */
.modal-content {
  position: fixed;
  display: none;
  z-index: 101;
  width: 75%;
  max-width: 750px;
  margin: 0;
  padding: 25px 40px;
  background:#fff;
  border-radius: 10px;
  border: 5px solid #dee8eb;
 overflow-y: auto;
  max-height: 90%;
}

.modal-content p {
    margin: 0 0 20px 0;
    padding:0;
  font-size: 12px;
  font-size: 1.2rem;
  line-height:1.6;
}
.modal-content h3 {
  color: #0663ad;
  font-size: 16px;
  font-size: 1.6rem;
    margin: 8px 0 5px;
  text-align: left;
}
.modal-overlay {
    z-index:100;
    display:none;
    position:fixed;
    top:0;
    left:0;
    width:100%;
    height:120%;
    background-color:rgba(0,0,0,0.60);
}
.modal-open:hover,
.modal-close:hover {
  cursor: pointer;
  text-decoration: none;
}
.modal-close {
  display: inline-block;
  color: #fff;
  background: #333;
  padding: 6px 15px 6px 10px;
  margin: 2px auto;
  border-radius: 16px;
  text-align: center;
}
.modal-close:before {
  content: "×";
  font-weight: bold;
  margin: 0 5px 0 0;
}

/* タブ風切り替え */

.tab {
  clear: both;
  margin: 0 0 20px 0;
  text-align: left;
}
.tab ul {
  border-bottom: 3px solid #4AAA75;
}
.tab li {
  display: inline-block;
  margin: 0 0 0 0;
  font-size: 14px;
  font-size: 1.4rem;
}
.tab li a{
  display: inline-block;
  margin: 0;
  padding: 5px 15px;
  color: #333;
  background: #f6f6f6;
  border-radius: 5px 5px 0 0;
}
.tab li a:hover {
  color: #fff;
  background: #5BB282;
  text-decoration: none;
}
.tab li a.current{
  color: #fff;
  background: #4AAA75;
  font-weight: bold;
}

/* メッセージ系 */
.message-list {
  margin: 0 0 0 0;
  padding: 10px 15px;
}
.message-list.error {
  color: #fff;
  background: #d32f2f;
}
.message-list.error a{
  color: #fff;
  text-decoration: underline;
}
.message-list.ok {
  color: #fff;
  background: #76CAF8;
}
.message-list li {
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: bold;
  margin: 5px 0;
}

.message-list.alerts{
  border: 2px solid #ef5350;
  border-radius: 5px;
  color: #e53935;
  background: #ffebee;
  font-size: 16px;
  font-size: 1.6rem;
}

/* LOGIN ----------------------------------------- */
#login {
  background: #f9f9f9;
  z-index: 0;
  text-align:center;
}
#login #wrap-login{
  display:table;
  width: 100%;
  height: 100%;
  vertical-align:middle;
}
#login #wrap-login form{
  display:table-cell;
  vertical-align:middle;
}
#login #wrap-login fieldset{
  display:table-cell;
  vertical-align:middle;
  width: 500px;
  background: #fff;
  text-align: center;
  padding: 30px 15px;
  margin: 0 auto;
  border-radius: 10px;
  box-shadow: 1px 1px 5px #ccc;
}
#login #wrap-login h1{
  color: #35A065;
  font-size: 34px;
  font-size: 3.4rem;
  margin: 0 0 15px 0;
  padding: 0 15px;
  text-align: center;
}
#login #wrap-login label{
  display: inline-block;
  min-width: 120px;
  text-align: right;
  margin: 0 10px 0 0;
  font-size: 14px;
  font-size: 1.4rem;
}
#login #wrap-login input[type="text"],
#login #wrap-login input[type="password"]{
  margin: 0 0 10px 0;
  min-width: 180px;
}
#login #wrap-login button{
  margin: 15px auto 0;
  padding:8px 40px;
  color: #fff;
  background: #35A065;
  border-radius: 25px;
  border: none;
  font-size: 14px;
  font-size: 1.4rem;
}
#login #wrap-login button:hover{
  background: #66BB6A;
}
#login #wrap-login .exp-password{
  text-align: center;
  margin: 25px 0 -15px 0;
  background: #f9f9f9;
}
#login #wrap-login .ico-uni{
  display: inline-block;
  color: #fff;
  font-size: 14px;
  font-size: 1.4rem;
  background: #35A065;
  border-radius: 10px;
  width:20px;
  height:20px;
  margin: 0 5px 0 0;
  text-align: center;
}
#login .message-list {
  width: 100%;
  margin: 0 0 30px 0;
  padding: 10px 15px;
  position: fixed;
}

/* COMMON layout ----------------------------------------- */
#wrap-main {
  width: 100%;
/*  height: 100%; */
  padding: 0;
  z-index: 200;
  background: #fff;
}
#contents-side{
  width:150px;
  float: left;
  height: 100%;
  background: #e9e9e9;
  opacity: 0.9;
  padding: 10px;
  position: fixed;
  margin: 48px 0 0 0;
  z-index: 101;
}
#contents-main{
  padding: 60px 15px 95px 170px;
/*  height: 100%; */
  background: #fff;
  text-align: left;
}

/* サイドメニュー */
#contents-side h1{
  color: #fff;
  background: #35A065;
  margin: -11px -10px 0 -10px;
  padding: 8px 10px;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: normal;
  border-radius: 0 0 8px 8px;
}
#contents-side h2{
  font-size: 14px;
  font-size: 1.4rem;
  padding: 5px 5px 5px 2px;
  text-align: left;
}
#contents-side .menu-side{
  margin: 0 -10px 10px -10px;
}
#contents-side .menu-side li a{
  display: block;
  padding: 8px 10px 8px 35px;
  color: #000;
  font-size: 14px;
  font-size: 1.4rem;
  border-top: 1px solid #f9f9f9;
  border-bottom: 1px solid #ccc;
}
#contents-side .menu-side li a:hover{
  text-decoration: none;
  color: #35A065;
  background: #f9f9f9;
}
#contents-side .menu-side li.family-search a{
  background:url(../img/common/ico_family_search.png) #e9e9e9 8px 8px no-repeat;  background-size: 25px 25px;
}
#contents-side .menu-side li.family-search a:hover{
  background:url(../img/common/ico_family_search.png) #fff 8px 8px no-repeat;
  background-size: 25px 25px;
}
#contents-side .menu-side li.family-add a{
  background:url(../img/common/ico_family_add.png) #e9e9e9 8px 8px no-repeat;  background-size: 25px 25px;
}
#contents-side .menu-side li.family-add a:hover{
  background:url(../img/common/ico_family_add.png) #fff 8px 8px no-repeat;
  background-size: 25px 25px;
}
#contents-side .menu-side li.member-search a{
  background:url(../img/common/ico_member_search.png) #e9e9e9 8px 8px no-repeat;  background-size: 25px 25px;
}
#contents-side .menu-side li.member-search a:hover{
  background:url(../img/common/ico_member_search.png) #fff 8px 8px no-repeat;
  background-size: 25px 25px;
}
#contents-side .menu-side li.member-add a{
  background:url(../img/common/ico_member_add.png) #e9e9e9 8px 8px no-repeat;  background-size: 25px 25px;
}
#contents-side .menu-side li.member-add a:hover{
  background:url(../img/common/ico_member_add.png) #fff 8px 8px no-repeat;
  background-size: 25px 25px;
}

#contents-side .menu-side li.data-add a{
  background:url(../img/common/ico_data_add.png) #e9e9e9 8px 8px no-repeat;  background-size: 25px 25px;
}
#contents-side .menu-side li.data-add a:hover{
  background:url(../img/common/ico_data_add.png) #fff 8px 8px no-repeat;
  background-size: 25px 25px;
}
#contents-side .menu-side li.data-search a{
  background:url(../img/common/ico_data_search.png) #e9e9e9 8px 8px no-repeat;  background-size: 25px 25px;
}
#contents-side .menu-side li.data-search a:hover{
  background:url(../img/common/ico_data_search.png) #fff 8px 8px no-repeat;
  background-size: 25px 25px;
}
#contents-side .menu-side li.data-output a{
  background:url(../img/common/ico_data_output.png) #e9e9e9 8px 8px no-repeat;  background-size: 25px 25px;
}
#contents-side .menu-side li.data-output a:hover{
  background:url(../img/common/ico_data_output.png) #fff 8px 8px no-repeat;
  background-size: 25px 25px;
}


#contents-side .menu-side li a.current{
  color: #35A065;
  background-color: #fff;
  border-bottom: 1px solid #ddd;
  font-weight: bold;
}
#contents-side .menu-side li:first-child a.current{
  border-top: 1px solid #ddd;
}

/* ----------------------------------------------
     ダッシュボード
----------------------------------------------- */
#dashboard #contents-main{
  padding: 78px 25px 95px;
}
#dashboard #contents-main .report h2{
  font-size: 24px;
  font-size: 2.4rem;
  font-weight: normal;
  margin: 0 0 10px 0;
}
.news{
  width: 48%;
  display: inline-block;
  border-radius: 5px;
  border: 5px solid #F7F5ED;
  padding: 10px 15px;
  margin: 0 0 25px 0;
  vertical-align:top;
}
.news h2{
  color: #4d260b;
  font-size: 18px;
  font-size: 1.8rem;
  padding: 8px 10px 12px 10px;
  margin:-10px -15px 10px -15px;
  background: #F7F5ED;
}
.news ul{
  font-size: 14px;
  font-size: 1.4rem;
  border-top: 1px dotted #ccc;
}
.news li{
  padding:10px 0;
  border-bottom: 1px dotted #ccc;
}

.news span.date{
        display: inline-block;
	min-width:85px;
	margin:0;
	font-size:12px;
	}
.news span.ico{
  display: inline-block;
	color:#FFFFFF;
	line-height:22px;
	text-align:center;
	min-width:60px;
	margin:0 10px 0 0;
	background:#FFB03C;
	}
.news span.ico.urgent{
  background: #ef5350;
}
.news .edit{
  margin: 0;
  padding: 0;
  text-align: right;
}
.news .edit button{
  font-size: 14px;
  font-size: 1.4rem;
  padding: 5px 10px;
}

/* ----------------------------------------------
     リスト画面共通
----------------------------------------------- */
/* 検索メニュー */
.wrap-search{
  background: #F7F5ED;
  border-radius: 8px;
  padding: 8px 15px 8px 10px;
  margin: 0 0 25px 0;
}
.wrap-search table{
  font-size: 14px;
  font-size: 1.4rem;
}
.wrap-search th,
.wrap-search td{
  padding: 2px 2px 5px 2px;
  vertical-align: middle;
}
.wrap-search th{
  text-align: right;
  min-width: 120px;
}
.wrap-search .search-option{
  text-align: center;
  margin: 0 auto 0 -5%;
  padding: 20px 0;
}
.wrap-search .search-option li{
  display: inline-block;
  margin: 0 10px 0 0;
}
/* カウンター */
.counter-list{
  clear: both;
  text-align: center;
}
.counter-list .total{
  float: left;
  margin: 0;
  padding: 0 10px 10px 10px;
  font-size: 12px;
  font-size: 1.2rem;
  color: #666;
}
.counter-list .total b{
  color: #333;
  font-size: 24px;
  font-size: 2.4rem;
}
.counter-list .pager,
.counter-list .pages{
  float: right;
  display: block;
}
.counter-list .pager li,
.counter-list .pages li{
  display: inline-block;
}
.counter-list .pager{
}
.counter-list .pages{
}
.counter-list .pages li a{
  display: inline-block;
  background: #ddd;
  color: #333;
  border-radius:25px;
  padding:2px 8px;
  font-size: 12px;
  font-size: 1.2rem;
  padding: 3px 8px;
  text-align: center;
}
.counter-list .pages li a.current{
  color: #fff;
  background: #5BB282;
}

/* リストtable */
table.list{
  margin: 0 0 50px 0;
  font-size: 14px;
  font-size: 1.4rem;
  border-spacing: 0;
  width: 100%;
}
table.list th,
table.list td{
  padding: 5px;
  text-align: center;
  vertical-align: middle;
}
table.list th{
  background: #EFF8F3;
  text-align: center;
  padding: 5px;
  /*border-bottom: 3px solid #35A065;*/
}
table.list td{
  border-bottom: 1px solid #ccc;
  font-size: 12px;
  font-size: 1.2rem;
}
table.list td.data-name{
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
  padding: 10px;
  text-align: center;
}
table.list td.data-name a{
  display: block;
  width: 100%;
  height: 100%
}

table.list td.data-name-consign{
	font-weight: bold;
	font-size: 12px;
	font-size: 1.2rem;
	padding: 10px;
	text-align: center;
}
table.list td.data-name-consign a{
	display: block;
	width: 100%;
	height: 100%
}

table.list tr:nth-child(odd) td {
  background: #f9f9f9;
}

table.list tr.cau-flg:nth-child(odd) td {
  background: #FFF9C4;
}

table.list tr.dlt-flg:nth-child(odd) td {
  background: #FFCDD2;
}

/* ----------------------------------------------
     詳細画面共通
----------------------------------------------- */
/* 詳細 fieldset */
fieldset.detail{
  margin: 0 auto 18px;
  background: #f9f9f9;
  padding: 35px 10px 10px;
  position: relative;
  border-radius: 3px;
  box-shadow: 1px 1px 3px #ccc;
}
fieldset.detail legend{
  display: inline-block;
  font-size: 18px;
  font-size: 1.8rem;
  padding: 0;
  position: absolute;
  top: 5px;
  left: 10px;
}

/* 詳細table */
fieldset.detail table.detail{
  margin:0;
}
table.detail{
  margin: 0 0 50px 0;
  font-size: 14px;
  font-size: 1.4rem;
  border-spacing: 0;
  width: 100%;
  border-top: 2px solid #ccc;
  border-bottom: 1px solid #ccc;
}
table.detail th,
table.detail td{
  padding:  4px 5px;
  border-bottom: 1px solid #ccc;
  vertical-align: middle;
  background: #fff;
}
table.detail th,
table.detail td.detail-top{
  padding:  4px 5px;
  border-bottom: 1px solid #ccc;
  vertical-align: top;
  background: #fff;
}

table.detail th{
  max-width: 150px;
  min-width: 50px;
  font-size: 14px;
  font-size: 1.4rem;
  color: #fff;
  background: #4AAA75;
  font-weight: normal;
}
table.detail td{
  min-width: 100px;
  font-size: 12px;
  font-size: 1.2rem;
}
table.detail td.mass-data{
  min-width: 100px;
  font-size: 12px;
  font-size: 1.2rem;
}
table.detail td.data-name{
  font-weight: bold;
  font-size: 16px;
  font-size: 1.6rem;
}
table.detail td.data-name a{
  display: block;
  width: 100%;
  height: 100%
}
table.detail td input{
  margin:0 5px 0 0;
}
table.detail.report{
  border-left: 2px solid #ccc;
  border-right: 1px solid #ccc;
}
table.detail.report td,
table.detail.report th{
  border-left: 0;
}


/* 詳細 fieldset2分割 */
.wrap-2detail fieldset.detail{
  display:inline-block;
  width:49%;
  margin: 0 1% 25px auto;
  vertical-align: top;
}
.wrap-2detail fieldset.detail + fieldset{
  width: 49%;
  margin: 0 -1% 25px auto;
}

/* 詳細table 料金プラン */
table.detail span.priceset{
  display: block;
  padding: 8px 5px;
  font-size: 16px;
  font-size: 1.6rem;
  text-align: center;
  font-weight: bold;
  position: relative;
}


/*
table.detail span.priceset a:hover:after{
  width: 80px;
  content:"このプランを選択";
  text-decoration: none;
  font-size: 12px;
  font-size: 1.2rem;
  position: absolute;
  text-align: center;
  top: 5px;
  left: center;
  font-weight: normal;
  color: #333;
}

@media screen and (max-width:950px) {
table.detail span.priceset a:hover:after{
  width: 50px;
  font-size: 10px;
  font-size: 1.0rem;
  }
}
*/

table.detail.pricelist td:first-child{
  font-weight: bold;
  font-size: 14px;
  font-size: 1.4rem;
}



/* ----------------------------------------------
     詳細特殊＠会員
----------------------------------------------- */
#members.detail #contents-main{
  padding: 240px 15px 95px 170px;
  overflow: hidden;
}

#members.detail .wrap-buttons{
  margin: 0 0 10px 0;
  padding: 10px 0;
  background: #F7F5ED;
}

/* 登録,更新ボタンページ下部固定 */
#members.detail .fixed-buttons{
  position: fixed;
  bottom: 0;
  width: 100%;
  height: auto;
  padding: 10px 200px 10px 0;
  margin: 10px 30px 0 -30px;
}




/* ----------------------------------------------
     body id= defaultページ
----------------------------------------------- */
/* 登録,更新ボタンページ下部固定 */
#default .fixed-buttons{
  position: fixed;
  bottom: 0;
  width: 100%;
  height: 100px;
  padding: 30px 0 0 0;
  margin: 10px 30px 0 -30px;
  background: #F7F5ED;
}

/* ----------------------------------------------
     出力・分析
----------------------------------------------- */
table.report th,
table.report td{
  border: 1px solid #ccc;
  text-align: center;
  min-width: 50px;
}
td.sat,
th.sat{
	color: #0000FF;
}
td.sun,
th.sun{
	color: #FF0000;
}
tr.sum{
	background: #99FFAA;
}

.businessform-menu{
	float: left;
	padding: 0px 15px 15px 0px;
}


/* ----------------------------------------------
     空き情報登録
----------------------------------------------- */
input[type=checkbox] {
  transform: scale(1.5);
}






/* ページ上部概要 */
#wrap-overview{
  clear: both;
  background: #fff;
  margin: -189px 0 0 0;
  padding: 5px 220px 0 0;
  width: 100%;
  z-index: 1;
  position: fixed;
}
.action-back{
  width: 100%;
  overflow: hidden;
  margin: 0 0 0 -14px;
  position:
}
.action-back .back,
.action-back .pager,
.action-back .action{
  float: left;
  padding: 0;
  margin: 0 10px 2px 0;
}
.action-back .pager li,
.action-back .action li{
  display: inline-block;
  margin: 0;
}
.action-back .pager li:first-child{
  margin: 0 -3px 0 0;
}
.action-back .back a,
.action-back .pager li a,
.action-back .action li a{
  display: inline-block;
  color: #333;
  padding: 5px 10px;
  background: #F7F5ED;
  font-size: 14px;
  font-size: 1.4rem;
  border-radius: 3px;
  border-right: 1px solid #dbd9d2;
  border-bottom: 1px solid #dbd9d2;
  position: relative;
}
.action-back .back a{
  padding: 5px 10px 5px 25px;
}
.action-back .back a:hover{
  text-decoration: none;

}
.action-back .back a:before{
	content: "";
	display: block;
	width: 8px;
	height: 8px;
	margin: 0;
	border-right: 3px solid #6d6c69;
	border-top: 3px solid #6d6c69;
	position: absolute;
	left: 10px;
	top: 10px;
	transform: rotate(225deg);
}
.profile{
  clear: both;
  margin:20px 0 15px 15px;
}
.profile h1,
.profile h2{
  display: inline-block;
}
.profile h1{
  margin: 0 30px 10px 0;
  font-size: 26px;
  font-size: 2.6rem;
}
.tab{
  margin: 0 0 15px 0;
}
#ui-datepicker-div{
  display: none;
  background: #fff;
  border-radius: 5px;
  box-shadow: 1px 1px 3px #ccc;
  padding: 5px;
  border: 2px solid #e6e6e6;
}
.ui-datepicker-calendar{
  margin: 10px 0 0 0;
}
button.ui-datepicker-current{
  padding: 0 25px;
  margin: 10px 0 15px 0;
  font-size: 14px;
}
button.ui-datepicker-current:hover{
  background: #FF9F9F;
  border-radius: 3px;
}
button.ui-datepicker-close{
  padding: 3px 10px;
  margin: 10px 0 15px 10px;
  font-size: 12px;
  background: #333;
  border: none;
}
button.ui-datepicker-close:hover{
  background: #666;
  border-radius: 3px;
}
button.ui-datepicker-close:before{
  content:"×";
  margin: 0 5px 0 0;
}
.ui-datepicker-prev,
.ui-datepicker-next{
  display: block;
  width: 40%;
  padding: 5px 0;
  cursor: pointer;
}
.ui-datepicker-prev{
  float: left;
  text-align:left;
  margin: 0 0 0 10px;
}
.ui-datepicker-next{
  float: right;
  text-align:right;
  margin: 0 10px 0 0;
}
.ui-datepicker-month{
  clear: both;
}
.ui-datepicker-week-end{
  color:#FF7B7B;
}
.ui-state-default{
  padding: 2px 6px;
  display:inline-block;
}
.ui-state-default:hover{
  color: #fff;
  background: #35A065;
  border-radius: 15px;
}






/* 空き情報カレンダー */
table.list.cal{
	margin:10px 0 20px 0;
	}
table.list.cal th,
table.list.cal td{
	border: solid 1px #bbb;
	}
/*
table.list.cal th{
	padding:5px 0;
	text-align: center;
	font-size: 1.1em;
	font-weight: bold;
	color:#333;
	background:#ccc;
	}
*/
table.list.cal th.wd7{
	color:#163c68;
	background: #77a9d5;
	}
table.list.cal td.wd7{
	background:#d1e0ff;
	}
table.list.cal tr.hover td.wd7{
	background:#a0b6d7;
	}
table.list.cal th.wd1{
	color:#a9382d;
	background:#ea9287;
	}
table.list.cal td.wd1{
	background:#ffc4c0;
	}
table.list.cal tr.hover td.wd1{
	background:#dda19f;
	}
table.list.cal tr.odd,
table.list.cal tr.even{
	background:#f6f6f6;
	}
table.list.cal tr.odd.hover,
table.list.cal tr.even.hover{
	background:#ddd;
	}
/*
table.list.cal tr td:first-child{
	padding:5px;
	text-align: center;
	color: #666;
	background:#ccc;
	}
*/
table.list.cal ul,
table.list.cal li{
	list-style: none;
	}
table.list.cal ul{
	margin:0;
	}


/* 空き情報登録 */
#selectable div table tbody td {   border: 1px solid #ccc;
 }
#selectable div table tbody .ui-selecting { background: #FECA40; }
#selectable div table tbody .ui-selected { background: #F39814; color: white; }

/* ページ内リンク */
ul.menu-link li{
 display:inline-block;
}
ul.menu-link li:after{
 content:"｜";
 margin: 0 0 0 3px;
}
ul.menu-link li:last-child:after{
 content:"";
}
ul.menu-link li a:hover{
 text-decoration:underline;
}

/* 請求リスト 削除フラグレコードはグレー */
tr.dlt-flg{
  background: #FFCDD2;;
}
tr.cau-flg{
 background: #FFF9C4;
}

/* 請求詳細画面 */
#member-infomation{
  width: 100%;
  margin: 0px auto;
  padding: 0px 10px 0px;
  border: 2px solid #35A065;border-radius:5px;
}
/*
#member-infomation{
  width: 100%;
  margin: 10px auto;
  border: 2px solid #35A065;border-radius:5px;
}
*/
/*
#member-infomation p{
  margin: 0 0 10px 0;
}
 */
#monthly-sum,
#contract-sum,
#contract-memo,
#billing-monitor,
#billing-list,
#analysis-contract,
#analysis-amount
{
  padding: 38px 10px 10px;
}

#infomation {
  width: 100%;
  height: 93px;

  text-align: left;
  overflow-y: scroll;
}

#kadou-memo,
#kadou-monitor{
	padding: 38px 10px 10px;
}

#member-infomation legend,
#monthly-sum legend,
#contract-sum legend,
#contract-memo legend,
#billing-monitor legend,
#billing-list legend,
#analysis-contract legend,
#analysis-amount legend{
  top: 5px;
  left: 10px;
}

#kadou-memo legend,
#kadou-monitor legend{
	top: 5px;
	left: 10px;
}


#billing-list table.list th span {
  cursor:pointer;
  color:#35A065;
  font-size:1.6rem;
}

.button.memo{
  position: absolute;
  right: 10px;
  background: #FF7B7B;
  border-radius: 3px;
  border: 2px solid #FF7676;
  border-left: 2px solid  #FF9F9F;
  border-top: 2px solid  #FF9F9F;
  color: #fff;
  cursor: pointer;
  font-size: 12px;
  font-size: 1.2rem;
  padding: 0px 13px 0px 26px;
  transition: 0.3s;
  background:url(../img/common/ico_add_whc.png) 10px center #FF7B7B no-repeat;
  background-size: 12px;
}
.button.memo:hover {
  background: #FF9F9F;
  text-decoration: none;
  background:url(../img/common/ico_add_whc.png) 10px center #FF9F9F no-repeat;
  background-size: 12px;
}
#memo-field{
  display: none;
  width: 30%;
  min-width: 450px;
  background: #f9f9ed;
  border:10px solid #fff;
  box-shadow: 1px 1px 8px #333;
  border-radius: 3px;
  z-index: 3000;
  position: absolute;
  top: 120px;
  right: 40px;

}
#memo-field h2{
  padding: 10px;
  text-align: left;
}
#memo-field h2 #last-update{
  margin: 5px 0 0 10px;
  font-size: 14px;
  font-size: 1.4rem;
  font-weight: normal;
  float: right;
}

#memo-field .modal-close{
  padding: 6px 5px 6px 8px;
  position: absolute;
  top: -20px;
  right: -20px;
}
#memo-field #member-about{
  margin: 5px 10px;
  background: #fff;
  border: 2px solid #35A065;
  text-align: left;
  padding: 5px 10px;
  line-height: 1.6;
  border-radius: 5px;
}
#memo-field #member-notices,
#memo-field #member-memolog{
  border-bottom:1px dotted #66330e;
}
#memo-input,
#memo-field #member-notices,
#memo-field #member-memolog{
  padding: 15px 10px;
}
#memo-input h3,
#memo-field #member-notices h3,
#memo-field #member-memolog h3{
  text-align: left;
}

#memo-input textarea,
#member-notices textarea,
#member-memolog textarea{
  width: 100%;
  margin: 10px 0;
}


.wrap-box{
  width: 100%;
  text-align: center;
  min-height: 150px;
  margin: 0;
}
#monthly-sum,
#analysis-contract
{
	width: 33%;
	height: 100%;
	min-height: 140px;
	max-height: 158px;
	margin: 5px auto;
	display: inline-block;
	vertical-align: top;
}

#analysis-amount
{
	width: 33%;
	height: 100%;
	min-height: 140px;
	max-height: 300px;
	margin: 5px auto;
	display: inline-block;
	vertical-align: top;
}

#contract-sum,
#contract-memo,
#billing-monitor{
  width: 33%;
  height: 100%;
  min-height: 140px;
  max-height: 158px;
  margin: 10px auto;
  display: inline-block;
  vertical-align: top;
}

#kadou-memo,
#kadou-monitor{
	width: 33%;
	height: 100%;
	min-height: 140px;
	max-height: 158px;
	margin: 10px auto;
	display: inline-block;
	vertical-align: top;
}

#monthly-sum,
#analysis-contract,
#analysis-amount,
#contract-sum{
  overflow-y:scroll;
}
#member-infomation h2,
#monthly-sum h2,
#analysis-contract h2,
#analysis-amount h2,
#contract-sum h2,
#contract-memo h2,
#billing-monitor h2{
  font-size: 16px;
}
#monthly-sum table,
#analysis-contract table,
#analysis-amount table,
#contract-sum table{
  width: 100%;
  background: #fff;
  border-spacing: 0;
}
#monthly-sum table th,
#analysis-contract table th,
#analysis-amount table th
{
	padding: 2px 2px;
	background: #EFF8F3;
	border-bottom: 2px solid #35A065;
}
#contract-sum table th{
  padding: 5px 2px;
  background: #EFF8F3;
  border-bottom: 2px solid #35A065;
}
#monthly-sum table td,
#analysis-contract table td,
#analysis-amount table td{
	padding: 2px 2px;
	border-bottom: 1px solid #ccc;
}

#contract-sum table td{
  padding: 5px 2px;
  border-bottom: 1px solid #ccc;
}
#billing-list label{
  font-size: 12px;
  font-size: 1.2rem;
}
#billing-list .list{
  font-size: 12px;
  font-size: 1.2rem;
  margin: 0 0 10px 0;
}

#billing-list .list .slctdata td{
  border-top: 2px solid #35a065;
  border-bottom: 2px solid #35a065;
}

#billing-list .list .slctdata td:first-of-type{
  border-left: 2px solid #35a065;
}

#billing-list .list .slctdata td:last-of-type{
  border-right: 2px solid #35a065;
}

#billing-list .wrap-buttons{
  padding: 10px 0;
}
#billing-list .wrap-yscroll{
  max-height: 400px;
  overflow-y:scroll;
}
#list-count{
  font-size: 12px;
  font-size: 1.2rem;
  top: 6px;
  left: 130px;
  position: absolute;
}
#list-count span{
  font-size: 18px;
  font-size: 1.8rem;
  margin-right: 5px;
  font-weight: bold;
}
.button.dataset{
  min-width: 40px;
  color: #fff;
  background: #35A065;
  display: inline-block;
  text-align: center;
  margin: 0;
  padding: 4px 5px;
  border-radius: 3px;
}

#billing-form{
  margin: 20px auto 0;
  padding: 10px;
  background: #fff;
  box-shadow: 1px 1px 3px #666;
  border-radius: 3px;
  display:none;
}
#billing-form table{
  border-top: 1px solid #ccc;
  border-bottom: none;
  margin: 0 0 10px 0;
}
#billing-form .wrap-buttons{
  padding: 10px 0;
}

#contract-memo p,
#billing-monitor #information {
  text-align: left;

}
#kadou-memo,
#kadou-monitor{
	text-align: left;
}

/* 条件保存モーダル */
#col_saveitems{
  top: 200px;
  width: 600px;
  height: 25%;
  min-height: 200px;
  z-index:103;
}

#col_saveitems .modal-close{
  position: absolute;
  top: -2px;
  right: 0;
  left: auto;
  width: 40px;
  padding: 12px -4px;
}

#dialog-list-div p{
  font-size: 14px;
}
#dialog-list-div input[type="text"]{
  padding: 5px 10px;
  max-width: 280px;
}
#dialog-list-div .button{
  display: inline-block;
  padding: 5px 15px;
}
#dialog-list-div .button + p{
  margin: 15px 0 0 0;
  padding: 5px;
  color:
}
#dialog-list-div .button + p label{
  cursor: pointer;
  color: #2A65CA;
}
#dialog-list-div .button + p label:hover{
  color: #6A93D9;
}

/* 既存モーダルデザイン変更 */
.ui-widget-overlay{
    background:rgba(0,0,0,0.60);
    z-index:102;
}

#save{
    z-index:102;
}


/* 講師決定後popup */
#sche-field{
  display: none;
  width: 20%;
  min-width: 400px;
  background: #f9f9ed;
  border:10px solid #fff;
  box-shadow: 1px 1px 8px #333;
  border-radius: 3px;
  z-index: 100;
  position: fixed;
  top: 25%;
  right: 35%;
}
#sche-field .sche-close{
  padding: 6px 5px 6px 8px;
  position: absolute;
  top: -15px;
  right: -15px;
}
#sche-field{
  margin: 5px 10px;
  background: #fff;
  border: 2px solid #35A065;
  text-align: left;
  padding: 5px 10px;
  line-height: 1.6;
  border-radius: 5px;
}
#sche-input,
#sche-field,
#sche-field{
  padding: 15px 10px;
}
#sche-field,
#sche-field{
  text-align: left;
}
#sche-field .sche-buttons{
	padding: 10px 50px;
	margin: 0 0 0 90px;
}
.sche-close:hover {
  cursor: pointer;
  text-decoration: none;
}
.sche-close {
  display: inline-block;
  color: #fff;
  background: #333;
  padding: 6px 15px 6px 10px;
  margin: 2px auto;
  border-radius: 16px;
  text-align: center;
}
.sche-close:before {
  content: "×";
  font-weight: bold;
  margin: 0 5px 0 0;
}

.exp{color:#999999; font-size:10px;}

/* 消化数 */
#kadou #contents-main {
  padding: 70px 15px 10px 170px;
  overflow: hidden;
}
#kadou table {
  display: inline-block;
  white-space: nowrap;
  margin-bottom: 10px;
  width: 100%;
  max-width: 89vw;
  max-height: 80vh;
  overflow: scroll;
  padding: 0px 10px 10px 0px;
}
#kadou table.list {
  margin-bottom: 0px;
}
#kadou fieldset.detail {
  float: left;
}
#kadou th {
  position: sticky;
  width: 100px;
  top: 0;
  z-index: 1;
}

/* 媒体連携エラー ダッシュボード表示 */
#baitai-login-alert {
  font-weight: bold;
  padding: 5px 0;
  border: none;
  margin-bottom: 12px;
  background: #ffcdd2;
  border-radius: 8px;
  background:url(../img/common/ico_alert_rd.png) #ffcdd2 20px 50% no-repeat;
}
#baitai-login-alert ul {
  margin: 10px 90px 20px;
  font-size: 1.8rem;
  color: #ff0000;
}

/* アラート用〇アイコン */
.alert_icon {
  display: inline-block;
  top: 2px;
  right: -4px;
  width: 16px;
  height: 16px;
  border-radius: 12px;
  font-size: 14px;
  color: #fff;
  line-height: 16px;
  text-align: center;
  background: #ff0000;
  font-weight: bold;
  margin: 0 5px;
}