@charset "UTF-8";
/* =======================================
	CommonElements
======================================= */
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, dialog, figure, footer, header, hgroup, menu, nav, section, time, mark, audio, video {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
}

body, html {
    height: 100%;
    width: 100%
}

body {
    font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "かなリオ", Meiryo, sans-serif;
}

article, aside, dialog, figure, footer, header, hgroup, nav, section {
    display: block;
}

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

blockquote, q {
    quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
    content: '';
    content: none;
}

a {
    margin: 0;
    padding: 0;
    border: 0;
    background: transparent;
    text-decoration: none;
    color: #000;
    transition: all 300ms ease 0s;
}

a:focus {
    outline: thin dotted;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px;
}

a.textlink {
    color: #BA0015;
    text-decoration: underline !important
}

img {
    margin: 0;
    padding: 0;
    vertical-align: bottom;
}

ins {
    background-color: #ff9;
    color: #000;
    text-decoration: none;
}

mark {
    background-color: #ff9;
    color: #000;
    font-style: italic;
    font-weight: bold;
}

del {
    text-decoration: line-through;
}

abbr[title], dfn[title] {
    border-bottom: 1px dotted #000;
    cursor: help;
}

table {
    border-collapse: collapse;
    border-spacing: 0;
    width: 100%;
}

table th {
    padding: 10px;
    text-align: left;
    vertical-align: middle;
    white-space: nowrap;
}

table td {
    padding: 0 0 15px 0
}

hr {
    display: block;
    height: 1px;
    border: 0;
    border-top: 1px solid #ccc;
    padding: 0;
}

input {
    vertical-align: middle;
}

select {
    -moz-appearance: none;
    -webkit-appearance: none;
    -o-appearance: none;
    -ms-appearance: none;
    appearance: none;
    border-radius: 0;
    border: 0;
    margin: 0;
    padding: 0;
    background: none transparent;
    vertical-align: middle;
    font-size: inherit;
    color: inherit;
    box-sizing: content-box;
}

textarea {
    width: 100%;
    resize: none;
    padding: 10px;
    min-height: 140px;
    box-sizing: border-box;
    border-radius: .5rem;
}

input[type="text"], input[type="tel"], input[type="email"], input[type="password"], input[type="time"], input[type="url"], input[type="number"] {
    box-sizing: border-box;
    padding: .8rem;
    border-radius: 0;
    font-size: .875rem;
}

body.fixed {
    position: fixed;
    overflow: hidden;
    width: 100%;
    height: 100%;
}

button:focus {
    outline: none;
    box-shadow: none !important;
}

* {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}

/*-----------------
  Font Size
------------------*/
.f-8 {
    font-size: .5rem !important
}

.f-10 {
    font-size: .625rem !important
}

.f-11 {
    font-size: .6875rem !important
}

.f-12 {
    font-size: .75rem !important
}

.f-13 {
    font-size: .8125rem !important
}

.f-14 {
    font-size: .875rem !important
}

.f-15 {
    font-size: .9375rem !important
}

.f-16 {
    font-size: 1rem !important
}

.f-17 {
    font-size: 1.0625rem !important
}

.f-18 {
    font-size: 1.125rem !important
}

.f-19 {
    font-size: 1.1875rem !important
}

.f-20 {
    font-size: 1.25rem !important
}

.f-22 {
    font-size: 1.375rem !important
}

.f-24 {
    font-size: 1.5rem !important
}

.f-26 {
    font-size: 1.625rem !important
}

.f-28 {
    font-size: 1.75rem !important
}

.f-30 {
    font-size: 1.875rem !important
}

.f-32 {
    font-size: 2rem !important
}

.f-34 {
    font-size: 2.125rem !important
}

.f-36 {
    font-size: 2.25rem !important
}

.f-38 {
    font-size: 2.375rem !important
}

.f-56 {
    font-size: 3.5rem !important
}

/*-----------------
  Font Weight
------------------*/
.fw-normal {
    font-weight: normal !important
}

.fw-bold {
    font-weight: bold !important
}

