@charset "UTF-8";


/***************************************************

	共通コンテンツ部

***************************************************/

:root {
	--sectionc01: #eb6ea5;
	--sectionc02: #00a1c5;
	--sectionc03: #5cb531;
	--sectionc04: #0075c2;
}


html, body{margin:0; padding:0}

body{
	position: relative;
	background: #ffffff;
	font-size: 15px;
	color: #040000;
	line-height: 1.47;
	font-family: 'Noto Sans JP', sans-serif;
	word-wrap: break-word;
	word-break: break-all;
}

.marugo{
	font-family: 'Kosugi Maru', sans-serif;
}

.gothic{
	font-family: 'Noto Sans JP', sans-serif;
}

.mincho{
	font-family: 'Noto Serif JP', serif;
}


a,
a:hover{
	color: #040000;
	text-decoration: none;
	transition: all 0.2s linear;
}

a:hover{
	opacity: 0.8;
	text-decoration: none;
}

a:visited{
	color: #040000;
}

.btn a{
   transition: all 0.2s linear;
}

.btn a:hover{
	opacity: 0.8;
}


.sp-on{
	display: none;
}


.fade image,
.fade{
   transition: all 0.2s linear;
}

img{
	max-width: 100%;
	height: auto;
}

img[src$=".svg"]{
	width: 100%;
	height: auto;
}

b,
strong,
strong span,
.strong {
	font-weight: bold!important;
}

figure{
	margin: 0;
}



#header {
	width: 100%;
	height: 70px;
	background-color: #fff;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	padding: 0 30px;
	box-sizing: border-box;
}

#logo_lp,
#logo{
	width: 180px;
	display: flex;
	justify-content: center;
	align-items: center;
}

#logo_lp a,
#logo a{
	display: block;
}


.wrapper{
	width: 1406px;
	margin: 0 auto;
	padding: 0 20px;
	box-sizing: border-box;
}


#clickable_map_area{
	padding-bottom: 95px;
	position: relative;
	z-index: 2;
	overflow-x: hidden;
}
#clickable_map_area::before{
	content: '';
	display: inline-block;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
	width: 1500px;
	height: 359px;
	background-image: url('../img/bg_top.png');
}

#clickable_map_area .in_wrapp{
	padding-top: 80px;
	background: #fdf7e9;
}

#clickable_map_area::after{
	content: '';
	width: 100%;
	height: 96px;
	background: url(../img/areabg_section01.png) repeat-x 0 0;
	background-size: contain;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
}

#clickable_map_area h1{
	width: 1220px;
	margin: 0 auto 70px;
	position: relative;
	z-index: 2;
}

#clickable_map_area .map_area{
	width: 1248px;
	margin: 0 auto;
}



.section_wrapp{
	position: relative;
	z-index: 1;
	overflow: hidden;
}

.section_wrapp .section_head{
	position: relative;
	margin-bottom: 24px;
}

