@charset "UTF-8";
/*
 * cmn_layout.css
 */
/* ==========================================================
!Clearfix
========================================================== */
.clearfix:after {
				display: block;
				clear: both;
				content: "";
}

/* ==========================================================
!Header
========================================================== */
.gheader {
				position: relative;
				width: 100%;
				background: #fff;
}
.gheader ul, .gheader ol {
				margin-bottom: 0;
}
.gheader li {
				padding-bottom: 0;
}
.gheader h1 {
				font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", "Arial", "Helvetica", sans-serif;
				padding-top: 0;
				padding-bottom: 0;
}
.gheader p {
				font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", "Arial", "Helvetica", sans-serif;
				margin: 0;
				padding: 0;
}
.gheader .gheader_inner {
				display: flex;
				justify-content: space-between;
				align-items: center;
				width: 100%;
				height: 13.33333vw;
				margin: 0 auto;
}
.gheader .gheader-logo {
				width: 48.26667vw;
				padding: 0 0 0 4vw;
}
.gheader .gheader-link {
				display: none;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
				.gheader {
								height: 160px;
				}
				.gheader .gheader_inner {
								box-sizing: border-box;
								width: 100%;
								max-width: 960px;
								height: 118px;
								padding: 0 0 53px 16px;
								margin: 0 auto;
				}
				.gheader .gheader-logo {
								max-width: 220px;
								padding: 0;
								margin: 0 16px 0 0;
								margin-bottom: 0;
				}
				.gheader .gheader-logo a {
								line-height: 2;
				}
				.gheader .gheader-logo a img {
								display: block;
				}
				.gheader .gheader-link {
								position: relative;
								top: 0;
								display: flex;
								flex-flow: row nowrap;
								justify-content: flex-end;
								align-items: center;
								width: 100%;
								max-width: 650px;
								height: 100%;
								margin: 0 0 0 1px;
				}
				.gheader .gheader-link li {
								height: 100%;
								margin: 0 0 0 1px;
								background: #f2f5f8 none;
				}
				.gheader .gheader-link li a {
								display: flex;
								align-items: center;
								justify-content: center;
								width: 100%;
								height: 100%;
								padding: 0 10px;
								color: #053a7f;
								font-size: 13px;
								font-weight: 700;
								text-align: center;
								white-space: nowrap;
								transition: all 0.2s ease;
				}
				.gheader .gheader-link li:hover {
								background: #053a7f none;
				}
				.gheader .gheader-link li:hover a {
								color: #ffffff;
				}
				.gheader .gheader-link li.link-calendar a span {
								display: inline-block;
								padding-right: 25px;
								line-height: 2;
								background: url(/assets/images/icn_calendar.png) 100% center no-repeat;
								background-size: 19px auto;
				}
				.gheader .gheader-link li.link-calendar:hover a span {
								background: url(/assets/images/icn_calender.png) 100% center no-repeat;
								background-size: 19px auto;
				}
				.gheader .gheader-link li.link-mysubaru {
								max-width: 110px;
								border-width: 2px 2px 2px 2px;
								border-style: solid;
								border-color: #31c0ff;
								background: #31c0ff none;
				}
				.gheader .gheader-link li.link-mysubaru a {
								color: #ffffff;
				}
				.gheader .gheader-link li.link-mysubaru a span {
								display: inline-block;
								padding-right: 29px;
								line-height: 2;
								background: url(/assets/images/icn_mysubaru_white.png) 100% center no-repeat;
								background-size: 23px auto;
				}
				.gheader .gheader-link li.link-mysubaru:hover {
								background: #ffffff none;
				}
				.gheader .gheader-link li.link-mysubaru:hover a {
								color: #31c0ff;
				}
				.gheader .gheader-link li.link-mysubaru:hover a span {
								background: url(/assets/images/icn_mysubaru_blue.png) 100% center no-repeat;
								background-size: 23px auto;
				}
				.gheader .gheader-link li.star-link {
								max-width: 90px;
								height: 100%;
								border-width: 2px 2px 2px 2px;
								border-style: solid;
								border-color: #31c0ff;
								background: #31c0ff none;
				}
				.gheader .gheader-link li.star-link a {
								color: #ffffff;
				}
				.gheader .gheader-link li.star-link a span {
								display: inline-block;
				}
				.gheader .gheader-link li.star-link:hover {
								background: #ffffff none;
				}
				.gheader .gheader-link li.star-link:hover a {
								color: #31c0ff;
				}
}
/* 960px以上（大きめタブレット 横位置とか） */
@media only screen and (min-width: 960px), print {
				.gheader .gheader_inner {
								position: relative;
				}
				.gheader .gheader_inner:before {
								position: absolute;
								bottom: 0;
								left: -275px;
								display: block;
								width: 275px;
								height: 90px;
								background: url(/assets/images/bg_header01.png) no-repeat 0 0;
								content: "";
				}
				.gheader .gheader_inner:after {
								position: absolute;
								bottom: 0;
								right: -275px;
								display: block;
								width: 275px;
								height: 90px;
								background: url(/assets/images/bg_header02.png) no-repeat 0 0;
								content: "";
				}
}
/* 1024px以上（基本のPC） */
/* 1200px以上（大きめPC） */
/* 1400px以上（大きいPC） */
/* ==========================================================
!Gnavi
========================================================== */
.gheader {
				min-width: 100%;
				border-bottom: 1px solid #e9eaea;
}
.gheader .gheader_navi {
				height: 100%;
}
.gheader .navi-toggle {
				position: relative;
				box-sizing: border-box;
				display: block;
				width: 6.4vw;
				height: 6.4vw;
				margin-right: 4.53333vw;
				transition: all 0.4s;
				cursor: pointer;
}
.gheader .navi-toggle span {
				box-sizing: border-box;
				position: absolute;
				left: 0;
				display: inline-block;
				width: 100%;
				height: 0.8vw;
				background-color: #053a7f;
				transition: all 0.4s;
}
.gheader .navi-toggle span:nth-of-type(1) {
				top: 0.4vw;
}
.gheader .navi-toggle span:nth-of-type(2) {
				top: 2.8vw;
}
.gheader .navi-toggle span:nth-of-type(3) {
				bottom: 0.4vw;
}
.gheader .navi-toggle.active span:nth-of-type(1) {
				transform: translateY(2.53333vw) rotate(-45deg);
}
.gheader .navi-toggle.active span:nth-of-type(2) {
				opacity: 0;
}
.gheader .navi-toggle.active span:nth-of-type(3) {
				transform: translateY(-2.2vw) rotate(45deg);
}
.gheader .gheader_navi {
				box-sizing: border-box;
				position: relative;
				top: 0;
				right: 0;
				display: none;
				height: 100%;
				width: 100%;
				padding-bottom: 6.66667vw;
				background: rgba(5, 58, 127, 0.9);
}
.gheader .gnavi {
				position: absolute;
				top: 0;
				right: 0;
				display: block;
				width: 88vw;
				padding: 0 0 15vh 0;
				background: #f2f5f8;
}
.gheader .gnavi .gnavi_item {
				height: 16.26667vw;
				width: 100%;
				border-top: none;
				border-bottom: 1px solid #053a7f;
				background: #f2f5f8;
}
.gheader .gnavi .gnavi_item a {
				display: flex;
				align-items: center;
				justify-content: flex-start;
				height: 100%;
				width: 100%;
				padding-left: 6.66667vw;
				color: #053a7f;
				font-size: 4.26667vw;
				font-weight: 700;
				background: url(/assets/images/arw_blue.png) 78vw center no-repeat;
				background-size: 3.46667vw auto;
}
.gheader .gnavi .gnavi_item.top {
				display: none;
}
.gheader .gnavi .gnavi_sp_item {
				display: block;
				height: auto;
				width: 100%;
				background: #f2f5f8;
}
.gheader .gnavi .gnavi_sp_item .gnavi_sp_title {
				display: flex;
				align-items: center;
				justify-content: flex-start;
				height: 8.53333vw;
				width: 100%;
				padding-left: 6.66667vw;
				color: #fff;
				font-size: 3.2vw;
				font-weight: 700;
				background: #053a7f;
}
.gheader .gnavi .gnavi_sp {
				margin: 0;
}
.gheader .gnavi .gnavi_sp .gnavi_item a.icn-windows {
				background: url(/assets/images/icn_window_blue.png) 78vw center no-repeat;
				background-size: 3.46667vw auto;
}
.gheader .gnavi .gnavi_sp.half {
				display: flex;
				border-bottom: 1px solid #053a7f;
}
.gheader .gnavi .gnavi_sp.half .gnavi_item {
				width: 50%;
				border-bottom: none;
}
.gheader .gnavi .gnavi_sp.half .gnavi_item a {
				height: 9.6vw;
				margin-top: 3.33333vw;
				background: url(/assets/images/arw_blue.png) 33.6vw center no-repeat;
				background-size: 3.46667vw auto;
}
.gheader .gnavi .gnavi_sp.half .gnavi_item:first-child a {
				border-right: 1px solid #053a7f;
}
.gheader .gnavi .gnavi_sns {
				display: flex;
				flex-flow: row nowrap;
				justify-content: space-between;
				align-items: center;
				margin: 16px 6.66667vw 0;
}
.gheader .gnavi .gnavi_sns li {
				width: 50px;
}
.gheader .gnavi .gnavi_sns li a {
				display: block;
}