/*-----------------
  Display
------------------*/
.display-none {
    display: none
}

.display-block {
    display: block
}

.display-inline {
    display: inline
}

.display-inline-block {
    display: inline-block
}

.display-inherit {
    display: inherit
}

.display-table {
    display: table
}

.display-flex {
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
}

.display-flex-center {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    align-items: center;
}

.display-flexjustifycenter {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: center;
    justify-content: center;
}

.display-flex-between {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.display-flex-around {
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-around;
    justify-content: space-around;
    -webkit-align-items: center;
    align-items: center;
}

.align-center {
    -webkit-align-items: center;
    align-items: center;
}

.align-start {
    -webkit-justify-content: flex-start;
    justify-content: flex-start;
}

.flex-end {
    -webkit-justify-content: flex-end;
    justify-content: flex-end;
}

.align-end {
    -webkit-align-items: flex-end;
    align-items: flex-end;
}

.align-items {
    -webkit-align-items: flex-start;
    align-items: flex-start;
}

.flex-wrap {
    -ms-flex-wrap: wrap;
    -webkit-flex-wrap: wrap;
    flex-wrap: wrap;
}

.flex-flow {
    flex-flow: row-reverse;
}

.flex-fl-column {
    flex-flow: column;
}

.flex-shrink {
    flex-shrink: 0;
}

/*-----------------
  Text Alignment
------------------*/
.center {
    text-align: center
}

.left {
    text-align: left
}

.right {
    text-align: right
}

.inherit {
    text-align: inherit
}

/*-----------------
  Line Height
------------------*/
.line-height-normal {
    line-height: normal
}

.line-height-exs {
    line-height: 1
}

.line-height-xs {
    line-height: 1.4
}

.line-height {
    line-height: 2.2
}

.line-height-lg {
    line-height: 2.6
}

/*-----------------
  nowrap / Overflow
------------------*/
.nowrap {
    white-space: nowrap
}

.overflow-hidden {
    overflow: hidden;
}

.overflow-y-scroll {
    overflow-y: scroll
}

/*-----------------
  Width
------------------*/
.width-auto {
    width: auto
}

.width-100-percent {
    width: 100%
}

.min-width300 {
    min-width: 300px
}

/*-----------------
  Margin Bottom
------------------*/
.mb-0 {
    margin-bottom: 0
}

.mb-2 {
    margin-bottom: .125rem
}

.mb-4 {
    margin-bottom: .25rem
}

.mb-5 {
    margin-bottom: .3125rem
}

.mb-10 {
    margin-bottom: .625rem
}

.mb-15 {
    margin-bottom: .9375rem
}

.mb-20 {
    margin-bottom: 1.25rem
}

.mb-25 {
    margin-bottom: 1.5625rem
}

.mb-30 {
    margin-bottom: 1.875rem
}

.mb-35 {
    margin-bottom: 2.1875rem
}

.mb-40 {
    margin-bottom: 2.5rem
}

.mb-45 {
    margin-bottom: 2.8125rem
}

.mb-50 {
    margin-bottom: 3.125rem
}

.mb-60 {
    margin-bottom: 3.75rem
}

.mb-70 {
    margin-bottom: 4.375rem
}

.mb-80 {
    margin-bottom: 5rem
}

.mb-90 {
    margin-bottom: 5.625rem
}

.mb-100 {
    margin-bottom: 6.25rem
}

/*-----------------
  Margin Top
------------------*/
.mt-0 {
    margin-top: 0
}

.mt-5 {
    margin-top: .3125rem
}

.mt-10 {
    margin-top: .625rem
}

.mt-15 {
    margin-top: .9375rem
}

.mt-20 {
    margin-top: 1.25rem
}

.mt-25 {
    margin-top: 1.5625rem
}

.mt-30 {
    margin-top: 1.875rem
}

.mt-35 {
    margin-top: 2.1875rem
}

.mt-40 {
    margin-top: 2.5rem
}

.mt-45 {
    margin-top: 2.8125rem
}

.mt-50 {
    margin-top: 3.125rem!important;
}

.mt-60 {
    margin-top: 3.75rem
}

.mt-70 {
    margin-top: 4.375rem
}

.mt-80 {
    margin-top: 5rem !important;
}

.mt-90 {
    margin-top: 5.625rem
}

.mt-100 {
    margin-top: 6.25rem
}

/*-----------------
  Margin Left
------------------*/
.ml-auto {
    margin-left: auto
}

.ml-0 {
    margin-left: 0
}

.ml-5 {
    margin-left: .3125rem
}

.ml-10 {
    margin-left: .625rem
}

.ml-15 {
    margin-left: .9375rem
}

.ml-20 {
    margin-left: 1.25rem
}

.ml-25 {
    margin-left: 1.5625rem
}

.ml-30 {
    margin-left: 1.875rem
}

.ml-35 {
    margin-left: 2.1875rem
}

.ml-40 {
    margin-left: 2.5rem
}

.ml-45 {
    margin-left: 2.8125rem
}

.ml-50 {
    margin-left: 3.125rem
}

.ml-60 {
    margin-left: 3.75rem
}

.ml-70 {
    margin-left: 4.375rem
}

.ml-80 {
    margin-left: 5rem
}

.ml-90 {
    margin-left: 5.625rem
}

.ml-100 {
    margin-left: 6.25rem
}

/*-----------------
  Padding-bottom
------------------*/
.pb-30 {
    padding-bottom: 30px
}

/*-----------------
  Margin Right
------------------*/
.mr-auto {
    margin-right: auto
}

.mr-0 {
    margin-right: 0
}

.mr-5 {
    margin-right: .3125rem
}

.mr-10 {
    margin-right: .625rem
}

.mr-15 {
    margin-right: .9375rem
}

.mr-20 {
    margin-right: 1.25rem
}

.mr-25 {
    margin-right: 1.5625rem
}

.mr-30 {
    margin-right: 1.875rem
}

.mr-35 {
    margin-right: 2.1875rem
}

.mr-40 {
    margin-right: 2.5rem
}

.mr-45 {
    margin-right: 2.8125rem
}

.mr-50 {
    margin-right: 3.125rem
}

.mr-60 {
    margin-right: 3.75rem
}

.mr-70 {
    margin-right: 4.375rem
}

.mr-80 {
    margin-right: 5rem
}

.mr-90 {
    margin-right: 5.625rem
}

.mr-100 {
    margin-right: 6.25rem
}

/*-----------------
  Padding X (left & right)
------------------*/
.pa-x0 {
    padding-left: 0;
    padding-right: 0
}

.pa-x5 {
    padding-left: .3125rem;
    padding-right: .3125rem
}

.pa-x10 {
    padding-left: .625rem;
    padding-right: .625rem
}

.pa-x15 {
    padding-left: .9375rem;
    padding-right: .9375rem
}

.pa-x20 {
    padding-left: 1.25rem;
    padding-right: 1.25rem
}

.pa-x25 {
    padding-left: 1.5625rem;
    padding-right: 1.5625rem
}

.pa-x30 {
    padding-left: 1.875rem;
    padding-right: 1.875rem
}

.pa-x35 {
    padding-left: 2.1875rem;
    padding-right: 2.1875rem
}

.pa-x40 {
    padding-left: 2.5rem;
    padding-right: 2.5rem
}

.pa-x45 {
    padding-left: 2.8125rem;
    padding-right: 2.8125rem
}

.pa-x50 {
    padding-left: 3.125rem;
    padding-right: 3.125rem
}

.pa-x60 {
    padding-left: 3.75rem;
    padding-right: 3.75rem
}

.pa-x70 {
    padding-left: 4.375rem;
    padding-right: 4.375rem
}

.pa-x80 {
    padding-left: 5rem;
    padding-right: 5rem
}

.pa-x90 {
    padding-left: 5.625rem;
    padding-right: 5.625rem
}

.pa-x100 {
    padding-left: 6.25rem;
    padding-right: 6.25rem
}

/*-----------------
  Padding Y (top & bottom)
------------------*/
.pa-y0 {
    padding-top: 0;
    padding-bottom: 0
}

.pa-y4 {
    padding-top: .25rem;
    padding-bottom: .25rem
}

.pa-y5 {
    padding-top: .3125rem;
    padding-bottom: .3125rem
}

.pa-y10 {
    padding-top: .625rem;
    padding-bottom: .625rem
}

.pa-y15 {
    padding-top: .9375rem;
    padding-bottom: .9375rem
}

.pa-y20 {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem
}

.pa-y25 {
    padding-top: 1.5625rem;
    padding-bottom: 1.5625rem
}

.pa-y30 {
    padding-top: 1.875rem;
    padding-bottom: 1.875rem
}

.pa-y35 {
    padding-top: 2.1875rem;
    padding-bottom: 2.1875rem
}

.pa-y40 {
    padding-top: 2.5rem;
    padding-bottom: 2.5rem
}

.pa-y45 {
    padding-top: 2.8125rem;
    padding-bottom: 2.8125rem
}

.pa-y50 {
    padding-top: 3.125rem;
    padding-bottom: 3.125rem
}

.pa-y60 {
    padding-top: 3.75rem;
    padding-bottom: 3.75rem
}

.pa-y70 {
    padding-top: 4.375rem;
    padding-bottom: 4.375rem
}

.pa-y80 {
    padding-top: 5rem;
    padding-bottom: 5rem
}

.pa-y90 {
    padding-top: 5.625rem;
    padding-bottom: 5.625rem
}

.pa-y100 {
    padding-top: 6.25rem;
    padding-bottom: 6.25rem
}

/*-----------------
  Ul li padding X (left & right)
------------------*/
.li-lr0 > li {
    padding-left: 0;
    padding-right: 0
}

.li-lr2 > li {
    padding-left: .125rem;
    padding-right: .125rem
}

.li-lr4 > li {
    padding-left: .25rem;
    padding-right: .25rem
}

.li-lr5 > li {
    padding-left: .3125rem;
    padding-right: .3125rem
}

.li-lr10 > li {
    padding-left: .625rem;
    padding-right: .625rem
}

.li-lr15 > li {
    padding-left: .9375rem;
    padding-right: .9375rem
}

.li-lr20 > li {
    padding-left: 1.25rem;
    padding-right: 1.25rem
}

/*-----------------
  Ul li padding Y (top & bottom)
------------------*/
.li-tb0 > li {
    padding-top: 0;
    padding-bottom: 0
}

.li-tb2 > li {
    padding-top: .125rem;
    padding-bottom: .125rem
}

.li-tb4 > li {
    padding-top: .25rem;
    padding-bottom: .25rem
}

.li-tb5 > li {
    padding-top: .3125rem;
    padding-bottom: .3125rem
}

.li-tb10 > li {
    padding-top: .625rem;
    padding-bottom: .625rem
}

.li-tb15 > li {
    padding-top: .9375rem;
    padding-bottom: .9375rem
}

.li-tb20 > li {
    padding-top: 1.25rem;
    padding-bottom: 1.25rem
}

/*-----------------
  Ul li border-bottom
------------------*/
.solid li {
    border-bottom: solid 1px #F5F3F1
}

/*-----------------
  Colors
------------------*/
.color-text {
    color: #000 !important
}

.white {
    color: #fff !important
}

.gray {
    color: #7c7686 !important
}

.red {
    color: #BA0015 !important
}

.pink {
    color: #F55D7A !important
}

.blue {
    color: #0027ee !important
}

.bg-white {
    background-color: #fff !important
}

.bg-Light-gray {
    background-color: #F5F3F1
}

.bg-green {
    background-color: green !important;
}

.cursor-pointer {
    cursor: pointer;
}

.hide {
    display: none;
}

.display-flow-wrap {
    flex-flow: row wrap;
}

.color-orange {
    color: #F29600 !important;
}

.color-danger {
    color: #DD450D !important;
}
