@charset "utf-8";

body{
/*background:#ccc;*/
font-feature-settings:"palt";
font-family: 'Noto Serif JP', serif;
}
img{
max-width:100%;
}
.sp{
display:none;
}
a, a:visiterd{
color:#333;
}
a:hover{
opacity:0.6;
transition:0.3s;
}


/**********
header
**********/
header{
background:rgba(255,255,255,0.6);
width:110px;
height:100vh;
position:fixed;
top:110px;
left:auto;
right:0;
z-index:30;
}
.h_btns{
position:relative;
z-index:2;
background:#fff;
}


.h_menu_btn{
background:#42210b;
padding:10px;
width:100%;
height:110px;
padding:30px;
color:#fff;
}
.h_menu_btn .lines {
align-self: flex-end;
width:40px;
height:26px;
justify-content:space-between;
display:flex;
flex-direction:column;
margin:0 auto 10px;
}
.h_menu_btn .lines span {
display:block;
height:2px;
width:100%;
background:#fff;
margin-right:auto;
margin-left:auto;
transition:all 0.3s ease
}


.pc_nav{
width:calc(100%);
position:fixed;
/*top:-110px;*/
background:#fff;
z-index:50;
transition:all 0.3s ease;
box-sizing:border-box;
}
.g_nav_box{
width:100%;
/*max-width:1350px;*/
display:flex;
align-items:center;
right:110px;
margin:0 auto;
height:110px;
}

.fortieth{
width:220px;
margin-right:20px;
}

.g_nav_logo{
width:110px;
}
.g_nav .m_logo{
}

.g_nav_txt{
display:flex;
justify-content:space-between;
width:calc(100% - 350px);
}
.g_nav .nav_txt{
display:flex;
justify-content:space-between;
align-items:center;
width:87%;
}
.g_nav .nav_txt li{
font-size:15px;
/*padding:10px;*/
border-right:1px solid #172742;
color:#172742;
font-size:0.9em;
width:12.5%;
text-align:center;
position:relative;
height:2.5em;
}
.g_nav .nav_txt li:last-child{
border-right:0;
}
.g_nav .nav_txt p{
}
.g_nav a{
display:block;
}
.g_nav a span{
width:100%;
position:absolute;
top:50%;
left:50%;
transform:translate(-50%, -50%);
}
.g_nav a span.en{
transition:all 0.5s ease;
/*background:#fff;*/
opacity:1;
/*display:block;*/
}
.g_nav a span.jp{
transition:all 0.5s ease;
opacity:0;
/*display:none;*/
}
.g_nav a:hover span.en{
transition:all 0.5s ease;
opacity:0;
/*display:none;*/
}
.g_nav a:hover span.jp{
transition:all 0.5s ease;
opacity:1;
/*display:block;*/
}
.g_nav .nav_rect{
width:13%;
}
.g_nav .nav_rect li{
font-size:10px;
text-align:center;
border:1px solid #333;
margin:5px 0;
}
.g_nav .nav_rect li a{
padding:10px 5px;
}
.g_nav .nav_rect li:hover{
opacity:0.6;
}
/*js_open start*/
.g_nav.js_open {
top:0px;
}
button.js_open .lines span:nth-of-type(1) {
transform: rotate(30deg);
transform-origin: top left;
width:120%
}
button.js_open .lines span:nth-of-type(2) {
width:0
}
button.js_open .lines span:nth-of-type(3) {
transform: rotate(-30deg);
transform-origin: top left;
width:120%
}
/*js_open end*/



.h_scroll{
font-size:13px;
writing-mode:vertical-rl;
height:calc(100vh - 80px);
position:absolute;
bottom:160px;
left:50%;
transform: translateX(-50%);
z-index:1;
}
.h_scroll p{
text-align: right;
}

.h_scroll p span{
margin-top:2em;
}


h1 .logo{
text-align: center;
position:absolute;
top:0;
left:50%;
transform: translateX(-50%);
z-index:10;
}
h1:before{
content:"";
background:#42210b;
height:5px;
width:100%;
display:block;
}




.page_top{
margin:110px auto 90px;
text-align:center;
}


/**********
footer
**********/

.footer_contact{
background:#0f2a5d;

/*background:url(../img/footer_contact_bg.png) no-repeat center center;*/
/*background:url(../img/footer_contact_bg_color.png) repeat-y center center;*/
/*background-size:cover;*/
background-size:100% 100%;
padding:60px 10%;
}
.footer_contact ul{
display:flex;
justify-content:space-between;
max-width:930px;
margin:0 auto;
align-items:flex-end;
}

.f_info{
display:flex;
justify-content:center;
gap:20px;
padding:40px 110px;
font-size:13px;
line-height:1.5em;
}

.copyright{
padding:0 110px 80px;
font-size:13px;
text-align:center;
}


