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

  リセットCSS

========================================================= */
pre, textarea {
    overflow: auto;
}

[hidden], audio:not([controls]), template {
    display: none;
}

details, main, summary {
    display: block;
}

input[type=number] {
    width: auto;
}

input[type=search] {
    -webkit-appearance: textfield;
}

input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none;
}

progress {
    display: inline-block;
}

small {
    font-size: 75%;
}

textarea {
    resize: vertical;
}

[unselectable] {
    -webkit-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
}

*, ::after, ::before {
    box-sizing: inherit;
    border-style: solid;
    border-width: 0;
}

* {
    font-size: inherit;
    line-height: inherit;
    margin: 0;
    padding: 0;
}

::after, ::before {
    text-decoration: inherit;
    vertical-align: inherit;
}

:root {
    -ms-overflow-style: -ms-autohiding-scrollbar;
    overflow-y: scroll;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    text-size-adjust: 100%;
    box-sizing: border-box;
    cursor: default;
    font: 16px/1.5 sans-serif;
    text-rendering: optimizeLegibility;
}
li {
    list-style: none;
}
a {
    text-decoration: none;
    color: #0070c9;
    transition: all 0.3s ease-in-out;
}
a:hover {
    opacity: 0.7;
}
audio, canvas, iframe, img, svg, video {
    vertical-align: middle;
}

button, input, select, textarea {
    background-color: transparent;
    color: inherit;
    font-family: inherit;
    font-style: inherit;
    font-weight: inherit;
    min-height: 1.5em;
}

code, kbd, pre, samp {
    font-family: monospace,monospace;
    }

nav ol, nav ul {
    list-style: none;
}

select {
    -moz-appearance: none;
    -webkit-appearance: none;
}

select::-ms-expand {
    display: none;
}