.section_wrapp .section_head::after{
	content: '';
	width: 100%;
	height: 110px;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0; /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to bottom,  rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
.section_wrapp.section01 .section_head::after{
	bottom: 90px;
}

.section_wrapp .section_head figure img{
	width: 100%;
	height: auto;
}

.section_wrapp .section_head .text_box{
	position: absolute;
	top: 40px;
	width: 625px;
	height: 100%;
	opacity: 0;
	transition: all 0.6s linear;
	display: flex;
	flex-direction: row;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center; /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(to right,  rgba(255,255,255,0) 0%,rgba(255,255,255,0.9) 7%,rgba(255,255,255,0.9) 93%,rgba(255,255,255,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	z-index: 2;
}

.section_wrapp .section_head .text_box.effect {
	opacity: 1;
	top: 0;
}

.section_wrapp .section_head .text_box .text_wrapp{
	width: 484px;
	margin: 0 auto;
	padding-top: 54px;
}

.section_wrapp .section_head .text_box .text_wrapp h2{
	width: 474px;
	margin: 0 auto 16px;
	text-align: center;
}

.section_wrapp .section_head .text_box .text_wrapp .main_caption{
	text-align: center;
	font-size: 26px;
	font-weight: bold;
	line-height: 1.42;
	margin: 0 auto 12px;
}

.section_wrapp .section_head .text_box .text_wrapp .sub_caption{
	font-size: 17px;
	font-weight: bold;
	line-height: 1.75;
	margin: 0 10px;
}

.section_wrapp .section_head .text_box .text_wrapp .car_access{
	border-top: 3px dotted #3e3a39;
	margin-top: 22px;
	padding-top: 28px;
}

.section_wrapp .section_head .text_box .text_wrapp .car_access .catch{
	text-align: center;
	font-size: 24px;
	color: #3e3a39;
	font-weight: bold;
	line-height: 1;
	margin-bottom: 13px;
}

.section_wrapp .section_head .text_box .text_wrapp .car_access .time{
	text-align: center;
}

.section_wrapp .section_head .text_box .text_wrapp .car_access .time span{
	display: inline-block;
	font-size: 42px;
	font-weight: bold;
	line-height: 1;
	padding-left: 99px;
	position: relative;
}

.section_wrapp .section_head .text_box .text_wrapp .car_access .time span::before{
	content: '';
	width: 80px;
	height: 41px;
	display: inline-block;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 0;
}


.section_wrapp .section_cont{
	position: relative;
	padding-bottom: 70px;
}

.section_wrapp .section_cont::before{
	content: '';
	display: inline-block;
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: contain;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, 0);
}

.section_wrapp .section_cont ul{
	width: 1000px;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
	justify-content: space-between;
	align-items: flex-start;
	position: relative;
    z-index: 5;
}

.section_wrapp .section_cont ul li{
	width: 476px;
	margin-bottom: 44px;
	position: relative;
}

.section_wrapp .section_cont ul li span{
	display: block;
}

.section_wrapp .section_cont ul li a{
	display: block;
	padding: 28px 26px 26px;
	text-align: center;
}

.section_wrapp .section_cont ul li a .title{
	width: 416px;
	margin: 0 auto 12px;
}

.section_wrapp .section_cont ul li a .contact{
	border-top: 1px solid #040000;
	border-bottom: 1px solid #040000;
	text-align: center;
	line-height: 1;
	padding: 16px 0;
	margin: 0 auto 12px;
}

.section_wrapp .section_cont ul li a .contact .add{
	font-weight: bold;
	margin-bottom: 14px;
}

.section_wrapp .section_cont ul li a .contact .phone{
	font-size: 35px;
	font-weight: bold;
}

.section_wrapp .section_cont ul li a .info{
	font-weight: bold;
	margin-bottom: 12px;
}

.section_wrapp .section_cont ul li a .info.type02{
	text-align: left;
}

.section_wrapp .section_cont ul li a .info .info_wrapp{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: flex-start;
	text-align: left;
}

.section_wrapp .section_cont ul li a .info.type02 .info_wrapp{
	justify-content: flex-start;
}

.section_wrapp .section_cont ul li a .info.type03 .info_wrapp{
	justify-content: center;
}

.section_wrapp .section_cont ul li a .info .info_wrapp .item{
	width: 90px;
}

.section_wrapp .section_cont ul li a .info .info_wrapp .cont{
	width: 300px;
}

.section_wrapp .section_cont ul li a .info.type03 .info_wrapp .cont {
	width: auto;
}

.section_wrapp .section_cont ul li a figure{
	margin-bottom: 16px;
}

.section_wrapp .section_cont ul li a .caption{
	text-align: left;
	font-weight: bold;
}

.section_wrapp .section_cont ul li.image figure{
	position: absolute;
}


.section_wrapp.section01{
	margin-top: -96px;
}

.section_wrapp.section01 .section_head .text_box{
    left: 98px;
}

.section_wrapp.section01 .section_head .text_box .text_wrapp .main_caption{
	color: var(--sectionc01);
}

.section_wrapp.section01 .section_head .text_box .text_wrapp .car_access .time span{
	color: var(--sectionc01);
}

.section_wrapp.section01 .section_head .text_box .text_wrapp .car_access .time span::before{
	background-image: url('../img/icon_car01.png');
}

.section_wrapp.section01 .section_cont::before{
	width: 1588px;
	height: 1851px;
	background-image: url('../img/bg_section01.png');
}

.section_wrapp.section01 .section_cont ul li a{
	background: #fef4f8;
}

.section_wrapp.section01 .section_cont ul li.image figure{
	width: 463px;
	right: -36px;
	bottom: 0;
}


.section_wrapp.section02 .section_head::after {
    background: linear-gradient(to bottom, rgba(235,246,245,0) 0%,rgba(235,246,245,1) 100%);
}

.section_wrapp.section02 .section_head .text_box{
    right: 98px; /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right,  rgba(235,246,245,0) 0%,rgba(235,246,245,0.9) 7%,rgba(235,246,245,0.9) 93%,rgba(235,246,245,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.section_wrapp.section02 .section_head .text_box .text_wrapp .main_caption{
	color: var(--sectionc02);
}

.section_wrapp.section02 .section_head .text_box .text_wrapp .car_access .time span{
	color: var(--sectionc02);
}

.section_wrapp.section02 .section_head .text_box .text_wrapp .car_access .time span::before{
	background-image: url('../img/icon_car02.png');
}

.section_wrapp.section02 .section_cont::before{
	width: 1588px;
	height: 982px;
	background-image: url('../img/bg_section02.png');
}

.section_wrapp.section02{
	background: #ebf6f5;
}

.section_wrapp.section02::after {
    content: '';
    width: 100%;
    height: 96px;
    background: url(../img/areabg_section02.png) repeat-x 0 0;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

.section_wrapp.section02 .section_cont ul li a{
	background: #fff;
}

.section_wrapp.section02 .section_cont ul li.image figure{
	width: 248px;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}


.section_wrapp.section03 .section_head::after {

}

.section_wrapp.section03 .section_head .text_box{
    left: 98px;
}

.section_wrapp.section03 .section_head .text_box .text_wrapp .main_caption{
	color: var(--sectionc03);
}

.section_wrapp.section03 .section_head .text_box .text_wrapp .car_access .time span{
	color: var(--sectionc03);
}

.section_wrapp.section03 .section_cont::before{
	width: 1588px;
	height: 1292px;
	background-image: url('../img/bg_section03.png');
}

.section_wrapp.section03::after {
    content: '';
    width: 100%;
    height: 96px;
    background: url(../img/areabg_section03.png) repeat-x 0 0;
    background-size: contain;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

.section_wrapp.section03 .section_cont ul li a{
	background: #f6f9e8;
}

.section_wrapp.section03 .section_cont ul li.image figure{
	width: 382px;
	right: -30px;
	bottom: 60px;
}


.section_wrapp.section04 .section_head::after {
    background: linear-gradient(to bottom, rgba(234,246,253,0) 0%,rgba(234,246,253,1) 100%);
}

.section_wrapp.section04 .section_head .text_box{
    right: 98px; /* FF3.6-15 */ /* Chrome10-25,Safari5.1-6 */
background: linear-gradient(to right,  rgba(234,246,253,0) 0%,rgba(234,246,253,0.9) 7%,rgba(234,246,253,0.9) 93%,rgba(234,246,253,0) 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}

.section_wrapp.section04 .section_head .text_box .text_wrapp .main_caption{
	color: var(--sectionc04);
}

.section_wrapp.section04 .section_head .text_box .text_wrapp .car_access .time span{
	color: var(--sectionc04);
}

.section_wrapp.section04 .section_head .text_box .text_wrapp .car_access .time span::before{
	background-image: url('../img/icon_car04.png');
}

.section_wrapp.section04 .section_cont::before{
	width: 1588px;
	height: 100%;
	/* height: 2367px; */
	background-image: url('../img/bg_section04.png');
	background-size: 100% auto;
}

.section_wrapp.section04{
	background: #eaf6fd;
}

.section_wrapp.section04::after {
    content: '';
    width: 100%;
    height: 96px;
    background: url(../img/areabg_section04.png) repeat-x 0 0;
    background-size: contain;
    position: absolute;
    top: 0;
    left: 0;
    right: 0;
}

.section_wrapp.section04 .section_cont ul li a{
	background: #fff;
}

.section_wrapp.section04 .section_cont ul li.image figure{
	width: 233px;
	left: 50%;
	top: 50%;
	transform: translate(-50%, -50%);
}


footer{
	background: #eaf6fd;
	padding-bottom: 50px;
}

footer .footer_link{
	background: #fff;
	padding: 24px 0 10px;
	/* margin-bottom: 24px; */
	line-height: 1;
}

footer .footer_link ul{
	width: 1080px;
	margin: 0 auto;
	display: flex;
	flex-direction: row;
    flex-wrap: wrap;
    align-content: center;
    justify-content: center;
    align-items: center;
}

footer .footer_link ul li{
	margin-bottom: 14px;
	padding: 0 10px;
	border-right: 1px solid #040000;
}

footer .footer_link ul li:last-child,
footer .footer_link ul li:nth-child(4){
	border-right: none;
}

footer .footer_link ul li a{
	font-size: 14px;
}

footer .copyright p{
	text-align: center;
	font-size: 14px;
	line-height: 1;
}

footer .copyright_bnr {
	text-align:center;
	margin:15px auto 20px;
	padding-top: 30px;
}

footer .copyright_bnr img {
	width: 20%!important;
}

/********** pagetop **********/
#pagetop {
	display: none;
    position: fixed;
    right: 20px;
    bottom: 100px;
    z-index: 9999;
    cursor: pointer;
    transition: .4s;
    background-color: #f5a200;
	width: 60px;
	height: 60px;
    border-radius: 50%;
}
#pagetop::before {
    content: '';
    display: inline-block;
    width: 0;
    height: 0;
    margin: 0 10px;
    border-top: 15px solid transparent;
    border-right: 10px solid transparent;
    border-bottom: 15px solid #fff;
    border-left: 10px solid transparent;
    position: absolute;
    top: -20px;
    bottom: 0;
    left: 0;
    right: 0;
    margin: auto;
}
#pagetop:hover {
    opacity: 0.7;
}
#pagetop.fix {
	opacity: 0.9;
    display: block;
}











/********************************************************************************
	リッキド用 CSS
********************************************************************************/

@media(max-width:1406px){

body{
	font-size: 1.209104vw;
}


















}



/********************************************************************************
	スマートフォン用 CSS
********************************************************************************/

@media(max-width:414px){

body{
	font-size: 3.733333vw;
}

.pc-on{
	display: none;
}

.sp-on{
	display: block;
}



#header {
	height: 12vw;
	padding: 0 4vw;
}

#logo,
#logo_lp {
	width: 26.666667vw;
	max-width: 30vw;
}


.wrapper{
	width: auto;
	padding: 0 0;
}


#clickable_map_area{
	padding-bottom: 7.733333vw;
	overflow-x: hidden;
}

#clickable_map_area::before{
	width: 105%;
	height: 0;
	padding-top: 25%;
}

