.anim-fadeup {
    transform: translateY(20px);
    opacity: 0;
    -webkit-transition: 0.5s ease all;
    -moz-transition: 0.5s ease all;
    -ms-transition: 0.5s ease all;
    -o-transition: 0.5s ease all;
    transition: 0.5s ease all
}

.anim-fadeup.is-animated {
    transform: translateY(0);
    opacity: 1
}

.anim-fade {
    opacity: 0;
    -webkit-transition: 0.5s ease all;
    -moz-transition: 0.5s ease all;
    -ms-transition: 0.5s ease all;
    -o-transition: 0.5s ease all;
    transition: 0.5s ease all
}

.anim-fade.is-animated {
    opacity: 1
}

.clearfix::after {
    content: "";
    clear: both;
    display: table
}

p {
    margin: 0;
    padding: 0
}

ol,
ul {
    list-style: none;
    margin: 0;
    padding: 0
}

input,
textarea {
    margin: 0;
    font-size: 100%;
    resize: none
}

input[type="text"],
input[type="date"],
input[type="email"],
input[type="number"],
input[type="url"] {
    word-break: normal;
    white-space: nowrap;
    -webkit-appearance: none;
    -moz-appearance: none;
    -ms-appearance: none;
    -o-appearance: none;
    appearance: none
}

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

dl,
dt,
dd,
th,
td {
    margin: 0;
    padding: 0
}

h1,
h2,
h3,
h4,
h5,
h6 {
    font-weight: normal;
    margin: 0;
    padding: 0
}

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video,
dialog {
    margin: 0;
    padding: 0;
    border: 0;
    outline: 0;
    font-size: 100%;
    vertical-align: baseline;
    background: transparent
}

img {
    margin: 0;
    padding: 0;
    vertical-align: middle;
    border: 0;
    max-width: 100%;
    height: auto
}

table img {
    margin: 0;
    padding: 0;
    vertical-align: middle;
    border: 0
}

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

nav ul {
    list-style: none
}

*,
*:before,
*:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
    -o-box-sizing: border-box;
    box-sizing: border-box;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale
}

*:focus {
    outline: none !important
}

label,
select,
button {
    cursor: pointer
}

input,
textarea,
select,
button {
    font-family: inherit
}

a {
    outline: none;
    transition: opacity 0.5s;
    cursor: pointer
}

@media only screen and (min-width: 1025px) {
    a:hover {
        opacity: 0.5
    }
}

a:link,
a:visited,
a:active {
    color: #444;
    text-decoration: none
}

.ffN {
    font-family: "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro W3", "ヒラギノ角ゴ W3", "メイリオ", "Osaka", "ＭＳ Ｐゴシック", "MS PGothic", sans-serif
}

.ffM {
    font-family: "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif
}

.ffYG {
    font-family: "游ゴシック体", "游ゴシック", "YuGothic", "Yu Gothic", "Noto Sans JP", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif
}

.ffYM {
    font-family: "游明朝体", "游明朝", "YuMincho", "Yu Mincho", "Noto Serif JP", "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif
}

.screen-reader-text {
    clip: rect(1px, 1px, 1px, 1px);
    position: absolute !important;
    white-space: nowrap;
    height: 1px;
    width: 1px;
    overflow: hidden
}

.screen-reader-text:focus {
    background-color: #f1f1f1;
    border-radius: 3px;
    box-shadow: 0 0 2px 2px rgba(0, 0, 0, 0.6);
    clip: auto !important;
    color: #21759b;
    display: block;
    font-size: 14px;
    font-size: 0.875rem;
    font-weight: bold;
    height: auto;
    left: 5px;
    line-height: normal;
    padding: 15px 23px 14px;
    text-decoration: none;
    top: 5px;
    width: auto;
    z-index: 100000
}

html {
    font-size: 62.5%;
    -webkit-text-size-adjust: 100%;
    -moz-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    -o-text-size-adjust: 100%;
    text-size-adjust: 100%
}

html.is-ipad * {
    -webkit-text-size-adjust: none;
    -moz-text-size-adjust: none;
    -ms-text-size-adjust: none;
    -o-text-size-adjust: none;
    text-size-adjust: none
}

body {
    background-color: #f8f6f0;
    width: 100%;
    height: 100%;
    word-break: break-word;
    margin: 0;
    padding: 0;
    font-family: "source-han-sans-japanese", sans-serif;
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: 0em;
    font-weight: 400;
    color: #313133
}

#wrap {
    display: block;
    position: relative;
    padding-bottom: 107px
}

@media (max-width: 767px) {
    #wrap {
        padding-bottom: 60px
    }
}

#wrap:after {
    content: "";
    position: absolute;
    width: 100%;
    left: 0;
    right: 0;
    z-index: -1
}

@media (min-width: 768px) {
    #wrap:after {
        height: 720px;
        bottom: -200px;
        background: #e9f0f2;
        background: -moz-linear-gradient(0deg, #e9f0f2 0%, #f8f6f0 100%);
        background: -webkit-linear-gradient(0deg, #e9f0f2 0%, #f8f6f0 100%);
        background: linear-gradient(0deg, #e9f0f2 0%, #f8f6f0 100%)
    }
}

@media (max-width: 767px) {
    #wrap:after {
        height: 284px;
        bottom: -124px;
        background: #e9f0f2;
        background: -moz-linear-gradient(0deg, #dde8eb 0%, #f8f6f0 100%);
        background: -webkit-linear-gradient(0deg, #dde8eb 0%, #f8f6f0 100%);
        background: linear-gradient(0deg, #dde8eb 0%, #f8f6f0 100%)
    }
}

.inner_1080 {
    max-width: 1128px;
    width: 100%;
    margin: 0 auto;
    padding: 0 24px
}

.inner_1180 {
    max-width: 1230px;
    width: 100%;
    margin: 0 auto;
    padding: 0 15px
}

.inner_1000 {
    max-width: 1050px;
    width: 100%;
    margin: 0 auto;
    padding: 0 25px
}

@media (min-width: 768px) {

    .sp,
    .SP {
        display: none !important
    }
}

@media (max-width: 767px) {

    .pc,
    .PC {
        display: none !important
    }
}

.alignnone {
    margin: 5px 0 20px
}

.aligncenter,
div.aligncenter {
    display: block;
    margin: 5px auto 5px auto
}

.alignright {
    float: right;
    margin: 5px 0 20px auto
}

.alignleft {
    float: left;
    margin: 5px auto 20px 0
}

a img.alignright {
    float: right;
    margin: 5px 0 20px auto
}

a img.alignnone {
    margin: 5px 0 20px
}

a img.alignleft {
    float: left;
    margin: 5px auto 20px 0
}

a img.aligncenter {
    display: block;
    margin-left: auto;
    margin-right: auto
}

.wp-caption {
    background: #fff;
    border: 1px solid #f0f0f0;
    max-width: 96%;
    padding: 5px 3px 10px;
    text-align: center
}

.wp-caption.alignnone {
    margin: 5px 0 20px
}

.wp-caption.alignleft {
    margin: 5px auto 20px 0
}

.wp-caption.alignright {
    margin: 5px 0 20px auto
}

.wp-caption img {
    border: 0 none;
    height: auto;
    margin: 0;
    max-width: 98.5%;
    padding: 0;
    width: auto
}

.wp-caption p.wp-caption-text {
    font-size: 11px;
    line-height: 17px;
    margin: 0;
    padding: 0 4px 5px
}

.wp-video {
    max-width: 100%;
    margin-bottom: 40px
}

.wp-video video {
    max-width: 100%;
    height: auto
}

.cms-content {
    color: #4b4b4d;
    -webkit-text-size-adjust: none;
    -ms-text-size-adjust: none;
    word-wrap: break-word
}

.cms-content::after {
    content: "";
    clear: both;
    display: table
}

.cms-content ul,
.cms-content ol {
    padding-left: 20px;
    margin-bottom: 20px
}

.cms-content ul[style*="list-style-type: circle;"] li {
    list-style-type: circle
}

.cms-content ul[style*="list-style-type: square;"] li {
    list-style-type: square
}

.cms-content ul li {
    list-style: disc
}

.cms-content ol[style*="list-style-type: lower-roman;"] li {
    list-style-type: lower-roman
}

.cms-content ol[style*="list-style-type: lower-alpha;"] li {
    list-style-type: lower-alpha
}

.cms-content ol[style*="list-style-type: lower-greek;"] li {
    list-style-type: lower-greek
}

.cms-content ol[style*="list-style-type: upper-alpha;"] li {
    list-style-type: upper-alpha
}

.cms-content ol[style*="list-style-type: upper-roman;"] li {
    list-style-type: upper-roman
}

.cms-content ol li {
    list-style-type: decimal
}

.cms-content p {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2em;
    letter-spacing: .02em;
    font-weight: 400
}

@media (max-width: 767px) {
    .cms-content p {
        line-height: 1.86667em
    }
}

@media (min-width: 768px) {
    .cms-content p+p {
        margin-top: 30px
    }
}

@media (max-width: 767px) {
    .cms-content p+p {
        margin-top: 28px
    }
}

@media (min-width: 768px) {
    .cms-content p+h3 {
        margin-top: 67px
    }
}

@media (max-width: 767px) {
    .cms-content p+h3 {
        margin-top: 29px
    }
}

@media (min-width: 768px) {
    .cms-content p+h4 {
        margin-top: 69px
    }
}

@media (max-width: 767px) {
    .cms-content p+h4 {
        margin-top: 55px
    }
}

@media (min-width: 768px) {
    .cms-content p+h5 {
        margin-top: 49px
    }
}

@media (max-width: 767px) {
    .cms-content p+h5 {
        margin-top: 40px
    }
}

@media (min-width: 768px) {
    .cms-content p+blockquote {
        margin-top: 30px
    }
}

@media (max-width: 767px) {
    .cms-content p+blockquote {
        margin-top: 36px
    }
}

.cms-content h3 {
    color: #318dca;
    position: relative;
    font-family: "vdl-v7marugothic", sans-serif;
    font-weight: 700
}

@media (min-width: 768px) {
    .cms-content h3 {
        font-size: 28px;
        font-size: 2.8rem;
        line-height: 1.6em;
        letter-spacing: .06em;
        padding-left: 24px;
        margin-bottom: 27px
    }
}

@media (max-width: 767px) {
    .cms-content h3 {
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.58333em;
        letter-spacing: .02em;
        padding-left: 21px;
        margin-bottom: 25px
    }
}

.cms-content h3:before {
    position: absolute;
    content: "";
    background: #318dca;
    top: 21px;
    left: 0;
    width: 14px;
    height: 2px
}

@media (max-width: 767px) {
    .cms-content h3:before {
        width: 10px
    }
}

.cms-content h4 {
    display: inline-block;
    font-family: "vdl-v7marugothic", sans-serif;
    font-weight: 700;
    background-image: url("../img/common/other/bg_bdr01.png");
    background-image: image-set(url("../../../../webp-express/webp-images/themes/wp-templ/assets/img/common/other/bg_bdr01.png.webp") type("image/webp"), url("../img/common/other/bg_bdr01.png") type("image/png"));
    background-repeat: repeat-x;
    background-position: left bottom;
    background-size: auto 1px
}

@media (min-width: 768px) {
    .cms-content h4 {
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.58333em;
        letter-spacing: .06em;
        font-weight: 700;
        margin-bottom: 30px;
        padding-bottom: 14px
    }
}

@media (max-width: 767px) {
    .cms-content h4 {
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 1.45455em;
        letter-spacing: .02em;
        margin-bottom: 26px;
        padding-bottom: 16px
    }
}

.cms-content h5 {
    position: relative;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.6em;
    letter-spacing: .06em;
    font-weight: 700;
    font-family: "vdl-v7marugothic", sans-serif;
    padding-left: 24px;
    margin-bottom: 25px
}

@media (max-width: 767px) {
    .cms-content h5 {
        margin-bottom: 16px
    }
}

.cms-content h5:before {
    content: "";
    position: absolute;
    top: 11px;
    left: 0;
    width: 12px;
    height: 12px;
    border: 2px solid #318dca;
    border-radius: 100%
}

.cms-content u,
.cms-content span[style*="text-decoration: underline;"] {
    text-decoration: none !important;
    background-image: linear-gradient(to right, #ffd5b8, #ffd5b8);
    background-position: bottom left;
    background-repeat: no-repeat;
    background-size: 100% 5px
}

.cms-content a {
    color: #318dca;
    text-decoration: underline;
    cursor: pointer
}

@media only screen and (min-width: 1025px) {
    .cms-content a:hover {
        text-decoration: none
    }
}

.cms-content iframe {
    max-width: 100% !important
}

.cms-content img {
    max-width: 100%;
    height: auto;
    max-height: 100%;
    width: auto
}

.cms-content blockquote {
    display: block;
    width: 100%;
    background: #fff;
    border-radius: 10px
}

@media (min-width: 768px) {
    .cms-content blockquote {
        padding: 26px 40px 30px;
        margin-bottom: 72px
    }
}

@media (max-width: 767px) {
    .cms-content blockquote {
        padding: 22px 26px 21px;
        margin-bottom: 53px
    }
}

.cms-content blockquote:last-child {
    margin-bottom: 0
}

.cms-content table {
    display: block;
    width: 100%;
    text-align: left;
    background: #fff;
    border-radius: 10px;
    border: 5px solid #318dca
}

@media (min-width: 768px) {
    .cms-content table {
        margin: 45px 0 63px
    }
}

@media (max-width: 767px) {
    .cms-content table {
        margin: 36px 0 45px
    }
}

.cms-content table tbody {
    display: block
}

.cms-content table tr {
    width: 100%
}

@media (min-width: 768px) {
    .cms-content table tr {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex
    }
}

@media (min-width: 768px) {
    .cms-content table tr:first-child td:first-of-type {
        border-radius: 5px 0 0 0
    }
}

@media (max-width: 767px) {
    .cms-content table tr:first-child td:first-of-type {
        border-radius: 5px 5px 0 0
    }
}

@media (min-width: 768px) {
    .cms-content table tr:first-child td:first-of-type {
        padding: 21px 29px 24px 35px
    }
}

@media (min-width: 768px) {
    .cms-content table tr:first-child td {
        padding: 24px 24px 24px 40px
    }
}

.cms-content table tr:last-child {
    border-radius: 0 0 10px 10px
}

@media (min-width: 768px) {
    .cms-content table tr:last-child td:first-of-type {
        border-radius: 0 0 0 5px
    }
}

.cms-content table tr:last-child td:first-of-type,
.cms-content table tr:last-child td {
    border-bottom: none
}

@media (max-width: 767px) {
    .cms-content table tr {
        display: block
    }

    .cms-content table tr:not(:last-child) {
        border-bottom: 1px solid #318dca
    }
}

.cms-content table td {
    display: block;
    color: #313133
}

@media (min-width: 768px) {
    .cms-content table td {
        border-bottom: 1px solid #318dca
    }
}

.cms-content table td:first-of-type {
    font-family: "vdl-v7marugothic", sans-serif;
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 1.52941em;
    letter-spacing: .04em;
    font-weight: 700;
    color: #318dca;
    background: #ddf1ff
}

@media (min-width: 768px) {
    .cms-content table td:first-of-type {
        width: 49.9%;
        padding: 26px 29px 27px 35px
    }
}

@media (max-width: 767px) {
    .cms-content table td:first-of-type {
        width: 100% !important;
        padding: 16px 21px 15px
    }
}

.cms-content table td {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6em;
    letter-spacing: .06em;
    font-weight: 400
}

@media (min-width: 768px) {
    .cms-content table td {
        width: 50.1%;
        padding: 29px 24px 27px 40px
    }
}

@media (max-width: 767px) {
    .cms-content table td {
        width: 100%;
        padding: 19px 21px 17px
    }
}

.cms-content #toc_container {
    margin: 80px 0 78px;
    border: none;
    background: #fff;
    border-radius: 5px;
    padding: 50px 48px 44px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2em;
    letter-spacing: 0.06em;
    font-weight: 400;
    width: 100%
}

@media (max-width: 767px) {
    .cms-content #toc_container {
        margin: 48px 0 30px;
        padding: 33px 25px 38px 27px
    }
}

.cms-content #toc_container .toc_title {
    margin-bottom: -3px;
    text-align: left;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.33333em;
    letter-spacing: .08em;
    font-weight: 400
}

@media (max-width: 767px) {
    .cms-content #toc_container .toc_title {
        margin-bottom: -10px;
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.25em;
        letter-spacing: 0em
    }
}

.cms-content #toc_container a {
    color: #00a5e5;
    text-decoration: underline
}

.cms-content #toc_container .toc_list {
    letter-spacing: 0.08em;
    counter-reset: number-counter
}

@media (max-width: 767px) {
    .cms-content #toc_container .toc_list {
        letter-spacing: 0
    }
}

.cms-content #toc_container .toc_list li:before {
    display: none
}

.cms-content #toc_container .toc_list>li>a .toc_number:after {
    content: "."
}

.cms-content #toc_container .toc_list>li>ul {
    margin-left: 0;
    padding: 0;
    counter-reset: alphabet-counter
}

.cms-content #toc_container .toc_list>li>ul>li {
    position: relative;
    counter-increment: alphabet-counter
}

.cms-content #toc_container .toc_list>li>ul>li+li {
    margin-top: -3px
}

@media (max-width: 767px) {
    .cms-content #toc_container .toc_list>li>ul>li+li {
        margin-top: 0
    }
}

.cms-content #toc_container .toc_list>li>ul>li>a {
    position: relative;
    display: block;
    margin: 0;
    padding-left: 20px;
    color: #333;
    text-decoration: none
}

.cms-content #toc_container .toc_list>li>ul>li>a:after {
    display: block;
    content: counter(alphabet-counter, lower-alpha) ". ";
    position: absolute;
    top: 0;
    left: 0
}

