@charset "UTF-8";

/*-------------------------------------------------------------------

	Init

-------------------------------------------------------------------*/

html {
    font-size: 62.5%;
}

body {
    color: #333333;
    font-size: 1.3rem;
    line-height: 1.85;
    font-family: "Noto Sans Japanese", "游ゴシック体", "Yu Gothic", YuGothic, "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", sans-serif;
    font-weight: 400;
    letter-spacing: .04em;
    -webkit-text-size-adjust: 100%;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

@media all and (-ms-high-contrast: none) {
    /*IE 11*/
    body {
        font-family: "メイリオ", Meiryo, sans-serif !important;
    }
}

h1,
h2,
h3,
h4,
h5,
h6,
p,
ul,
ol,
dl,
dt,
dd,
figure {
    margin: 0;
    padding: 0;
}

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

h1,
h2,
h3,
h4,
h5,
h6 {
    line-height: 1.4;
    font-size: 1em;
}

address {
    font-style: inherit;
}

a {
    color: inherit;
    text-decoration: underline;
}

a:hover {
    text-decoration: none;
}

p {
    margin-bottom: 1em;
}

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

img {
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

img[src$=".svg"] {
    width: 100%;
    height: auto;
}

table {
    width: 100%;
    border-collapse: collapse;
    table-layout: fixed;
}

hr {
    border: none;
    height: 1px;
    background: #333333;
    margin-bottom: 1em;
}

div#ui-datepicker-div {
    z-index: 9999 !important;
}

* {
    box-sizing: border-box;
}


/*-------------------------------------------------------------------
	SP
-------------------------------------------------------------------*/

@media (max-width: 767px) {
    html {
        font-size: 2.66vw;
    }
}


/*-------------------------------------------------------------------
	PC
-------------------------------------------------------------------*/

@media (min-width: 768px) {
    body {
        font-size: 1.8rem;
        font-weight: 300;
    }
    .button-zoom {
        transition: all 0.2s ease-out;
    }
    .button-zoom:hover {
        -webkit-transform: scale(1.06, 1.06);
        transform: scale(1.06, 1.06);
    }
    .callbtn a {
        cursor: default;
    }
}


/*-------------------------------------------------------------------

	Common layout

-------------------------------------------------------------------*/

.bread-crumb {
    margin-bottom: 2em;
    font-size: 10px;
    font-size: 1rem;
    line-height: 1.4;
}

.bread-crumb li {
    display: inline-block;
    margin-bottom: .5em;
}

.bread-crumb li::after {
    content: "／";
    display: inline-block;
    margin: 0 1em;
}

.bread-crumb li:last-child::after {
    display: none;
}

.bread-crumb li a {
    color: inherit;
}

.bread-crumb li:last-child a {
    text-decoration: none;
}

.bread-crumb li .fa-home {
    margin-right: .5em;
}


/*-------------------------------------------------------------------

	Common parts

-------------------------------------------------------------------*/

[class^="icon-"],
[class*=" icon-"] {
    /* use !important to prevent issues with browser extensions that change fonts */
    font-family: 'icomoon' !important;
    speak: never;
    font-style: normal;
    font-weight: normal;
    font-variant: normal;
    text-transform: none;
    line-height: 1;
}

.icon-close:before {
    content: "\e901";
}

.icon-arrow-down:before {
    content: "\e900";
}

.icon-clone:before {
    content: "\e902";
}

.icon-insta:before {
    content: "\e903";
}

@media (min-width: 768px) {
    /*button-zoom*/
    .button-zoom {
        transition: all 0.2s ease-out;
    }
    .button-zoom:hover {
        -webkit-transform: scale(1.06, 1.06);
        transform: scale(1.06, 1.06);
    }
}


/*-------------------------------------------------------------------
	Common parts PC
-------------------------------------------------------------------*/

@media (min-width: 768px) {
    /*button-zoom*/
    .button-zoom {
        transition: all 0.2s ease-out;
    }
    .button-zoom:hover {
        -webkit-transform: scale(1.06, 1.06);
        transform: scale(1.06, 1.06);
    }
}


/*-------------------------------------------------------------------

	Animation

-------------------------------------------------------------------*/

.a-hidden {
    opacity: 0;
    visibility: hidden;
}


/*my-fadeInUp*/

@-webkit-keyframes my-fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 40px, 0);
        transform: translate3d(0, 40px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes my-fadeInUp {
    from {
        opacity: 0;
        -webkit-transform: translate3d(0, 40px, 0);
        transform: translate3d(0, 40px, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

.my-fadeInUp {
    -webkit-animation-name: my-fadeInUp;
    animation-name: my-fadeInUp;
}


/*my-fadeInLeft*/

@-webkit-keyframes my-fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100px, 0, 0);
        transform: translate3d(-100px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes my-fadeInLeft {
    from {
        opacity: 0;
        -webkit-transform: translate3d(-100px, 0, 0);
        transform: translate3d(-100px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

.my-fadeInLeft {
    -webkit-animation-name: my-fadeInLeft;
    animation-name: my-fadeInLeft;
}


/*my-fadeInRight*/

@-webkit-keyframes my-fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100px, 0, 0);
        transform: translate3d(100px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

@keyframes my-fadeInRight {
    from {
        opacity: 0;
        -webkit-transform: translate3d(100px, 0, 0);
        transform: translate3d(100px, 0, 0);
    }
    to {
        opacity: 1;
        -webkit-transform: none;
        transform: none;
    }
}

.my-fadeInRight {
    -webkit-animation-name: my-fadeInRight;
    animation-name: my-fadeInRight;
}


/*---------------basic fade---------------*/


/*fast*/

.a-fade-in {
    -webkit-animation-name: fade-in;
    -webkit-animation-duration: .5s;
    -webkit-animation-timing-function: ease-in;
    -webkit-animation-iteration-count: 1;
    animation-name: fade-in;
    animation-duration: .5s;
    animation-timing-function: ease-in;
    animation-iteration-count: 1;
}

@-webkit-keyframes fade-in {
    0% {
        opacity: 0;
        visibility: hidden;
    }
    100% {
        opacity: 1;
        visibility: visible;
    }
}

@keyframes fade-in {
    0% {
        opacity: 0;
        visibility: hidden;
    }
    100% {
        opacity: 1;
        visibility: visible;
    }
}


/*slow*/

.a-fade-in-slow {
    -webkit-animation-name: fade-in-slow;
    -webkit-animation-duration: 3s;
    -webkit-animation-timing-function: ease-in;
    -webkit-animation-iteration-count: 1;
    animation-name: fade-in-slow;
    animation-duration: 1s;
    animation-timing-function: ease-in;
    animation-iteration-count: 1;
}

@-webkit-keyframes fade-in-slow {
    0% {
        opacity: 0;
        visibility: hidden;
    }
    100% {
        opacity: 1;
        visibility: visible;
    }
}

@keyframes fade-in-slow {
    0% {
        opacity: 0;
        visibility: hidden;
    }
    100% {
        opacity: 1;
        visibility: visible;
    }
}