#clickable_map_area .in_wrapp{
	padding: 4.266667vw 6% 0;
}

#clickable_map_area::after{
	height: 8vw;
}

#clickable_map_area h1{
	width: auto;
	margin: 0 auto 4.266667vw;
}

#clickable_map_area .map_area{
	width: auto;
	margin: 0 auto;
}


.section_wrapp .section_head{
	margin: 0 6% 4.8vw;
}

.section_wrapp .section_head::after {
    content: none;
}

.section_wrapp .section_head figure{
	position: relative;
	margin: 0 -6%;
}

.section_wrapp .section_head figure::before{
    content: '';
    width: 100%;
    height: 17.066667vw;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    background: linear-gradient(to bottom, rgba(255,255,255,0) 0%,rgba(255,255,255,1) 100%);
}

.section_wrapp .section_head::after{
	height: 8vw;
}

.section_wrapp .section_head .text_box{
	position: relative;
	top: auto;
	width: auto;
	height: 100%;
}

.section_wrapp .section_head .text_box.effect {
	opacity: 1;
	top: 0;
}

.section_wrapp .section_head .text_box .text_wrapp{
	width: auto;
	margin: 0 auto;
	padding-top: 0;
}

.section_wrapp .section_head .text_box .text_wrapp h2{
	width: 70%;
	margin: 0 auto 3.2vw;
}

