@charset "UTF-8";
/* ==========================================================================
* 
*  Foundation
*  ブラウザのデフォルトスタイルの初期化や基本的なスタイル。
* 
*  ========================================================================*/

/* -----------------------------------------------------------------
*  reset
*  ---------------------------------------------------------------*/

@import url("https://fonts.googleapis.com/css?family=Oswald:200,400,600,700");
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 {
    margin: 0;
    padding: 0;
    border: 0;
    font-size: 100%;
    vertical-align: baseline;
    outline: none;
}

main {
    display: block;
}

img {
    background-color: transparent;
    border: 0;
    vertical-align: bottom;
    max-width: 100%;
}

ol,
ul {
    list-style: none;
}

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

input,
button,
textarea,
select {
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
}

input[type=radio],
input[type=checkbox] {
    display: none;
}

button,
input,
select,
textarea {
    font-family: inherit;
    font-size: 100%;
}

/* -----------------------------------------------------------------
*  base
*  ---------------------------------------------------------------*/

@font-face {
    font-family: 'NotoSansCJKjp';
    font-style: normal;
    font-weight: 100;
    src: url("../font/NotoSansCJKjp-Thin_subset.eot");
    /* IE9 Compat Modes */
    src: url("../font/NotoSansCJKjp-Thin_subset.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Thin_subset.woff") format("woff"), url("../font/NotoSansCJKjp-Thin_subset.ttf") format("truetype");
    /* Safari, Android, iOS */
}

@font-face {
    font-family: 'NotoSansCJKjp';
    font-style: normal;
    font-weight: 200;
    src: url("../font/NotoSansCJKjp-Light_subset.eot");
    /* IE9 Compat Modes */
    src: url("../font/NotoSansCJKjp-Light_subset.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Light_subset.woff") format("woff"), url("../font/NotoSansCJKjp-Light_subset.ttf") format("truetype");
    /* Safari, Android, iOS */
}

@font-face {
    font-family: 'NotoSansCJKjp';
    font-style: normal;
    font-weight: 300;
    src: url("../font/NotoSansCJKjp-DemiLight_subset.eot");
    /* IE9 Compat Modes */
    src: url("../font/NotoSansCJKjp-DemiLight_subset.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-DemiLight_subset.woff") format("woff"), url("../font/NotoSansCJKjp-DemiLight_subset.ttf") format("truetype");
    /* Safari, Android, iOS */
}

@font-face {
    font-family: 'NotoSansCJKjp';
    font-style: normal;
    font-weight: 400;
    src: url("../font/NotoSansCJKjp-Regular_subset.eot");
    /* IE9 Compat Modes */
    src: url("../font/NotoSansCJKjp-Regular_subset.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Regular_subset.woff") format("woff"), url("../font/NotoSansCJKjp-Regular_subset.ttf") format("truetype");
    /* Safari, Android, iOS */
}

@font-face {
    font-family: 'NotoSansCJKjp';
    font-style: normal;
    font-weight: 500;
    src: url("../font/NotoSansCJKjp-Medium_subset.eot");
    /* IE9 Compat Modes */
    src: url("../font/NotoSansCJKjp-Medium_subset.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Medium_subset.woff") format("woff"), url("../font/NotoSansCJKjp-Medium_subset.ttf") format("truetype");
    /* Safari, Android, iOS */
}

@font-face {
    font-family: 'NotoSansCJKjp';
    font-style: normal;
    font-weight: 600;
    src: url("../font/NotoSansCJKjp-Bold_subset.eot");
    /* IE9 Compat Modes */
    src: url("../font/NotoSansCJKjp-Bold_subset.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Bold_subset.woff") format("woff"), url("../font/NotoSansCJKjp-Bold_subset.ttf") format("truetype");
    /* Safari, Android, iOS */
}

@font-face {
    font-family: 'NotoSansCJKjp';
    font-style: normal;
    font-weight: 700;
    src: url("../font/NotoSansCJKjp-Black_subset.eot");
    /* IE9 Compat Modes */
    src: url("../font/NotoSansCJKjp-Black_subset.eot?#iefix") format("embedded-opentype"), url("../font/NotoSansCJKjp-Black_subset.woff") format("woff"), url("../font/NotoSansCJKjp-Black_subset.ttf") format("truetype");
    /* Safari, Android, iOS */
}

*,
*:before,
*:after {
    box-sizing: border-box;
}

html,
body {
    width: 100%;
}

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

body {
    position: relative;
    font-family: "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック体", YuGothic, "NotoSansCJKjp", 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', メイリオ, Meiryo, 'ＭＳ Ｐゴシック', 'MS PGothic', sans-serif;
    font-weight: 400;
    font-size: 1.6em;
    line-height: 1.875;
    letter-spacing: 0.08em;
    min-width: 1280px;
}

@media only screen and (max-width: 767px) {
    body {
        min-width: 100%;
    }
}

body.is-disabledScroll {
    overflow: hidden;
}

a {
    text-decoration: none;
}

a:hover {
    text-decoration: none;
}

sup {
    font-size: 50%;
    vertical-align: super;
}

input::-webkit-input-placeholder,
textarea::-webkit-input-placeholder {
    color: #A2A2A2;
}

input::-moz-placeholder,
textarea::-moz-placeholder {
    color: #A2A2A2;
}

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: #A2A2A2;
}

input::placeholder,
textarea::placeholder {
    color: #A2A2A2;
}

/* IE */

input:-ms-input-placeholder,
textarea:-ms-input-placeholder {
    color: #A2A2A2;
}

/* Edge */

input::-ms-input-placeholder,
textarea::-ms-input-placeholder {
    color: #A2A2A2;
}

.content-editer .aligncenter {
    margin-left: auto;
    margin-right: auto;
    display: block;
}

.content-editer img {
    height: auto;
}

/* ==========================================================================
* 
*  Vendor
*  外部提供CSS
* 
*  ========================================================================*/

/* ==========================================================================
* 
*  Layout
*  ヘッダー、フッター、サイドバー、メインコンテンツエリアなど、サイト全体のブロックに関するもの。
* 
*  ========================================================================*/

/* -----------------------------------------------------------------
*  container
*  ---------------------------------------------------------------*/

.l-container {
    overflow: hidden;
    padding-top: 112px;
}

@media only screen and (max-width: 767px) {
    .l-container {
        padding-top: 56px;
    }
}

/* -----------------------------------------------------------------
*  header
*  ---------------------------------------------------------------*/

.l-header {
    position: relative;
    z-index: 5000;
}

.l-header__lgContents {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
}

.l-header__lgContents__holder {
    position: relative;
    width: 100%;
    height: 112px;
    background-color: #fff;
    border-top: 2px solid #97C04A;
    min-width: 1280px;
}

.l-header__lgContents__holder__logo {
    display: inline-block;
    width: 256px;
    position: absolute;
    top: 44px;
    left: 50px;
    font-size: 0;
}

.l-header__lgContents__holder__gNav {
    position: absolute;
    right: 40px;
    top: 52px;
}

.l-header__lgContents__holder__gNav__list {
    font-size: 0;
}

.l-header__lgContents__holder__gNav__list__item {
    display: inline-block;
    margin-left: 40px;
}

.l-header__lgContents__holder__gNav__list__item:first-child {
    margin-left: 0;
}

.l-header__lgContents__holder__gNav__list__item > a {
    display: block;
    position: relative;
    font-size: 16px;
    font-size: 1.6rem;
    color: #000;
    transition: 0.2s all cubic-bezier(0.39, 0.575, 0.565, 1);
    padding-bottom: 8px;
}

.l-header__lgContents__holder__gNav__list__item > a:before,
.l-header__lgContents__holder__gNav__list__item > a:after {
    content: "";
    display: block;
    position: absolute;
    bottom: 0;
    width: 100%;
    height: 2px;
    background-color: #707070;
    transition: inherit;
    width: 0;
}

.l-header__lgContents__holder__gNav__list__item > a:before {
    left: 50%;
}

.l-header__lgContents__holder__gNav__list__item > a:after {
    right: 50%;
}

.l-header__lgContents__holder__gNav__list__item > a:hover:before,
.l-header__lgContents__holder__gNav__list__item > a:hover:after {
    width: 50%;
}

.l-header__lgContents__holder__gNav__list__item.is-current > a:before,
.l-header__lgContents__holder__gNav__list__item.is-current > a:after {
    width: 50%;
}

.l-header__lgContents__holder__subNav {
    position: absolute;
    top: 0;
    right: 40px;
    background-color: #97C04A;
    padding: 5px 10px;
}

.l-header__lgContents__holder__subNav__list {
    margin-left: -15px;
    font-size: 0;
}

.l-header__lgContents__holder__subNav__list__item {
    display: inline-block;
    margin-left: 15px;
}

.l-header__lgContents__holder__subNav__list__item__anchor {
    color: #fff;
    font-size: 12px;
    font-size: 1.2rem;
}

.l-header__lgContents__holder__subNav__list__item__anchor:hover {
    color: #707070;
}

.l-header__xsContents {
    position: fixed;
    left: 0;
    top: 0;
    width: 100%;
}

.l-header__xsContents__holder {
    position: relative;
    width: 100%;
    height: 56px;
    background-color: #fff;
    border-top: 1px solid #97C04A;
}

.l-header__xsContents__holder__logo {
    position: absolute;
    top: 20px;
    left: 4%;
    width: 183px;
    display: inline-block;
    font-size: 0;
}

.l-header__xsContents__holder__menuBtn {
    position: absolute;
    top: 0;
    right: 0;
    display: inline-block;
    width: 50px;
    height: 55px;
    /* IE6-9 */
}

