@charset "UTF-8";
@import url("https://fonts.googleapis.com/earlyaccess/notosansjapanese.css");


html {
margin: 0px;
padding: 0px;
font-size: 10px;
line-height: 1.5;
}
body {
margin: 0px;
padding: 0px;
font-family: 'Noto Sans Japanese', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo, Osaka, 'ＭＳ Ｐゴシック', 'MS PGothic', 'sans-serif';
color: #666666;
font-size: 1.4rem;
}
body.small {
font-size: 1.2rem;
}
body.medium {
font-size: 1.4rem;
}
body.large {
font-size: 1.6rem;
}



header,
footer,
article,
section,
aside,
nav {
margin: 0px;
padding: 0px;
}


h1,
h2,
h3,
h4,
h5,
h6{
font-size: 100%;
margin: 0px;
padding: 0px;
font-weight: normal;
}
p {
margin: 0px;
padding: 0px;
font-size: 100%;
text-align: justify;
}
figure {
margin: 0px;
padding: 0px;
}
dl,ol,ul {
margin: 0px;
padding: 0px 0px 0px 1em;
}
dt,dd,li {
margin: 0px;
padding: 0px;
}
th {
text-align: center;
}
em,strong {
font-style: normal;
font-weight: normal;
}

form {
margin: 0px;
padding: 0px;
}

a:link,
a:visited {
color: #A93BB0;
}
a:hover,
a:active {
color: #C489D0;
}






input[type="text"],
input[type="number"],
input[type="password"],
input[type="search"],
input[type="email"]{
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
border: none;
display: inline-block;
padding: 4px 10px 4px 10px;
background-color: #EFEFEF;
border-radius: 10px;
font-size: 1.6rem;
line-height: 20px;
color: #000;
margin: 0px 0px 2px 0px;
}
input[type="submit"],
input[type="button"]{
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
border: none;
background-color: #C489D0;
color: #FFF;
display: inline-block;
padding: 8px;
line-height: 30px;
font-size: 1.6rem;
border-radius: 8px;
text-decoration: none;
box-sizing: border-box;
cursor: pointer;
}



span.inputWrap input[type="text"],
span.inputWrap input[type="number"],
span.inputWrap input[type="password"],
span.inputWrap input[type="search"],
span.inputWrap input[type="email"]{
padding: 4px 28px 4px 10px;
}



input[type="text"]::placeholder,
input[type="number"]::placeholder,
input[type="password"]::placeholder{
  color: #ABABAB;
}

/* IE */
input[type="text"]:-ms-input-placeholder,
input[type="number"]:-ms-input-placeholder,
input[type="password"]:-ms-input-placeholder{
  color: #ABABAB;
}

/* Edge */
input[type="text"]::-ms-input-placeholder,
input[type="number"]::-ms-input-placeholder,
input[type="password"]::-ms-input-placeholder{
  color: #ABABAB;
}
input[type="text"]:placeholder-shown,
input[type="number"]:placeholder-shown,
input[type="password"]:placeholder-shown {
  color: #ABABAB;
}



textarea{
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
margin: 0px;
padding: 4px;
border: solid 1px #CCC;
outline: none;
background-color: #FFFFFF;
font-size: 1.6rem;
box-shadow: none;
min-width: 25em;
min-height: 6em;
}
option{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}
select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    height: 28px;
    background-color: rgba(255,255,255,0);
    z-index: 1;
    padding: 0 30px 0 10px;
    font-size: 1.6rem;
    border: solid 1px #CCC;
    border-radius: 6px;
    box-sizing: border-box;
}
select::-ms-expand {
    display: none;
}






table {
border-collapse: collapse;
margin: 0px;
padding: 0px;
}
th,td {
margin: 0px;
padding: 0px;
}











/*==================================================
汎用クラス
==================================================*/

.error {
box-shadow: 0px 0px 6px 0px #F00;
}







.btn_excel {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
border: none;
background-color: #77BA73 !important;
color: #FFF !important;
background-image: url(../../images/icon/icon_excel.svg);
background-position: left 10px center;
background-size: auto 30px;
background-repeat: no-repeat;
display: inline-block;
padding: 8px 30px 8px 50px;
line-height: 30px;
font-size: 1.6rem;
border-radius: 8px;
text-decoration: none;
box-sizing: border-box;
}
.btn_excel:hover {
opacity: 0.8;
}

