@charset "utf-8";

/* enと差分あり 注意 */


/*==================================
    contents
==================================*/
section.introduction {
    width: 1020px;
    height: 80px;
    position: sticky;
    top: 0;
    z-index: 100;
    background-color: #fff;
}

#content{
    height:100%;
    box-sizing: border-box;
    overflow: hidden;
    border-top:2px solid #000;
    padding-top: 30px;
}

.content-inner {
    display: flex;
    justify-content: space-between;
}

.content-menu {
    width: 70%;
    margin-right: 10px;
    display: flex;
    justify-content: space-between;
    align-self: flex-end;
}

.content-menu>li {
    /* width: calc(100% / 5); */
}

.content-menu a {
    display: block;
    padding: 10px;
    color: inherit;
    white-space: nowrap;
    position: relative;
}

.content-menu a:hover {
    text-decoration: underline;
}

/* key-visual 
-------------------------*/
.key-visual {
    margin-bottom: 50px;
}

/* bxslider
------------------------- */
.bx-pager-item {
    display: none;
}

/* about us
------------------------- */
.content-title {
    margin-bottom: 20px;
    text-align: center;
    font-size: 24px;
    font-weight: 700;
}

.txt {
    width: 80%;
    margin: 0 auto;
    line-height: 1.8;
}

.box,.box2 {
    margin-bottom: 60px;
}

.list-item {
    width: 80%;
    margin: 0 auto;
    line-height: 2.2;
    list-style: disc;
}

/* our mission 
-------------------------*/
.box2 {
        width: 100%;
        padding: 50px 0;
        box-sizing: border-box;
        background-color: lightgrey;
        /* clip-path: polygon(0 0, 100% 10%, 0 90%, 100% 100%); */
}

/* register 
-------------------------*/
.btn {
    width: 46%;
    height: 60px;
    padding: 0;
    margin: 0 auto 20px;
    font-size: 24px;
    letter-spacing: 0.04em;
    font-weight: 700;
    line-height: 60px;
    text-align: center;
    border-radius: 10px;
    color:#fff;
    background-color: #00559d;
    cursor: pointer;
    transition: all .3s
}

.btn a {
    color: inherit;
}

.btn:hover {
    background-color:#2d81c9;
}

.txt-register {
    margin-bottom: 50px;
    text-align: center;
}

.sub-title {
    text-align: center;
    font-size: 22px;
    margin-bottom: 20px;
}

.list-register {
    width: 70%;
    margin: 0 auto;
    line-height: 2.2;
    list-style: none;
}

.item-group {
    margin-bottom: 50px;
    position: relative;
}

.item {
    font-size: 20px;
    font-weight: 700;
    position: relative;
}

.item-group::before {
    display: block;
    content: "\f4d3";
    font-size: 60px;
    font-family: fontAwesome;
    position: absolute;
    top: -30px;
    bottom:0;
    left: -100px;
    right: 0px;
}

.item-group:nth-of-type(2):before {
    display: block;
    content: "\f4fc";
    font-size: 60px;
    font-family: fontAwesome;
    position: absolute;
    top: -30px;
    bottom:0;
    left: -100px;
    right: 0px;
}

.item-group:nth-of-type(3):before {
    display: block;
    content: "\f19d";
    font-size: 60px;
    font-family: fontAwesome;
    position: absolute;
    top: -30px;
    bottom:0;
    left: -100px;
    right: 0px;
}


.foot-notes{
    text-align: right;
    font-size: 8px;
}

/* register 
-------------------------*/
.list-facilities {
    width: 80%;
    margin: 0 auto;
    line-height: 1.8;
}

.item-f {
    font-size: 20px;
    font-weight: 700;
}

.item-f:first-child {
    margin-top: 40px;
}

/* our members
-------------------------*/
.box-inner {
    display: flex;
    justify-content: center;
    flex-wrap: wrap;
}

.member {
    width: 480px;/* 2人表示 */
    padding: 30px;
    /* width: 320px; 3人表示*/
    /* padding: 30px 60px 30px; 3人表示*/
    box-sizing: border-box;
    text-align: center;
}

.member-name {
    font-weight: 700;
}

.member-txt {
    width: 300px;
    margin: 0 auto;
}

.contact {
    padding-top: 40px;
    text-align: center;
}

.box2 {
    margin-bottom: 80px;
}

.email {
    text-decoration: underline;
    color:blue;
}

/* access
-------------------------*/
.access-box {
    display: grid;
    grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); 
    grid-gap: 50px;
    margin-bottom: 80px;
}
.access-txt {
    /* text-align: justify; */
    padding-left: 1.5em;
    text-indent: -1.4em; 
}
.access-number {
    font-weight: 700;
}

/* top-btn
-------------------------*/
#top-btn {
    width: 50px;
    height: 50px;
    position: fixed;
    right: 40px;
    bottom: 100px;
    background: #455361;
    opacity: 0.6;
    border-radius: 50%;
  }

#top-btn a::before{
font-family: 'Font Awesome 5 Free';
font-weight: 900;
content: '\f102';
font-size: 25px;
color: #fff;
position: absolute;
width: 25px;
height: 25px;
top: -5px;
bottom: 0;
right: 0;
left: 0;
margin: auto;
text-align: center;
}

/* add */
#sideNav ul li li a::before {top: 13px;left: 4px;} /* jp */
.content-menu{width:auto;display:block;}
.content-menu > li {display: inline-block;}
ul.list-item{width: 80%;margin: 0 auto !important;}
.btn{display:block;min-width:230px;} /* jp */
#access .txt{margin-bottom:40px;}
.access-box{text-align:center;}
.access-pic{text-align:left;margin: 0 auto;width:300px;}
.access-number{padding-right: 3px;}
.member{width:50%;}
.member-txt {width:auto;}
.content-title{padding-top:20px;margin-top: -20px;}
.item-group{margin-left:100px;}
.item,
.item-f {line-height: 1.5;}
.list-register{width:auto;max-width: 714px;}
.box-inner {width: 90%;margin: 0 auto;}
.box-inner {width: 90%;margin: 0 auto;}
.txt-register {margin-bottom: 80px;}
.sub-title {margin-bottom: 50px;}


@media screen and (max-width: 479px) {
    .member{width:100%;}
}