@charset "UTF-8";


/* ヘッダー--------------------------------------------------------- */

#top-head-noren {
    top: -100px;
    position: fixed;
    width: 100%;
    margin: 100px auto 0;
    z-index: 999;
}

@media (min-width: 1200px) {
    #top-head-noren {
        background: url(../images/common/top_header_bg.png);
        padding: 0 20px;
        background-size: cover;
        background-repeat: no-repeat;
        padding: 0 20px;
        background-position: center;
    }
}

#top-head-noren .inner {
    display: flex;
    justify-content: space-between;
    align-items: center;
    margin: 0 auto;
}

@media (min-width: 320px) {
    #top-head-noren .inner {
        height: 16rem;
    }
}

@media (min-width: 1200px) {
    #top-head-noren .inner {
        height: 18rem;
    }
}

@media (min-width: 320px) {
    #top-head-noren .inner #mobile-head {
        width: 100vw;
        display: flex;
        align-items: center;
        justify-content: center;
    }
    #top-head-noren .inner #mobile-head .logo_fixed {
        width: 60px;
    }
}

@media (min-width: 1200px) {
    #top-head-noren .inner #mobile-head {
        width: fit-content;
    }

    #top-head-noren .inner #mobile-head .logo_fixed {
        display: none;
    }
}

@media (min-width: 1200px) {
    #top-head-noren .inner #mobile-head {
        width: fit-content;
    }
}


@media (min-width: 320px) {
    #top-head-noren .inner #global-nav {
        width: 100%;
    }
}

@media (min-width: 1200px) {
    #top-head-noren .inner #global-nav {
        width: 100%;
    }
}


#top-head-noren .logo {
    margin-bottom: 0;
}

@media (min-width: 320px) {
    #top-head-noren .logo {}
}

@media (min-width: 768px) {
    #top-head-noren .logo {}
}

@media (min-width: 320px) {
    #top-head-noren .logo img {
        max-width: 6rem;
        max-height: 11rem;
    }
}

#global-nav .global_box .tel {
    background: rgba(255, 255, 255, 0.3);
    padding: 1rem;
}
@media (min-width: 320px) {
    #global-nav .global_box .tel .text {
        margin-bottom: 1rem;
    }
    #top-head2 #global-nav .global_box .tel .text {
       font-size: 1.4rem;
    }

    #global-nav .global_box .tel .tel_link p {
        color: #EA7659;
        margin-bottom: 1.5rem
    }
    .noren #global-nav .global_box .tel .tel_link p {
        font-size: 3rem;
        line-height: 1.4;
    }
    #top-head2  #global-nav .global_box .tel .tel_link p {
        font-size: 3rem;
        line-height: 1.2;
    }

    #global-nav .global_box .tel .tel_link p i {
        transform: scale(0.9);
    }

    #global-nav .global_box .logo_pc {
       margin-bottom: 2rem;
       margin-left: 1rem;
        width: 100%;
        display: flex;
        justify-content: center;
        height: 12rem;
    }
}

@media (min-width: 768px) {
    #global-nav .global_box .tel .text {
        margin-bottom: 0;
    }
    #top-head2 #global-nav .global_box .tel .text {
       font-size: 1.4rem;
    }

    #global-nav .global_box .tel .tel_link p {
        color: #EA7659;
        margin-bottom: 0;
    }
    .noren #global-nav .global_box .tel .tel_link p {
        font-size: 3.2rem;
        line-height: 1.4;
    }
    #top-head2  #global-nav .global_box .tel .tel_link p {
        font-size: 2.6rem;
        line-height: 1.2;
    }

    #global-nav .global_box .tel .tel_link p i {
        transform: scale(0.9);
    }
}

@media (min-width: 1200px) {
    #top-head-noren .logo img {
        max-width: 70px;
        max-height: 132px;
    }

    #top-head-noren .logo_pc {
        position: absolute;
        width: 100%;
        display: flex;
        justify-content: center;
    }
}

.noren #global-nav .global_box {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    width: 100%;
    align-items: center;
}

@media (min-width: 320px) {
    #global-nav .global_box {
        margin-top: 0;
        display: grid;
    }
   #top-head2 .inner .logo {
        display: flex;
        align-items: center;
        width: 100%;
        justify-content: flex-start;
        }
}

#top-head2 .inner #global-nav{
    width: 100%;
    }
    
