@charset "UTF-8";
/* CSS Document */

/*--------------------------------------------------------
　基本設定
--------------------------------------------------------*/



/*--------------------------------------------------------
　PC
--------------------------------------------------------*/

@media print, screen and (min-width: 961px){
	
	footer div.f_bottom div.illust::before{
		content: "";
		width: 119.6%;
		height: 41%;
		background: url("../images/access/f_text_pc.svg") no-repeat;
		background-size: contain;
		top: 17.7%;
		left: -130%;
		z-index: 3;
	}
	
	section {
		width: 100%;
		margin-bottom: 3.33vw;
		margin-bottom: 3.33cqw;
		position: relative;
	}
	
	section .section_inner {
		width: 79.5%;
		max-width: 1130px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		font-size: 1.5rem;
		font-size: clamp(calc((1.5rem * 0.64)), 1.05vw, 1.5rem);
	}
	
	section .section_inner + .section_inner{
		margin-top: 4.2vw;
	}
	
	section .section_inner div.l_block{
		width: 40%;
		position: relative;
	}
	
	section .section_inner:nth-child(2) div.l_block{
		width: 47%;
	}
	
	section .section_inner div.l_block div.illust{
		width: 49%;
		line-height: 0;
		position: absolute;
		top: -2em;
		right: -12.4%;
		z-index: 5;
	}
	
	section .section_inner div.l_block h2{
		width: 56.1%;
		line-height: 0;
		margin: 0 0 3em 0;
	}
	
	section .section_inner div.l_block figure.hours {
		line-height: 0;
	}
	
	section .section_inner div.l_block p {
		font-size: 1.5rem;
		font-size: clamp(calc((1.5rem * 0.64)), 1.05vw, 1.5rem);
		line-height: 1.4;
		font-weight: 500;
	}
	
	section .section_inner div.l_block p + p {
		margin-top: 0.25em;
	}
	
	section .section_inner div.l_block p.sup{
		margin-top: 4em;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
	}
	
	section .section_inner div.l_block p.sup span {
		height: 1.4em;
		line-height: 1;
		display: inline-block;
		vertical-align: text-top;
	}
	
	section .section_inner div.l_block dl {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		font-size: 1.5rem;
		font-size: clamp(calc((1.5rem * 0.64)), 1.05vw, 1.5rem);
		margin-top: 0.75em;
	}
	
	section .section_inner div.l_block dl dt{
		width: 4.5em;
		border: 1px solid #000;
		padding: 0.35em 0 0.25em;
		font-weight: 500;
		text-align: center;
		line-height: 1;
		letter-spacing: 0.1em;
	}
	
	section .section_inner div.l_block dl dd{
		width: calc(100% - 5.5em);
		line-height: 1;
	}
	
	section .section_inner div.l_block address{
		font-style: normal;
		margin-bottom: 1em;
	}
	
	section .section_inner div.l_block p.tel {
		font-size: 5.0rem;
		font-size: clamp(calc((5.0rem * 0.64)), 3.52vw, 5.0rem);
		line-height: 1;
		letter-spacing: 0.05em;
		margin: 1.5em 0 0.5em;
	}
	
	section .section_inner div.l_block p.tel a{
		color: #000;
	}
	
	section .section_inner div.l_block p.tel + p {
		font-size: 2.0rem;
		font-size: clamp(calc((2.0rem * 0.64)), 1.4vw, 2.0rem);
		line-height: 1.4;
		letter-spacing: 0.05em;
		margin-bottom: 0.15em;
	}
	
	section .section_inner div.l_block.far {
		position: relative;
	}
	
	section .section_inner div.l_block.far h3 {
		margin-bottom: 1.5em!important;
	}
	
	section .section_inner div.l_block h3 + p {
		font-size: 1.4rem;
		font-size: clamp(calc((1.4rem * 0.64)), 0.98vw, 1.4rem);
		line-height: 1.4;
		letter-spacing: 0.02em;
		position: absolute;
		top: -0.75em;
		right: 0;
	}
	
	section .section_inner div.r_block{
		width: 48%;
	}
	
	section .section_inner div.r_block div.block {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		font-size: 1.5rem;
		font-size: clamp(calc((1.5rem * 0.64)), 1.05vw, 1.5rem);
		margin-top: 0.5em;
	}
	
	section .section_inner div.r_block div.block div.box{
		width: 60%;
	}
	
	section .section_inner div.r_block div.block div.box p{
		font-size: 1.2rem;
		font-size: clamp(calc((1.2rem * 0.64)), 0.84vw, 1.2rem);
		line-height: 1;
		color: #00a0e9;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
	}
	
	section .section_inner div.r_block div.block div.box p:first-of-type{
		color: #e5006e;
		margin-bottom: 0.5em;
	}
	
	section .section_inner div.r_block div.block div.box p span.arrow{
		width: 3em;
		display: inline-block;
		margin-right: 0.5em;
	}
	
	section .section_inner div.r_block div.block a.g_map{
		width: 33%;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		font-size: 1.6rem;
		font-size: clamp(calc((1.6rem * 0.64)), 1.12vw, 1.6rem);
		line-height: 1;
		text-align: center;
		color: #000;
		border: 1px solid #000;
		border-radius: 5px;
		background: #FFF;
		overflow: hidden;
	}
	
	section .section_inner div.r_block h3,
	section .section_inner div.l_block h3{
		font-size: 1.5rem;
		font-size: clamp(calc((1.5rem * 0.64)), 1.05vw, 1.5rem);
		line-height: 1.4;
		font-weight: 500;
		margin: 0 0 1em 0.1em;
	}
	
	section .section_inner div.r_block h3:nth-child(n + 2) {
		margin: 2.5em 0 1em 0.1em;
	}
	
	section .section_inner:nth-child(2) div.r_block{
		padding-top: 0;
	}
	
	section .section_inner:nth-child(2) div.r_block a.g_map {
        width: 13em;
        display: flex;
        flex-wrap: wrap;
        justify-content: center;
        align-items: center;
        font-size: 1.6rem;
        font-size: clamp(calc((1.6rem * 0.64)), 1.12vw, 1.6rem);
        line-height: 1;
        text-align: center;
        color: #000;
        border: 1px solid #000;
        border-radius: 5px;
        background: #FFF;
        overflow: hidden;
		padding: 0.6em 0 0.5em;
		margin-bottom: 1em;
    }
	
	section .section_inner:nth-child(2) div.r_block div.g_map_box{
		height: 92%;
	}
	
	section .section_inner:nth-child(2) div.r_block div.g_map_box iframe{
		width: 100%;
		height: 100%;
	}
}