@media (max-width: 767px) {
    .cms-content #toc_container .toc_list>li>ul>li>a {
        padding-left: 17px
    }
}

.cms-content #toc_container .toc_list>li>ul>li .toc_number {
    display: none
}

.cms-content #toc_container .toc_list>li>ul>li>ul {
    margin-left: 15px;
    padding: 0
}

.cms-content #toc_container .toc_list>li>ul>li>ul>li {
    position: relative;
    padding-left: 15px
}

.cms-content #toc_container .toc_list>li>ul>li>ul>li:after {
    content: "・";
    position: absolute;
    top: 0;
    left: 0
}

@media (max-width: 767px) {
    .cms-content #toc_container .toc_list>li>ul>li>ul>li {
        padding-left: 17px
    }
}

.cms-content #toc_container .toc_list>li>ul>li>ul>li+li {
    margin-top: -3px
}

@media (max-width: 767px) {
    .cms-content #toc_container .toc_list>li>ul>li>ul>li+li {
        margin-top: 0
    }
}

.cms-content #toc_container .toc_list>li>ul>li>ul>li>a {
    color: #333;
    text-decoration: none
}

.c-img {
    display: block;
    position: relative
}

.c-img img {
    display: block;
    object-fit: cover;
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%
}

.c-img--contain img {
    object-fit: contain
}

.c-img--top img {
    object-position: top
}

.c-fw {
    width: 100%
}

[rel~="js-lazy"] {
    opacity: 0
}

[rel~="js-lazy"]:not(.initial) {
    transition: opacity 0.15s
}

[rel~="js-lazy"].initial,
[rel~="js-lazy"].loaded,
[rel~="js-lazy"].error {
    opacity: 1
}

.c-lazybg {
    background-size: cover;
    background-position: center;
    background-repeat: no-repeat
}

.c-lazybg--top {
    background-position: center top
}

.c-lazybg--contain {
    background-size: contain
}

.c-bg-webp {
    display: block;
    position: absolute;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 100%;
    height: 100%;
    top: 0;
    left: 0
}

@media (max-width: 767px) {
    .c-ttl01 {
        text-align: center
    }
}

.c-ttl01 .txten,
.c-ttl01 .txtjp {
    display: block
}

.c-ttl01 .txten {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1em;
    letter-spacing: .15em;
    font-weight: 600;
    font-family: "pauza", sans-serif
}

.c-ttl01 .txten:first-letter {
    color: #318dca
}

@media (min-width: 768px) {
    .c-ttl01 .txten {
        margin-left: 5px
    }
}

.c-ttl01 .txten.clr-orange:first-letter {
    color: #ff8c39
}

.c-ttl01 .txtjp {
    margin-top: 20px;
    font-size: 36px;
    font-size: 3.6rem;
    line-height: 1.55556em;
    letter-spacing: .1em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif
}

@media (max-width: 767px) {
    .c-ttl01 .txtjp {
        margin-top: 13px;
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.46667em;
        letter-spacing: 0em
    }
}

.c-ttl02 {
    text-align: center
}

@media (max-width: 767px) {
    .c-ttl02 {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-direction: column-reverse;
        -moz-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        -o-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
}

@media (min-width: 768px) {

    .c-ttl02 .txten,
    .c-ttl02 .txtjp {
        display: inline-block;
        vertical-align: middle
    }
}

@media (max-width: 767px) {

    .c-ttl02 .txten,
    .c-ttl02 .txtjp {
        display: block
    }
}

.c-ttl02 .txten {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1em;
    letter-spacing: .15em;
    font-weight: 600;
    font-family: "pauza", sans-serif
}

.c-ttl02 .txten:first-letter {
    color: #318dca
}

@media (min-width: 768px) {
    .c-ttl02 .txten {
        position: relative;
        top: 3px;
        margin-left: 24px
    }
}

.c-ttl02 .txtjp {
    font-size: 36px;
    font-size: 3.6rem;
    line-height: 1.55556em;
    letter-spacing: .1em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif
}

@media (max-width: 767px) {
    .c-ttl02 .txtjp {
        margin-top: 13px;
        font-size: 30px;
        font-size: 3rem;
        line-height: 1.46667em;
        letter-spacing: 0em
    }
}

@media only screen and (max-width: 374px) {
    .c-ttl02 .txtjp {
        font-size: 28px;
        font-size: 2.8rem
    }
}

.c-ttl02.clr-orange .txten:first-letter {
    color: #ff8c39
}

.c-ttl03 {
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 2.5em;
    letter-spacing: .1em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    color: #318dca
}

.c-ttl03.is-center {
    text-align: center
}

@media (max-width: 767px) {
    .c-ttl03 {
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 1.45455em
    }
}

.c-ttl03 span {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyODciIGhlaWdodD0iMSIgdmlld0JveD0iMCAwIDI4NyAxIj4KICA8cGF0aCBpZD0iYmRyIiBkPSJNMCwwSDI4NiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC41IDAuNSkiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzMxOGRjYSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1kYXNoYXJyYXk9IjMgNCIvPgo8L3N2Zz4K);
    background-repeat: repeat-x;
    background-position: left bottom;
    background-size: auto 1px;
    padding-bottom: 20px
}

@media (max-width: 767px) {
    .c-ttl03 span {
        display: block;
        padding-bottom: 15px
    }
}

.c-ttl04 {
    letter-spacing: .1em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    color: #318dca;
    background: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyODciIGhlaWdodD0iMSIgdmlld0JveD0iMCAwIDI4NyAxIj4KICA8cGF0aCBpZD0iYmRyIiBkPSJNMCwwSDI4NiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC41IDAuNSkiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzMxOGRjYSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1kYXNoYXJyYXk9IjMgNCIvPgo8L3N2Zz4K) repeat-x left bottom/auto 1px
}

@media (min-width: 768px) {
    .c-ttl04 {
        font-size: 24px;
        font-size: 2.4rem;
        line-height: 1.58333em;
        padding-bottom: 14px
    }
}

@media (max-width: 767px) {
    .c-ttl04 {
        padding-bottom: 16px;
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 1.45455em
    }
}

.c-ttl04.is-center {
    text-align: center
}

.c-txt01 {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2.26667em;
    letter-spacing: .1em;
    font-weight: 400
}

@media (max-width: 767px) {
    .c-txt01 {
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 2em;
        letter-spacing: .02em
    }
}

.c-btn01 {
    text-align: center
}

.c-btn01 a,
.c-btn01 .c-btn01-link {
    display: inline-block;
    position: relative;
    z-index: 1;
    overflow: hidden;
    background-color: #318dca;
    width: 100%;
    max-width: 289px;
    margin: 0 auto;
    border-radius: 5px;
    padding: 0;
    opacity: 1;
    border: 0;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875em;
    letter-spacing: .04em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    color: #fff;
    text-align: left;
    cursor: pointer
}

@media (max-width: 767px) {

    .c-btn01 a,
    .c-btn01 .c-btn01-link {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.5em
    }
}

@media only screen and (max-width: 374px) {

    .c-btn01 a,
    .c-btn01 .c-btn01-link {
        font-size: 14px;
        font-size: 1.4rem
    }
}

.c-btn01 a:before,
.c-btn01 a:after,
.c-btn01 .c-btn01-link:before,
.c-btn01 .c-btn01-link:after {
    content: "";
    position: absolute
}

.c-btn01 a:before,
.c-btn01 .c-btn01-link:before {
    background-color: #83c5f0;
    border-radius: 50%;
    transform: scale(0);
    width: 0;
    top: -50px;
    right: -50px;
    bottom: -50px;
    left: -50px;
    transition: 0.5s 0s ease-out
}

.c-btn01 a:after,
.c-btn01 .c-btn01-link:after {
    background-color: #ff8c39;
    top: 0;
    bottom: 0;
    left: 0;
    width: 0;
    transition: 0.15s 0s ease-out
}

@media only screen and (min-width: 1025px) {

    .c-btn01 a:hover:before,
    .c-btn01 .c-btn01-link:hover:before {
        transition: 1s 0s ease-out;
        transform: scale(2);
        width: 100%
    }

    .c-btn01 a:hover:after,
    .c-btn01 .c-btn01-link:hover:after {
        transition: 0.4s 0.4s ease-out;
        width: 100%
    }
}

.c-btn01 span {
    display: block;
    position: relative;
    z-index: 1;
    padding: 12px 50px 12px 30px
}

@media (max-width: 767px) {
    .c-btn01 span {
        padding: 18px 50px 18px 30px
    }
}

@media only screen and (max-width: 374px) {
    .c-btn01 span {
        padding-left: 15px
    }
}

.c-btn01 span:after {
    content: "";
    position: absolute;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDE0IDE0Ij4KICA8cGF0aCBpZD0iYXJ3IiBkPSJNNywwLDUuNzUzLDEuMjI1bDQuOSw0LjlIMHYxLjc1SDEwLjY1M2wtNC45LDQuOUw3LDE0bDctN1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgMCkiIGZpbGw9IiNmZmYiLz4KPC9zdmc+Cg==);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 14px;
    height: 14px;
    top: 50%;
    right: 25px;
    transform: translateY(-50%)
}

.c-btn01.small a {
    max-width: 190px
}

.c-btn01.is-white a {
    background-color: #fff;
    border-color: #fff;
    cursor: pointer
}

@media (min-width: 768px) {
    .c-btn01.is-white a {
        max-width: 338px
    }
}

.c-btn01.is-white a span {
    color: #318dca;
    transition: 0.5s 0.1s
}

.c-btn01.is-white a span:after {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDE0IDE0Ij4KICA8cGF0aCBpZD0iYXJ3IiBkPSJNNywwLDUuNzUzLDEuMjI1bDQuOSw0LjlIMHYxLjc1SDEwLjY1M2wtNC45LDQuOUw3LDE0bDctN1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgMCkiIGZpbGw9IiMzMThkY2EiLz4KPC9zdmc+Cg==);
    transition: 0.5s 0.1s
}

@media only screen and (min-width: 1025px) {
    .c-btn01.is-white a:hover span {
        color: #fff;
        transition: 0.5s 0.1s
    }

    .c-btn01.is-white a:hover span:after {
        background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDE0IDE0Ij4KICA8cGF0aCBpZD0iYXJ3IiBkPSJNNywwLDUuNzUzLDEuMjI1bDQuOSw0LjlIMHYxLjc1SDEwLjY1M2wtNC45LDQuOUw3LDE0bDctN1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDAgMCkiIGZpbGw9IiNmZmYiLz4KPC9zdmc+Cg==);
        transition: 0.5s 0.5s
    }
}

.c-btn01 .is-blank::after {
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="16" height="16" viewBox="0 0 16 16"><defs><clipPath id="clip-path"><rect id="Rectangle_199" data-name="Rectangle 199" width="16" height="16" fill="%23fff"/></clipPath></defs><g id="Group_344" data-name="Group 344" transform="translate(0 1)"><g id="Group_343" data-name="Group 343" transform="translate(0 -1)" clip-path="url("https://aizuma-vet.com/wp/wp-content/themes/wp-templ/assets/css/%23clip-path")"><path id="Path_994" data-name="Path 994" d="M1.778,16a1.715,1.715,0,0,1-1.256-.522A1.715,1.715,0,0,1,0,14.222V1.778A1.715,1.715,0,0,1,.522.522,1.715,1.715,0,0,1,1.778,0H8V1.778H1.778V14.222H14.222V8H16v6.222A1.781,1.781,0,0,1,14.222,16Zm4.178-4.711L4.711,10.044l8.267-8.267h-3.2V0H16V6.222H14.222v-3.2Z" transform="translate(0 0)" fill="%23fff"/></g></g></svg>')
}

@media (min-width: 768px) {
    .c-btn01 .is-blank::after {
        width: 16px;
        height: 16px
    }
}

@media (max-width: 767px) {
    .c-btn01 .is-blank::after {
        width: 14px;
        height: 14px
    }
}

.c-btn02 a,
.c-btn02 .c-btn02-link {
    position: relative;
    cursor: pointer;
    display: inline-block;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.66667em;
    letter-spacing: .04em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    opacity: 1;
    cursor: pointer
}

.c-btn02 a span,
.c-btn02 .c-btn02-link span {
    position: relative;
    top: 2px
}

.c-btn02 a .c-arrow,
.c-btn02 .c-btn02-link .c-arrow {
    margin-right: 20px;
    transition: 0.3s ease-in
}

@media (max-width: 767px) {

    .c-btn02 a .c-arrow,
    .c-btn02 .c-btn02-link .c-arrow {
        margin-right: 15px
    }
}

@media only screen and (min-width: 1025px) {

    .c-btn02 a:hover .c-arrow,
    .c-btn02 .c-btn02-link:hover .c-arrow {
        margin-right: 25px
    }
}

.c-arrow {
    display: inline-block;
    vertical-align: middle;
    position: relative;
    width: 50px;
    height: 50px;
    margin: 0 auto
}

.c-arrow:before {
    content: "";
    position: absolute;
    display: inline-block;
    vertical-align: middle;
    background-color: #318dca;
    background-repeat: no-repeat;
    background-position: center;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    border-radius: 50%;
    transform: scale(1);
    transition: 0.3s ease-in
}

.c-arrow:after {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij4KICA8cGF0aCBpZD0iYXJ3IiBkPSJNOCwwLDYuNTc1LDEuNGw1LjYsNS42SDBWOUgxMi4xNzVsLTUuNiw1LjZMOCwxNmw4LThaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwIDApIiBmaWxsPSIjZmZmIi8+Cjwvc3ZnPgo=);
    background-repeat: no-repeat;
    background-position: center;
    background-size: 16px 16px;
    margin: auto;
    transition: 0.3s ease-in
}

.c-hover {
    cursor: pointer
}

.c-hover .c-btn02 a .c-arrow,
.c-hover .c-btn02 .c-btn02-link .c-arrow {
    margin-right: 0
}

@media only screen and (min-width: 1025px) {
    .c-hover:hover .c-arrow:before {
        transform: scale(1.2);
        transition: 0.3s ease-in;
        background-color: #ff8c39
    }

    .c-hover:hover .c-arrow:after {
        transform: scale(1.2);
        transition: 0.3s ease-in
    }
}

.c-anchor {
    max-width: 1020px;
    width: 100%;
    margin: 0 auto
}

@media (min-width: 768px) {
    .c-anchor {
        display: grid;
        gap: 15px
    }
}

@media (max-width: 767px) {
    .c-anchor {
        padding-right: 17px
    }
}

.c-anchor .item {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    position: relative;
    background-color: #fff;
    border-radius: 10px;
    min-height: 115px;
    margin-bottom: 50px;
    padding: 15px 10px 33px;
    opacity: 1;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.5em;
    letter-spacing: .06em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    text-align: center;
    transition: all 1s;
    color: #4b4b4d;
    cursor: pointer
}

.c-anchor .item:link,
.c-anchor .item:visited,
.c-anchor .item:active {
    color: #4b4b4d
}

@media only screen and (min-width: 1025px) {
    .c-anchor .item:hover:before {
        border-color: #318dca;
        transition: 1s
    }
}

.c-anchor .item:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border-radius: 10px;
    border: 2px solid #fff;
    transition: 1s
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .c-anchor .item {
        font-size: 15px;
        font-size: 1.5rem
    }
}

@media (max-width: 767px) {
    .c-anchor .item {
        min-height: 100px;
        margin-bottom: 10px;
        padding: 16px 40px 16px 31px;
        text-align: left
    }
}

.c-anchor .text {
    display: block;
    position: relative;
    overflow: hidden;
    width: 100%
}

@media (min-width: 768px) {
    .c-anchor .text.align-left span {
        text-align: left
    }
}

.c-anchor .text span {
    display: inline-block;
    transition: 0.3s
}

@media (min-width: 768px) {
    .c-anchor.two {
        grid-template-columns: repeat(2, 1fr)
    }
}

@media (min-width: 768px) {
    .c-anchor.three {
        grid-template-columns: repeat(3, 1fr)
    }
}

@media (min-width: 768px) {
    .c-anchor.four {
        grid-template-columns: repeat(4, 1fr)
    }
}

@media (min-width: 768px) {
    .c-anchor.five {
        grid-template-columns: repeat(5, 1fr)
    }
}

.c-anchor .c-arrow {
    display: inline-block;
    position: absolute;
    margin: 0 auto;
    text-align: center
}

@media (min-width: 768px) {
    .c-anchor .c-arrow {
        left: 0;
        right: 0;
        bottom: 0;
        transform: translateY(50%)
    }
}

@media (max-width: 767px) {
    .c-anchor .c-arrow {
        width: 40px;
        height: 40px;
        top: 50%;
        right: -20px;
        transform: translateY(-50%)
    }
}

.c-anchor .c-arrow:after {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNiIgaGVpZ2h0PSIxNiIgdmlld0JveD0iMCAwIDE2IDE2Ij4KICA8cGF0aCBpZD0iYXJ3IiBkPSJNOCwwLDYuNTc1LDEuNGw1LjYsNS42SDBWOUgxMi4xNzVsLTUuNiw1LjZMOCwxNmw4LThaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgxNiAwKSByb3RhdGUoOTApIiBmaWxsPSIjZmZmIi8+Cjwvc3ZnPgo=)
}

@media (max-width: 767px) {
    .c-anchor .c-arrow:after {
        background-size: 12px
    }
}

.c-mv {
    position: relative;
    z-index: 1;
    overflow: hidden;
    isolation: isolate
}

@media (min-width: 768px) {
    .c-mv {
        padding-bottom: 20px
    }
}

.c-mv .c-mv__inner {
    position: relative
}

