﻿/*
    base Stylesheet
*/
html {
	overflow-y: scroll;
}
html, body {
    font-size: 62.5%;
    height: 100%;
}
body {
    font-family: Meiryo, "メイリオ", 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'MS PGothic', sans-serif;
    line-height: 1.4;
    color: #4d4d4d;
    background: #f0f0f0;
    font-size: 1.4rem;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    text-size-adjust: 100%;
    text-rendering: auto;
}

/* Link */
a, a:link {
    color: #0000ff;
    text-decoration: underline;
}
a:hover {
    text-decoration: underline;
}
a:visited {
    color: #551a8b;
}

/* Clear */
.noMargin { margin: 0 !important; }
.noPadding { padding: 0 !important; }
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    visibility: hidden;
}

/* Font weight */
.fw-normal { font-weight: normal; }
.fw-bold   { font-weight: bold; }

/* Text align */
.ta-left   { text-align: left;   }
.ta-center { text-align: center; }
.ta-right  { text-align: right;  }

/* Vertical align */
.va-top    { vertical-align: top; }
.va-middle { vertical-align: middle; }
.va-bottom { vertical-align: bottom; }

/* Float */
.f-left { float: left; }
.f-right { float: right; }
.f-clear { clear: both; }

/* Display */
.block { display: block; }
.flex { display: flex; }
.none { display: none; }

/* Position */
.relative { position: relative; }
.absolute { position: absolute; }

/* Underline */
.u-line { text-decoration: underline; }

/* Font size */
.px8 {
    font-size: 8px;
}
.px10 { font-size: 10px; }
.px12 { font-size: 12px; }
.px14 { font-size: 14px; }
.px16 { font-size: 16px; }
.px18 { font-size: 18px; }
.px20 { font-size: 20px; }

/* Margin */
.mt5    { margin-top: 5px;  }
.mt10   { margin-top: 10px; }
.mt15   { margin-top: 15px; }
.mt20   { margin-top: 20px; }
.mt25   { margin-top: 25px; }
.mt30   { margin-top: 30px; }

.ml5    { margin-left: 5px;  }
.ml10   { margin-left: 10px; }
.ml15   { margin-left: 15px; }
.ml20   { margin-left: 20px; }
.ml25   { margin-left: 25px; }
.ml30   { margin-left: 30px; }

.mr5    { margin-right: 5px;  }
.mr10   { margin-right: 10px; }
.mr15   { margin-right: 15px; }
.mr20   { margin-right: 20px; }
.mr25   { margin-right: 25px; }
.mr30   { margin-right: 30px; }

.mb5    { margin-bottom: 5px;  }
.mb10   { margin-bottom: 10px; }
.mb15   { margin-bottom: 15px; }
.mb20   { margin-bottom: 20px; }
.mb25   { margin-bottom: 25px; }
.mb30   { margin-bottom: 30px; }

/* Input */
input,
select,
textarea,
button {
    font-family: Meiryo, "メイリオ", 'Hiragino Kaku Gothic ProN', 'ヒラギノ角ゴ ProN W3', 'MS PGothic', sans-serif;
}
input[type="text"],
input[type="password"],
input[type="number"],
select {
    box-sizing: border-box;
    padding: 8px;
}
input[type="radio"] {
    margin: 4px;
}
select {
    min-width: 140px;
}

/* Button */
.btn,
.dl-btn,
.st-btn {
    background: #1058a0;
    color: #fff;
    font-size: 1em;
    font-weight: bold;
    cursor: pointer;
    width: 80%;
    max-width: 300px;
    line-height: 1.4;
    padding: 8px;
    border: none;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-transition: .4s;
    -moz-transition: .4s;
    transition: .4s;
}
.btn:disabled,
.st-btn:disabled {
    background: #999;
    cursor: default;
}
.btn.back {
    color: #1058a0;
    background: #fff;
    border: 2px solid #1058a0;
}
.btn.inh {
    min-width: inherit;
}
.btn.temp {
    background-color: #fff;
    background-image: url(../images/t002-temp.png);
    background-repeat: no-repeat;
    background-size: 50px 50px;
    display: inline-block;
    height: 50px;
    width: 50px;
    min-width: inherit;
    line-height: 1;
    text-align: center;
    border-radius: 4px;
    position: fixed;
    bottom: 20px;
    right: 10px;
}
.btn:hover, .btn:active, .dl-btn:hover, .dl-btn:active, .st-btn:hover, .st-btn:active {
    opacity: 0.8;
}
a.btn {
    text-decoration: none;
}

.btn.aspNetDisabled {
    cursor: auto;
    background-color: #ACAEB1;
}

.dl-btn {
    min-width: 200px;
    background-image: url(../images/icon/ico-dl.svg);
    background-position: 20px center;
    background-repeat: no-repeat;
    background-size: 20px 20px;
    padding: 8px 8px 8px 40px;
}
.dl-btn:disabled {
    background-color: #999;
    cursor: default;
}

.st-btn {
    background: #3d9dd8;
    min-width: 120px;
}


/* Error */
.error {
    color: #e3324a;
}
.error-block {
    display: block;
    padding: 10px 0;
    text-align: center;
}

/* required */
.required:after {
    content: "*";
    display: inline-block;
    position: absolute;
    color: #e3324a;
    font-size: 17px;
    padding-left: 5px;
}
.required-txt {
    display: block;
    font-size: 0.9em;
    color: #e3324a;
}