@charset "UTF-8";


/* header
------------------------------------------------- */
.hbg #header .logo {
    background: url("../common/img/logo_yoko_bk.png") center top no-repeat;
    background-size: 100% auto;
}
.hbg #header .logo img {
    opacity: 0;
}


/* mainvisual
------------------------------------------------- */
.mainvisual {
    width: 100%;
    height: 35.5em;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: 5em;
}
.mainvisual h1 {
    font-weight: 400;
    color: #fff;
    text-align: center;
}
.mainvisual h1 span {
    display: block;
    font-weight: 400;
    line-height: 1.75;
    letter-spacing: 0.1em;
    padding-top: 1em;
}
@media only screen and (max-width:750px){
.mainvisual {
    height: 82.4vw;
    margin-bottom: 10.5vw;
}
.mainvisual h1 {
    font-size: 2.8vw;
}
.mainvisual h1 span {
    font-size: 7.2533vw;
    line-height: 1.5;
    padding-top: 0.2em;
}
}


/* about
------------------------------------------------- */
/* .mainvisual */
.about .mainvisual {
    background-image: url("../img/about/mainvisual.webp");
    margin-bottom: 6em;
}
@media only screen and (max-width:750px){
.about .mainvisual {
    background-image: url("../img/about/mainvisual_sp.webp");
    margin-bottom: 8.5vw;
}
}

/* .cont1 */
.about .cont1 {
    padding-bottom: 7.2em;
}
.about .cont1 .con {
    width: 50.833%;
    margin-left: 2.8125em;
}
.about .cont1 .con p {
    width: 36.5em;
    margin-bottom: 4.5em;
}
.about .cont1 .photo {
    width: 33.5833%;
    margin: 2em 4em 0 0;
    position: relative;
}
.about .cont1 .photo .photo3 {
    width: 25.875em;
    max-width: inherit;
    position: absolute;
    left: 6.5625em;
    top: 31.875em;
}
@media only screen and (max-width:750px){
.about .cont1 {
    padding-bottom: 53.33vw;
}
.about .cont1 .con {
    width: 100%;
    margin-left: 0;
}
.about .cont1 .con p {
    width: 100%;
    margin-bottom: 6.5vw;
}
.about .cont1 .photo {
    width: 69.466vw;
    margin: 6.933vw 0 0 7.6vw;
}
.about .cont1 .photo .photo3 {
    width: 70.133vw;
    left: 12.533vw;
    top: 92.133vw;
}
}

/* .cont2 */
.about .cont2 {
    padding: 5.5em 0 6.875em;
}
.about .cont2 .inner {
    margin-top: 7.1875em;
}
.about .cont2 .con {
    width: 37.5%;
    margin-left: 3.125em;
}
.about .cont2 .photo {
    width: 31.166%;
    margin-right: 16.625em;
    position: relative;
}
.about .cont2 .photo .photo3 {
    width: 23.3125em;
    max-width: inherit;
    position: absolute;
    left: 19.1875em;
    top: 10.625em;
}
@media only screen and (max-width:750px){
.about .cont2 {
    padding: 13.33vw 0 15.33vw;
}
.about .cont2 .photo1 {
    width: auto;
    max-width: inherit;
    height: 78.8vw;
    margin-left: -25.964vw;
}
.about .cont2 .inner {
    margin-top: 13.33vw;
}
.about .cont2 .con {
    width: 100%;
    margin: 0 0 8vw;
}
.about .cont2 .photo {
    width: 50vw;
    margin: 0 0 0 -1.33vw;
}
.about .cont2 .photo .photo3 {
    width: 50vw;
    left: 40.933vw;
    top: 22.66vw;
}
}

/* .cont3 */
.about .cont3 {
    padding: 0 0 6.25em;
}
.about .cont3 .inner {
    margin-top: 8.25em;
}
.about .cont3 .con {
    width: 39.166%;
    margin: 1.5em 0 0;
}
.about .cont3 .con p {
    width: 27.5em;
    margin-bottom: 1.5em;
}
.about .cont3 .con img {
    width: 26.4375em;
    max-width: inherit;
    margin: 2.5em 0 0 4em;
}
.about .cont3 .photo {
    width: 45.4166%;
    margin: 0 0 0 4.1875em;
    position: relative;
}
.about .cont3 .photo img {
    position: relative;
    z-index: 2;
}
.about .cont3 .photo .photo4 {
    width: 25.5em;
    max-width: inherit;
    position: absolute;
    left: -4.1875em;
    top: 21.6875em;
    z-index: 1;
}
@media only screen and (max-width:750px){
.about .cont3 {
    padding: 0 0 15.33vw;
}
.about .cont3 .photo1 {
    height: 72.66vw;
    margin-left: -30vw;
}
.about .cont3 .inner {
    margin-top: 11vw;
}
.about .cont3 .con {
    width: 100%;
    margin: 0 0 0;
}
.about .cont3 .con p {
    width: 95%;
    margin-bottom: 1em;
}
.about .cont3 .con img {
    width: 100%;
    margin: 139vw 0 0;
}
.about .cont3 .photo {
    width: 100%;
    margin: 0;
    position: absolute;
    left: 0;
    bottom: 58.33vw;
}
.about .cont3 .photo img {
    margin-bottom: 5.33vw;
}
.about .cont3 .photo .photo4 {
    width: 100%;
    position: static;
}
}