.btn_html {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
border: none;
background-color: #8B90C9 !important;
color: #FFF !important;
background-image: url(../../images/icon/icon_html.svg);
background-position: left 16px center;
background-size: auto 30px;
background-repeat: no-repeat;
display: inline-block;
padding: 8px 8px 8px 50px;
line-height: 30px;
font-size: 1.6rem;
border-radius: 8px;
text-decoration: none;
box-sizing: border-box;
}
.btn_html:hover {
opacity: 0.8;
}




.selectWrap{
    position: relative;
    display: inline-block;
}
.selectWrap::after{
    content: '▼';
    display: block;
    font-size: 10px;
    color: #FFFFFF;
    background-color: #C489D0;
    opacity: 0.6;
    text-align: center;
    width: 16px;
    height: 16px;
    line-height: 16px;
    border-radius: 50%;

    position: absolute;
    top: 0;
    right: 6px;
    bottom: 0;
    left: auto;
    z-index: -1;
    margin: auto;
}


.inputWrap {
position: relative;
}
.inputWrap em {
position: absolute;
top: 0px;
right: 5px;
bottom: 0px;
left: auto;
z-index: 1;
margin: auto;
font-size: 10px;
line-height: 14px;
width: 14px;
height: 14px;
text-align: center;
color: #FFFFFF;
background-color: #CCCCCC;
border-radius: 50%;
cursor: pointer;
}
.inputWrap em:hover {
background-color: #999999;
}

small.showcnt {
font-size: 1.2rem;
font-weight: 200;
}



.minus {
color: #FF0000;
}
a.edit{
display: inline-block;
height: 20px;
background-image: url(../../images/icon/icon_edit.svg);
background-size: auto 20px;
background-repeat: no-repeat;
background-position: left center;
padding: 6px 0px 0px 22px;
font-size: 1.4rem;
line-height: 1;
letter-spacing: 0px;
cursor: pointer;
color: #C489D0;
text-decoration: underline;
}



.datepicker {
width: 12ex;
}


.overlimit {
display: block;
position: relative;
}
.overlimit::before {
content: "";
display: block;
background-color: rgba(255,255,255,0.8);
background-image: 
linear-gradient(-45deg, rgba(225,225,225,0.3) 25%, transparent 25%, transparent 50%, rgba(225,225,225,0.3) 50%, rgba(225,225,225,0.3) 75%, transparent 75%, transparent 100%), 
linear-gradient(45deg, rgba(225,225,225,0.3) 25%, transparent 25%, transparent 50%,  rgba(225,225,225,0.3) 50%, rgba(225,225,225,0.3) 75%, transparent 75%, transparent 100%);
background-size: 10px 10px;
border-radius: 20px;
position: absolute;
top: -5px;
right: -5px;
bottom: -5px;
left: -5px;
z-index: 10;
}

.overlimit::after {
content: "機能制限中";
display: block;
color: #C33;
font-weight: 300;
font-size: 2rem;
text-align: center;
line-height: 1;
position: absolute;
top: 50%;
right: 0px;
bottom: auto;
left: 0px;
z-index: 20;
transform: translateY(-50%);
}
.overlimit input {
pointer-events: none;
}




.submitarea_fixed {
min-width: 1024px;
max-width: 1280px;
box-sizing: border-box;
margin: 0px auto;
padding: 0px 30px;
position: fixed;
top: auto;
right: 0px;
bottom: 0px;
left: 0px;
}

.submitarea_fixed ul {
position: absolute;
list-style-type: none;
bottom: 20vh;
right: 30px;
margin: 0px;
padding: 0px;
animation-name: ulup;
animation-iteration-count: 1;
animation-duration: 1000ms;
animation-fill-mode: forwards;
}
@keyframes ulup {
0%{ bottom: -500px;}
100%{ bottom: 20vh;}
}

.submitarea_fixed ul li {
margin: 0px;
padding: 0px 0px 6px 0px;
}

.submitarea_fixed input {
display: block;
box-sizing: border-box;
width: 130px;
cursor: pointer;
}
.submitarea_fixed input:hover {
opacity: 0.9;
}