@media (min-width: 768px) {
    .c-mv .c-mv__inner {
        padding-top: 213px
    }

    .c-mv .c-mv__inner:before {
        content: "";
        position: absolute;
        z-index: -1;
        background-repeat: no-repeat;
        background-position: center;
        background-color: transparent;
        background-size: 100% 100%;
        top: 0;
        left: 0;
        width: 100%;
        height: calc(380 / 383 * 100%);
        background-image: url("../img/common/mv_bg.png");
        background-image: image-set(url("../../../../webp-express/webp-images/themes/wp-templ/assets/img/common/mv_bg.png.webp") type("image/webp"), url("../img/common/mv_bg.png") type("image/png"))
    }
}

.c-mv .c-mv__wcm {
    width: 100%;
    max-width: 1230px;
    padding: 0 25px;
    margin: 0 auto
}

@media (min-width: 768px) {
    .c-mv .c-mv__wrap {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        -ms-justify-content: space-between;
        -o-justify-content: space-between;
        justify-content: space-between
    }
}

@media (max-width: 767px) {
    .c-mv .c-mv__wrap {
        position: relative;
        min-height: 594px;
        padding-top: 142px;
        padding-bottom: 62px
    }

    .c-mv .c-mv__wrap:before {
        content: "";
        position: absolute;
        z-index: -1;
        background-repeat: no-repeat;
        background-position: center;
        background-color: transparent;
        background-size: 100% 100%;
        bottom: 0;
        left: 50%;
        margin-left: -274px;
        width: 550px;
        height: 550px;
        background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="550" height="550" viewBox="0 0 550 550"><defs><linearGradient id="linear-gradient" x1="0.808" y1="0.937" x2="0.399" y2="0.697" gradientUnits="objectBoundingBox"><stop offset="0" stop-color="%23e1edf0"/><stop offset="1" stop-color="%23f8f6f0"/></linearGradient></defs><circle id="bg_motif" cx="275" cy="275" r="275" fill="url(%23linear-gradient)"/></svg>')
    }

    .c-mv .c-mv__wrap:after {
        content: "";
        position: absolute;
        z-index: -1;
        top: -313px;
        left: 50%;
        margin-left: -362px;
        width: 600px;
        height: 600px;
        background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" width="600" height="600" viewBox="0 0 600 600"><defs><linearGradient id="linear-gradient" x1="0.652" y1="0.918" x2="0.56" y2="0.709" gradientUnits="objectBoundingBox"><stop offset="0" stop-color="%23dfeaed"/><stop offset="1" stop-color="%23f8f6f0"/></linearGradient></defs><circle id="bg_motif" cx="300" cy="300" r="300" fill="url(%23linear-gradient)"/></svg>');
        background-repeat: no-repeat;
        background-position: center;
        background-color: transparent;
        background-size: 100% 100%
    }
}

.c-mv .col-bg {
    position: relative
}

@media (min-width: 768px) {
    .c-mv .col-bg {
        width: calc(600 / 1180 * 100%);
        padding-left: 30px
    }
}

.c-mv .col-bg__inner {
    position: relative
}

.c-mv .col-bg__inner:before {
    content: "";
    display: block;
    padding-top: calc(380 / 570 * 100%)
}

@media (max-width: 767px) {
    .c-mv .col-bg__inner:before {
        padding-top: calc(217 / 325 * 100%)
    }
}

.c-mv .col-bg__inner img {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    object-position: center;
    object-fit: cover
}

@media (min-width: 768px) {
    .c-mv .col-bg__inner img {
        border-radius: 20px
    }
}

@media (max-width: 767px) {
    .c-mv .col-bg__inner img {
        border-radius: 10px
    }
}

.c-mv .col-bg__decor {
    position: absolute;
    bottom: -20px
}

@media (min-width: 768px) {
    .c-mv .col-bg__decor {
        left: 0;
        width: calc(112 / 600 * 100%)
    }
}

@media (max-width: 767px) {
    .c-mv .col-bg__decor {
        left: -10px;
        width: calc(79 / 325 * 100%)
    }
}

.c-mv .col-ttl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    flex-direction: column;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center
}

@media (min-width: 768px) {
    .c-mv .col-ttl {
        width: calc(500 / 1180 * 100%);
        padding: 0 40px calc(96 / 1280 * 100vw) 0
    }
}

@media only screen and (min-width: 768px) and (min-width: 1280px) {
    .c-mv .col-ttl {
        padding: 0 40px 96px 0
    }
}

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1250px) {
    .c-mv .col-ttl {
        padding: 0 0 calc(96 / 1280 * 100vw) 0
    }
}

@media (max-width: 767px) {
    .c-mv .col-ttl {
        margin-top: 37px
    }
}

@media only screen and (max-width: 767px) and (min-width: 370px) {
    .c-mv .col-ttl {
        padding: 0 12px
    }
}

.c-mv .col-ttl .mv-ttl__en {
    display: block;
    font-family: "pauza", sans-serif;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: .15em;
    font-weight: 600;
    padding-left: 5px;
    color: #4b4b4d
}

@media (max-width: 767px) {
    .c-mv .col-ttl .mv-ttl__en {
        text-align: center
    }
}

.c-mv .col-ttl .mv-ttl__en:first-letter {
    color: #318dca
}

.c-mv .col-ttl .mv-ttl__en .is-blue {
    color: #318dca
}

.c-mv .col-ttl .mv-ttl__jp {
    display: block;
    font-family: "vdl-v7marugothic", sans-serif;
    font-size: 36px;
    font-size: 3.6rem;
    letter-spacing: .06em;
    font-weight: 700;
    margin-top: 4px;
    color: #4b4b4d
}

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1150px) {
    .c-mv .col-ttl .mv-ttl__jp {
        font-size: 24px;
        font-size: 2.4rem
    }
}

@media (max-width: 767px) {
    .c-mv .col-ttl .mv-ttl__jp {
        text-align: center;
        font-size: 32px;
        font-size: 3.2rem;
        line-height: 1.5em;
        margin-top: 14px
    }
}

@media (min-width: 768px) {
    .c-breadcrumb {
        width: calc(500 / 1180 * 100%);
        margin: -19px 0 0 auto;
        text-align: right
    }
}

@media only screen and (min-width: 768px) and (min-width: 768px) and (min-width: 1250px) {
    .c-breadcrumb {
        padding-right: 50px
    }
}

@media (max-width: 767px) {
    .c-breadcrumb {
        position: relative;
        z-index: 5;
        overflow-x: scroll;
        margin-top: 25px
    }

    .c-breadcrumb::-webkit-scrollbar {
        display: none;
        width: 0;
        opacity: 0
    }
}

.c-breadcrumb ul {
    white-space: nowrap;
    font-family: "vdl-v7marugothic", sans-serif;
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.71429em;
    letter-spacing: 0em;
    font-weight: 700;
    color: #318dca
}

@media (min-width: 768px) {
    .c-breadcrumb ul {
        width: 100%;
        overflow: hidden;
        text-overflow: ellipsis
    }
}

.c-breadcrumb li {
    display: inline;
    position: relative
}

@media (min-width: 768px) {
    .c-breadcrumb li:last-child {
        margin-right: 0
    }
}

@media (max-width: 767px) {
    .c-breadcrumb li:last-child {
        margin-right: 20px
    }
}

.c-breadcrumb li:not(:last-child)::after {
    display: inline-block;
    vertical-align: middle;
    content: "";
    width: 10px;
    height: 9px;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="8" height="9" viewBox="0 0 8 9"><path id="tri" d="M3.628,1.549a1,1,0,0,1,1.743,0l2.79,4.96A1,1,0,0,1,7.29,8H1.71A1,1,0,0,1,.838,6.51Z" transform="translate(8) rotate(90)" fill="%23adadb4"/></svg>');
    background-repeat: no-repeat;
    background-position: center;
    background-color: transparent;
    background-size: 100% 100%
}

@media (min-width: 768px) {
    .c-breadcrumb li:not(:last-child)::after {
        margin: -1px 5px 2px 5px
    }
}

@media (max-width: 767px) {
    .c-breadcrumb li:not(:last-child)::after {
        margin: 0 5px 2px 5px
    }
}

.c-breadcrumb a {
    display: inline;
    color: #adadb3;
    position: relative
}

.c-block01 {
    background-color: #fff;
    max-width: 1000px;
    margin: 0 auto;
    padding: 44px 60px 52px;
    border-radius: 10px;
    position: relative
}

.c-block01:before {
    content: "";
    position: absolute;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI2MCIgaGVpZ2h0PSI0MCIgdmlld0JveD0iMCAwIDYwIDQwIj4KICA8ZyBpZD0iY2xpcCIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoLTI1NCAtNDQwNykiPgogICAgPHBhdGggaWQ9IlN1YnRyYWN0aW9uXzEiIGRhdGEtbmFtZT0iU3VidHJhY3Rpb24gMSIgZD0iTS0zMjE4LDE3MDJoLTQwYTEwLjAxMiwxMC4wMTIsMCwwLDEtMTAtMTB2LTVhMTAuMDExLDEwLjAxMSwwLDAsMSwxMC0xMGg4LjM3OGExMi4wNDgsMTIuMDQ4LDAsMCwxLS4zNzgtMywxMS45MjIsMTEuOTIyLDAsMCwxLDMuNTE0LTguNDg1QTExLjkyMiwxMS45MjIsMCwwLDEtMzIzOCwxNjYyYTExLjkyMiwxMS45MjIsMCwwLDEsOC40ODYsMy41MTVBMTEuOTIxLDExLjkyMSwwLDAsMS0zMjI2LDE2NzRhMTIuMDUzLDEyLjA1MywwLDAsMS0uMzc4LDNILTMyMThhMTAuMDExLDEwLjAxMSwwLDAsMSwxMCwxMHY1QTEwLjAxMiwxMC4wMTIsMCwwLDEtMzIxOCwxNzAyWm0tMjAtMzNhNS4wMDUsNS4wMDUsMCwwLDAtNSw1LDUuMDA2LDUuMDA2LDAsMCwwLDUsNSw1LjAwNiw1LjAwNiwwLDAsMCw1LTVBNS4wMDYsNS4wMDYsMCwwLDAtMzIzOCwxNjY5WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzUyMiAyNzQ1KSIgZmlsbD0iI2ZmOGMzOSIvPgogIDwvZz4KPC9zdmc+Cg==);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 60px;
    height: 40px;
    top: -24px;
    left: 0;
    right: 0;
    margin: 0 auto
}

@media (max-width: 767px) {
    .c-block01 {
        padding: 35px 25px 31px
    }
}

.c-block01+.c-block01 {
    margin-top: 43px
}

.c-block01 .title {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyODciIGhlaWdodD0iMSIgdmlld0JveD0iMCAwIDI4NyAxIj4KICA8cGF0aCBpZD0iYmRyIiBkPSJNMCwwSDI4NiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMC41IDAuNSkiIGZpbGw9Im5vbmUiIHN0cm9rZT0iIzMxOGRjYSIgc3Ryb2tlLWxpbmVjYXA9InJvdW5kIiBzdHJva2Utd2lkdGg9IjEiIHN0cm9rZS1kYXNoYXJyYXk9IjMgNCIvPgo8L3N2Zz4K);
    background-repeat: repeat-x;
    background-position: left bottom;
    background-size: auto 1px;
    padding-bottom: 15px;
    font-size: 24px;
    font-size: 2.4rem;
    line-height: 1.5em;
    letter-spacing: .1em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    color: #318dca;
    text-align: center
}

@media (max-width: 767px) {
    .c-block01 .title {
        font-size: 22px;
        font-size: 2.2rem;
        line-height: 1.45455em
    }
}

.c-block01 .grid-pc {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between;
    max-width: 814px;
    margin: 23px auto 0
}

@media (max-width: 767px) {
    .c-block01 .grid-pc {
        display: none
    }
}

@media (min-width: 768px) {
    .c-block01 .grid-sp {
        display: none
    }
}

@media (max-width: 767px) {
    .c-block01 .grid-sp {
        display: block;
        margin-top: 20px
    }
}

.c-block01 .lst li {
    position: relative;
    margin-bottom: 2px;
    padding-left: 40px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2.125em;
    letter-spacing: .06em;
    font-weight: 400
}

.c-block01 .lst li:before {
    content: "";
    position: absolute;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMSIgaGVpZ2h0PSIxOSIgdmlld0JveD0iMCAwIDIxIDE5Ij4KICA8ZyBpZD0iaWNuX2NoZWNrIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgtMjAyLjUgLTI5OTMuNDE5KSI+CiAgICA8cGF0aCBpZD0iVW5pb25fMyIgZGF0YS1uYW1lPSJVbmlvbiAzIiBkPSJNLTI5MDYuMDQ1LDkyLjkzNGwtMS41MTQtMS41MTQtMy43NjUtMy41MzNhLjU1NS41NTUsMCwwLDEtLjE3Ni0uNC41NTcuNTU3LDAsMCwxLC4xNjMtLjRsMS41Mi0xLjUyYS41NTQuNTU0LDAsMCwxLC43NzItLjAxM2wzLjM5MywzLjE4Myw4LjczOC04LjE3MmEuNTU2LjU1NiwwLDAsMSwuNzcyLjAxM2wxLjUyLDEuNTJhLjU1OC41NTgsMCwwLDEsLjE2My40LjU2LjU2LDAsMCwxLS4xNzUuNGwtMTAuNjM4LDEwLjA0OGEuNTU0LjU1NCwwLDAsMS0uMzgyLjE1MUEuNTUuNTUsMCwwLDEtMjkwNi4wNDUsOTIuOTM0WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMzExNy45NTkgMjkxMy45NzMpIiBmaWxsPSIjZmY4YzM5Ii8+CiAgICA8cGF0aCBpZD0iVW5pb25fNCIgZGF0YS1uYW1lPSJVbmlvbiA0IiBkPSJNLTI5MDguMTYyLDk5LjQxOWEzLjM3NywzLjM3NywwLDAsMS0zLjMzOC0zLjQwN1Y4My44MjZhMy4zNzcsMy4zNzcsMCwwLDEsMy4zMzgtMy40MDdoMTAuODU2YS41MjkuNTI5LDAsMCwxLC41MjguNTI4di45NjdhLjUyOS41MjksMCwwLDEtLjUyOC41MjhoLTEwLjg1NmExLjM2MSwxLjM2MSwwLDAsMC0xLjMzNywxLjM4MlY5Ni4wMTJhMS4zNjEsMS4zNjEsMCwwLDAsMS4zMzcsMS4zODJoMTEuODkzYTEuMzYxLDEuMzYxLDAsMCwwLDEuMzM3LTEuMzgyVjkxLjIyNGEuNTI5LjUyOSwwLDAsMSwuNTI4LS41MjloLjk0NGEuNTI4LjUyOCwwLDAsMSwuNTI4LjUyOXY0Ljc4OGEzLjM3NiwzLjM3NiwwLDAsMS0zLjMzNywzLjQwN1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDMxMTQgMjkxMykiIGZpbGw9IiMzMThkY2EiLz4KICA8L2c+Cjwvc3ZnPgo=);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 21px;
    height: 19px;
    top: 8px;
    left: 3px
}

@media (max-width: 767px) {
    .c-block01 .lst li:before {
        top: 8px;
        left: 1px
    }
}

@media (max-width: 767px) {
    .c-block01 .lst li {
        padding-left: 36px;
        margin-bottom: -2px
    }
}

.c-block01 .text {
    margin-top: 16px;
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.75em;
    letter-spacing: .1em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    text-align: center
}

@media (max-width: 767px) {
    .c-block01 .text {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.55556em
    }
}

.c-block01 .text span {
    color: #318dca
}

.c-block01 .text01 {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 2.14286em;
    letter-spacing: .06em;
    font-weight: 400
}

@media (min-width: 768px) {
    .c-block01 .text01 {
        text-align: center;
        margin-top: 23px
    }
}

@media (max-width: 767px) {
    .c-block01 .text01 {
        position: relative;
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.57143em;
        padding-left: 18px;
        margin-top: 14px
    }

    .c-block01 .text01 .sign {
        position: absolute;
        left: 0;
        top: 0
    }
}

.c-block01 .description {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: .02em
}

@media (min-width: 768px) {
    .c-block01 .description {
        margin: 25px 0 29px;
        text-align: center;
        line-height: 2;
        color: #4b4b4d
    }
}

@media (max-width: 767px) {
    .c-block01 .description {
        line-height: calc(28 / 15);
        margin: 22px 0 21px
    }
}

.c-calendar {
    margin: 0 auto
}