@media screen and (min-width:961px) and (max-width: 1500px){
	
}
	

/*--------------------------------------------------------
　SP
--------------------------------------------------------*/

@media screen and (max-width: 960px){
	
	footer {
		margin-top: 6vw;
	}
	
	footer div.f_bottom div.illust::before{
		content: "";
		width: 132.3%;
		height: 45%;
		background: url("../images/access/f_text_sp.svg") no-repeat;
		background-size: contain;
		top: 25%;
		left: -144.7%;
		z-index: 3;
	}
	
	section {
		width: 100%;
		position: relative;
	}
	
	section .section_inner {
		width: 88%;
		margin: 0 auto;
		font-size: calc(1.5rem * 0.72);
		font-size: clamp(calc((1.5rem * 0.72)), 3vw, calc(1.5rem * 1.92));
	}
	
	section .section_inner + .section_inner{
		margin-top: 8vw;
	}
	
	section .section_inner div.l_block{
		width: 100%;
		position: relative;
	}
	
	section .section_inner:nth-child(2) div.l_block{
		width: 98%;
		margin: 0 auto;
	}
	
	section .section_inner div.l_block div.illust{
		width: 40%;
		line-height: 0;
		position: absolute;
		top: -1.25em;
		right: 4%;
		z-index: 5;
	}
	
	section .section_inner div.l_block h2{
		width: 46.2%;
		line-height: 0;
		margin: 0 0 4em 3%;
	}
	
	section .section_inner div.l_block figure.hours {
		line-height: 0;
		width: 94%;
		margin: 0 auto;
	}
	
	section .section_inner div.l_block p {
		width: 94%;
		margin: 0 auto;
		font-size: calc(1.5rem * 0.72);
		font-size: clamp(calc((1.5rem * 0.72)), 3vw, calc(1.5rem * 1.92));
		line-height: 1.4;
		font-weight: 500;
	}
	
	section .section_inner div.l_block p + p {
		margin-top: 0.25em;
	}
	
	section .section_inner div.l_block p.sup{
		margin-top: 2em;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
	}
	
	section .section_inner div.l_block p.sup span {
		height: 1.4em;
		line-height: 1;
		display: inline-block;
		vertical-align: text-top;
	}
	
	section .section_inner div.l_block dl {
		width: 96%;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		align-items: center;
		font-size: calc(1.5rem * 0.72);
		font-size: clamp(calc((1.5rem * 0.72)), 3vw, calc(1.5rem * 1.92));
		margin: 0.75em auto 1.5em;
	}
	
	section .section_inner div.l_block dl dt{
		width: 4.5em;
		border: 1px solid #000;
		padding: 0.35em 0 0.25em;
		font-weight: 500;
		text-align: center;
		line-height: 1;
		letter-spacing: 0.1em;
	}
	
	section .section_inner div.l_block dl dd{
		width: calc(100% - 5.5em);
		line-height: 1;
	}
	
	section .section_inner div.l_block address{
		font-style: normal;
	}
	
	section .section_inner div.l_block p.tel {
		font-size: calc(4.6rem * 0.72);
		font-size: clamp(calc((4.6rem * 0.72)), 9.2vw, calc(4.6rem * 1.92));
		line-height: 1;
		letter-spacing: 0.05em;
		margin: 0.25em auto 0.5em;
	}
	
	section .section_inner div.l_block p.tel a{
		color: #000;
	}
	
	section .section_inner div.l_block p.tel + p {
		font-size: calc(2.0rem * 0.72);
		font-size: clamp(calc((2.0rem * 0.72)), 4vw, calc(2.0rem * 1.92));
		line-height: 1.4;
		letter-spacing: 0.05em;
		margin-bottom: 0.75em;
	}
	
	section .section_inner div.l_block.far h3 {
		margin-bottom: 0.5em!important;
	}
	
	section .section_inner div.l_block.far h3 + p {
		font-size: calc(1.1rem * 0.72);
		font-size: clamp(calc((1.1rem * 0.72)), 2.2vw, calc(1.1rem * 1.92));
		line-height: 1.4;
		letter-spacing: -0.01em;
		margin-bottom: 1.5em;
		margin-left: 0;
	}
	
	section .section_inner div.r_block{
		margin-top: 6vw;
	}
	
	section .section_inner:nth-child(2) div.r_block{
		width: 100vw;
		width: 100cqw;
		margin-top: 10vw;
		margin-left: -7%;
	}
	
	section .section_inner div.r_block div.block {
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
		font-size: calc(1.5rem * 0.72);
		font-size: clamp(calc((1.5rem * 0.72)), 3vw, calc(1.5rem * 1.92));
		margin-top: 0.5em;
	}
	
	section .section_inner div.r_block div.block div.box{
		width: 60%;
	}
	
	section .section_inner div.r_block div.block div.box p{
		font-size: calc(1.0rem * 0.72);
		font-size: clamp(calc((1.0rem * 0.72)), 2vw, calc(1.0rem * 1.92));
		line-height: 1;
		color: #00a0e9;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
		align-items: center;
	}
	
	section .section_inner div.r_block div.block div.box p:first-of-type{
		color: #e5006e;
		margin-bottom: 0.5em;
	}
	
	section .section_inner div.r_block div.block div.box p span.arrow{
		width: 3em;
		display: inline-block;
		margin-right: 0.5em;
	}
	
	section .section_inner:nth-child(2) div.r_block a.g_map{
		width: 13em;
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		align-items: center;
		font-size: calc(1.3rem * 0.72);
		font-size: clamp(calc((1.3rem * 0.72)), 2.6vw, calc(1.3rem * 1.92));
		line-height: 1;
		text-align: center;
		color: #000;
		border: 1px solid #000;
		border-radius: 5px;
		background: #FFF;
		overflow: hidden;
		padding: 0.6em 0 0.5em;
		margin-bottom: 1em;
		margin-left: 7%;
	}
	
	section .section_inner div.r_block h3,
	section .section_inner div.l_block h3 {
		font-size: calc(1.3rem * 0.72);
		font-size: clamp(calc((1.3rem * 0.72)), 2.6vw, calc(1.3rem * 1.92));
		line-height: 1.4;
		font-weight: 500;
		margin: 2em 0 1em 0.1em;
	}
	
	section .section_inner:nth-child(2) div.r_block div.g_map_box{
		width: 100%;
		height: 88vw;
	}
	
	section .section_inner:nth-child(2) div.r_block div.g_map_box iframe{
		width: 100%;
		height: 100%;
	}
}