.section_wrapp .section_head .text_box .text_wrapp .main_caption{
	font-size: 4.266667vw;
	margin: 0 auto 3.2vw;
}

.section_wrapp .section_head .text_box .text_wrapp .sub_caption{
	font-size: 3.733333vw;
	margin: 0;
}

.section_wrapp .section_head .text_box .text_wrapp .car_access{
	border-top: 0.8vw dotted #3e3a39;
	margin-top: 3.733333vw;
	padding-top: 5.333333vw;
}

.section_wrapp .section_head .text_box .text_wrapp .car_access .catch{
	font-size: 4vw;
	margin-bottom: 3.466667vw;
}

.section_wrapp .section_head .text_box .text_wrapp .car_access .time{
	text-align: center;
}

.section_wrapp .section_head .text_box .text_wrapp .car_access .time span{
	font-size: 7.466667vw;
	padding-left: 17.6vw;
}

.section_wrapp .section_head .text_box .text_wrapp .car_access .time span::before{
	width: 13.333333vw;
	height: 6.666667vw;
}


.section_wrapp .section_cont{
	padding-bottom: 0;
}

.section_wrapp .section_cont::before{
	content: none;
}

.section_wrapp .section_cont ul{
	width: auto;
	margin: 0 6%;
	display: block;
}

.section_wrapp .section_cont ul li{
	width: auto;
	margin-bottom: 8vw;
}

.section_wrapp .section_cont ul li:last-child{
	margin-bottom: 0;
}

.section_wrapp .section_cont ul li a{
	display: block;
	padding: 6.4vw 6% 5.333333vw;
}