.c-calendar dl {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between;
    position: relative;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.86667em;
    letter-spacing: .06em;
    font-weight: bold;
    color: #fff;
    font-family: "vdl-v7marugothic", sans-serif;
    text-align: center
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {
    .c-calendar dl {
        font-size: 13px;
        font-size: 1.3rem
    }
}

@media only screen and (max-width: 374px) {
    .c-calendar dl {
        font-size: 13px;
        font-size: 1.3rem
    }
}

.c-calendar dl:not(:last-of-type) {
    padding-bottom: 4px;
    margin-bottom: 3px
}

.c-calendar dl:not(:last-of-type):after {
    content: "";
    position: absolute;
    left: 0;
    right: -10px;
    bottom: 0;
    border-bottom: 1px solid #fff
}

@media (max-width: 767px) {
    .c-calendar dl:not(:last-of-type):after {
        right: 0
    }
}

@media (min-width: 768px) {
    .c-calendar dl:first-of-type dt {
        letter-spacing: 0.1em
    }
}

.c-calendar dl:first-of-type dd:last-of-type {
    position: relative;
    right: 5px
}

.c-calendar dt {
    width: 92px;
    margin-right: 6px;
    text-align: right
}

@media (min-width: 768px) {
    .c-calendar dt {
        width: 108px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {
    .c-calendar dt {
        width: 98px
    }
}

@media (max-width: 767px) {
    .c-calendar dt {
        letter-spacing: 0
    }
}

@media only screen and (max-width: 374px) {
    .c-calendar dt {
        width: 80px
    }
}

.c-calendar dd {
    width: 16px;
    margin: 0 5px;
    white-space: nowrap;
    font-weight: 700
}

.c-calendar dd.ico-x,
.c-calendar dd.ico-o {
    display: block;
    position: relative;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 15px;
    height: 15px;
    left: -1px;
    margin-top: 6px
}

.c-calendar dd.ico-x {
    background-image: url("../img/common/other/ico-x.png")
}

.c-calendar dd.ico-o {
    background-image: url("../img/common/other/ico-o.png")
}

.c-calendar.style-color dl:after {
    border-color: #318dca
}

.c-calendar.style-color dd.ico-x {
    background-image: url("../img/common/other/ico-x_color.png")
}

.c-calendar.style-color dd.ico-o {
    background-image: url("../img/common/other/ico-o_color.png")
}

.c-calendar-txt {
    margin-top: 13px;
    color: #fff;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.66667em;
    letter-spacing: .02em;
    font-weight: 500
}

.c-calendar-txt p {
    position: relative;
    padding-left: 14px
}

@media (max-width: 767px) {
    .c-calendar-txt p {
        padding-left: 12px
    }
}

.c-calendar-txt p:before {
    content: "※";
    position: absolute;
    top: 0;
    left: 1px
}

.c-calendbox-ctn {
    background: #318dca;
    padding: 20px 20px 20px
}

.c-calendbox {
    background: #fff;
    border-radius: 10px
}

@media (min-width: 768px) {
    .c-calendbox {
        padding: 24px 10px 20px;
        min-width: 400px;
        max-width: 470px
    }
}

@media (max-width: 767px) {
    .c-calendbox {
        padding: 19px 10px 15px;
        max-width: 335px;
        margin: 0 auto
    }
}

.c-calendbox .table {
    width: 100%;
    margin: 0 auto
}

@media (min-width: 768px) {
    .c-calendbox .table {
        max-width: 380px
    }
}

@media (max-width: 767px) {
    .c-calendbox .table {
        max-width: 298px
    }
}

.c-calendbox .table .row {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding-bottom: 3px
}

.c-calendbox .table .row:not(:last-child) {
    border-bottom: solid 1px #318dca;
    margin-bottom: 4px
}

.c-calendbox .table .row:nth-child(1) .row-head {
    font-family: "vdl-v7marugothic", sans-serif;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.86667em;
    letter-spacing: .1em;
    font-weight: 700;
    color: #4b4b4d
}

@media (max-width: 767px) {
    .c-calendbox .table .row:nth-child(1) .row-head {
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 1.86667em;
        letter-spacing: 0em
    }
}

@media (min-width: 768px) {
    .c-calendbox .table .row:nth-child(1) .row-main {
        padding-right: 9px
    }
}

@media (min-width: 768px) {
    .c-calendbox .table .row:nth-child(1) .row-main li:last-child {
        margin-left: -10px
    }
}

@media (max-width: 767px) {
    .c-calendbox .table .row:nth-child(1) .row-main li:last-child {
        margin-left: -8px
    }
}

.c-calendbox .table .row:nth-child(2) .row-head,
.c-calendbox .table .row:nth-child(3) .row-head {
    font-family: "vdl-v7marugothic", sans-serif;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.86667em;
    letter-spacing: .06em;
    font-weight: 700;
    color: #4b4b4d
}

@media (max-width: 767px) {

    .c-calendbox .table .row:nth-child(2) .row-head,
    .c-calendbox .table .row:nth-child(3) .row-head {
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 1.86667em;
        letter-spacing: 0em
    }
}

@media (min-width: 768px) {

    .c-calendbox .table .row:nth-child(2) .row-main,
    .c-calendbox .table .row:nth-child(3) .row-main {
        padding-right: 18px
    }
}

@media (max-width: 767px) {

    .c-calendbox .table .row:nth-child(2) .row-main,
    .c-calendbox .table .row:nth-child(3) .row-main {
        padding-right: 11px
    }
}

.c-calendbox .table .row:nth-child(2) .row-main li,
.c-calendbox .table .row:nth-child(3) .row-main li {
    width: 13px
}

.c-calendbox .table .row .row-head {
    text-align: right
}

@media (min-width: 768px) {
    .c-calendbox .table .row .row-head {
        width: 109px;
        padding-left: 9px;
        margin-right: 29px
    }
}

@media (max-width: 767px) {
    .c-calendbox .table .row .row-head {
        width: 91px;
        margin-right: 15px
    }
}

.c-calendbox .table .row .row-main {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between;
    flex: 1
}

.c-calendbox .table .row .row-main li {
    font-family: "vdl-v7marugothic", sans-serif;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.86667em;
    letter-spacing: .1em;
    font-weight: 700;
    text-align: center
}

.c-calendbox .table .row .row-main li .open {
    display: inline-block;
    width: 13px;
    height: 13px;
    background: #318dca;
    border-radius: 100%
}

.c-calendbox .table .row .row-main li .close {
    position: relative;
    top: -2px;
    display: inline-block;
    width: 8px;
    height: 8px;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="8.83" height="8.83" viewBox="0 0 8.83 8.83"><path id="txt" d="M-4.065-1.785A.494.494,0,0,0-3.6-2.28a.351.351,0,0,0-.1-.255c-.9-.885-2.055-2.01-3.03-2.97a.3.3,0,0,1-.09-.21.226.226,0,0,1,.06-.165c.9-.9,2.145-2.085,3.06-2.985a.4.4,0,0,0,.12-.27.516.516,0,0,0-.48-.48.4.4,0,0,0-.27.12c-.915.93-2.055,2.1-2.985,3.045a.29.29,0,0,1-.18.09.234.234,0,0,1-.18-.09c-.93-.945-2.07-2.115-2.985-3.045a.4.4,0,0,0-.27-.12.516.516,0,0,0-.48.48.4.4,0,0,0,.12.27c.915.9,2.16,2.085,3.06,2.985a.277.277,0,0,1,.075.18.238.238,0,0,1-.075.18c-.975.975-2.145,2.085-3.06,2.985a.351.351,0,0,0-.1.255.494.494,0,0,0,.465.495.366.366,0,0,0,.27-.12c.9-.93,2.025-2.1,2.985-3.075a.191.191,0,0,1,.165-.075.218.218,0,0,1,.18.075c.96.975,2.085,2.145,3,3.075A.366.366,0,0,0-4.065-1.785Z" transform="translate(11.915 10.115)" fill="%23318dca" stroke="%23ff8c39" stroke-width="1"/></svg>');
    background-repeat: no-repeat;
    background-position: center;
    background-color: transparent;
    background-size: 100% 100%
}

.c-tablenote {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.42857em;
    letter-spacing: .02em;
    font-weight: 500;
    color: #fff
}

@media (min-width: 768px) {
    .c-tablenote {
        margin-top: 13px
    }
}

@media (max-width: 767px) {
    .c-tablenote {
        font-size: 12px;
        font-size: 1.2rem;
        line-height: 1.66667em;
        margin-top: 9px;
        padding-left: 5px
    }
}

@media (min-width: 768px) {
    .c-accessbtn {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        -ms-justify-content: space-between;
        -o-justify-content: space-between;
        justify-content: space-between
    }
}

@media (min-width: 768px) {
    .c-accessbtn .accessbtn-item {
        width: calc(530 / 1080 * 100%)
    }
}

@media (max-width: 767px) {
    .c-accessbtn .accessbtn-item:not(:last-child) {
        margin-bottom: 15px
    }
}

.c-accessbtn .wrap02-link {
    display: block;
    background: #ddf1ff;
    border-radius: 10px;
    transition: 0.5s;
    cursor: pointer
}

@media (min-width: 768px) {
    .c-accessbtn .wrap02-link {
        padding: 10px
    }
}

@media (max-width: 767px) {
    .c-accessbtn .wrap02-link {
        padding: 8px
    }
}

@media only screen and (min-width: 1025px) {
    .c-accessbtn .wrap02-link:hover {
        background-color: #ff8c39;
        opacity: 1;
        transition: 0.5s
    }
}

.c-accessbtn .wrap02-link .wrap02-inner {
    background: #fff;
    border-radius: 5px
}

@media (min-width: 768px) {
    .c-accessbtn .wrap02-link .wrap02-inner {
        padding: 0 10px
    }
}

@media (max-width: 767px) {
    .c-accessbtn .wrap02-link .wrap02-inner {
        padding: 0 15px
    }
}

@media only screen and (max-width: 767px) and (max-width: 370px) {
    .c-accessbtn .wrap02-link .wrap02-inner {
        padding: 0 5px
    }
}

.c-accessbtn .wrap02-link .wrap02-ctn {
    width: 100%;
    padding: 15px 0 15px;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    align-items: center
}

@media (min-width: 768px) {
    .c-accessbtn .wrap02-link .wrap02-ctn {
        max-width: 402px;
        margin: 0 auto
    }
}

.c-accessbtn .wrap02-link .wrap02-ctn .icon {
    display: block;
    width: 70px
}

@media (min-width: 768px) {
    .c-accessbtn .wrap02-link .wrap02-ctn .icon {
        margin-right: 20px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1080px) {
    .c-accessbtn .wrap02-link .wrap02-ctn .icon {
        width: 50px;
        margin-right: 10px
    }
}

@media (max-width: 767px) {
    .c-accessbtn .wrap02-link .wrap02-ctn .icon {
        margin-right: 15px
    }
}

.c-accessbtn .wrap02-link .wrap02-ctn .txt {
    display: block;
    flex: 1;
    font-family: "vdl-v7marugothic", sans-serif;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.54545em;
    letter-spacing: .02em;
    font-weight: 700;
    color: #4b4b4d
}

@media only screen and (min-width: 768px) and (min-width: 768px) and (max-width: 1000px) {
    .c-accessbtn .wrap02-link .wrap02-ctn .txt {
        font-size: 16px;
        font-size: 1.6rem
    }
}

@media (max-width: 767px) {
    .c-accessbtn .wrap02-link .wrap02-ctn .txt {
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.5em;
        letter-spacing: 0em
    }
}

.c-accessbtn .wrap02-link .wrap02-ctn .txt .is-orange {
    color: #ff8c39
}

@media (min-width: 768px) {
    .c-about-item {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex
    }

    .c-about-item.is-reverse {
        -webkit-flex-direction: row-reverse;
        -moz-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        -o-flex-direction: row-reverse;
        flex-direction: row-reverse
    }

    .c-about-item.is-reverse .about-info {
        padding-right: 80px;
        padding-left: 0
    }
}

@media only screen and (min-width: 768px) and (max-width: 980px) {
    .c-about-item.is-reverse .about-info {
        padding-right: 40px
    }
}

.c-about-item .about-img {
    position: relative
}

@media (max-width: 767px) {
    .c-about-item .about-img {
        margin-bottom: 37px
    }
}

.c-about-item .about-img picture {
    display: block;
    height: 100%
}

@media (min-width: 768px) {
    .c-about-item .about-img {
        width: 500px
    }

    .c-about-item .about-img picture {
        position: relative
    }

    .c-about-item .about-img picture:before {
        display: block;
        content: " ";
        width: 100%;
        padding-top: 100%
    }

    .c-about-item .about-img picture>.content {
        position: absolute;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0
    }
}

@media only screen and (min-width: 768px) and (max-width: 1280px) {
    .c-about-item .about-img {
        width: 39.0625vw
    }
}

@media (max-width: 767px) {
    .c-about-item .about-img {
        height: 86.66667vw
    }
}

.c-about-item .about-img img {
    display: block;
    border-radius: 20px;
    width: 100%;
    height: 100%;
    object-fit: cover
}

@media (min-width: 768px) {
    .c-about-item .about-img img {
        position: absolute;
        left: 0;
        top: 0
    }
}

@media (min-width: 768px) {
    .c-about-item .about-info {
        -webkit-flex: 1;
        -moz-flex: 1;
        -ms-flex: 1;
        -o-flex: 1;
        flex: 1;
        padding: 29px 0 0 80px
    }
}

@media only screen and (min-width: 768px) and (max-width: 980px) {
    .c-about-item .about-info {
        padding-left: 40px
    }
}

.c-about-item .about-ttl {
    color: #4b4b4d
}

@media (min-width: 768px) {
    .c-about-item .about-ttl {
        margin-bottom: 36px
    }
}

@media (max-width: 767px) {
    .c-about-item .about-ttl {
        margin-bottom: 30px
    }
}

.c-about-item .ttl-en {
    letter-spacing: .15em;
    font-weight: 600;
    font-family: "pauza", sans-serif;
    margin-bottom: 5px;
    display: block;
    color: #4b4b4d
}

@media (min-width: 768px) {
    .c-about-item .ttl-en {
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.5em
    }
}

@media (max-width: 767px) {
    .c-about-item .ttl-en {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.66667em
    }
}

.c-about-item .ttl-en::first-letter {
    color: #318dca
}

.c-about-item .ttl-jp {
    letter-spacing: .1em;
    font-weight: 700;
    font-family: "vdl-v7marugothic", sans-serif
}

@media (min-width: 768px) {
    .c-about-item .ttl-jp {
        font-size: 34px;
        font-size: 3.4rem;
        line-height: 1.52941em
    }
}

@media (max-width: 767px) {
    .c-about-item .ttl-jp {
        font-size: 28px;
        font-size: 2.8rem;
        line-height: 1.5em
    }
}

@media (min-width: 768px) {
    .c-about-item .about-desc {
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 2.26667em;
        letter-spacing: .06em
    }
}

@media (max-width: 767px) {
    .c-about-item .about-desc {
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 2em;
        letter-spacing: .02em
    }
}

@media (min-width: 768px) {
    .c-about-item .about-desc p {
        margin-bottom: 21px
    }
}

@media (max-width: 767px) {
    .c-about-item .about-desc p {
        margin-bottom: 20px
    }
}

.c-about-item .about-desc p:last-child {
    margin-bottom: 0
}

@media (min-width: 768px) {
    .c-intro-list>li {
        margin-bottom: 40px
    }
}

@media (max-width: 767px) {
    .c-intro-list>li {
        margin-bottom: 48px
    }
}

.c-intro-list>li:last-child {
    margin-bottom: 0
}

@media (min-width: 768px) {
    .c-intro {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: center;
        -moz-align-items: center;
        -ms-align-items: center;
        -o-align-items: center;
        align-items: center
    }
}

@media (min-width: 768px) {
    .c-intro.is-revert {
        -webkit-flex-direction: row-reverse;
        -moz-flex-direction: row-reverse;
        -ms-flex-direction: row-reverse;
        -o-flex-direction: row-reverse;
        flex-direction: row-reverse
    }
}

@media (min-width: 768px) {
    .c-intro.is-revert .intro-info {
        padding: 0 60px 4px 0
    }
}

@media only screen and (min-width: 768px) and (max-width: 980px) {
    .c-intro.is-revert .intro-info {
        padding-right: 30px
    }
}

@media (min-width: 768px) {
    .c-intro .intro-img {
        width: 360px
    }
}

@media only screen and (min-width: 768px) and (max-width: 980px) {
    .c-intro .intro-img {
        width: 36.73469vw
    }
}

@media (max-width: 767px) {
    .c-intro .intro-img {
        margin-bottom: 29px
    }
}

@media (min-width: 768px) {
    .c-intro .intro-img.is-intro-img {
        width: 240px
    }
}

@media only screen and (min-width: 768px) and (max-width: 980px) {
    .c-intro .intro-img.is-intro-img {
        width: 24.4898vw
    }
}

.c-intro .intro-img picture {
    display: block
}

.c-intro .intro-img img {
    border-radius: 10px;
    width: 100%
}

.c-intro .intro-info {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: .02em;
    font-weight: 400
}

@media (min-width: 768px) {
    .c-intro .intro-info {
        padding-left: 60px;
        -webkit-flex: 1;
        -moz-flex: 1;
        -ms-flex: 1;
        -o-flex: 1;
        flex: 1;
        line-height: 2;
        color: #4b4b4d
    }
}

@media only screen and (min-width: 768px) and (max-width: 980px) {
    .c-intro .intro-info {
        padding-left: 30px
    }
}

@media (max-width: 767px) {
    .c-intro .intro-info {
        line-height: calc(28 / 15)
    }
}

@media (min-width: 768px) {
    .c-intro .c-ttl04 {
        margin-bottom: 26px
    }
}

@media (max-width: 767px) {
    .c-intro .c-ttl04 {
        margin-bottom: 26px
    }
}

@media (min-width: 768px) {
    .c-intro .c-ttl03 {
        margin-bottom: 28px
    }
}

@media (max-width: 767px) {
    .c-intro .c-ttl03 {
        margin-bottom: 26px
    }
}

@media (min-width: 768px) {
    .c-intro .c-ttl03>span {
        background-position: left 94%
    }
}

@media (min-width: 768px) {
    .c-intro .c-note {
        margin-top: 24px
    }
}

@media (max-width: 767px) {
    .c-intro .c-note {
        margin-top: 16px
    }
}

@media (min-width: 768px) {
    .c-intro .c-btn01 {
        text-align: left;
        margin-top: 39px
    }
}

@media (max-width: 767px) {
    .c-intro .c-btn01 {
        margin-top: 33px
    }
}

.c-note {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.66667em;
    letter-spacing: .02em;
    font-weight: 500;
    position: relative
}

@media (min-width: 768px) {
    .c-note {
        padding-left: 14px;
        color: #4b4b4d
    }
}

@media (max-width: 767px) {
    .c-note {
        padding-left: 17px
    }
}

.c-note:before {
    content: "※";
    position: absolute;
    left: 0;
    top: 0
}

@media (max-width: 767px) {
    .c-note:before {
        font-size: 14px;
        font-size: 1.4rem
    }
}

.c-around-desc .ttl {
    font-weight: 700;
    font-family: "vdl-v7marugothic", sans-serif;
    position: relative;
    padding-left: 24px;
    color: #4b4b4d
}

@media (min-width: 768px) {
    .c-around-desc .ttl {
        margin-bottom: 11px;
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.6em;
        letter-spacing: .1em
    }
}

@media (max-width: 767px) {
    .c-around-desc .ttl {
        margin-bottom: 21px;
        font-size: 19px;
        font-size: 1.9rem;
        line-height: 1.47368em;
        letter-spacing: .06em
    }
}

@media (min-width: 768px) {
    .c-around-desc .ttl.is-space {
        letter-spacing: 0
    }
}

@media (max-width: 767px) {
    .c-around-desc .ttl.is-space {
        letter-spacing: 0.01em
    }
}

.c-around-desc .ttl:before {
    content: "";
    position: absolute;
    left: 0;
    width: 12px;
    height: 12px;
    border: 2px solid #318dca;
    border-radius: 100%
}

@media (min-width: 768px) {
    .c-around-desc .ttl:before {
        top: 10px
    }
}

@media (max-width: 767px) {
    .c-around-desc .ttl:before {
        top: 8px
    }
}

.c-around-desc .desc {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.86667em;
    font-weight: 400
}

@media (min-width: 768px) {
    .c-around-desc .desc {
        letter-spacing: 0.06em;
        color: #4b4b4d
    }
}

@media (max-width: 767px) {
    .c-around-desc .desc {
        letter-spacing: 0.02em
    }
}

.c-circle-list {
    font-family: "vdl-v7marugothic", sans-serif;
    font-weight: 700;
    letter-spacing: 0.1em;
    color: #4b4b4d
}

@media (min-width: 768px) {
    .c-circle-list {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        -o-flex-wrap: wrap;
        flex-wrap: wrap;
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.6em
    }
}

@media (max-width: 767px) {
    .c-circle-list {
        font-size: 19px;
        font-size: 1.9rem;
        line-height: 1.47368em
    }
}

@media only screen and (max-width: 374px) {
    .c-circle-list {
        font-size: 17px;
        font-size: 1.7rem
    }
}

.c-circle-list>li {
    position: relative;
    padding-left: 24px
}

@media (min-width: 768px) {
    .c-circle-list>li {
        margin-bottom: 7px
    }
}

@media (max-width: 767px) {
    .c-circle-list>li {
        margin-bottom: 6px
    }
}

@media only screen and (max-width: 374px) {
    .c-circle-list>li {
        padding-left: 20px
    }
}

.c-circle-list>li:before {
    content: "";
    position: absolute;
    left: 0;
    width: 12px;
    height: 12px;
    border: 2px solid #318dca;
    border-radius: 100%
}

@media (min-width: 768px) {
    .c-circle-list>li:before {
        top: 11px
    }
}

@media (max-width: 767px) {
    .c-circle-list>li:before {
        top: 9px
    }
}

@media only screen and (max-width: 374px) {
    .c-circle-list>li:before {
        top: 8px
    }
}

@media (max-width: 767px) {
    .c-circle-list>li.txt-none {
        padding-left: 0
    }

    .c-circle-list>li.txt-none:before {
        display: none
    }
}

.c-circle-list small {
    font-size: 15px;
    font-size: 1.5rem;
    letter-spacing: .1em
}

@media only screen and (max-width: 374px) {
    .c-circle-list small {
        font-size: 13px;
        font-size: 1.3rem
    }
}

.c-circle-list .txt-flex {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between
}

.c-dot-list {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6em;
    font-weight: 400
}

@media (min-width: 768px) {
    .c-dot-list {
        letter-spacing: 0.02em
    }
}

@media (max-width: 767px) {
    .c-dot-list {
        letter-spacing: 0.06em
    }
}

.c-dot-list>li {
    position: relative;
    padding-left: 15px;
    margin-bottom: 5px
}

.c-dot-list>li:before {
    content: "";
    position: absolute;
    left: 0;
    width: 6px;
    height: 6px;
    background: #318dca;
    border-radius: 100%
}

@media (min-width: 768px) {
    .c-dot-list>li:before {
        top: 9px
    }
}

@media (max-width: 767px) {
    .c-dot-list>li:before {
        top: 10px
    }
}

.c-dot-list>li.txt-none {
    padding-left: 0
}

.c-dot-list>li.txt-none::before {
    display: none
}

@media (min-width: 768px) {
    .c-dot-list.is-flex {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        -o-flex-wrap: wrap;
        flex-wrap: wrap
    }
}

@media (min-width: 768px) {
    .c-request-step {
        margin-top: 45px
    }
}

@media (max-width: 767px) {
    .c-request-step {
        margin-top: 38px
    }
}

@media (min-width: 768px) {
    .c-request-step .request-step__item {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        -ms-justify-content: space-between;
        -o-justify-content: space-between;
        justify-content: space-between;
        -webkit-align-items: center;
        -moz-align-items: center;
        -ms-align-items: center;
        -o-align-items: center;
        align-items: center
    }
}

@media (min-width: 768px) {
    .c-request-step .request-step__item:not(:last-child) {
        margin-bottom: 34px
    }
}

@media (max-width: 767px) {
    .c-request-step .request-step__item:not(:last-child) {
        margin-bottom: 47px
    }
}

@media (min-width: 768px) {
    .c-request-step .request-thumb {
        width: calc(300 / 1040 * 100%);
        padding-top: 13px
    }
}

@media (max-width: 767px) {
    .c-request-step .request-thumb {
        width: 100%;
        max-width: 220px;
        margin: 0 auto
    }
}

@media (min-width: 768px) {
    .c-request-step .request-ctn {
        width: calc(680 / 1040 * 100%)
    }
}

@media (max-width: 767px) {
    .c-request-step .request-ctn {
        margin-top: 25px
    }
}

@media (max-width: 767px) {
    .c-request-step .request-ctn .c-ttl03 {
        text-align: center
    }

    .c-request-step .request-ctn .c-ttl03 span {
        display: inline-block
    }
}

@media (min-width: 768px) {
    .c-request-step .request-ctn .request-desc {
        margin-top: 28px
    }
}

@media (max-width: 767px) {
    .c-request-step .request-ctn .request-desc {
        margin-top: 22px
    }
}

.c-request-step .request-ctn .request-desc .txt {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2em;
    letter-spacing: .02em;
    font-weight: 400;
    color: #4b4b4d
}

@media (max-width: 767px) {
    .c-request-step .request-ctn .request-desc .txt {
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 1.86667em
    }
}

@media (min-width: 768px) {
    .c-request-step .request-ctn .c-btn01 {
        text-align: left;
        margin-top: 30px
    }
}

@media (max-width: 767px) {
    .c-request-step .request-ctn .c-btn01 {
        margin-top: 36px
    }
}

@media (min-width: 768px) {
    .c-request-step .request-ctn .request-lst {
        margin-top: 27px
    }
}

@media (max-width: 767px) {
    .c-request-step .request-ctn .request-lst {
        margin-top: 24px;
        padding: 0 15px
    }
}

.c-request-step .request-ctn .request-lst .request-lst__item {
    position: relative;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2.125em;
    letter-spacing: .06em;
    font-weight: 400;
    padding-left: 35px
}

@media (max-width: 767px) {
    .c-request-step .request-ctn .request-lst .request-lst__item {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.625em
    }
}

@media (min-width: 768px) {
    .c-request-step .request-ctn .request-lst .request-lst__item:not(:last-child) {
        margin-bottom: 5px
    }
}

@media (max-width: 767px) {
    .c-request-step .request-ctn .request-lst .request-lst__item:not(:last-child) {
        margin-bottom: 8px
    }
}

.c-request-step .request-ctn .request-lst .request-lst__item:before {
    content: "";
    position: absolute;
    left: 0;
    width: 21px;
    height: 19px;
    background-image: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="21" height="19" viewBox="0 0 21 19"><g id="icn_check" transform="translate(-202.5 -2993.42)"><path id="Union_3" data-name="Union 3" d="M-2906.045,92.934l-1.514-1.514-3.765-3.533a.555.555,0,0,1-.176-.4.557.557,0,0,1,.163-.4l1.52-1.52a.554.554,0,0,1,.772-.013l3.393,3.183,8.738-8.172a.556.556,0,0,1,.772.013l1.52,1.52a.558.558,0,0,1,.163.4.56.56,0,0,1-.175.4l-10.638,10.048a.554.554,0,0,1-.382.151A.55.55,0,0,1-2906.045,92.934Z" transform="translate(3117.959 2913.973)" fill="%23ff8c39"/><path id="Union_4" data-name="Union 4" d="M-2908.162,99.419a3.377,3.377,0,0,1-3.338-3.407V83.826a3.377,3.377,0,0,1,3.338-3.407h10.856a.529.529,0,0,1,.528.528v.967a.529.529,0,0,1-.528.528h-10.856a1.361,1.361,0,0,0-1.337,1.382V96.012a1.361,1.361,0,0,0,1.337,1.382h11.893a1.361,1.361,0,0,0,1.337-1.382V91.224a.529.529,0,0,1,.528-.529h.944a.528.528,0,0,1,.528.529v4.788a3.376,3.376,0,0,1-3.337,3.407Z" transform="translate(3114 2913)" fill="%23318dca"/></g></svg>');
    background-repeat: no-repeat;
    background-position: center;
    background-color: transparent;
    background-size: 100% 100%
}

@media (min-width: 768px) {
    .c-request-step .request-ctn .request-lst .request-lst__item:before {
        top: 8px
    }
}

@media (max-width: 767px) {
    .c-request-step .request-ctn .request-lst .request-lst__item:before {
        top: 5px
    }
}

.c-request-step .request-ctn .request-lst .request-lst__item .is-underline {
    color: #4b4b4d;
    background-image: linear-gradient(0deg, #ffd5b8, #ffd5b8);
    background-repeat: repeat-x
}

@media (min-width: 768px) {
    .c-request-step .request-ctn .request-lst .request-lst__item .is-underline {
        display: inline-block;
        background-position: left bottom 3px;
        padding-left: 3px;
        background-size: auto 5px
    }
}

@media (max-width: 767px) {
    .c-request-step .request-ctn .request-lst .request-lst__item .is-underline {
        display: inline;
        background-position: left bottom;
        background-size: auto 5px
    }
}

@media (min-width: 768px) {
    .c-request-step .request-ctn .request-lst .request-lst__item.type02 {
        letter-spacing: 0;
        margin-right: -8px
    }
}

.c-request-step .request-ctn .request-note {
    position: relative;
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.66667em;
    letter-spacing: .02em;
    font-weight: 500;
    padding-left: 10px;
    color: #4b4b4d
}

@media (min-width: 768px) {
    .c-request-step .request-ctn .request-note {
        margin-top: 24px
    }
}

@media (max-width: 767px) {
    .c-request-step .request-ctn .request-note {
        margin: 17px 14px 0 19px
    }
}

.c-request-step .request-ctn .request-note:before {
    content: "※";
    position: absolute;
    top: 0;
    left: -4px
}

.c-reservations-box {
    border: 10px solid #318dca;
    border-radius: 10px;
    color: #4b4b4d
}

@media (min-width: 768px) {
    .c-reservations-box {
        padding: 44px 50px 47px 60px;
        margin-bottom: 60px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    .c-reservations-box {
        padding-right: 40px;
        padding-left: 40px
    }
}

@media (max-width: 767px) {
    .c-reservations-box {
        padding: 25px 30px 31px;
        margin-bottom: 50px
    }
}

@media only screen and (max-width: 374px) {
    .c-reservations-box {
        padding-left: 20px;
        padding-right: 20px
    }
}

.c-reservations-box .reservations-ttl {
    font-size: 20px;
    font-size: 2rem;
    line-height: 1.6em;
    letter-spacing: .1em;
    font-weight: 700;
    font-family: "vdl-v7marugothic", sans-serif;
    position: relative
}

@media (min-width: 768px) {
    .c-reservations-box .reservations-ttl {
        padding: 0 289px 0 32px;
        margin: 0 0 21px -2px
    }
}

@media (max-width: 767px) {
    .c-reservations-box .reservations-ttl {
        line-height: calc(30 / 20);
        padding-left: 31px;
        margin-bottom: 19px
    }
}

@media only screen and (max-width: 374px) {
    .c-reservations-box .reservations-ttl {
        font-size: 18px;
        font-size: 1.8rem;
        letter-spacing: .05em
    }
}

.c-reservations-box .reservations-ttl:before {
    content: "";
    position: absolute;
    background: url("../img/grooming_hotel/calendar_icn.svg") no-repeat center center/100% auto;
    height: 22px;
    width: 20px
}

@media (min-width: 768px) {
    .c-reservations-box .reservations-ttl:before {
        top: 6px;
        left: 2px
    }
}

@media (max-width: 767px) {
    .c-reservations-box .reservations-ttl:before {
        top: 5px;
        left: 0
    }
}

@media (min-width: 768px) {
    .c-reservations-box .reservations-row {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-align-items: flex-start;
        -moz-align-items: flex-start;
        -ms-align-items: flex-start;
        -o-align-items: flex-start;
        align-items: flex-start
    }
}

@media (min-width: 768px) {
    .c-reservations-box .reservations-contact {
        width: 289px;
        margin-top: -42px
    }
}

@media (max-width: 767px) {
    .c-reservations-box .reservations-contact {
        max-width: 247px;
        margin: 0 auto
    }
}

.c-reservations-box .contact-tel {
    position: relative;
    padding: 3px 0 0 87px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.875em;
    letter-spacing: .02em;
    font-weight: 700;
    font-family: "vdl-v7marugothic", sans-serif;
    color: #4b4b4d
}

@media only screen and (max-width: 374px) {
    .c-reservations-box .contact-tel {
        font-size: 14px;
        font-size: 1.4rem;
        padding-left: 60px
    }
}

.c-reservations-box .contact-tel:before {
    content: "";
    position: absolute;
    left: 0;
    top: 50%;
    width: 70px;
    height: 70px;
    border-radius: 100%;
    background: #fff url("../img/grooming_hotel/tel_icn.svg") no-repeat center center/25px auto;
    margin-top: -32px
}

@media only screen and (max-width: 374px) {
    .c-reservations-box .contact-tel:before {
        width: 54px;
        height: 54px;
        margin-top: -26px;
        background-size: 20px auto
    }
}

.c-reservations-box .contact-tel .tel {
    display: inline-block;
    color: #ff8c39 !important;
    font-size: 22px;
    font-size: 2.2rem;
    letter-spacing: .02em
}

@media (max-width: 767px) {
    .c-reservations-box .contact-tel .tel {
        letter-spacing: 0
    }
}

@media only screen and (max-width: 374px) {
    .c-reservations-box .contact-tel .tel {
        font-size: 20px;
        font-size: 2rem
    }
}

.c-reservations-box .reservations-desc {
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.86667em;
    letter-spacing: .06em;
    font-weight: 400
}

@media (min-width: 768px) {
    .c-reservations-box .reservations-desc {
        -webkit-flex: 1;
        -moz-flex: 1;
        -ms-flex: 1;
        -o-flex: 1;
        flex: 1;
        padding-right: 51px
    }
}

@media (max-width: 767px) {
    .c-reservations-box .reservations-desc {
        margin-bottom: 27px
    }
}

@media (min-width: 768px) {
    .c-reservations-box .c-btn01 {
        margin-top: 27px
    }
}

@media (max-width: 767px) {
    .c-reservations-box .c-btn01 {
        margin-top: 25px
    }

    .c-reservations-box .c-btn01 span {
        padding-left: 18px
    }
}

@media only screen and (max-width: 374px) {
    .c-reservations-box .c-btn01 a {
        font-size: 13px;
        font-size: 1.3rem
    }

    .c-reservations-box .c-btn01 a span {
        padding-left: 10px
    }
}

.c-note-list {
    counter-reset: list-number
}

.c-note-list>li {
    counter-increment: list-number;
    padding-left: 2.5em
}

.c-note-list>li:before {
    content: "※" counter(list-number)
}

.c-request-box {
    background: #fff;
    border-radius: 10px
}

@media (min-width: 768px) {
    .c-request-box {
        padding: 52px 80px 79px;
        margin-bottom: 50px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    .c-request-box {
        padding-left: 40px;
        padding-right: 40px
    }
}

@media (max-width: 767px) {
    .c-request-box {
        padding: 25px 25px 38px;
        margin-bottom: 50px
    }
}

@media (min-width: 768px) {
    .c-request-box .c-ttl03 {
        margin-bottom: 37px
    }
}

@media (max-width: 767px) {
    .c-request-box .c-ttl03 {
        margin-bottom: 20px
    }
}

@media (min-width: 768px) {
    .c-request-box .c-ttl03 span {
        padding-bottom: 21px
    }

    .is-windows .c-request-box .c-ttl03 span {
        padding-bottom: 16px
    }
}

@media (min-width: 768px) {
    .c-request-box .request-list>li {
        margin-bottom: 41px
    }
}

@media (max-width: 767px) {
    .c-request-box .request-list>li {
        margin-bottom: 35px
    }
}

.c-request-box .request-list>li:last-child {
    margin-bottom: 0
}

@media (min-width: 768px) {
    .c-request-box .c-around-desc .ttl {
        margin-bottom: 16px
    }
}

@media (max-width: 767px) {
    .c-request-box .c-around-desc .ttl {
        margin-bottom: 13px
    }
}

.c-request-box .c-around-desc sup {
    font-size: 0.6em;
    vertical-align: top;
    position: relative;
    top: -2px
}

@media (min-width: 768px) {
    .c-request-box .c-around-desc .desc {
        margin-bottom: 20px
    }
}

@media (max-width: 767px) {
    .c-request-box .c-around-desc .desc {
        margin-bottom: 16px;
        padding-right: 2px
    }
}

.c-request-box .c-around-desc .desc:last-child {
    margin-bottom: 0
}

.c-request-box .c-note-list>li {
    margin-bottom: 9px
}

.c-request-box .c-note-list>li:last-child {
    margin-bottom: 0
}

.span-toggle,
.span-toggle01 {
    position: absolute;
    top: 0;
    right: 0;
    left: 0;
    height: 131px;
    z-index: 1;
    cursor: pointer
}

@media (max-width: 767px) {

    .span-toggle,
    .span-toggle01 {
        height: 83px
    }
}

.span-toggle01 {
    height: 133px
}

@media (max-width: 767px) {
    .span-toggle01 {
        height: 110px
    }
}

#footer {
    position: relative;
    background-color: #318dca;
    margin-top: 282px;
    isolation: isolate
}

@media (max-width: 767px) {
    #footer {
        margin-top: 167px
    }
}

#footer:before {
    content: "";
    position: absolute;
    background-repeat: no-repeat;
    background-position: center top;
    background-size: 100% 100%;
    left: 0;
    right: 0;
    z-index: -1
}

@media (min-width: 768px) {
    #footer:before {
        height: 300px;
        top: -175px;
        background-image: url(../img/common/other/ft_bg01.png);
        /* background-image: image-set(url(../../../../webp-express/webp-images/themes/wp-templ/assets/img/common/other/ft_bg01.png.webp) type("image/webp"), url(../img/common/other/ft_bg01.png) type("image/png")); */
    }
}

@media only screen and (min-width: 768px) and (max-width: 1280px) {
    #footer:before {
        background-size: cover
    }
}

@media (max-width: 767px) {
    #footer:before {
        height: 120px;
        top: -73px;
        background-image: url("../img/common/other/ft_bg01_sp.png")
    }
}

#footer .deco01 {
    position: absolute
}