@media (min-width: 1200px) {
    #global-nav .global_box {
        margin-top: 0;
        display: flex;
        align-items: center;
        width: 100%;
        justify-content: space-between;
    }
    #global-nav .global_box .logo_pc{
        position: absolute;
        display: flex;
        justify-content: center;
        width: 100%
    }
    #top-head2 .inner .logo_pc{
        display: none;
    }
    #top-head2 .inner .logo {
        position: absolute;
        justify-content: center;
        top:0;
        height: 100%;
    }
    #top-head2 .inner .logo img{
        width: 72px;
    }
}

#global-nav .global_box .menu {
    display: flex;
    margin: 0;
}

@media (max-width: 1200px) {
    #global-nav .global_box .menu li i {
margin-right: 0.25rem;
    }
    #global-nav .global_box .menu li i.access{
        margin-right: 0;
    }
}
 #global-nav .global_box .menu li i {
   color: #252B92;
   transform: rotate(180deg);
   display: inline-flex;
   align-items: center;
}
#top-head2  #global-nav .global_box .menu li i {
margin-right: 0.25rem;
justify-content: flex-end;
width: fit-content;
}
.noren #global-nav .global_box .menu li i {
    margin-bottom: 0.5rem;
}
#global-nav .global_box .menu li i.access{
    transform: rotate(0deg);
    color: #EA7659;
    transform: scale(1.1);
}

@media (min-width: 320px) {
    .noren #global-nav .global_box .logo_pc {
        order: 1;
        width: 100%;
        margin-left: 2rem;
        margin-bottom: 2rem;
    }
    .noren #global-nav .global_box .logo_pc img{
        max-height: 12rem;
    }
    .noren #global-nav .global_box .menu {
        order: 2;
        padding: 0 15px;
    }
    .noren #global-nav .global_box .menu .global-item{
        display: flex;
    }

    .noren #global-nav .global_box .tel,
    #global-nav .global_box .tel {
        order: 3;
        width: 100%;
        margin-top: 1.5rem;
    }
    

    .noren #global-nav .global_box .tel .text {
        margin-bottom: 0;
    }

    .noren #global-nav .global_box .tel .tel_link p {
        font-size: 3rem;
        line-height: 1.4;
        color: #EA7659;
    }

    .noren #global-nav .global_box .tel .tel_link p i {
        transform: scale(0.9);
    }


}


@media (min-width: 1200px) {

  .noren #global-nav .global_box .tel {
        order: 1;
        width: auto;
        margin-top: 0;
    }
    #global-nav .global_box .tel{
        order: 3;

    }
    #global-nav .global_box .menu{
        order:3;
    }
    .noren #global-nav .global_box .logo_pc {
        width: stretch;
        margin-left: 0rem;
        margin-bottom: 0;
        max-height: 13.5rem;
    }
   
    .noren #global-nav .global_box .tel,
    #global-nav .global_box .tel {
        margin-top: 0;
    }
    .noren   #global-nav .global_box .menu {
        order: 3;
        padding: 1rem;
        background: rgba(255, 255, 255, 0.5);
    }
}

.noren #global-nav .global_box .menu li.contact a {
    border: 1px solid #FFF;
    margin-left: 20px;
    background: rgba(225, 225, 225, 0.5);
    transition: 0.2s;
}

#global-nav .global_box .menu li.contact a:hover {
    opacity: 0.8;
    transition: 0.2s;
}

#global-nav .global_box .menu li.contact a:after {
    display: none;
}

#global-nav .global_box .menu li a,
#global-nav .global_box .menu li span {
    display: inline-block;
    color: #2E2E2E;
white-space: nowrap;
    font-size: 1.4rem;
    font-weight: bold;
    position: relative;
    letter-spacing: 0;
}

@media (min-width: 1200px) {
    .noren #global-nav .global_box .menu li a, #global-nav .global_box .menu li span {
        font-size: 1.5rem;
        writing-mode: vertical-rl;
        
    }
}

#global-nav .global_box .menu li a:hover {
    text-decoration: none;
    opacity: 0.8;
    transition: 0.2s;
}


@media (min-width: 1200px) {
    
}

@media (min-width: 1200px) {
   .noren #global-nav .global_box .menu li a {
        padding: 0.5rem 1.5rem 0.5rem 1.5rem;
        display: flex;
        align-items: center;
        transition: 0.2s;
    }

}