.l-header__xsContents__holder__menuBtn__icon {
    display: inline-block;
    font-size: 0;
    position: absolute;
    left: 50%;
    margin-left: -15px;
    top: 10px;
    width: 30px;
    height: 18px;
}

.l-header__xsContents__holder__menuBtn__icon > span {
    width: 100%;
    height: 2px;
    background-color: #97C04A;
    position: absolute;
}

.l-header__xsContents__holder__menuBtn__icon > span:nth-child(1) {
    top: 0;
    left: 0;
}

.l-header__xsContents__holder__menuBtn__icon > span:nth-child(2) {
    top: 8px;
    left: 0;
}

.l-header__xsContents__holder__menuBtn__icon > span:nth-child(3) {
    bottom: 0;
    left: 0;
}

.l-header__xsContents__holder__menuBtn__text {
    position: absolute;
    left: 0;
    bottom: 8px;
    font-size: 9px;
    font-size: 0.9rem;
    display: block;
    width: 100%;
    text-align: center;
    color: #97C04A;
    line-height: 1;
}

.l-header__xsContents__holder__menuBtn.is-clicked .l-header__xsContents__holder__menuBtn__icon > span:nth-child(1) {
    transform: rotate(45deg);
    top: 8px;
}

.l-header__xsContents__holder__menuBtn.is-clicked .l-header__xsContents__holder__menuBtn__icon > span:nth-child(2) {
    display: none;
}

.l-header__xsContents__holder__menuBtn.is-clicked .l-header__xsContents__holder__menuBtn__icon > span:nth-child(3) {
    bottom: 8px;
    transform: rotate(-45deg);
}

.l-header__xsContents__sliderMenu {
    background-color: #fff;
    position: absolute;
    top: 56px;
    left: 0;
    width: 100%;
    height: calc(100vh - 56px);
    overflow: auto;
    -webkit-overflow-scrolling: touch;
    overflow-scrolling: touch;
    transform: translateX(100%);
    transition: 0.4s all cubic-bezier(0.39, 0.575, 0.565, 1);
}

.l-header__xsContents__sliderMenu.is-slided {
    transform: translateX(0);
}

.l-header__xsContents__sliderMenu__gNav__parentList__item {
    position: relative;
    border-top: 1px solid #fff;
}

.l-header__xsContents__sliderMenu__gNav__parentList__item:first-child {
    border-top: none;
}

.l-header__xsContents__sliderMenu__gNav__parentList__item__anchor {
    display: block;
    background-color: #97C04A;
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 10px 15px;
}

.l-header__xsContents__sliderMenu__gNav__parentList__item__icon {
    width: 46px;
    height: 46px;
    display: block;
    position: absolute;
    top: 0;
    right: 0;
}

.l-header__xsContents__sliderMenu__gNav__parentList__item__icon > span {
    position: absolute;
    top: 50%;
    right: 17px;
    margin-top: -5px;
    width: 10px;
    height: 10px;
    display: inline-block;
}

.l-header__xsContents__sliderMenu__gNav__parentList__item__icon > span:before {
    position: absolute;
    top: 50%;
    margin-top: -1px;
    left: 0;
    content: "";
    width: 100%;
    height: 2px;
    display: inline-block;
    background-color: #fff;
}

.l-header__xsContents__sliderMenu__gNav__parentList__item__icon > span:after {
    position: absolute;
    top: 0;
    left: 50%;
    margin-left: -1px;
    content: "";
    width: 2px;
    height: 100%;
    display: inline-block;
    background-color: #fff;
}

.l-header__xsContents__sliderMenu__gNav__parentList__item__icon.is-clicked > span:after {
    display: none;
}

.l-header__xsContents__sliderMenu__gNav__parentList__item__childList {
    display: none;
}

.l-header__xsContents__sliderMenu__gNav__parentList__item__childList__item {
    border-top: 1px solid #eee;
}

.l-header__xsContents__sliderMenu__gNav__parentList__item__childList__item:first-child {
    border-top: none;
}

.l-header__xsContents__sliderMenu__gNav__parentList__item__childList__item__anchor {
    display: block;
    font-size: 12px;
    font-size: 1.2rem;
    color: #97C04A;
    padding: 10px 20px;
}

.l-header__xsContents__sliderMenu__subNav {
    background-color: #222222;
    padding: 10px 0;
}

.l-header__xsContents__sliderMenu__subNav__list__item {
    float: left;
    width: 50%;
}

.l-header__xsContents__sliderMenu__subNav__list__item:nth-child(odd) {
    clear: both;
}

.l-header__xsContents__sliderMenu__subNav__list__item__anchor {
    display: block;
    color: #fff;
    font-size: 12px;
    font-size: 1.2rem;
    padding: 10px 15px;
}

.l-header__xsContents__sliderMenu__closeMenu {
    background-color: #DCDCDC;
    padding: 20px;
    text-align: center;
}

.l-header__xsContents__sliderMenu__closeMenu__btn {
    color: #fff;
    border: 1px solid #fff;
    border-radius: 24px;
    font-size: 14px;
    font-size: 1.4rem;
    text-align: center;
    width: 130px;
    padding: 10px;
    display: inline-block;
}

/* -----------------------------------------------------------------
*  main
*  ---------------------------------------------------------------*/

.l-main {
    position: relative;
    padding: 100px 0;
    background-image: url(/assets/images/common/bg_pattern_01.png);
    background-repeat: no-repeat;
    background-position: left top;
    background-size: 150px auto;
    opacity: 0;
    transform: translateY(50px);
    transition: 1.4s all cubic-bezier(0.52, 0.01, 0.09, 1);
}

@media only screen and (max-width: 767px) {
    .l-main {
        padding: 50px 0;
        background-size: 60px auto;
    }
}

body.onLoaded .l-main {
    opacity: 1;
    transform: translateY(0);
}

/* -----------------------------------------------------------------
*  aside
*  ---------------------------------------------------------------*/

/* -----------------------------------------------------------------
*  footer
*  ---------------------------------------------------------------*/

.l-footer__pageTop > a {
    display: block;
    text-align: center;
    background-color: #DCDCDC;
    color: #fff;
    padding: 10px 0;
}

.l-footer__pageTop > a > span {
    position: relative;
    display: inline-block;
    padding-top: 20px;
    line-height: 1;
}

.l-footer__pageTop > a > span:after {
    content: "";
    position: absolute;
    top: 4px;
    left: 50%;
    margin-left: -4px;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(-45deg);
}

.l-footer__pageTop > a:hover {
    background-color: #97C04A;
}

.l-footer__mainMenus__lgContents {
    background-color: #fff;
    padding: 50px 0;
}

.l-footer__mainMenus__lgContents__table {
    width: 100%;
}

.l-footer__mainMenus__lgContents__table > tbody > tr {
    width: 25%;
}

.l-footer__mainMenus__lgContents__table > tbody > tr > td {
    padding-right: 40px;
}

.l-footer__mainMenus__lgContents__table > tbody > tr > td > dl {
    margin-bottom: 40px;
}

.l-footer__mainMenus__lgContents__table > tbody > tr > td > dl > dt {
    position: relative;
    margin-bottom: 15px;
}

.l-footer__mainMenus__lgContents__table > tbody > tr > td > dl > dt:before {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #CCCCCC;
    position: absolute;
    top: 50%;
    left: 0;
}

.l-footer__mainMenus__lgContents__table > tbody > tr > td > dl > dt > a {
    position: relative;
    display: inline-block;
    padding-right: 15px;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 600;
    color: #222;
    background-color: #fff;
}

.l-footer__mainMenus__lgContents__table > tbody > tr > td > dl > dt > a:hover {
    color: #97C04A;
}

.l-footer__mainMenus__lgContents__table > tbody > tr > td > dl > dd > ul > li {
    margin-bottom: 10px;
}

.l-footer__mainMenus__lgContents__table > tbody > tr > td > dl > dd > ul > li > a {
    font-size: 14px;
    font-size: 1.4rem;
    color: #222;
    line-height: 1.5;
    display: inline-block;
}

.l-footer__mainMenus__lgContents__table > tbody > tr > td > dl > dd > ul > li > a:hover {
    color: #97C04A;
}

.l-footer__mainMenus__xsContents {
    background-color: #fff;
    padding: 30px 0;
}

.l-footer__mainMenus__xsContents__list__item {
    width: 50%;
    float: left;
}

.l-footer__mainMenus__xsContents__list__item:nth-child(odd) {
    clear: both;
}

.l-footer__mainMenus__xsContents__list__item__anchor {
    display: block;
    color: #222;
    font-size: 12px;
    font-size: 1.2rem;
    padding: 10px 0;
}

.l-footer__subMenus {
    background-color: #222222;
    padding: 50px 0;
}

@media only screen and (max-width: 767px) {
    .l-footer__subMenus {
        padding: 30px 0;
    }
}

.l-footer__subMenus__list {
    float: left;
    margin-left: -20px;
}

@media only screen and (max-width: 767px) {
    .l-footer__subMenus__list {
        float: none;
        margin-left: 0;
        margin-bottom: 20px;
    }
}

.l-footer__subMenus__list__item {
    float: left;
    margin-left: 20px;
}

@media only screen and (max-width: 767px) {
    .l-footer__subMenus__list__item {
        width: 50%;
        margin-left: 0;
    }
    .l-footer__subMenus__list__item:nth-child(odd) {
        clear: both;
    }
}

.l-footer__subMenus__list__item__anchor {
    display: block;
    color: #fff;
    font-size: 12px;
    font-size: 1.2rem;
}

@media only screen and (max-width: 767px) {
    .l-footer__subMenus__list__item__anchor {
        padding: 10px 0;
    }
}

.l-footer__subMenus__list__item__anchor:hover {
    color: #97C04A;
}