@media (min-width: 768px) {
    #footer .deco01 {
        top: -282px;
        left: calc(183 / 1280 * 100%)
    }
}

@media (max-width: 767px) {
    #footer .deco01 {
        top: -138px;
        left: 0;
        margin-left: 17px;
        width: 128px
    }
}

#footer .deco02 {
    position: absolute
}

@media (min-width: 768px) {
    #footer .deco02 {
        top: -247px;
        right: calc(194 / 1280 * 100%)
    }
}

@media (max-width: 767px) {
    #footer .deco02 {
        top: -127px;
        right: 0;
        margin-right: 37px;
        width: 105px
    }
}

#footer .c-ttl01 {
    color: #fff
}

@media (min-width: 768px) {
    #footer .block01 .grid {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        -o-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        -ms-justify-content: space-between;
        -o-justify-content: space-between;
        justify-content: space-between
    }
}

@media (max-width: 767px) {
    #footer .block01 .grid {
        margin: 0 -5px
    }
}

@media (min-width: 768px) {
    #footer .block01 .grid .c-ttl01 {
        width: 40%
    }
}

@media (min-width: 768px) {
    #footer .block01 .grid .c-ttl01 .txtjp {
        margin-top: 31px;
        letter-spacing: 0.04em
    }
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {
    #footer .block01 .grid .c-ttl01 .txtjp {
        font-size: 33px;
        font-size: 3.3rem
    }
}