.gheader-sns {
				display: none;
}

body.fixed .gheader {
				position: fixed;
				top: 0;
				z-index: 10000;
				height: 100%;
}
body.fixed .gheader_inner {
				background: #fff;
}
body.fixed .gheader_navi {
				overflow: auto;
				/* 変更後 */
				overflow-y: scroll;
				/* スマホ制御 */
				visibility: visible;
				/* 変更後 */
				display: block;
				width: 100%;
				min-width: 100%;
				height: 100%;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
				.gheader {
								border-bottom: none;
				}
				.gheader .gheader_navi {
								position: absolute;
								top: 119px;
								z-index: 9999;
								display: block;
								width: 100%;
								height: 41px;
								padding: 0;
								border-bottom: 1px solid #6988b2;
								color: #ffffff;
								background: #ffffff;
				}
				.gheader .gheader_navi:before {
								position: absolute;
								left: 0;
								bottom: 0;
								z-index: -1;
								width: 100%;
								height: 41px;
								background: #053a7f none;
								content: "";
				}
				.gheader .navi-toggle {
								display: none;
				}
				.gheader .gnavi {
								position: static;
								width: 100%;
								max-width: 960px;
								margin: 0 auto;
								display: flex;
								justify-content: space-around;
								height: 40px;
								background: transparent;
				}
				.gheader .gnavi .gnavi_item {
								position: relative;
								top: -50px;
								height: 40px;
								width: 100%;
								padding: 50px 0 0 0;
								border-top: 0;
								border-bottom: 4px solid #053a7f;
								background: #053a7f;
								transition: all 0.3s ease;
				}
				.gheader .gnavi .gnavi_item.top {
								display: block;
								background: url(/assets/images/bg_hd_top01.png) no-repeat center top;
				}
				.gheader .gnavi .gnavi_item:nth-of-type(2) {
								background: url(/assets/images/bg_hd_shop01.png) no-repeat center top;
				}
				.gheader .gnavi .gnavi_item:nth-of-type(3) {
								background: url(/assets/images/bg_hd_testdrive01.png) no-repeat center top;
				}
				.gheader .gnavi .gnavi_item:nth-of-type(4) {
								background: url(/assets/images/bg_hd_usedcar01.png) no-repeat center top;
				}
				.gheader .gnavi .gnavi_item:nth-of-type(5) {
								background: url(/assets/images/bg_hd_service01.png) no-repeat center top;
				}
				.gheader .gnavi .gnavi_item:nth-of-type(6) {
								background: url(/assets/images/bg_hd_support01.png) no-repeat center top;
				}
				.gheader .gnavi .gnavi_item:nth-of-type(7) {
								background: url(/assets/images/bg_hd_news01.png) no-repeat center top;
				}
				.gheader .gnavi .gnavi_item:nth-of-type(8) {
								background: url(/assets/images/bg_hd_inochi01.png) no-repeat center top;
				}
				.gheader .gnavi .gnavi_item a {
								display: flex;
								align-items: center;
								justify-content: center;
								height: 40px;
								width: 100%;
								padding: 0;
								font-size: 1.4322916667vw;
								color: #ffffff;
								font-weight: 700;
								text-align: center;
								text-decoration: none;
								background: none;
				}
				.gheader .gnavi .gnavi_item a:hover {
								color: #053a7f;
								background: #ffffff none;
				}
				.gheader .gnavi .gnavi_item.on a {
								color: #053a7f;
								background: #ffffff none;
				}
				.gheader .gnavi .gnavi_sp_item {
								display: none;
				}
}
/* 960px以上（大きめタブレット 横位置とか） */
@media only screen and (min-width: 960px), print {
				.gheader .gnavi .gnavi_item a {
								font-size: 13px;
								line-height: 1.25;
				}
				.gheader .gheader-sns {
								width: 100%;
								max-width: 160px;
								display: flex;
								flex-flow: row nowrap;
								justify-content: space-between;
								align-items: center;
								margin: 0 0 0 10px;
				}
				.gheader .gheader-sns li {
								width: 32px;
				}
				.gheader .gheader-sns li a {
								display: block;
				}
}
/* 1024px以上（基本のPC） */
/* 1024px以上（基本のPC） */
/* 1200px以上（大きめPC） */
/* 1400px以上（大きいPC） */
/* ==========================================================
!Footer Common
========================================================== */
.top-eventcal {
				display: block;
				position: fixed;
				width: 29.73333%;
				max-width: 177px;
				right: 1.5vw;
				bottom: 38vw;
				z-index: 1001;
}
.top-eventcal area {
				display: block;
				outline: none;
}
.top-eventcal img {
				width: 100%;
}