/* .cont4 */
.about .cont4 {
    padding: 0 0 19em;
}
.about .cont4 .inner {
    margin-top: 6.25em;
}
.about .cont4 .con {
    width: 38.33%;
    margin: 7em 0 0 2.5em;
}
.about .cont4 .con p {
    margin-bottom: 1.5em;
}
.about .cont4 .photo {
    width: 41.66%;
    margin: 0;
    position: relative;
}
.about .cont4 .photo .photo3 {
    width: 20.875em;
    position: absolute;
    left: -12.125em;
    top: 17.5em;
}
.about .cont4 .photo .photo4 {
    width: 21.5625em;
    position: absolute;
    left: 15.5625em;
    top: 20.8125em;
}
@media only screen and (max-width:750px){
.about .cont4 {
    padding: 0 0 45vw;
}
.about .cont4 .photo1 {
    height: 72.66vw;
    margin-left: -20vw;
}
.about .cont4 .inner {
    margin-top: 13.866vw;
}
.about .cont4 .con {
    width: 100%;
    margin: 0 0 11.33vw;
}
.about .cont4 .con .headline2 {
    font-size: 6.4vw;
    margin-bottom: 0.25em;
}
.about .cont4 .con p {
    margin-bottom: 1em;
}
.about .cont4 .photo {
    width: 66.933vw;
    margin: 0 0 0 18.533vw;
}
.about .cont4 .photo .photo3 {
    width: 43.2vw;
    left: -24.533vw;
    top: 37.33vw;
}
.about .cont4 .photo .photo4 {
    width: 45.33vw;
    left: 30.4vw;
    top: 46vw;
}
}

/* .map */
.about .map {
    width: 100%;
    margin: 5.5em 0 4.125em;
    text-align: center;
}
.about .map .gmap {
    width: 100%;
    height: 40em;
    position: relative;
    filter: grayscale(1);
}
.about .map .gmap iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}
.about .map address {
    line-height: 1.6;
    padding: 2em 0 1.25em;
}
@media only screen and (max-width:750px){
.about .map {
    margin: 15vw 0 17.066vw;
}
.about .map .gmap {
    height: 83.33vw;
}
.about .map address {
    font-size: 2.8vw;
    line-height: 1.57;
    padding: 2.75em 0 1.25em;
}
}


/* room
------------------------------------------------- */
/* .mainvisual */
.room .mainvisual {
    background-image: url("../img/room/mainvisual.webp");
    margin-bottom: 4em;
}
@media only screen and (max-width:750px){
.room .mainvisual {
    background-image: url("../img/room/mainvisual_sp.webp");
    margin-bottom: 8vw;
}
}

/* .cont1 */
.room .cont1 {
    padding-bottom: 5em;
}
.room .cont1 h2 {
    text-align: center;
}
.room .cont1 p {
    text-align: center;
    padding-bottom: 3em;
}
.room .cont1 ul li {
    width: 19.166%;
}
.room .cont1 ul li a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.room .cont1 ul li a::before {
    content: '';
    width: 100%;
    height: 0;
    background-color: rgba(0,0,0,0.4);
    position: absolute;
    left: 0;
    top: 0;
    transition: 0.4s;
}
.room .cont1 ul li a h3 {
    width: 2.2em;
    height: 100%;
    line-height: 2.2;
    letter-spacing: 0.1em;
    color: #fff;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    padding-top: 1.5em;
    display: flex;
    align-items: center;
    text-align: center;
    position: absolute;
    right: 0.4em;
    top: 0;
    box-sizing: border-box;
    z-index: 2;
}
@media only screen and (min-width:751px){
.room .cont1 ul li a:hover::before {
    height: 100%;
}
}
@media only screen and (max-width:750px){
.room .cont1 {
    padding-bottom: 10.933vw;
}
.room .cont1 h2 {
    font-size: 4.777vw;
    line-height: 1.6;
    text-align: left;
}
.room .cont1 p {
    text-align: left;
    padding-bottom: 1.75em;
}
.room .cont1 ul {
    display: flex;
    flex-wrap: wrap;
}
.room .cont1 ul li {
    width: 48.25%;
    margin-bottom: 3vw;
}
.room .cont1 ul li a h3 {
    font-size: 3.466vw;
    width: 5.733vw;
    line-height: 5.733vw;
    letter-spacing: 0.05em;
    right: 1.6vw;
    padding-top: 1em;
}
}

