@charset "UTF-8";

/* main-visual
======================================================================*/

.main-visual.mv-access{
	background-image: url(../../images/access/main_visual@2x.png);
	background-position: center center;
	background-size: cover;
    background-color: #000308;
}
@media screen and (max-width: 480px){
.main-visual.mv-access{
    background-image: url(../../images/access/main_visual_sp@2x.png);
}
}

/* introduction
======================================================================*/
.introduction{
	width: 100%;
    padding: 60px 0;
}
@media screen and (max-width: 768px){
.introduction{
    padding: 30px 0;
}
}

.intro{
	max-width: 1000px;
    margin: 40px auto;
	/*padding: 0 20px;*/
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}
.intro h3{
    text-align: center;
}

.intro ul.point{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
    border-top: 1px solid #231815;
	border-bottom: 1px solid #231815;
}
@media screen and (max-width: 768px){
.intro ul.point{
    max-width: 92%;
    margin: 0 auto;
}
}

.intro ul.point li{
	width: 50%;
}
@media screen and (max-width: 768px){
.intro ul.point li{
	width: 100%;
}
}

.intro ul.point li:first-child{
    padding: 30px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
    display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
    align-items: center;
}
@media screen and (max-width: 768px){
.intro ul.point li:first-child{
    padding: 20px;
}
}

.intro ul.point h5{
	text-align: left;
    /*font-size: 2.3rem;
    letter-spacing: -0.05em;*/
    margin-bottom: 30px;
}
@media screen and (max-width: 768px){
.intro ul.point h5{
	/*font-size: 2.0rem;*/
    text-align: center;
    margin-bottom: 20px;
}
}

.intro ul.point h5 span{
    display: block;
    font-family: 'Roboto', "Helvetica Neue", "游ゴシック Medium", YuGothic, YuGothicM, "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, sans-serif;
    font-weight: 700;
    color: #4f6077;
}

.intro ul.point p{
    font-size: 1.4rem;
    text-align: justify;
}

@media screen and (max-width: 768px){
.intro ul.point p{
    font-size: 1.2rem;
}
}

/*
@media screen and (max-width: 768px){
.intro{
    margin: 40px auto 0;
}
.intro ul.point{
    padding: 20px;
}
.intro ul.point li{
    width: 100%;
    text-align: center;
    margin-bottom: 30px;
}
.intro ul.point li:last-child{
    padding: 0px;
    margin-bottom: 0px;
}
}
*/

/* access
======================================================================*/
.access{
	width: 100%;
	max-width: 1280px;
	margin: 0 auto 80px;
	position: relative;
	z-index: 1;
	display: flow-root;
}
/*
.position::after {
  content: "";
  display: table;
  clear: both;
}*/
@media screen and (max-width: 768px) {
.access{
	/*padding: 0 20px;*/
	margin: 0 auto 40px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
} 
}