@media screen and (max-width: 950px) {


.pc{
display:none;
}
.sp{
display:block;
}

body{
padding-top:60px;
}
header{
top:0;
background:#fff;
width:100%;
height:60px;
position:fixed;
display:flex;
justify-content:space-between;
}
header img{
max-height:60px;
}
h1{
text-align: center;
position:static;
transform: translateX(0);
z-index:10;
}
h1:before{
content:;
background:transparent;
height:0;
width:0;
display:none;
}

.h_btns{
display:flex;
flex-flow:row-reverse;
}


.h_menu_btn{
background:#42210b;
padding:10px;
width:60px;
height:60px;
padding:15px;
color:#fff;
}
.h_menu_btn .lines {
align-self: flex-end;
width:100%;
height:20px;
justify-content:space-between;
display:flex;
flex-direction:column;
margin:0 auto 2px;
}
.h_menu_btn .lines span {
display:block;
height:2px;
width:100%;
background:#fff;
margin-right:auto;
margin-left:auto;
transition:all 0.3s ease
}
.h_menu_btn .open{
font-size:10px;
}



.h_scroll{
font-size:13px;
writing-mode:vertical-rl;
height:calc(100vh - 80px);
position:absolute;
bottom:160px;
left:50%;
transform: translateX(-50%);
z-index:1;
}

.h_scroll p{
text-align: right;
}

.h_scroll p span{
margin-top:2em;
}

.fixed_btns{
width:100%;
position:fixed;
bottom:0;
display:flex;
justify-content:center;
z-index:100;
background:#fff
}
.fixed_btns li{
/*width:20%;*/
}
.fixed_btns li img{
/*width:100%;*/
}

.g_nav{
width:100%;
height:100%;
position:fixed;
right:-100%;
top:60px;
padding:10% 5%;
z-index:20;
background:#fff;
}
.g_nav_box{
width:90%;
max-width:100%;
display:block;
height:100%;
}

.g_nav_logo{
}
.g_nav .m_logo{
}

.g_nav_txt{
display:block;
width:100%;
}
.g_nav .nav_txt{
display:block;
width:100%;
margin-bottom:5%;
}
.g_nav .nav_txt li{
font-size:15px;
padding:10px 0;
border-right:0;
border-bottom:1px solid #172742;
font-size:0.9em;
width:100%;
text-align:left;
position:static;
height:auto;
}
.g_nav .nav_txt li:last-child{
border-right:0;
border-bottom:0;
}

.g_nav a{
display:block;
}
.g_nav .nav_txt p{
display:flex;
justify-content:space-between;
align-items:center;
}
.g_nav a span{
width:100%;
position:static;
top:0;
left:0;
transform:translate(0, 0);
font-size:4vw;
}
.g_nav a span.en{
opacity:1;
display:inline;
}
.g_nav a span.jp{
opacity:1;
display:inline;
text-align:right;
font-size:80%;
}
.g_nav a:hover span.en{
opacity:1;
}
.g_nav a:hover span.jp{
opacity:1;
}
.g_nav .nav_rect{
display:flex;
justify-content:space-between;
width:100%;
}
.g_nav .nav_rect li{
font-size:2.9vw;
margin:0 0;
width:48%;
}
.g_nav .nav_rect li a{
padding:10px 5px;
}
.g_nav .nav_rect li:hover{
opacity:0.6;
}
/*js_open start*/
.g_nav.js_open {
right:0px;
top:60px;
}
button.js_open .lines span:nth-of-type(1) {
}
button.js_open .lines span:nth-of-type(2) {
}
button.js_open .lines span:nth-of-type(3) {
}
/*js_open end*/


.page_top{
margin:10% auto;
max-width:30%;
}


/**********
footer
**********/
footer{
padding-bottom:25%;
}
.footer_contact{
/*background:#324f7f;*/
/*background:url(../img/footer_contact_bg_sp.png) no-repeat center center;*/
padding:10% 0;
}
.footer_contact ul{
display:block;
max-width:90%;
margin:0 auto;
text-align:center;
}
.footer_contact ul li{
margin-bottom:5%;
}
.footer_contact ul li:last-child{
margin-bottom:0;
}

.f_info{
display:block;
padding:8% 10%;
font-size:3.5vw;
text-align:center;
}

.copyright{
font-size:3.5vw;
text-align:center;
padding:0;
}
}
@media screen and (max-width: 950px) {

}

/*
nav off
*/
/*.g_nav .nav_txt li:nth-child(4),*/
/*.g_nav .nav_txt li:nth-child(5),*/
/*.g_nav .nav_txt li:nth-child(6),*/
/*.g_nav .nav_txt li:nth-child(7),*/
/*.g_nav .nav_txt li:nth-child(8),*/

/*.g_nav .nav_rect li:nth-child(1),*/

/*.h_btns li:nth-child(6),*/

/*.fixed_btns li:nth-child(5)*/{
pointer-events:none;
opacity:0.5;
}
{
pointer-events:none;
opacity:0.5;
}