#global-nav .global_box .top_nav {
    margin-top: 0.5rem;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}

@media (min-width: 320px) {
    #global-nav .global_box .top_nav {
        margin-right: 0;
        order: 3;
        width: 100%;
    }
}

@media (min-width: 1200px) {
    #global-nav .global_box .top_nav {
        margin-right: 1rem;
        order: 1;
        width: 55%;
    }
}

#global-nav .global_box .top_nav ul {
    display: flex;
    flex-wrap: wrap;
    align-items: center;
    margin: 0;
}

@media (min-width: 320px) {
    #global-nav .global_box .top_nav ul {
        padding: 0 1rem;
        justify-content: space-between;
        width: 100%;
    }
}

@media (min-width: 1200px) {
    #global-nav .global_box .top_nav ul {
        padding: 0;
        justify-content: flex-end;
        width: 100%;
    }
}

@media (min-width: 320px) {
    #global-nav .global_box .top_nav ul li {
        width: 100%;
        margin-left: 0;
        margin-bottom: 1rem;
    }
}

@media (min-width: 1200x) {
    #global-nav .global_box .top_nav ul li {
        width: 33%;
        margin-left: 0;
        margin-bottom: 0;
    }
}

@media (min-width: 1200px) {
    #global-nav .global_box .top_nav ul li {
        width: auto;
        margin-left: 1rem;
    }
}

@media (min-width: 1200px) {
    #global-nav .global_box .top_nav ul li:first-of-type {
        margin-left: 0;
    }
}

#global-nav .global_box .top_nav ul li a,
#global-nav .global_box .top_nav ul li span {
    padding: 0.3rem 2rem;
    color: #fff;
    border-radius: 50px;
    transition: 0.3s;
    font-size: 1.4rem;
    display: block;
}

#global-nav .global_box .top_nav ul li a:before {
    font-family: "Font Awesome 6 Free";
    font-weight: 900;
    margin-right: 1rem;
}

#global-nav .global_box .top_nav ul li a:hover {
    opacity: 0.7;
}

/* Fixed */
#top-head-noren.fixed {
    margin-top: 0;
    top: 0;
    position: fixed;
    height: auto;
    background: rgba(0, 0, 0, 0.3);
    transition: top 0.3s ease-in;
}

@media (min-width: 320px) {
    #top-head-noren.fixed .logo {
        padding: 0 0 0 1rem;
        display: block !important;
    }
}

@media (min-width: 1200px) {
    #top-head-noren.fixed .logo {
        padding: 0 0 0 2rem;
    }
}

@media (min-width: 320px) {
    #top-head-noren.fixed .logo img {
        max-width: 150px;
    }
}

@media (min-width: 1200px) {
    #top-head-noren.fixed .logo img {
        max-width: 160px;
    }
}

/* Toggle Button */
#nav-toggle {
    display: none;
    position: absolute;
    right: 1.9rem;
    top: 2.4rem;
    width: 28px;
    height: 36px;
    cursor: pointer;
    z-index: 101;
}

#nav-toggle div {
    position: relative;
}

#nav-toggle span {
    content: url(../images/common/humbergur.png);
    display: block;
    position: absolute;
    height: 26px;
    width: 2.5px;
    border-radius: 100px;
    transition: 0.35s ease-in-out;
}

#nav-toggle span:nth-child(1) {
    left: 0;
}

#nav-toggle span:nth-child(2) {
    left: 10px;
}

#nav-toggle span:nth-child(3) {
    left: 20px;
}

.open #nav-toggle {
    width: 28px;
    top: 2rem;
    right: 1.4rem;
}

.open #nav-toggle span {
    height: 32px;
}

.open #nav-toggle span:nth-child(3) {
    left: 0px;
}

.open #mobile-head .logo_fixed {
    display: none;
}

/* #nav-toggle 切り替えアニメーション */
/* #global-nav スライドアニメーション */


@media (max-width: 992px) and (min-width: 320px) {

    #top-head-noren #global-nav .global_box .menu li a,
    #top-head-noren.fixed #global-nav .global_box .menu li a {
        width: -moz-fit-content;
        width: fit-content;
    }
}

@media (max-width: 992px) and (min-width: 768px) {

    #top-head-noren #global-nav .global_box .menu li a,
    #top-head-noren.fixed #global-nav .global_box .menu li a {
        width: 100%;
    }
}