@media (max-width: 767px) {
    #footer .block01 .grid .c-ttl01 .txtjp {
        margin-top: 13px
    }
}

@media only screen and (max-width: 374px) {
    #footer .block01 .grid .c-ttl01 .txtjp {
        font-size: 25px;
        font-size: 2.5rem
    }
}

#footer .block01 .grid .info {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between;
    position: relative;
    z-index: 1
}

@media (min-width: 768px) {
    #footer .block01 .grid .info {
        width: 60%;
        margin-top: -3px;
        text-align: center
    }
}

@media (max-width: 767px) {
    #footer .block01 .grid .info {
        margin: 42px 15px 0
    }
}

#footer .block01 .grid .info .button {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    position: relative;
    background-color: #fff;
    border-radius: 5px;
    opacity: 1;
    cursor: pointer
}

@media (min-width: 768px) {
    #footer .block01 .grid .info .button {
        -webkit-justify-content: center;
        -moz-justify-content: center;
        -ms-justify-content: center;
        -o-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        -moz-align-items: center;
        -ms-align-items: center;
        -o-align-items: center;
        align-items: center;
        width: calc(50% - 32px);
        margin: 0 16px;
        padding: 20px 0 12px
    }
}

@media (max-width: 767px) {
    #footer .block01 .grid .info .button {
        width: 100%;
        max-width: 310px;
        margin: 0 auto 30px;
        padding: 12px 0 20px 93px
    }
}

@media only screen and (max-width: 374px) {
    #footer .block01 .grid .info .button {
        padding: 10px 0 15px 78px
    }
}

#footer .block01 .grid .info .button:after {
    content: "";
    position: absolute;
    background-color: #ddf1fe;
    border-radius: 10px;
    z-index: -1;
    transition: 0.5s
}

@media (min-width: 768px) {
    #footer .block01 .grid .info .button:after {
        top: -10px;
        right: -10px;
        bottom: -10px;
        left: -10px
    }
}

@media (max-width: 767px) {
    #footer .block01 .grid .info .button:after {
        top: -8px;
        right: -8px;
        bottom: -8px;
        left: -8px
    }
}

@media (min-width: 768px) {
    #footer .block01 .grid .info .button:last-of-type {
        margin-right: 10px
    }
}

@media only screen and (min-width: 1025px) {
    #footer .block01 .grid .info .button:hover:after {
        background-color: #ff8c39;
        transition: 0.5s
    }
}

@media (max-width: 767px) {
    #footer .block01 .grid .info .button-tel .group {
        padding-left: 23px
    }
}

@media only screen and (max-width: 374px) {
    #footer .block01 .grid .info .button-tel .group {
        padding-left: 0
    }
}

@media (max-width: 767px) {
    #footer .block01 .grid .info .button-tel .txt {
        text-align: center
    }
}

@media (max-width: 767px) {
    #footer .block01 .grid .info .button-tel .txt small {
        font-size: 18px;
        font-size: 1.8rem
    }
}

#footer .block01 .grid .info .button-tel .txt span {
    font-size: 22px;
    font-size: 2.2rem
}

@media (max-width: 767px) {
    #footer .block01 .grid .info .icon {
        position: absolute;
        width: 70px;
        top: 15px;
        left: 14px
    }
}

@media only screen and (max-width: 374px) {
    #footer .block01 .grid .info .icon {
        width: 50px
    }
}

#footer .block01 .grid .info .txt {
    margin-top: 8px;
    font-size: 22px;
    font-size: 2.2rem;
    line-height: 1.54545em;
    letter-spacing: .02em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    #footer .block01 .grid .info .txt {
        font-size: 18px;
        font-size: 1.8rem
    }
}

@media (max-width: 767px) {
    #footer .block01 .grid .info .txt {
        font-size: 20px;
        font-size: 2rem;
        line-height: 1.5em;
        letter-spacing: 0em
    }
}

@media only screen and (max-width: 374px) {
    #footer .block01 .grid .info .txt {
        font-size: 16px;
        font-size: 1.6rem
    }
}

#footer .block01 .grid .info .txt span {
    color: #ff8c39
}

#footer .block01 #gmap {
    position: relative;
    margin-top: 78px;
    z-index: 1
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {
    #footer .block01 #gmap {
        padding: 0 20px
    }
}

@media (max-width: 767px) {
    #footer .block01 #gmap {
        margin-top: 38px;
        padding: 0 16px
    }
}

#footer .block01 #gmap iframe {
    border-radius: 10px;
    max-width: 100%;
    overflow: hidden
}

@media (max-width: 767px) {
    #footer .block01 #gmap iframe {
        height: 272px
    }
}

#footer .block02 {
    position: relative;
    padding: 0 15px
}

@media (min-width: 768px) {
    #footer .block02 {
        margin-top: -52px;
        overflow: hidden;
        padding-bottom: 30px;
        margin-bottom: -30px
    }
}

@media (max-width: 767px) {
    #footer .block02:before {
        content: "";
        position: absolute;
        top: -246px;
        right: 15px;
        left: 15px;
        bottom: -80px;
        background-color: #fff;
        border-radius: 10px;
        z-index: -1
    }
}

#footer .block02 .inner_1180 {
    max-width: 1180px;
    border-radius: 10px
}

@media (min-width: 768px) {
    #footer .block02 .inner_1180 {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        -o-flex-wrap: wrap;
        flex-wrap: wrap;
        padding: 132px 20px 78px;
        background-color: #fff
    }
}

@media (max-width: 767px) {
    #footer .block02 .inner_1180 {
        padding: 26px 15px 0
    }
}

@media only screen and (max-width: 374px) {
    #footer .block02 .inner_1180 {
        padding-left: 5px;
        padding-right: 5px
    }
}

@media (min-width: 768px) {
    #footer .block02 .box-social {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        -o-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        -ms-justify-content: space-between;
        -o-justify-content: space-between;
        justify-content: space-between
    }
}

@media (min-width: 768px) {
    #footer .block02 .box-social .logo {
        width: 59.2%
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    #footer .block02 .box-social .logo {
        width: 50%
    }
}

@media (max-width: 767px) {
    #footer .block02 .box-social .logo {
        text-align: center
    }
}

@media (max-width: 767px) {
    #footer .block02 .box-social .logo img {
        width: 216px
    }
}

#footer .block02 .box-social .social {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between
}

@media (min-width: 768px) {
    #footer .block02 .box-social .social {
        width: 32.9%;
        margin-right: 9px;
        margin-top: 5px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    #footer .block02 .box-social .social {
        width: 40%;
        margin-top: -3px
    }
}

@media (max-width: 767px) {
    #footer .block02 .box-social .social {
        max-width: 162px;
        width: 100%;
        margin: 20px auto 0
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    #footer .block02 .box-social .social img {
        width: 45px
    }
}

@media (min-width: 768px) {
    #footer .block02 .grid {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        -o-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        -ms-justify-content: space-between;
        -o-justify-content: space-between;
        justify-content: space-between;
        max-width: 1000px;
        width: 100%;
        margin: 0 auto
    }
}

@media (min-width: 768px) {
    #footer .block02 .grid .left {
        width: 50%
    }
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {
    #footer .block02 .grid .left {
        width: 52%
    }
}

#footer .block02 .grid .left .sttl {
    position: relative;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2.26667em;
    letter-spacing: .1em;
    font-weight: 500
}

#footer .block02 .grid .left .map {
    position: relative;
    margin-top: -5px;
    padding-left: 26px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 2.26667em;
    letter-spacing: .1em;
    font-weight: 400
}

@media (max-width: 767px) {
    #footer .block02 .grid .left .map {
        margin-top: 2px;
        font-size: 15px;
        font-size: 1.5rem;
        line-height: 1.6em;
        letter-spacing: .02em
    }
}

#footer .block02 .grid .left .map:before {
    content: "";
    position: absolute;
    background-image: url(data:image/svg+xml;base64,PHN2ZyBpZD0iR3JvdXBfNTUiIGRhdGEtbmFtZT0iR3JvdXAgNTUiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyIgeG1sbnM6eGxpbms9Imh0dHA6Ly93d3cudzMub3JnLzE5OTkveGxpbmsiIHdpZHRoPSIxNiIgaGVpZ2h0PSIyMCIgdmlld0JveD0iMCAwIDE2IDIwIj4KICA8ZGVmcz4KICAgIDxjbGlwUGF0aCBpZD0iY2xpcC1wYXRoIj4KICAgICAgPHJlY3QgaWQ9IlJlY3RhbmdsZV80MiIgZGF0YS1uYW1lPSJSZWN0YW5nbGUgNDIiIHdpZHRoPSIxNiIgaGVpZ2h0PSIyMCIgZmlsbD0iIzMxOGRjYSIvPgogICAgPC9jbGlwUGF0aD4KICA8L2RlZnM+CiAgPGcgaWQ9Ikdyb3VwXzU0IiBkYXRhLW5hbWU9Ikdyb3VwIDU0IiBjbGlwLXBhdGg9InVybCgjY2xpcC1wYXRoKSI+CiAgICA8cGF0aCBpZD0iUGF0aF8zODQiIGRhdGEtbmFtZT0iUGF0aCAzODQiIGQ9Ik04LDEwYTIsMiwwLDAsMCwyLTJBMiwyLDAsMCwwLDgsNiwyLDIsMCwwLDAsNiw4YTIsMiwwLDAsMCwyLDIiIGZpbGw9IiNmZjhjMzkiLz4KICAgIDxwYXRoIGlkPSJQYXRoXzM4NSIgZGF0YS1uYW1lPSJQYXRoIDM4NSIgZD0iTTEzLjU4NywyLjIyNEE3Ljk5NCw3Ljk5NCwwLDAsMCw4LDAsOCw4LDAsMCwwLDIuNDEyLDIuMjI0LDcuNzQsNy43NCwwLDAsMCwwLDguMmE5Ljg5Miw5Ljg5MiwwLDAsMCwxLjk4Nyw1LjQzNkEzMy4yNTgsMzMuMjU4LDAsMCwwLDgsMjBhMzMuMjQ5LDMzLjI0OSwwLDAsMCw2LjAxMi02LjM2MkE5Ljg4Nyw5Ljg4NywwLDAsMCwxNiw4LjJhNy43MzcsNy43MzcsMCwwLDAtMi40MTMtNS45NzdNMTIuNTI1LDEyLjI2MkEyNy41LDI3LjUsMCwwLDEsOCwxNy4zNDlhMjcuNSwyNy41LDAsMCwxLTQuNTI1LTUuMDg3QTcuNzYxLDcuNzYxLDAsMCwxLDIsOC4yLDYuMDQ0LDYuMDQ0LDAsMCwxLDMuNzM3LDMuNzM3LDUuOCw1LjgsMCwwLDEsOCwyYTUuOCw1LjgsMCwwLDEsNC4yNjIsMS43MzdBNi4wNDEsNi4wNDEsMCwwLDEsMTQsOC4yYTcuNzYxLDcuNzYxLDAsMCwxLTEuNDc1LDQuMDYxIiBmaWxsPSIjMzE4ZGNhIi8+CiAgPC9nPgo8L3N2Zz4K);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    top: 7px;
    left: 0;
    width: 16px;
    height: 20px
}

@media (max-width: 767px) {
    #footer .block02 .grid .left .map:before {
        top: 2px
    }
}

#footer .block02 .grid .left .c-calendar-txt {
    margin-top: 12px;
    color: #313133
}

@media (max-width: 767px) {
    #footer .block02 .grid .left .c-calendar-txt {
        margin-top: 22px;
        padding-right: 30px
    }
}

#footer .block02 .grid .left .box-calendar {
    border-radius: 10px
}

@media (min-width: 768px) {
    #footer .block02 .grid .left .box-calendar {
        background-color: rgba(49, 141, 202, 0.1);
        margin-top: 10px;
        margin-right: 10px;
        padding-top: 22px;
        padding-bottom: 23px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {
    #footer .block02 .grid .left .box-calendar {
        padding-left: 10px;
        padding-right: 10px
    }
}

@media (max-width: 767px) {
    #footer .block02 .grid .left .box-calendar {
        padding: 26px 8px
    }
}

@media (min-width: 768px) {
    #footer .block02 .grid .left .c-calendar {
        max-width: 380px
    }
}

#footer .block02 .grid .left .c-calendar dl {
    color: #313133;
    border-color: #318dca
}

#footer .block02 .grid .left .info {
    padding-left: 10px;
    padding-top: 9px
}

@media (max-width: 767px) {
    #footer .block02 .grid .left .info {
        padding-top: 24px
    }
}

#footer .block02 .grid .left .box-card {
    background-color: #fff;
    border: 5px solid rgba(49, 141, 202, 0.1);
    border-radius: 10px
}

@media (min-width: 768px) {
    #footer .block02 .grid .left .box-card {
        margin-top: 15px;
        margin-right: 10px;
        padding-top: 20px;
        padding-bottom: 20px
    }
}

@media (max-width: 767px) {
    #footer .block02 .grid .left .box-card {
        margin: 0 10px;
        padding-top: 9px;
        padding-bottom: 8px
    }
}

#footer .block02 .grid .left .box-card .card-txt {
    text-align: center;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6em;
    letter-spacing: 0em;
    font-weight: bold;
    color: #4b4b4d;
    font-family: "vdl-v7marugothic", sans-serif
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {
    #footer .block02 .grid .left .box-card .card-txt {
        padding: 0 10px
    }
}

#footer .block02 .grid .left .box-card .card {
    text-align: center;
    margin-top: 17px;
    margin-bottom: 4px
}

@media (max-width: 767px) {
    #footer .block02 .grid .left .box-card .card {
        margin-top: 13px;
        margin-bottom: 7px
    }
}

#footer .block02 .grid .right {
    position: relative
}

@media (min-width: 768px) {
    #footer .block02 .grid .right {
        width: 43.6%
    }
}

@media only screen and (min-width: 1024px) and (max-width: 1180px) {
    #footer .block02 .grid .right {
        padding-bottom: 40px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    #footer .block02 .grid .right {
        width: 46%
    }
}

@media (max-width: 767px) {
    #footer .block02 .grid .right {
        padding: 15px 11px
    }
}

@media (min-width: 768px) {
    #footer .block02 .grid .right .navi {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        -o-flex-wrap: wrap;
        flex-wrap: wrap;
        margin: -17px -10px 0
    }
}

@media (min-width: 768px) {
    #footer .block02 .grid .right .navi li {
        width: calc(50% - 20px);
        margin: 0 10px
    }
}

