@charset "UTF-8";
/* CSS Document */
/* ===================================================
	Reset
====================================================== */

#customer_header h1,
#customer_header h2,
#customer_header h3,
#customer_header h4,
#customer_header h5,
#customer_header h6,
#customer_footer h1,
#customer_footer h2,
#customer_footer h3,
#customer_footer h4,
#customer_footer h5,
#customer_footer h6 { margin: 0;}

#customer_header ul,
#customer_header ol,
#customer_header li,
#customer_footer ul,
#customer_footer ol,
#customer_footer li { padding: 0; margin: 0; list-style-type: none;}

#customer_header dl,
#customer_footer dl { padding: 0; margin: 0;}

#customer_header p,
#customer_footer p { padding: 0; margin: 0;}

#customer_footer address { padding: 0; margin: 0;}

#customer_header img,
#customer_footer img { max-width: 100%; height:auto;}




/* ===================================================
	Common
====================================================== */

#customer_header,
#customer_footer {background: url(https://g-awashima.com/common/img/bg.jpg) repeat center/1600px auto #f7f6f4;
	min-width: 1200px; color: #2b2b2b; font-size: 16px; font-weight: normal; line-height: 1.8;
	font-family:"Zen Old Mincho",'游明朝', YuMincho, 'MS PMincho','Hiragino Mincho ProN','Times New Roman',serif;
	-webkit-text-size-adjust: 100%; position: relative;}
    
#customer_header a,
#customer_footer a{ color: #2b2b2b; text-decoration:underline; text-decoration-color: transparent; 
                    transition: 0.8s all; text-underline-offset:0.4em; }
                    
#customer_header a:hover,
#customer_footer a:hover { color: #2b2b2b; text-decoration-color:#2b2b2b;}

#customer_header .btns,
#customer_footer .btns{ display: flex; justify-content: center; flex-direction: column;
	                flex-wrap: wrap; align-items: center; justify-content: center;}
                    
#customer_header .btns li a ,
#customer_footer .btns li a{ display: flex; align-items: center; justify-content: center; text-decoration: none;
                    position: relative; z-index: 1; width: 340px;box-sizing: border-box; }
                    
#customer_header .btns li:first-child a ,
#customer_footer .btns li:first-child a { background:#2b2b2b; color:#e0dad4; min-height: 65px;}

#customer_header .btns li:first-child a:hover,
#customer_footer .btns li:first-child a:hover{ background:rgba(43,43,43,.7);}

#customer_header .btns li:first-child a::after,
#customer_footer .btns li:first-child a::after{ background:rgba(52,52,58,.1); position: absolute; top: 0;left: 0;content: ''; 
                    width: 100%;transform: scale(0, 1); transform-origin: left top; transition: .5s cubic-bezier(0.45, 0, 0.55, 1); z-index: -1;}
#customer_header .btns li:first-child a:hover::after,
#customer_footer .btns li:first-child a:hover::after{ transform: scale(1, 1);}

#customer_header .btns li:last-child,
#customer_footer .btns li:last-child{ margin: 10px auto 0;}

#customer_header .btns li:last-child a,
#customer_footer .btns li:last-child a{ background:rgba(43,43,43,.2); min-height: 40px;}

#customer_header .btns li:last-child a:hover,
#customer_footer .btns li:last-child a:hover{ background:rgba(43,43,43,.1);}

@media screen and (max-width: 600px) {
                    #customer_header,
                    #customer_footer{ min-width: 0;}
}
/* ---------------------------------------------------
	Header
------------------------------------------------------ */
#customer_header { positon:fixed; }
#customer_header #g_header .hd_logo { top: 30px; left: 30px; position:absolute; height: 85px; width: 220px; z-index: 10;}
#customer_header #g_header .hd_logo a { display: flex; flex-direction: column; text-decoration: none;}
#customer_header #g_header .hd_logo p { color:#fff; margin-top:10px;}
#customer_header #g_header .hd_logo p a { color:#fff;}
#customer_header .wrapper { background: url(img/main_img.jpg)no-repeat center/cover #f7f6f4; width:100%; min-height: 80vh; }
#customer_header h1 {color:#fff; display: flex; flex-direction: column; font-size:32px; margin:0 auto; padding-top:240px; 
                    text-transform: uppercase; width:1100px; }
#customer_header h1 span { display: block;}
#customer_header h1 span.en { order: -1; font-size:80px; margin-bottom:-5px;}

#customer_header #g_header{ width: 100%; height: 100px; top: 0; left: 0; position: absolute;}
#customer_header #g_header .hd_btns { display: flex; flex-direction: column; top: 0; right: 10px; position: fixed; width:70px; z-index: 100;}
#customer_header #g_header .hd_btns a { height: 70px; text-decoration: none; align-items: center; justify-content: center; width:100%;}