.section_wrapp .section_cont ul li a .title{
	width: auto;
	margin: 0 auto 3.2vw;
}

.section_wrapp .section_cont ul li a .contact{
	padding: 3.2vw 0;
	margin: 0 auto 3.2vw;
}

.section_wrapp .section_cont ul li a .contact .add{
	margin-bottom: 3.2vw;
}

.section_wrapp .section_cont ul li a .contact .phone{
	font-size: 6.4vw;
}

.section_wrapp .section_cont ul li a .info{
	margin-bottom: 3.2vw;
	font-size: 3.466667vw;
}

.section_wrapp .section_cont ul li a .info.type02{
	text-align: left;
}

.section_wrapp .section_cont ul li a .info .info_wrapp{
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
	justify-content: center;
	align-items: flex-start;
	text-align: left;
}

.section_wrapp .section_cont ul li a .info.type02 .info_wrapp{
	justify-content: flex-start;
}

.section_wrapp .section_cont ul li a .info .info_wrapp .item{
	width: 17.6vw;
}

.section_wrapp .section_cont ul li a .info .info_wrapp .cont{
	width: 59.733333vw;
}

.section_wrapp .section_cont ul li a figure{
	margin-bottom: 3.2vw;
}

.section_wrapp .section_cont ul li.image figure{
	position: static;
	margin: 0 auto;
}


.section_wrapp.section01{
	margin-top: -7.733333vw;
}

.section_wrapp.section01 .section_head .text_box{
    left: 0;
}

.section_wrapp.section01 .section_cont{
	background: url('../img/bg_section01_sp.png') repeat-y 0 0;
	background-size: 100%;
}

.section_wrapp.section01 .section_cont ul li.image figure{
	width: 40%;
	margin: 0 auto;
}


.section_wrapp.section02 .section_head figure::before{
    background: linear-gradient(to bottom, rgba(235,246,245,0) 0%,rgba(235,246,245,1) 100%);
}

.section_wrapp.section02 .section_head .text_box{
    right: 0;
}

.section_wrapp.section02 .section_cont{
	background: url('../img/bg_section02_sp.png') repeat-y 0 0;
	background-size: 100%;
}

.section_wrapp.section02::after {
    height: 8vw;
}

.section_wrapp.section02 .section_cont ul li.image figure{
	width: 24%;
	transform: translate(0, 0);
}


.section_wrapp.section03 .section_head .text_box{
    left: 0;
}

.section_wrapp.section03 .section_cont{
	background: url('../img/bg_section03_sp.png') repeat-y 0 0;
	background-size: 100%;
}

.section_wrapp.section03::after {
    height: 8vw;
}

.section_wrapp.section03 .section_cont ul li.image figure{
	width: 40%;
}


.section_wrapp.section04 .section_head figure::before{
    background: linear-gradient(to bottom, rgba(234,246,253,0) 0%,rgba(234,246,253,1) 100%);
}

.section_wrapp.section04 .section_head .text_box{
    right: 0;
}

.section_wrapp.section04 .section_cont{
	background: url('../img/bg_section04_sp.png') repeat-y 0 0;
	background-size: 100%;
}

.section_wrapp.section04::after {
    height: 8vw;
}

.section_wrapp.section04 .section_cont ul li.image figure{
	width: 24%;
	transform: translate(0, 0);
}


footer{
	padding-top: 6.666667vw;
	padding-bottom: 3.733333vw;
}

footer .footer_link{
	padding: 3.733333vw 0 2.666667vw;
	margin-bottom: 3.2vw;
}

footer .footer_link ul{
	width: auto;
	margin: 0 6%;
}

footer .footer_link ul li{
	margin-bottom: 3.2vw;
	padding: 0 2.666667vw;
	border-right: 1px solid #040000;
}

footer .footer_link ul li:nth-child(4){
	border-right: 1px solid #040000;
}

footer .footer_link ul li:last-child{
	border-right: none;
}

footer .footer_link ul li a{
	font-size: 3.2vw;
}

footer .copyright p{
	font-size: 3.148vw;
	line-height: 1.5;
	padding: 0 10%;
}

footer .copyright_bnr {
	padding-top: 3vw;
}

footer .copyright_bnr img {
	width: 55%!important;
}


/********** pagetop **********/
#pagetop {
	right: 2vw;
	width: 40px;
	height: 40px;
	bottom: 11vw;
}
#pagetop::before {
	border-top: 13px solid transparent;
	border-right: 8px solid transparent;
	border-bottom: 13px solid #fff;
	border-left: 8px solid transparent;
	position: absolute;
	top: -16px;
}



}