.l-footer__subMenus__copyright {
    display: inline-block;
    float: right;
    font-size: 12px;
    font-size: 1.2rem;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .l-footer__subMenus__copyright {
        float: none;
        display: block;
        text-align: center;
    }
}

/* ==========================================================================
* 
*  Object
*  サイト内で繰り返されるパターン。
* 
*  ========================================================================*/

/* -----------------------------------------------------------------
*  Component
*  ---------------------------------------------------------------*/

.c-anchor_type01 {
    position: relative;
    font-size: 16px;
    font-size: 1.6rem;
    padding-left: 20px;
    color: #222;
}

@media only screen and (max-width: 767px) {
    .c-anchor_type01 {
        font-size: 14px;
        font-size: 1.4rem;
    }
}

.c-anchor_type01:before {
    content: "";
    position: absolute;
    top: 4px;
    left: 0;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #97C04A;
    border-right: solid 2px #97C04A;
    transform: rotate(45deg);
}

@media only screen and (max-width: 767px) {
    .c-anchor_type01:before {
        top: 2px;
    }
}

.c-anchor_type01:hover {
    color: #97C04A;
}

.c-anchor_type02 {
    position: relative;
    color: #97C04A;
    font-weight: bold;
    background-image: url(/assets/images/common/icon_blank.svg);
    background-repeat: no-repeat;
    background-size: contain;
    background-position: center left;
    padding-left: 22px;
    font-size: 16px;
    font-size: 1.6rem;
}

@media only screen and (max-width: 767px) {
    .c-anchor_type02 {
        font-size: 14px;
        font-size: 1.4rem;
    }
}

.c-anchor_type03 {
    color: #97C04A;
    font-size: 16px;
    font-size: 1.6rem;
    text-decoration: underline;
}

@media only screen and (max-width: 767px) {
    .c-anchor_type03 {
        font-size: 14px;
        font-size: 1.4rem;
    }
}

.c-anchor_type03:hover {
    text-decoration: none;
}

.c-anim[data-anim="fade-in-up"] {
    opacity: 0;
    transform: translateY(40px);
    transition: 1.2s all cubic-bezier(0.23, 1, 0.32, 1);
}

@media only screen and (max-width: 767px) {
    .c-anim[data-anim="fade-in-up"] {
        transform: translateY(20px);
    }
}

body.onLoaded .c-anim[data-anim="fade-in-up"].is-animated {
    opacity: 1;
    transform: translateY(0);
}

.c-btn_type01 > a {
    position: relative;
    text-align: center;
    border-radius: 24px;
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 600;
    padding: 5px 30px 5px 30px;
    min-width: 280px;
    border: 2px solid transparent;
    background-color: #97C04A;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .c-btn_type01 > a {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.5;
        min-width: auto;
    }
}

.c-btn_type01 > a:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 16px;
    margin-top: -4px;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
}

@media only screen and (max-width: 767px) {
    .c-btn_type01 > a:after {
        right: 15px;
    }
}

.c-btn_type01 > a:hover {
    border: 2px solid #97C04A;
    background-color: #fff;
    color: #97C04A;
}

.c-btn_type01 > a:hover:after {
    border-top: solid 2px #97C04A;
    border-right: solid 2px #97C04A;
}

.c-btn_type01[data-size="wide"] > a {
    width: 100%;
}

.c-btn_type02 > a {
    position: relative;
    text-align: center;
    border-radius: 24px;
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 600;
    padding: 5px 30px 5px 30px;
    min-width: 280px;
    border: 2px solid #a2eb37;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#e1f543+0,97e834+100 */
    background: #e1f543;
    /* Old browsers */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #e1f543 0%, #97e834 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e1f543', endColorstr='#97e834', GradientType=1);
    /* IE6-9 */
    color: #3e5fcb;
}

@media only screen and (max-width: 767px) {
    .c-btn_type02 > a {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.5;
        min-width: auto;
    }
}

.c-btn_type02 > a:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 16px;
    margin-top: -4px;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #3e5fcb;
    border-right: solid 2px #3e5fcb;
    transform: rotate(45deg);
}

@media only screen and (max-width: 767px) {
    .c-btn_type02 > a:after {
        right: 15px;
    }
}

.c-btn_type02 > a:hover {
    border: 2px solid #8DDB28;
    background: #fff;
    color: #8DDB28;
}

.c-btn_type02 > a:hover:after {
    border-top: solid 2px #8DDB28;
    border-right: solid 2px #8DDB28;
}

.c-btn_type02[data-size="wide"] > a {
    width: 100%;
}

.c-hl_type01 {
    font-size: 36px;
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-hl_type01 {
        font-size: 24px;
        font-size: 2.4rem;
    }
}

.c-hl_type02 {
    position: relative;
    font-size: 34px;
    font-size: 3.4rem;
    font-weight: 600;
    padding-left: 20px;
    line-height: 1.5;
    padding: 4px 0 4px 20px;
}

@media only screen and (max-width: 767px) {
    .c-hl_type02 {
        font-size: 23px;
        font-size: 2.3rem;
        padding: 2px 0 2px 15px;
    }
}

.c-hl_type02:before {
    content: "";
    display: block;
    width: 4px;
    height: 100%;
    background-color: #97C04A;
    position: absolute;
    top: 0;
    left: 0;
}

@media only screen and (max-width: 767px) {
    .c-hl_type02:before {
        width: 2px;
    }
}

.c-hl_type03 {
    border: 1px solid #97C04A;
    color: #97C04A;
    padding: 8px 20px;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-hl_type03 {
        font-size: 18px;
        font-size: 1.8rem;
        padding: 4px 12px;
    }
}

.c-hl_type04 {
    font-size: 20px;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-hl_type04 {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.c-hl_type05 {
    font-size: 36px;
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 1.5;
    color: #3E5FCB;
}

@media only screen and (max-width: 767px) {
    .c-hl_type05 {
        font-size: 20px;
        font-size: 2rem;
    }
}

.c-hl_type06 {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.5;
    color: #8DDB28;
}

@media only screen and (max-width: 767px) {
    .c-hl_type06 {
        font-size: 18px;
        font-size: 1.8rem;
    }
}

.c-hl_type07 {
    position: relative;
    text-align: center;
}

.c-hl_type07:before {
    content: "";
    width: 100%;
    height: 2px;
    background-color: #000;
    position: absolute;
    top: 50%;
    left: 0;
}

.c-hl_type07 > span {
    position: relative;
    background-color: #fff;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: bold;
    display: inline-block;
    padding: 0 10px;
}

@media only screen and (max-width: 767px) {
    .c-hl_type07 > span {
        font-size: 18px;
        font-size: 1.8rem;
    }
}

.c-inner {
    position: relative;
    margin-left: auto;
    margin-right: auto;
    height: 100%;
}

.c-inner_1200 {
    width: 1200px;
}

@media only screen and (max-width: 767px) {
    .c-inner_1200 {
        width: 100%;
        padding: 0 4%;
    }
}

.c-indent {
    text-indent: -1em;
    margin-left: 1em;
}

.c-rt_type01 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2.25;
}

@media only screen and (max-width: 767px) {
    .c-rt_type01 {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 2.14285714286;
    }
}

.c-rt_type02 {
    font-size: 14px;
    font-size: 1.4rem;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-rt_type02 {
        font-size: 12px;
        font-size: 1.2rem;
    }
}

.c-rt_type03 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 2.25;
    font-weight: bold;
}

@media only screen and (max-width: 767px) {
    .c-rt_type03 {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.78571428571;
    }
}

.c-rt_type04 {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-rt_type04 {
        font-size: 14px;
        font-size: 1.4rem;
    }
}

.c-tag {
    display: inline-block;
    background-color: #222;
    color: #fff;
    font-size: 14px;
    font-size: 1.4rem;
    padding: 2px 14px;
    border-radius: 24px;
}

@media only screen and (max-width: 767px) {
    .c-tag {
        font-size: 12px;
        font-size: 1.2rem;
    }
}

.c-em {
    color: #FF1A1A;
    font-weight: 600;
    font-style: normal;
}

.c-weaken {
    color: #AFAFAF;
}

.c-table_type01 {
    width: 100%;
}