/* .cont2 */
.room .cont2 {
    padding-bottom: 6.25em;
}
.room .cont2 h3 {
    padding-left: 1.6em;
    line-height: 1.5;
    margin-bottom: 1.75em;
    position: relative;
    transition: 0.4s;
}
.room .cont2 h3::before {
    content: '';
    width: 1em;
    height: 0.055em;
    background-color: #000;
    position: absolute;
    left: 0;
    top: 0.75em;
}
.room .cont2 h3 span {
    display: block;
}
.room .cont2 .copy {
    line-height: 2.05;
    padding: 2.45em 0;
}
.room .cont2 dl {
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 0.8em 0;
    margin-bottom: 2em;
}
.room .cont2 dl dt {
    background: url("../common/img/plus_room.png") 0.215em center no-repeat;
    background-size: 1.0714em auto;
    padding-left: 2.4em;
    cursor: pointer;
}
.room .cont2 dl dt.is-open {
    background-image: url("../common/img/minus_room.png");
}
.room .cont2 dl dd {
    display: none;
}
.room .cont2 dl dd .box {
    padding: 1em 0 0 2.1em;
}
.room .cont2 .btn {
    display: flex;
    justify-content: flex-end;
}
.room .cont2 .btn a {
    display: block;
    width: 12.5em;
}
.room .cont2 .swiper .swiper-button-next,
.room .cont2 .swiper .swiper-button-prev {
    width: 50%;
    height: 100%;
    left: 0;
    top: 0;
    margin: 0;
}
.room .cont2 .swiper .swiper-button-next {
    left: auto;
    right: 0;
}
.room .cont2 .swiper .swiper-button-next::after,
.room .cont2 .swiper .swiper-button-prev::after {
    content: '';
    font-size: 16px;
    width: 2.625em;
    height: 2.625em;
    background: url("../img/room/prev.webp") center center no-repeat;
    background-size: 100% auto;
    position: absolute;
    left: 1.625em;
    top: 50%;
    margin-top: -1.3125em;
    opacity: 0;
    transition: 0.4s;
}
.room .cont2 .swiper .swiper-button-next::after {
    background-image: url("../img/room/next.webp");
    left: auto;
    right: 1.625em;
}
.room .cont2 .swiper-pagination {
    width: auto;
    height: auto;
    left: auto;
    bottom: auto;
    right: 5.1875em;
    top: 47.875em;
}
.room .cont2 .swiper-pagination .swiper-pagination-bullet {
    width: 0.75rem;
    height: 0.75rem;
    background-color: #fff;
    border: 1px solid #000;
    border-radius: 0;
    margin: 0 0 0 1rem;
    box-sizing: border-box;
    opacity: 1;
    transition: 0.4s;
}
.room .cont2 .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
    background-color: #000;
}
@media only screen and (min-width:751px){
.room .cont1 ul li a:hover::before {
    height: 100%;
}
.room .cont2 .swiper .swiper-button-next:hover::after,
.room .cont2 .swiper .swiper-button-prev:hover::after {
    opacity: 1;
}
.room .cont2 .swiper-pagination .swiper-pagination-bullet:hover {
    background-color: #000;
}
}
@media only screen and (min-width:751px) and (max-width:1366px){
.room .cont2 .swiper .swiper-button-next::after,
.room .cont2 .swiper .swiper-button-prev::after {
    font-size: 1.1713vw;
}
}
@media only screen and (max-width:750px){
.room .cont2 {
    padding-bottom: 17.33vw;
}
.room .cont2 h3 {
    font-size: 4.072vw;
    margin-bottom: 1.5em;
}
.room .cont2 h3 span {
    font-size: 2.3866vw;
    padding-top: 0.25em;
}
.room .cont2 .copy {
    font-size: 3.077vw;
    padding: 3.5em 0 2em;
}
.room .cont2 dl {
    margin-bottom: 8.8vw;
}
.room .cont2 dl dt {
    font-size: 2.8vw;
}
.room .cont2 dl dd .box {
    padding: 0.75em 0 0 2.2em;
}
.room .cont2 dl dd .box p {
    font-size: 2.8vw;
}
.room .cont2 .btn {
    justify-content: center;
}
.room .cont2 .btn a {
    width: 51.066vw;
}
.room .cont2 .swiper {
    width: 100vw;
    margin-left: -6vw;
}
.room .cont2 .swiper .swiper-button-next,
.room .cont2 .swiper .swiper-button-prev {
    width: 20%;
}
.room .cont2 .swiper .swiper-button-next::after,
.room .cont2 .swiper .swiper-button-prev::after {
    display: none;
}
.room .cont2 .swiper-pagination {
    left: 0;
    bottom: auto;
    right: auto;
    top: 73.5vw;
}
.room .cont2 .swiper-pagination .swiper-pagination-bullet {
    width: 2.66vw;
    height: 2.66vw;
    margin: 0 2.133vw 0 0;
}
}

/* gayu-an */
.room #gayu-an {
    margin: 0 auto 5.125em;
}
@media only screen and (max-width:750px){
.room #gayu-an {
    margin: 0 auto 15vw;
}
}


/* cuisine
------------------------------------------------- */
/* .mainvisual */
.cuisine .mainvisual {
    background-image: url("../img/cuisine/mainvisual.webp");
}
@media only screen and (max-width:750px){
.cuisine .mainvisual {
    background-image: url("../img/cuisine/mainvisual_sp.webp");
}
}

/* .cont1 */
.cuisine .cont1 {
    padding-bottom: 5.375em;
}
.cuisine .cont1 .headline1 {
    text-align: center;
    margin-bottom: 1em;
}
.cuisine .cont1 p {
    width: 47em;
    text-align: center;
    margin: 0 auto 2.65em;
}
.cuisine .cont1 .photo li {
    width: 49%;
    margin-bottom: 1.625em;
}
.cuisine .cont1 h3 {
    text-align: center;
    padding: 1em 0 0.5em;
}
.cuisine .cont1 .dinner li {
    width: 23.66%;
}
.cuisine .cont1 .dinner li a {
    display: block;
    width: 100%;
    height: 100%;
    position: relative;
}
.cuisine .cont1 .dinner li a h4 {
    width: 2.2em;
    height: 100%;
    background-color: rgba(0,0,0,0.8);
    line-height: 2.2;
    letter-spacing: 0.1em;
    color: #fff;
    -ms-writing-mode: tb-rl;
    writing-mode: vertical-rl;
    padding-top: 1em;
    display: flex;
    align-items: center;
    text-align: center;
    position: absolute;
    right: 0.4em;
    top: 0;
    box-sizing: border-box;
}
@media only screen and (max-width:750px){
.cuisine .cont1 {
    padding-bottom: 10.66vw;
}
.cuisine .cont1 .headline1 {
    font-size: 5.5626vw;
    text-align: left;
    margin-bottom: 0.5em;
}
.cuisine .cont1 p {
    width: 100%;
    text-align: left;
    margin-bottom: 8vw;
}
.cuisine .cont1 .photo li {
    width: 100%;
    margin-bottom: 6.4vw;
}
.cuisine .cont1 h3 {
    font-size: 6.4vw;
    padding: 0.75em 0 0.5em;
}
.cuisine .cont1 .dinner {
    display: flex;
    flex-wrap: wrap;
}
.cuisine .cont1 .dinner li {
    width: 48.49%;
    margin-bottom: 2.66vw;
}
.cuisine .cont1 .dinner li a h4 {
    font-size: 2.8186vw;
    width: 5.733vw;
    line-height: 5.733vw;
    letter-spacing: 0.05em;
    right: 1.6vw;
    padding-top: 1.5em;
}
}