/* box-img */
.access .box-img{
	width: 75%;
	max-width: 952px;
	position: relative;
	float: right;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.access .box-img.rev{
    float: left;
}

@media screen and (max-width: 768px) {
.access .box-img{
    width: 75%;
}
.access .box-img.rev{
    /*float: right;*/
}
}

.access p.data {
    font-size: 1.4rem;
    line-height: 1.4;
    margin-top: 10px;
}

.access .rev p.data {
    text-align: right;
}

.access p.data span{
    font-size: 2.0rem;
}
@media screen and (max-width: 768px) {
.access p.data {
    font-size: 1.2rem;
}
.access .rev p.data {
    text-align: left;
}
.access p.data span{
    font-size: 1.6rem;
}
}

.access p.cap {
    font-size: 1.1rem;
    color: #FFFFFF;
    position: absolute;
    right: 5px;
    bottom: 5px;
}

.access p.cap.blk {
    color: #000000;
}

/* box-txt */
.access .box-txt{
	width: 100%;
	max-width: 1000px;
	position: absolute;
	top: 0;
	left: 50%;
    transform: translateX(-50%);
	text-align: left;
    z-index: 3;
}

.access .box-txt.rev{
	text-align: right;
}
.access .box-txt.rev img{
	margin-left: auto;
}
/*
.ttl_bdr .box-txt{
    top: 90px;
}
*/
@media screen and (max-width: 768px) {
.access .box-txt{
	/*position: relative;
    margin-bottom: 30px;*/
    padding-left: 10px;
}
.access .box-txt img{
	max-width: 68px;
}

.access .box-txt.rev{
	/*text-align: right;*/
    padding-right: 10px;
}
/*
.access .box-txt.rev img{
	margin-left: auto;
}*/
}

/* photo-set */

.photo-set{
    width: 100%;
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between; 
}

.photo-set ul{
	/*background-color: #E6E6E6;*/
}

.photo-set ul li{
	position: relative;
}

/*.photo-set ul li p.cap{
	bottom: 5px!important;
}*/

/* set-one */
.photo-set ul.set-one{
     width: 32%;
    max-width: 298px;
    display: flex;
	flex-wrap: wrap;
}

.photo-set ul.set-one li{
     margin-bottom: 20px;
}

.photo-set ul.set-one li:last-child{
     margin-top: auto;
    margin-bottom: 0;
}

@media screen and (max-width: 480px) {
.photo-set ul.set-one{
    width: 100%;
    max-width: 100%;
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
    margin-bottom: 20px;
}
.photo-set ul.set-one li{
    width: 100%;
}
}

/* set-two */
.photo-set ul.set-two{
    width: 66%;
    max-width: 624px;
    display: flex;
	flex-wrap: wrap;
}
@media screen and (max-width: 480px) {
.photo-set ul.set-two{
    width: 100%;
    max-width: auto;
}
}
.photo-set ul.set-two li{
     margin-bottom: 20px;
}

.photo-set ul.set-two li:last-child{
     margin-top: auto;
    margin-bottom: 0;
}

/* set-three */
.photo-set ul.set-three{
	width: 100%;
	max-width: 952px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

@media screen and (max-width: 480px) {
.photo-set ul.set-three{
    /*margin-top: 20px;*/
}
}
/* set-one-2 */
.photo-set ul.set-one-2{
    width: 31.8%;
    /*max-width: 300px;*/
    display: flex;
	flex-wrap: wrap;
}

.photo-set ul.set-one-2 li:last-child{
     margin-top: auto;
    margin-bottom: 0px;
}

@media screen and (max-width: 480px) {
.photo-set ul.set-one-2{
    width: 100%;
    max-width: 100%;
    display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
    margin-bottom: 20px;
}
.photo-set ul.set-one-2 li:first-child{
    width: 44%;
}
.photo-set ul.set-one-2 li:last-child{
    width: 56%;
}
}

/* set-two-2 */
.photo-set ul.set-two-2{
    width: 67.9%;
    /*max-width: 648px;*/
}
@media screen and (max-width: 480px) {
.photo-set ul.set-two-2{
    width: 100%;
    max-width: auto;
}
}

/*set-three*/
.photo-set ul.set-three{
	width: 100%;
	max-width: 952px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

@media screen and (max-width: 480px) {
.photo-set ul.set-three{
    /*margin-top: 20px;*/
}
}

.photo-set ul.set-three li{
    width: 32%;
    max-width: 298px;
    margin-bottom: 20px;
}
@media screen and (max-width: 480px) {
.photo-set ul.set-three li{
    width: 48%;
    max-width: auto;
    margin-bottom: 20px;
}
}

/*set-four*/
.photo-set ul.set-four{
	width: 100%;
	max-width: 952px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

@media screen and (max-width: 480px) {
.photo-set ul.set-four{
    /*margin-top: 20px;*/
}
}

.photo-set ul.set-four li{
    width: 49%;
    max-width: 470px;
    margin-bottom: 30px;
}
@media screen and (max-width: 480px) {
.photo-set ul.set-four li{
    width: 100%;
    max-width: auto;
    margin-bottom: 20px;
}
}

/*set-two-col*/
.photo-set ul.set-two-col{
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
    margin-top: 30px;
}

.photo-set ul.set-two-col li{
    width: 48%;
    margin-bottom: 20px;
}

.location h5.obi{
    width: 100%;
	font-size: 3.2rem;
    line-height: 1.2;
	color: #FFFFFF;
	text-align: right;
	padding: 5px 20px;
	margin-bottom: 30px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
    background-color: #4f6077;
}
@media screen and (max-width: 768px) {
.location h5.obi{
    font-size: 2.2rem;
    margin-bottom: 20px;
}
}

/* detail-set
======================================================================*/
.detail-set {
	width: 100%;
	max-width: 952px;
    padding-top: 40px;
	margin-left: auto;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	overflow: hidden;
}
@media screen and (max-width: 768px) {
.detail-set {
    padding: 40px 20px 0;
}
}
.detail-set .inside {
	max-width: 625px;
}

.detail-set h5{
    position: relative;
    font-size: 2.3rem;
    letter-spacing: -0.05em;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.detail-set h5::after{
    position: absolute;
    content:'';
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: #231815;
}
@media screen and (max-width: 768px) {
.detail-set h5{
    font-size: 1.8rem;
    padding-bottom: 10px;
    margin-bottom: 20px;
}
}

.detail-set p{
    font-size: 1.4rem;
    letter-spacing: -0.05em;
}
@media screen and (max-width: 768px) {
.detail-set p{
    font-size: 1.2rem;
}
}

.detail-set .photo{
    margin-top: 40px;
}
@media screen and (max-width: 768px) {
.detail-set .photo{
    margin-top: 20px;
}
}

/* ttl_bdr
======================================================================*/
.ttl_bdr{
	max-width: 1000px;
    margin: 0 auto;
    padding: 90px 0 60px;
	border-top: 10px solid rgba(201,188,156,0.20);
}
@media screen and (max-width: 768px){
.ttl_bdr{
    padding: 60px 0 30px;
}
}

.top_bnr p.caption{
    text-align: justify;
    font-size: 1.2rem;
}
@media screen and (max-width: 768px){
.top_bnr p.caption{
    font-size: 1.1rem;
}
}


/* outro
======================================================================*/

.outro{
	max-width: 1000px;
	margin: 40px auto;
	/*padding: 0 20px;*/
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	background-color: #4F6077;
}

@media screen and (max-width: 768px){
.outro{
	width: 92%;
    margin: 40px auto 20px;
}
}

.outro ul.parking{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
}

.outro ul.parking li{
	width: 50%;
}
@media screen and (max-width: 768px){
.outro ul.parking li{
	width: 100%;
    padding: 0;
}
}

.outro ul.parking li:first-child{
    padding: 30px 0px 30px 30px;
	-webkit-box-sizing: border-box;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
    display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
    align-items: center;
}
@media screen and (max-width: 768px){
.outro ul.parking li:first-child{
    padding: 20px;
}
}

.outro ul.parking h5{
	text-align: left;
    font-size: 2.3rem;
     line-height: 1.4;
    letter-spacing: -0.05em;
    padding-bottom: 15px;
    margin-bottom: 20px;
    position: relative;
    color: #FFFFFF;
}
.outro ul.parking h5::after{
    position: absolute;
    content:'';
    left: 0;
    bottom: 0;
    width: 100%;
    height: 1px;
    background-color: #FFFFFF;
}

.outro ul.parking h5 span{
    font-size: 3.8rem;
}

@media screen and (max-width: 768px){
.outro ul.parking h5{
	font-size: 2.0rem;
    text-align: center;
    margin-bottom: 20px;
}
.outro ul.parking h5 span{
	font-size: 2.4rem;
}
}

.outro ul.parking p{
    padding-right: 30px;
    font-size: 1.4rem;
    text-align: justify;
    color: #FFFFFF;
}
@media screen and (max-width: 768px){
.outro ul.parking p{
    font-size: 1.2rem;
    padding-right: 0;
}
}