#footer .block02 .grid .right .navi a {
    display: block;
    position: relative;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDkiIGhlaWdodD0iMSIgdmlld0JveD0iMCAwIDIwOSAxIj4KICA8bGluZSBpZD0iYmRyIiB4Mj0iMjA4IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjUgMC41KSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjMzE4ZGNhIiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWRhc2hhcnJheT0iMyA0Ii8+Cjwvc3ZnPgo=);
    background-repeat: repeat-x;
    background-position: left bottom;
    background-size: 209px 1px;
    padding: 18px 0 15px 18px;
    color: #4b4b4d;
    opacity: 1;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.6875em;
    letter-spacing: 0em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    transition: 0.5s;
    cursor: pointer
}

@media screen and (-webkit-min-device-pixel-ratio: 0) and (min-width: 768px) {
    #footer .block02 .grid .right .navi a {
        padding-left: 15px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {
    #footer .block02 .grid .right .navi a {
        font-size: 14px;
        font-size: 1.4rem
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    #footer .block02 .grid .right .navi a {
        padding-left: 15px;
        font-size: 11px;
        font-size: 1.1rem;
        letter-spacing: 0em
    }
}

@media (max-width: 767px) {
    #footer .block02 .grid .right .navi a {
        padding: 10px 0 9px 23px
    }
}

#footer .block02 .grid .right .navi a:before,
#footer .block02 .grid .right .navi a:after {
    content: "";
    position: absolute;
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 8px;
    height: 10px;
    top: 26px;
    left: 0;
    transition: 0.5s
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {

    #footer .block02 .grid .right .navi a:before,
    #footer .block02 .grid .right .navi a:after {
        top: 23px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {

    #footer .block02 .grid .right .navi a:before,
    #footer .block02 .grid .right .navi a:after {
        background-size: 6px
    }
}

@media (max-width: 767px) {

    #footer .block02 .grid .right .navi a:before,
    #footer .block02 .grid .right .navi a:after {
        top: 18px;
        left: 4px
    }
}

#footer .block02 .grid .right .navi a:before {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4IiBoZWlnaHQ9IjEwIiB2aWV3Qm94PSIwIDAgOCAxMCI+CiAgPGcgaWQ9Ikdyb3VwXzE2OCIgZGF0YS1uYW1lPSJHcm91cCAxNjgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC03MTAgLTU0MjApIj4KICAgIDxwYXRoIGlkPSJ0cmkiIGQ9Ik00LjE1MiwxLjM1N2ExLDEsMCwwLDEsMS43LDBsMy4yLDUuMTEzQTEsMSwwLDAsMSw4LjIsOEgxLjhBMSwxLDAsMCwxLC45NTYsNi40N1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDcxOCA1NDIwKSByb3RhdGUoOTApIiBmaWxsPSIjZmY4YzM5Ii8+CiAgICA8cGF0aCBpZD0idHJpLTIiIGRhdGEtbmFtZT0idHJpIiBkPSJNNC4xNTIsMS4zNTdhMSwxLDAsMCwxLDEuNywwbDMuMiw1LjExM0ExLDEsMCwwLDEsOC4yLDhIMS44QTEsMSwwLDAsMSwuOTU2LDYuNDdaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg3MTggNTQyMCkgcm90YXRlKDkwKSIgZmlsbD0iIzMxOGRjYSIvPgogIDwvZz4KPC9zdmc+Cg==);
    opacity: 1
}

#footer .block02 .grid .right .navi a:after {
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4IiBoZWlnaHQ9IjEwIiB2aWV3Qm94PSIwIDAgOCAxMCI+CiAgPGcgaWQ9Ikdyb3VwXzE2OCIgZGF0YS1uYW1lPSJHcm91cCAxNjgiIHRyYW5zZm9ybT0idHJhbnNsYXRlKC03MTAgLTU0MjApIj4KICAgIDxwYXRoIGlkPSJ0cmkiIGQ9Ik0yLjY1LDMuNzZhMi43NzEsMi43NzEsMCwwLDEsNC43LDBoMEEyLjc3MSwyLjc3MSwwLDAsMSw1LDhINUEyLjc3MSwyLjc3MSwwLDAsMSwyLjY1LDMuNzZaIiB0cmFuc2Zvcm09InRyYW5zbGF0ZSg3MTggNTQyMCkgcm90YXRlKDkwKSIgZmlsbD0iI2ZmOGMzOSIvPgogICAgPHBhdGggaWQ9InRyaS0yIiBkYXRhLW5hbWU9InRyaSIgZD0iTTQuMTUyLDEuMzU3YTEsMSwwLDAsMSwxLjcsMGwzLjIsNS4xMTNBMSwxLDAsMCwxLDguMiw4SDEuOEExLDEsMCwwLDEsLjk1Niw2LjQ3WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoNzE4IDU0MjApIHJvdGF0ZSg5MCkiIGZpbGw9IiMzMThkY2EiIG9wYWNpdHk9IjAiLz4KICA8L2c+Cjwvc3ZnPgo=);
    opacity: 0
}

@media only screen and (min-width: 1025px) {
    #footer .block02 .grid .right .navi a:hover {
        transition: 0.5s;
        background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIyMDkiIGhlaWdodD0iMSIgdmlld0JveD0iMCAwIDIwOSAxIj4KICA8bGluZSBpZD0iYmRyIiB4Mj0iMjA4IiB0cmFuc2Zvcm09InRyYW5zbGF0ZSgwLjUgMC41KSIgZmlsbD0ibm9uZSIgc3Ryb2tlPSIjZmY4YzM5IiBzdHJva2UtbGluZWNhcD0icm91bmQiIHN0cm9rZS13aWR0aD0iMSIgc3Ryb2tlLWRhc2hhcnJheT0iMyA0Ii8+Cjwvc3ZnPgo=)
    }

    #footer .block02 .grid .right .navi a:hover:before,
    #footer .block02 .grid .right .navi a:hover:after {
        transition: 0.5s
    }

    #footer .block02 .grid .right .navi a:hover:before {
        opacity: 0
    }

    #footer .block02 .grid .right .navi a:hover:after {
        opacity: 1
    }
}

#footer .block02 .grid .right .ft-button {
    margin-top: 45px;
    position: relative
}

@media (max-width: 767px) {
    #footer .block02 .grid .right .ft-button {
        margin-top: 36px
    }
}

#footer .block02 .grid .right .ft-button a {
    display: block;
    position: relative;
    background-color: rgba(255, 140, 57, 0.1);
    border-radius: 5px;
    padding: 13px 55px 9px 25px;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.6em;
    letter-spacing: .02em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    opacity: 1;
    transition: 0.5s;
    cursor: pointer
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    #footer .block02 .grid .right .ft-button a {
        padding-left: 20px;
        padding-right: 40px;
        font-size: 12px;
        font-size: 1.2rem
    }
}

@media (max-width: 767px) {
    #footer .block02 .grid .right .ft-button a {
        padding: 11px 32px 11px 19px
    }
}

@media only screen and (max-width: 374px) {
    #footer .block02 .grid .right .ft-button a {
        font-size: 12px;
        font-size: 1.2rem
    }
}

#footer .block02 .grid .right .ft-button a:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border: 2px solid #ff8c39;
    transition: 0.5s;
    border-radius: 5px;
    opacity: 0
}

#footer .block02 .grid .right .ft-button a:after {
    content: "";
    position: absolute;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxNCIgaGVpZ2h0PSIxNCIgdmlld0JveD0iMCAwIDE0IDE0Ij4KICA8cGF0aCBpZD0iYXJ3IiBkPSJNNywwLDUuNzUzLDEuMjI1bDQuOSw0LjlIMHYxLjc1SDEwLjY1M2wtNC45LDQuOUw3LDE0bDctN1oiIHRyYW5zZm9ybT0idHJhbnNsYXRlKDApIiBmaWxsPSIjZmY4YzM5Ii8+Cjwvc3ZnPgo=);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 14px;
    height: 14px;
    top: 50%;
    right: 30px;
    transform: translateY(-50%)
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    #footer .block02 .grid .right .ft-button a:after {
        right: 20px
    }
}

@media (max-width: 767px) {
    #footer .block02 .grid .right .ft-button a:after {
        right: 14px
    }
}

@media only screen and (min-width: 1025px) {
    #footer .block02 .grid .right .ft-button a:hover {
        background-color: rgba(255, 140, 57, 0.2);
        transition: 0.5s
    }

    #footer .block02 .grid .right .ft-button a:hover:before {
        opacity: 1;
        transition: 0.5s
    }
}

#footer .block02 .grid .right .ft-button span {
    color: #ff8c39;
    font-size: 18px;
    font-size: 1.8rem
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    #footer .block02 .grid .right .ft-button span {
        font-size: 14px;
        font-size: 1.4rem
    }
}

@media only screen and (max-width: 374px) {
    #footer .block02 .grid .right .ft-button span {
        font-size: 16px;
        font-size: 1.6rem
    }
}

#footer .block02 .grid .right .box-logo {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    position: relative;
    z-index: 1;
    margin-top: 13px
}

@media (max-width: 767px) {
    #footer .block02 .grid .right .box-logo {
        -webkit-justify-content: space-between;
        -moz-justify-content: space-between;
        -ms-justify-content: space-between;
        -o-justify-content: space-between;
        justify-content: space-between;
        margin-top: 9px
    }
}

#footer .block02 .grid .right .logo01 {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    background-color: #318dca;
    border-radius: 5px;
    padding: 0 5px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.22222em;
    letter-spacing: .02em;
    font-weight: bold;
    color: #fff;
    transition: 0.5s;
    opacity: 1;
    margin-bottom: 1px;
    font-family: "vdl-v7marugothic", sans-serif;
    cursor: pointer
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    #footer .block02 .grid .right .logo01 {
        font-size: 15px;
        font-size: 1.5rem
    }
}

@media only screen and (min-width: 1025px) {
    #footer .block02 .grid .right .logo01:hover {
        background-color: #ff8c39;
        transition: 0.5s
    }
}

@media (min-width: 768px) {
    #footer .block02 .grid .right .logo01 {
        width: 43%;
        margin-right: 6.5%
    }
}

@media (max-width: 767px) {
    #footer .block02 .grid .right .logo01 {
        width: 100%;
        margin-bottom: 21px;
        padding-top: 14px;
        padding-bottom: 18px
    }
}

#footer .block02 .grid .right .logo01 i {
    margin-right: 12px
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    #footer .block02 .grid .right .logo01 i {
        margin-right: 8px;
        width: 30px;
        height: 30px
    }
}

@media (max-width: 767px) {
    #footer .block02 .grid .right .logo01 i {
        position: relative;
        top: 2px;
        margin-right: 12px;
        margin-left: -9px
    }
}

@media (max-width: 767px) {

    #footer .block02 .grid .right .logo02 img,
    #footer .block02 .grid .right .logo03 img {
        width: 100%
    }
}

#footer .block02 .grid .right .logo02 {
    width: 27.524%;
    margin-right: 1%
}

@media (max-width: 767px) {
    #footer .block02 .grid .right .logo02 {
        width: 52.56%
    }
}

#footer .block02 .grid .right .logo03 {
    width: 21.79%
}

@media (max-width: 767px) {
    #footer .block02 .grid .right .logo03 {
        width: 41.3%
    }
}

#footer .block02 .grid .right .deco {
    position: absolute;
    right: 0;
    bottom: 0
}

#footer .block02 .grid .right .ft_deco {
    position: absolute;
    right: -100px;
    bottom: -90px
}

@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #footer .block02 .grid .right .ft_deco {
        right: 0
    }
}

@media (max-width: 767px) {
    #footer .block02 .grid .right .ft_deco {
        width: 100px;
        right: -6px;
        bottom: -94px
    }
}

#footer .copyright {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 3.84615em;
    letter-spacing: .06em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    color: #fff;
    text-align: center
}

@media (min-width: 768px) {
    #footer .copyright {
        padding-top: 3px
    }
}

@media (max-width: 767px) {
    #footer .copyright {
        margin-top: 10px;
        padding-bottom: 55px;
        padding-left: 40px;
        font-size: 13px;
        font-size: 1.3rem;
        line-height: 1.69231em;
        color: #318dca;
        text-align: left
    }
}

.header {
    position: absolute;
    z-index: 99;
    top: 0;
    left: 0;
    right: 0
}

