@charset "UTF-8";

/* access
======================================================================*/
.access{
    width: 100%;
    margin: 0 auto;
    position: relative;
    padding-top: 80px;
    margin-bottom: 120px;
}
.access .inner{
    max-width: 920px; /*860px*/
}

@media screen and (max-width: 480px) {
.access{
    padding-top: 40px;
    margin-bottom: 60px;
}
}

.access h2{
    font-size: 2.6rem;
    padding-bottom: 10px;
    margin-bottom: 80px;
    text-align: center;
    border-bottom: 1px solid #1E3E23;
}
@media screen and (max-width: 480px) {
.access h2{
    font-size: 2.0rem;
    margin-bottom: 20px;
}
}

.access h3{
    font-size: 1.6rem;
    margin-bottom: 20px;
    text-align: left;
}
.access h3 span{
    color: #1E3E23;
}

@media screen and (max-width: 480px) {
.access h3{
    font-size: 1.4rem;
}
}

.access p.caption{
    font-size: 1.4rem;
    text-align: justify;
    line-height: 1.6;
}
.access p.caption span{
    color: #1E3E23;
}
@media screen and (max-width: 480px) {
.access p.caption{
    font-size: 1.2rem;
}
}

.access p.date{
    font-size: 1.4rem;
    text-align: center;
    margin-top: 80px;
}

@media screen and (max-width: 480px) {
.access p.date{
    font-size: 1.1rem;
    margin-top: 40px;
}
}

/***** btn_wrap *****/

ul.btn_wrap {
    display: flex;
	flex-wrap: wrap;
	justify-content: center;
    padding: 40px 0;
}

ul.btn_wrap li {
    margin: 0 10px;
}

@media screen and (max-width: 480px) {
ul.btn_wrap li {
    margin: 0 0 10px;
}
ul.btn_wrap li:last-child {
    margin: 0 0;
}
}


/***** map_wrap *****/

ul.map_wrap {
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

ul.map_wrap li {
    width: 50%;
}

@media screen and (max-width: 480px) {
ul.map_wrap li {
    width: 100%;
}
}



/* outline
======================================================================*/
table.outline{
    width: 100%;
    font-size: 1.4rem;
    margin-bottom: 20px;
    border-top: 1px solid #686C69;
}
table.outline tr{
    border-bottom: 1px solid #686C69;
}
table.outline th{
    width: 230px;
    padding: 20px 10px;
    background-color: #1E3E23;
    vertical-align: top;
    font-weight: 400;
    text-align: center;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}
table.outline td{
    width: calc(100% -230px);
    padding: 20px 20px;
    vertical-align: top;
    text-align: left;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    box-sizing: border-box;
}


@media screen and (max-width: 480px) {
table.outline{
    font-size: 1.2rem;
}
table.outline tr{
    border-bottom: none;
}
table.outline th{
    width: 100%;
    padding: 5px 10px;
    display: block;
}
table.outline td{
    width: 100%;
    width: calc(100% - 0px);
    padding: 10px 10px;
     display: block;
}

}