/* .cont2 */
.cuisine .cont2 {
    background-color: #000;
    color: #fff;
    padding: 4.5em 0 4.25em;
}
.cuisine .cont2 .con {
    width: 64.5%;
}
.cuisine .cont2 h3 {
    line-height: 1.5;
}
.cuisine .cont2 h3 span {
    padding-right: 1em;
}
.cuisine .cont2 h4 {
    padding: 0.25em 0;
}
.cuisine .cont2 p {
    line-height: 1.95;
    padding-bottom: 1.95em;
}
.cuisine .cont2 .photo {
    width: 28.66%;
    margin-right: 0.75em;
}
@media only screen and (max-width:750px){
.cuisine .cont2 {
    padding: 9.33vw 0 11vw;
}
.cuisine .cont2 .con {
    width: 100%;
}
.cuisine .cont2 h3 {
    font-size: 2.8vw;
}
.cuisine .cont2 h3 span {
    font-size: 6vw;
    padding-right: 0.75em;
}
.cuisine .cont2 h4 {
    font-size: 4.7773vw;
    padding: 0.25em 0 0.4em;
}
.cuisine .cont2 p {
    font-size: 3.07733vw;
    padding-bottom: 0;
}
.cuisine .cont2 .txt {
    font-size: 2.8vw;
    line-height: 1.75;
    padding: 106vw 0 0;
}
.cuisine .cont2 .photo {
    width: 100%;
    margin: 0;
    position: absolute;
    left: 0;
    bottom: 25vw;
}
}

/* .cont3 */
.cuisine .cont3 {
    padding: 6.5625em 0 4.375em;
}
.cuisine .cont3 .con {
    width: 39%;
    margin: 0 0 4.5em 1.5em;
}
.cuisine .cont3 h3 {
    padding-bottom: 0.25em;
}
.cuisine .cont3 .photo {
    width: 36.833%;
    height: 31.125em;
    margin-right: 6.5625em;
    position: relative;
}
.cuisine .cont3 .photo img {
    position: relative;
    z-index: 2;
}
.cuisine .cont3 .photo .photo2 {
    width: 20.6875em;
    max-width: inherit;
    position: absolute;
    left: -4.3125em;
    bottom: 0;
    z-index: 1;
}
.cuisine .cont3 .photo .photo3 {
    width: 21em;
    max-width: inherit;
    position: absolute;
    left: 22.875em;
    top: 11.625em;
    z-index: 1;
}
@media only screen and (max-width:750px){
.cuisine .cont3 {
    padding: 10vw 0 68.533vw;
}
.cuisine .cont3 .con {
    width: 100%;
    margin: 0 0 6vw;
}
.cuisine .cont3 h3 {
    font-size: 4.777vw;
    padding-bottom: 0.5em;
}
.cuisine .cont3 .photo {
    width: 100%;
    height: auto;
    margin-right: 0;
}
.cuisine .cont3 .photo .photo2 {
    width: 44.133vw;
    left: 3.33vw;
    bottom: auto;
    top: 79.866vw;
    z-index: 2;
}
.cuisine .cont3 .photo .photo3 {
    width: 52.266vw;
    left: auto;
    right: -7.5vw;
    top: 64.66vw;
}
}


/* sports-wellness
------------------------------------------------- */
/* .mainvisual */
.sports-wellness .mainvisual {
    background-image: url("../img/wellness-activity/mainvisual.webp");
    margin-bottom: 4em;
}
@media only screen and (max-width:750px){
.sports-wellness .mainvisual {
    background-image: url("../img/wellness-activity/mainvisual_sp.webp");
    margin-bottom: 9vw;
}
.sports-wellness .mainvisual h1 {
    padding-top: 4.5em;
}
}

/* .cont1 */
.sports-wellness .cont1 {
    padding-bottom: 3.75em;
}
.sports-wellness .cont1 p {
    line-height: 1.85;
    text-align: center;
}
@media only screen and (max-width:750px){
.sports-wellness .cont1 {
    padding-bottom: 11.33vw;
}
.sports-wellness .cont1 p {
    text-align: left;
}
}