.btn_basic_blue01 {
				width: 68vw;
				height: 11.73333vw;
				background: #31c0ff;
				margin: 0 auto 2.66667vw;
}
.btn_basic_blue01 a {
				display: block;
				width: 100%;
				height: 100%;
				padding-right: 6vw;
				padding-top: 2.66667vw;
				color: #fff;
				font-size: 3.46667vw;
				font-weight: 700;
				line-height: 1em;
				box-sizing: border-box;
				text-align: center;
				background: url(/assets/images/arw_white.png) 61.06667vw center no-repeat;
				background-size: 3.46667vw auto;
}
.btn_basic_blue01 a.blank {
				background: url(/assets/images/icn_window_white.png) 61.06667vw center no-repeat;
				background-size: 3.46667vw auto;
}
.btn_basic_blue01 a span {
				font-size: 2.66667vw;
}

.btn_basic_white01 {
				width: 68vw;
				height: 11.73333vw;
				margin: 0 auto 2.66667vw;
				border: #31c0ff solid 0.26667vw;
				box-sizing: border-box;
}
.btn_basic_white01 a {
				display: block;
				width: 100%;
				height: 100%;
				padding-right: 2.66667vw;
				color: #31c0ff;
				font-size: 3.46667vw;
				font-weight: 700;
				line-height: 11.73333vw;
				box-sizing: border-box;
				text-align: center;
				background: url(/assets/images/arw_skyblue.png) 61.06667vw center no-repeat;
				background-size: 3.46667vw auto;
}
.btn_basic_white01 a.blank {
				background: url(/assets/images/icn_window_skyblue.png) 61.06667vw center no-repeat;
				background-size: 3.46667vw auto;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
				.top-eventcal {
								bottom: 130px;
								right: 16px;
								width: 177px;
				}

				.btn_basic_blue01 {
								width: 100%;
								height: 48px;
								margin: 0 auto;
				}
				.btn_basic_blue01 a {
								padding-right: 0;
								padding-top: 1.2em;
								font-size: 14px;
								background: url(/assets/images/arw_white.png) no-repeat right 10px top 50%;
								background-size: 13px auto;
				}
				.btn_basic_blue01 a.blank {
								background: url(/assets/images/icn_window_white.png) no-repeat right 10px top 50%;
								background-size: 13px auto;
				}
				.btn_basic_blue01 a span {
								font-size: 2.66667vw;
				}

				.btn_basic_white01 {
								width: 68vw;
								height: auto;
								margin: 0 auto;
				}
				.btn_basic_white01 a {
								padding-right: 2.66667vw;
								font-size: 14px;
								background: url(/assets/images/arw_skyblue.png) 61.06667vw center no-repeat;
								background-size: 13px auto;
				}
				.btn_basic_white01 a.blank {
								background: url(/assets/images/icn_window_skyblue.png) 61.06667vw center no-repeat;
								background-size: 13px auto;
				}
}
/* ==========================================================
!Footer
========================================================== */
.gfooter {
				overflow-x: hidden;
				position: relative;
				width: 100%;
				min-width: 100%;
				margin: 8% 0 0 0;
				padding-bottom: 23vw;
				text-align: center;
				background: #ffffff none;
}
.gfooter .gfooter-mapbox {
				display: block;
				padding: 40px 10px 40px 10px;
				background: #f2f5f8;
}
.gfooter .gfooter-mapbox .gfooter-map {
				display: block;
				padding: 8% 0;
				background: #f2f5f8;
}
.gfooter .gfooter-mapbox .gfooter-map .map_tab {
				display: flex;
				width: 92vw;
				margin: 5.33333vw auto;
}
.gfooter .gfooter-mapbox .gfooter-map .map_tab_btn {
				width: 50%;
				border: solid #053a7f 0.26667vw;
				padding: 3.73333vw 0;
				background: #fff;
				color: #053a7f;
				text-align: center;
				font-size: 3.46667vw;
				font-weight: 700;
				box-sizing: border-box;
				position: relative;
}
.gfooter .gfooter-mapbox .gfooter-map .map_tab_btn.is-current {
				margin-bottom: 0;
				padding-bottom: 0;
				border: solid #053a7f 0.26667vw;
				color: #fff;
				background: #053a7f;
}
.gfooter .gfooter-mapbox .gfooter-map .map_tab_btn.is-current::before {
				position: absolute;
				top: 100%;
				left: 50%;
				width: 0;
				height: 0;
				margin-left: -1.73333vw;
				border-style: solid;
				border-width: 2.13333vw 1.73333vw 0 1.73333vw;
				border-color: #053a7f transparent transparent transparent;
				content: "";
}
.gfooter .gfooter-mapbox .gfooter-map .tab_panel {
				display: none;
}
.gfooter .gfooter-mapbox .gfooter-map .tab_panel.is-current {
				display: block;
}
.gfooter .gfooter-mapbox .gfooter-map .btn_basic_blue01 a {
				display: block;
				width: 100%;
				padding: 0 2.66667vw 0 0;
				line-height: 3.46667;
}
.gfooter .gfooter-pc-calender {
				display: none;
}
.gfooter .gfooter-sns {
				position: relative;
				z-index: 1;
				height: 46vw;
				padding: 20vw 0 0 0;
				background: #f2f5f8 url(/assets/images/bg_footer01_sp.png) no-repeat 0 6vw;
				background-size: contain;
}
.gfooter .gfooter-sns:before {
				position: absolute;
				top: 16vw;
				left: 0;
				z-index: 0;
				width: 100%;
				height: 30vw;
				background: #053a7f none;
				content: "";
}
.gfooter .gfooter-sns:after {
				position: absolute;
				bottom: -10px;
				left: 84%;
				z-index: 1;
				width: 100%;
				max-width: 297px;
				height: 100%;
				max-height: 99px;
				background: url(/assets/images/bg_footer02.png) no-repeat 0 0;
				background-size: contain;
				content: "";
}
.gfooter .gfooter-sns p {
				position: relative;
				z-index: 1;
				color: #fff;
				font-size: 4.8vw;
				font-weight: 700;
				letter-spacing: 0.04em;
				text-align: center;
}
.gfooter .gfooter-sns ul {
				position: relative;
				z-index: 1;
				display: flex;
				justify-content: center;
				margin: 0;
}
.gfooter .gfooter-sns ul li {
				padding: 0 2vw;
}
.gfooter .gfooter-sns ul img {
				width: 12vw;
}
.gfooter .gfooter-link {
				padding-top: 2vw;
				padding-bottom: 2vw;
				background: #f2f5f8;
}
.gfooter .gfooter-link ul {
				display: flex;
				justify-content: center;
}
.gfooter .gfooter-link ul li {
				width: 50%;
				padding: 2vw 0;
				text-align: center;
				box-sizing: border-box;
}
.gfooter .gfooter-link ul li:first-child {
				border-right: 1px solid #053a7f;
}
.gfooter .gfooter-link ul a {
				display: block;
				width: 100%;
				color: #053a7f;
				font-size: 3.73333vw;
				font-weight: 600;
				letter-spacing: 0.08em;
}
.gfooter .gfooter-navi {
				padding-top: 8vw;
				padding-bottom: 2.66667vw;
}
.gfooter .gfooter-navi ul {
				display: flex;
				justify-content: center;
				flex-wrap: wrap;
}
.gfooter .gfooter-navi ul li {
				margin-bottom: 3.33333vw;
				padding: 0px 2vw;
				border-left: 1px solid #797b7d;
}
.gfooter .gfooter-navi ul li:first-child, .gfooter .gfooter-navi ul li:nth-of-type(4), .gfooter .gfooter-navi ul li:nth-of-type(6) {
				border-left: none;
}
.gfooter .gfooter-navi ul a {
				color: #292d33;
				font-size: 3.2vw;
}
.gfooter .gfooter-navi ul a.icn-windows {
				padding-right: 4vw;
				background: url(/assets/images/icn_window.png) 100% center no-repeat;
				background-size: 2.66667vw auto;
}
.gfooter .gfooter-logo {
				padding-bottom: 10.66667vw;
				text-align: center;
}
.gfooter .gfooter-logo img {
				width: 31.06667vw;
}
.gfooter .gfooter-copyright {
				font-size: 2.4vw;
				text-align: center;
}
.gfooter #back-top {
				display: none;
				position: fixed;
				bottom: 24vw;
				right: 4vw;
				z-index: 110;
				width: 12vw;
				height: 12vw;
				margin-right: 0;
				cursor: pointer;
}