#customer_header #g_header .btn_menu { display: flex; flex-direction: column; align-items: flex-end;}
#customer_header #g_header .btn_menu span { width: 40px; height: 2px; background: #2b2b2b; transition: width .5s, margin .5s, opacity .5s, transform .5s;}
#customer_header #g_header .btn_menu span + span { margin: 10px 0 0;}
#customer_header #g_header .btn_menu span:last-of-type { width: 30px;}
#customer_header #g_header .btn_menu:hover span:last-of-type { width:40px;}
#customer_header #g_header .close_menu { display: none;}

#customer_header:has(#g_nav:target) #g_header { background: none;}
#customer_header:has(#g_nav:target) #g_header .hd_btns { position: fixed; background: none;}
#customer_header:has(#g_nav:target) #g_header .btn_menu span + span { margin-top: -1px;}
#customer_header:has(#g_nav:target) #g_header .btn_menu span:first-child { transform: rotate(45deg);}
#customer_header:has(#g_nav:target) #g_header .btn_menu span:nth-of-type(2) { opacity: 0;}
#customer_header:has(#g_nav:target) #g_header .btn_menu span:last-of-type { width: 40px; margin-right: 0; transform: rotate(-45deg);}
#customer_header:has(#g_nav:target) #g_header .close_menu { display: block; position: absolute; top: 0; left: 0;z-index: 10; }


@media screen and (max-width: 600px) {
            #customer_header #g_header{ height: auto;}
            #customer_header #g_header .hd_logo { top: 10px; left: 10px; height: auto; width:calc(100% - 190px); }
            #customer_header #g_header .hd_logo img { width:170px;}
            #customer_header #g_header .hd_logo p { font-size:13px; letter-spacing:0; margin:0.5em 0 0 5px;}
            #customer_header #g_header .hd_logo a p span::after { content:none;}
            #customer_header #g_header .hd_btns { flex-direction:row-reverse; right: 10px; top:10px; }
            #customer_header #g_header .hd_btns a { height: 45px;}
            #customer_header #g_header .btn_menu { width: 45px;}
            #customer_header #g_header .btn_menu span { width: 32px;}
            #customer_header #g_header .btn_menu span + span { margin-top: 8px;}
            #customer_header #g_header .btn_menu span:last-of-type { width: 24px; margin-left: 8px;}
            #customer_header #g_header .btn_menu:hover span:last-of-type {margin-left:0; width:32px;}
            #customer_header:has(#g_nav:target) #g_header .btn_menu span + span { margin-top: -2px;}
            #customer_header:has(#g_nav:target) #g_header .btn_menu span:last-of-type { width: 32px; margin-right: 8px; transform: rotate(-45deg);}
            #customer_header .wrapper { min-height: 60vh;}
            #customer_header h1 { font-size:20px; top:30vh; }
            #customer_header h1 span.en { font-size:46px; }
            #customer_header h1{ left:5%; right:auto; width:90%; }
}

/* ---------------------------------------------------
	G-nav
------------------------------------------------------ */

#customer_header #g_nav { position: fixed; top: 0; left: 0; z-index: 90; width: 100%; height: 100vh;
                    background:url(https://g-awashima.com/common/img/bg.jpg);
                    opacity: 0; overflow: auto; pointer-events: none;
                    -webkit-transform: translateZ(0); transition: opacity .5s;}
#customer_header #g_nav:target {pointer-events: auto; opacity: 1;}