/* .cont2 */
.sports-wellness .cont2.gayu {
    padding-bottom: 6.25em;
}
.sports-wellness .cont2 .con {
    width: 37.5%;
    margin-right: 1.25em;
}
.sports-wellness .cont2 .con .headline2 {
    letter-spacing: 0.07em;
}
.sports-wellness .cont2 .con p {
    line-height: 1.85;
    padding-bottom: 1.85em;
}
.sports-wellness .cont2 .photo {
    width: 50vw;
    margin-left: calc(37.5em - 50cqw);
}
.sports-wellness .cont2 .f-rev .photo {;
    margin: 0 calc(37.5em - 50cqw) 0 0;
}
@media only screen and (max-width:750px){
.sports-wellness .cont2.gayu {
    padding-bottom: 0;
}
.sports-wellness .cont2 .con {
    width: 100%;
    margin: 8vw 0 16.5vw;
}
.sports-wellness .cont2 .con .headline2 {
    font-size: 6.4vw;
    margin-bottom: 0.35em;
}
.sports-wellness .cont2 .con p {
    line-height: 1.85;
    padding-bottom: 1.85em;
}
.sports-wellness .cont2.gayu .con p.fo13 {
    font-size: 2.77vw;
}
.sports-wellness .cont2 .photo {
    width: 100vw;
    margin-left: -6vw;
}
.sports-wellness .cont2 .f-rev .photo {
    margin: 0 0 0 -6vw;
}
}

/* gayu-an */
.sports-wellness #gayu-an {
    margin: 4.875em auto;
}
@media only screen and (max-width:750px){
.sports-wellness #gayu-an {
    margin: 17.33vw auto;
}
}


/* gayu-an
------------------------------------------------- */
/* .mainvisual */
.gayu-an .mainvisual {
    background-image: url("../img/gayu-an/mainvisual.webp");
}
@media only screen and (max-width:750px){
.gayu-an .mainvisual {
    background-image: url("../img/gayu-an/mainvisual_sp.webp");
    margin-bottom: 8vw;
}
}

/* .cont1 */
.gayu-an .cont1 {
    padding-bottom: 3.5em;
}
.gayu-an .cont1 .headline1 {
    text-align: center;
    margin-bottom: 1.35em;
}
.gayu-an .cont1 p {
    text-align: center;
    padding: 2.65em 0 3.65em;
}
.gayu-an .cont1 ul li {
    width: 48.913%;
    margin-bottom: 1.5625em;
}
@media only screen and (max-width:750px){
.gayu-an .cont1 {
    padding-bottom: 9.33vw;
}
.gayu-an .cont1 .headline1 {
    font-size: 5.377vw;
    text-align: left;
    margin-bottom: 1.25em;
}
.gayu-an .cont1 .headline1 span {
    padding-bottom: 0.4em;
}
.gayu-an .cont1 .photo {
    width: 100vw;
    margin-left: -6vw;
}
.gayu-an .cont1 p {
    text-align: left;
    padding: 2.25em 0 2.75em;
}
.gayu-an .cont1 ul li {
    width: 100%;
    margin-bottom: 6vw;
}
}

/* .movie */
.gayu-an .movie {
    margin-bottom: 5em;
}
@media only screen and (max-width:750px){
.gayu-an .movie {
    margin-bottom: 15vw;
}  
}


/* access
------------------------------------------------- */
/* .mainvisual */
.access .mainvisual {
    height: 38.3125em;
    background-image: url("../img/access/mainvisual.jpg");
    margin-bottom: 5.25em;
}
@media only screen and (max-width:750px){
.access .mainvisual {
    height: 82.4vw;
    background-image: url("../img/access/mainvisual_sp.jpg");
    margin-bottom: 6.8vw;
}
.access .mainvisual h1 {
    padding-top: 2.25em;
}
}

/* .cont1 */
.access .cont1 {
    padding-bottom: 4.6875em;
}
.access .cont1 .inner {
    padding: 0 10.5em;
}
.access .cont1 .gmap {
    width: 100%;
    height: 39em;
    position: relative;
    filter: grayscale(1);
}
.access .cont1 .gmap iframe {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
}
.access .cont1 address {
    line-height: 1.6;
    padding: 2em 0 1.25em;
    text-align: center;
}
@media only screen and (max-width:750px){
.access .cont1 {
    padding-bottom: 15.33vw;
}
.access .cont1 .inner {
    padding: 0;
}
.access .cont1 .gmap {
    height: 90.4vw;
}
.access .cont1 address {
    font-size: 2.8vw;
    line-height: 1.57;
    padding: 2.75em 0 1.25em;
}
}

/* .cont2 */
.access .cont2 {
    padding-bottom: 4.6875em;
}
.access .cont2 .inner {
    padding: 0 10.5em;
}
.access .cont2 .headline2 {
    text-align: center;
    margin-bottom: 1.35em;
}
.access .cont2 table {
    width: 100%;
}
.access .cont2 table th,
.access .cont2 table td {
    font-weight: 400;
    text-align: left;
    vertical-align: top;
    padding: 1.25em 0;
    border-top: 1px solid #797979;
    border-bottom: 1px solid #797979;
}
.access .cont2 table th {
    width: 29%;
}
@media only screen and (max-width:750px){
.access .cont2 {
    padding-bottom: 15.33vw;
}
.access .cont2 .inner {
    padding: 0;
}
.access .cont2 .headline2 {
    margin-bottom: 0.75em;
}
.access .cont2 table {
    width: 100%;
}
.access .cont2 table th,
.access .cont2 table td {
    display: block;
    padding: 0 0 1.25em;
    border-top: none;
    border-bottom: 1px solid #797979;
    line-height: 1.85;
}
.access .cont2 table th {
    width: 100%;
    border-bottom: none;
    padding: 1em 0 0.5em;
}
.access .cont2 table tr:first-child th {
    border-top: 1px solid #797979;
}
.access .cont2 table th span {
    font-size: 3.466vw;
}
}