.gfooter-conv .conv_navi {
				box-sizing: border-box;
				position: fixed;
				bottom: 0;
				z-index: 9999;
				width: 100vw;
				padding: 8px;
				border-top: 1px solid #fff;
				background: #292d33 none;
}
.gfooter-conv .conv_navi_list {
				display: flex;
				flex-flow: row wrap;
				justify-content: space-between;
				align-items: center;
				margin: 0;
}
.gfooter-conv .conv_navi_list .conv_navi_list_item {
				box-sizing: border-box;
				width: 50%;
				padding: 2vw 0;
				text-align: center;
				border-left: 1px solid #6a6c71;
				border-width: 0 0 1px 1px;
				border-style: solid;
				border-color: #6a6c71;
				cursor: pointer;
}
.gfooter-conv .conv_navi_list .conv_navi_list_item:nth-child(odd) {
				border-left: none;
}
.gfooter-conv .conv_navi_list .conv_navi_list_item:nth-last-child(-n+2) {
				border-bottom: none;
}
.gfooter-conv .conv_navi_list .conv_navi_list_item span {
				box-sizing: border-box;
				width: auto;
				color: #fff;
				font-size: 3.73333vw;
				font-weight: 700;
}
.gfooter-conv .conv_navi_list .conv_navi_list_item.icn_online span {
				padding-left: 6.5vw;
				background: url(/assets/images/icn_online.png) 0 center no-repeat;
				background-size: 5vw auto;
}
.gfooter-conv .conv_navi_list .conv_navi_list_item.icn_shop span {
				padding-left: 3.86667vw;
				background: url(/assets/images/icn_shop.png) 0 center no-repeat;
				background-size: 2.66667vw auto;
}
.gfooter-conv .conv_navi_list .conv_navi_list_item.icn_calender span {
				padding-left: 5.2vw;
				background: url(/assets/images/icn_calender.png) 0 center no-repeat;
				background-size: 3.86667vw auto;
}
.gfooter-conv .conv_navi_list .conv_navi_list_item.icn_reservation span {
				padding-left: 5.73333vw;
				background: url(/assets/images/icn_reservation.png) 0 center no-repeat;
				background-size: 4.8vw auto;
}
.gfooter-conv .conv_modal {
				display: none;
}
.gfooter-conv .conv_modal.active {
				display: block;
				position: fixed;
				top: 0;
				left: 0;
				width: 100%;
				height: 100%;
				box-sizing: border-box;
				padding-bottom: 24vw;
				background: rgba(5, 58, 127, 0.9);
				z-index: 9000;
}
.gfooter-conv .conv_modal_contents {
				position: absolute;
				text-align: left;
				display: none;
}
.gfooter-conv .btn_close {
				margin: 0 0 0 auto;
				width: 9.46667vw;
				margin-bottom: 1.33333vw;
				cursor: pointer;
}
.gfooter-conv .conv_modal_contents_inner {
				position: relative;
				background: #fff;
				border-radius: 1.06667vw;
}
.gfooter-conv .conv_modal_contents_inner::before {
				content: "";
				position: absolute;
				top: 100%;
				width: 0;
				height: 0;
				border-style: solid;
				border-width: 2vw 1.33333vw 0 1.33333vw;
				border-color: #fff transparent transparent transparent;
}
.gfooter-conv .conv_modal_contents_inner p {
				font-size: 14px;
}
.gfooter-conv .win_online.active {
				width: 78.66667vw;
				left: 4vw;
				bottom: 27vw;
				font-size: 3.46667vw;
				display: block;
}
.gfooter-conv .win_online.active .conv_modal_contents_inner {
				padding: 5.33333vw 0;
				box-sizing: border-box;
}
.gfooter-conv .win_online.active .conv_modal_contents_inner::before {
				left: 8.66667vw;
}
.gfooter-conv .win_online.active .conv_modal_contents_inner p {
				text-align: center;
}
.gfooter-conv .win_online.active .conv_modal_contents_inner .btn_basic_blue01 a {
				display: block;
				width: 100%;
				padding: 0 2.66667vw 0 0;
				line-height: 3.46667;
}
.gfooter-conv .win_shop.active {
				right: 4vw;
				bottom: 27vw;
				display: block;
}
.gfooter-conv .win_shop.active .conv_modal_contents_inner {
				padding: 8vw 5.33333vw;
}
.gfooter-conv .win_shop.active .conv_modal_contents_inner::before {
				right: 8.66667vw;
}
.gfooter-conv .win_calender.active {
				left: 4vw;
				right: 4vw;
				bottom: 27vw;
				display: block;
}
.gfooter-conv .win_calender.active .conv_modal_contents_inner {
				width: 100%;
				padding: 3vw 3vw 3vw 3vw;
				box-sizing: border-box;
}
.gfooter-conv .win_calender.active .conv_modal_contents_inner::before {
				left: 8.66667vw;
}
.gfooter-conv .win_calender.active .conv_modal_contents_inner .calendar_link {
				margin: 0;
}
.gfooter-conv .win_reservation.active {
				width: 78.66667vw;
				right: 4vw;
				bottom: 27vw;
				font-size: 3.46667vw;
				display: block;
}
.gfooter-conv .win_reservation.active .conv_modal_contents_inner {
				padding: 5.33333vw 0;
				box-sizing: border-box;
}
.gfooter-conv .win_reservation.active .conv_modal_contents_inner::before {
				right: 8.66667vw;
}
.gfooter-conv .win_reservation.active .conv_modal_contents_inner p {
				text-align: center;
}
.gfooter-conv .shop_list {
				font-size: 4.8vw;
}
.gfooter-conv .shop_list_item a {
				display: block;
				width: 50.66667vw;
				right-left: 4.66667vw;
				color: #31c0ff;
				font-weight: 700;
				background: url(/assets/images/arw_skyblue.png) 100% center no-repeat;
				background-size: 3.46667vw auto;
}
.gfooter-conv .shop_list_child {
				margin: 6vw 0 9.33333vw 2.66667vw;
				font-size: 3.73333vw;
}
.gfooter-conv .shop_list_child_item {
				margin-bottom: 6.66667vw;
}
.gfooter-conv .shop_list_child_item a {
				width: 48vw;
				font-weight: 500;
}
.gfooter-conv .conv_modal_contents_inner .calendar_time {
				padding: 0 0 2vw 0;
				font-size: 3.7vw;
				font-weight: 700;
				color: #053a7f;
}
.gfooter-conv .btn_eventcal {
				width: 100%;
}
.gfooter-conv .btn_eventcal a {
				display: block;
				width: 100%;
}
.gfooter-conv .btn_eventcal a img {
				width: 100%;
}
.gfooter-conv .calendar_link {
				margin: 0;
				padding-top: 0;
				display: flex;
				justify-content: flex-end;
}
.gfooter-conv .calendar_link a {
				display: block;
				padding-right: 4.66667vw;
				color: #31c0ff;
				font-size: 3.46667vw;
				font-weight: 700;
				letter-spacing: -1px;
				background: url(/assets/images/arw_skyblue.png) right center no-repeat;
				background-size: 3.46667vw auto;
}
.gfooter-conv .reservation_ttl {
				margin-bottom: 6.66667vw;
				color: #ff2640;
				font-size: 4.26667vw;
				font-weight: 700;
}
.gfooter-conv .logo_mysubaru {
				width: 53.86667vw;
				margin: 0 auto 6.66667vw auto;
}
.gfooter-conv .js-cal-slider {
				height: 66.13333vw;
				overflow: hidden;
}
.gfooter-conv .js-cal-slider .slick-slider {
				position: relative;
}
.gfooter-conv .js-cal-slider .slick-arrow {
				overflow: hidden;
				position: absolute;
				top: 3.2vw;
				z-index: 100;
				width: 3.46667vw;
				height: 2.53333vw;
				border: none;
				font-size: 0;
				-webkit-appearance: none;
				   -moz-appearance: none;
				        appearance: none;
				text-indent: 100%;
				white-space: nowrap;
				background: none;
				outline: none;
				cursor: pointer;
}
.gfooter-conv .js-cal-slider .slick-prev {
				left: 4.4vw;
				background: url(/assets/images/arw_white-r.png) 0 0 no-repeat;
				background-size: 100% auto;
}
.gfooter-conv .js-cal-slider .slick-next {
				right: 4.4vw;
				background: url(/assets/images/arw_white.png) 0 0 no-repeat;
				background-size: 100% auto;
}

