@charset "UTF-8";
html {
    font-family: sans-serif;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%
}
body {
    margin: 0
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary {
    display: block
}
audio, canvas, progress, video {
    display: inline-block;
    vertical-align: baseline
}
audio:not([controls]) {
    display: none;
    height: 0
}
[hidden], template {
    display: none
}
a {
    background-color: transparent
}
a:active, a:hover {
    outline: 0
}
abbr[title] {
    border-bottom: 1px dotted
}
b, strong {
    font-weight: 700
}
dfn {
    font-style: italic
}
mark {
    color: #000;
    background: #ff0
}
small {
    font-size: 80%
}
sub, sup {
    position: relative;
    font-size: 75%;
    line-height: 0;
    vertical-align: baseline
}
sup {
    top: -.5em
}
sub {
    bottom: -.25em
}
img {
    border: 0
}
svg:not(:root) {
    overflow: hidden
}
figure {
    margin: 1em 40px
}
hr {
    height: 0;
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box
}
pre {
    overflow: auto
}
code, kbd, pre, samp {
    font-family: monospace;
    font-size: 1em
}
button, input, optgroup, select, textarea {
    margin: 0;
    font: inherit;
    color: inherit
}
button {
    overflow: visible
}
button, select {
    text-transform: none
}
button, html input[type=button], input[type=reset], input[type=submit] {
    -webkit-appearance: button;
    cursor: pointer
}
button[disabled], html input[disabled] {
    cursor: default
}
button::-moz-focus-inner, input::-moz-focus-inner {
    padding: 0;
    border: 0
}
input {
    line-height: normal
}
input[type=checkbox], input[type=radio] {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0
}
input[type=number]::-webkit-inner-spin-button, input[type=number]::-webkit-outer-spin-button {
    height: auto
}
input[type=search] {
    -webkit-box-sizing: content-box;
    -moz-box-sizing: content-box;
    box-sizing: content-box;
    -webkit-appearance: textfield
}
input[type=search]::-webkit-search-cancel-button, input[type=search]::-webkit-search-decoration {
    -webkit-appearance: none
}
fieldset {
    padding: .35em .625em .75em;
    margin: 0 2px;
    border: 1px solid silver
}
legend {
    padding: 0;
    border: 0
}
textarea {
    overflow: auto
}
optgroup {
    font-weight: 700
}
table {
    border-spacing: 0;
    border-collapse: collapse
}
td, th {
    padding: 0
} /*! Source: https://github.com/h5bp/html5-boilerplate/blob/master/src/css/main.css */ @media print {
    *, :after, :before {
        color: #000 !important;
        text-shadow: none !important;
        background: 0 0 !important;
        -webkit-box-shadow: none !important;
        box-shadow: none !important
    }
    a, a:visited {
        text-decoration: underline
    }
    a[href]:after {
        content: " ("attr(href) ")"
    }
    abbr[title]:after {
        content: " ("attr(title) ")"
    }
    a[href^="#"]:after, a[href^="javascript:"]:after {
        content: ""
    }
    blockquote, pre {
        border: 1px solid #999;
        page-break-inside: avoid
    }
    thead {
        display: table-header-group
    }
    img, tr {
        page-break-inside: avoid
    }
    img {
        max-width: 100% !important
    }
    h2, h3, p {
        orphans: 3;
        widows: 3
    }
    h2, h3 {
        page-break-after: avoid
    }
    select {
        background: #fff !important
    }
}
*, :after, :before {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box
}
html {
    font-size: 10px;
    -webkit-tap-highlight-color: transparent
}
body {
    font-family: Helvetica Neue, Helvetica, Arial, sans-serif;
    font-size: 14px;
    line-height: 1.42857143;
    color: #333;
    background-color: #fff
}
button, input, select, textarea {
    font-family: inherit;
    font-size: inherit;
    line-height: inherit
}
a {
    color: #337ab7;
    text-decoration: none
}
a:focus, a:hover {
    color: #23527c;
    text-decoration: underline
}
a:focus {
    outline: thin dotted;
    outline: 5px auto -webkit-focus-ring-color;
    outline-offset: -2px
}
figure {
    margin: 0
}
img {
    vertical-align: middle
}
ol, ul {
    margin-top: 0;
    margin-bottom: 10px
}
ol ol, ol ul, ul ol, ul ul {
    margin-bottom: 0
}
html {
    color: #000;
    background: #fff
}
blockquote, body, code, dd, div, dl, dt, fieldset, form, h1, h2, h3, h4, h5, h6, input, legend, li, ol, p, pre, td, textarea, th, ul {
    margin: 0;
    padding: 0
}
table {
    border-collapse: collapse;
    border-spacing: 0
}
fieldset, img {
    border: 0
}
address, caption, cite, code, dfn, em, strong, th, var {
    font-style: normal;
    font-weight: 400
}
ol, ul {
    list-style: none
}
caption, th {
    text-align: left
}
h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    font-weight: 400
}
q:after, q:before {
    content: ''
}
abbr, acronym {
    border: 0;
    font-variant: normal
}
sup {
    vertical-align: text-top
}
sub {
    vertical-align: text-bottom
}
input, select, textarea {
    font-family: inherit;
    font-size: inherit;
    font-weight: inherit
}
legend {
    color: #000
}
#yui3-css-stamp.cssreset {
    display: none
}
@font-face {
    font-family: NotoSansCJKjp-Regular;
    src: url(../webfont/NotoSansCJKjp-Regular.woff) format('woff');
    color: #000;
    font-display: swap
}
@font-face {
    font-family: NotoSansCJKjp-Regular_ver;
    src: url(../webfont/NotoSansCJKjp-Regular_ver.woff) format('woff');
    color: #000;
    font-display: swap
}
@font-face {
    font-family: ShipporiMincho-Regular;
    src: url(../webfont/ShipporiMincho-Regular.woff) format("woff");
    -ms-font-feature-settings: "normal";
    color: #000;
    font-display: swap
}
@font-face {
    font-family: CenturyGothicStd-Bold;
    src: url(../webfont/CenturyGothicStd-Bold.woff) format("woff");
    -ms-font-feature-settings: "normal";
    color: #000;
    font-display: swap
}
@font-face {
    font-family: CenturyGothicStd;
    src: url(../webfont/CenturyGothicStd.woff) format("woff");
    -ms-font-feature-settings: "normal";
    color: #000;
    font-display: swap
}
body {
    font-family: NotoSansCJKjp-Regular, serif;
    font-style: normal;
    font-size: 15px;
    color: #333
}
html {
    scroll-behavior: smooth
}
.cjk-jp {
    font-family: noto-sans-cjk-jp, sans-serif;
    font-weight: 500;
    font-style: normal
}
.font1 {
    font-family: NotoSansCJKjp-Regular, serif;
    font-weight: 600;
    font-style: normal
}
.font2 {
    font-family: CenturyGothicStd-Bold, serif
}
.font3 {
    font-family: CenturyGothicStd, serif
}
#topcontrol {
    z-index: 999;
    margin: 15px
}
li, p, td, th {
    line-height: 1.8em;
    letter-spacing: .1em
}
h2, h3, h4, h5 {
    line-height: 1.5em;
    letter-spacing: .1em
}
a {
    line-height: 1.8em;
    letter-spacing: .17em;
    color: #0a131d;
    transition: .3s
}
a:hover {
    color: #0a131d
}
.center {
    text-align: center
}
.img100 img {
    width: 100%;
    height: auto
}
.img100p {
    width: 100%;
    height: auto
}
.container1680 {
    width: 90%;
    margin: 0 auto;
    max-width: 1680px
}
.container1500 {
    width: 90%;
    margin: 0 auto;
    max-width: 1500px
}
.container1440 {
    width: 90%;
    margin: 0 auto;
    max-width: 1440px
}
.container1280 {
    width: 90%;
    margin: 0 auto;
    max-width: 1280px
}
.container1200 {
    width: 90%;
    margin: 0 auto;
    max-width: 1200px
}
.container1140 {
    width: 90%;
    margin: 0 auto;
    max-width: 1140px
}
.container960 {
    width: 90%;
    max-width: 960px;
    margin: 0 auto
}
.z500 {
    position: relative;
    z-index: 500
}
.z10 {
    position: relative;
    z-index: 10
}
.flex_box {
    display: flex;
    justify-content: space-between
}
.item_center {
    align-items: center
}
.item_start {
    align-items: flex-start
}
.item_end {
    align-items: flex-end
}
.grid {
    display: grid
}
.grid-cols-1 {
    grid-template-columns: repeat(1, minmax(0, 1fr))
}
.grid-cols-2 {
    grid-template-columns: repeat(2, minmax(0, 1fr))
}
.overflow_hidden {
    overflow: hidden
}
.posi {
    position: relative
}
.relative {
    position: relative
}
.tel-link2 a {
    text-decoration: none;
    color: inherit
}
.tel-link2 {
    text-decoration: none;
    color: inherit
}
.br1500 {
    display: none
}
.br1024 {
    display: none
}
.br740 {
    display: none
}
.br480 {
    display: none
}
.t-hi {
    line-height: 2.4em
}
.opa-0 {
    opacity: 0
}
.order2 {
    order: 2
}
@media only screen and (min-width:1024px) {
    .lg\:grid-cols-3 {
        grid-template-columns: repeat(3, minmax(0, 1fr))
    }
    .lg\:grid-cols-4 {
        grid-template-columns: repeat(4, minmax(0, 1fr))
    }
}
@media only screen and (max-width:1580px) {
    .none1580 {
        display: none
    }
}
@media only screen and (max-width:1500px) {
    .br1500 {
        display: block
    }
}
@media only screen and (max-width:1024px) {
    .br1024 {
        display: block
    }
    .none1024 {
        display: none
    }
    .t-hi {
        line-height: 1.8em
    }
}
@media only screen and (max-width:740px) {
    body {
        font-size: 17px
    }
    #topcontrol {
        margin: 15px 15px 80px 0;
    }
    #topcontrol img {
        width: 30px;
        height: auto
    }
    .container1140, .container1200, .container1280, .container1440, .container1500, .container1680, .container960 {
        width: 88%
    }
    .br740 {
        display: block
    }
    .none740 {
        display: none
    }
    .flex_box {
        display: block
    }
}
@media only screen and (max-width:480px) {
    .br480 {
        display: block
    }
    .none480 {
        display: none
    }
}