.submitarea_fixed input#regist {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
display: block;
width: 130px;
height: 130px;
line-height: 126px;
text-align: center;
font-size: 2rem;
letter-spacing: 2px;
font-weight: 500;
color: #FFF;
background-color: #666666;
background-image: radial-gradient(circle farthest-corner at 36px 36px,rgba(204,204,204,1),rgba(204,204,204,0));
border-radius: 20px;
border: none;
}
.submitarea_fixed input#regist.prompt {
background-color: #D54186;
background-image: radial-gradient(circle farthest-corner at 36px 36px,rgba(231,207,236,1),rgba(231,207,236,0));
animation-name: prompt;
animation-duration: 4000ms;
animation-iteration-count: infinite;
text-shadow: 0px 0px 4px #666;
}
@keyframes prompt {
0%{ background-color: #D54186; }
25%{ background-color: #C489D0; }
50%{ background-color: #D54186; }
}


.submitarea_fixed input#copy,
.submitarea_fixed input#delete {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
line-height: 34px;
text-align: center;
color: #FFF !important;
border: none;
border-radius: 12px;
font-size: 1.6rem;
}
.submitarea_fixed input#copy {
background-color: #3CA0CF;
}
.submitarea_fixed input#delete {
background-color: #4A4A4A;

}



aside#moodal {
display: none;
}
section#colorboxmessage {
background-color: #FFF;
padding: 40px;
color: #666;
line-height: 2;
}


/*ラジオボタン後のlabel*/
.radiolabel {
display: none;
}
.radiolabel + label {
display: block;
position: relative;
padding: 0px 0px 0px 20px;
cursor: pointer;
}
.radiolabel + label::before {
content: "";
display: block;
width: 16px;
height: 16px;
border: solid 1px #CCC;
box-sizing: border-box;
border-radius: 3px;
background-color: #EFEFEF;
cursor: pointer;
position: relative;
position: absolute;
top: 50%;
right: auto;
bottom: auto;
left: 0px;
transform: translateY(-50%);
}

.radiolabel + label::after {
content: "";
display: block;
width: 10px;
height: 10px;
border-radius: 50%;
background-color: #C489D0;
cursor: pointer;
position: absolute;
top: 50%;
right: auto;
bottom: auto;
left: 3px;
transform: translateY(-50%);
transition-duration: 300ms;
opacity: 0;
}
.radiolabel:checked + label::before {
background-color: #FFF;
}
.radiolabel:checked + label::after {
opacity: 1;
}



/*チェックボックス後のlabel*/
.checklabel {
display: none;
}
.checklabel + label {
display: inline-block;
position: relative;
padding: 0px 0px 0px 20px;
cursor: pointer;
}
.checklabel + label::before {
content: "";
display: block;
width: 14px;
height: 14px;
border: solid 1px #CCC;
box-sizing: border-box;
border-radius: 3px;
background-color: #EFEFEF;
cursor: pointer;
position: relative;
position: absolute;
top: 50%;
right: auto;
bottom: auto;
left: 3px;
transform: translateY(-50%);
}

.checklabel + label::after {
content: "";
display: block;
width: 0px;
height: 0px;
margin: auto;
border-style: solid;
border-color: transparent #C489D0 #C489D0 transparent;
border-width: 14px 4px 3px 6px;
position: absolute;
top: auto;
right: auto;
left: 6px;
bottom: 7px;
transform: rotate(45deg);
transition-duration: 300ms;
opacity: 0;
}
.checklabel:checked + label::before {
background-color: #FFF;
}
.checklabel:checked + label::after {
opacity: 1;
}


.page::before {
content: "Page: ";
}





/*==================================================
共通レイアウト
==================================================*/
div#content {
min-width: 1024px;
max-width: 1280px;
box-sizing: border-box;
margin: 0px auto;
padding: 80px 30px;
position: relative;
}


#content > h1 {
font-size: 3rem;
padding: 0px 0px 20px 10px;
margin: 0px;
line-height: 1;
letter-spacing: 4px;
font-weight: 200;
color: #333;
}
#content > h1 + p {
padding: 0px 0px 30px 10px;
color: #999;
}


section > h2 {
font-size: 2.6rem;
padding: 50px 0px 30px 10px;
line-height: 1;
letter-spacing: 4px;
font-weight: 200;
color: #333;
clear: both;
}



