@media only screen and (max-width: 374px), print {
				.gfooter-conv .win_online.active {
								bottom: 31vw;
				}
				.gfooter-conv .win_shop.active {
								bottom: 31vw;
				}
				.gfooter-conv .win_calender.active {
								bottom: 31vw;
				}
				.gfooter-conv .win_reservation.active {
								bottom: 31vw;
				}
}
/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
				.gfooter {
								position: relative;
								width: 100%;
								padding-bottom: 80px;
								color: #292d33;
								font-weight: 400;
								text-align: center;
								background: #fff;
				}
				.gfooter ul, .gfooter ol {
								margin-bottom: 0;
				}
				.gfooter li {
								padding-bottom: 0;
				}
				.gfooter h1, .gfooter h2 {
								font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", "Arial", "Helvetica", sans-serif;
								padding-top: 0;
								padding-bottom: 0;
				}
				.gfooter p {
								font-family: "Noto Sans JP", "Yu Gothic Medium", "游ゴシック Medium", YuGothic, "游ゴシック体", "メイリオ", "Meiryo", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "Osaka", "ＭＳ Ｐゴシック", "MS P Gothic", "Arial", "Helvetica", sans-serif;
								margin: 0;
								padding: 0;
				}
				.gfooter .gfooter-mapbox {
								display: block;
								padding: 40px 10px 40px 10px;
								background: #f2f5f8;
				}
				.gfooter .gfooter-mapbox .gfooter-mapbox_inner {
								display: flex;
								flex-flow: row nowrap;
								justify-content: space-between;
								align-items: flex-start;
								width: 100%;
								max-width: 960px;
								margin: 0 auto;
				}
				.gfooter .gfooter-mapbox .m-midasi-2 {
								color: #053a7f;
								font-size: 22px;
								font-weight: 700;
								text-align: center;
				}
				.gfooter .gfooter-mapbox .m-midasi-2:after {
								content: none;
				}
				.gfooter .gfooter-mapbox .gfooter-map {
								width: calc(50% - 2%);
								padding: 0;
				}
				.gfooter .gfooter-mapbox .gfooter-map .map_tab {
								display: flex;
								width: 100%;
								max-width: 448px;
								margin: 25px auto 28px auto;
				}
				.gfooter .gfooter-mapbox .gfooter-map .panel-group {
								margin-bottom: 40px;
				}
				.gfooter .gfooter-mapbox .gfooter-map .map_tab_btn {
								box-sizing: border-box;
								position: relative;
								width: 50%;
								padding: 17px 0;
								border: solid #053a7f 1px;
								color: #053a7f;
								font-size: 16px;
								font-weight: 700;
								text-align: center;
								background: #fff;
								cursor: pointer;
				}
				.gfooter .gfooter-mapbox .gfooter-map .map_tab_btn:hover {
								opacity: 0.6;
				}
				.gfooter .gfooter-mapbox .gfooter-map .map_tab_btn.is-current {
								background: #053a7f;
								color: #fff;
								border: solid #053a7f 1px;
								padding-bottom: 0;
								margin-bottom: 0;
				}
				.gfooter .gfooter-mapbox .gfooter-map .map_tab_btn.is-current::before {
								content: "";
								position: absolute;
								top: 100%;
								left: 50%;
								width: 0;
								height: 0;
								margin-left: -4px;
								border-style: solid;
								border-width: 10px 8px 0 8px;
								border-color: #053a7f transparent transparent transparent;
				}
				.gfooter .gfooter-mapbox .gfooter-map .map_tab_panel {
								height: 340px;
								display: none;
				}
				.gfooter .gfooter-mapbox .gfooter-map .map_tab_panel.is-current {
								display: block;
				}
				.gfooter .gfooter-mapbox .gfooter-map .btn_basic_blue01 a {
								padding: 0;
								font-size: 14px;
				}
				.gfooter .gfooter-pc-calender {
								display: block;
								width: calc(50% - 2%);
				}
				.gfooter .gfooter-pc-calender .pc-calender_inner {
								padding-bottom: 10px;
								margin-top: 25px;
								background: #fff;
								position: relative;
				}
				.gfooter .gfooter-pc-calender .pc-calendar_time {
								text-align: left;
								padding: 0 0 0 22px;
								font-size: 12px;
								font-weight: 700;
								color: #292d33;
				}
				.gfooter .gfooter-pc-calender .pc-calender_btnarea {
								display: flex;
								justify-content: space-between;
				}
				.gfooter .gfooter-pc-calender .pc-calender_btnarea .pc-calender_btn {
								box-sizing: border-box;
								width: 48%;
								max-width: 216px;
								height: 48px;
								margin: 30px auto 0 auto;
								border: solid #053a7f 1px;
								background: #fff;
				}
				.gfooter .gfooter-pc-calender .pc-calender_btnarea .pc-calender_btn a {
								display: block;
								color: #053a7f;
								text-align: center;
								font-size: 14px;
								font-weight: 400;
								line-height: 48px;
								background: url(/assets/images/arw_blue.png) 188px center no-repeat;
								background-size: 16px auto;
								letter-spacing: -1px;
				}
				.gfooter .gfooter-pc-calender .pc-calender_btnarea .pc-calender_btn2 {
								box-sizing: border-box;
								width: 48%;
								max-width: 216px;
								height: 48px;
								background: #fff;
								margin: 30px auto 0 auto;
				}
				.gfooter .gfooter-pc-calender .pc-calender_btnarea .pc-calender_btn2 a {
								display: block;
								color: #fff;
								text-align: center;
								font-size: 14px;
								font-weight: 400;
								line-height: 48px;
								background: #31c0ff url(/assets/images/arw_white.png) 188px center no-repeat;
								background-size: 16px auto;
								letter-spacing: -1px;
				}
				.gfooter .gfooter-pc-calender .js-cal-slider {
								height: 374px;
								overflow: hidden;
				}
				.gfooter .gfooter-pc-calender .slick-slider {
								position: relative;
				}
				.gfooter .gfooter-pc-calender .slick-arrow {
								background: none;
								border: none;
								outline: none;
								-webkit-appearance: none;
								   -moz-appearance: none;
								        appearance: none;
								text-indent: 100%;
								white-space: nowrap;
								overflow: hidden;
								position: absolute;
								font-size: 0;
								top: 18px;
								width: 16px;
								height: 12px;
								z-index: 100;
								cursor: pointer;
								opacity: 1;
								font-size: 0;
				}
				.gfooter .gfooter-pc-calender .slick-prev {
								left: 25px;
								background: url(/assets/images/arw_white-r.png) 0 0 no-repeat;
								background-size: 100% auto;
								transition: 0.2s;
				}
				.gfooter .gfooter-pc-calender .slick-prev:hover {
								left: 20px;
				}
				.gfooter .gfooter-pc-calender .slick-next {
								right: 25px;
								background: url(/assets/images/arw_white.png) 0 0 no-repeat;
								background-size: 100% auto;
								transition: 0.2s;
				}
				.gfooter .gfooter-pc-calender .slick-next:hover {
								right: 20px;
				}
				.gfooter .gfooter-sns {
								height: auto;
								padding: 10vw 0 24px 0;
								background: #f2f5f8 url(/assets/images/bg_footer01.png) no-repeat 0 0;
								background-size: contain;
				}
				.gfooter .gfooter-sns:before {
								position: absolute;
								top: 7.7vw;
								left: 0;
								z-index: 0;
								width: 100%;
								max-height: 125px;
								content: "";
				}
				.gfooter .gfooter-sns:after {
								bottom: 0;
								left: 50%;
								transform: translateX(183px);
								content: "";
				}
				.gfooter .gfooter-sns p {
								position: relative;
								z-index: 1;
								color: #fff;
								font-size: 15px;
								font-weight: 700;
								letter-spacing: 0.04em;
								text-align: center;
				}
				.gfooter .gfooter-sns ul {
								position: relative;
								z-index: 1;
								display: flex;
								justify-content: center;
				}
				.gfooter .gfooter-sns ul li {
								padding: 16px 16px 0 16px;
				}
				.gfooter .gfooter-sns ul li img {
								width: 57px;
				}
				.gfooter .gfooter-link {
								background: #f2f5f8;
								padding: 12px 0;
				}
				.gfooter .gfooter-link ul {
								display: flex;
								justify-content: center;
								max-width: 960px;
								margin: 0 auto;
				}
				.gfooter .gfooter-link ul li {
								width: 200px;
								padding: 5px 40px;
				}
				.gfooter .gfooter-link ul li:first-child {
								border-right: 1px solid #053a7f;
				}
				.gfooter .gfooter-link ul a {
								font-size: 15px;
								color: #053a7f;
								letter-spacing: 0.08em;
								font-weight: 700;
				}
				.gfooter .gfooter-navi {
								padding: 16px 0;
				}
				.gfooter .gfooter-navi ul {
								display: flex;
								justify-content: center;
				}
				.gfooter .gfooter-navi ul li {
								padding: 0px 8px;
								border-left: 1px solid #797b7d;
				}
				.gfooter .gfooter-navi ul li:first-child {
								border-left: none;
				}
				.gfooter .gfooter-navi ul li:nth-of-type(4), .gfooter .gfooter-navi ul li:nth-of-type(6) {
								border-left: 1px solid #797b7d;
				}
				.gfooter .gfooter-navi ul a {
								font-size: 12px;
								color: #292d33;
				}
				.gfooter .gfooter-navi ul a.icn-windows {
								padding-right: 18px;
								background: url(/assets/images/icn_window.png) 100% center no-repeat;
								background-size: 12px auto;
				}
				.gfooter .gfooter-logo {
								padding-bottom: 30px;
				}
				.gfooter .gfooter-logo img {
								width: 233px;
				}
				.gfooter .gfooter-copyright {
								font-size: 10px;
								text-align: center;
				}
				.gfooter #back-top {
								display: none;
								position: fixed;
								bottom: 80px;
								right: 50px;
								width: 56px;
								height: 56px;
								z-index: 110;
				}
				.gfooter #back-top img {
								width: 100%;
				}

				.gfooter-conv {
								display: none;
				}
}
/* 960px以上（大きめタブレット 横位置とか） */
/* 1024px以上（基本のPC） */
/* 1200px以上（大きめPC） */
/* 1400px以上（大きいPC） */
@media only screen and (min-width: 1400px), print {
				.gfooter .gfooter-sns {
								padding: 136px 0 24px 0;
								background-size: 1500px auto;
				}
				.gfooter .gfooter-sns:before {
								top: 118px;
				}
}
/* ==========================================================
!Slick
========================================================== */
.pc_only {
				display: none;
}

.sp_only {
				display: block;
}

.u-for-pc {
				display: none !important;
}

.u-for-sp {
				display: inline-block !important;
}

/* 768px以上（タブレット） */
@media only screen and (min-width: 768px), print {
				.pc_only {
								display: block;
				}

				.sp_only {
								display: none;
				}

				.u-for-pc {
								display: inline-block !important;
				}

				.u-for-sp {
								display: none !important;
				}

				a[href*="tel:"] {
								color: #000000;
								pointer-events: none;
								cursor: default;
								text-decoration: none;
				}
}
.txt_caution03 {
				color: #ff2640;
}
    .gnavi_note {
        color: #555;
font-size:10px;
    }