@media (max-width: 1200px) {
    #nav-toggle {
        display: block;
    }

    .open #nav-toggle span:nth-child(1) {
        transform: rotate(315deg);
    }

    .open #nav-toggle span:nth-child(2) {
        width: 0;
        left: 50%;
    }

    .open #nav-toggle span:nth-child(3) {
        transform: rotate(-315deg);
    }

    .open #global-nav {
        /* #global-nav top + #mobile-head height */
        transform: translateY(840px);
    }
}

@media (max-width: 1200px) {

    #top-head-noren,
    .inner {
        width: 100%;
        padding: 0;
    }

    #top-head-noren {
        top: 0;
        position: fixed;
        margin-top: 0;
    }

    #top-head-noren.fixed {
        padding-top: 0;
        background: transparent;
    }

    .noren #mobile-head {
        background: url(../images/common/top_header_bg_sp.png);
        background-position-y: bottom;
        background-position-x: center;
        height: 16rem;
        position: relative;
    }


    #mobile-head {
        width: 100%;
        z-index: 999;
    }

    .open #mobile-head {
        background: rgba(255, 255, 255, 0.95);
        height: 7rem;
        width: 100%;
        display: flex;
    }

    .open #top-head-noren .inner {
        height: 7rem;
    }

    #global-nav {
        position: absolute;
        /* 開いてないときは画面外に配置 */
        top: -770px;
        background: #FFF;
        box-shadow: 1px 1px 6px rgba(0, 0, 0, 0.3);
        width: 100%;
        text-align: center;
        padding: 20px 0 20px;
        transition: 0.4s ease-in-out;
    }

    #global-nav .global_box .menu {
        list-style: none;
        position: static;
        right: 0;
        bottom: 0;
        font-size: 1.4rem;
        display: inline-flex;
        flex-wrap: wrap;
        width: 100%;
    }

    #global-nav .global_box .menu li {
        float: none;
        position: static;
        width: 50%;
    }

    #top-head-noren #global-nav .global_box .menu li a,
    #top-head-noren.fixed #global-nav .global_box .menu li a {
        margin: 0 auto;
        display: block;
        padding: 15px 15px;
    }

    #global-nav .global_box .menu li.contact {
        float: none;
        position: static;
        margin: 10px 0;
    }
}


/* トップページのヘッダー */

@media (min-width: 1200px) {}



@media (min-width: 992px) {
    #top-head-noren.toppage.fixed {
        display: none;
    }
}



/* 途中からの追従ヘッダー */
#top-head-noren.test {
display: none;
}
@media (min-width: 320px) {
    #top-head2 {
        display: none;
    }
   
}

@media (min-width: 320px) {
    #top-head2.m_fixed {
        display: block;
        background: rgba(0, 0, 0, 0.30);
        position: absolute;
        top: 0;
        width: 100%;
        height: 8rem;
        z-index: 999;
    }
}



#top-head2.m_fixed {
    left: 0;
    position: fixed;
    top: 0;
}

#top-head2 .inner {
    background: rgba(255, 255, 255, 0.95);
    padding-bottom: 0;
    padding-top: 0;
    display: flex;
    justify-content: space-between;
    align-items: center;
    height: 100%;
}

#top-head2 .inner .logo {
    margin-bottom: 0;
    padding: 0 15px;
}


#top-head2 ul {
    display: flex;
}
@media (min-width: 320px) {
#top-head2 ul li a {
    color: #FFF;
    text-shadow: 0px 1px 2px rgba(0, 0, 0, 0.20);
    font-family: "Shippori Antique B1";
    padding: 15px 15px;
    width: 100%;
    font-size: 1.3rem;
    letter-spacing: 1.5px;
    display: inline-block;
}
}

@media (min-width: 1200px) {
    #top-head2 .inner {
        padding: 0 15px;
    }
    #top-head2 ul li a {
        font-size: 1.4rem;
        padding: 1rem 0.2vw 1rem 0.2vw;
    }
}

#top-head2 .inner {
    padding-bottom: 0;
    padding-top: 0;
    margin: 0 auto;
}

.global-list {
    display: flex;
    list-style: none;
    margin: 0;
    padding: 0 10px;
}

#top-head2 ul li.contact a {
    border: 1px solid #FFF;
    margin-left: 20px;
}

@media (min-width: 1020px) {
    #top-head2 ul li.contact a {
        font-size: 1.4rem;
    }
}