@media (min-width: 768px) {
    .header {
        height: 180px;
        padding: 26px 30px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1179px) {
    .header {
        padding-left: 10px;
        padding-right: 10px
    }
}

@media (max-width: 767px) {
    .header {
        position: absolute
    }
}

.header .txth1 {
    font-size: 12px;
    font-size: 1.2rem;
    line-height: 1.66667em;
    letter-spacing: .04em;
    font-family: "vdl-v7marugothic", sans-serif
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .header .txth1 {
        font-size: 10px;
        font-size: 1rem
    }
}

@media (max-width: 767px) {
    .header .txth1 {
        display: none
    }
}

.header .inHeader {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between
}

@media (min-width: 768px) {
    .header .left {
        width: 45%
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .header .left {
        width: 35%
    }
}

@media (min-width: 768px) {
    .header .logo {
        margin-top: 26px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .header .logo {
        width: 24.141vw
    }
}

@media (max-width: 767px) {
    .header .logo {
        position: absolute;
        top: 30px;
        left: 20px;
        z-index: 100
    }
}

@media (max-width: 767px) {
    .header .logo img {
        opacity: 0
    }
}

@media (max-width: 767px) {

    .header .logo:before,
    .header .logo:after {
        content: "";
        position: absolute;
        background-repeat: no-repeat;
        background-position: center;
        background-size: cover;
        top: 0;
        left: 0;
        right: 0;
        bottom: 0;
        transition: 0.5s;
        pointer-events: none;
        background-size: 110px
    }
}

.header .logo:before {
    background-image: url("../img/common/logo_sp_blue.svg");
    opacity: 1
}

.header .logo:after {
    background-image: url("../img/common/logo_sp_white.svg");
    opacity: 0
}

.header .logo02 {
    position: relative;
    width: 110px;
    top: 0;
    left: -5px
}

@media (min-width: 768px) {
    .header .logo02 {
        display: none
    }
}

.header .logo a {
    display: inline-block
}

@media (max-width: 767px) {
    .header .logo a {
        width: 110px;
        height: 84px
    }
}

@media (min-width: 768px) {
    .header .right {
        width: 50.82%;
        max-width: 620px;
        margin-left: auto
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .header .right {
        width: 62%
    }
}

.header .h-button {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between
}

@media (min-width: 768px) {
    .header .h-button {
        padding-top: 4px
    }
}

@media (max-width: 767px) {
    .header .h-button {
        margin-top: 30px
    }
}

.header .btn-link {
    position: relative;
    background-color: #fff;
    transition: 0.5s;
    opacity: 1;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.33333em;
    letter-spacing: .02em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    cursor: pointer
}

.header .btn-link:before {
    content: "";
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    border-radius: 10px;
    border: 2px solid #318dca;
    opacity: 0;
    transition: 0.5s
}

@media (min-width: 768px) {
    .header .btn-link {
        display: -webkit-box;
        display: -moz-box;
        display: -ms-flexbox;
        display: -webkit-flex;
        display: flex;
        -webkit-flex-wrap: wrap;
        -moz-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        -o-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-align-items: center;
        -moz-align-items: center;
        -ms-align-items: center;
        -o-align-items: center;
        align-items: center;
        -webkit-justify-content: center;
        -moz-justify-content: center;
        -ms-justify-content: center;
        -o-justify-content: center;
        justify-content: center;
        width: calc(33.333% - 5px);
        height: 70px;
        border-radius: 10px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .header .btn-link {
        font-size: 13px;
        font-size: 1.3rem
    }
}

@media only screen and (min-width: 1025px) {
    .header .btn-link:hover {
        background-color: rgba(49, 141, 202, 0.1);
        transition: 0.5s
    }

    .header .btn-link:hover:before {
        opacity: 1;
        transition: 0.5s
    }
}

@media (max-width: 767px) {
    .header .btn-link {
        width: calc(50% - 7px);
        border-radius: 5px;
        margin-bottom: 10px;
        padding-top: 35px;
        padding-bottom: 35px;
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.44444em;
        letter-spacing: .02em
    }
}

@media (max-width: 767px) {
    .header .btn-link:first-of-type {
        width: 100%
    }
}

.header .btn-link .link {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    position: relative
}

@media (min-width: 768px) {
    .header .btn-link .link {
        padding: 15px 10px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .header .btn-link .link {
        padding-left: 5px;
        padding-right: 5px
    }
}

.header .btn-link .link .ico {
    margin-right: 15px
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .header .btn-link .link .ico {
        margin-right: 8px
    }
}

@media (max-width: 767px) {
    .header .btn-link .link .ico {
        display: block
    }
}

.header .btn-link .link span {
    color: #318dca
}

.header .btn-link .link div {
    position: relative;
    display: inline-block
}

.header .btn-link .link01 {
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.69231em;
    letter-spacing: .02em;
    font-weight: bold;
    text-align: center
}

@media (min-width: 768px) {
    .header .btn-link .link01 {
        padding: 10px 10px 15px 10px
    }
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {
    .header .btn-link .link01 {
        padding: 15px 5px;
        font-size: 11px;
        font-size: 1.1rem
    }
}

@media (max-width: 767px) {
    .header .btn-link .link01 {
        font-size: 18px;
        font-size: 1.8rem;
        line-height: 1.44444em;
        letter-spacing: 0em
    }
}

@media (min-width: 768px) {
    .header .btn-link .link01 .ico {
        position: relative;
        top: -3px;
        left: 3px
    }
}

@media (max-width: 767px) {
    .header .btn-link .link01 .ico {
        display: block;
        margin-bottom: 11px
    }
}

@media (max-width: 767px) {
    .header .btn-link .link01 .ico img {
        width: 26px;
        height: 26px
    }
}

.header .btn-link .link01 strong {
    display: inline-block;
    margin-top: 3px;
    padding-left: 6px;
    font-size: 18px;
    font-size: 1.8rem;
    line-height: 1.22222em;
    letter-spacing: .02em;
    font-weight: bold
}

@media only screen and (min-width: 768px) and (max-width: 1180px) {
    .header .btn-link .link01 strong {
        font-size: 16px;
        font-size: 1.6rem
    }
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .header .btn-link .link01 strong {
        font-size: 15px;
        font-size: 1.5rem
    }
}

.header .btn-link .tel {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap
}

@media (min-width: 768px) {
    .header .btn-link .tel {
        -webkit-justify-content: center;
        -moz-justify-content: center;
        -ms-justify-content: center;
        -o-justify-content: center;
        justify-content: center
    }
}

@media (max-width: 767px) {
    .header .btn-link .tel {
        -webkit-flex-direction: column-reverse;
        -moz-flex-direction: column-reverse;
        -ms-flex-direction: column-reverse;
        -o-flex-direction: column-reverse;
        flex-direction: column-reverse
    }
}

@media (max-width: 767px) {
    .header .btn-link01 .link .ico img {
        width: 34px;
        height: 28px
    }
}

@media (max-width: 767px) {

    .header .btn-link02,
    .header .btn-link03 {
        padding-top: 20px;
        padding-bottom: 18px;
        text-align: center
    }
}

@media (max-width: 767px) {

    .header .btn-link02 .link .ico,
    .header .btn-link03 .link .ico {
        width: 100%;
        margin-right: 0;
        margin-bottom: 11px
    }
}

@media (max-width: 767px) {
    .header .btn-link02 .link .ico img {
        width: 24px;
        height: 26px
    }
}

@media (max-width: 767px) {
    .header .btn-link03 .link .ico img {
        width: 26px;
        height: 26px
    }
}

.header .gNavi-pc {
    margin-top: 15px;
    margin-right: 9px
}

@media (max-width: 767px) {
    .header .gNavi-pc {
        display: none
    }
}

.header .gNavi-pc .lst {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: flex-end;
    -moz-justify-content: flex-end;
    -ms-justify-content: flex-end;
    -o-justify-content: flex-end;
    justify-content: flex-end
}

.header .gNavi-pc .lst>li {
    margin-left: 24px
}

.header .gNavi-pc .lst>li>a {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.6875em;
    letter-spacing: 0em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    color: #4b4b4d;
    opacity: 1
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .header .gNavi-pc .lst>li>a {
        font-size: 14px;
        font-size: 1.4rem
    }
}

.header .gNavi-pc .lst>li.hasSub>a {
    position: relative;
    padding-right: 20px;
    padding-bottom: 10px;
    cursor: pointer
}

.header .gNavi-pc .lst>li.hasSub>a:after {
    content: "";
    position: absolute;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSIxMCIgaGVpZ2h0PSI4IiB2aWV3Qm94PSIwIDAgMTAgOCI+CiAgPHBhdGggaWQ9InRyaSIgZD0iTTQuMTUyLDEuMzU3YTEsMSwwLDAsMSwxLjcsMGwzLjIsNS4xMTNBMSwxLDAsMCwxLDguMiw4SDEuOEExLDEsMCwwLDEsLjk1Niw2LjQ3WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoMTAgOCkgcm90YXRlKDE4MCkiIGZpbGw9IiMzMThkY2EiLz4KPC9zdmc+Cg==);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 10px;
    height: 8px;
    top: 50%;
    right: 0;
    transform: translateY(-50%);
    margin-top: -4px
}

.header .gNavi-pc .lst>li.hasSub>a.is-active+.subMenu {
    opacity: 1;
    transition: opacity 0.5s;
    pointer-events: inherit
}

@media (max-width: 767px) {
    .header .layerInner {
        overflow: scroll;
        height: 100vh;
        padding: 30px 25px 120px;
        -ms-overflow-style: none;
        scrollbar-width: none
    }

    .header .layerInner::-webkit-scrollbar {
        display: none
    }
}

@media only screen and (max-width: 374px) {
    .header .layerInner {
        padding-left: 10px;
        padding-right: 10px
    }
}

.header .gNavi-sp {
    margin-top: 16px;
    padding: 0 20px;
    margin-bottom: 33px
}

@media (min-width: 768px) {
    .header .gNavi-sp {
        display: none
    }
}

.header .gNavi-sp a {
    display: block;
    position: relative;
    padding-left: 19px;
    border-bottom: 1px dashed #fff;
    padding-bottom: 8px;
    padding-top: 10px;
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.6875em;
    letter-spacing: 0em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    color: #fff
}

.header .gNavi-sp a:before {
    content: "";
    position: absolute;
    background-image: url(data:image/svg+xml;base64,PHN2ZyB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHdpZHRoPSI4IiBoZWlnaHQ9IjEwIiB2aWV3Qm94PSIwIDAgOCAxMCI+CiAgPHBhdGggaWQ9InRyaSIgZD0iTTQuMTUyLDEuMzU3YTEsMSwwLDAsMSwxLjcsMGwzLjIsNS4xMTNBMSwxLDAsMCwxLDguMiw4SDEuOEExLDEsMCwwLDEsLjk1Niw2LjQ3WiIgdHJhbnNmb3JtPSJ0cmFuc2xhdGUoOCkgcm90YXRlKDkwKSIgZmlsbD0iI2ZmZiIvPgo8L3N2Zz4K);
    background-repeat: no-repeat;
    background-position: center;
    background-size: cover;
    width: 8px;
    height: 10px;
    top: 18px;
    left: 0
}

.header .subMenu {
    position: absolute;
    width: 620px;
    right: 30px;
    padding-top: 10px;
    opacity: 0;
    transition: opacity 0.5s;
    pointer-events: none;
    user-select: none
}

.header .subMenu:hover {
    cursor: default;
    opacity: 1;
    transition: opacity 0.5s;
    pointer-events: inherit
}

.header .subMenu .box {
    position: relative;
    background-color: #318dca;
    border-radius: 10px;
    opacity: 1;
    color: #fff;
    padding: 22px 80px 40px 120px;
    min-height: 160px
}

.header .subMenu .deco01,
.header .subMenu .deco02 {
    position: absolute;
    pointer-events: none
}

.header .subMenu .deco01 {
    top: -30px;
    left: 30px
}

.header .subMenu .deco02 {
    top: -5px;
    left: -62px
}

.header .subMenu ul {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-justify-content: space-between;
    -moz-justify-content: space-between;
    -ms-justify-content: space-between;
    -o-justify-content: space-between;
    justify-content: space-between
}

.header .subMenu ul li {
    width: calc(50% - 30px);
    margin: 0 15px
}

.header .subMenu ul a {
    display: block;
    border-bottom: 1px dashed #fff;
    padding-top: 13px;
    padding-bottom: 9px;
    color: #fff;
    font-size: 15px;
    font-size: 1.5rem;
    line-height: 1.73333em;
    letter-spacing: 0em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif
}

.header .subMenu .sttl {
    position: absolute;
    top: 50%;
    right: 20px;
    color: #fff;
    font-size: 20px;
    font-size: 2rem;
    line-height: 3em;
    letter-spacing: .15em;
    font-weight: 600;
    font-family: "pauza", sans-serif;
    transform: translateY(-50%)
}

@media (min-width: 768px) {
    .header .subMenu .sttl01 {
        margin-top: 10px
    }
}

.header .subMenu .sttl span {
    display: inline-block;
    position: absolute;
    top: 0;
    right: 0;
    white-space: nowrap;
    transform: rotate(90deg);
    transform-origin: center right
}

@media (max-width: 767px) {
    .layerMenu {
        position: fixed;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        z-index: 99;
        background-color: #318dca;
        opacity: 0;
        transition: 0.5s;
        pointer-events: none
    }
}

@media (min-width: 768px) {
    .layerMenu .c-calendar {
        display: none
    }
}

@media (max-width: 767px) {
    .layerMenu .c-calendar {
        padding-left: 14px;
        padding-right: 13px
    }
}

@media (max-width: 767px) {
    .layerMenu .c-calendar-txt {
        margin-left: 14px
    }
}

.layerOn .layerMenu {
    opacity: 1;
    transition: 0.5s;
    pointer-events: inherit
}

.layerOn .left .logo {
    opacity: 0;
    pointer-events: none
}

.layerOn .right .logo {
    opacity: 1
}

.layerOn .logo:before,
.layerOn .logo:after {
    transition: 0.5s
}

.layerOn .logo:before {
    opacity: 0
}

.layerOn .logo:after {
    opacity: 1
}

@media (max-width: 767px) {
    .layerOn .hamber {
        position: fixed
    }
}

@media (max-width: 767px) {
    .layerOn .sp-button {
        display: none
    }
}

.layerOn .fixed-header {
    background-color: transparent;
    transition: 0s
}

.layerOn .fixed-header .hamberger01 {
    top: 30px
}

html:not(.is-ipad) .header .gNavi-pc .lst>li.hasSub>a:hover+.subMenu {
    opacity: 1;
    transition: opacity 0.5s;
    pointer-events: inherit
}

.hamber {
    position: absolute;
    top: 30px;
    right: 25px;
    z-index: 1000;
    width: 60px;
    height: 70px;
    padding: 26px 8px 0 8px;
    line-height: 1;
    font-size: 0;
    text-align: center;
    cursor: pointer;
    display: none;
    border-radius: 5px;
    background-color: #318dca;
    transition: 0.5s
}

.hamber span {
    display: inline-block;
    width: 23px;
    height: 3px;
    margin-bottom: 5px;
    border-radius: 10px;
    background-color: #fff;
    transform: rotate(0) translateY(0) translateX(0);
    transition: background 0.5s, transform 0.5s
}

.hamber.active {
    padding-top: 24px;
    background-color: #fff;
    transition: 0.5s
}

.hamber.active span {
    margin-bottom: 7px;
    background-color: #ff8c39;
    transition: background 0.5s, transform 0.5s
}

.hamber.active .ham {
    transform: rotate(45deg) translateY(7px) translateX(7px)
}

.hamber.active .ber {
    transform: rotate(-45deg)
}

.hamber.active .ger {
    display: none
}

@media only screen and (max-width: 767px) {
    .hamber {
        display: block
    }
}

.sp-button {
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    position: absolute;
    top: 30px;
    right: 90px
}

@media (min-width: 768px) {
    .sp-button {
        display: none
    }
}

.sp-button .button {
    display: block;
    background-color: #fff;
    width: 60px;
    height: 70px;
    border-radius: 5px;
    margin-left: 5px;
    padding-top: 10px;
    font-size: 13px;
    font-size: 1.3rem;
    line-height: 1.76923em;
    letter-spacing: 0em;
    font-weight: bold;
    font-family: "vdl-v7marugothic", sans-serif;
    text-align: center;
    color: #318dca
}

.sp-button .button i {
    display: block;
    margin-bottom: 7px
}

.fixed-header {
    position: fixed;
    opacity: 0;
    pointer-events: none;
    transition: 1s;
    background-color: #fff;
    border-bottom-left-radius: 15px;
    border-bottom-right-radius: 15px;
    padding: 13px 31px 13px 39px;
    height: 116px
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .fixed-header {
        padding: 13px 13px 13px 13px
    }
}

@media (max-width: 767px) {
    .fixed-header {
        height: 100px
    }
}

@media (max-width: 767px) {

    .fixed-header .hamber,
    .fixed-header .sp-button {
        position: fixed
    }
}

@media (max-width: 767px) {
    .fixed-header .hamber {
        top: 15px;
        right: 25px
    }
}

.fixed-header .sp-button {
    top: 15px
}

@media (max-width: 767px) {
    .fixed-header .sp-button .button {
        border: 2px solid rgba(49, 141, 202, 0.2)
    }
}

.fixed-header .txth1 {
    display: none
}

.fixed-header .logo {
    width: 226px
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .fixed-header .logo {
        width: 180px
    }
}

.fixed-header .left {
    width: 300px
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .fixed-header .left {
        width: 200px
    }
}

@media (max-width: 767px) {
    .fixed-header .left .logo {
        width: 94px;
        height: 70px;
        top: 15px
    }
}

@media (max-width: 767px) {
    .fixed-header .left .logo a {
        width: 94px;
        height: 70px
    }
}

.fixed-header .left .logo:before,
.fixed-header .left .logo:after {
    display: none
}

@media (max-width: 767px) {
    .fixed-header .left .logo img {
        opacity: 1
    }
}

.fixed-header .right {
    width: calc(100% - 300px);
    padding-top: 4px
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .fixed-header .right {
        width: calc(100% - 230px)
    }
}

@media (max-width: 767px) {
    .fixed-header .right {
        display: none
    }
}

.fixed-header .btn-link {
    height: 40px;
    border: 2px solid rgba(49, 141, 202, 0.2);
    padding: 0 10px
}

@media only screen and (min-width: 768px) and (max-width: 1023px) {
    .fixed-header .btn-link {
        font-size: 12px;
        font-size: 1.2rem
    }
}

.fixed-header .btn-link .link,
.fixed-header .btn-link .link01 {
    padding: 0
}

.fixHeader .fixed-header {
    opacity: 1;
    pointer-events: inherit;
    transition: 1s
}

.wp-pagenavi {
    text-align: center;
    font-size: 0;
    letter-spacing: 0;
    position: relative
}

.wp-pagenavi span,
.wp-pagenavi a {
    display: inline-block;
    vertical-align: top;
    color: #318dca;
    background: #fff;
    text-align: center;
    width: 50px;
    height: 50px;
    margin: 0 5px 10px;
    padding-left: 2px;
    border-radius: 100%;
    font-family: "vdl-v7marugothic", sans-serif;
    font-size: 20px;
    font-size: 2rem;
    letter-spacing: .06em;
    font-weight: bold;
    line-height: 48px
}

.wp-pagenavi span.current {
    color: #fff;
    background: #318dca
}

.wp-pagenavi .pages,
.wp-pagenavi .last,
.wp-pagenavi .first,
.wp-pagenavi .extend {
    display: none
}

.wp-pagenavi .previouspostslink,
.wp-pagenavi .nextpostslink {
    position: relative;
    width: 33px;
    height: 33px;
    font-size: 0;
    letter-spacing: 0;
    top: 9px
}

.wp-pagenavi .previouspostslink:after,
.wp-pagenavi .nextpostslink:after {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    left: 1px;
    right: 0;
    width: 100%;
    height: 100%;
    margin: auto;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="11" height="12" viewBox="0 0 11 12"><g id="Group_1316" data-name="Group 1316" transform="translate(-656 -2471)"><path id="tri" d="M5.293.707a1,1,0,0,1,1.414,0l3.586,3.586A1,1,0,0,1,9.586,6H2.414a1,1,0,0,1-.707-1.707Z" transform="translate(661 2483) rotate(-90)" fill="%23318dca"/><path id="tri-2" data-name="tri" d="M5.293.707a1,1,0,0,1,1.414,0l3.586,3.586A1,1,0,0,1,9.586,6H2.414a1,1,0,0,1-.707-1.707Z" transform="translate(656 2483) rotate(-90)" fill="%23318dca"/></g></svg>') no-repeat center center;
    background-size: 11px 12px;
    z-index: 3
}

.wp-pagenavi .previouspostslink {
    left: 0;
    margin-right: 15px
}

.wp-pagenavi .previouspostslink:after {
    right: auto;
    left: -1px
}

.wp-pagenavi .nextpostslink {
    right: 0;
    margin-left: 15px
}

.wp-pagenavi .nextpostslink:after {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1)
}

.mod-pagination {
    text-align: center;
    min-height: 55px
}

@media (max-width: 767px) {
    .mod-pagination {
        min-height: 60px
    }
}

.mod-pagination .post-pager {
    position: relative;
    max-width: 376px;
    margin: 0 auto;
    padding: 0 63px
}

@media (max-width: 767px) {
    .mod-pagination .post-pager {
        max-width: 279px
    }
}

.mod-pagination .pager-index a {
    color: #fff;
    background: #318dca;
    display: -webkit-box;
    display: -moz-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    -o-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    margin: 0 auto;
    border-radius: 5px;
    font-family: "vdl-v7marugothic", sans-serif;
    font-size: 17px;
    font-size: 1.7rem;
    line-height: 1.76471em;
    letter-spacing: .04em;
    font-weight: 700
}

@media (min-width: 768px) {
    .mod-pagination .pager-index a {
        min-height: 55px;
        max-width: 250px
    }
}

@media (max-width: 767px) {
    .mod-pagination .pager-index a {
        font-size: 16px;
        font-size: 1.6rem;
        line-height: 1.5em;
        max-width: 153px;
        min-height: 60px
    }
}

.mod-pagination .pager-next,
.mod-pagination .pager-prev {
    width: 33px;
    height: 33px;
    font-size: 0;
    line-height: 1;
    letter-spacing: 0;
    position: absolute;
    top: 50%;
    background: #fff;
    border-radius: 100%;
    overflow: hidden;
    margin-top: -16px
}

.mod-pagination .pager-next a,
.mod-pagination .pager-prev a {
    position: absolute;
    content: "";
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    height: 100%;
    margin: auto;
    background: url('data:image/svg+xml,<svg xmlns="http://www.w3.org/2000/svg" width="6" height="12" viewBox="0 0 6 12"><path id="tri" d="M5.293.707a1,1,0,0,1,1.414,0l3.586,3.586A1,1,0,0,1,9.586,6H2.414a1,1,0,0,1-.707-1.707Z" transform="translate(6) rotate(90)" fill="%23318dca"/></svg>') no-repeat center center;
    background-size: auto 12px;
    margin-left: 1px
}

.mod-pagination .pager-next {
    left: 0
}

.mod-pagination .pager-next a {
    -webkit-transform: scaleX(-1);
    transform: scaleX(-1);
    margin-left: -1px
}

.mod-pagination .pager-prev {
    right: 0
}

/*# sourceMappingURL=maps/styles.min.css.map */