/* contact, thanks
------------------------------------------------- */
/* .mainvisual */
.contact .mainvisual,
.thanks .mainvisual {
    height: 38.3125em;
    background-image: url("../img/contact/mainvisual.jpg");
    margin-bottom: 2.8125em;
}
@media only screen and (max-width:750px){
.contact .mainvisual,
.thanks .mainvisual {
    height: 82.4vw;
    background-image: url("../img/contact/mainvisual_sp.jpg");
    margin-bottom: 8vw;
}
}

/* .cont1 */
.contact .cont1,
.thanks .cont1 {
    padding-bottom: 5em;
}
.contact .cont1 h2,
.thanks .cont1 h2 {
    text-align: center;
    padding-bottom: 3em;
}
.contact .cont1 table {
    width: 42.5em;
    margin: 0 auto;
}
.contact .cont1 table td {
    padding-bottom: 1em;
}
.contact .cont1 table td.spacer {
    width: 1em;
}
.contact .cont1 .btn li {
    width: 42.5em;
    margin: 0 auto;
    text-align: center;
}
.contact .cont1 .wpcf7-not-valid-tip {
    font-size: 14px;
}
.contact .cont1 .wpcf7-spinner {
    margin-top: 0.5em;
}
.contact .cont1 .wpcf7 form .wpcf7-response-output {
    width: 48.57em;
    margin: 0 auto;
    font-size: 14px;
    text-align: center;
    box-sizing: border-box;
}
.thanks .cont1 p {
    text-align: center;
    line-height: 2;
    padding-bottom: 3em;
}
.thanks .cont1 .btnst2 a {
    width: 15em;
    height: 3.23em;
    border: 0.075em solid #000;
}
@media only screen and (min-width:751px) and (max-width:1366px){
.contact .cont1 .wpcf7-not-valid-tip,
.contact .cont1 .wpcf7 form .wpcf7-response-output {
    font-size: 1.02489vw;
}
}
@media only screen and (max-width:750px){
.contact .cont1,
.thanks .cont1 {
    padding-bottom: 15.33vw;
}
.contact .cont1 h2,
.thanks .cont1 h2 {
    padding-bottom: 1.5em;
}
.contact .cont1 table {
    width: 100%;
}
.contact .cont1 table td {
    padding-bottom: 1em;
}
.contact .cont1 table td.spacer {
    width: 1em;
}
.contact .cont1 .btn li {
    width: 100%;
}
.contact .cont1 .wpcf7-not-valid-tip {
    font-size: 2.8vw;
}
.contact .cont1 .wpcf7 form .wpcf7-response-output {
    width: 100%;
    font-size: 2.8vw;
    line-height: 1.85;
}
.thanks .cont1 p {
    font-size: 2.9vw;
    text-align: left;
    line-height: 1.85;
}
.thanks .cont1 .btnst2 a {
    font-size: 2.733vw;
    width: 13em;
    height: 3em;
}
}


/* feature
------------------------------------------------- */
/* .mainvisual */
.post-type-archive-feature .mainvisual {
    height: 38.3125em;
    background-image: url("../img/feature/mainvisual.jpg");
    margin-bottom: 5.8125em;
}
@media only screen and (max-width:750px){
.post-type-archive-feature .mainvisual {
    height: 82.4vw;
    background-image: url("../img/feature/mainvisual_sp.jpg");
    margin-bottom: 10.266vw;
}
}

/* .cont1 */
.post-type-archive-feature .cont1 {
    padding-bottom: 1.5625em;
}
.post-type-archive-feature .cont1 .inner {
    padding: 0 5.875em;
}
.post-type-archive-feature .cont1 ul li {
    width: 48%;
    margin-bottom: 3.125em;
}
.post-type-archive-feature .cont1 ul li a {
    display: block;
    width: 100%;
    height: 100%;
}
.post-type-archive-feature .cont1 ul li a .cover {
    width: 100%;
    height: 22.75em;
    overflow: hidden;
    margin-bottom: 1.25em;
}
.post-type-archive-feature .cont1 ul li a .cover img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.4s;
}
.post-type-archive-feature .cont1 ul li a h2 {
    padding-left: 1.6em;
    line-height: 1.5;
    position: relative;
    transition: 0.4s;
}
.post-type-archive-feature .cont1 ul li a h2::before {
    content: '';
    width: 1em;
    height: 0.055em;
    background-color: #000;
    position: absolute;
    left: 0;
    top: 0.75em;
}
.post-type-archive-feature .cont1 ul li a h2 span {
    display: block;
}
@media only screen and (min-width:751px){
.post-type-archive-feature .cont1 ul li a:hover .cover img {
    transform: scale(1.05);
}
.post-type-archive-feature .cont1 ul li a:hover h2 {
    opacity: 0.6;
}
}
@media only screen and (max-width:750px){
.post-type-archive-feature .cont1 {
    padding-bottom: 7.33vw;
}
.post-type-archive-feature .cont1 .inner {
    padding: 0;
}
.post-type-archive-feature .cont1 ul li {
    width: 100%;
    margin-bottom: 8vw;
}
.post-type-archive-feature .cont1 ul li a .cover {
    height: 58vw;
    margin-bottom: 0.85em;
}
.post-type-archive-feature .cont1 ul li a h2 {
    font-size: 3.576vw;
}
.post-type-archive-feature .cont1 ul li a h2 span {
    font-size: 2.5vw;
    padding-top: 0.25em;
}
}


