@charset "utf-8";

/* bace */

figure {
    margin: 0;
}

.foncolor_org {
    color: #e47415;
}

.foncolor_red {
    color: #ff000c;
}

#main {
    /*height: 517px;*/
	height: 605px;
    background-image: url(../img/main.jpg);
    background-size: cover;
    background-position-x: 0;
    background-position-y: 88px;
}

#main .img_line {
    width: 100%;
    position: absolute;
    bottom: -13%;
    z-index: 9;
}

.sp {
    display: none;
}

@media (max-width: 1550px) {
#main {
    height: 417px;
    background-size: contain;
}
}

@media (max-width: 1200px) {
#main {
    background-position-y: 0;
    margin-top: 88px;
    padding-top: 0;
}
}

@media (max-width: 768px) {
.pc {
    display: none;
}
.sp {
    display: block;
}
#main {
    padding-top: calc(49 * 100vw / 320);
    margin-top: 0;
    min-width: auto;
    height: 40vh;
    background-position-y: calc(49 * 100vw / 320);
    background-size: cover;
}
#main .img_line {
    bottom: -16%;
    background-size: contain;
}
}

@media (max-width: 414px) {
#main {
    height: 270px;
    padding-top: 0;
    background-size: contain;
}

}

/* heading */

.contents_wraper {
    padding-top: 95px;
    text-align: center;
    letter-spacing: 1px;
    min-width: 1280px;
}

.l-heading1 {
}

.l-heading1 img {
    max-width: 561px;
}