.c-table_type01 > thead > tr > th {
    background-color: #F2F2F2;
    padding: 10px;
    font-size: 20px;
    font-size: 2rem;
    font-weight: 600;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-table_type01 > thead > tr > th {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.c-table_type01 > tbody > tr {
    border-top: 1px solid #fff;
}

.c-table_type01 > tbody > tr:first-child {
    border-top: none;
}

.c-table_type01 > tbody > tr > th {
    background-color: #97C04A;
    color: #fff;
    font-size: 20px;
    font-size: 2rem;
    padding: 10px;
    vertical-align: middle;
    text-align: left;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-table_type01 > tbody > tr > th {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.c-table_type01 > tbody > tr > td {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 15px;
    vertical-align: middle;
    border-right: 1px dotted #AFAFAF;
    line-height: 1.5;
}

.c-table_type01 > tbody > tr > td:last-child {
    border-right: none;
}

@media only screen and (max-width: 767px) {
    .c-table_type01 > tbody > tr > td {
        font-size: 14px;
        font-size: 1.4rem;
        padding: 10px;
        border-right: none;
    }
}

.c-table_type02 {
    width: 100%;
}

.c-table_type02 > tbody > tr {
    border-top: 1px solid #fff;
}

.c-table_type02 > tbody > tr:first-child {
    border-top: none;
}

.c-table_type02 > tbody > tr > th {
    background-color: #97C04A;
    color: #fff;
    font-size: 20px;
    font-size: 2rem;
    padding: 35px 20px;
    vertical-align: middle;
    text-align: left;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-table_type02 > tbody > tr > th {
        width: 100% !important;
        display: block;
        font-size: 16px;
        font-size: 1.6rem;
        padding: 4px 12px;
    }
}

.c-table_type02 > tbody > tr > td {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 15px;
    vertical-align: middle;
    border-right: 1px dotted #AFAFAF;
    line-height: 1.5;
}

.c-table_type02 > tbody > tr > td:last-child {
    border-right: none;
}

@media only screen and (max-width: 767px) {
    .c-table_type02 > tbody > tr > td {
        width: 100% !important;
        display: block;
        font-size: 14px;
        font-size: 1.4rem;
        padding: 10px;
        border-right: none;
    }
}

.c-table_type03 {
    width: 100%;
}

.c-table_type03 > thead > tr > th {
    background-color: #97C04A;
    color: #fff;
    padding: 10px;
    font-size: 20px;
    font-size: 2rem;
    font-weight: 600;
    text-align: left;
    line-height: 1.5;
    border-right: 1px solid #fff;
}

@media only screen and (max-width: 767px) {
    .c-table_type03 > thead > tr > th {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.c-table_type03 > thead > tr > th:last-child {
    border-left: none;
}

.c-table_type03 > tbody > tr {
    border-top: 1px solid #fff;
}

.c-table_type03 > tbody > tr:first-child {
    border-top: none;
}

.c-table_type03 > tbody > tr > th {
    background-color: #97C04A;
    color: #fff;
    font-size: 20px;
    font-size: 2rem;
    padding: 35px 20px;
    vertical-align: middle;
    text-align: left;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-table_type03 > tbody > tr > th {
        font-size: 16px;
        font-size: 1.6rem;
        padding: 4px 12px;
    }
}

.c-table_type03 > tbody > tr > td {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 15px;
    vertical-align: middle;
    border-right: 1px dotted #AFAFAF;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .c-table_type03 > tbody > tr > td {
        font-size: 14px;
        font-size: 1.4rem;
        padding: 10px;
    }
}

.c-table_type03 > tbody > tr > td:last-child {
    border-right: none;
}

.c-fig {
    text-align: center;
}

.c-list_type01 > li {
    position: relative;
    font-size: 16px;
    font-size: 1.6rem;
    padding-left: 20px;
    line-height: 1.5;
    margin-top: 8px;
}

@media only screen and (max-width: 767px) {
    .c-list_type01 > li {
        font-size: 14px;
        font-size: 1.4rem;
    }
}

.c-list_type01 > li:before {
    position: absolute;
    top: 10px;
    left: 0;
    content: "";
    display: inline-block;
    width: 10px;
    height: 10px;
    border-radius: 5px;
    background-color: #97C04A;
}

@media only screen and (max-width: 767px) {
    .c-list_type01 > li:before {
        top: 8px;
    }
}

.c-list_type01 > li:fist-child {
    margin-top: 0;
}

.c-list_type02 > li {
    position: relative;
    font-size: 16px;
    font-size: 1.6rem;
    padding-left: 20px;
    line-height: 1.5;
    margin-top: 8px;
}

@media only screen and (max-width: 767px) {
    .c-list_type02 > li {
        font-size: 14px;
        font-size: 1.4rem;
    }
}

.c-list_type02 > li:before {
    content: "";
    position: absolute;
    top: 11px;
    left: 0;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #97C04A;
    border-right: solid 2px #97C04A;
    transform: rotate(45deg);
}

@media only screen and (max-width: 767px) {
    .c-list_type02 > li:before {
        top: 9px;
    }
}

.c-list_type02 > li:fist-child {
    margin-top: 0;
}

.c-list_type03 {
    list-style: decimal;
    padding-left: 2em;
}

.c-list_type03 > li {
    font-size: 16px;
    font-size: 1.6rem;
    line-height: 1.5;
    margin-top: 8px;
}

@media only screen and (max-width: 767px) {
    .c-list_type03 > li {
        font-size: 14px;
        font-size: 1.4rem;
    }
}

.c-list_type03 > li:fist-child {
    margin-top: 0;
}

.c-formBtn_type01 {
    position: relative;
}

.c-formBtn_type01 > input[type="button"],
.c-formBtn_type01 > input[type="submit"] {
    position: relative;
    text-align: center;
    border-radius: 24px;
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 600;
    padding: 10px 30px 10px 30px;
    min-width: 280px;
    border: 2px solid transparent;
    background-color: #97C04A;
    color: #fff;
}

@media only screen and (max-width: 767px) {
    .c-formBtn_type01 > input[type="button"],
    .c-formBtn_type01 > input[type="submit"] {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.5;
    }
}

.c-formBtn_type01 > input[type="button"]:after,
.c-formBtn_type01 > input[type="submit"]:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -4px;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
}

@media only screen and (max-width: 767px) {
    .c-formBtn_type01 > input[type="button"]:after,
    .c-formBtn_type01 > input[type="submit"]:after {
        right: 15px;
    }
}

.c-formBtn_type01 > input[type="button"]:hover,
.c-formBtn_type01 > input[type="submit"]:hover {
    border: 2px solid #97C04A;
    background-color: #fff;
    color: #97C04A;
}

.c-formBtn_type01 > input[type="button"]:hover:after,
.c-formBtn_type01 > input[type="submit"]:hover:after {
    border-top: solid 2px #97C04A;
    border-right: solid 2px #97C04A;
}

.c-formBtn_type02 {
    position: relative;
}

.c-formBtn_type02 > input[type="button"],
.c-formBtn_type02 > input[type="submit"] {
    position: relative;
    text-align: center;
    border-radius: 24px;
    display: inline-block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 600;
    padding: 10px 30px 10px 30px;
    min-width: 280px;
    border: 2px solid #a2eb37;
    /* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#e1f543+0,97e834+100 */
    background: #e1f543;
    /* Old browsers */
    /* FF3.6-15 */
    /* Chrome10-25,Safari5.1-6 */
    background: linear-gradient(to right, #e1f543 0%, #97e834 100%);
    /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#e1f543', endColorstr='#97e834', GradientType=1);
    /* IE6-9 */
    color: #3e5fcb;
}

@media only screen and (max-width: 767px) {
    .c-formBtn_type02 > input[type="button"],
    .c-formBtn_type02 > input[type="submit"] {
        font-size: 14px;
        font-size: 1.4rem;
        line-height: 1.5;
    }
}

.c-formBtn_type02 > input[type="button"]:after,
.c-formBtn_type02 > input[type="submit"]:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 16px;
    margin-top: -4px;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #fff;
    border-right: solid 2px #fff;
    transform: rotate(45deg);
}

@media only screen and (max-width: 767px) {
    .c-formBtn_type02 > input[type="button"]:after,
    .c-formBtn_type02 > input[type="submit"]:after {
        right: 15px;
    }
}

.c-formBtn_type02 > input[type="button"]:hover,
.c-formBtn_type02 > input[type="submit"]:hover {
    border: 2px solid #8DDB28;
    background: #fff;
    color: #8DDB28;
}

.c-formBtn_type02 > input[type="button"]:hover:after,
.c-formBtn_type02 > input[type="submit"]:hover:after {
    border-top: solid 2px #3e5fcb;
    border-right: solid 2px #3e5fcb;
}

.c-formCheckbox_type01 > input[type="checkbox"]:checked + label > span:after {
    display: block;
}

.c-formCheckbox_type01 > label {
    position: relative;
}

.c-formCheckbox_type01 > label > span {
    font-size: 0;
    position: relative;
    display: inline-block;
    width: 40px;
    height: 40px;
    background-color: #F2F2F2;
    border-radius: 4px;
    vertical-align: middle;
    border: 1px solid #c8c8c8;
    margin-right: 10px;
}

@media only screen and (max-width: 767px) {
    .c-formCheckbox_type01 > label > span {
        width: 20px;
        height: 20px;
    }
}

.c-formCheckbox_type01 > label > span:after {
    font-size: 0;
    display: none;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    margin-left: -10px;
    margin-top: -10px;
    background-color: #8DDB28;
    border-radius: 2px;
}

@media only screen and (max-width: 767px) {
    .c-formCheckbox_type01 > label > span:after {
        width: 10px;
        height: 10px;
        margin-left: -5px;
        margin-top: -5px;
    }
}

.c-formCheckbox_type01 > label > div {
    display: inline-block;
    vertical-align: middle;
}

.c-formCheckbox_type01 > label:hover {
    cursor: pointer;
}

.c-formRadio_type01 > input[type="radio"]:checked + label > span:after {
    display: block;
}

.c-formRadio_type01 > label {
    position: relative;
}

.c-formRadio_type01 > label > span {
    font-size: 0;
    position: relative;
    display: inline-block;
    width: 40px;
    height: 40px;
    background-color: #F2F2F2;
    border: 1px solid #aaaaaa;
    border-radius: 20px;
    vertical-align: middle;
    margin-right: 10px;
}

@media only screen and (max-width: 767px) {
    .c-formRadio_type01 > label > span {
        width: 20px;
        height: 20px;
    }
}

.c-formRadio_type01 > label > span:after {
    font-size: 0;
    display: none;
    content: "";
    position: absolute;
    top: 50%;
    left: 50%;
    width: 20px;
    height: 20px;
    margin-left: -10px;
    margin-top: -10px;
    background-color: #8DDB28;
    border-radius: 20px;
}

@media only screen and (max-width: 767px) {
    .c-formRadio_type01 > label > span:after {
        width: 10px;
        height: 10px;
        margin-left: -5px;
        margin-top: -5px;
    }
}

.c-formRadio_type01 > label > div {
    display: inline-block;
    vertical-align: middle;
}

.c-formRadio_type01 > label:hover {
    cursor: pointer;
}

.p-formSelect_type01 {
    position: relative;
}

.p-formSelect_type01:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 20px;
    margin-top: -5px;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: 10px 5px 0 5px;
    border-color: #000000 transparent transparent transparent;
}

.p-formSelect_type01 > select {
    border: 1px solid #c8c8c8;
    padding: 10px;
    border-radius: 4px;
    width: 100%;
    cursor: pointer;
    background-color: #F2F2F2;
    font-size: 16px;
    font-size: 1.6rem;
}

.c-formText_type01 {
    border: 1px solid #c8c8c8;
    padding: 10px;
    border-radius: 4px;
    width: 100%;
    cursor: pointer;
    background-color: #F2F2F2;
    font-size: 16px;
    font-size: 1.6rem;
}

.c-formText_type01[data-role="postalcode"] {
    position: relative;
    width: calc(100% - 30px);
    margin-left: 10px;
}

.c-formText_type01[data-role="number"] {
    width: 100px;
    text-align: center;
}

.c-formText_type01[data-role="date"] {
    width: 140px;
    text-align: center;
}

.c-formText_type01:focus {
    background-color: #fff;
}

.c-formTextArea_type01 {
    border: 1px solid #c8c8c8;
    padding: 10px;
    border-radius: 4px;
    width: 100%;
    cursor: pointer;
    background-color: #F2F2F2;
    font-size: 16px;
    font-size: 1.6rem;
    height: 200px;
}

.c-formTextArea_type01:focus {
    background-color: #fff;
}

.c-formFileBtn_type01 {
    border: 1px solid #c8c8c8;
    padding: 10px;
    border-radius: 4px;
    width: 100%;
    cursor: pointer;
    background-color: #F2F2F2;
    font-size: 16px;
    font-size: 1.6rem;
}

.c-formFileBtn_type01 > input {
    display: none;
    /* アップロードボタンのスタイルを無効にする */
}

.c-protection {
    background-color: #fff;
}

/* -----------------------------------------------------------------
*  Project
*  ---------------------------------------------------------------*/

.p-area {
    text-align: center;
    margin-bottom: 90px;
}

@media only screen and (max-width: 767px) {
    .p-area {
        margin-bottom: 45px;
    }
}

.p-area__map {
    position: relative;
    display: inline-block;
}

.p-area__map__eachArea {
    position: absolute;
    display: inline-block;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: contain;
}

@media only screen and (max-width: 767px) {
    .p-area__map__eachArea {
        display: none;
    }
}

.p-area__map__eachArea[data-area="hokkaido"] {
    width: 256px;
    height: 209px;
    background-size: 256px 209px;
    top: 0;
    right: 0;
    background-image: url(/assets/images/company/stores/common/map_hokkaido_off.png);
}

.p-area__map__eachArea[data-area="hokkaido"]:hover {
    background-image: url(/assets/images/company/stores/common/map_hokkaido_on.png);
}

.p-area__map__eachArea[data-area="hokkaido"].is-hovered {
    background-image: url(/assets/images/company/stores/common/map_hokkaido_on.png);
}

.p-area__map__eachArea[data-area="tohoku"] {
    width: 128px;
    height: 233px;
    background-size: 128px 233px;
    top: 199px;
    right: 198px;
    background-image: url(/assets/images/company/stores/common/map_tohoku_off.png);
}

.p-area__map__eachArea[data-area="tohoku"]:hover {
    background-image: url(/assets/images/company/stores/common/map_tohoku_on.png);
}

.p-area__map__eachArea[data-area="tohoku"].is-hovered {
    background-image: url(/assets/images/company/stores/common/map_tohoku_on.png);
}

.p-area__map__eachArea[data-area="kanto"] {
    width: 139px;
    height: 174px;
    background-size: 139px 174px;
    top: 340px;
    right: 282px;
    z-index: 1;
    background-image: url(/assets/images/company/stores/common/map_kanto_off.png);
}

.p-area__map__eachArea[data-area="kanto"]:hover {
    background-image: url(/assets/images/company/stores/common/map_kanto_on.png);
}

.p-area__map__eachArea[data-area="kanto"].is-hovered {
    background-image: url(/assets/images/company/stores/common/map_kanto_on.png);
}

.p-area__map__eachArea[data-area="chubu"] {
    width: 128px;
    height: 163px;
    background-size: 128px 163px;
    z-index: 2;
    top: 362px;
    right: 362px;
    background-image: url(/assets/images/company/stores/common/map_chubu_off.png);
}

.p-area__map__eachArea[data-area="chubu"]:hover {
    background-image: url(/assets/images/company/stores/common/map_chubu_on.png);
}

.p-area__map__eachArea[data-area="chubu"].is-hovered {
    background-image: url(/assets/images/company/stores/common/map_chubu_on.png);
}

.p-area__map__eachArea[data-area="kinki"] {
    width: 92px;
    height: 116px;
    background-size: 92px 116px;
    top: 432px;
    right: 480px;
    background-image: url(/assets/images/company/stores/common/map_kinki_off.png);
}

.p-area__map__eachArea[data-area="kinki"]:hover {
    background-image: url(/assets/images/company/stores/common/map_kinki_on.png);
}

.p-area__map__eachArea[data-area="kinki"].is-hovered {
    background-image: url(/assets/images/company/stores/common/map_kinki_on.png);
}

.p-area__map__eachArea[data-area="chugoku"] {
    width: 139px;
    height: 69px;
    background-size: 139px 69px;
    top: 422px;
    right: 574px;
    background-image: url(/assets/images/company/stores/common/map_chugoku_off.png);
}

.p-area__map__eachArea[data-area="chugoku"]:hover {
    background-image: url(/assets/images/company/stores/common/map_chugoku_on.png);
}

.p-area__map__eachArea[data-area="chugoku"].is-hovered {
    background-image: url(/assets/images/company/stores/common/map_chugoku_on.png);
}

.p-area__map__eachArea[data-area="shikoku"] {
    width: 104px;
    height: 57px;
    background-size: 104px 57px;
    top: 492px;
    right: 550px;
    background-image: url(/assets/images/company/stores/common/map_shikoku_off.png);
}

.p-area__map__eachArea[data-area="shikoku"]:hover {
    background-image: url(/assets/images/company/stores/common/map_shikoku_on.png);
}

.p-area__map__eachArea[data-area="shikoku"].is-hovered {
    background-image: url(/assets/images/company/stores/common/map_shikoku_on.png);
}

.p-area__map__eachArea[data-area="kyushu"] {
    width: 92px;
    height: 139px;
    background-size: 92px 139px;
    top: 476px;
    right: 668px;
    background-image: url(/assets/images/company/stores/common/map_kyushu_off.png);
}

.p-area__map__eachArea[data-area="kyushu"]:hover {
    background-image: url(/assets/images/company/stores/common/map_kyushu_on.png);
}

.p-area__map__eachArea[data-area="kyushu"].is-hovered {
    background-image: url(/assets/images/company/stores/common/map_kyushu_on.png);
}

.p-area__map__eachArea[data-area="okinawa"] {
    width: 183px;
    height: 116px;
    background-size: 183px 116px;
    top: 117px;
    right: 577px;
    background-image: url(/assets/images/company/stores/common/map_okinawa_off.png);
}

.p-area__map__eachArea[data-area="okinawa"]:hover {
    background-image: url(/assets/images/company/stores/common/map_okinawa_on.png);
}

.p-area__map__eachArea[data-area="okinawa"].is-hovered {
    background-image: url(/assets/images/company/stores/common/map_okinawa_on.png);
}

.p-area__map__eachArea:hover {
    opacity: 1;
}

.p-area__map__btn {
    position: relative;
    position: absolute;
    display: inline-block;
    color: #97C04A;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: 600;
    background-color: #fff;
    line-height: 1;
    padding: 8px 14px 6px 20px;
    border: 2px solid #97C04A;
    white-space: nowrap;
    z-index: 10;
}

@media only screen and (max-width: 767px) {
    .p-area__map__btn {
        display: none;
    }
}

.p-area__map__btn:after {
    content: url(/assets/images/common/icon_arrow_g.svg);
    width: 17px;
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
    margin-left: 10px;
}

.p-area__map__btn[data-area="hokkaido"] {
    top: 164px;
    left: 646px;
}

.p-area__map__btn[data-area="tohoku"] {
    top: 346px;
    left: 510px;
}

.p-area__map__btn[data-area="kanto"] {
    top: 462px;
    left: 462px;
}

.p-area__map__btn[data-area="chubu"] {
    top: 378px;
    left: 228px;
}

.p-area__map__btn[data-area="kinki"] {
    top: 542px;
    left: 248px;
}

.p-area__map__btn[data-area="chugoku"] {
    top: 414px;
    left: 76px;
}

.p-area__map__btn[data-area="shikoku"] {
    top: 544px;
    left: 106px;
}

.p-area__map__btn[data-area="kyushu"] {
    top: 482px;
    left: -88px;
}

.p-area__map__btn[data-area="okinawa"] {
    top: 170px;
    left: 100px;
}

.p-area__map__btn.is-hovered {
    border: 2px solid #fff;
    background-color: #97C04A;
    color: #fff;
}

.p-area__map__btn.is-hovered:after {
    content: url(/assets/images/common/icon_arrow_w.svg);
}

.p-area__map__btn:hover {
    border: 2px solid #fff;
    background-color: #97C04A;
    color: #fff;
}

.p-area__map__btn:hover:after {
    content: url(/assets/images/common/icon_arrow_w.svg);
}

.p-area__map__areaList {
    margin-top: 80px;
    font-size: 0;
}

@media only screen and (max-width: 767px) {
    .p-area__map__areaList {
        margin-top: 40px;
    }
}

.p-area__map__areaList__item {
    display: inline-block;
    padding: 0 30px;
    border-left: 1px solid #AFAFAF;
}

.p-area__map__areaList__item:last-child {
    border-right: 1px solid #AFAFAF;
}

@media only screen and (max-width: 767px) {
    .p-area__map__areaList__item {
        float: left;
        width: 33.33333%;
        padding: 0;
    }
    .p-area__map__areaList__item:nth-child(3n + 1) {
        clear: both;
    }
    .p-area__map__areaList__item:nth-child(3n) {
        border-right: 1px solid #AFAFAF;
    }
}

.p-area__map__areaList__item > a {
    font-size: 16px;
    font-size: 1.6rem;
    color: #222;
    font-weight: 600;
}

@media only screen and (max-width: 767px) {
    .p-area__map__areaList__item > a {
        font-size: 14px;
        font-size: 1.4rem;
    }
}

.p-area__map__areaList__item > a:hover {
    color: #97C04A;
}

.p-area__map__areaList__item > a > span {
    position: relative;
    display: inline-block;
    padding-right: 15px;
}

.p-area__map__areaList__item > a > span:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 0;
    margin-top: -4px;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #97C04A;
    border-right: solid 2px #97C04A;
    transform: rotate(45deg);
}

.p-categoryTitle {
    position: relative;
    overflow: hidden;
    width: 100%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    padding: 80px 0;
}

@media only screen and (max-width: 767px) {
    .p-categoryTitle {
        padding: 40px 0;
    }
}

.p-categoryTitle__visual {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-repeat: no-repeat;
    background-position: center center;
    background-size: cover;
    opacity: 0;
    transform: scale(1.1);
    transition: 1.4s all cubic-bezier(0.52, 0.01, 0.09, 1);
}

.p-categoryTitle__title {
    text-align: center;
    font-size: 44px;
    font-size: 4.4rem;
    font-weight: 500;
    color: #fff;
    opacity: 0;
    transition: 1.4s all cubic-bezier(0.52, 0.01, 0.09, 1);
}

@media only screen and (max-width: 767px) {
    .p-categoryTitle__title {
        font-size: 22px;
        font-size: 2.2rem;
    }
}

body.onLoaded .p-categoryTitle__visual {
    opacity: 1;
    transform: scale(1);
}

body.onLoaded .p-categoryTitle__title {
    opacity: 1;
}

.p-bread {
    position: relative;
    z-index: 2;
}

.p-bread__list {
    position: absolute;
    top: -25px;
    right: 0;
    background-color: #fff;
    padding: 9px 0 9px 20px;
    display: inline-block;
    transform: translateX(50px);
    opacity: 0;
    transition: 1.4s all cubic-bezier(0.52, 0.01, 0.09, 1);
}

.p-bread__list:before {
    content: "";
    display: block;
    width: 100vw;
    height: 100%;
    background-color: #fff;
    position: absolute;
    top: 0;
    left: 0;
}

.p-bread__list__item {
    position: relative;
    display: inline-block;
    margin-left: 10px;
    padding-left: 20px;
    font-size: 12px;
    font-size: 1.2rem;
}

.p-bread__list__item:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    margin-top: -4px;
    width: 8px;
    height: 8px;
    border-top: solid 2px #97C04A;
    border-right: solid 2px #97C04A;
    transform: rotate(45deg);
}

.p-bread__list__item:first-child {
    padding-left: 0;
    margin-left: 0;
}

.p-bread__list__item:first-child:before {
    display: none;
}

.p-bread__list__item > a {
    color: #222;
}

.p-bread__list__item > a:hover {
    color: #97C04A;
}

body.onLoaded .p-bread__list {
    transform: translateX(0);
    opacity: 1;
}

.p-column__holder {
    margin-left: -30px;
}

@media only screen and (max-width: 767px) {
    .p-column__holder {
        margin-left: 0;
    }
}

.p-column__holder__col {
    position: relative;
    float: left;
    margin-left: 30px;
    margin-bottom: 40px;
}

@media only screen and (max-width: 767px) {
    .p-column__holder__col {
        margin-left: 0;
        margin-bottom: 20px;
    }
}

.p-column[data-col="1"] .p-column__holder__col {
    width: 100%;
}

.p-column[data-col="2"] .p-column__holder__col {
    width: 585px;
}

.p-column[data-col="2"] .p-column__holder__col:nth-child(odd) {
    clear: both;
}

@media only screen and (max-width: 767px) {
    .p-column[data-col="2"] .p-column__holder__col {
        width: 100%;
    }
}

.p-column[data-col="3"] .p-column__holder__col {
    width: 380px;
}

.p-column[data-col="3"] .p-column__holder__col:nth-child(3n + 1) {
    clear: both;
}

@media only screen and (max-width: 767px) {
    .p-column[data-col="3"] .p-column__holder__col {
        width: 100%;
    }
}

.p-column[data-col="4"] .p-column__holder__col {
    width: 277px;
}

.p-column[data-col="4"] .p-column__holder__col:nth-child(4n + 1) {
    clear: both;
}

@media only screen and (max-width: 767px) {
    .p-column[data-col="4"] .p-column__holder__col {
        width: 100%;
    }
}

.p-column[data-mode="reverse"] .p-column__holder__col {
    float: right;
}

.p-column[data-mode="center"] .p-column__holder {
    text-align: center;
}

.p-column[data-mode="center"] .p-column__holder__col {
    float: none;
    display: inline-block;
    vertical-align: top;
}

.p-dataList > li {
    margin-top: 20px;
}

.p-dataList > li:first-child {
    margin-top: 0q;
}

.p-dataList > li > a {
    display: block;
    border: 1px solid #97C04A;
    padding: 10px 60px 10px 10px;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    color: #97C04A;
    background-repeat: no-repeat;
    background-position: 98% center;
}

@media only screen and (max-width: 767px) {
    .p-dataList > li > a {
        font-size: 14px;
        font-size: 1.4rem;
        padding: 5px 40px 5px 5px;
    }
}

.p-dataList > li[data-type="pdf"] > a {
    background-image: url(/assets/images/common/icon_pdf.svg);
    background-size: 20px 20px;
}

.p-note {
    background-color: #F2F2F2;
    padding: 15px;
    font-weight: 600;
}

@media only screen and (max-width: 767px) {
    .p-note {
        padding: 10px;
    }
}

.p-footCategoryMenu {
    padding: 100px 0;
    background-image: url(/assets/images/common/bg_pattern_01.png), url(/assets/images/common/bg_pattern_02.png);
    background-repeat: no-repeat, no-repeat;
    background-position: left top, right bottom;
    background-size: 150px auto, 374px auto;
}

@media only screen and (max-width: 767px) {
    .p-footCategoryMenu {
        padding: 40px 0;
        background-size: 60px auto, 187px auto;
    }
}

.p-footCategoryMenu__name {
    font-size: 20px;
    font-size: 2rem;
    font-weight: 600;
    margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {
    .p-footCategoryMenu__name {
        font-size: 16px;
        font-size: 1.6rem;
        margin-bottom: 15px;
    }
}

.p-footCategoryMenu__list {
    margin-left: -30px;
    margin-bottom: -30px;
}

@media only screen and (max-width: 767px) {
    .p-footCategoryMenu__list {
        margin-left: -4%;
        margin-bottom: -15px;
    }
}

.p-footCategoryMenu__list__item {
    float: left;
    margin-left: 30px;
    margin-bottom: 30px;
    width: 277px;
}

@media only screen and (max-width: 767px) {
    .p-footCategoryMenu__list__item {
        width: 46%;
        margin-left: 4%;
        margin-bottom: 15px;
    }
}

.p-footCategoryMenu__list__item > a {
    position: relative;
    display: block;
    overflow: hidden;
}

.p-footCategoryMenu__list__item > a > img {
    transform: scale(1);
    transition: 0.7s all cubic-bezier(0.52, 0.01, 0.09, 1);
}

.p-footCategoryMenu__list__item > a:after {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: linear-gradient(transparent 80%, rgba(0, 0, 0, 0.5));
}

.p-footCategoryMenu__list__item > a:hover > img {
    transform: scale(1.1);
}

.p-footCategoryMenu__list__item > a > span {
    color: #fff;
    position: absolute;
    bottom: 5px;
    left: 10px;
    line-height: 1.25;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    z-index: 2;
}

@media only screen and (max-width: 767px) {
    .p-footCategoryMenu__list__item > a > span {
        font-size: 12px;
        font-size: 1.2rem;
    }
}

.p-footCategoryMenu__list__item > a > span:after {
    content: url(/assets/images/common/icon_arrow_w.svg);
    width: 16px;
    display: inline-block;
    vertical-align: middle;
    line-height: 1;
    margin-left: 4px;
}

@media only screen and (max-width: 767px) {
    .p-footCategoryMenu__list__item > a > span:after {
        width: 12px;
    }
}

.p-businessItem {
    display: block;
    background-color: #fff;
    box-shadow: 2px 2px 14px 0px rgba(0, 0, 0, 0.1);
}

.p-businessItem__fig {
    position: relative;
    overflow: hidden;
}

.p-businessItem__fig > img {
    transform: scale(1);
    transition: 0.7s all cubic-bezier(0.52, 0.01, 0.09, 1);
}

.p-businessItem__fig__tag {
    position: absolute;
    top: 20px;
    right: 20px;
}

.p-businessItem__status {
    padding: 25px;
}

@media only screen and (max-width: 767px) {
    .p-businessItem__status {
        padding: 20px 15px;
    }
}

.p-businessItem__status__category {
    display: inline-block;
    border-bottom: 1px solid #AFAFAF;
    color: #AFAFAF;
    font-size: 16px;
    font-size: 1.6rem;
    margin-bottom: 15px;
}

@media only screen and (max-width: 767px) {
    .p-businessItem__status__category {
        font-size: 14px;
        font-size: 1.4rem;
    }
}

.p-businessItem__status__title {
    font-size: 20px;
    font-size: 2rem;
    font-weight: 600;
    color: #97C04A;
    line-height: 1.5;
}

@media only screen and (max-width: 767px) {
    .p-businessItem__status__title {
        font-size: 16px;
        font-size: 1.6rem;
    }
}

.p-businessItem:hover .p-businessItem__fig > img {
    transform: scale(1.1);
}

.p-tonerMarks__list {
    margin-left: 175px;
    margin-bottom: -30px;
}

@media only screen and (max-width: 767px) {
    .p-tonerMarks__list {
        margin-left: -4%;
        margin-bottom: -15px;
    }
}

.p-tonerMarks__list__item {
    float: left;
    margin-left: 30px;
    margin-bottom: 30px;
    width: 380px;
}

@media only screen and (max-width: 767px) {
    .p-tonerMarks__list__item {
        width: 46%;
        margin-left: 4%;
        margin-bottom: 15px;
    }
}

.p-tonerMarks__list__item > a {
    display: block;
}

.p-tonerMarks__list__item > a > span {
    position: relative;
    display: block;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    color: #97C04A;
    margin-top: 8px;
    padding: 0 30px 0 5px;
    line-height: 1.5;
}

.p-tonerMarks__list__item > a > span:after {
    content: "";
    position: absolute;
    top: 50%;
    right: 10px;
    margin-top: -4px;
    display: block;
    width: 8px;
    height: 8px;
    border-top: solid 2px #97C04A;
    border-right: solid 2px #97C04A;
    transform: rotate(45deg);
}

.p-form__inputTable {
    width: 960px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 70px;
}

@media only screen and (max-width: 767px) {
    .p-form__inputTable {
        width: 100%;
        margin-bottom: 35px;
    }
}

.p-form__inputTable > tbody > tr {
    border-bottom: 1px solid #CCCCCC;
}

.p-form__inputTable > tbody > tr > th {
    font-size: 16px;
    font-size: 1.6rem;
    vertical-align: top;
    text-align: left;
    width: 300px;
    padding: 40px 0;
}

@media only screen and (max-width: 767px) {
    .p-form__inputTable > tbody > tr > th {
        display: block;
        width: 100%;
        font-size: 14px;
        font-size: 1.4rem;
        padding: 20px 0 0 0;
    }
}

.p-form__inputTable > tbody > tr > th .is-over {
    color: #FF1A1A;
}

.p-form__inputTable > tbody > tr > td {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 40px 0;
}

@media only screen and (max-width: 767px) {
    .p-form__inputTable > tbody > tr > td {
        display: block;
        font-size: 14px;
        font-size: 1.4rem;
        padding: 10px 0 20px;
    }
}

.p-form__inputTable__error {
    color: #FF1A1A;
    font-size: 16px;
    font-size: 1.6rem;
    font-weight: bold;
    margin-top: 10px;
}

@media only screen and (max-width: 767px) {
    .p-form__inputTable__error {
        font-size: 14px;
        font-size: 1.4rem;
    }
}

.p-form__inputTable__limit__date {
    width: 150px;
}

.p-form__inputTable__limit__selector {
    width: 200px;
    display: inline-block;
}

@media only screen and (max-width: 767px) {
    .p-form__inputTable__limit__selector {
        margin-top: 10px;
    }
}

.p-form__confirmTable {
    width: 960px;
    margin-left: auto;
    margin-right: auto;
    margin-bottom: 70px;
}

@media only screen and (max-width: 767px) {
    .p-form__confirmTable {
        width: 100%;
        margin-bottom: 35px;
    }
}

.p-form__confirmTable > tbody > tr {
    border-bottom: 1px solid #CCCCCC;
}

.p-form__confirmTable > tbody > tr > th {
    font-size: 16px;
    font-size: 1.6rem;
    vertical-align: top;
    text-align: left;
    width: 300px;
    padding: 40px 10px;
}

@media only screen and (max-width: 767px) {
    .p-form__confirmTable > tbody > tr > th {
        display: block;
        width: 100%;
        font-size: 14px;
        font-size: 1.4rem;
        padding: 20px 0 0 0;
    }
}

.p-form__confirmTable > tbody > tr > td {
    font-size: 16px;
    font-size: 1.6rem;
    padding: 40px 10px;
}

@media only screen and (max-width: 767px) {
    .p-form__confirmTable > tbody > tr > td {
        display: block;
        font-size: 14px;
        font-size: 1.4rem;
        padding: 10px 0 20px;
    }
}

.p-form__btns__list {
    text-align: center;
    font-size: 0;
}

.p-form__btns__list__item {
    display: inline-block;
    margin-left: 30px;
}

@media only screen and (max-width: 767px) {
    .p-form__btns__list__item {
        display: block;
        margin-left: 0;
        margin-top: 10px;
    }
}

.p-form__btns__list__item:first-child {
    margin-left: 0;
}

@media only screen and (max-width: 767px) {
    .p-form__btns__list__item:first-child {
        margin-top: 0;
    }
}

.p-formChoicesList {
    margin-left: -20px;
    margin-bottom: -10px;
}

.p-formChoicesList__item {
    display: inline-block;
    margin-left: 20px;
    margin-bottom: 10px;
}

.entry h1 {
    font-size: 36px;
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 40px;
}

@media only screen and (max-width: 767px) {
    .entry h1 {
        font-size: 24px;
        font-size: 2.4rem;
        margin-bottom: 20px;
    }
}

.entry h2 {
    font-size: 36px;
    font-size: 3.6rem;
    font-weight: 600;
    line-height: 1.5;
    color: #97C04A;
    margin-bottom: 40px;
}

@media only screen and (max-width: 767px) {
    .entry h2 {
        font-size: 24px;
        font-size: 2.4rem;
        margin-bottom: 20px;
    }
}

.entry h3 {
    position: relative;
    font-size: 34px;
    font-size: 3.4rem;
    font-weight: 600;
    padding-left: 20px;
    line-height: 1.5;
    padding: 4px 0 4px 20px;
    margin-bottom: 40px;
}

@media only screen and (max-width: 767px) {
    .entry h3 {
        font-size: 23px;
        font-size: 2.3rem;
        padding: 2px 0 2px 15px;
        margin-bottom: 20px;
    }
}

.entry h3:before {
    content: "";
    display: block;
    width: 4px;
    height: 100%;
    background-color: #97C04A;
    position: absolute;
    top: 0;
    left: 0;
}

@media only screen and (max-width: 767px) {
    .entry h3:before {
        width: 2px;
    }
}

.entry h4 {
    border: 1px solid #97C04A;
    color: #97C04A;
    padding: 8px 20px;
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.5;
    margin-bottom: 40px;
}

@media only screen and (max-width: 767px) {
    .entry h4 {
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 20px;
        padding: 4px 12px;
    }
}

.entry h5 {
    font-size: 24px;
    font-size: 2.4rem;
    font-weight: 600;
    line-height: 1.5;
    color: #97c04a;
    margin-bottom: 40px;
}

@media only screen and (max-width: 767px) {
    .entry h5 {
        font-size: 18px;
        font-size: 1.8rem;
        margin-bottom: 20px;
    }
}

/* -----------------------------------------------------------------
*  Utility
*  ---------------------------------------------------------------*/

.u-ta_c {
    text-align: center !important;
}

.u-ta_l {
    text-align: left !important;
}

.u-ta_r {
    text-align: right !important;
}

.u-alpha {
    -ms-filter: "alpha(opacity=100)";
    filter: alpha(opacity=100);
    opacity: 1;
    transition: 0.4s opacity ease;
}

.u-alpha:hover {
    -ms-filter: "alpha( opacity=70 )";
    filter: alpha(opacity=70);
    opacity: 0.7;
}

.u-clearfix:before,
.u-clearfix:after {
    content: " ";
    display: table;
}

.u-clearfix:after {
    clear: both;
}

.u-visible_xs,
.u-visible_lg {
    display: none !important;
}

.u-visible_xs_block,
.u-visible_xs_inline,
.u-visible_xs_inline-block,
.u-visible_lg_block,
.u-visible_lg_inline,
.u-visible_lg_inline-block {
    display: none !important;
}

@media only screen and (max-width: 767px) {
    .u-visible_xs {
        display: block !important;
    }
    table.u-visible_xs {
        display: table !important;
    }
    tr.u-visible_xs {
        display: table-row !important;
    }
    th.u-visible_xs,
    td.u-visible_xs {
        display: table-cell !important;
    }
}

@media only screen and (max-width: 767px) {
    .u-visible_xs_block {
        display: block !important;
    }
}

@media only screen and (max-width: 767px) {
    .u-visible_xs_inline {
        display: inline !important;
    }
}

@media only screen and (max-width: 767px) {
    .u-visible_xs_inline-block {
        display: inline-block !important;
    }
}

@media only screen and (min-width: 768px) {
    .u-visible_lg {
        display: block !important;
    }
    table.u-visible_lg {
        display: table !important;
    }
    tr.u-visible_lg {
        display: table-row !important;
    }
    th.u-visible_lg,
    td.u-visible_lg {
        display: table-cell !important;
    }
}

@media only screen and (min-width: 768px) {
    .u-visible_lg_block {
        display: block !important;
    }
}

@media only screen and (min-width: 768px) {
    .u-visible_lg_inline {
        display: inline !important;
    }
}

@media only screen and (min-width: 768px) {
    .u-visible_lg_inline-block {
        display: inline-block !important;
    }
}

@media only screen and (max-width: 767px) {
    .u-hidden_xs {
        display: none !important;
    }
}

@media only screen and (min-width: 768px) {
    .u-hidden_lg {
        display: none !important;
    }
}

.u-noEvent {
    pointer-events: none;
}

.u-fw_normal {
    font-weight: normal !important;
}

.u-fw_bold {
    font-weight: bold !important;
}

.u-fs_normal {
    font-style: normal !important;
}

.u-fs_italic {
    font-style: italic !important;
}

.u-m_auto {
    margin-left: auto !important;
    margin-right: auto !important;
}

.u-m_00 {
    margin: 0 !important;
}

.u-m_05 {
    margin: 5px !important;
}

.u-m_10 {
    margin: 10px !important;
}

.u-m_15 {
    margin: 15px !important;
}

.u-m_20 {
    margin: 20px !important;
}

.u-m_25 {
    margin: 25px !important;
}

.u-m_30 {
    margin: 30px !important;
}

.u-m_35 {
    margin: 35px !important;
}

.u-m_40 {
    margin: 40px !important;
}

.u-m_45 {
    margin: 45px !important;
}

.u-m_50 {
    margin: 50px !important;
}

.u-mt_00 {
    margin-top: 0 !important;
}

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

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

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

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

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

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

.u-mt_35 {
    margin-top: 35px !important;
}

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

.u-mt_45 {
    margin-top: 45px !important;
}

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

.u-mb_00 {
    margin-bottom: 0 !important;
}

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

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

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

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

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

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

.u-mb_35 {
    margin-bottom: 35px !important;
}

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

.u-mb_45 {
    margin-bottom: 45px !important;
}

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

.u-ml_00 {
    margin-left: 0 !important;
}

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

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

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

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

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

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

.u-ml_35 {
    margin-left: 35px !important;
}

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

.u-ml_45 {
    margin-left: 45px !important;
}

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

.u-mr_00 {
    margin-right: 0 !important;
}

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

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

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

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

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

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

.u-mr_35 {
    margin-right: 35px !important;
}

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

.u-mr_45 {
    margin-right: 45px !important;
}

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

.u-mb_lv01 {
    margin-bottom: 10px;
}

@media only screen and (max-width: 767px) {
    .u-mb_lv01 {
        margin-bottom: 5px;
    }
}

.u-mb_lv02 {
    margin-bottom: 20px;
}

@media only screen and (max-width: 767px) {
    .u-mb_lv02 {
        margin-bottom: 10px;
    }
}

.u-mb_lv03 {
    margin-bottom: 30px;
}

@media only screen and (max-width: 767px) {
    .u-mb_lv03 {
        margin-bottom: 15px;
    }
}

.u-mb_lv04 {
    margin-bottom: 40px;
}

@media only screen and (max-width: 767px) {
    .u-mb_lv04 {
        margin-bottom: 20px;
    }
}

.u-mb_lv05 {
    margin-bottom: 50px;
}

@media only screen and (max-width: 767px) {
    .u-mb_lv05 {
        margin-bottom: 25px;
    }
}

.u-mb_lv06 {
    margin-bottom: 60px;
}

@media only screen and (max-width: 767px) {
    .u-mb_lv06 {
        margin-bottom: 30px;
    }
}

.u-mb_lv07 {
    margin-bottom: 70px;
}

@media only screen and (max-width: 767px) {
    .u-mb_lv07 {
        margin-bottom: 35px;
    }
}

.u-mb_lv08 {
    margin-bottom: 80px;
}

@media only screen and (max-width: 767px) {
    .u-mb_lv08 {
        margin-bottom: 40px;
    }
}

.u-mb_lv09 {
    margin-bottom: 90px;
}

@media only screen and (max-width: 767px) {
    .u-mb_lv09 {
        margin-bottom: 45px;
    }
}

.u-mb_lv10 {
    margin-bottom: 100px;
}

@media only screen and (max-width: 767px) {
    .u-mb_lv10 {
        margin-bottom: 50px;
    }
}

.u-p_00 {
    padding: 0 !important;
}

.u-p_05 {
    padding: 5px !important;
}

.u-p_10 {
    padding: 10px !important;
}

.u-p_15 {
    padding: 15px !important;
}

.u-p_20 {
    padding: 20px !important;
}

.u-p_25 {
    padding: 25px !important;
}

.u-p_30 {
    padding: 30px !important;
}

.u-p_35 {
    padding: 35px !important;
}

.u-p_40 {
    padding: 40px !important;
}

.u-p_45 {
    padding: 45px !important;
}

.u-p_50 {
    padding: 50px !important;
}

.u-pt_00 {
    padding-top: 0 !important;
}

.u-pt_05 {
    padding-top: 5px !important;
}

.u-pt_10 {
    padding-top: 10px !important;
}

.u-pt_15 {
    padding-top: 15px !important;
}

.u-pt_20 {
    padding-top: 20px !important;
}

.u-pt_25 {
    padding-top: 25px !important;
}

.u-pt_30 {
    padding-top: 30px !important;
}

.u-pt_35 {
    padding-top: 35px !important;
}

.u-pt_40 {
    padding-top: 40px !important;
}

.u-pt_45 {
    padding-top: 45px !important;
}

.u-pt_50 {
    padding-top: 50px !important;
}

.u-pb_00 {
    padding-bottom: 0 !important;
}

.u-pb_05 {
    padding-bottom: 5px !important;
}

.u-pb_10 {
    padding-bottom: 10px !important;
}

.u-pb_15 {
    padding-bottom: 15px !important;
}

.u-pb_20 {
    padding-bottom: 20px !important;
}

.u-pb_25 {
    padding-bottom: 25px !important;
}

.u-pb_30 {
    padding-bottom: 30px !important;
}

.u-pb_35 {
    padding-bottom: 35px !important;
}

.u-pb_40 {
    padding-bottom: 40px !important;
}

.u-pb_45 {
    padding-bottom: 45px !important;
}

.u-pb_50 {
    padding-bottom: 50px !important;
}

.u-pl_00 {
    padding-left: 0 !important;
}

.u-pl_05 {
    padding-left: 5px !important;
}

.u-pl_10 {
    padding-left: 10px !important;
}

.u-pl_15 {
    padding-left: 15px !important;
}

.u-pl_20 {
    padding-left: 20px !important;
}

.u-pl_25 {
    padding-left: 25px !important;
}

.u-pl_30 {
    padding-left: 30px !important;
}

.u-pl_35 {
    padding-left: 35px !important;
}

.u-pl_40 {
    padding-left: 40px !important;
}

.u-pl_45 {
    padding-left: 45px !important;
}

.u-pl_50 {
    padding-left: 50px !important;
}

.u-pr_00 {
    padding-right: 0 !important;
}

.u-pr_05 {
    padding-right: 5px !important;
}

.u-pr_10 {
    padding-right: 10px !important;
}

.u-pr_15 {
    padding-right: 15px !important;
}

.u-pr_20 {
    padding-right: 20px !important;
}

.u-pr_25 {
    padding-right: 25px !important;
}

.u-pr_30 {
    padding-right: 30px !important;
}

.u-pr_35 {
    padding-right: 35px !important;
}

.u-pr_40 {
    padding-right: 40px !important;
}

.u-pr_45 {
    padding-right: 45px !important;
}

.u-pr_50 {
    padding-right: 50px !important;
}

.u-position_relative {
    position: relative !important;
}

.u-position_abs {
    position: absolute !important;
}

.u-position_fixed {
    position: fixed !important;
}

.u-position_static {
    position: static !important;
}

.u-vertical_mid {
    vertical-align: middle !important;
}

.u-vertical_bottom {
    vertical-align: bottom !important;
}

.u-vertical_base {
    vertical-align: baseline !important;
}

.u-vertical_sup {
    vertical-align: super !important;
}

.u-vertical_sub {
    vertical-align: sub !important;
}

.u-vertical_tb {
    vertical-align: text-bottom !important;
}

.u-vertical_tt {
    vertical-align: text-top !important;
}

/* Slider */

.slick-slider {
    position: relative;
    display: block;
    box-sizing: border-box;
    -webkit-touch-callout: none;
    -webkit-user-select: none;
    -khtml-user-select: none;
    -moz-user-select: none;
    -ms-user-select: none;
    user-select: none;
    -ms-touch-action: pan-y;
    touch-action: pan-y;
    -webkit-tap-highlight-color: transparent;
}

.slick-list {
    position: relative;
    overflow: hidden;
    display: block;
    margin: 0;
    padding: 0;
}

.slick-list:focus {
    outline: none;
}

.slick-list.dragging {
    cursor: pointer;
    cursor: hand;
}

.slick-slider .slick-track,
.slick-slider .slick-list {
    transform: translate3d(0, 0, 0);
}

.slick-track {
    position: relative;
    left: 0;
    top: 0;
    display: block;
}

.slick-track:before,
.slick-track:after {
    content: "";
    display: table;
}

.slick-track:after {
    clear: both;
}

.slick-loading .slick-track {
    visibility: hidden;
}

.slick-slide {
    float: left;
    height: 100%;
    min-height: 1px;
    display: none;
}

[dir="rtl"] .slick-slide {
    float: right;
}

.slick-slide img {
    display: block;
}

.slick-slide.slick-loading img {
    display: none;
}

.slick-slide.dragging img {
    pointer-events: none;
}

.slick-initialized .slick-slide {
    display: block;
}

.slick-loading .slick-slide {
    visibility: hidden;
}

.slick-vertical .slick-slide {
    display: block;
    height: auto;
    border: 1px solid transparent;
}

.slick-arrow.slick-hidden {
    display: none;
}