/* news
------------------------------------------------- */
/* .mainvisual */
.blog .mainvisual {
    height: 38.3125em;
    background-image: url("../img/news/mainvisual.jpg");
    margin-bottom: 5.8125em;
}
@media only screen and (max-width:750px){
.blog .mainvisual {
    height: 82.4vw;
    background-image: url("../img/news/mainvisual_sp.jpg");
    margin-bottom: 10.266vw;
}
}

/* .cont1 */
.blog .cont1 {
    padding-bottom: 1.5625em;
}
.blog .cont1 .inner {
    padding: 0 5.875em;
}
.blog .cont1 .list li {
    width: 48%;
    margin-bottom: 3.125em;
}
.blog .cont1 .list li a {
    display: block;
    width: 100%;
    height: 100%;
}
.blog .cont1 .list li a .cover {
    width: 100%;
    height: 22.75em;
    overflow: hidden;
    margin-bottom: 1.25em;
    position: relative;
}
.blog .cont1 .list li a .cover img {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    transition: 0.4s;
}
.blog .cont1 .list li a .cover span {
    width: 6.33em;
    height: 2.33em;
    background-color: #000;
    color: #fff;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 2;
}
.blog .cont1 .list li a h2 {
    line-height: 1.5;
    padding-bottom: 0.5em;
    position: relative;
    transition: 0.4s;
}
.blog .cont1 .list li a h2::before {
    content: '';
    width: 3.33em;
    height: 0.055em;
    background-color: #000;
    position: absolute;
    left: 0;
    bottom: 0.25em;
}
.blog .cont1 .list li a p {
    line-height: 1.5;
    transition: 0.4s;
}
.blog .cont1 .pagination {
    padding: 1em 0 2.125em;
}
.blog .cont1 .pagination ul {
    display: flex;
    justify-content: center;
    align-items: center;
}
.blog .cont1 .pagination ul li {
    margin: 0 0.5em;
    position: relative;
}
.blog .cont1 .pagination ul li::after {
    content: '';
    width: 0.05em;
    height: 92%;
    background-color: #000;
    position: absolute;
    right: -0.5em;
    top: 8%;
}
.blog .cont1 .pagination ul li:last-child::after {
    display: none;
}
.blog .cont1 .pagination ul li a,
.blog .cont1 .pagination ul li span {
    display: block;
    line-height: 1.2;
    border-bottom: 0.05em solid #000;
    text-align: center;
    position: relative;
    transition: 0.4s;
}
.blog .cont1 .pagination ul li span.current {
    border-color: #fff;
}
.blog .cont1 .pagination ul li span.extend {
    border-bottom: none;
}
@media only screen and (min-width:751px){
.blog .cont1 .list li a:hover .cover img {
    transform: scale(1.05);
}
.blog .cont1 .list li a:hover h2,
.blog .cont1 .list li a:hover p {
    opacity: 0.6;
}
.blog .cont1 .pagination ul li a:hover {
    border-color: #fff;
}
}
@media only screen and (max-width:750px){
.blog .cont1 {
    padding-bottom: 7.33vw;
}
.blog .cont1 .inner {
    padding: 0;
}
.blog .cont1 .list li {
    width: 100%;
    margin-bottom: 8vw;
}
.blog .cont1 .list li a .cover {
    height: 58vw;
    margin-bottom: 0.85em;
}
.blog .cont1 .list li a .cover span {
    font-size: 2.8vw;
    width: 18.66vw;
    height: 6.66vw;
}
.blog .cont1 .list li a h2 {
    font-size: 3.576vw;
    padding-bottom: 0.7em;
}
.blog .cont1 .list li a h2::before {
    bottom: 0.35em;
}
.blog .cont1 .list li a p {
    font-size: 2.5vw;
}
}


/* feature-detail, news-detail
------------------------------------------------- */
/* .mainvisual */
.single-feature .mainvisual,
.single-post .mainvisual {
    height: 38.25em;
    margin-bottom: 4em;
}
.single-feature .mainvisual h1,
.single-post .mainvisual h1 {
    line-height: 1.85;
}
.single-post .mainvisual h1 span {
    padding-top: 0;
}
@media only screen and (max-width:750px){
.single-feature .mainvisual,
.single-post .mainvisual {
    height: 58.66vw;
    margin-bottom: 8vw;
}
.single-feature .mainvisual h1,
.single-post .mainvisual h1 {
    font-size: 5.6vw;
    line-height: 1.85;
}
.single-feature .mainvisual h1 span,
.single-post .mainvisual h1 span {
    font-size: 3.733vw;
    padding-top: 1.5em;
}
.single-post .mainvisual h1 span {
    padding-top: 0;
}
}

/* .cont1 */
.single-feature .cont1,
.single-post .cont1 {
    margin-bottom: 6em;
}
.single-feature .cont1 .con,
.single-post .cont1 .con {
    width: 65.66em;
    margin: 0 auto 2.5em;
}
.single-feature .cont1 .con p,
.single-post .cont1 .con p {
    padding-bottom: 2.5em;
}
.single-feature .cont1 .con p a,
.single-post .cont1 .con p a {
	text-decoration: underline;
}
.single-feature .cont1 .con img,
.single-post .cont1 .con img {
    width: auto;
    padding-bottom: 1.5em;
}
.single-feature .cont1 .btnst2 a,
.single-post .cont1 .btnst2 a {
    width: 15em;
    height: 3.23em;
    border: 0.075em solid #000;
}
@media only screen and (min-width:751px){
.single-feature .cont1 .con p a:hover,
.single-post .cont1 .con p a:hover {
	text-decoration: underline;
}
}
@media only screen and (max-width:750px){
.single-feature .cont1,
.single-post .cont1 {
    margin-bottom: 15vw;
}
.single-feature .cont1 .con,
.single-post .cont1 .con {
    width: 100%;
    margin: 0 auto 1.5em;
}
.single-feature .cont1 .con p,
.single-post .cont1 .con p {
    font-size: 2.8vw;
    padding-bottom: 2em;
}
.single-feature .cont1 .btnst2 a,
.single-post .cont1 .btnst2 a {
    font-size: 2.733vw;
    width: 13em;
    height: 3em;
}
}