#customer_header #g_nav .gn_outer { display: flex; min-height: 100vh; }
#customer_header #g_nav .gn_outer::before {content: ""; width: calc(100% - 600px); min-height: 100vh;
                    background: url(https://g-awashima.com/common/img/gn.jpg) no-repeat center center; background-size: cover;}
#customer_header #g_nav .gn_inner { width: 600px; max-width: 100%; padding: 100px 120px;}
#customer_header #g_nav .gn_logo { margin:0 auto; text-align: center; width:220px;}
#customer_header #g_nav .gn_logo a p { text-decoration: none; margin-top:15px; font-size:13px;}
#customer_header #g_nav .gn_logo a p span { padding-right:1em;}

#customer_header #g_nav .main_nav { margin: 50px 0;}
#customer_header #g_nav .main_nav ul { display: flex; justify-content: space-between; flex-wrap: wrap; }
#customer_header #g_nav .main_nav li{ width: 300px; max-width: 49%;}
#customer_header #g_nav .main_nav li a { display: block; padding: 20px 0 ; box-sizing: border-box; }
#customer_header #g_nav .main_nav li a:after { bottom:20px;}
#customer_header #g_nav .main_nav li a:hover::after{ width: 80%;}
#customer_header #g_nav .btns+p { margin:30px 0 15px 0; text-align: center;}
#customer_header #g_nav .btns+p .tel-link { font-size:30px;}
#customer_header #g_nav .lang { display: flex; align-items: center;justify-content: center; margin-top:55px; }
#customer_header #g_nav .lang li { padding-right:40px;}
#customer_header #g_nav .lang li a { padding:5px 0;}

@media screen and (max-width: 600px) {
            #customer_header #g_nav { height: 100%;}
            #customer_header #g_nav .gn_outer { display: block; min-height: 100%;}
            #customer_header #g_nav .gn_outer::before { content: none;}
            #customer_header #g_nav .gn_inner { padding: 65px 4%; width: 100%; padding-bottom: calc(65px + env(safe-area-inset-bottom)); }
            #customer_header #g_nav .gn_logo { width:100%;}
            #customer_header #g_nav .gn_logo a p { margin-top:15px; font-size:16px;}
            #customer_header #g_nav .gn_logo img{ width: 180px; }

            #customer_header #g_nav .main_nav { margin: 30px auto 50px; width:90%;}     
            #customer_header #g_nav .btns li:last-child { margin: 15px auto 0;}
            #customer_header #g_nav .btn_menu { margin: 30px 0 0; font-size: 12px; line-height: 1; text-align: center;}
}




/* ---------------------------------------------------
	Footer
------------------------------------------------------ */
#customer_footer #footer_wrap { background:#2b2b2b; position: relative;}
#customer_footer #footer,
#customer_footer #footer a { color:#f6f5f3;}
#customer_footer #footer a:hover { color: #f6f5f3; text-decoration-color:#f6f5f3;}
#customer_footer #f_logo { background:#f7f6f4 ; display: flex; flex-direction: column;justify-content: center; position: relative; overflow: hidden; 
                    height: clamp(500px, 40vw, 560px); z-index: 11; }
#customer_footer #f_logo>a { display: block; margin: 5vh auto 0; position: relative; z-index: 12; width:220px;}
#customer_footer #f_logo p {margin:0 auto; padding:20px 0; font-size:14px; z-index: 12;}
#customer_footer #f_logo img.ofi { position: absolute; left:0; top:0; transition: top 0.3s; height: 130%; z-index: 11; }
.ofi { object-fit: cover; width: 100%; height: 100%;}

.fadeUp{
animation-name:fadeUpAnime;
animation-duration:3s;
animation-fill-mode:forwards;
opacity:0;
}
@keyframes fadeUpAnime{
  from {
    opacity: 0;
  transform: translateY(-100px);
  }
  to {
    opacity: 1;
  transform: translateY(0);
  }
}

#customer_footer #footer .inner { display: flex; line-height: 2.2; padding:40px 0;margin: 0 auto; width: 1100px;}
#customer_footer address span { padding-right:15px;}
#customer_footer #f_info { width:400px;}
#customer_footer #f_info>ul>li:nth-of-type(4) { background:url(https://g-awashima.com/common/img/icon_map.png) no-repeat; background-size:16px auto; margin:20px 0; padding-left:20px; }
#customer_footer #f_info li ul { display: flex;}
#customer_footer #f_info li li { margin-right:30px;}
#customer_footer #f_resrv { width:360px; }
#customer_footer #f_resrv .btns li:first-child a { border:1px solid #434a42; width:300px; }
#customer_footer #f_resrv .btns li:first-child a:hover { background:#434a42;text-decoration-color:transparent;}
#customer_footer #f_resrv .btns li { margin-bottom:20px; }
#customer_footer #f_resrv .btns li:last-child a:hover { text-decoration:underline; text-decoration-color: #f6f5f3;}
#customer_footer #f_resrv p { margin:50px auto 0 auto; width:300px;}
#customer_footer #f_nav { margin-left:60px;width:280px; }
#customer_footer #f_nav ul { display: flex; flex-wrap: wrap; flex-direction: column; height: calc(5 * (1.8em + 2 * 1em)); width:100%; }
#customer_footer #f_nav ul li a { display: block; padding:10px 0; }
#customer_footer #copyright { color:#f6f5f3; font-size:14px; padding:30px 0 50px; text-align: center; }

@media screen and (max-width: 600px) {
                    #customer_footer #f_logo { overflow: hidden; height:clamp(300px, 40vw, 360px);}
                    #customer_footer #f_logo a { z-index: 11;}
                    #customer_footer #f_logo img.ofi { z-index: 10;}
                    #customer_footer #footer .inner { flex-direction: column; padding:40px 0 0; width:92%; }
                    #customer_footer address span { display: block;} 
                    #customer_footer #f_info { width:100%;}
                    #customer_footer #f_resrv { margin:50px 4% 0; width:92%;}
                    #customer_footer #f_nav { display: none;}
                    #customer_footer #copyright { padding:10px 0 20px; }
}


