/* header */
#header {
    position: relative;
}
#header .about {
    position: absolute;
    bottom: 250px;
    left: calc(50% - 47px);
    z-index: 200;
}

#header .about div{
    position: relative;
}
#header .about div a {
    position: absolute;
}
#header .about div a {
    z-index: 350;
    top: -15px;
    left: 19px;
    animation: heartbeat 1.5s ease-in-out infinite both;
}
#header .about .about-head {
    position: absolute;
    left: -1px;
}
#header .about .about-body {
    position: absolute;
    width: 42px;
    top: 33px;
    left: 27px;
    height: calc(100% + 217px);
    background-image: url(../img/about/about_body.png);
    background-repeat: repeat-y;
    background-position: center top;
    background-size: auto auto;
    z-index: 0;
}

#access {
    background-color: #33a8f1;
    position: relative;
    height:auto;
	color:#ffffff;
	font-size:1.3rem;
    overflow: auto;
}
#access .mark{
	position:absolute;
	display:block;
	background-color:#ffffff;
	width:10px;
	height:10px;
	border-radius:6px;
}
#access .container {
    position: relative;
    z-index: 1;
}
#access .bg {
    position: absolute;
    width: 42px;
    top: -217px;
    left: calc(50% - 20px);
    height: calc(100% + 217px);
    background-image: url(../img/about/about_body.png);
    background-repeat: repeat-y;
    background-position: center top;
    background-size: auto auto;
    z-index: 0;
}

#access .map_container {
    max-width: 400px;
    margin-left: auto;
}

#access .left {
    float: left;
    width: 50%;
    text-align:right;
}

#access .left ul{
	padding-top:60px;
	padding-right:45px;
	/* 繧ｹ繧ｯ繝ｭ繝ｼ繝ｫ繝舌�縺ｮ蛻�レ譎ｯ縺悟承縺ｫ縺壹ｌ縺ｦ縺�ｋ轤ｺ */
	padding-left:40px;
}
#access .left .mark{
	right:-40px;
	top:0.8rem;
}
#access ul li{
	position:relative;
	line-height:2.3rem
}

#access .right {
    width: 50%;
    float: right;
}

#access .right ul{
	padding-top:60px;
	padding-left:60px;
	padding-right:40px;
}
#access .right .mark{
	left:-52px;
	top:0.8rem;
}



#access2 {
    background-color: #33a8f1;
    position: relative;
    height:auto;
	color:#ffffff;
	font-size:1.3rem;
    padding-bottom: 70px;
}
#access2 .mark{
	position:absolute;
	display:block;
	background-color:#ffffff;
	width:10px;
	height:10px;
	border-radius:6px;
}
#access2 .container {
    position: relative;
    z-index: 1;
}
#access2 .bg {
    position: absolute;
    width: 42px;
    top: 0;
    left: calc(50% - 20px);
    height: 100%;
    background-image: url(../img/about/about_body.png);
    background-repeat: repeat-y;
    background-position: center top;
    background-size: auto auto;
    z-index: 0;
}

#access2 .map_container {
    max-width: 400px;
    width: 100%;
    margin-left: auto;
}

#access2 .left {
    float: left;
    width: 50%;
    text-align:right;
}

#access2 .left ul{
	padding-top:0;
	padding-right:45px;
	padding-left:40px;
}
#access2 .left .mark{
	right:-40px;
	top:0.8rem;
}
#access2 ul li{
	position:relative;
	line-height:2.3rem
}

#access2 .right {
    width: 50%;
    float: right;
}

#access2 .right ul{
	padding-top:0;
	padding-left:60px;
	padding-right:40px;
}
#access2 .right .mark{
	left:-52px;
	top:0.8rem;
}
#access2 .maps {
    clear: both;
}

#access2 .map1, 
#access2 .map2 {
    display: flex;
    padding-bottom: 20px;
}

#access2 .map-left {
    width: 50%;
    text-align: right;
    padding-right:45px;
	padding-left:40px;
    display: flex;
    align-items: center;
}

#access2 .map-right {
    display: flex;
    flex-direction: column;
    justify-content: center;
    width: 50%;
	padding-left:60px;
	padding-right:40px;
}

#footer {
    width: 100%;
    height: 50px;
    background-color: #33a8f1;
    position: relative;
}

#footer .bg {
    position:absolute;
    width: 100%;
    height: 16px;
    left: -1px;
    background: url(../img/about/about_foot.png) no-repeat center center;
    background-size: cover;
}

#representative_message {
    position: relative;
    display: flex;
}

#representative_message .img img{
    width: 200px;
    height: auto;
}

/* 縮小時 */
@media screen and (max-width: 1300px) and (orientation: landscape){
    #header .about {
        bottom: 50px;
    }
    #contents .bg {
        top: -17px;
        height: calc(100% + 17px);
    }
}

@media screen and (max-width: 1300px) {
	#access{
		font-size:0.7rem;
	}
	#access .right{
		width:50%;
	}
	#access .left{
		width:50%;
	}
	#access ul li{
		line-height:1.3rem;
	}
	#access .left ul{
		padding-left: 25px;
	}
	#access .left .mark{
        right:-40px;
		top:1.2vw;
	}
	#access .right ul{
		padding-left:40px;
		padding-right: 25px;
	}
	#access .right .mark{
		left:-32px;
		top:1.2vw;
	}
    #access .map_container {
        max-width: 200px;
        margin-left: auto;
    }

    #access2{
		font-size:0.7rem;
	}
	#access2 .right{
		width:50%;
	}
	#access2 .left{
		width:50%;
	}
	#access2 ul li{
		line-height:1.3rem;
	}
	#access2 .left ul{
		padding-left: 25px;
	}
	#access2 .left .mark{
        right:-40px;
		top:1.2vw;
	}
	#access2 .right ul{
		padding-left:40px;
		padding-right: 25px;
	}
	#access2 .right .mark{
		left:-32px;
		top:1.2vw;
	}
    #access2 .map_container {
        max-width: 200px;
        width: 100%;
        margin-left: auto;
    }

    #access2 .map-left {
		padding-left: 25px;
    }
    #access2 .map-right {
		padding-left:40px;
		padding-right: 25px;
    }
}