select::-ms-value {
    color: currentColor;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

::-moz-selection {
    background-color: #B3D4FC;
    text-shadow: none;
}

::selection {
    background-color: #B3D4FC;
    text-shadow: none;
}

 @media screen {
    [hidden~=screen] {
        display: inherit;
    }

    [hidden~=screen]:not(:active):not(:focus):not(:target) {
        clip: rect(0 0 0 0) !important;
        position: absolute !important;
    }
}

/* =========================================================

  共通CSS

========================================================= */
html, body {
min-height: 100%;
height: 100%;
}
body {
font-size: 16px;
font-family: "SF Pro JP","SF Pro Text","SF Pro Icons","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック","Helvetica Neue","Helvetica","Arial",sans-serif !important;
color: #504946;
line-height: 1.5;
margin-left: auto;
margin-right: auto;
background-color: #fff;
}
h1, h2, h3, h4, h5, h6 {
font-weight: normal;
}

/* =========================================================

  utility class

========================================================= */
.f11{ font-size:11px !important; }
.f12{ font-size:12px !important; }
.f13{ font-size:13px !important; }
.f14{ font-size:14px !important; }
.f16{ font-size:16px !important; }
.f18{ font-size:18px !important; }
.f20{ font-size:20px !important; }
.f25{ font-size:25px !important; }
.f30{ font-size:30px !important; }
.f35{ font-size:35px !important; }
.f40{ font-size:40px !important; }
.f50{ font-size:50px !important; }

.red {
    color: #E60012;
}
.blue {
    color: #0070c9;
}
.fl {
float: left;
}

.fr {
float: right;
}
/* テキスト位置  */
.tl {
    text-align: left !important;
}
.tc {
    text-align: center !important;
}
.tr {
    text-align: right !important;
}

.relative {
position: relative;
}

.absolute {
position: absolute;
}

.fixed {
position: fixed;
}

.mha {
margin-left: auto;
margin-right: auto;
}
.c_30 {
    margin: 30px auto 0;
}
.c_60 {
    margin: 60px auto 0;
}
.none {
display: none !important;
}
.block {
    display: block;
}
.m0 {
margin: 0px !important;
}

.mt0 {
margin-top: 0px !important;
}

.mt3 {
margin-top: 3px !important;
}

.mt5 {
margin-top: 5px !important;
}

.mt10 {
margin-top: 10px !important;
}

.mt15 {
margin-top: 15px !important;
}

.mt20 {
margin-top: 20px !important;
}

.mt25 {
margin-top: 25px !important;
}

.mt30 {
margin-top: 30px !important;
}

.mt40 {
margin-top: 40px !important;
}

.mt50 {
margin-top: 50px !important;
}

.mt60 {
margin-top: 60px !important;
}

.mt70 {
margin-top: 70px !important;
}

.mt80 {
margin-top: 80px !important;
}

.mt90 {
margin-top: 90px !important;
}

.mt100 {
margin-top: 100px !important;
}
.mt150 {
margin-top: 150px !important;
}
.mt200 {
margin-top: 200px !important;
}
.mt300 {
margin-top: 300px !important;
}
.mb0 {
margin-bottom: 0px !important;
}

.mb5 {
margin-bottom: 5px !important;
}

.mb10 {
margin-bottom: 10px !important;
}

.mb15 {
margin-bottom: 15px !important;
}

.mb20 {
margin-bottom: 20px !important;
}

.mb25 {
margin-bottom: 25px !important;
}

.mb30 {
margin-bottom: 30px !important;
}

.mb40 {
margin-bottom: 40px !important;
}

.mb50 {
margin-bottom: 50px !important;
}

.mb60 {
margin-bottom: 60px !important;
}

.mb70 {
margin-bottom: 70px !important;
}

.mb80 {
margin-bottom: 80px !important;
}

.mb90 {
margin-bottom: 90px !important;
}

.mb100 {
margin-bottom: 100px !important;
}

.mr0 {
margin-right: 0px !important;
}

.mr5 {
margin-right: 5px !important;
}

.mr10 {
margin-right: 10px !important;
}

.mr15 {
margin-right: 15px !important;
}

.mr20 {
margin-right: 20px !important;
}

.mr25 {
margin-right: 25px !important;
}

.mr30 {
margin-right: 30px !important;
}

.mr40 {
margin-right: 40px !important;
}

.mr50 {
margin-right: 50px !important;
}

.mr60 {
margin-right: 60px !important;
}

.mr70 {
margin-right: 70px !important;
}

.mr80 {
margin-right: 80px !important;
}

.mr90 {
margin-right: 90px !important;
}

.mr100 {
margin-right: 100px !important;
}

.ml0 {
margin-left: 0px !important;
}

.ml5 {
margin-left: 5px !important;
}

.ml10 {
margin-left: 10px !important;
}

.ml15 {
margin-left: 15px !important;
}

.ml20 {
margin-left: 20px !important;
}

.ml25 {
margin-left: 25px !important;
}

.ml30 {
margin-left: 30px !important;
}

.ml40 {
margin-left: 40px !important;
}

.ml50 {
margin-left: 50px !important;
}

.ml60 {
margin-left: 60px !important;
}

.ml70 {
margin-left: 70px !important;
}

.ml80 {
margin-left: 80px !important;
}

.ml90 {
margin-left: 90px !important;
}

.ml100 {
margin-left: 100px !important;
}

/* padding */
.p5 {
padding: 5px !important;
}
.p10 {
padding: 10px !important;
}
.p15 {
padding: 15px !important;
}
.p20 {
padding: 20px !important;
}
.p30 {
padding: 30px !important;
}
.p50 {
padding: 50px !important;
}
/* padding-top */
.pt0 {
padding-top: 0px !important;
}
.pt10 {
padding-top: 10px !important;
}
.pt20 {
padding-top: 20px !important;
}
.pt30 {
padding-top: 30px !important;
}
.pt50 {
padding-top: 50px !important;
}
.pt70 {
padding-top: 70px !important;
}
.pt75 {
    padding-top: 75px !important;
}
.pt80 {
padding-top: 80px !important;
}
.pt85 {
padding-top: 85px !important;
}
.pt90 {
padding-top: 90px !important;
}
.pt95 {
padding-top: 90px !important;
}
/* padding-left */
.pl0 {
padding-left: 0px !important;
}
.pl5 {
padding-left: 5px !important;
}
.pl10 {
padding-left: 10px !important;
}
.pl20 {
padding-left: 20px !important;
}
.pl30 {
padding-left: 30px !important;
}
.pl40 {
padding-left: 40px !important;
}
.pl45 {
padding-left: 45px !important;
}
.pl50 {
padding-left: 50px !important;
}
.pl52 {
padding-left: 52px !important;
}
.pl60 {
padding-left: 60px !important;
}
.pl100 {
padding-left: 100px !important;
}
.pl168 {
padding-left: 168px !important;
}
/* padding-right */
.pr0 {
padding-right: 0px !important;
}
.pr10 {
padding-right: 10px !important;
}
.pr20 {
padding-right: 20px !important;
}
.pr30 {
padding-right: 30px !important;
}
.pr50 {
padding-right: 50px !important;
}
/* padding-bottom */
.pb0 {
padding-bottom: 0 !important;
}
.pb5 {
padding-bottom: 5px !important;
}
.pb10 {
padding-bottom: 10px !important;
}
.pb20 {
padding-bottom: 20px !important;
}
.pb30 {
padding-bottom: 30px !important;
}
.pb50 {
padding-bottom: 50px !important;
}
.pb60 {
padding-bottom: 60px !important;
}
.pb70 {
padding-bottom: 70px !important;
}
.pb80 {
padding-bottom: 80px !important;
}
.pb90 {
padding-bottom: 90px !important;
}

.fwb {
font-weight: bold !important;
}

.fw{
color: #fff;
}

/* clearfix */
* html .cf {
	zoom: 1;
}

*+html .cf {
	zoom: 1;
}

.cf:after {
height: 0;
visibility: hidden;
content: " ";
display: block;
clear: both;
}


/*  flex  */
.flex {
display: -webkit-flex;
display: flex;
}

/* リスト
------------------------------------------*/
.disc{
    padding-left: 15px;
}
.disc > li {
    list-style-type: disc;
}
.disc > li + li {
    margin-top: 10px;
}
.decimal{
    padding-left: 20px;
}

.decimal > li {
    list-style-type: decimal;
}
.decimal > li + li {
    margin-top: 10px;
}