/* policy
------------------------------------------------- */
/* .mainvisual */
.policy .mainvisual {
    height: 27.375em;
    background-image: url("../img/policy/mainvisual.jpg");
}
@media only screen and (max-width:750px){
.policy .mainvisual {
    height: 63vw;
    background-image: url("../img/policy/mainvisual_sp.jpg");
    margin-bottom: 8.5vw;
}
.policy .mainvisual h1 {
    font-size: 4.8vw;
}
}

/* .cont1 */
.policy .cont1,
.termsofuse .cont1,
.termsofconditions .cont1 {
    padding-bottom: 3em;
}
.policy .cont1 .con,
.termsofuse .cont1 .con,
.termsofconditions .cont1 .con {
    width: 62.5em;
    margin: 0 auto 3em;
}
.policy .cont1 .con h2,
.termsofuse .cont1 .con h2,
.termsofconditions .cont1 .con h2 {
    font-weight: 400;
    line-height: 2.35;
    padding-bottom: 1.5em;
}
.policy .cont1 .con p,
.termsofuse .cont1 .con p,
.termsofconditions .cont1 .con p {
    line-height: 2.35;
}
.policy .cont1 .con ul li,
.termsofuse .cont1 .con ul li {
    line-height: 2.35;
    padding-left: 1em;
    text-indent: -1em;
}
.policy .cont1 .con ul li::before {
    content: '・';
}
@media only screen and (max-width:750px){
.policy .cont1 .con,
.termsofuse .cont1 .con,
.termsofconditions .cont1 .con {
    width: 100%;
    margin: 0 auto 2.5em;
}
.policy .cont1 .con h2,
.termsofuse .cont1 .con h2,
.termsofconditions .cont1 .con h2 {
    line-height: 1.85;
    padding-bottom: 1.5em;
}
.policy .cont1 .con p,
.termsofuse .cont1 .con p,
.termsofconditions .cont1 .con p {
    line-height: 1.85;
}
.policy .cont1 .con ul li,
.termsofuse .cont1 .con ul li {
    line-height: 1.85;
}
}


/* termsofuse
------------------------------------------------- */
/* .mainvisual */
.termsofuse .mainvisual {
    height: 27.375em;
    background-image: url("../img/termsofuse/mainvisual.jpg");
}
@media only screen and (max-width:750px){
.termsofuse .mainvisual {
    height: 63vw;
    background-image: url("../img/termsofuse/mainvisual_sp.jpg");
    margin-bottom: 8.5vw;
}
.termsofuse .mainvisual h1 {
    font-size: 4.8vw;
}
}

/* .cont1 */
.termsofuse .cont1 ol {
    counter-reset: number 0;
    list-style: none;
}
.termsofuse .cont1 ol > li {
    line-height: 2.35;
    padding-left: 2.6em;
    text-indent: -2.6em;
}
.termsofuse .cont1 ol > li::before {
    counter-increment: number 1;
    content: "（" counter(number) "）";
}
@media only screen and (max-width:750px){
.termsofuse .cont1 ol > li {
    line-height: 1.85;
}  
}


/* termsofconditions
------------------------------------------------- */
/* .mainvisual */
.termsofconditions .mainvisual {
    height: 27.375em;
    background-image: url("../img/termsofconditions/mainvisual.jpg");
}
@media only screen and (max-width:750px){
.termsofconditions .mainvisual {
    height: 63vw;
    background-image: url("../img/termsofconditions/mainvisual_sp.jpg");
    margin-bottom: 8.5vw;
}
.termsofconditions .mainvisual h1 {
    font-size: 4.8vw;
}
}

/* .cont1 */
.termsofconditions .cont1 ul li {
    line-height: 2.35;
    padding-left: 1.5em;
    text-indent: -1.5em;
}
.termsofconditions .cont1 ul li ol {
    counter-reset: number 0;
    list-style: none;
}
.termsofconditions .cont1 ul li ol li {
    line-height: 2.35;
    padding-left: 2.6em;
    text-indent: -2.6em;
}
.termsofconditions .cont1 ul li ol li::before {
    counter-increment: number 1;
    content: "（" counter(number) "）";
}
.termsofconditions .cont1 ul li ol li ul li {
    line-height: 2.35;
    padding-left: 2em;
    text-indent: -2em;
}
.termsofconditions .cont1 table {
    margin: 1em 0;
}
.termsofconditions .cont1 table th,
.termsofconditions .cont1 table td {
    font-weight: 400;
    text-align: left;
    padding: 0.25em 0.75em;
    border: 1px solid #000;
}
@media only screen and (max-width:750px){
.termsofconditions .cont1 ul li,
.termsofconditions .cont1 ol li {
    line-height: 1.85;
}
.termsofconditions .cont1 table {
    width: 100%;
}
.termsofconditions .cont1 table th,
.termsofconditions .cont1 table td {
    padding: 0.25em 0.5em;
    line-height: 1.5;
    vertical-align: middle;
}
}