.l-heading1_sub {
    font-size: 20px;
    margin-top: 20px;
    background: #e47415;
    background: linear-gradient(to right, #e67d25 0%,#f1e06b 82%); 
    display: inline-block;
    line-height: 2;
    color: #fff;
    position: relative;
    letter-spacing: 2px;
    font-feature-settings : "palt";
}

.l-heading1_sub::before {
    display: block;
    content: '';
    position: absolute;
    background: #e47415;
    margin: auto;
    top: 0;
    bottom: 0;
    width: 15px;
    height: 1px;
    left: -15px;
}

.l-heading1_sub::after {
    display: block;
    content: '';
    position: absolute;
    background: #f1e06b;
    margin: auto;
    top: 0;
    bottom: 0;
    width: 15px;
    height: 1px;
    right: -15px;
}

.l-heading1_sub__in {
    position: relative;
    display: block;
    padding: 0 80px;
}

.l-heading1_sub__in::before {
    display: block;
    content: '';
    position: absolute;
    background: rgba(255,255,255,.5);
    margin: auto;
    top: 0;
    bottom: 0;
    width: 60px;
    height: 1px;
    left: 0;
}

.l-heading1_sub__in::after {
    display: block;
    content: '';
    position: absolute;
    background: rgba(255,255,255,.5);
    margin: auto;
    top: 0;
    bottom: 0;
    width: 60px;
    height: 1px;
    right: 0;
}

.l-heading1_lead {
    font-size:15px;
    letter-spacing:1.3px;
    line-height: 2.5;
    margin-top: 40px;
}

@media (max-width: 768px) {

.contents_wraper {
    min-width: 100%;
    padding-top: 65px;
}

.l-heading1 {
    width: 80%;
    margin: 0 auto;
}

.l-heading1_sub {
    font-size: 12rem;
    margin-top: 20px;
    line-height: 1.8;
    width: 100%;
    letter-spacing: 3px;
}

.l-heading1_sub::before,
.l-heading1_sub::after {
    display: none;
}

.l-heading1_sub__in {
    padding: 10px 0;
}

.l-heading1_sub__in::before {
    width: 13%;
    left: 5%;
}

.l-heading1_sub__in::after {
    width: 13%;
    right: 5%;
}

.l-heading1_lead {
    font-size: 9rem;
    line-height: 2.8;
    margin-top: 30px;
}

}

@media (max-width: 414px) {
.l-heading1_sub {
    font-size: 16px;
}

.l-heading1_lead {
    font-size: 14px;
}

}


/* ancnav */

.l-ancnav {
    padding-top: 50px;
    max-width: 880px;
    margin: 0 auto;
}

.l-ancnav-items {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;

    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

.l-ancnav-item {
    width: 18%;
    position: relative;
}

.l-ancnav-item:not(:last-child)::after {
    position: absolute;
    background: url(../img/line_sen.png) repeat-y bottom;
    background-size: contain;
    display: block;
    content: '';
    top: 0;
    right: -13px;
    width: 1px;
    height: 120%;
}

.l-ancnav-item a:link,
.l-ancnav-item a:visited,
.l-ancnav-item a {
    color: #000;
    display: block;
    position: relative;
}

.l-ancnav-item a::after {
    display: block;
    content: '';
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: -20px;
    left: 3px;
    width: 6px;
    height: 6px;
    border-top: 1px solid #e47415;
    border-right: 1px solid #e47415;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
}

.l-ancnav-item:nth-child(2) a::after {
    border-color: #81a900;
}

.l-ancnav-item:nth-child(3) a::after {
    border-color: #46b9e2;
}

.l-ancnav-item:nth-child(4) a::after {
    border-color: #b847b3;
}

.l-ancnav-item:nth-child(5) a::after {
    border-color: #ec4b9b;
}

.l-ancnav-item a:hover::after {
    bottom: -25px;
    transition : all .2s;
}

.l-ancnav-ttl {
    font-size: 15px;
    letter-spacing: 2px;
    font-feature-settings : "palt";
}

.l-ancnav-ttl_en {
    margin-top: 10px;
}

.l-ancnav-ttl_en img {
    height: 15px;
    width: auto;
}

.l-ancnav-img {
    margin: 10px auto 0;
    width: 115px;
    height: 115px;
    overflow: hidden;
    border-radius: 50%;
}

.l-ancnav-img img {
    width: 100%;

    -moz-transition: -moz-transform 0.3s linear;
    -webkit-transition: -webkit-transform 0.3s linear;
    -o-transition: -o-transform 0.3s linear;
    -ms-transition: -ms-transform 0.3s linear;
    transition: transform 0.3s linear;
}

.l-ancnav-item a:hover .l-ancnav-img img {
    -webkit-transform: scale(1.2);
    -moz-transform: scale(1.2);
    -o-transform: scale(1.2);
    -ms-transform: scale(1.2);
    transform: scale(1.2);
}




@media (max-width: 768px) {
.l-ancnav {
    padding-top: 35px;
}

.l-ancnav-items {
    display: block;
    background: url(../img/line_senSp.png) repeat-x bottom;
    background-size: contain;
}

.l-ancnav-item {
    width: 100%;
    background: url(../img/line_senSp.png) repeat-x;
    background-size: contain;
}

.l-ancnav-item a:link, .l-ancnav-item a:visited, .l-ancnav-item a {
    width: 88%;
    margin: 0 auto;
    position: relative;
    padding: 13px 0;

    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: end;
    -ms-flex-pack: end;
    -webkit-justify-content: flex-end;
    justify-content: flex-end;

    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;

    -ms-flex-direction: row-reverse;
    -webkit-flex-direction: row-reverse;
    flex-direction: row-reverse;
    flex-direction: row-reverse;
}

.l-ancnav-item:not(:last-child)::after {
    display: none;
}

.l-ancnav-img {
    margin-top: 0;
    width: 22%;
    margin-right: 5%;
    height: auto;
    border-radius: none;
}

.l-ancnav-sub {
    text-align: left;
    width: 70%;
}

.l-ancnav-ttl {
    font-size: 11rem;
    font-weight: bold;
}

.l-ancnav-ttl_en {
    margin-top: 5px;  
}

.l-ancnav-ttl_en img {
    height: 20px;
}

.l-ancnav-item a::after {
    margin: auto;
    left: inherit;
    right: 0;
    bottom: 0;
    top: 0;
    width: 6px;
    height: 6px;
}


}

@media (max-width: 414px) {
.l-ancnav-ttl {
    font-size: 16px;
}

.l-ancnav-ttl_en img {
    height: 15px;
}

}


/* section */
.l-section {
    margin-top: 128px;
    padding-top: 35px;
    position: relative;
}

.l-section-top {
    height: 110px;
    position: relative;
}

.l-section .img_thum {
    position: absolute;
    width: 215px;
    top: -35px;
    margin: auto;
    left: 0;
    right: 0;
}

.l-section-head {
    text-align: center;
    font-weight: bold;
    padding-top: 40px;
    position: relative;
    z-index: 9;
}

.l-section-heading .ja {
    font-size: 40px;
    letter-spacing: 6px;
    font-feature-settings : "palt";
    line-height: 1.2;
}

.l-section-heading .en img {
    height: 27px;
    width: auto;
}

.l-section-lead {
    font-size: 15px;
    line-height: 2.5;
    margin-top: 20px;
    letter-spacing: 2px;
}

.l-section-content {
    margin-top: 67px;
}

@media (max-width: 768px) {

.l-section {
    margin-top: 48px;
    padding-top: 26px;
}

.l-section-top {
    height: 130px;
}

.l-section .img_thum {
    width: 48%;
    top: -20px;
    max-width: 215px;
}

.l-section-head {
    padding-top: 0;
}

.l-section-heading .ja {
    font-size: 17rem;
}

.l-section-heading .en img {
    height: 18px;
}

.l-section-lead {
    font-size: 8rem;
}

.l-section-content {
    margin-top: 40px;
}

}

@media (max-width: 414px) {
.l-section-heading .ja {
    font-size: 30px;
}

.l-section-lead {
    font-size: 15px;
    margin-top: 15px;
}

}


/* about */
.l-about {
    margin-top: 95px;
}

.l-about-top {
    background: -moz-linear-gradient(top, #fcdfc6 3%, #FFF);
    background: -webkit-linear-gradient(top, #fcdfc6 3%, #FFF);
    background: linear-gradient(to bottom, #fcdfc6 3%, #FFF); 
}

.l-about-ex {
    margin-top: 60px;
}

.l-about-ex-heading {
    font-size: 2.4rem;
    border-bottom: 1px solid;
    padding-bottom: 5px;
    display: table;
    margin: 0 auto 45px;
}

.l-about-ex-lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;

    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.l-about-ex-list {
    width: 49%;
}

.l-about-ex-list:nth-child(n+3) {
    margin-top: 20px;
}

.l-about-ex-list_ttl {
    background: #e47415;
    color: #fff;
    font-size: 18px;
    font-weight: bold;
    padding: 1em 6%;
}

.l-about-ex-in {
    background: #f9f9f9;
    padding: 35px 0 50px;
    text-align: center;
}

.l-about-ex_img img {
    height: 165px;
    width: auto;
    margin: 0 auto;
}

.l-about-ex_img2 img {
    height: 141px;
}

.l-about-ex_ttl {
    font-size: 18px;
    margin: 20px auto 0;
}

.l-about-ex_txt {
    font-size: 20px;
    font-weight: bold;
    display: table;
    margin: 5px auto 0;
    color: #e47415;
}


.l-about-ex-add {
    font-size: 13px;
    margin-top: 15px;
}

/*.l-about-tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 96%;
    margin: 80px auto 0;
}

.l-about-tab li {
    width: 33%;
    background: #e47415;
    color: #fff;
    padding: 48px 0;
    font-size: 20px;
    cursor: pointer;
    -webkit-transition: .3s;
    transition: .3s;
    text-align: center;
    font-weight: bold;
    border: 1px solid #ddd;
    border-bottom: none;
 }

.l-about-tab li.select {
    background: #fff;
    color: #e47415;
    position: relative;
}

.l-about-tab li.select::after {
    display: block;
    content: '';
    position: absolute;
    width: 100%;
    z-index: 1;
    height: 1px;
    background: #fff;
    left: 0;
    bottom: -1px;
}

.l-about-list {
    border-top: 1px solid #ddd;
    background: #fff;
    padding: 65px 0 0;
}

.l-about-list .l-about-typeWrap {
    display: none;
    width: 96%;
    margin: 0 auto 0;
}

.l-about-list .l-about-typeWrap.on {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;

    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.l-about-type {
    width: 48.5%;
    background: #f9f9f9;
    padding: 40px 5% 45px;
    box-sizing: border-box;
    text-align: center;
}

.l-about-box .hide {
    display:none;
}

.l-about-type_ttl {
    font-size: 18px;
}

.l-about-type_txt {
    font-size: 20px;
    font-weight: bold;
    border-bottom: 2px solid #e47415;
    display: table;
    margin: 10px auto 0;
    color: #e47415;
}

.l-about-type_img {
    margin-top: 30px;
}

.l-about-type_img img {
    height: 165px;
    width: auto;
    margin: 0 auto;
}*/


/*.l-about-lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;

    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;

    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}

.l-about-list {
    width: 48.8%;
    background: #f9f9f9;
    padding: 40px 50px;
    box-sizing: border-box;
}

.l-about-list:nth-child(n+3) {
    margin-top: 20px;
}

.l-about-ttl {
    font-weight: bold;
    font-size: 20px;
    letter-spacing: 2px;
    line-height: 1;
}

.l-about-txt {
    font-size: 13px;
    margin-top: 15px;
    line-height: 2;
}

.l-about-img {
    text-align: center;
}

.l-about-img img {
    width: auto;
    height: 166px;
    margin: 20px auto 0;
}*/


@media (max-width: 768px) {

.l-about {
    margin-top: 48px;
}

.l-about-lists {
    display: block;
}

.l-about-list {
    width: 100%;
    padding: 35px 9%;
}

.l-about-ttl {
    font-size: 9rem;
}

.l-about-txt {
    font-size: 7rem;
}

.l-about-img img {
    width: 80%;
    height: auto;
    margin: 20px auto 0;
}


.l-about-ex {
    margin-top: 40px;
}

.l-about-ex-heading {
    font-size: 11rem;
    margin: 0 auto 45px;
}

.l-about-ex-lists {
    display: block;
}

.l-about-ex-list {
    width: 80%;
    margin: 0 auto;
}

.l-about-ex-list:nth-child(n+2) {
    margin-top: 20px;
}




.l-about-ex-add {
    width: 90%;
    margin: 15px auto 0;
}


/*.l-about-tab {
    display: flex;
    width: 96%;
    margin: 60px auto 0;
}

.l-about-tab li {
    padding: 20px 0;
    font-size: 13px;
 }

.l-about-list {
    padding: 30px 0 0;
}

.l-about-list .l-about-typeWrap {
    width: 90%;
}

.l-about-list .l-about-typeWrap.on {
    display: block;
}

.l-about-type {
    width: 100%;
    padding: 25px 5%;
}

.l-about-type:nth-child(n+2) {
    margin-top: 20px;
}

.l-about-type_ttl {
    font-size: 14px;
}

.l-about-type_txt {
    font-size: 15px;
    border-bottom: 1px solid #e47415;
    margin: 10px auto 0;
}

.l-about-type_img {
    margin-top: 10px;
}

.l-about-type_img img {
    height: 125px;
    width: auto;
    margin: 0 auto;
}
*/



}

@media (max-width: 414px) {

.l-about-ex-list {
    width: 90%;
    margin: 0 auto;
}

.l-about-ex-list_ttl {
    font-size: 15px;
    padding: 1em 5%;
}

.l-about-ex-heading {
    font-size: 18px;
    margin: 0 auto 35px;
}

.l-about-ex-in {
    padding: 25px 0 35px;
}

.l-about-ex_img img {
    height: 125px;
}

.l-about-ex_img2 img {
    height: 105px;
}

.l-about-ex_ttl {
    font-size: 15px;
    margin: 20px auto 0;
}

.l-about-ex_txt {
    font-size: 20px;
    margin: 0 auto;
}

.l-about-ttl {
    font-size: 18px;
}
.l-about-txt {
    font-size: 13px;
}

.l-about-ex-add {
    font-size: 11px;
}

}

/* service */
.l-service {
    padding-bottom: 95px;
}

.l-service-top {
    background: -moz-linear-gradient(top, #ebfcb1 3%, #FFF);
    background: -webkit-linear-gradient(top, #ebfcb1 3%, #FFF);
    background: linear-gradient(to bottom, #ebfcb1 3%, #FFF); 
}

.l-service-inner {
    max-width: 990px;
    margin: 0 auto;
}

.l-service-tab {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    width: 100%;
    margin: 0 auto;
}

.l-service-tab li {
    width: 50%;
    background: #81a900;
    color: #fff;
    padding: 30px 0;
    font-size: 20px;
    cursor: pointer;
    -webkit-transition: .3s;
    transition: .3s;
    text-align: center;
    font-weight: bold;
    border: 1px solid #ddd;
    border-bottom: none;
 }

.l-service-tab li.select {
    background: #fff;
    color: #81a900;
    position: relative;
}

.l-service-tab li.select::after {
    display: block;
    content: '';
    position: absolute;
    width: 100%;
    z-index: 1;
    height: 1px;
    background: #fff;
    left: 0;
    bottom: -1px;
}

.l-service-list {
    border: 1px solid #ddd;
    background: #fff;
    padding: 65px 0 95px;
}

.l-service-list li {
}

.l-service-box .hide {
    display:none;
}

.l-service-lead {
    color: #222;
    line-height: 2;
}

.l-service-lead_sm {
    color: #999;
    font-size: 13px;
}


@media (max-width: 768px) {

.l-service-top {
    padding-bottom: 0;
}
.l-service {
    padding-bottom: 54px;
}

.l-service-list {display: none;}
.l-service-list.open {display: block;}

.l-section-content {
    max-width: 90%;
    margin-left: auto;
    margin-right: auto;
}
.l-service-acc {
    background: #81a900;
    color: #fff;
    font-size: 11rem;
    text-align: left;
    padding: 20px 8%;
    line-height: 1.8;
    font-weight: bold;
    position: relative;
    border-bottom: 1px solid;
}

.l-service-acc::before {
    display: block;
    content: '';
    position: absolute;
    height: 3rem;
    width: 1px;
    background: #fff;
    top: 0;
    bottom: 0;
    right: 7.2%;
    margin: auto;
    transition: transform .3s;
    opacity: 1;
}

.l-service-acc.active::before {
    opacity: 0;
}

.l-service-acc::after {
    display: block;
    content: '';
    position: absolute;
    width: 3rem;
    height: 1px;
    background: #fff;
    top: 0;
    bottom: 0;
    right: 5%;
    margin: auto;
}

.l-service-list {
    border-top: none;
    padding: 27px 5%;
}

.l-service-lead {
    font-size: 9rem;
}

.l-service-lead_sm {
    font-size: 7rem;
}

}

@media (max-width: 414px) {
.l-service-acc {
    font-size: 18px;
}
.l-service-lead {
    font-size: 14px;
}

.l-service-acc::before {
    height: 15px;
    right: 7.2%;
}

.l-service-acc.active::before {
    opacity: 0;
}

.l-service-acc::after {
    width: 15px;
}

.l-service-lead_sm {
    font-size: 11px;
    line-height: 1.8;
    display: block;
    margin-top: 1em;
}

}


.l-goods-lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-flex-wrap: wrap;
    -moz-flex-wrap: wrap;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    max-width: 815px;
    margin: 47px auto 0;
}

.l-goods-list {
    width: 23.5%;
    margin-right: 2%;
}

.l-goods-list:nth-child(4n) {
    margin-right: 0;
}

.l-goods-list:nth-child(n+5) {
    margin-top: 30px;
}

.l-goods-list figcaption {
    margin-top: .5em;
    position: relative;
}

.l-goods-list figcaption span {
    margin-top: .5em;
    position: absolute;
    font-size: 11px;
    bottom: -1.5em;
    letter-spacing: 0;
    left: 0;
    right: 0;
    width: 100%;
}

.l-goods-list img {
    width: 100%;
}


@media (max-width: 768px) {
.l-goods-lists {
    margin: 34px auto 0;
}
.l-goods-list {
    width: 48%;
    margin-right: 3.5%;
}

.l-goods-list:nth-child(2n) ,
.l-goods-list:nth-child(4n) {
    margin-right: 0;
}

.l-goods-list:nth-child(n+3) {
    margin-top: 13px;
}


.l-goods-list figcaption {
    font-size: 7rem;
}


.l-goods-list figcaption span {
    position: relative;
    font-size: 11px;
    bottom: inherit;
}

}

@media (max-width: 414px) {
.l-goods-list figcaption {
    font-size: 12px;
}
}


.l-bf-box {
    max-width: 850px;
    margin: 40px auto 0;
}

.l-bf-box img {
    width: 100%;
}

/*.l-bf-bnr a {
    display: block;
    position: relative;
    width: 100%;
    min-height: 270px;
    text-align: left;
    transition: transform .3s;
    border: 1px solid rgba(0,0,0,.1);
    box-sizing: border-box;
    overflow: hidden;
}

.l-bf-bnr a:after {
    position: absolute;
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    background: url(../img/img_bf.jpg) no-repeat;
    background-size: cover;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

.l-bf-bnr a:hover:after {
    opacity: .8;
    -moz-transform: scale(1.05);
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}



.l-bf-bnr_sub {
    width: 172px;
}

.l-bf-bnr-in {
    position: absolute;
    top: 25%;
    left: 7%;
    z-index: 1;
}

.l-bf-bnr_ttl {
    width: 483px;
    margin-top: 15px;
}

.l-bf-box .l-linelink {
    margin-top: 20px;
    position: relative;
    display: block;
    text-decoration: none;
    transition: .3s;
    z-index: 1;
    padding-left: 110px;
    font-size: 1.5rem;
}

.l-bf-box a:visited ,
.l-bf-box a:link  {
    color: #000;
}

.l-bf-box a:hover {
    color: #81a900;
    border: 1px solid rgba(129, 169, 0,.8);
    opacity: .8;
}

.l-bf-box .l-linelink::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    z-index: 1;
    content: '';
    background: #000;
    height: 1px;
    width: 95px;
}

.l-bf-box .l-linelink::after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    z-index: 2;
    margin: auto;
    content: '';
    background: #81a900;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform .3s;
    width: 95px;
}
.l-bf-box a:hover .l-linelink::after {
    transform-origin: left top;
    transform: scale(1, 1);
    z-index: 3;
}*/

.l-bf-box .l-linelink2 {
    margin-top: 20px;
    display: block;
    transition: .3s;
    font-size: 1.5rem;
    text-align: right;
}

.l-bf-box .l-linelink2 a {
    position: relative;
    padding-left: 110px;
}

.l-bf-box a:visited ,
.l-bf-box a:link  {
    color: #000;
}

.l-bf-box a:hover {
    color: #81a900;
    opacity: .8;
}

.l-bf-box a::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    z-index: 1;
    content: '';
    background: #000;
    height: 1px;
    width: 95px;
}

.l-bf-box a::after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    z-index: 2;
    margin: auto;
    content: '';
    background: #81a900;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform .3s;
    width: 95px;
}
.l-bf-box a:hover::after {
    transform-origin: left top;
    transform: scale(1, 1);
    z-index: 3;
}



.l-bf-allergy {
    background: #f9f9f9;
    padding: 40px 5%;
    margin-top: 40px;
}

.l-bf-allergy_ttl {
    font-weight: bold;
    font-size: 18px;
    display: table;
    margin: auto;
    /*color: #888;*/
}

.l-bf-allergy_img {
    margin: 25px auto 0;
    max-width: 398px;
}

.l-bf-allergy_txt {
    margin-top: 20px;
    line-height: 2;
    font-size: 12px;
}



.l-bf-box .l-plan-heading2 {
    margin-top: 55px;
}

.l-bf-lists {
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
    margin-top: 50px;
}

.l-bf-list {
    width: 32%;
}

.l-bf-logo {
    font-size: 15px;
    font-weight: bold;
}

.l-bf-logo img {
    max-width: 54px;
    margin-bottom: .8em;
}

.l-bf-list figure {
    margin-top: 20px;
    position: relative;
}

.l-bf-list figcaption {
    position: absolute;
    background: url(../img/sou_mark.png) no-repeat;
    background-size: contain;
    top: -20px;
    right: -20px;
    width: 90px;
    height: 90px;
    color: #fff;
    padding-top: 22px;
    text-indent: 2px;
    padding-left: 4px;
    box-sizing: border-box;
}

.l-bf-list figcaption span {
    margin-left: -3px;
}

.l-bf-txt {
    margin-top: 15px;
    font-size: 13px;
    text-align: left;
    line-height: 2;
}

.l-bf-list .l-btn2 {
    margin-top: 20px;
}

.l-bf-list .l-btn2 a {
    padding: 15px 0;
    height: auto;
    font-size: 13px;
}

@media (max-width: 768px) {
.l-bf-box {
    margin: 34px auto 0;
}

/*.l-bf-bnr a {
    background: url(../img/img_bf.jpg) no-repeat bottom;
    background-size: cover;
    min-height: 270px;
}

.l-bf-bnr a::after {
    display: none;
}

.l-bf-bnr_sub {
    width: 50%;
}

.l-bf-bnr_sub img {
    max-width: 160px;
}

.l-bf-bnr-in {
    top: 19%;
    left: 12%;
}

.l-bf-bnr_ttl {
    width: 80%;
}
.l-bf-bnr_ttl img {
    max-width: 300px;
}

.l-bf-box .l-linelink {
    margin-top: 30px;
    padding-left: 110px;
    font-size: 7rem;
}*/

.l-bf-box .l-linelink2 {
    font-size: 9rem;
    text-align: left;
}

.l-bf-box .l-linelink2 a {
    padding-left: 75px;
}

.l-bf-box a::before {
    background: rgba(0,0,0,.5);
    width: 60px;
}

.l-bf-box a::after {
    width: 60px;
}


.l-bf-allergy {
    padding: 40px 5%;
}

.l-bf-allergy_ttl {
    font-size: 12rem;
    padding-bottom: 5px;
}

.l-bf-allergy_img {
    max-width: 90%;
    margin-top: 40px;
}

.l-bf-allergy_txt {
    font-size: 7rem;
    text-align: left;
    margin-top: 40px;
}


.l-bf-box .l-plan-heading2 {
    margin-top: 30px;
    padding-top: 30px;
}

.l-bf-box .l-linelink {
    text-align: left;
}

.l-bf-lists {
    display: block;
    margin-top: 20px;
}

.l-bf-list {
    width: 100%;
}

.l-bf-list:nth-child(n+2) {
    margin-top: 27px;
}

.l-bf-logo {
    font-size: 11rem;
}

.l-bf-list figure {
    margin-top: 15px;
    position: relative;
}

.l-bf-list figcaption {
    top: -30px;
    right: -12px;
    width: 115px;
    height: 115px;
    padding-top: 28px;
    font-size: 7rem;
}

.l-bf-txt {
    font-size: 7rem;
}
.l-bf-list .l-btn2 a span {
    font-size: 7rem;
}

.l-bf-box .l-linelink a {
    font-size: 7rem;
}

.l-bf-box .l-linelink a::before {
    right: 51%;
}

.l-bf-box .l-linelink a::after {
    right: 51%;
}


}

@media (max-width: 414px) {
.l-bf-logo {
    font-size: 15px;
}
.l-bf-list figcaption {
    font-size: 13px;
    top: -30px;
    right: -12px;
    width: 80px;
    height: 80px;
    padding-top: 17px;
}

/*.l-bf-box .l-linelink {
    font-size: 13px;
}

.l-bf-box .l-linelink::before,
.l-bf-box .l-linelink::after {
    background: rgba(0,0,0,.4);
}*/

.l-bf-box .l-linelink2 {
    font-size: 13px;
}

.l-bf-allergy {
    padding: 30px 5%;
}

.l-bf-allergy_ttl {
    font-size: 15px;
    padding-bottom: 3px;
}

.l-bf-allergy_img {
    max-width: 100%;
    margin-top: 20px;
}

.l-bf-allergy_txt {
    font-size: 12px;
    margin-top: 10px;
}


.l-bf-txt {
    font-size: 13px;
}

.l-bf-list .l-btn2 a span {
    font-size: 13px;
}

.l-bf-box .l-linelink a {
    font-size: 13px;
    margin-top: 15px;
    text-align: left;
    text-indent: 45px;
}

.l-bf-box .l-linelink a::before ,
.l-bf-box .l-linelink a::after {
    right: inherit;
    left: 0;
    width: 35px;
    background: rgba(0,0,0,.7);
}

}


/* plan */
.l-plan {
    margin-top: 0;
}

.l-plan-top {
    background: -moz-linear-gradient(top, #d4f8fe 3%, #FFF);
    background: -webkit-linear-gradient(top, #d4f8fe 3%, #FFF);
    background: linear-gradient(to bottom, #d4f8fe 3%, #FFF); 
}

.l-plan-bg {
    background: #fff;
}

.l-plan-content {
    margin-top: 50px;
}

.l-plan-heading .ja {
    font-size: 34px;
    position: relative;
}

.l-plan-heading .ja::before {
    display: block;
    content: '';
    position: absolute;
    background: url(../img/sou_nami.png) no-repeat center;
    background-size: cover;
    height: 6px;
    width: 45px;
    left: -60px;
    margin: auto;
    top: 0;
    bottom: 0;
}

.l-plan-heading .ja::after {
    display: block;
    content: '';
    position: absolute;
    background: url(../img/sou_nami.png) no-repeat center;
    background-size: cover;
    height: 6px;
    width: 45px;
    right: -60px;
    margin: auto;
    top: 0;
    bottom: 0;
}

.l-planslider {
    margin-top: 47px;
}

.l-plan-points {
    margin: 67px auto 40px;
    max-width: 850px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.l-plan-point {
    width: 49%;
    background: url(../img/sou_frame.png) no-repeat center;
    background-size: contain;
    padding: 5%;
    box-sizing: border-box;
    position: relative;
}

.l-plan-sub {
    background: url(../img/sou_ribon.png) no-repeat center;
    background-size: contain;
    height: 35px;
    width: 115px;
    color: #fff;
    text-align: center;
    margin: 0 auto;
    position: absolute;
    top: -5px;
    left: 0;
    right: 0;
}

.l-plan-sub .ja {
    font-size: 16px;
    line-height: 35px;
    letter-spacing: 2px;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "小塚明朝 Pro R", "Kozuka Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
}

.l-plan-sub img {
    height: 15px;
    width: auto;
    margin: 10px 0 0 3px;
}

.l-plan-ttl {
    color: #46b9e2;
    font-size: 24px;
    text-align: center;
    font-weight: bold;
}

.l-plan-txt {
    line-height: 2;
    font-size: 13px;
    margin-top: 15px;
}

.l-plan-outline {
    border-bottom: 1px solid #ddd;
    margin: 0 auto;
    max-width: 850px;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;
    padding-bottom: 20px;
    margin-bottom: 20px;
}

.l-plan-outline_ttl {
    font-weight: bold;
    width: 15%;
    text-indent: 2em;
}

.l-plan-outline_txt {
    width: 80%;
    letter-spacing: 0;
}

.l-plan-add {
    max-width: 794px;
    margin: 0 auto;
    font-size: 13px;
    line-height: 2;
    letter-spacing: 0;
}

.l-plan-hotel {
    margin-top: 65px;
}

.l-plan-heading2 {
    position: relative;
    font-size: 27px;
    text-align: center;
}

.l-plan-heading2::before {
    background: #ddd;
    height: 1px;
    width: 100%;
    content: '';
    position: absolute;
    left: 0;
    top: 0;
    bottom: 0;
    margin: auto;
    z-index: 1;
}

.l-plan-heading2 .ja {
    background: #fff;
    padding: 0 .7em;
    z-index: 2;
    position: relative;
}


.l-plan-plans {
    margin-top: 60px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.l-plan-plan {
    width: 32%;
}

.l-plan-plan figure {
    position: relative;
}

.l-plan-plan img {
    width: 100%;
}

.l-plan-plan figcaption {
    position: absolute;
    top: 0;
    right: 10px;
    width: 47px;
}

.l-plan-plan_ttl {
    margin-top: 20px;
    font-size: 15px;
    font-weight: bold;
}

.l-plan-plan_txt {
    margin-top: 10px;
    font-size: 13px;
    line-height: 2;
}

.l-btn-wrap {
    margin-top: 15px;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;
}

.l-btn-wrap > div {
    width: 49%;
}

@media (max-width: 768px) {

.l-plan-content {
    margin-top: 30px;
    max-width: 100%;
}

.l-plan-heading .ja {
    font-size: 14rem;
}

.l-plan-heading .ja::after,
.l-plan-heading .ja::before {
    display: none;
}

.l-planslider {
    margin-top: 27px;
}

.l-plan-points {
    margin: 46px auto 40px;
    max-width: 88%;
    display: block;
}


.l-plan-point {
    width: 100%;
    background: url(../img/sou_frame_midSp.png) repeat-y center;
    background-size: cover;
    padding: 10px 5% 10px;
    position: relative;
    margin-top: 80px;
}

.l-plan-point::before {
    position: absolute;
    content: '';
    display: block;
    top: -27px;
    left: 0;
    width: 100%;
    height: 34px;
    background: url(../img/sou_frame_topSp.png) no-repeat center;
    background-size: cover;
}

.l-plan-point::after {
    position: absolute;
    content: '';
    display: block;
    bottom: -27px;
    left: 0;
    width: 100%;
    height: 34px;
    background: url(../img/sou_frame_topSp.png) no-repeat center;
    background-size: cover;
    transform: scale(1, -1);
}

.l-plan-ttl {
    font-size: 9rem;
}

.l-plan-sub {
    height: 35px;
    width: 115px;
    top: -38px;
}

.l-plan-sub .ja {
    font-size: 9rem;
    line-height: 35px;
}

.l-plan-sub img {
    height: 15px;
    margin: 10px 0 0 6px;
}


.l-plan-outline {
    border-bottom: 1px solid #ddd;
    max-width: 88%;
    display: block;
    padding-bottom: 20px;
    margin-bottom: 20px;
    font-size: 7rem;
}

.l-plan-outline_ttl {
    width: 100%;
    text-indent: 0;
}

.l-plan-outline_txt {
    width: 100%;
    margin-top: .5em;
    line-height: 2;
}

.l-plan-add {
    max-width: 88%;
    font-size: 7rem;
}

.l-plan-hotel {
    margin: 34px auto 0;
    padding-top: 0;
    width: 88%;
}

.l-plan-heading2 {
    font-size: 14rem;
    line-height: 1;
}

.l-plan-heading2 .ja {
    padding: 0;
    line-height: 1;
}

.l-plan-heading2::after,
.l-plan-heading2::before {
    display: none;
}

.l-plan-plans {
    margin-top: 20px;
    display: block;
}

.l-plan-plan {
    width: 100%;
}

.l-plan-plan:nth-child(n+2) {
    margin-top: 27px;
}

.l-plan-txt {
    font-size: 7rem;
}

.l-plan-plan_ttl {
    font-size: 9rem;
}

.l-plan-plan_txt {
    font-size: 7rem;
}


}

@media (max-width: 414px) {
.l-plan-heading .ja {
    font-size: 24px;
}

.l-plan-sub {
    height: 35px;
    width: 115px;
    top: -28px;
}

.l-plan-sub .ja {
    font-size: 16px;
    line-height: 35px;
}

.l-plan-sub img {
    height: 16px;
    margin: 9px 0 0 3px;
}

.l-plan-ttl {
    font-size: 20px;
}
.l-plan-txt {
    font-size: 13px;
}

.l-plan-heading2 {
    font-size: 24px;
}

.l-plan-outline {
    font-size: 14px;
}

.l-plan-add {
    font-size: 13px;
}

.l-plan-plan_ttl {
    font-size: 15px;
}

.l-plan-plan_txt {
    font-size: 13px;
}



.l-plan-point {
    padding: 20px 5% 20px;
    margin-top: 36px;
}

.l-plan-point::before {
    top: -13px;
    height: 18px;
}

.l-plan-point::after {
    bottom: -13px;
    height: 18px;
}


}

@media (max-width: 375px) {
.l-plan-point::after {
    bottom: -12px;
    height: 17px;
}

.l-plan-point::before {
    top: -12px;
    height: 17px;
}
}

@media (max-width: 320px) {
.l-plan-point::after {
    bottom: -14px;
    height: 15px;
}

.l-plan-point::before {
    top: -14px;
    height: 15px;
}
}


/* howto */
.l-howto {
    margin-top: 95px;
}

.l-howto-top {
    background: -moz-linear-gradient(top, #f8dcf7 3%, #FFF);
    background: -webkit-linear-gradient(top, #f8dcf7 3%, #FFF);
    background: linear-gradient(to bottom, #f8dcf7 3%, #FFF); 
}

.l-howto-head {
    font-weight: normal;
}

.l-howto-list {
    border: 1px solid #ededed;
    padding: 20px 20px 20px 60px;
    box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    display: flex;

    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    -webkit-justify-content: space-between;
    justify-content: space-between;

    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
}

.l-howto-list:nth-child(n+2) {
    margin-top: 10px;
}

.l-howto-left {
    width: 36%;
}

.l-howto-ttl {
    font-size: 24px;
    line-height: 1;
    letter-spacing: 2px;
    font-family: "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "小塚明朝 Pro R", "Kozuka Mincho Pro", "HGS明朝E", "ＭＳ Ｐ明朝", serif;
}

.l-howto-txt {
    margin-top: 25px;
    line-height: 2.5;
    font-size: 15px;
    font-weight: bold;
}

.l-howto-txt .foncolor_red {
    position: relative;
}

.l-howto-txt .foncolor_red::after {
    position: absolute;
    display: block;
    content: '';
    width: 100%;
    height: 1.5px;
    background: #e47415;
    left: 0;
    bottom: -.5em;
}

.l-howto-img {
    width: 62%;
}

.l-howto-img img {
    width: 100%;
}

@media (max-width: 768px) {

.l-howto {
    margin-top: 48px;
}

.l-howto-lists {
    margin: 30px auto 0;
    width: 90%;
}

.l-howto-list {
    padding: 8% 8% 10%;
    display: block;
}

.l-howto-left {
    width: 100%;
}

.l-howto-ttl {
    font-size: 12rem;
}

.l-howto-txt {
    margin: 10px auto 15px;
    line-height: 2;
    font-size: 9rem;
}

.l-howto-img {
    width: 100%;
}

.l-howto-txt .foncolor_org::after {
    height: 1px;
    bottom: -.3em;
}

}


@media (max-width: 414px) {
.l-howto-ttl {
    font-size: 24px;
}
.l-howto-txt {
    font-size: 14px;
}

}

/* qaa */
.l-qaa {
    padding-bottom: 128px;
}

.l-qaa-top {
    background: -moz-linear-gradient(top, #ffd5ea 3%, #FFF);
    background: -webkit-linear-gradient(top, #ffd5ea 3%, #FFF);
    background: linear-gradient(to bottom, #ffd5ea 3%, #FFF); 
}

.l-qaa-lists {
    background: #fff;
    padding: 67px;
    box-sizing: border-box;
    border: 1px solid #ddd;
}

.l-qaa-list:nth-child(n+2) {
    margin-top: 35px;
}

.l-qaa-ttl {
    font-weight: bold;
    font-size: 15px;
}

.l-qaa-ans {
    margin-top: 20px;
    background: #fff2f9;
    padding: 30px 40px;
    box-sizing: border-box;
    line-height: 2;
}

.l-qaa .l-btn {
    width: 284px;
    margin: 67.5px auto 0;
}

@media (max-width: 768px) {

.l-qaa {
    padding-bottom: 54px;
}

.l-qaa-lists {
    width: 90%;
    margin-left: auto;
    margin-right: auto;
    padding: 8% 5% 5%;
    border: 1px solid #ddd;
}

.l-qaa-list:nth-child(n+2) {
    position: relative;
}

.l-qaa-list:nth-child(n+2)::before {
    position: absolute;
    display: block;
    content: '';
    top: -20px;
    left: -6%;
    height: 1px;
    width: 112%;
    background: #ddd;
}

.l-qaa-ttl {
    font-size: 9rem;
    line-height: 1.8;
    padding: 0 5% 5%;
    position: relative;
}

.l-qaa-ttl::after {
    display: block;
    content: '';
    position: absolute;
    margin: auto;
    left: 0;
    right: 0;
    bottom: 5px;
    left: 3px;
    width: 6px;
    height: 6px;
    border-top: 1px solid #e47415;
    border-right: 1px solid #e47415;
    -webkit-transform: rotate(135deg);
    transform: rotate(135deg);
    transition: transform .3s;
}

.l-qaa-ttl.active::after {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.l-qaa-ans {
    margin-top: 15px;
    padding: 5%;
    font-size: 7rem;

    display: none;
}

.l-qaa-ans.open {
    display: block;
}

.l-qaa .l-btn {
    width: 284px;
    margin: 34px auto 0;
}



}


@media (max-width: 414px) {
.l-qaa-ttl {
    font-size: 14px;
}
.l-qaa-ans {
    font-size: 13px;
}
}

.l-btn a { 
    position: relative;
    width:100%;
    height:54px;
    background-color: #000;
    color:#fff;
    padding: 18px 0;
    border: solid 1px #dcdcdc;
    display: block;
    box-sizing: border-box;
    cursor:pointer;
    z-index: 1;
    transition: all 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.l-btn a span { 
    position: absolute;
    left:64px;
    letter-spacing:2px;
}
.l-btn a:before {
    content: '';
    position: absolute;
    top: 0; left: auto;
    right: 0;
    width: 0;
    height: 100%;
    background-color: #e9930e;
    z-index: -1;
    transition: all 0.6s cubic-bezier(0.25, 0.1, 0.25, 1);
}
.l-btn a:hover::before {
    width: 100%;
    right: auto;
    left: 0;
}

.l-btn2 a { 
    background-color: #fff;
    color: #000;
    padding: 10px 0;
    height: auto;
    font-size: 13px;
}
.l-btn2 a span {
    position: relative;
    text-align: center;
    display: block;
    left: 0;
}
.l-btn2 a::before {
    background-color: #d9d9d9;
}


.l-btn3 a { 
    background-color: #000;
    color: #fff;
    padding: 10px 0;
    height: auto;
    font-size: 13px;
}
.l-btn3 a span {
    position: relative;
    text-align: center;
    display: block;
    left: 0;
}
.l-btn3 a::before {
    background-color: #e47415;
}


@media (max-width: 768px) {


.l-btn a {
    height: auto;
    padding: 13px 0;
}

.l-btn a span {
    position: relative;
    left: inherit;
    text-align: center;
    font-size: 6rem;
    display: block;
}



}

@media (max-width: 414px) {

.l-btn a span {
    font-size: 13px;
}

}


/*outer*/

.l-outer a {
    height: 350px;
/*    background-image: url(../img/bg_hotellink.jpg);
    background-size: cover;*/
    display: block;
    position: relative;
    overflow: hidden;
    text-align: center;
}

.l-outer a:after {
    position: absolute;
    content: '';
    display: block;
    width: 100%;
    height: 100%;
    top: 0;
    background: url(../img/bg_hotellink.jpg) no-repeat;
    background-size: cover;
    -webkit-transition: all .3s ease-out;
    -moz-transition: all .3s ease-out;
    -ms-transition: all .3s ease-out;
    transition: all .3s ease-out;
}

.l-outer a:hover:after {
    opacity: .8;
    -moz-transform: scale(1.05);
    -webkit-transform: scale(1.05);
    -ms-transform: scale(1.05);
    transform: scale(1.05);
}

.l-outer a:visited {
    color: #000;
}
.l-outer a:link {
    color: #000;
}

.l-outer .contents_inner {
    height: 100%;
    z-index: 1;
    position: relative;
}

.l-outer-ttl {
    position: absolute;
    top: 43%;
    right: 0;
}

.l-outer .l-section-heading .ja {
    font-size: 30px;
    letter-spacing: 5px;
    font-family: "Lusitana", serif;
}

.l-outer .l-linelink {
    margin-top: 5px;
}

.l-outer .l-linelink {
    position: relative;
    display: inline-block;
    color: #000;
    text-align: center;
    text-decoration: none;
    transition: .3s;
    z-index: 1;
    text-indent: 105px;
    font-size: 15px;
}

.l-outer a:hover,
.l-outer a:hover .l-linelink {
    color: #fff;
}

.l-outer .l-linelink::before {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    margin: auto;
    z-index: 1;
    content: '';
    background: #000;
    height: 1px;
    width: 95px;
}

.l-outer .l-linelink::after {
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    height: 1px;
    z-index: 2;
    margin: auto;
    content: '';
    background: #fff;
    transform-origin: right top;
    transform: scale(0, 1);
    transition: transform .3s;
    width: 95px;
}
.l-outer a:hover .l-linelink::after {
    transform-origin: left top;
    transform: scale(1, 1);
    z-index: 3;
}


@media (max-width: 768px) {

.l-outer a {
    height: 260px;
    background-image: url(../img/bg_hotellinkSp.jpg);
    background-size: cover;
}
.l-outer-ttl {
    position: relative;
    top: 33%;
    right: inherit;
    text-align: center;
}

.l-outer .l-section-heading .ja {
    font-size: 12rem;
}
.l-outer .l-linelink {
    font-size: 7rem;
    text-align: center;
    text-indent: 0;
}

.l-outer .l-linelink::before {
    display: none;
}

.l-outer .l-linelink a {
    text-indent: 45px;
    font-size: 9rem;
}
.l-outer .l-linelink a::after,
.l-outer .l-linelink a::before {
    width: 35px;
}

.l-outer .l-linelink::after {
    display: none;
}

}

@media (max-width: 414px) {
.l-outer a {
    height: 160px;
}
.l-outer .l-section-heading .ja {
    font-size: 21px;
}
.l-outer .l-linelink {
    font-size: 11px;
}

.l-outer .l-linelink a {
    font-size: 15px;
}
}



/* ------------------------------
   loopSlider
------------------------------ */
.loopSliderWrap {
    top: 0;
    left: 0;
    height: 260px;
    overflow: hidden;
    position: absolute;
}
 
.loopSlider {
    width: 100%;
    height: 260px;
    text-align: left;
    position: relative;
    overflow: hidden;
}
 
.loopSlider ul {
    height: 260px;
    float: left;
    overflow: hidden;
}
 
.loopSlider ul li {
    width: 420px;
    height: 260px;
    float: left;
    display: inline;
    overflow: hidden;
}

@media (max-width: 768px) {
.loopSliderWrap {
    height: 130px;
}
 
.loopSlider {
    width: 100%;
    height: 130px;
}
 
.loopSlider ul {
    height: 130px;
}
 
.loopSlider ul li {
    width: 210px;
    height: 130px;
}

.loopSlider ul li img {
    width: 210px;
    height: 130px;
}
}



/*IE10▼*/
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
}


@media (max-width: 360px) {


}


.g-lpwrapper .effect {
    opacity : 0;
    transform : translate(0, -10px);
    transition : all 1000ms;
}

.g-lpwrapper .effect.fadein {
    opacity : 1;
    transform : translate(0, 0);
}


/*.load {
    width: 60px;
    height: 60px;
    -webkit-animation: spin 7s linear infinite;
    -moz-animation: spin 7s linear infinite;
    -ms-animation: spin 7s linear infinite;
    -o-animation: spin 7s linear infinite;
    animation: spin 7s linear infinite;
}

@-webkit-keyframes spin {
    0% {-webkit-transform: rotate(0deg);}
    100% {-webkit-transform: rotate(360deg);}
}
@-moz-keyframes spin {
    0% {-moz-transform: rotate(0deg);}
    100% {-moz-transform: rotate(360deg);}
}
@-ms-keyframes spin {
    0% {-ms-transform: rotate(0deg);}
    100% {-ms-transform: rotate(360deg);}
}
@-o-keyframes spin {
    0% {-o-transform: rotate(0deg);}
    100% {-o-transform: rotate(360deg);}
}
@keyframes spin {
    0% {transform: rotate(0deg);}
    100% {transform: rotate(360deg);}
}
*/

