@charset "UTF-8";
/* トップページ用：reset.css + common.css + home.css を1つにまとめたもの（表示速度対策 2026-10-11）
   元のCSSを直したときは、このファイルも作り直してください */

/* ===== reset.css ===== */
/* CSS Document */

html,
body,
div,
span,
applet,
object,
iframe,
h1,
h2,
h3,
h4,
h5,
h6,
p,
blockquote,
pre,
a,
abbr,
acronym,
address,
big,
cite,
code,
del,
dfn,
em,
img,
ins,
kbd,
q,
s,
samp,
small,
strike,
strong,
sub,
sup,
tt,
var,
b,
u,
i,
center,
dl,
dt,
dd,
ol,
ul,
li,
fieldset,
form,
label,
legend,
table,
caption,
tbody,
tfoot,
thead,
tr,
th,
td,
article,
aside,
canvas,
details,
embed,
figure,
figcaption,
footer,
header,
hgroup,
menu,
nav,
output,
ruby,
section,
summary,
time,
mark,
audio,
video {
	margin: 0;
	padding: 0;
	border: 0;
	font: inherit;
	vertical-align: baseline;
	text-align: left;
}


/* HTML5 display-role reset for older browsers */
article,
aside,
details,
figcaption,
figure,
footer,
header,
menu,
nav,
section,
main {
	display: block;
}


body {
	line-height: 1;
}

ol,
ul {
	list-style: none;
}


table {
	border-collapse: collapse;
	border-spacing: 0;
}

img,
video {
	max-width: 100%;
}

img {
	border-style: none;
}

blockquote,
q {
	quotes: none;
}

/* ===== common.css ===== */
/* CSS Document */

/* Webフォントは /js/include.js から非同期で読み込み（表示速度改善 2026-10） */

/* ========== pc / sp ========== */

.pc {}

.sp {
	display: none;
}

/* ========== font / color ========== */
html {
	font-size: 62.5%;
	font-family: "Noto Sans JP", system-ui, sans-serif;
	font-weight: 300;
}

html.dont_scroll {
	overflow: hidden;
}

html.dont_scroll main {
	padding-right: 15px;
}

body {
	width: 100%;
	height: 100%;
	line-height: 1.4;
	color: #111;
}

* {
	font-family: inherit;
	font-size: inherit;
	line-height: inherit;
}

a,
a:visited {
	color: inherit;
	text-decoration: none;
}

/* ========== text ========== */

.naka-guro {
	display: inline-block;
	margin: 0 -0.2em 0 -0.2em;
}

sup {
	font-size: 0.6em;
	position: relative;
	vertical-align: text-top;
}

.align_center {
	text-align: center;
}

.align_left {
	text-align: left;
}

.align_right {
	text-align: right;
}

.clear_both {
	clear: both;
}

/* ========== float / clear ========== */

.float_right {
	float: right;
}

.float_left {
	float: right;
}




/* ========== base box ========== */
#wrapper {
	position: relative;
}

#overlay {
	width: 100vw;
	height: 100vh;
	overflow: hidden;
	background-color: rgba(0, 0, 0, 0.7);
	position: fixed;
	top: 0;
	left: 0;
	z-index: 200;
	display: none;
	;
}

#overlay.rail_finder {
	z-index: 1000;
}

#overlay.staff_detail {
	z-index: 1000;
	background-color: rgba(0, 0, 0, 0.1);
}


/* ========== buttons ========== */
/* basic */
[class^="btn_a_"] {
	font-size: 1.4rem;
	font-weight: 400;
	line-height: 1.2;
	position: relative;
}

[class^="btn_a_"].center {
	text-align: center;
}

[class^="btn_a_"] a {
	display: inline-block;
	background-color: #777;
	color: #fff;
	text-align: center;
	padding: 1.2em 1.5em 1.2em 1.7em;
	position: relative;
	transition: 0.3s;
}

[class^="btn_a_"] a:hover {
	opacity: 0.7;
	box-shadow: 0px 1px 12px rgba(0, 0, 0, 0.15);
}

[class^="btn_a_"] a>span {
	display: inline-block;
	position: relative;
	vertical-align: middles;
	padding-left: 24px;
}



[class^="btn_a_"] span::before {
	content: " ";
	display: inline-block;
	width: 16px;
	height: 16px;
	left: 3px;
	top: -0.1em;

	/*background-color: rgba(0,0,0,0.2);*/
	position: absolute;
	margin-right: 0.3em;
	vertical-align: text-top;
	background-image: url(../assets_common/icon_search.svg);
	background-repeat: no-repeat;
	background-size: 460%;
	background-position: -58px -34px;
}

[class^="btn_a_"] span span::before {
	content: none;
	margin: 0;
	top: 0;
	width: auto;
	height: auto;
	display: inline;
}


[class^="btn_a_"].ed a,
section#sec_home_news dl dd span.icon_cate.ed {
	background-color: #49b6ea;
}

[class^="btn_a_"].chigasaki a,
section#sec_home_news dl dd span.icon_cate.chigasaki {
	background-color: #f59d2c;
}

[class^="btn_a_"].tsujido a,
section#sec_home_news dl dd span.icon_cate.tsujido {
	background-color: #50ba8e;
}


.btn_a_rail a span::before {
	width: 24px;
	height: 28px;
	background-size: 480%;
	background-position: -32px -55px;
	top: -0.3em;
	left: -3px;
}


.btn_a_find a span::before {
	width: 24px;
	height: 28px;
	background-size: 480%;
	background-position: 0 -55px;
	top: 50%;
	margin-top: -13px;
	left: -3px;
}


.btn_t_more {}

.btn_t_more a {
	position: relative;
	transition: 0.3s;
}

.btn_t_more a:hover {
	opacity: 0.7;
}

.btn_t_more a span {
	display: inline-block;
}

.btn_t_more a span::before {
	content: " ";
	display: inline-block;
	width: 14px;
	height: 14px;
	/*background-color: rgba(0,0,0,0.2);*/
	position: relative;
	top: 0.1em;
	margin-right: 0.3em;

	background-image: url(../assets_common/icon_search.svg);
	background-size: 460%;
	background-repeat: no-repeat;
	background-position: -50px 1px;
}

/* shop案内ボタンの指定 */
body#machi-guide li.btn_a_shop a,
ul.btns.shop.machi-guide a {
	padding: 0.6em 1.3em 0.6em 1.3em;
	box-shadow: 1px 1px 3px rgba(0, 0, 0, 0.1);
}

ul.btns.shop.machi-guide li {
	min-width: 210px;
}

body#machi-guide li.btn_a_shop a,
ul.btns.shop.machi-guide li.btn_a_shop a {
	background-color: #fff;
	color: #333;
	position: relative;
	z-index: 0;
	text-align: center;
}

body#machi-guide li.btn_a_shop,
ul.btns.shop.machi-guide .btn_a_shop {
	font-size: 1.5rem;
}

body#machi-guide li.btn_a_shop a::before,
ul.btns.shop.machi-guide .btn_a_shop a::before {
	position: absolute;
	content: " ";
	display: block;
	width: 28px;
	height: 100%;
	z-index: 0;
	background-color: #555;
	top: 0;
	left: 0;
	opacity: 0.3;
}

body#machi-guide li.btn_a_shop a::before,
ul.btns.shop.machi-guide .btn_a_shop a::before {
	background-color: #50b98e;
}

body#machi-guide li.btn_a_shop,
ul.btns.shop.machi-guide {
	font-weight: 500;
}

body#machi-guide li.btn_a_shop.chigasaki a::before,
li.chigasaki ul.btns.shop.machi-guide .btn_a_shop a::before,
div.box_machi.chigasaki ul.btns.shop.machi-guide .btn_a_shop a::before {
	background-color: #f49c2c;
}

body#machi-guide li.btn_a_shop span,
ul.btns.shop.machi-guide .btn_a_shop span {
	padding-left: 24px;
	text-align: center;
}

body#machi-guide li.btn_a_shop span::before,
ul.btns.shop.machi-guide .btn_a_shop span::before {
	display: block;
	position: absolute;
	left: 0px;
	top: 16px;
	background-position: -58px 100%;
}


ul.btns.shop.machi-guide .btn_a_machi_guide a {
	border: 3px solid #fff;
}

body#machi-guide li.btn_a_shop small.logo,
ul.btns.shop.machi-guide small.logo {
	display: block;
	width: 150px;
	height: 24px;
	overflow: hidden;
	margin-bottom: 0.3em;
}

body#machi-guide li.btn_a_shop small.logo img,
ul.btns.shop.machi-guide small.logo img {
	width: 100%;
	position: relative;
}

/* 横並び時 */
ul.btns.shop.machi-guide li {
	margin-right: 1em;
}

ul.btns.shop.machi-guide li:nth-of-type(2) {
	margin-right: 0;
}

ul.btns.shop.machi-guide li a {
	height: 100%;
	box-sizing: border-box;
	display: flex;
	align-items: center;
}



/* layer */

p.btn_layer_close a {
	text-align: right;
}

p.btn_layer_close a {
	display: inline-block;
	position: relative;
	z-index: 0;
	padding-right: 40px;
	transition: 0.3s;
}

p.btn_layer_close a:hover {
	opacity: 0.7;
}

p.btn_layer_close a::before,
p.btn_layer_close a::after {
	content: " ";
	display: block;
	position: absolute;
	right: 0;
	top: 6px;
	width: 38px;
	height: 2px;
	background-color: #3fa4d4;
}

p.btn_layer_close a::before {
	transform: rotate(-45deg);
}

p.btn_layer_close a::after {
	transform: rotate(45deg);
}



p.btn_layer_close span {
	display: inline-block;
	width: 57px;
	height: 19px;
	overflow: hidden;
	position: relative;
	z-index: 0;
	vertical-align: bottom;
}

p.btn_layer_close span img {
	width: 100%;
	height: auto;
}

/* zooming */

p.btn_zooming {
	font-size: 1.4rem;
	line-height: 1;
	font-weight: 400;
}

p.btn_zooming a {
	display: inline-block;
	transition: 0.3s;
}

p.btn_zooming a:hover {
	opacity: 0.7;
}

p.btn_zooming a span {
	display: inline-block;
}

p.btn_zooming a span::before {
	content: " ";
	display: inline-block;
	position: relative;
	width: 20px;
	height: 20px;
	top: -0.15em;
	vertical-align: middle;
	margin-right: 0.3em;

	background-image: url(/assets_common/icon_zooming.svg);
	background-size: 620%;
	background-position: 1px 1px;
	background-repeat: no-repeat;
}



/* pagetop */
footer p.btn_pagetop {
	z-index: 2000;
	width: 80px;
	height: 80px;
	position: fixed;
	bottom: 40px;
	right: 40px;
}

footer p.btn_pagetop a {
	width: 80px;
	height: 80px;
	border-radius: 40px;
	overflow: hidden;
	border-radius: ;
	background-color: rgba(0, 0, 0, 0);
	color: #fff;
	display: block;
	text-align: center;
	position: relative;
	text-indent: -400px;
	transition: 0.3s;
	pointer-events: none;
}

footer p.btn_pagetop.on a {
	background-color: rgba(0, 0, 0, .6);
	pointer-events: auto;
}

footer p.btn_pagetop.on a:hover {
	background-color: rgba(0, 0, 0, .9);
}


footer p.btn_pagetop a::before {
	content: " ";
	display: block;
	width: 24px;
	height: 24px;
	left: 50%;
	margin-left: -13px;
	top: 41%;
	transform: rotate(-135deg);
	position: absolute;
	border-right: 2px solid #fff;
	border-bottom: 2px solid #fff;
	opacity: 0.3;
}

footer p.btn_pagetop.on a::before {
	opacity: 0.8;
}




/* ========== header ========== */

div#box_header {
	width: 100%;
	background-color: rgba(74, 182, 234, 0.3);
	color: #fff;
	position: fixed;
	z-index: 500;
	left: 0;
	top: 0;
}

body.esJs-map__list--active div#box_header,
div#box_header.bg_blue,
div#box_header.open {
	transition: 0.7s;
	background-color: rgba(74, 182, 234, 1);
	box-shadow: 0px 6px 20px rgba(0, 0, 0, 0.2);
}

div#box_header header {
	width: 100%;
	position: relative;
	margin: 0 auto;
	display: flex;
	z-index: 0;
	padding-top: 2px;
	padding-left: 178px;
	padding-right: 210px;
	height: 48px;
	align-items: center;
	box-sizing: border-box;
}

body.esJs-map__list--active div#box_header,
div#box_header.bg_blue header {
	padding-right: 380px;
}

/* div#box_header  */
header p#site_id_com {
	position: absolute;
	width: 148px;
	height: 26px;
	left: 20px;
	top: 11px;
	overflow: hidden;
}

p#site_statement {
	font-weight: 400;
}

div#box_header header p#site_id_com a:hover {
	transition: 0.3s;
	opacity: 0.7;
}

#masthead p#site_id_com img,
div#box_header header p#site_id_com img {
	width: 100%;
	height: auto;
	position: relative;
	top: -60px;
}


ul#icons_share {
	display: flex;
	margin-left: 8px;
	justify-content: flex-start;
	height: 26px;
}

body.esJs-map__list--active div#box_header ul#icons_share,
div#box_header.bg_blue ul#icons_share {
	display: none;
}


ul#icons_share li {
	width: 26px;
	height: 25px;
	/*background-color: rgba(0,0,0,0.2);*/
	margin-left: 6px;
	position: relative;
	overflow: hidden;
	transition: 0.3s;
	cursor: pointer;
}

ul#icons_share li:hover {
	opacity: 0.7;
}

ul#icons_share li img {
	display: block;
	position: relative;
	max-width: 140px;
	width: 260px;
	height: auto;
	left: 2px;
	top: -30px;
}

ul#icons_share li.sns_insta img {
	left: -37px;
}

ul#icons_share li.sns_line img {
	left: -78px;
}

ul#icons_share li.sns_contact img {
	left: -115px;
}



/**/
p#btn_open_gn_menu {
	position: absolute;
	right: 0;
	top: 0;
	z-index: 200;
	font-family: "Barlow";
}

p#btn_open_gn_menu a {
	display: block;
	text-align: center;
	background-color: #111;
	width: 48px;
	height: 48px;
	box-sizing: border-box;
	padding-top: 28px;
	cursor: pointer;
	position: relative;
	font-size: 1rem;
	transition: 0.5s;
}

p#btn_open_gn_menu a::before,
p#btn_open_gn_menu a::after {
	content: " ";
	display: block;
	height: 1.5px;
	position: absolute;
	width: 44%;
	left: 50%;
	margin-left: -22%;
	background-color: #fff;
	transition: 0.5s;
}

p#btn_open_gn_menu a::before {
	top: 11px;
}

p#btn_open_gn_menu a::after {
	top: 19px;
}



p#btn_open_gn_menu:hover a {
	background-color: #fff;
	color: #4ab6ea;
	height: 50px;
	box-shadow: 0px 10px 16px rgba(0, 0, 0, 0.2);
}

p#btn_open_gn_menu:hover a::before,
p#btn_open_gn_menu:hover a::after {
	background-color: #4ab6ea;

}

p#btn_open_gn_menu.close a::before {
	transform: translateY(4px) rotate(-45deg);
}

p#btn_open_gn_menu.close a::after {
	transform: translateY(-4px) rotate(45deg);
}


/* ========== gnav ========== */


div#box_gnav {
	background-color: rgba(74, 182, 234, 1);
	display: none;
}

div#box_header.open header {
	background-color: rgba(74, 182, 234, 1);
}


/* ========== main search ========== */

#box_main_search {
	width: 100%;
	height: auto;
	position: absolute;
	top: -30px;
	z-index: 100;
	left: 0;
}




#box_main_search>div.box_inner {
	width: 70%;
	min-width: 720px;
	height: auto;
	margin: 0 auto;
	position: relative;
	background-color: #fff;
	border: 2px solid #fff;
	border-radius: 30px;
	max-width: 1024px;
}

#box_main_search ul {
	width: 100%;
	height: 60px;
	display: flex;
	justify-content: space-between;
	position: relative;
	align-items: stretch;
	flex-wrap: nowrap;
	max-width: 1024px;
}

#box_main_search ul li {
	width: 33.3%;
	font-size: 2rem;
	font-weight: 500;
	line-height: 1;
}

#box_main_search ul li a {
	display: block;
	background-color: #555;
	color: #fff;
	display: flex;
	height: 100%;
	justify-content: center;
	flex-wrap: nowrap;
	align-items: center;
	transition: 0.3s;
	box-sizing: border-box;
	cursor: pointer;
}

#box_main_search ul li a::before {
	content: " ";
	display: inline-block;
	vertical-align: middle;
	width: 22px;
	height: 22px;
	position: relative;
	margin-bottom: -1px;
	/*background-color: rgba(0, 0, 0, .2);*/
	background-image: url(/assets_common/icon_search.svg);
	background-position: 0 0;
	background-size: 460%;
	background-repeat: no-repeat;
	margin-right: 4px;
}


#box_main_search ul li a>span {
	position: relative;
	display: block;
}

#box_main_search ul li a:hover {
	opacity: 0.7;
}

#box_main_search ul li.btn_rail {
	margin-right: 2px;
}

#box_main_search ul li.btn_rail a {
	background-color: #41b4e9;
	border-top-left-radius: 32px;
	border-bottom-left-radius: 32px;
}

#box_main_search ul li.btn_rail a {
	padding-left: 10px;
}

#box_main_search ul li.btn_rail a::before {
	background-position: -27px -49px;
}

#box_main_search ul li.btn_map {
	margin-right: 2px;
}

#box_main_search ul li.btn_map a {
	background-color: #b6c013;
	padding-left: 3px;
}

#box_main_search ul li.btn_map a::before {
	background-position: -53px -49px;
}

#box_main_search ul li.btn_gsearch {
	font-size: 1.6rem;
}

#box_main_search ul li.btn_gsearch a {
	background-color: #f4f3e6;
	border-top-right-radius: 32px;
	border-bottom-right-radius: 32px;
	color: #555;
	padding-right: 8px;
	padding-bottom: 0.2em;
}



#box_main_search ul li.btn_gsearch a img {
	vertical-align: middle;
	height: 20px;
	margin-right: 3px;
}

#box_main_search ul li.btn_gsearch a>span {
	margin-top: 6px;
}

#box_main_search ul li.btn_gsearch a::before {
	background-position: 0 -24px;
	margin-bottom: -4px;
	opacity: 0.6;
}

/* ========== main ========== */
main {
	z-index: 50;
	position: relative;
	background-color: #fff;
	min-width: 1024px;
}

/* ========== footer ========== */

footer {
	position: relative;
	min-width: 1024px;
}

footer>div.box_inner,
#box_ft_company,
#box_ft_nav,
#box_ft_banners,
#box_ft_shops {
	width: 100%;
	max-width: 1024px;
	height: auto;
	margin: 0 auto;
	box-sizing: border-box;
}

footer,
#wrapper_ft_bottom {
	position: relative;
	z-index: 60;
	width: 100%;
	height: auto;
	background-color: #fff;



}


footer>div.box_inner {
	background-color: #fff;
	padding: 130px 0 0 0;
	position: relative;
	z-index: 0;
}

footer>div.box_inner::before {
	content: " ";
	display: block;
	width: 266px;
	height: 2px;
	background-color: #4ab6ea;
	position: absolute;
	top: 64px;
	left: 50%;
	margin-left: -133px;
}

footer p#ft_catch {
	text-align: center;
	font-size: 2.4rem;
	line-height: 1.4;
	color: #d58115;
	font-weight: 400;
	letter-spacing: 0.15em;
	margin-bottom: 63px;
}

footer p.site_id {
	display: block;
	width: 274px;
	margin: 0 auto;
	position: relative;
	z-index: 50;
}

footer p.site_id a {
	display: block;
}

footer p.ssite_id img {
	width: 100%;
	position: radial-gradient;
	left: -12px;
}

/* ft shops */

#box_ft_shops ul {
	display: flex;
	justify-content: space-between;
	position: relative;
	padding: 0 32px 0 32px;
	margin-top: -150px;
	z-index: 0;
	min-height: 176px;
}

#box_ft_shops ul li {
	width: calc((100% - 320px) / 2);
}

#box_ft_shops ul li.tsujido p,
#box_ft_shops ul li.tsujido address {
	text-align: right;
}

#box_ft_shops ul li p.name img {
	height: 52px;
	width: auto;
	vertical-align: middle;
}

#box_ft_shops ul li p.name small {
	font-family: "Roboto Slab";
	display: inline-block;
	margin: 0 0.7em 0 0.7em;
	color: #666;
	position: relative;
	top: 0.3em;
	color: #999;
}

#box_ft_shops ul li p.name small span {
	display: block;
}

#box_ft_shops ul li.tsujido p.name small span,
#box_ft_shops li.tsujido p.tel {
	color: #4aa57f;
}

#box_ft_shops ul li.chigasaki p.name small span,
#box_ft_shops li.chigasaki p.tel {
	color: #db8b24;
}


#box_ft_shops p.tel {
	font-size: 3.4rem;
	font-family: "Barlow";
}



#box_ft_shops p.tel small {
	color: #777;
}


#box_ft_shops p.open_info {
	text-align: center;
	font-size: 1.4rem;
	padding-bottom: 42px;
}


#box_ft_shops address {
	font-size: 1.1rem;
	margin-bottom: 1em;
}

#box_ft_shops p.btn_a_more {
	font-size: 1.1rem;
	line-height: 1;
}


#box_ft_shops p.btn_a_more a {
	padding: 1em 1em 1em 1em;
}

#box_ft_shops p.btn_a_more a span::before {
	top: -0.3em;
}



#box_ft_shops li.tsujido p.btn_a_more a {
	background-color: #4aa57f;
}

#box_ft_shops li.chigasaki p.btn_a_more a {
	background-color: #db8b24;
}

#box_ft_company {
	padding-bottom: 70px;
}

/* */
#wrapper_ft_bottom {
	background-color: #f4f3e6;
	padding-bottom: 60px;
	position: relative;
	padding-top: 40px;
	margin: 0 auto;
	width: 100%;
	z-index: 0;

	background-image: url(/assets_common/bg_sand_grunge_beige.jpg);
	background-position: 50% 0;
}

#wrapper_ft_bottom::before {

	content: " ";
	display: block;
	top: -29px;
	width: 480px;
	height: 31px;
	position: absolute;
	left: 50%;
	margin-left: -650px;
	background-image: url(/assets_common/art_wave_4p_beige.svg);
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: 100% auto;
	z-index: 1;
}


/* nav */

#box_gnav,
#box_ft_nav {
	padding: 0 36px 54px 36px;
}

div#box_gnav {
	padding-top: 24px;
}

#box_gnav dl,
#box_ft_nav dl {
	position: relative;
	z-index: 0;
	padding-top: 7.5em;
	display: flex;
	justify-content: space-between;
	min-width: 960px;
}

div#box_gnav dl a,
#box_ft_nav dl a {
	transition: 0.3s;
	color: #222;
	display: inline-block;
}

div#box_gnav dl a {
	color: #fff;
}


div#box_gnav dl a:hover,
#box_ft_nav dl a:hover {
	text-decoration: underline;
}

div#box_gnav dt,
#box_ft_nav dt {
	font-size: 2rem;
	line-height: 2;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 0;
	width: calc((100% - 160px) / 5);
}




div#box_gnav dt::before,
div#box_gnav dt::after,
#box_ft_nav dt::before,
#box_ft_nav dt::after {
	content: " ";
	display: block;
	position: absolute;
	top: 1.9em;
	left: 8px;
}

div#box_gnav dt::before,
#box_ft_nav dt::before {
	width: 5px;
	height: 5px;
	background-color: #4ab6ea;
	border-radius: 2.5px;
	transition: 0.3s;
}

div#box_gnav dt::after,
#box_ft_nav dt::after {
	width: 1px;
	height: 1.75em;
	background-color: #4ab6ea;
	top: 1.95em;
	left: 10px;
}


div#box_gnav dt::before,
div#box_gnav dt::after {
	background-color: #fff;
}

div#box_gnav dt:hover::before,
#box_ft_nav dt:hover::before {
	width: 11px;
	height: 11px;
	border-radius: 6px;
	left: 5px;
}

#box_ft_nav dt a {
	color: #3fa4d4;
}

div#box_gnav dt:nth-of-type(2),
#box_ft_nav dt:nth-of-type(2) {
	left: calc((100% - 160px) / 5 + 40px);
}

div#box_gnav dt:nth-of-type(3),
#box_ft_nav dt:nth-of-type(3) {
	left: calc((100% - 160px) / 5 * 2 + 80px);
}

div#box_gnav dt:nth-of-type(4),
#box_ft_nav dt:nth-of-type(4) {
	left: calc((100% - 160px) / 5 * 3 + 120px);
}

div#box_gnav dt:nth-of-type(5),
#box_ft_nav dt:nth-of-type(5) {
	left: calc((100% - 160px) / 5 * 4 + 160px);
}

div#box_gnav dd,
#box_ft_nav dd {
	width: calc((100% - 160px) / 5);
	padding-top: 1em;
}

div#box_gnav dd,
#box_ft_nav dd,
div#box_gnav dd li,
#box_ft_nav dd li {
	font-size: 1.4rem;
	line-height: 1.5;
}

div#box_gnav dd li,
#box_ft_nav dd li {
	margin-bottom: 1.3em;
}


/* banners */

#box_ft_banners {
	padding: 0 36px 0 36px;
}


#box_ft_banners ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding-top: 1em;
}

#box_ft_banners ul li {
	width: calc((100% - 90px)/4);
	margin-bottom: 24px;
	margin-right: 24px;
}


#box_ft_banners ul li:nth-of-type(4),
#box_ft_banners ul li:nth-of-type(8) {
	margin-right: 0;
}

#box_ft_banners ul li img {
	vertical-align: bottom;
}

#box_ft_banners ul li a {
	background-color: #fff;
	transition: 0.3s;
	display: block;
}

#box_ft_banners ul li a:hover img {
	opacity: 0.6;
}

#box_ft_banners ul li img {
	width: 100%;
	height: auto;
}


/**/


#box_ft_company {
	width: 600px;
	margin: 0 auto;
	position: relative;
	z-index: 10;
}


#box_ft_company p,
#box_ft_company address {
	text-align: center;
}

#box_ft_company p.com_name {
	font-size: 1.5rem;
	font-weight: 500;
	margin-bottom: 0.2em;
	padding-top: 94px;
	position: relative;
}

/*#box_ft_company p.com_name::before {
		content: " ";
		display: block;
		position: absolute;
		left: 50%;
		top: 16px;
		width: 50px;
		height: 60px;
		left: 50%;
		margin-left: -25px;
		
		background-image: url(/assets_common/icon_man_surfer.svg);
		background-repeat: no-repeat;
		background-size: contain;
	}*/

#box_ft_company address {
	font-size: 1.2rem;
}


#box_ft_company p.logo_ed {
	font-size: 1.2rem;
	font-weight: 500;
}

#box_ft_company p.logo_ed span {
	display: block;
	width: 249px;
	height: 44px;
	position: relative;
	overflow: hidden;
	margin: 0 auto;
	margin-top: -8px;
}

#box_ft_company p.logo_ed small {
	display: block;
	position: relative;
	text-align: center;
	font-size: 1.2rem;
	font-family: "Roboto Slab";
	color: #144494;
	top: -0.2em;
}

#box_ft_company p.logo_ed span img {
	width: 100%;

}

#box_ft_company::after {
	content: " ";
	display: block;
	position: absolute;
	left: 50%;
	top: 82px;
	width: 50px;
	height: 60px;
	left: 50%;
	margin-left: -25px;

	background-image: url(/assets_common/icon_man_surfer.svg);
	background-repeat: no-repeat;
	background-size: contain;
}



p#ft_copyright {
	text-align: center;
	font-family: "Barlow";
	font-size: 1.2rem;
	font-weight: 200;
	padding-top: 46px;
}


/* ------- seagul common ------- */

div.seagulls {
	position: absolute;
	width: 100%;
	height: 0;
	top: 0;
	left: 0;
	z-index: 12 !important;
	overflow: visible !important;
	background-color: #f55;
}

div.seagulls span {
	position: absolute;
	top: 20vw;
	left: 50%;
	display: block;
	width: 40px;
	height: 24px;
	/*background-color: rgba(0,0,0,0.1);*/
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 100%;
	z-index: 0;
}


div.seagulls.white span.left {
	background-image: url(/assets_common/art_seagull_left_white.svg);
}

div.seagulls.white span.right {
	background-image: url(/assets_common/art_seagull_right_white.svg);
}


div.seagulls.white span.left2 {
	background-image: url(/assets_common/art_seagull_left2_white.svg);
}

div.seagulls.white span.right2 {
	background-image: url(/assets_common/art_seagull_right2_white.svg);
}



/* ------- /seagul ------- */


/* ------- layer rail Finder ------- */




#layer_station_map,
#layer_rail_finder,
#layer_g_search {
	width: calc(96% - 3vw);
	height: auto;
	background-color: #f4f3e6;
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translateY(-50%) translateX(-50%);
	z-index: 1500;
	border-radius: 12px;
	overflow: hidden;
	border: 8px solid #fff;
	box-sizing: border-box;
	display: none;
}


#layer_g_search {
	width: calc(66% - 3vw);
}


/* FORM - custom */
#layer_rail_finder input[type="checkbox"] {
	display: none;
	margin: 0;
}

#layer_rail_finder input[type="checkbox"]+label {
	position: relative;
	padding-left: 1.5em;
}

#layer_rail_finder input[type="checkbox"]+label::before,
#layer_rail_finder input[type="checkbox"]+label::after {
	content: " ";
	display: block;
	position: absolute;
	left: 0;
	top: 50%;

}

#layer_rail_finder input[type="checkbox"]+label::before {
	width: 1em;
	height: 1em;
	border-radius: 0.2em;
	background-color: #fff;
	border: 1px solid #aaa;
	margin-right: 0.3em;
	margin-top: -0.55em;
}

#layer_rail_finder li label:hover {
	cursor: pointer;
}

#layer_rail_finder li:hover input[type="checkbox"]+label::before {
	background-color: #f5f5f5;
}

#layer_rail_finder input[type="checkbox"]:checked+label::after {
	width: 0.4em;
	height: 0.8em;
	border-right: 3px solid #144494;
	border-bottom: 3px solid #144494;
	transform: rotate(45deg);
	left: 0.45em;
	margin-top: -0.7em;
}


/* select */

#layer_rail_finder span.box_select {
	display: inline-block;
	background-color: #fff;
	font-size: 1.6rem;
	border: 1px solid #ddd;
	text-align: left;
	position: relative;
	z-index: 0;
	border-radius: 0.3em;
	overflow: hidden;
	cursor: pointer;
	transition: 0.3s;
}

#layer_rail_finder span.box_select:hover {
	opacity: 0.7;
}


#layer_rail_finder span.box_select::before,
#layer_rail_finder span.box_select::after {
	content: " ";
	position: absolute;
	display: block;
}

#layer_rail_finder span.box_select::before {
	z-index: 0;
	width: 1.3em;
	height: calc(100% - 2px);
	right: 1px;
	top: 1px;
	background-color: #3fa4d4;
	border-top-right-radius: 0.2em;
	border-bottom-right-radius: 0.2em;
}

#layer_rail_finder span.box_select::after {
	right: 0.35em;
	top: 50%;
	width: 0;
	height: 0;
	margin-top: -0.15em;
	border-style: solid;
	border-width: 0.4em 0.35em 0 0.35em;
	border-color: #fff transparent transparent transparent;
	z-index: 2;
}


#layer_rail_finder span.box_select select {
	padding: 0.3em 2.5em 0.4em 0.5em;
	text-indent: 0.01px;
	text-overflow: '';
	vertical-align: middle;
	background: transparent;
	border: none;
	position: relative;
	z-index: 5;
	outline: none;
	font-size: inherit;
	color: inherit;
	-webkit-appearance: button;
	-moz-appearance: button;
	appearance: button;
	text-align: left;
}


#layer_rail_finder span.box_select.upper {
	margin-right: 1em;
}

#layer_rail_finder select::-ms-expand {
	display: none;
}

#layer_rail_finder select:-moz-focusring {
	color: transparent;
	text-shadow: 0 0 0 #828c9a;
}

#layer_rail_finder select::before {
	content: " ";
	display: block;
	position: absolute;
	right: 0;
	top: 0;
	width: 1em;
	height: 100%;
	background-color: #555;
	z-index: 1;
}


/*  */

#layer_rail_finder .box_header,
#layer_g_search .box_header {
	background-color: #fff;
	text-align: center;
	padding: 2rem;
	padding-top: 1.8rem;
}

#layer_rail_finder .box_header h2,
#layer_g_search .box_header h2 {
	display: inline-block;
	position: relative;
	font-size: 2rem;
	line-height: 1.3;
	font-weight: 500;
	text-align: center;
}

div.box_form_elmt {
	width: 94%;
	margin: 0 auto;
	padding: 10px 0 44px 0;
}

#layer_rail_finder dl {
	display: flex;
	flex-wrap: wrap;
}

#layer_rail_finder dl dt,
#layer_rail_finder dl dd,
#layer_rail_finder dl li {
	font-size: 1.8rem;
	line-height: 1.4;
	display: inline-block;
}

#layer_rail_finder dl dt,
#layer_rail_finder dl dd {
	padding-top: 1.2em;
}

#layer_rail_finder dl dt:nth-of-type(4),
#layer_rail_finder dl dd:nth-of-type(4) {
	padding-top: 1.2em;
}

#layer_rail_finder dl dt {
	font-weight: 400;
	position: relative;
	width: 7em;
	text-align: right;
}

#layer_rail_finder dl dd {
	width: calc(100% - 7em);
}


#layer_rail_finder dl dt::after {
	content: ":";
	margin: 0 0.6em 0 0.3em;
}


#layer_rail_finder dl dd ul {
	display: flex;
	flex-wrap: wrap;
}


#layer_rail_finder dl dd ul li {
	margin-right: 1.5em;
	margin-bottom: 0.5em;
}

#layer_rail_finder dl dd ul.room_plan li {
	width: 20%;
	margin-right: 0;
}


/* btns */

#bottom_btns {
	display: flex;
	justify-content: center;
}

#bottom_btns li {
	margin: 0 10px 0 10px;
	font-size: 1.6rem;
}

#bottom_btns li a {
	min-width: 200px;
	pointer-events: none;
	background-color: #bbb;
	padding-left: 8px;
	padding-right: 8px;
}


#bottom_btns li.btn_a_find_now a span::before {
	background-position: 0px -54px !important;
	width: 16px;
	height: 16px;
	top: 0.2em;
	position: relative;
	transform: scale(1.4);
	background-size: 460% !important;
	background-position: 1px -36px !important;
}


#bottom_btns.active li a {
	pointer-events: auto;
}


#bottom_btns li.btn_a_clear {
	margin-right: 60px;
}

#bottom_btns.active li.btn_a_clear a {
	background-color: #52bbd4;
}

#bottom_btns.active li.btn_a_add a {
	background-color: #fd912a;
}


#bottom_btns.active li.btn_a_find_now a {
	background-color: #fb401a;


}




#layer_rail_finder p.btn_layer_close,
#layer_g_search p.btn_layer_close,
[id^="layer_staff_"] p.btn_layer_close {
	text-align: right;
	padding-top: 24px;
	padding-bottom: 24px;
	padding-right: 24px;
}


/* ------- /layer rail Finder ------- */

/* ------- layer google search ------- */
div#box_g_search_input {
	width: 96%;
	margin: 0 auto;
	padding: 24px 0 24px 0;
}



/* ------- /layer google search ------- */


/* =================== 2nd contents common =================== */

/* ------- breadcrumbs ------- */

#breadcrumbs {
	width: 100%;
	box-sizing: border-box;
	position: relative;
	z-index: 0;
	padding-top: 2em;
	padding-bottom: 2em;
	padding: 3.5em 35px 2em 35px;
	max-width: 1128px;
	margin: 0 auto;
}

#breadcrumbs ol {
	display: flex;
	justify-content: flex-start;
	margin: 0 auto;
	font-size: 1.2rem;
}

#breadcrumbs li {
	margin-right: 0.6em;
	color: #777;
}

#breadcrumbs li a {
	color: #0197e0;
	text-decoration: underline;
}

#breadcrumbs li::before {
	content: " ";
	display: inline-block;
	width: 0.5em;
	height: 0.5em;
	border-right: 1.7px solid #999;
	border-bottom: 1.7px solid #999;
	margin-right: 0.7em;
	position: relative;
	transform: rotate(-45deg);
}

#breadcrumbs li:first-child::before {
	content: none;
}



/* ------- /breadcrumbs ------- */


/* ------- main search ------- */

body:not(#home) div#box_main_search {
	display: none;
}

/* ------- /main search ------- */


/* ------- header ------- */


body:not(#home) div#box_header {}

body:not(#home) #masthead p.site_id,
body:not(#home) div#box_header p.site_id {
	position: absolute;
	width: 234px;
	top: 40px;
	left: auto;
	right: 48px;
	z-index: 0;
	transition: 0.3s;
}

/* div#box_header  */
div.header-other-content p.site_id a {
	display: block;
	max-width: 234px;
	overflow: hidden;
}

img[src$="logo_site_id_umi-machi.png"] {
	/* max-width: 234px; */
	width: 350px;
}

body.esJs-map__list--active div#box_header.open p.site_id,
div#box_header.open p.site_id,
div#box_header.bg_blue.open p.site_id {
	transform: translateY(-200px);
}

body.esJs-map__list--active div#box_header p.site_id,
div#box_header.bg_blue p.site_id {
	transform: translateY(-72px) translateX(15px) scale(0.65);
}


/* history - favorite */

.header_links,
ul#btns_favorite_history {
	position: absolute;
	top: 145px;
	right: 300px;
	z-index: 20;
	display: flex;
	justify-content: flex-end;
}




body.esJs-map__list--active div#box_header ul#btns_favorite_history,
div#box_header.bg_blue ul#btns_favorite_history,
div#box_header.open ul#btns_favorite_history {
	top: 16px;
	right: 230px;
}

body.esJs-map__list--active div#box_header ul#btns_favorite_history,
body#home ul#btns_favorite_history,
body#home div#box_header.bg_blue ul#btns_favorite_history,
body#home div#box_header.open ul#btns_favorite_history {
	top: 12px;
	right: 60px;
}


div#box_header.open ul#btns_favorite_history {
	right: 245px;
}

body.esJs-map__list--active div#box_header ul#btns_favorite_history,
body#home div#box_header.open.bg_blue ul#btns_favorite_history {
	right: 69px;
}


body.esJs-map__list--active div#box_header ul#btns_favorite_history span.text,
body#home ul#btns_favorite_history span.text,
div#box_header.bg_blue ul#btns_favorite_history span.text,
div#box_header.open ul#btns_favorite_history span.text {
	width: 0;
	height: 0;
	overflow: hidden;
}


.header_links li,
ul#btns_favorite_history li {
	font-size: 1.3rem;
	margin: 0 0.5em;
	text-align: center;
	font-weight: 500;
}

.header_links li a,
ul#btns_favorite_history li a {
	background-color: #555;
	display: block;
	border-radius: 0.4em;
	padding: 0.6em 1.3em 0.6em 1.3em;
	border: 2px solid #fff;
	transition: 0.3s;
	text-align: center;
}

#box_header.bg_blue .main-header-container .header_links li:nth-child(2)>a,
#box_header.bg_blue .main-header-container .header_links li:first-child>a,
body.esJs-map__list--active div#box_header ul#btns_favorite_history li a,
body#home ul#btns_favorite_history li a,
div#box_header.bg_blue ul#btns_favorite_history li a,
div#box_header.open ul#btns_favorite_history li a {
	padding: 0.4em 0.4em 0.4em 0.4em;
	min-width: 3em;
}

ul#btns_favorite_history li a:hover {
	opacity: 0.7;
}

ul#btns_favorite_history li a span {
	display: inline-block;
	position: relative;
}

ul#btns_favorite_history li span.num {
	/* margin-left: 0.2em; */
	width: 0px;
	display: inline-block;
	position: relative;
	visibility: hidden;
}

ul#btns_favorite_history li span.num::before {
	content: "(";
}

ul#btns_favorite_history li span.num::after {
	content: ")";
}

body.esJs-map__list--active div#box_header ul#btns_favorite_history li span.num::before,
body.esJs-map__list--active div#box_header ul#btns_favorite_history li span.num::after,
body#home ul#btns_favorite_history li span.num::before,
body#home ul#btns_favorite_history li span.num::after,
div#box_header.bg_blue ul#btns_favorite_history li span.num::before,
div#box_header.bg_blue ul#btns_favorite_history li span.num::after,
div#box_header.open ul#btns_favorite_history li span.num::before,
div#box_header.open ul#btns_favorite_history li span.num::after {
	content: none;
}


#masthead .main-header-container .header_links li:first-child>a,
ul#btns_favorite_history li.btn_open_history a {
	background-color: #9bc331;
}

#masthead .main-header-container .header_links li:nth-child(2)>a,
ul#btns_favorite_history li.btn_open_favorite a {
	background-color: #f25884;
	display: flex;
}

#masthead .main-header-container .header_links li:nth-child(2)>a .icon-heart::before,
#masthead .main-header-container .header_links li:first-child>a .icon-history:before,
ul#btns_favorite_history li a>span::before {
	content: " ";
	display: inline-block;
	position: relative;
	width: 24px;
	height: 24px;
	vertical-align: middle;
	margin-right: 0.4em;
	top: -0.1em;
	background-image: url(../assets_common/icon_his_fav_2c.svg);
	background-repeat: no-repeat;
	background-position: 1px 3px;
}

#masthead .main-header-container .header_links li:nth-child(2)>a .icon-heart::before,
ul#btns_favorite_history li.btn_open_favorite>a>span::before {
	background-position: -24px 3px;
}

body.esJs-map__list--active div#box_header ul#btns_favorite_history li a>span::before body#home ul#btns_favorite_history li a>span::before,
div#box_header.open ul#btns_favorite_history li a>span::before,
div#box_header.bg_blue ul#btns_favorite_history li a>span::before {
	margin-right: 0;
}




/* ------- /header ------- */

/* ------- page title ------- */

.single .entry-header,
.page-header,
div#box_page_ttl {
	width: 100%;
	height: 165px;
	position: relative;
	z-index: 0;
	background-color: #4ab6ea;
	background-image: url(../assets_common/bg_sand_grunge_blue.jpg);
	background-position: 20% 50%;
}

/* wave */

.single .entry-header::before,
.page-header::before,
div#box_page_ttl::before {
	content: " ";
	display: block;
	bottom: -1px;
	width: 380px;
	height: 24px;
	position: absolute;
	left: 50%;
	margin-left: -750px;
	background-image: url(../assets_common/art_wave_4p_white.svg);
	background-position: 0 -52px;
	background-repeat: no-repeat;
	background-size: 100% auto;
	z-index: 1;
}

.page .entry-header,
div#box_page_ttl>div.box_inner {
	width: 100%;
	box-sizing: border-box;
	max-width: 1128px;
	min-width: 1020px;
	margin: 0 auto;
	padding: 68px 32px 0 32px;
}

body.single-feature h1.entry-title,
.page-header h1.entry-title,
#box_page_ttl h1,
div#box_page_ttl #top_name {
	min-width: 90%;
	font-size: 3.6rem;
	color: #fff;
	display: inline-block;
	position: relative;
	font-feature-settings: "palt" 1;
	letter-spacing: 0.05em;
}

#box_page_ttl h1 a,
div#box_page_ttl #top_name a {
	display: block;
}

#box_page_ttl h1 a:hover,
div#box_page_ttl #top_name a:hover {
	color: #fff;
}

#box_page_ttl h1 small.en,
div#box_page_ttl #top_name>a>small.en {
	font-size: 1.2rem;
	display: inline-block;
	vertical-align: middle;
	padding-left: 1em;
	letter-spacing: 0.05em;
	font-family: "Roboto Slab";
	position: relative;
}


/* seagul */
.page-header h1.entry-title span::after,
.page-header h1.entry-title::before,
#box_page_ttl h1::before,
/* #box_page_ttl h1::after, */
div#box_page_ttl #top_name::before,
#box_page_ttl h1 a small.en::after,
div#box_page_ttl #top_name small.en::after,
.page-header h1.entry-title::after,
div#box_page_ttl>div.box_inner::after {
	content: " ";
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	background-size: contain;
	top: 50%;
}

.page-header h1.entry-title::before,
#box_page_ttl h1::before,
div#box_page_ttl #top_name::before {
	width: 48px;
	height: 32px;
	left: -63px;
	margin-top: -10px;
	background-image: url(../assets_common/art_seagull_right_white.svg);
}

.page-header.new h1.entry-title:before {
	width: 5em;
	height: auto;
	text-align: center;
	position: static;
	padding: 0;
	line-height: 2;
}

/* #box_page_ttl h1::after, */
.page-header h1.entry-title::after,
div#box_page_ttl>div.box_inner::after {
	width: 48px;
	height: 32px;
	right: 283px;
	margin-top: -26px;
	background-image: url(../assets_common/art_seagull_right_white.svg);
}

.page-header h1.entry-title span::after,
#box_page_ttl h1 a small.en::after,
div#box_page_ttl #top_name small.en::after {
	width: 40px;
	height: 18px;
	right: -60px;
	margin-top: -8px;
	background-image: url(../assets_common/art_seagull_left_white.svg);
}

.es-tpl-advertisement-detail-rent .page-header h1.entry-title::after {
	display: none;
}






/* ------- /page title ------- */


/* ------- sub header ------- */

div#box_sub_header {
	width: 100%;
	margin: 0 auto;
	max-width: 1128px;
	height: 306px;
	background-color: #f4f3e6;

	background-image: url(/assets_common/bg_sand_grunge_beige.jpg);
	background-position: 50% 50%;

	position: relative;
	z-index: 0;
	margin-bottom: 75px;
}

div#box_sub_header>.box_inner {
	text-align: center;
	width: 36%;
	padding: 116px 0 0 0;
}

div#box_sub_header h1,
div#box_sub_header p {
	text-align: inherit;
	margin: 0 auto;
	color: #35579e;
}

div#box_sub_header h1 {
	font-size: 4.2rem;
	position: relative;
	z-index: 0;
}

div#box_sub_header p.sub_ttl_en {
	position: relative;
	width: 50%;
	padding-top: 0.3em;
	font-size: 1.7rem;
	font-family: "Roboto Slab";
	font-weight: normal;
	font-weight: 300;

}

div#box_sub_header p.sub_ttl_en>small {
	position: relative;
	display: block;
	font-size: 1.3rem;
	text-align: right;

}


/* ------- /sub header ------- */

/* ------- 2nd wrapper ------- */

#wrapper_contents {
	position: relative;
	width: 1020px;
	margin: 0 auto;
	padding-bottom: 36px;
}

/* ------- /2nd wrapper ------- */

/* sub navi - column */

#box_sub_nav {
	width: 100%;
	display: flex;
	box-orient: vertical;
	justify-content: flex-end;
	height: 0;
	z-index: 100;
}


#box_sub_nav div.box_inner {
	width: 230px;
	padding-top: 32px;
}


#box_sub_nav ul {
	width: 230px;
	font-size: 1.8rem;
	line-height: 1.4;
	padding-bottom: 32px;
}

#box_sub_nav h5 {
	font-family: "Roboto Slab";
	font-weight: 400;
	font-size: 1.3rem;
	color: #35579e;
	position: relative;
	padding-bottom: 0.3em;
	margin-right: -230px;
	height: 25px;
	width: 230px;
	border-bottom: 1px solid #e5e5e5;
}

#box_sub_nav h5::before {
	content: " ";
	display: inline-block;
	vertical-align: middle;
	position: relative;
	width: 33px;
	height: 24px;
	background-image: url(/assets_common/icon_ed_house_3c.svg);
	background-position: -33px 0;
	background-size: cover;
	margin-right: 0.3em;
	top: -0.3em;
}






#box_sub_nav ul a {
	display: block;
	padding: 0.7em 0.5em 0.7em 0.5em;
	transition: 0.2s;
	position: relative;
	z-index: 0;
	overflow: hidden;
}

#box_sub_nav ul a::before {
	content: " ";
	display: block;
	width: 100%;
	height: 16px;
	position: absolute;
	left: 0;
	bottom: -16px;
	z-index: 0;

	background-image: url(/assets_common/art_wave_4p_white.svg);
	background-repeat: no-repeat;
	background-position: 0 0px;
	transition: 0.2s;
}


#box_sub_nav ul a:hover {
	background-color: #eaf3f6;
}

article[class^="company_"] #box_sub_nav ul a:hover::before {
	transform: translateY(-16px);
}


body#company.msg #box_sub_nav ul li:nth-of-type(1) a,
body#company.outline #box_sub_nav ul li:nth-of-type(2) a,
body#company.shops #box_sub_nav ul li:nth-of-type(3) a,
body#company.staff #box_sub_nav ul li:nth-of-type(4) a,
body#company.owners #box_sub_nav ul li:nth-of-type(5) a {
	background-color: #4ab6ea;
	color: #fff;
	pointer-events: none;
}

body#company.msg #box_sub_nav ul li:nth-of-type(1) a::before,
body#company.outline #box_sub_nav ul li:nth-of-type(2) a::before,
body#company.shops #box_sub_nav ul li:nth-of-type(3) a::before,
body#company.staff #box_sub_nav ul li:nth-of-type(4) a::before,
body#company.owners #box_sub_nav ul li:nth-of-type(5) a::before {
	transform: translateY(-16px);
	opacity: 0.2;
}



/* umi-machiリンク */

div#box_sub_blog {
	text-align: center;
}

div#box_sub_blog h5 {
	display: block;
	width: 50%;
	margin: 0 auto;
	font-size: 1.5rem;
	border: 1px solid #7ac9f0;
	padding: 0.4em 0 0.3em 0;
	position: relative;
	margin-bottom: 1em;
}

div#box_sub_blog h5,
div#box_sub_blog h5+p {
	color: #555;
	font-weight: 400;
	text-align: center;
}

div#box_sub_blog h5+p {
	font-size: 1.1rem;
	line-height: 1.6;
	margin-bottom: 24px;
}


div#box_sub_blog h5::after {
	content: " ";
	width: 34px;
	height: 34px;
	display: block;
	position: absolute;
	right: -17px;
	bottom: -14px;
	background-image: url(/assets_common/icon_marine_2c.png);
	background-repeat: no-repeat;
	background-size: 1040%;
	background-position: -45px 0;

}

div#box_sub_blog ul {
	position: relative;

}

div#box_sub_blog ul li {
	text-align: center;
	padding-bottom: 20px;
}


div#box_sub_blog h6 {
	text-align: center;
	font-size: 1.4rem;
	font-weight: 500;
	position: relative;
	z-index: 0;
	color: #4ab6ea;
	display: inline-block;
	margin-bottom: 1em;
}


div#box_sub_blog ul li:nth-of-type(1) h6 {
	padding-left: 1em;
}

div#box_sub_blog ul li:nth-of-type(2) h6 {
	padding-right: 1em;
}

div#box_sub_blog ul li:nth-of-type(1) h6::before,
div#box_sub_blog ul li:nth-of-type(2) h6::after {
	content: " ";
	display: block;
	vertical-align: middle;

	width: 35px;
	height: 20px;
	position: absolute;
	top: 0;


	background-position: 0 2px;
	background-repeat: no-repeat;
	background-size: contain;
}


div#box_sub_blog ul li:nth-of-type(1) h6::before {
	left: -24px;
	margin-right: 0.3em;
	background-image: url(/assets_common/art_seagull_left_blue.svg);
}

div#box_sub_blog ul li:nth-of-type(2) h6::after {
	right: -24px;
	margin-left: 0.3em;
	background-image: url(/assets_common/art_seagull_right_blue.svg);
}



div#box_sub_blog ul figure {
	width: 144px;
	height: 144px;
	border-radius: 72px;
	background-color: #555;
	margin: 0 auto 0 auto;
	overflow: hidden;
	position: relative;
	z-index: 0;
}


div#box_sub_blog ul figure img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	max-width: 152%;
	max-height: 152%;
	z-index: 1;
	transition: 0.3s;
	/* トリムの場合は高さかワイドを100%固定 */
}

div#box_sub_blog ul a:hover figure img {
	transform: scale(1.2);
}


/* calendar */
#box_calendar {
	position: fixed;
	left: 0;
	bottom: -210px;
	z-index: 9999999;

	width: 260px;
	height: 240px;

	-moz-transition: all 0.15s ease-in;
	-o-transition: all 0.15s ease-in;
	-webkit-transition: all 0.15s ease-in;
	transition: all 0.15s ease-in;
}

#box_calendar.active {
	bottom: 0;
	-webkit-box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.4);
	box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.4);
}

#box_calendar p {
	background-color: #41b4e9;
	color: #fff;
	text-align: center;
	font-size: 1.5rem;
	padding: 0.5em 0;
	position: relative;
	line-height: 1;
}

#box_calendar p:hover {
	cursor: pointer;
}

#box_calendar.active p {
	height: 5px;
	background-color: #40b3e8;
	padding: 0.0em 0;
	color: #40b3e8;
	font-size: 0px;
}

#box_calendar p span {
	font-size: 1.4rem;
	display: block;
	background-color: #222;

	position: absolute;
	/*	width: 1.8em;
		height: 1.8em;*/
	width: 26px;
	height: 26px;
	/*	top: -0.7em;
		right: -0.8em;*/
	top: -10px;
	right: -10px;
	border-radius: 50%;

	-webkit-box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.4);
	box-shadow: 2px 2px 10px rgba(0, 0, 0, 0.4);
}

#box_calendar p span:hover {
	cursor: pointer;
	opacity: 0.8;
}

/* たて */
#box_calendar p span:before {
	content: '';
	display: block;
	width: 2px;
	/*height: 0.8em;*/
	height: 12px;
	background-color: #fff;
	position: absolute;
	top: 7px;
	left: 50%;
	margin-left: -1px;
}

#box_calendar.active p span:before {
	display: none;
}

/* よこ */
#box_calendar p span:after {
	content: '';
	display: block;
	/*width: 0.8em;*/
	width: 12px;
	height: 2px;
	background-color: #fff;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-left: -6px;
	margin-top: -1px;
}

#box_calendar iframe {
	width: 100%;
	height: 100%;
}












/**/
/**/
/**/
/**/
/**/

/* ====================================== */
/* ========== responsive =========== */
/* ====================================== */

/**/





/* ===== 1024px（pc）以内 ===== */
@media (max-width: 1024px) {

	/* mq start */


	html.dont_scroll main {
		padding-right: 0;
	}


	#wrapper_contents {
		width: 100%;
		box-sizing: border-box;
		padding: 0 35px 0 35px;
	}

	#wrapper_contents .box_main {
		width: 700px;
	}

	ul#icons_share {
		display: none;
	}


	/* mq end */

}



/* ===== 768px（sp）以内 ===== */

@media (max-width: 768px) {

	/* mq start */

	.pc {
		display: none;
	}

	.sp {
		display: inline;
	}

	/* ========== buttons ========== */
	/* basic */
	[class^="btn_a_"] {
		font-size: 1.6rem;
	}

	[class^="btn_a_"] a {
		padding: 0.6em 1em 0.6em 1em;
	}


	/* ========== header ========== */

	/* header */
	header {
		width: 100vw;
		margin: 0;
		align-items: center;
	}





	div#box_header header p#site_id_com {
		position: absolute;
		width: 140px;
		height: 24px;
		left: 2.5vw;
		top: 14px;
		overflow: hidden;
	}

	#box_header.open header p#site_id_com {
		top: 18px;
	}


	p#site_statement {
		display: none;
	}


	ul#icons_share {
		display: none;
	}

	body:not(#home) div#box_header p.site_id {
		width: 30vw;
		top: 5vw;
		left: 55vw;
		right: auto;
	}

	p#btn_open_gn_menu:hover a {
		background-color: #111;
		color: #fff;
		box-shadow: none;
	}

	p#btn_open_gn_menu:hover a::before,
	p#btn_open_gn_menu:hover a::after {
		background-color: #fff;
	}

	p#btn_open_gn_menu.close a {
		background-color: #fff;
		color: #4ab6ea;
	}

	p#btn_open_gn_menu.close a::before,
	p#btn_open_gn_menu.close a::after {
		background-color: #4ab6ea;
	}


	div#box_header ul#btns_favorite_history a {
		padding: 0.3em 0.7em 0.3em 0.5em;
	}

	body:not(#home) div#box_header ul#btns_favorite_history {
		top: 31vw;
		right: 10px;
	}





	ul#btns_favorite_history span.text {
		display: none;
		margin: 0;
	}

	ul#btns_favorite_history li span.num::before,
	ul#btns_favorite_history li span.num::after {
		content: none;
	}

	ul#btns_favorite_history li {
		font-size: 3.1vw;
		margin: 0;
		margin-left: 2vw;
	}


	body.esJs-map__list--active div#box_header ul#btns_favorite_history li a,
	body#home ul#btns_favorite_history li a,
	div#box_header.bg_blue ul#btns_favorite_history li a,
	div#box_header.open ul#btns_favorite_history li a {
		padding: 0.25em 0.2em 0.2em 0.2em;
		min-width: 2.5em;
		font-size: 1.6rem;
		border: 1.5px solid #fff;
	}


	ul#btns_favorite_history li a>span::before {
		margin-right: 0;
	}

	body.esJs-map__list--active div#box_header p.site_id,
	div#box_header.bg_blue p.site_id {
		transform: translateY(-152px) translateX(0px) scale(0.65);
	}

	body.esJs-map__list--active div#box_header ul#btns_favorite_history,
	div#box_header.open ul#btns_favorite_history,
	div#box_header.bg_blue ul#btns_favorite_history,
	div#box_header.open ul#btns_favorite_history {
		top: 10px !important;
		right: 54px !important;
	}





	/* gnav */

	#box_gnav {
		padding: 0;
	}

	div#box_gnav {
		padding-top: 0;
		padding: 3vw 3vw 3vw 3vw;
	}

	#box_gnav dl,
	#box_ft_nav dl {
		padding-top: 0;
		display: block;
		min-width: 280px;
	}

	div#box_gnav dl a:hover,
	#box_ft_nav dl a:hover {
		text-decoration: none;
	}

	div#box_gnav dt,
	#box_ft_nav dt {
		font-size: 3.5vw;
		font-weight: 500;
		line-height: 1.2;
		position: static;
		width: auto;
		border-top: 1px solid rgba(255, 255, 255, 0.5);
		padding: 1em 0 0 0;
		height: 0;
		margin-top: 0.5em;

	}

	div#box_gnav dt::before,
	div#box_gnav dt::after,
	#box_ft_nav dt::before,
	#box_ft_nav dt::after {
		content: none;
	}


	div#box_gnav dd,
	#box_ft_nav dd {
		width: auto;
		padding-left: 8em;
		padding-top: 0;

	}




	div#box_gnav dd ul,
	#box_ft_nav dd ul {
		width: auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: flex-start;
	}


	div#box_gnav dd ul li,
	#box_ft_nav dd ul li {
		text-align: left;
		width: auto;
		font-size: 3.4vw;
		font-weight: 400;
		margin-bottom: 0.8em;
	}

	div#box_gnav dd ul li a,
	#box_ft_nav dd ul li a {
		padding: 0em 1.2em 0em 0em;
	}

	div#box_gnav dd ul li a br,
	#box_ft_nav dd ul li a br {
		display: none;
	}

	/* ========== main search ========== */

	#box_main_search {
		width: 90vw;
		top: 24px;
		left: 50%;
		margin-left: -45vw;
	}


	#box_main_search>div.box_inner {
		width: auto;
		min-width: initial;
		height: auto;
		margin: 0 auto;
		position: relative;
		background-color: #fff;
		border: none;
		border-radius: 0;
		max-width: initial;
	}



	#box_main_search ul {
		display: flex;
		max-width: initial;
		flex-wrap: wrap;
		margin: 0 auto;
		height: auto;
	}

	#box_main_search ul li {
		width: 49.3%;
		box-sizing: border-box;
		font-size: 2rem;
		font-weight: 500;
		line-height: 1;
		margin-bottom: 12px;

	}

	#box_main_search ul li:nth-of-type(1) span,
	#box_main_search ul li:nth-of-type(2) span {
		text-align: center !important;
		line-height: 1.3;
		font-size: 4vw;
	}




	#box_main_search ul li:nth-of-type(1) a {
		border-top-left-radius: 2em;
		border-bottom-left-radius: 2em;
		padding: 0.5em 0.2em 0.5em 0.5em;
	}

	#box_main_search ul li:nth-of-type(2) a {
		border-top-right-radius: 2em;
		border-bottom-right-radius: 2em;
		padding: 0.5em 0.5em 0.5em 0.2em;
	}



	#box_main_search ul li:nth-of-type(3) {
		width: 100%;

	}

	#box_main_search ul li:nth-of-type(3) a {
		padding: 0.7em 0.5em 0.7em 0.5em;
		border-radius: 1.5em;
	}





	/* ========== main ========== */
	main {
		min-width: 100vw;
		min-height: 500px;
	}

	main>article {
		min-height: 500px;

	}



	/* ------- page title ------- */

	div#box_page_ttl {
		width: 100vw;
		height: auto;
		overflow: hidden;
	}

	/* wave */

	div#box_page_ttl::before {
		bottom: -1px;
		width: 380px;
		height: 24px;
		left: -18vw;
		margin-left: 0;
		background-position: 0 -52px;
	}

	div#box_page_ttl>div.box_inner {
		max-width: none;
		margin: 0;
		padding: 13vw 3.5vw 8.5vw 4.9vw;
	}

	div#box_page_ttl h1 {
		font-size: 4.75vw !important;
		color: #fff;
		display: block;
		font-weight: 400;
		max-width: 55vw;
		line-height: 1.3;
		margin-bottom: 0.5em;
	}

	div#box_page_ttl h1>a>small.en {
		font-size: 0.5em;
		display: block;
		vertical-align: baseline;
		padding-left: 0;
		letter-spacing: 0.05em;
		margin-top: 0.7em;
	}

	div#box_page_ttl h1::before {
		display: none;
	}


	div#box_page_ttl h1 small.en::after {
		display: none;
	}


	div#box_page_ttl>div.box_inner::after {
		right: auto;
		left: 56%;
		margin-top: 20px;
	}


	/* ------- breadcrumbs ------- */

	#breadcrumbs {
		/*width: 100vw;*/
		width: auto;
		max-width: none;
		margin: 0;
		padding: 5vw 3.5vw 3.5vw 3.5vw;
		overflow: auto;
	}

	#breadcrumbs ol {
		display: block;
		overflow-x: auto;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
		overflow-scrolling: touch;
		overflow: auto;
		white-space: nowrap;
	}

	#breadcrumbs li {
		font-size: 3.5vw;
		font-weight: 400;
		display: inline;
	}


	/* ========== footer ========== */

	footer {
		min-width: 100vw;
		width: 100vw;
	}

	footer>div.box_inner,
	#box_ft_company,
	#box_ft_nav,
	#box_ft_banners,
	#box_ft_shops {
		width: 94vw !important;
		max-width: 9 !important;
		height: auto;
		margin: 0 auto;
		padding: 0;
	}

	footer>div.box_inner {
		padding-top: 120px;
	}


	footer>div.box_inner::before {
		width: 40vw;
		margin-left: -20vw;
	}

	footer p#ft_catch {
		font-size: 4.4vw;
		line-height: 1.6;
		width: 92vw;
		margin: 0 auto;
		margin-bottom: 2em;
		font-weight: 500;
	}

	footer p#ft_catch br {
		display: none;
	}


	/* ft shops */

	#box_ft_shops ul {
		display: block;
		box-sizing: border-box;
		padding: 0 3.5vw 0 3.5vw;
		margin-top: 20px;
		min-height: none;
	}


	#box_ft_shops ul li {
		width: auto;
		margin-bottom: 5vw;
	}

	#box_ft_shops ul li>p,
	#box_ft_shops ul li>a {
		text-align: center;
	}

	#box_ft_shops ul li.tsujido p,
	#box_ft_shops ul li.tsujido address,
	#box_ft_shops ul li.chigasaki p,
	#box_ft_shops ul li.chigasaki address {
		text-align: center;
	}

	#box_ft_company {
		width: auto;
		padding-bottom: 70px;
	}


	/* banners */


	#box_ft_banners ul {
		display: flex;
		justify-content: space-between;
		padding-top: 12vw;
		flex-wrap: wrap;
		width: 92vw;
		margin: 0 auto;
	}

	#box_ft_banners ul li {
		width: calc((92vw - 24px) / 2);
		margin-bottom: 24px;
	}

	#box_ft_banners ul li:nth-of-type(even) {
		margin-right: 0;
	}

	#box_ft_banners ul li a {
		width: 100%;
	}

	#box_ft_banners ul li a img {
		width: 100%;
		height: auto;
	}


	#box_ft_banners ul li a:hover img {
		opacity: 1;
	}


	/* */
	#wrapper_ft_bottom {
		padding-top: 20px;
		margin: 0;
		width: 100vw;
		z-index: 0;

		background-image: url(/assets_common/bg_sand_grunge_beige.jpg);
		background-position: 50% 0;
	}

	p#ft_copyright {
		font-size: 1.3rem;
		color: #555;
		padding-top: 3vw;
	}


	#wrapper_ft_bottom::before {
		top: -18px;
		width: 300px;
		height: 31px;
		position: absolute;
		left: 50%;
		margin-left: -310px;
		background-size: 100% auto;
		z-index: 1;
	}

	/* pagetop */
	footer p.btn_pagetop {
		width: 60px;
		height: 60px;
		bottom: 5vw;
		right: 5vw;
	}

	footer p.btn_pagetop a {
		width: 60px;
		height: 60px;
		border-radius: 30px;
	}



	footer p.btn_pagetop.on a:hover {
		background-color: rgba(0, 0, 0, 1);
	}


	footer p.btn_pagetop a::before {

		width: 17px;
		height: 17px;
		left: 50%;
		margin-left: -10px;
		top: 41%;
		transform: rotate(-135deg);
		position: absolute;
		border-right: 2px solid #fff;
		border-bottom: 2px solid #fff;
		opacity: 0.3;
	}

	footer p.btn_pagetop.on a::before {
		opacity: 0.8;
	}

	/* ========== 検索レイヤー ========== */




	#layer_station_map,
	#layer_rail_finder,
	#layer_g_search {
		height: 80vh;
	}



	#layer_g_search {
		height: 220px;
		max-height: initial;
		width: 90vw;
		max-width: 500px;
	}

	/* ------- layer google search ------- */
	div#box_g_search_input {
		width: 96%;
		margin: 0 auto;
		padding: 18px 0 20px 0;
	}


	#layer_g_search>.box_inner {
		min-height: 100px;
	}


	#layer_station_map>.box_inner,
	#layer_rail_finder>.box_inner {
		overflow-y: scroll;
		width: 100%;
		height: calc(100% - 44px);
	}

	#layer_g_search>.box_inner {}

	div.box_form_elmt {
		padding: 0px 0 44px 0;
	}


	#layer_rail_finder .box_header,
	#layer_g_search .box_header {
		padding: 1rem;
		padding-top: 0.8rem;
	}

	#layer_rail_finder .box_header h2,
	#layer_g_search .box_header h2 {
		font-size: 1.8rem;
	}


	#bottom_btns {
		flex-wrap: wrap;
	}

	#bottom_btns li {
		margin-bottom: 18px;
		margin-left: 0;
		margin-right: 0;
	}


	#layer_rail_finder dl {
		display: block;

	}

	#layer_rail_finder dl dt {
		text-align: left;
		width: 100%;
		border-top: 1px solid #ccc;
		margin-top: 0.6em;
	}

	#layer_rail_finder dl dt:first-child {
		margin-top: 0;
		border-top: none;
	}

	#layer_rail_finder dl dd {
		width: 100%;
		padding-top: 0.6em;
	}

	#layer_rail_finder dl dd span.manage_cost {
		padding-top: 0.5em;
		display: block;
	}

	#layer_rail_finder dl dd:nth-of-type(4) {
		padding-top: 0.5em;
	}



	#bottom_btns li.btn_a_clear {
		margin-right: inherit;
	}



	#layer_rail_finder p.btn_layer_close,
	#layer_g_search p.btn_layer_close {
		text-align: right;
		padding-top: 12px;
		padding-bottom: 12px;
		padding-right: 12px;
		position: absolute;
		bottom: 0;
		left: 0;
		width: 100%;
		box-sizing: border-box;
		background-color: #fff;
	}

	#layer_rail_finder p.btn_layer_close a,
	#layer_g_search p.btn_layer_close a {
		top: 0.5em;
		position: relative;
	}


	/* ------- sub header ------- */

	div#box_sub_header {
		width: 100%;
		margin: 0;
		max-width: initial;
		max-width: auto;
		height: auto;
		height: 290px;
		overflow: hidden;
	}

	div#box_sub_header>.box_inner {
		width: 90%;
		margin: 0 auto;
		padding: 70px 0 0 0;
	}


	div#box_sub_header h2 {
		font-size: 2.8rem;
		font-weight: 400;
	}

	div#box_sub_header p.sub_ttl_en {
		width: auto;
		font-size: 1.7rem;
	}


	div#box_sub_header p.sub_ttl_en>small {
		position: static;
		display: inline;
		font-size: 1.3rem;
		text-align: center;
		margin-left: 0.5em;

	}


	/* ------- 2nd wrapper ------- */

	#wrapper_contents {
		width: 100%;
		margin: 0;
		padding: 0;
	}

	/* ------- /2nd wrapper ------- */


	/* sub navi - column */

	#box_sub_nav {
		position: relative;
		width: 100%;
		display: block;
		height: auto;
		padding-top: 24px;
		padding-bottom: 28px;
	}

	#box_sub_nav div.box_inner {
		width: 100%;
		overflow-x: scroll;
		position: relative;
		z-index: 0;
		padding: 0;
	}

	#box_sub_nav h5 {
		width: 100%;
		margin-right: 0;
		text-align: center;
		border-bottom: none;

	}

	#box_sub_nav ul.company {
		width: 220%;
		display: flex;
		flex-wrap: nowrap;
		font-size: 1.6rem;
		line-height: 1.3;
		padding-bottom: 0;
		position: relative;
		z-index: 0;
	}

	#box_sub_nav ul.company li {
		font-size: 4.5vw;
	}


	#box_sub_nav ul.company li br {
		display: none;
	}

	#box_sub_nav ul.company li a {
		margin-right: 12px;
	}



	/* umi-machiリンク */

	div#box_sub_blog {}

	div#box_sub_blog h5 {
		display: block;
		width: 70%;
		font-size: 1.8rem;
		padding: 0.4em 0 0.5em 0;
		font-weight: 400;
	}



	div#box_sub_blog h5+p {
		font-size: 1.6rem;
		line-height: 1.6;
		margin-bottom: 2em;
	}

	div#box_sub_blog h6 {
		font-size: 1.8rem;
		font-weight: 500;
		margin-bottom: 1em;
	}


	/* カレンダー */

	#box_calendar {
		position: static;
		margin-left: -130px;
		bottom: auto;
		/*height: 270px;*/
		top: calc(50vh - 170px);
		left: 50%;

		-moz-transition: all 0.15s ease-in;
		transition: all 0.15s ease-in;
	}

	#box_calendar.active {
		position: fixed;
		bottom: auto;
		border-radius: 16px 16px 0 0;
		/*overflow: hidden;*/
	}

	#box_calendar iframe {
		visibility: hidden;
	}

	#box_calendar.active iframe {
		visibility: visible;
		border: 2px solid #fff;
		border-radius: 0 0 16px 16px;
	}

	#box_calendar p {
		background-color: #fff;
		padding: 0;
		box-shadow: 0px 3px 18px rgba(0, 0, 0, 0.3);
		width: 50px;
		height: 50px;
		border-radius: 25px;
		text-indent: 100%;
		white-space: nowrap;
		overflow: hidden;
		position: fixed;
		bottom: 22px;
		left: 104px;
		z-index: 99999;
	}

	#box_calendar p::before {
		content: " ";
		width: 27px;
		height: 24px;
		position: absolute;
		top: 50%;
		left: 50%;
		margin: -12px 0 0 -13.5px;
		background-image: url(/assets_common/icon_calendar.svg);
		background-position: 0 0;
		background-repeat: no-repeat;
		background-size: cover;
	}


	#box_calendar.active p {
		box-shadow: none;
		padding: 0.5em 0;
		background-image: none;
		width: 100%;
		height: auto;
		font-size: 1.5rem;
		font-weight: 500;
		position: relative;
		bottom: auto;
		left: auto;
		text-indent: 0;
		color: #fff;
		overflow: visible;
		border-radius: 14px 14px 0 0;
		border: 2px solid #fff;
	}


	#box_calendar.active p::before {
		content: none;
	}

	#box_calendar p span {
		display: none;
	}

	#box_calendar iframe {
		background-color: #fff;
	}

	#box_calendar.active p span {
		display: block;
		top: auto;
		bottom: -255px;
		right: -13px;
	}



	/* mq end */

}


/* ===== 375px（sp）以内 ===== */

@media (max-width: 320px) {
	/* mq start */

	body:not(#home) div#box_header p.site_id {
		left: 51vw;
	}

	div#box_gnav dd,
	#box_ft_nav dd {
		padding-left: 5em !important;

	}



	/* mq end */
}

/**/
/**/
/**/
/**/
/**/

/* フッターのキャッチコピー上の青い線を非表示（2026-10-11） */
footer>div.box_inner::before { content: none; display: none; }

/* フッター上部（キャッチコピーの上）の余白を詰める（2026-10-11） */
footer>div.box_inner { padding-top: 56px; }
@media screen and (max-width: 768px) {
	footer>div.box_inner { padding-top: 40px; }
}

/* ===== home.css ===== */
/* CSS Document */

/* for home */

/* ========== wrapper ========== */

div#pagetop {
	height: 0;
	width: 100%;
	position: relative;
	z-index: 0;
}

/* ========== main / wave ========== */

body#home main {}

body#home main::before,
section#sec_home_keywords::before,
#sec_home_umi-machi::before,
#sec_home_insta::after {
	content: " ";
	display: block;
	top: -29px;
	width: 480px;
	height: 31px;
	position: absolute;
	left: 50%;
	margin-left: -900px;
	background-image: url(/assets_common/art_wave_4p_white.svg);
	background-repeat: no-repeat;
	background-size: 100% auto;
	z-index: 1;
}

section#sec_home_keywords::before {
	background-position: 0 -134px;
	top: -1px;
	margin-left: 220px;
	z-index: 0;
}


#sec_home_umi-machi::before {
	background-position: 0 -200px;
	top: -1px;
	margin-left: -720px;
	z-index: 0;
}



#sec_home_insta::after {
	bottom: -2px;
	top: auto;
	margin-left: 240px;
}


/* ========== kv ========== */

div#box_kv_home {
	width: 100%;
	min-width: 1024px;
	height: calc(100vw * 0.4);
	max-height: 640px;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 0;
	overflow: hidden;
	background-color: #4ab6ea;
}




div#box_kv_bg_imgs {
	width: 100vw;
	height: 40vw;
	max-width: 1600px;
	max-height: 640px;
	overflow: hidden;
	position: absolute;
	left: 50vw;
	margin-left: -50vw;
	top: 0;
	z-index: 10;
	background-color: #4ab6ea;

}








div#box_kv_bg_imgs>div {
	position: absolute;
	z-index: 0;
	overflow: hidden;
}

div#box_kv_bg_imgs>div img {
	width: 100%;
	height: auto;
	position: relative;
}

div#box_kv_bg_imgs div.enoshima {
	width: 66vw;
	max-width: 1060px;
	height: 100%;
	background-color: #ddd;
	left: 0;
	top: 0;
	z-index: 10;
}

div#box_kv_bg_imgs div.beach,
div#box_kv_bg_imgs div.happy_life {
	width: calc(34vw + 1px);
	max-width: 540px;
	right: 0;
}


div#box_kv_bg_imgs div.beach {
	top: 0;
	background-color: #ccc;
	height: calc(34vw * 0.537);
	max-height: 290px;
	overflow: hidden;
	z-index: 5;
}

div#box_kv_bg_imgs div.beach img {
	top: -24%;

}

div#box_kv_bg_imgs div.happy_life {
	top: calc(34vw * 0.537);
	background-color: #aaa;
	height: calc(34vw * 0.6481);
	max-height: 350px;
	overflow: hidden;
	z-index: 0;
}

div#box_kv_bg_imgs div.happy_life img {
	width: 100%;
}







div#box_kv_home h1,
div#box_kv_home p#catch_kv {
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 100;
	color: #fff;
}

div#box_kv_home h1 {
	width: 27vw;
	max-width: 440px;
	top: 50%;
	margin-top: -13%;
	left: 50%;
	margin-left: 3.2vw;
}

div#box_kv_home h1 a {
	display: block;
}



div#box_catch_shops {
	position: absolute;
	height: 65%;
	left: 50%;
	margin-left: -50px;
	z-index: 300;
	top: 6vw;
	width: 110px;
	z-index: 200;
}

div#box_catch_shops ul.shops {
	height: 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 200;
}

div#box_catch_shops ul.shops li {
	position: absolute;

	background-color: #fff;
	border: 4px solid rgba(255, 255, 255, 0.1);
	font-family: "Dancing Script";
	font-size: 1.8rem;
	color: #fff;
	transition: 0.3s;
}

div#box_catch_shops ul.shops li,
div#box_catch_shops ul.shops li a {
	width: 8.2vw;
	height: 8.2vw;
	max-width: 96px;
	max-height: 96px;
}

div#box_catch_shops ul.shops li a {
	color: #fff;
	display: block;
	overflow: hidden;
	position: relative;
	position
}

div#box_catch_shops ul.shops li a:hover {}

div#box_catch_shops ul.shops li a img {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	height: 120%;
	max-width: 160%;
	width: auto;
	/* トリムの場合は高さかワイドを100%固定 */
	transition: 0.3s;
}


div#box_catch_shops ul.shops li a:hover img {
	transform: scale(1.1, 1.1);
}

div#box_catch_shops ul.shops li:hover {
	box-shadow: 0px 25px 30px rgba(0, 0, 0, 0.15);
}

div#box_catch_shops ul.shops li span {
	display: block;
	position: relative;
	position: absolute;
	z-index: 0;
}

div#box_catch_shops ul.shops li.tsujido {
	left: -110px;
	top: 1.455vw;
}

div#box_catch_shops ul.shops li.chigasaki {
	right: -210px;
	top: 6.55vw;
}

div#box_catch_shops ul.shops li.chigasaki img {
	height: 100%;
	margin-left: -10%;
}

div#box_catch_shops ul.shops li.chigasaki img {
	margin-left: -30%;
}




div#box_catch_shops ul.shops li.tsujido span {
	top: -1.8em;
	left: -1em;
}

div#box_catch_shops ul.shops li.chigasaki span {
	bottom: -1.8em;
	right: -1em;
}



div#box_kv_home p#catch_kv {
	font-size: 3.3rem;
	line-height: 1.4;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	font-weight: 600;
	letter-spacing: 0.3em;
	position: relative;
	left: 0;
}



/* typo map */
div#box_kv_bg_imgs div#box_kv_typo_map {
	position: absolute;
	z-index: 150;
	bottom: 4%;
	width: 100vw;
	max-width: 1500px;
	opacity: 0.9;
}

div#box_kv_typo_map p#main_name_large {
	width: 100%;
	text-align: center;
}

div#box_kv_typo_map p#main_name_large>img {
	width: 67%;
	margin-left: -28%;
}


div#box_kv_typo_map p.art_map_name {
	position: absolute;
	top: 55%;
	left: 2%;

}

div#box_kv_typo_map p.art_map_name img {
	height: auto;
	display: inline-block;
	vertical-align: middle;
}

div#box_kv_typo_map p.art_map_name .map {
	width: 23%;
}

div#box_kv_typo_map p.art_map_name .text {
	width: 34%;
	margin-left: 2%;
}

/* kv seagulls */

div#box_kv_bg_imgs div.seagulls.white span.a {
	top: 10vw;
	margin-left: -35%;
}

div#box_kv_bg_imgs div.seagulls.white span.b {
	top: 6vw;
	margin-left: -10%;
}


div#box_kv_bg_imgs div.seagulls.white span.c {
	top: 19vw;
	margin-left: -25%;
}




/* ========== main ========== */

main {
	margin-top: 40vw;
	padding-top: 54px;
}

p#home_main_catch {
	text-align: center;
	margin: 0 auto 0px auto;
	font-size: 2.4rem;
	line-height: 1.6;
	letter-spacing: 0.2em;
	color: #3fade1;
	font-weight: 400;
	padding: 0 32px 0 32px;
	max-width: 960px;
}

/* 入れるかどうか */
p.btn_down {
	text-align: center;
}

/* ========== section common ========== */
main>section {
	min-height: 200px;
	height: auto;
}

main>section>.box_inner,
main div#wrapper_company_info>section>.box_inner {
	width: 100%;
	max-width: 1280px;
	box-sizing: border-box;
	min-width: 1024px;
	margin: 0 auto;
	padding: 0 36px 0 36px;
	position: relative;
	z-index: 0;
}

/* ========== home reccomend ========== */

section#sec_home_reccomend {
	padding: 32px 0 40px 0;
	text-align: center;
	width: 100%;
	min-width: 1024px;
	position: relative;
	z-index: 0;
	overflow: hidden;
}


section#sec_home_reccomend::before,
section#sec_home_reccomend::after {
	content: " ";
	display: block;
	width: 720px;
	height: 270px;
	position: absolute;
	z-index: -1;
	left: 50%;
	top: 20%;
	background-repeat: no-repeat;
	background-size: contain;
}

section#sec_home_reccomend::before {
	background-image: url(/assets_home/bg_typo_rcmd_tsujido_st.png);
	margin-left: -800px;
}

section#sec_home_reccomend::after {
	background-image: url(/assets_home/bg_typo_rcmd_chigasaki_st.png);
	margin-left: 120px;
	top: 50%;
}

section#sec_home_reccomend h2 {
	font-size: 1.6rem;
	font-weight: 500;
	text-align: center;
	color: #333;
	position: relative;
	z-index: 20;
	margin: 0 auto;
	max-width: 960px;
	display: inline-block;
	line-height: 1;
	background-color: #fff;
	padding: 0.6em 1.2em 0.7em 1.2em;
	border: 2px dotted #41b4e9;
	border-radius: 1.5em;
}

section#sec_home_reccomend>div.box_inner {
	display: flex;
	justify-content: space-between;
	margin-top: -40px;
	position: relative;
	z-index: 0;
	opacity: 0;
	animation: fadeIn 2s ease-out 0.5s 1 normal forwards;
	-webkit-animation: fadeIn 2s ease-out 0.5s 1 normal forwards;
}

@keyframes fadeIn {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}

@-webkit-keyframes fadeIn {
	0% {
		opacity: 0
	}

	100% {
		opacity: 1
	}
}


section[class^="rcmd_"] {
	position: relative;
	box-sizing: border-box;
	padding-bottom: 32px;
	z-index: 0;
	width: 50%;
}

section[class^="rcmd_"] p.btn_a_more {
	text-align: center;
}

section.rcmd_tsujido {
	padding-right: 36px;
	border-right: 2px dotted #41b4e9;
}



section.rcmd_chigasaki {
	padding-left: 36px;
}

section.rcmd_tsujido::before,
section.rcmd_chigasaki::before {
	content: " ";
	display: block;
	z-index: -1;

	width: 180px;
	height: 200px;
	position: absolute;
	top: -24px;
	background-image: url(/assets_common/art_dot_huge.svg);
	background-repeat: no-repeat;
	background-size: contain;
	opacity: 0.7;
}

section.rcmd_tsujido::before {
	left: -60px;
}

section.rcmd_chigasaki::before {
	right: -65px;
}

div.loading {
	width: 100%;
	height: 50vw;
	text-align: center;
	min-height: 100px;
}

div.loading.hide {
	display: none;
}

div.loading p {
	text-align: center;
	font-size: 1.4rem;
}

div.loading img {
	width: 3em;
	height: auto;
	margin-top: 2em;
}


/*  */


section[class^="rcmd_"] h3 {
	margin-bottom: 1.5em;
	position: relative;
}





section[class^="rcmd_"] h3 span {
	font-family: "Roboto Slab";
	text-transform: uppercase;
	display: inline-block;
	margin: 0 0.7em 0 0.7em;
	color: #666;
	position: relative;
	top: -0.3em;
}

section.rcmd_tsujido h3 {
	padding-left: 36px;
}

section.rcmd_chigasaki h3 {
	text-align: right;
	padding-right: 36px;
}


section.rcmd_tsujido h3::before,
section.rcmd_chigasaki h3::after {
	content: " ";
	display: block;
	position: absolute;
	width: 34px;
	height: 40px;
	top: 3px;
	background-image: url(/assets_common/icon_search.svg);
	background-position: -51px -226px;
	background-repeat: no-repeat;
	background-size: 540%;
}

section.rcmd_tsujido h3::before {
	background-position: -51px -181px;
}

section.rcmd_tsujido h3::before {
	left: 0;
}

section.rcmd_chigasaki h3::after {
	right: 0;
}


section[class^="rcmd_"] h3 img {
	height: 54px;
	vertical-align: middle;
}

section[class^="rcmd_"] ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding-bottom: 24px;
}

section[class^="rcmd_"] ul>li {
	width: 28%;
	margin-bottom: 24px;
	overflow: hidden;
	position: relative;
	opacity: 0;
}

section[class^="rcmd_"] ul>li:nth-of-type(1) {
	-webkit-animation: example 0.5s ease 0.5s 1 forwards;
	animation: example 0.5s ease 0.5s 1 forwards;
}

section[class^="rcmd_"] ul>li:nth-of-type(2) {
	-webkit-animation: example 0.5s ease 0.6s 1 forwards;
	animation: example 0.5s ease 0.6s 1 forwards;
}

section[class^="rcmd_"] ul>li:nth-of-type(3) {
	-webkit-animation: example 0.5s ease 0.7s 1 forwards;
	animation: example 0.5s ease 0.7s 1 forwards;
}

section[class^="rcmd_"] ul>li:nth-of-type(4) {
	-webkit-animation: example 0.5s ease 0.8s 1 forwards;
	animation: example 0.5s ease 0.8s 1 forwards;
}

section[class^="rcmd_"] ul>li:nth-of-type(5) {
	-webkit-animation: example 0.5s ease 0.9s 1 forwards;
	animation: example 0.5s ease 0.9s 1 forwards;
}

section[class^="rcmd_"] ul>li:nth-of-type(6) {
	-webkit-animation: example 0.5s ease 1.0s 1 forwards;
	animation: example 0.5s ease 1.0s 1 forwards;
}

section[class^="rcmd_"] ul>li:nth-of-type(7) {
	-webkit-animation: example 0.5s ease 1.1s 1 forwards;
	animation: example 0.5s ease 1.1s 1 forwards;
}

section[class^="rcmd_"] ul>li:nth-of-type(8) {
	-webkit-animation: example 0.5s ease 1.2s 1 forwards;
	animation: example 0.5s ease 1.2s 1 forwards;
}

section[class^="rcmd_"] ul>li:nth-of-type(9) {
	-webkit-animation: example 0.5s ease 1.3s 1 forwards;
	animation: example 0.5s ease 1.3s 1 forwards;
}

@-webkit-keyframes example {
	100% {
		opacity: 1;
	}
}

@keyframes example {
	100% {
		opacity: 1;
	}
}


section[class^="rcmd_"] ul p.photo {
	position: relative;
	/*background-color: #aaa;*/
	width: 100%;
	overflow: hidden;
}

section[class^="rcmd_"] ul>li a {
	display: block;
}


section[class^="rcmd_"] ul>li a:hover p.photo {
	transition: 0.3s;
	box-shadow: 0px 10px 25px rgba(0, 0, 0, 0.2);
}

section[class^="rcmd_"] ul p.photo:before {
	content: '';
	display: block;
	padding-top: 100%;
	background-color: rgba(0, 0, 0, 0.5);
}


section[class^="rcmd_"] ul .photo img {
	transition: 0.3s;
	/*	object-fit: cover;
	width: 100%;
	height: calc(100vw * 0.132815);
	vertical-align: bottom;*/

	position: absolute;
	top: 0;
	display: block;
	left: -30%;
	top: -10%;
	max-width: inherit;
	max-width: initial;
	width: 160%;
	height: 120%;

}

/*@media all and (-ms-high-contrast: none) {
  *::-ms-backdrop, section[class^="rcmd_"] ul .photo img {
    /* IE11 にのみ適用される *!/
	margin-left: 0;
  }
}*/

section[class^="rcmd_"] ul>li a:hover p.photo img {}


section[class^="rcmd_"] p.fee {
	font-size: 2.95rem;
	font-family: "Barlow";
	font-weight: 400;
	line-height: 1.4;
	letter-spacing: -0.05em;
}

section.rcmd_tsujido p.fee {
	color: #50b98e;
}

section.rcmd_chigasaki p.fee {
	color: #e49b3c;
}

section[class^="rcmd_"] p.fee small {
	display: inline-block;
	font-size: 1.65rem;
	position: relative;
	top: -0.05em;
	margin-left: 0.1em;
	font-weight: 500;
	color: #555;
}

section[class^="rcmd_"] p.category {
	background-color: #333;
	color: #fff;
	display: inline-block;
	padding: 0.4em 0.6em 0.5em 0.6em;
	margin-bottom: 0.4em;
	font-weight: 500;
	font-size: 1.1rem;
	line-height: 1;
	border-radius: 3px;
}

section[class^="rcmd_"] p.access {
	font-size: 1.3rem;

	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;

}

@media all and (-ms-high-contrast: none) {

	*::-ms-backdrop,
	section[class^="rcmd_"] p.access {
		/* IE11 にのみ適用される */
		max-height: 2.8em;
		overflow: hidden;
	}
}


p.btn_a_more_tsujido a:hover,
p.btn_a_more_chigasaki a:hover {
	transition: 0.3s;
	opacity: 0.7;
}

/* iframe */

section[class^="rcmd_"] div.iframe {
	width: 560px;
	height: 1480px;
	text-align: left;
	overflow: hidden;
}

div.iframe iframe {
	width: 100%;
	height: 100%;
	overflow: hidden;
}


/* ========== home keywords ========== */

section#sec_home_keywords {
	background-color: #f4f3e6;
	padding-bottom: 40px;
	position: relative;
	overflow: hidden;

}

section#sec_home_keywords,
section#sec_home_umi-machi {
	background-image: url(/assets_common/bg_sand_grunge_beige.jpg);
	background-position: 50% 0;
}


section#sec_home_keywords h2,
section#sec_home_news h2,
section#sec_home_umi-machi h2 {
	font-size: 2.8rem;
	text-align: center;
	position: relative;
	padding-top: 156px;
	padding-bottom: 46px;
	z-index: 13;
}

section#sec_home_keywords h2 span,
section#sec_home_news h2 span,
section#sec_home_umi-machi h2 span {
	display: block;
	position: absolute;
	left: 50%;
	margin-left: -225px;
	top: 36px;
	width: 450px;
	text-align: center;
	color: #4ab6ea;
	text-transform: capitalize;
	line-height: 0.3;
}



section#sec_home_news h2 {
	padding-top: 174px;
}

section#sec_home_umi-machi h2 {
	padding-top: 156px;
}



section#sec_home_keywords h2 img,
section#sec_home_news h2 img {
	height: 54px;
}

section#sec_home_umi-machi h2 img {
	height: 48px;
}


section#sec_home_keywords h2 span small,
section#sec_home_news h2 span small,
section#sec_home_umi-machi h2 span small {
	font-size: 1.2rem;
	text-transform: uppercase;
	font-family: "Roboto Slab";
	font-weight: 500;
	letter-spacing: 0.2em;
	display: block;
	text-align: center;
	position: relative;
}

/* icon */

section#sec_home_news h2 span::after,
section#sec_home_umi-machi h2 span::after,
section#sec_home_keywords h2 span::after {
	content: " ";
	width: 44px;
	height: 44px;
	display: block;
	position: absolute;
	bottom: -44px;
	left: 50%;
	margin-left: -22px;
	z-index: 10;

	background-image: url(/assets_common/icon_marine_2c.png);
	background-position: 2px 0;
	background-repeat: no-repeat;
	background-size: 1050%;
}

section#sec_home_keywords h2 span::after {
	background-position: -59px 0;
}

section#sec_home_news h2 span::after {
	bottom: -75px;
}

section#sec_home_umi-machi h2 span::after {
	bottom: -53px;
	background-position: -118px 0;
}



/* seagulls */

section#sec_home_keywords div.seagulls.white,
section#sec_home_umi-machi div.seagulls.white {
	z-index: 0 !important;
}

section#sec_home_keywords div.seagulls.white span,
section#sec_home_umi-machi div.seagulls.white span {
	width: 80px;
	height: 48px;
}


section#sec_home_keywords div.seagulls.white span.a,
section#sec_home_umi-machi div.seagulls.white span.a {
	top: 64px;
	margin-left: -250px;
}

section#sec_home_keywords div.seagulls.white span.b,
section#sec_home_umi-machi div.seagulls.white span.b {
	top: 164px;
	margin-left: 260px;
}


section#sec_home_keywords div.seagulls.white span.c,
section#sec_home_umi-machi div.seagulls.white span.c {
	top: 464px;
	margin-left: -690px;
}

section#sec_home_keywords div.seagulls.white span.d,
section#sec_home_umi-machi div.seagulls.white span.d {
	top: 764px;
	margin-left: 600px;
}

section#sec_home_umi-machi div.seagulls.white span.e {
	top: 780px;
	margin-left: 300px;
}

section#sec_home_umi-machi div.seagulls.white span.f {
	top: 690px;
	margin-left: -280px;
}





/*--*/
ul#home_keywords {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	min-width: 952px;
	position: relative;
	z-index: 30;
}

ul#home_keywords li {
	margin-bottom: 30px;
	width: calc((100% - 90px) / 4);
	position: relative;
	z-index: 20;
}



ul#home_keywords li>span {
	display: block;
	box-sizing: border-box;
	padding: 28px 20px 16px 20px;
	background-color: #fff;
	width: 100%;
	height: 100%;
	position: relative;
	z-index: 10;
}

ul#home_keywords li>span::before {
	content: " ";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 38px 38px 0 0;
	border-color: #49b6ea transparent transparent transparent;
	opacity: 0.3;
}

ul#home_keywords li.x2>span::before {
	content: none;
}

ul#home_keywords li:hover {
	box-shadow: 0px 10px 25px rgba(0, 0, 0, 0.07);
	cursor: pointer;
}


ul#home_keywords li>span:hover::before {
	opacity: 1;
}

ul#home_keywords li::after {
	content: " ";
	width: 100%;
	height: 100%;
	display: block;
	position: absolute;
	left: 0;
	top: 10px;
	background-color: rgba(0, 0, 0, 0.05);
	z-index: -10;
}



ul#home_keywords li.x2 {
	width: calc((100% - 30px) / 2);
	height: 250px;
	position: relative;
	z-index: 0;
	margin-bottom: 35px;
}

ul#home_keywords li.x2 h3 {
	position: absolute;
	top: 0;
	z-index: 20;
}

ul#home_keywords li.x2 h3 img {
	width: 100%;
	height: auto;
}

ul#home_keywords li.x2.umi-chika h3 {
	width: 180px;
	left: 3%;
	top: -10px;
}

ul#home_keywords li.x2.for_surfers h3 {
	width: 202px;
	right: 5%;
}


ul#home_keywords li.x2 h3+p {
	font-size: 1.5rem;
	line-height: 1.5;
	position: absolute;
	width: 75%;
	z-index: 30;
	margin-bottom: 0;
	bottom: 3%;
}


ul#home_keywords li.x2.for_surfers p {
	color: #fff;
}


ul#home_keywords li.x2>span {
	background-color: transparent;
}

ul#home_keywords li.x2 div.bg_photo {
	position: absolute;
	width: 100%;
	height: 100%;
	background-color: #fff;
	z-index: 0;
	top: 0;
	left: 0;
}

ul#home_keywords li.x2 div.bg_photo>span {
	display: block;
	z-index: 0;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	overflow: hidden;
	transition: 0.3s;
	transform: rotate(2deg);
}

ul#home_keywords li.x2:hover div.bg_photo>span {
	transform: rotate(-2deg);
}

ul#home_keywords li.x2.umi-chika div.bg_photo>span>img,
ul#home_keywords li.x2.for_surfers div.bg_photo>span>img {
	position: relative;
	top: 50%;
	margin-top: -36%;
}

ul#home_keywords li.x2.for_surfers div.bg_photo>span>img {
	margin-top: -41%;
}

ul#home_keywords li.x2 p.btn_t_more {
	position: absolute;
	right: 3%;
	bottom: 5%;

}


ul#home_keywords p.icon {
	height: 80px;
	text-align: center;
	margin-bottom: 8px;
	position: relative;
	transition: 0.3s;
}

ul#home_keywords li>span:hover p.icon {
	transform: scale(1.2);
}

ul#home_keywords p.icon img {
	height: 100%;
	width: auto;
}

ul#home_keywords li.x2 h3,
ul#home_keywords li.x2 h3+p {
	text-align: left;
}


ul#home_keywords p.btn_t_more {
	text-align: right;
	font-size: 1.4rem;
}

ul#home_keywords li h3 {
	color: #29baea;
	text-align: center;
	font-size: 2.4rem;
	font-weight: 400;
	margin-bottom: 0.4em;
}

ul#home_keywords li:nth-of-type(9) h3 {
	letter-spacing: -0.1em;
}

ul#home_keywords li h3+p {
	font-size: 1.3rem;
	line-height: 1.6;
	font-weight: 400;
	margin-bottom: 1em;
	text-align: center;
	height: 3.5em;
}



ul#home_keywords li:nth-of-type(odd)::after {
	top: 6px;
	left: 3px;
	transform: rotate(-0.8deg);
}

ul#home_keywords li:nth-of-type(even)::after {
	top: 6px;
	left: 3px;
	transform: rotate(0.8deg);
}

/* 2020-02-14 */
#sec_home_keywords p.btn_kw_small {
	text-align: right;
	font-size: 1.8rem;
	font-weight: 400;
}

#sec_home_keywords p.btn_kw_small a {
	display: inline-block;
	background-color: #fff;
	padding: 1em 1.3em 1em 1.3em;
	position: relative;
	box-shadow: 2px 4px 5px rgba(0, 0, 0, 0.1);
	transition: 0.3s;
}





#sec_home_keywords p.btn_kw_small a::before {

	content: " ";
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 24px 24px 0 0;
	border-color: #49b6ea transparent transparent transparent;
	opacity: 0.3;
	transition: 0.3s;
}

#sec_home_keywords p.btn_kw_small a:hover {
	box-shadow: 0px 1px 4px rgba(0, 0, 0, 0.2);
}


#sec_home_keywords p.btn_kw_small a:hover::before {
	opacity: 1;
}



#sec_home_keywords p.btn_kw_small a span {
	display: inline-block;
	position: relative;
	z-index: 0;
	color: #29baea;
}

#sec_home_keywords p.btn_kw_small a span small {
	font-size: 1.4rem;
	color: #222;
	margin-right: 0.3em;
}


#sec_home_keywords p.btn_kw_small a span::before {
	content: " ";
	display: inline-block;
	width: 14px;
	height: 14px;
	/*background-color: rgba(0,0,0,0.2);*/
	position: relative;
	top: 0.1em;
	margin-right: 0.3em;

	background-image: url(/assets_common/icon_search.svg);
	background-size: 460%;
	background-repeat: no-repeat;
	background-position: -50px 1px;
}


/* ========== home Company Info ========== */

#wrapper_company_info {
	overflow: hidden;
	width: 100%;
	position: relative;

	background-image: url(/assets_home/bg_sand_img.jpg);
	background-position: 50% -100px;
	background-repeat: no-repeat;
	z-index: 0;
	overflow: hidden;
}


#wrapper_company_info::after {
	content: " ";
	display: block;
	position: absolute;
	left: 0;
	top: 0;
	background-color: rgba(255, 255, 255, 0.5);
	width: 100%;
	height: 1000px;
	z-index: 0;
}


#sec_home_company {
	padding: 80px 0 0 0;
	position: relative;
	z-index: 20;
}

#home_com_frame {
	background-color: #e8f8ff;
	box-sizing: content-box;
	box-shadow: 1px 2px 13px rgba(0, 0, 0, 0.08);
	padding: 14px;
	position: relative;
	z-index: 0;
	background-image: url(/assets_home/bg_stlipe_white.svg);
	background-position: -574px -30px;
}

#home_com_frame>.box_inner {
	background-color: #fff;
	position: relative;
	z-index: 0;
	padding: 40px 54px 58px 335px;
}

#home_com_frame h2 {
	width: 364px;
	height: 64px;
	margin-bottom: 40px;
	position: relative;
}

#home_com_frame h2 span {
	width: 364px;
	height: 64px;
	overflow: hidden;
	display: block;
}

#home_com_frame h2 span img {
	width: 100%;
}

#home_com_frame h2 small {
	display: block;
	position: absolute;
	width: 364px;
	bottom: -20px;
	left: 0;
	text-align: center;
	font-size: 1.5rem;
	font-family: "Roboto Slab";
	color: #144494;
}

#home_com_frame h3 {
	font-size: 3rem;
	line-height: 1.5;
	color: #154595;
	font-weight: 300;
	margin-bottom: 0.5em;
}

#home_com_frame h3+p {
	font-size: 1.5rem;
	line-height: 2;
	margin-bottom: 2em;
}

#home_com_frame p.btn_a_more {
	text-align: center;
}




#home_com_frame [class^="com_img_"] {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 20;
	width: 400px;
	height: auto;
}

#home_com_frame [class^="com_img_"] img {
	width: 100%;
	height: auto;
	position: relative;
	z-index: 0;
}


#home_com_frame div.com_img_01 {
	z-index: 50;
	top: 15px;
	width: 360px;
	left: -5%;
	transform: rotate(10deg);
}

#home_com_frame div.com_img_01::after {
	content: " ";
	position: absolute;
	width: 360px;
	height: 240px;
	top: 7px;
	left: 0;
	z-index: -1;
	display: block;
	background-color: rgba(0, 0, 0, 0.15);
	transform: rotate(-2deg);
	-ms-filter: blur(3px);
	filter: blur(3px);
}

#home_com_frame div.com_img_03 {
	z-index: 70;
	top: 235px;
	width: 180px;
	left: 12%;
	transform: rotate(10deg);
}




#home_com_frame div.com_img_04 {
	width: 280px;
	height: calc(280px * 0.66);
	left: 50%;
	top: -15px;
	margin-left: 290px;
	transform: rotate(-13deg);
}

#home_com_frame div.com_img_04::after {
	content: " ";
	position: absolute;
	width: 280px;
	height: calc(280px * 0.66);
	top: 8px;
	left: 3px;
	z-index: -1;
	display: block;
	background-color: rgba(0, 0, 0, 0.1);
	transform: rotate(4deg);
	-ms-filter: blur(2px);
	filter: blur(2px);
}


#home_com_frame div.com_img_02 {
	z-index: 10;
	top: 260px;
	width: 300px;
	left: 0%;
	transform: rotate(-10deg);
}

#home_com_frame div.com_img_02::after {
	content: " ";
	position: absolute;
	width: 300px;
	height: calc(300px * 0.66);
	top: 6px;
	left: 0px;
	z-index: -1;
	display: block;
	background-color: rgba(0, 0, 0, 0.15);
	transform: rotate(-2deg);
	-ms-filter: blur(1px);
	filter: blur(1px);
}


/* info */
#sec_home_news {
	padding: 80px 0 80px 0;
	position: relative;
	z-index: 20;
}

#sec_home_news>.box_inner {}

#home_news_frame {
	position: relative;
	background-color: #ffff;
}

#home_news_frame>div.box_inner {
	padding: 0 8% 6em 8%;
}

#home_news_frame::before,
#home_news_frame::after {
	content: " ";
	position: absolute;
	height: 1px;
	left: 0;
	display: block;
	width: 100%;
	background-size: 12px 1px;
	background-repeat: repeat-x;
	background-image: linear-gradient(to right, #4ab6ea, #4ab6ea 8px, transparent 4px, transparent 12px);
}

#home_news_frame>div.box_inner::before,
#home_news_frame>div.box_inner::after {
	content: " ";
	position: absolute;
	display: block;
	width: 1px;
	height: 100%;
	top: 0;
	left: 0;
	background-size: 1px 12px;
	background-repeat: repeat-y;
	background-image: linear-gradient(to bottom, #4ab6ea, #4ab6ea 8px, transparent 4px, transparent 12px);

}

#home_news_frame>div.box_inner::after {
	right: 0;
	left: auto;
}


section#sec_home_news h2 {
	top: -76px;
	padding-bottom: 0;
}

section#sec_home_news h2 span {
	background-color: #fff;
	width: 200px;
	margin-left: -100px;
}

section#sec_home_news h2 span small {
	display: block;
	font-size: 1.3rem;
	text-align: center;
	font-family: "Roboto Slab";
	top: 18px;
}


#home_news_frame ul {
	display: flex;
	justify-content: center;
	padding-top: 5.5em;
}

#home_news_frame ul li {
	margin: 0 8px 0 8px;
}

section#sec_home_news dl {
	display: flex;
	flex-wrap: wrap;
	line-height: 1.6;
	width: 100%;
	align-items: flex-start;
	justify-content: space-between;
	margin-top: -8em;
	position: relative;
}



section#sec_home_news dl dt,
section#sec_home_news dl dd {
	margin-top: 4em;
	position: relative;
}

section#sec_home_news dl dt {
	font-size: 1.2rem;
	font-family: "Roboto Slab";
	color: #555;
	top: -0.5em;
}



section#sec_home_news dl dd {
	width: 92%;
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
}

section#sec_home_news dl dd span {
	width: 17%;
	color: #fff;
	display: block;
	background-color: #555;
	margin-right: 1.5em;
	position: relative;
	top: 0.3em;
	text-align: center;
	font-weight: 500;
	font-size: 1.1rem;
	padding: 0.4em 0 0.4em 0;
	border-radius: 0.3em;
}

section#sec_home_news dl dd a {
	font-size: 1.4rem;
	width: 86%;
	display: block;
}

section#sec_home_news dl dd a:hover {
	background-color: #f6f6f6;
}


/* home staff */

section#sec_home_staff {
	position: relative;
	z-index: 20;
	padding: 80px 0 0 0;
}

section#sec_home_staff h2 {
	width: 24%;

}

section#sec_home_staff div.photo_staff {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 0;
}



section#sec_home_staff div.box_inner_flame {
	background-color: #f8492c;
	width: 100%;
	background-image: url(/assets_home/bg_home_staff_base.jpg);
	background-position: 0 100%;
	background-repeat: no-repeat;
	background-size: 100% auto;
	box-sizing: border-box;

	padding: 35px 0 18px 35px;
	position: relative;
	z-index: 0;
	overflow: hidden;
}

section#sec_home_staff div.box_inner_flame::after {
	content: " ";
	width: 240px;
	height: 180px;
	display: block;
	position: absolute;
	bottom: -8px;
	left: 50%;
	z-index: -1;
	margin-left: -280px;

	background-image: url(/assets_common/icon_ed_house_3c.svg);
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: auto 100%;
	opacity: 0.1;
}


section#sec_home_staff p,
section#sec_home_staff p.btn_t_more a {
	color: #fff;
}

section#sec_home_staff h2+p {
	font-size: 1.5rem;
	line-height: 1.6;
	font-weight: 500;
	margin-top: 1.7em;
	width: 50%;
	position: relative;
	z-index: 0;
}



section#sec_home_staff p.btn_t_more a span::before {
	background-position: -50px -30px;
}

section#sec_home_staff p.btn_t_more {
	text-align: right;
	margin-right: 32px;
	font-size: 1.4rem;
}


section#sec_home_staff ul li {
	position: absolute;
}

section#sec_home_staff ul li img {
	width: 100%;
}


section#sec_home_staff ul li.kusano {
	width: 185px;
	top: -2%;
	right: -1.5%;
	z-index: 0;
}

/* section#sec_home_staff ul li.kano {
	width: 260px;
	right: 9%;
	z-index: 5;
	bottom: 5%;
} */

section#sec_home_staff ul li.watanabe {
	width: 193px;
	top: -13%;
	right: 25%;
	z-index: 10;
}

section#sec_home_staff ul li.aono {
	width: 188px;
	bottom: -3%;
	right: 36%;
	z-index: 30;
}

section#sec_home_staff ul li.miyoshi {
	width: 270px;
	right: 46%;
	z-index: 20;
	top: 5%;
}

section#sec_home_staff ul li.konomi_daihyo {
	width: 183px;
	top: -14%;
	right: 55%;
	z-index: 40;
}

section#sec_home_staff ul li.fig_staff_other {
	/* width: 316px; */
	width: 284px;
	height: auto;
	right: 0;
	z-index: 5;
	bottom: 20%;
	transform: rotate(-11deg);
}


/* ========== home Umi-machi ========== */

#sec_home_umi-machi {
	background-color: #f4f3e6;
	min-width: 1024px;
	position: relative;
	z-index: 2;
}

section#sec_home_umi-machi h2 span small {
	top: -17px;
}


section#sec_home_umi-machi div.beach_items {
	height: 0;
	top: 0;
	z-index: 10;
	overflow: visible !important;
	width: 100%;
}

section#sec_home_umi-machi div.beach_items span {
	display: block;
	width: 200px;
	height: auto;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: 0;
	overflow: visible;
}

section#sec_home_umi-machi div.beach_items span.a {
	top: 170px;
	margin-left: -600px;
}


section#sec_home_umi-machi div.beach_items span.b {
	top: 390px;
	margin-left: 360px;
}

section#sec_home_umi-machi div.beach_items span.c {
	top: auto;
	bottom: -3px;
	margin-left: -380px;
}

section#sec_home_umi-machi div.beach_items span.d {
	top: auto;
	bottom: -10px;
	margin-left: 280px;
}


main div#wrapper_company_info>section#sec_home_umi-machi>.box_inner {
	padding-bottom: 60px;
	padding-top: 32px;
}

#sec_home_umi-machi div.box_machi {
	margin: 0 auto;
	position: relative;
	min-height: 400px;
	text-align: left;
	max-width: 1024px;
	z-index: 50;
}


#sec_home_umi-machi div.box_machi ul {
	display: flex;
	align-items: stretch;
	justify-content: center;
}



#sec_home_umi-machi div.box_machi.tsujido {
	padding-left: 500px;
}

#sec_home_umi-machi div.box_machi.chigasaki {
	padding-right: 500px;
}

#sec_home_umi-machi div.header_machi+p {
	font-size: 2rem;
	font-weight: 400;
	line-height: 1.5;
	margin-bottom: 1.5em;
	color: #42a6d6;
}


#sec_home_umi-machi div.header_machi {
	position: relative;
	z-index: 20;
	padding-top: 16px;
}

#sec_home_umi-machi div.header_machi h3 {
	height: 132px;
	margin-bottom: 8px;
	display: inline-block;
	position: relative;
}

#sec_home_umi-machi .tsujido div.header_machi h3 {
	left: 50%;
	transform: rotate(-5deg);
}


#sec_home_umi-machi div.header_machi h3 img {
	height: 100%;
	pointer-events: relative;
}

#sec_home_umi-machi .tsujido div.header_machi {
	text-align: left;
}

#sec_home_umi-machi .chigasaki div.header_machi {
	text-align: right;
}

#sec_home_umi-machi .tsujido div.header_machi h3 {
	left: -82px;
	transform: rotate(-5deg);
}

#sec_home_umi-machi .chigasaki div.header_machi h3 {
	right: -82px;
	transform: rotate(5deg);
}


#sec_home_umi-machi div.box_photo {
	width: 464px;
	position: absolute;
	top: 0;
	z-index: 0;
	margin-top: 20px;
}

#sec_home_umi-machi div.box_photo img {
	width: 100%;
	vertical-align: bottom;
}

#sec_home_umi-machi div.box_photo p {
	position: relative;
	z-index: 0;
}

#sec_home_umi-machi div.box_photo p::after {
	content: " ";
	display: block;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, 0.07);
	position: absolute;
	top: 12px;
	transform: rotate(-3deg);
	z-index: -1;
	left: -4px;
}

#sec_home_umi-machi div.box_machi.tsujido div.box_photo {
	left: 0;
}

#sec_home_umi-machi div.box_machi.chigasaki div.box_photo {
	right: 0;
}

#sec_home_umi-machi div.box_photo p.small {
	width: 180px;
	position: absolute;
	z-index: 20;
}

#sec_home_umi-machi div.box_machi.tsujido div.box_photo p.small {
	left: 8%;
	transform: rotate(-9deg);
	bottom: -90px;
}

#sec_home_umi-machi div.box_machi.chigasaki div.box_photo p.small {
	left: -5%;
	transform: rotate(9deg);
	bottom: -70px;
}

#sec_home_umi-machi div.box_machi ul .btn_a_machi_guide a small {
	font-size: 0.8em;
}

/* satohi */

#icons_share+p.site_id {
	display: none;
}

/* ========== home gmap ========== */

div#box_gmap {
	width: 100%;
	overflow: hidden;
}

#map {
	height: 458px;
}

.gmap-info-window {
	position: relative;

}


.gmap-info-window-inner {}

.gmap-info-window:after {
	content: "";
	display: block;

	width: 10em;
	height: 3em;
	background-color: rgba(132, 132, 132, 0.32);
	position: absolute;
	left: -0.3em;
	bottom: -0.4em;
	z-index: -9;
}

.gmap-info-window-title {
	color: #fff;
	font-size: 1.6rem;
	text-align: right;
	background-color: #35579d;
	padding: 0.6em 0.6em 0.4em 2.2em;
	width: auto;
	position: relative;
}

.gmap-info-window-title:before {
	bottom: 100%;
	left: 10%;
	border: solid transparent;
	position: absolute;
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 0.8em 1.6em 0px;
	border-color: transparent transparent #035679 transparent;
}

.gmap-info-window-title:after {
	content: '';
	display: block;
	/*	background-image: url(/assets_common/logo_estatedesign_4c.svg);
	height: 1.4em;
	width: 1.4em;
	background-position: 0 -4.0em;
	background-repeat: no-repeat;
	background-size:auto 5em;
	-webkit-background-size: auto 5em;*/

	background-image: url(/assets_common/logo_estatedesign_white.gif);
	height: 1.2em;
	width: 1.4em;
	background-position: 0 0;
	background-repeat: no-repeat;
	background-size: auto 100%;
	-webkit-background-size: auto 90%;

	position: absolute;
	left: 0.6em;
	top: 0.6em;
}

.infobox-marker {
	visibility: hidden;
}

.gmap-info-window-inner img {
	width: 100%;
	height: auto;
	position: relative;
	top: -60px;
}



/* ========== home instagram ========== */

#sec_home_insta {
	background-image: url(/assets_home/bg_home_instagram.jpg);
	background-size: 100% auto;
	background-position: 50% 100%;
	background-repeat: no-repeat;
	position: relative;
	z-index: 0;
}

#sec_home_insta::before {
	content: " ";
	display: block;
	top: -2px;
	width: 480px;
	height: 31px;
	position: absolute;
	left: 50%;
	margin-left: -650px;
	background-image: url(/assets_common/art_wave_4p_gmap_blue.svg);
	background-position: 0 -200px;
	background-repeat: no-repeat;
	background-size: 100% auto;
	z-index: 1;
}


main>div>section#sec_home_insta div.box_inner {
	padding-top: 64px;
	padding-bottom: 84px;
}

#sec_home_insta h2 {
	text-align: center;
	font-family: "Robot Slab";
	font-weight: 500;
	font-size: 2.4rem;
	color: #4ab6ea;
	margin-bottom: 0.8em;
}

#sec_home_insta h2+p {
	font-size: 1.3rem;
	text-align: center;
}

#sec_home_insta h2 img {
	display: inline-block;
	position: relative;
	vertical-align: middle;
	top: -3px;
}

#sec_home_insta h2 img.logo {
	height: 42px;
	width: auto;
	margin-right: 20px;
}

#sec_home_insta h2 img.icon_account {
	height: 70px;
	width: auto;
	margin-left: 20px;
}


#box_home_instagram_latest {
	padding: 36px 0 0 0;
	/*width: 960px;*/
	width: 984px;
	margin: 0 auto;
}

#box_home_instagram_latest ul {
	display: flex;
	/*justify-content: space-between;*/
	justify-content: flex-start;
	flex-wrap: wrap;
	margin-bottom: 28px;
}

#box_home_instagram_latest ul li {
	background-color: #fff;
	width: 220px;
	height: 220px;
	margin-bottom: 26px;
	text-align: center;
	transition: 0.3s;
	color: #aaa;
	margin: 0 13px 26px;
}

#box_home_instagram_latest ul li:hover {
	box-shadow: 0px 10px 25px rgba(0, 0, 0, 0.1);
	;
}

#box_home_instagram_latest ul li a {
	display: block;
	width: 100%;
	height: 100%;
	overflow: hidden;
	position: relative;
	background-repeat: no-repeat;
	background-size: cover;
}

#box_home_instagram_latest ul li a img {
	position: absolute;
	top: 0;
	display: block;
	left: 0%;
	top: 0%;
	max-width: inherit;
	max-width: initial;
	/*width: 140%;*/
	width: auto;
	height: 100%;

	/*display: none;*/
}

.btn_a_more.instagram {
	text-align: center;
}

.btn_a_more.instagram a {
	background-color: #050505;
	width: 20%;
}
.btn_a_more .info_btn {
	margin-bottom: 20px;
}


/* 来店予約ボタン */
#btn_open_raiten_form {
	font-size: 1.6rem;
	font-weight: 400;
	position: fixed;
	z-index: 1000;
	width: 120px;
	background-color: #154595;
	right: -4px;
	bottom: 00px;
	border: 3px solid #fff;
	text-align: center;
	border-top-left-radius: 12px;
	border-bottom-left-radius: 12px;
	box-shadow: 0px 3px 18px rgba(0, 0, 0, 0.3);
}

#btn_open_raiten_form.on {
	transition: 0.5s;
	bottom: 140px;
}

#btn_open_raiten_form a {
	display: block;
	overflow: hidden;
	color: #154595;
	position: relative;
}


#btn_open_raiten_form a span {
	display: block;
	background-color: #fff;
	height: 32px;
	width: 100%;
	margin: 50px 0 0 0;
	text-align: center;
	box-sizing: border-box;
	padding-top: 5px;
	padding-left: 2px;
}



#btn_open_raiten_form a::before {
	content: " ";
	display: block;
	position: absolute;
	width: 133px;
	height: 42px;
	left: -24px;
	top: 9px;
	z-index: 0;
	transition: 0.4s;

	background-image: url(/assets_common/icon_reserve_wh.svg);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: cover;

}

#btn_open_raiten_form a:hover::before {
	transform: translateX(9px);
}






/* ====================================== */
/* ========== responsive =========== */
/* ====================================== */

/* ===== 1600px（pc）以上 ===== */
@media (min-width: 1600px) {
	/*ワイドモニタ用*/
	/* mq start */

	body#home main {
		margin-top: 640px;
	}


	div#box_kv_home {
		height: 640px;
	}

	div#box_kv_bg_imgs {
		margin-left: -800px;
	}

	div#box_kv_bg_imgs div.happy_life {
		top: 290px;
	}


	div#box_kv_home h1 {
		top: 360px;

	}

	/* mq end */

}





/* ===== 1280px（pc）以上 ===== */
@media (min-width: 1279px) {
	/* mq start */

	section[class^="rcmd_"] ul .photo img {
		/*height: 172px;*/
	}

	div#box_kv_home p#catch_kv {
		font-size: 4rem;
	}

	div#box_catch_shops ul.shops li.tsujido {
		left: -120px;
	}

	div#box_catch_shops ul.shops li.chigasaki {
		right: -230px;
	}


	/* mq end */

}

/* ===== 1024px（pc）以内 ===== */
@media (max-width: 1024px) {

	/* mq start */

	body#home main::before {
		margin-left: -800px;
	}

	html.dont_scroll main {
		padding-right: 0;
	}

	/* mq end */

}

/* ===== 768px（sp）以内 ===== */
@media (max-width: 768px) {

	/* mq start */

	body {
		background-color: #555;
	}

	/* ========== kv ========== */


	div#box_kv_home {
		width: 100vw;
		min-width: 100vw !important;
		background-color: #aaa;
		overflow: hidden;
		height: 130vw;
		max-height: none;
		z-index: 0;
	}

	div#box_kv_bg_imgs {
		width: 100vw;
		height: auto;
		max-width: none;
		max-height: none;
		left: 0;
		margin-left: 0;
		position: relative;
		vertical-align: top;
	}


	div#box_kv_bg_imgs>div {
		position: relative;
		display: inline-block;
	}

	div#box_kv_bg_imgs>div img {
		vertical-align: top;
	}

	div#box_kv_bg_imgs div.enoshima {
		width: 100vw;
		max-width: none;
		height: auto;
		left: auto;
		top: auto;
		height: auto;
		height: 73vw;
		max-height: 600px;
	}

	div#box_kv_bg_imgs div.enoshima img {
		top: -7%;
		max-width: none !important;
		width: 130%;
		height: auto;
		position: relative;
		left: -13vw;
	}

	div#box_kv_bg_imgs div.beach,
	div#box_kv_bg_imgs div.happy_life {
		width: 49.5vw;
		margin: 0;
		max-width: none;
		right: auto;
		height: calc(100vw * 0.35);
		top: auto;
		vertical-align: bottom;
		margin-top: -2px;
	}

	div#box_kv_bg_imgs div.beach {
		top: auto;
		max-height: none;
		overflow: hidden;
		position: relative;
		z-index: 0;
	}

	div#box_kv_bg_imgs div.happy_life {
		width: 50.3vw;
		margin-left: -3px;
	}

	div#box_kv_bg_imgs div.beach img {
		top: -22%;
		position: relative;
		z-index: 0;
		max-width: none !important;
		width: 120%;
		left: -8vw;
	}

	div#box_kv_bg_imgs div.beach::before {
		width: 100%;
		height: 100%;
		content: " ";
		display: block;
		position: absolute;
		top: 0;
		left: 0;
		z-index: 2;
		background-color: rgba(0, 0, 0, 0.2);
	}


	div#box_catch_shops {
		position: absolute;
		height: auto;
		left: auto;
		margin-left: auto;
		top: auto;
		bottom: 18vw;
		width: 100vw;
		z-index: 300;
	}



	div#box_kv_home h1,
	div#box_kv_home p#catch_kv {
		position: absolute;
		text-align: center;
	}



	div#box_kv_home p#catch_kv {
		font-size: 7.1vw;
		line-height: 1.2;
		-ms-writing-mode: lr-tb;
		writing-mode: horizontal-tb;
		left: 0;
		width: 100vw;
		top: auto;
		box-sizing: border-box;
		padding-left: 0.7em;
	}

	div#box_kv_home p#catch_kv br {
		display: none;
	}



	div#box_kv_home h1 {
		margin-left: -24vw;
		left: 50%;
		width: 49vw;
		top: 50%;
		margin-top: -49%;
		z-index: 11;
	}


	div#box_catch_shops ul.shops {
		width: 100vw;
		z-index: 5;
	}

	div#box_catch_shops ul.shops li {
		border: 0.6vw solid rgba(255, 255, 255, 0.1);
		font-size: 1.8rem;
	}

	div#box_catch_shops ul.shops li,
	div#box_catch_shops ul.shops li a {
		width: 14vw;
		height: 14vw;
		max-width: 96px;
		max-height: 96px;
	}

	div#box_catch_shops ul.shops li.tsujido {
		left: 7vw;
		top: -33vw;
	}

	div#box_catch_shops ul.shops li.chigasaki {
		right: 8vw;
		top: -25vw;
	}

	/* kv seagulls */

	div#box_kv_bg_imgs div.seagulls.white span {
		width: 31px;
	}


	div#box_kv_bg_imgs div.seagulls.white span.a {
		top: 10vw;
		margin-left: -35%;
	}

	div#box_kv_bg_imgs div.seagulls.white span.b {
		top: 19vw;
		margin-left: 30%;
	}

	div#box_kv_bg_imgs div.seagulls.white span.c {
		top: 46vw;
		margin-left: -13%;
	}


	/* typo map */
	div#box_kv_bg_imgs div#box_kv_typo_map {
		z-index: 150;
		bottom: 7.2vw;
		width: 100vw;
		height: 30vw;
		left: 3vw;
		max-width: none !important;
		/*background-color: rgba(0,0,0,0.2);*/
	}

	div#box_kv_typo_map p#main_name_large>img {
		width: 75%;
		margin-left: -22%;
	}

	div#box_kv_typo_map p.art_map_name {
		top: 49%;
		left: 3%;
		width: 100%;
	}

	div#box_kv_typo_map p.art_map_name .map {
		width: 18vw;
	}

	div#box_kv_typo_map p.art_map_name .text {
		width: 33vw;
		margin-left: 2%;
	}

	/* ========== main ========== */

	main {
		margin-top: 107vw;
		padding-top: 150px;
	}


	html.dont_scroll main {
		padding-right: 0;
	}



	p#home_main_catch {
		font-size: 4.75vw;
		padding: 0;
		width: 94vw;
		margin: 0 auto;
		max-width: initial;
		max-width: 94vw;
	}

	/* ========== section common ========== */
	main>section {
		min-height: 200px;
		height: auto;
	}

	main>section>.box_inner,
	main div#wrapper_company_info>section>.box_inner {
		width: 100%;
		max-width: initila;
		box-sizing: border-box;
		min-width: initial;
		min-width: auto;
		padding: 0 5vw 0 5vw;
		position: relative;
		z-index: 0;
	}


	/* ========== home reccomend ========== */

	section.rcmd_tsujido::before,
	section.rcmd_chigasaki::before {
		content: none;
	}


	section#sec_home_reccomend {
		padding: 8vw 0 10vw 0;
		width: 100%;
		min-width: initial;
		min-width: none;
		min-height: initial;
	}

	section#sec_home_reccomend h2 {
		margin: 0 auto;
		max-width: initial;
		max-width: auto;
		border-radius: 1.5em;
	}

	section#sec_home_reccomend>div.box_inner {
		display: block;
		width: 100%;
		margin-top: 8em;
		position: relative;
		z-index: 0;
	}

	section[class^="rcmd_"] {
		padding-bottom: 8vw;
		width: 100%;
		position: relative;
		z-index: 20;
	}


	section[class^="rcmd_"].non_select {
		position: absolute;
		top: 0;
		left: 0;
		z-index: 10;
	}

	section[class^="rcmd_"].non_select div.iframe,
	section[class^="rcmd_"].non_select ul {
		height: 0;
		overflow: hidden;
		padding-bottom: 0;
	}




	section.rcmd_tsujido {
		padding-right: 0;
		border-right: none;
	}




	section.rcmd_chigasaki {
		padding-left: 0;
	}






	/*  */


	section[class^="rcmd_"] h3 {
		width: 50%;
		box-sizing: border-box;
		background-color: #fff;
		position: relative;
		text-align: center;
		margin-bottom: 0;
		padding: 0;
		/* padding-bottom: 32px; */
		padding-bottom: 8vw;
		top: -7.5em;


	}

	section[class^="rcmd_"] h3 img {
		height: 11vw;
		max-height: 50px;
		vertical-align: middle;
	}

	section.rcmd_tsujido h3 {
		border-right: 1px solid #e5e5e5;
		position: relative;
	}

	section.rcmd_chigasaki h3 {
		width: 45vw;
		margin-left: 50%;
		border-left: 1px solid #e5e5e5;
	}

	section[class^="rcmd_"].non_select h3 {
		z-index: 20;
		opacity: 0.6;
		width: calc(50% - 5vw);
	}

	section.rcmd_tsujido.non_select h3 {
		margin-left: 5vw;
	}

	section[class^="rcmd_"] h3 span {
		display: block;
		margin: 0;
		position: absolute;
		width: 100%;
		text-align: center;
		top: auto;
		bottom: 12px;
		font-size: 1rem;
		font-weight: 500;
		z-index: 0;
	}



	section.rcmd_tsujido h3::before,
	section.rcmd_chigasaki h3::after {
		display: inline-block;
		position: relative;
		margin-bottom: -1em;
	}

	section.rcmd_tsujido h3::before {
		margin-right: 0.5em;
	}

	section.rcmd_chigasaki h3::after {
		margin-left: 0.1em;
	}

	section.rcmd_chigasaki h3 img {
		margin-left: 11px;
	}

	section.rcmd_tsujido h3 img {
		margin-right: 16px;
	}




	section[class^="rcmd_"] ul>li {
		width: 27.5vw;
	}

	section[class^="rcmd_"] div.iframe,
	section[class^="rcmd_"] ul {
		background-color: #fff;
		padding-top: 19px;
		margin-top: -7.5em;
	}


	section.rcmd_tsujido div.iframe,
	section.rcmd_tsujido ul {
		border-top: 8px solid #51ba8f;
	}

	section.rcmd_chigasaki div.iframe,
	section.rcmd_chigasaki ul {
		border-top: 8px solid #f59d2b;
	}

	section[class^="rcmd_"].non_select div.iframe,
	section[class^="rcmd_"].non_select ul {
		border-top: none;
	}

	/* 2024 */

	.non_select {
		/* display: none; */
	}

	section[class^="rcmd_"] div.iframe {
		width: 100%;
		height: 320vw;
	}


	/* ========== home keywords ========== */
	section#sec_home_keywords h2 img,
	section#sec_home_news h2 img {
		height: 40px;
	}

	section#sec_home_keywords h2,
	section#sec_home_news h2,
	section#sec_home_umi-machi h2 {
		font-size: 5.5vw;
		font-weight: 500;
	}

	section#sec_home_keywords h2 {
		padding-top: 136px;
	}


	/*--*/
	ul#home_keywords {
		min-width: initial;
		min-width: auto;
	}

	ul#home_keywords li {
		width: 42.5vw;
	}

	ul#home_keywords li.x2 {
		width: 100%;
		height: 220px;
	}

	ul#home_keywords li h3 {
		font-size: 4.75vw;
	}

	ul#home_keywords li>span {
		padding: 28px 14px 16px 14px;
	}

	ul#home_keywords li h3+p {
		min-height: 4em;
	}




	ul#home_keywords li.x2.umi-chika h3 {
		width: 35vw;
		left: 5%;
		top: -15px;
	}

	ul#home_keywords li.x2.for_surfers h3 {
		width: 37vw;
		right: 5%;
		top: 5%;
	}

	ul#home_keywords li.x2.for_surfers h3+p {
		bottom: 1.5%;
	}

	ul#home_keywords li:nth-of-type(6) h3+p {
		letter-spacing: -0.1em;
	}


	ul#home_keywords li.x2.for_surfers div.bg_photo>span {
		transform: rotate(-2deg);
	}


	ul#home_keywords li.x2 h3+p {
		font-size: 3.95vw;
		bottom: 6%;
		font-weight: 400;
	}

	ul#home_keywords li.x2.umi-chika div.bg_photo>span>img,
	ul#home_keywords li.x2.for_surfers div.bg_photo>span>img {
		max-width: initial;
		width: 130%;
		top: 50%;
		margin-left: -10%;
		margin-top: -50%;
	}

	ul#home_keywords li.x2.umi-chika div.bg_photo>span>img {
		margin-left: -15%;
	}


	ul#home_keywords li.x2.for_surfers div.bg_photo>span>img {
		margin-top: -60%;
	}

	ul#home_keywords li.x2.for_surfers div.bg_photo {
		top: 2%;
	}

	ul#home_keywords li.x2.for_surfers p.btn_t_more {
		bottom: 16%;

	}

	ul#home_keywords li p.btn_t_more {
		font-weight: 500;
	}

	/* 2020-02-14 事業用 */

	#sec_home_keywords p.btn_kw_small {
		text-align: center;
		font-size: 1.6rem;
	}

	#sec_home_keywords p.btn_kw_small a {
		width: 100%;
		text-align: center;
		box-sizing: border-box;
		letter-spacing: -0.05em;
		padding: 1em 0.3em 1em 0.3em;
	}


	/* ========== home Company Info ========== */

	#wrapper_company_info {
		background-position: 50% 280px;
	}

	#sec_home_company {
		padding: 64px 0 0 0;
	}

	#home_com_frame>.box_inner {
		z-index: 0;
		padding: 24px 16px 32px 16px;
	}

	#home_com_frame h2 {
		width: auto;
		text-align: center;
		height: 64px;
		margin-bottom: 24px;
		position: relative;
	}

	#home_com_frame h2 span {
		width: 240px;
		height: 48px;
		display: inline-block;
	}

	#home_com_frame h2 small {
		display: block;
		position: absolute;
		width: 100%;
		bottom: auto;
		font-weight: 400;
		top: 72%;
	}

	#home_com_frame h3 {
		font-size: 2.2rem;
		text-align: center;
		margin-bottom: 0.5em;
		font-weight: 400;
	}

	#home_com_frame h3 br {
		display: none;
	}

	#home_com_frame h3+p {
		font-size: 3.56vw;
	}

	#box_sp_photos {
		display: block;
		height: 54vw;
		position: relative;
	}

	#home_com_frame [class^="com_img_"] {
		z-index: 0;
	}

	#home_com_frame div.com_img_01 {
		z-index: 50;
		top: auto;
		width: 50vw;
		left: -5%;
	}

	#home_com_frame div.com_img_01::after {
		width: 50vw;
		height: calc(50vw * 0.66);
	}


	#home_com_frame div.com_img_02 {
		z-index: 10;
		top: 23vw;
		width: 36vw;
		left: 50%;
		margin-left: -10vw;
	}

	#home_com_frame div.com_img_02::after {
		width: 36vw;
		height: calc(36vw * 0.66);
		top: 6px;
		left: 0px;
		z-index: -1;
	}

	#home_com_frame div.com_img_03 {
		z-index: 70;
		top: auto;
		width: 30vw;
		left: 50%;
		margin-left: -12vw;
	}

	#home_com_frame div.com_img_04 {
		width: 36vw;
		height: calc(36vw * 0.66);
		left: 50%;

		top: 0vw;
		z-index: 20;
		margin-left: 8vw;
	}

	#home_com_frame div.com_img_04::after {
		width: 36vw;
		height: calc(36vw * 0.66);
		top: 8px;
		left: 0;

	}


	/* home staff */

	section#sec_home_staff {
		padding: 54px 0 0 0;
	}


	section#sec_home_staff div.box_inner_flame {
		padding: 35px 35px 14px 35px;
		height: auto;
		background-position: 100% 100%;
		background-repeat: no-repeat;
		background-size: 200% auto;
	}




	section#sec_home_staff h2 {
		width: 180px;

	}


	section#sec_home_staff h2+p {
		font-size: 1.6rem;
		width: 100%;
	}

	section#sec_home_staff h2+p br {
		display: none;
	}


	/* photos */

	section#sec_home_staff div.photos_staff {
		position: relative;
		padding: 24px 0 0 0;
	}

	section#sec_home_staff div.box_inner_flame::after {
		width: 240px;
		height: 180px;
		position: absolute;
		bottom: auto;
		left: 50%;
		z-index: -1;
		margin-left: -20vw;
		top: 0;
	}


	section#sec_home_staff ul li {
		position: relative;
	}

	section#sec_home_staff ul>a {
		display: block;
	}

	section#sec_home_staff ul li.konomi_daihyo {
		width: 44vw;
		top: auto;
		right: auto;
		left: -9vw;
		z-index: 40;
	}

	section#sec_home_staff ul li.aono {
		width: 40vw;
		bottom: auto;
		right: auto;
		z-index: 30;
		margin-top: -36vw;
		margin-left: 40vw;
		transform: rotate(-17deg);
	}


	section#sec_home_staff ul li.miyoshi {
		width: 55vw;
		right: auto;
		z-index: 20;
		top: auto;
		margin-top: 0vw;
		margin-left: -6vw;
		transform: rotate(17deg);
	}


	section#sec_home_staff ul li.watanabe {
		width: 40vw;
		top: auto;
		right: auto;
		z-index: 10;
		transform: rotate(15deg);
		margin-top: -32vw;
		margin-left: -7vw;
	}

	/* section#sec_home_staff ul li.kano {
		width: 50vw;
		right: auto;
		z-index: 40;
		bottom: auto;
		margin-top: -20vw;
		margin-left: 35vw;
		transform: rotate(24deg);
	} */

	section#sec_home_staff ul li.fig_staff_other {
		width: 50vw;
		right: auto;
		z-index: 40;
		bottom: auto;
		margin-top: -26vw;
		margin-left: 32vw;
		margin-bottom: 6vw;
		transform: rotate(16deg);
	}

	section#sec_home_staff ul li.kusano {
		width: 36vw;
		top: auto;
		right: auto;
		z-index: 20;
		margin-top: -33vw;
		margin-left: 5vw;
		transform: rotate(-17deg);
	}


	section#sec_home_staff p.btn_t_more {
		margin-right: 0;
		font-size: 1.6rem;
	}




	/* news */

	#home_news_frame ul {
		display: block;
		padding-top: 5.5em;
	}

	#home_news_frame ul li {
		margin: 0 0 14px 0;
		width: 100%;
	}

	#home_news_frame ul li:nth-of-type(1) {
		letter-spacing: -0.07em;
	}

	#home_news_frame ul li>a {
		width: 100%;
		box-sizing: border-box;
	}

	#home_news_frame>div.box_inner {
		padding: 0 5% 3em 5%;
	}


	/* ========== home Umi-machi ========== */

	#sec_home_umi-machi {

		min-width: initial;
		min-width: auto;
	}

	section#sec_home_umi-machi h2 img {
		height: 36px;
	}


	#sec_home_umi-machi div.box_machi {
		margin: 0;
		min-height: 300px;
		text-align: left;
		max-width: 100%;
		padding-left: 0;
	}

	section#sec_home_umi-machi h2 {
		padding-top: 143px;
		padding-bottom: 0px;
	}

	#sec_home_umi-machi div.box_machi.tsujido {
		padding-left: 0px;
	}

	#sec_home_umi-machi div.box_machi.chigasaki {
		padding-right: 0px;
		margin-top: 32px;
	}


	#sec_home_umi-machi div.box_photo {
		width: 100%;
		position: relative;
		top: 0;
		z-index: 0;
		margin-top: 42px;
	}


	#sec_home_umi-machi div.header_machi h3 {
		height: 132px;
		text-align: center;
		width: 100%;
		margin-bottom: 12px;
	}

	#sec_home_umi-machi div.header_machi h3 img {
		margin-right: -32px;
	}

	#sec_home_umi-machi .tsujido div.header_machi h3 {
		left: 0;
	}

	#sec_home_umi-machi div.header_machi+p {
		font-size: 4.5vw;
	}

	#sec_home_umi-machi div.box_photo p.small {
		width: 35vw;
	}

	#sec_home_umi-machi div.box_machi.tsujido div.box_photo p.small {
		left: auto;
		bottom: auto;
		right: 4vw;
		top: -3vw;
	}



	#sec_home_umi-machi .chigasaki div.header_machi h3 {
		left: 0;
	}

	#sec_home_umi-machi .chigasaki div.header_machi h3 img {
		margin-left: -72px;
	}

	#sec_home_umi-machi div.box_machi.chigasaki div.box_photo p.small {
		left: auto;
		bottom: auto;
		right: 4vw;
		top: -3vw;
	}


	#sec_home_umi-machi div.box_machi>ul {
		display: block;
		width: 80%;
		margin: 0 auto;
	}

	#sec_home_umi-machi div.box_machi>ul li {
		margin: 0 0 16px 0;
	}



	/* ========== home instagram ========== */

	#sec_home_insta {}

	#sec_home_insta h2 {
		margin-bottom: 1em;
	}

	#sec_home_insta h2 img.logo {
		margin-right: 0;
		display: block;
		margin: 0 auto 0 auto;
	}

	#sec_home_insta h2 img.icon_account {
		margin-left: 20px;
		margin-right: -20px;
	}


	#sec_home_insta h2+p {
		font-size: 3.5vw;
		text-align: center;
	}

	#box_home_instagram_latest {
		width: 100%;
		margin: 0;
	}

	#box_home_instagram_latest ul li {
		width: 27.2vw;
		height: 27.2vw;
		margin: 0 2vw 4.5vw;
	}

	#box_home_instagram_latest ul li:first-child {
		margin-left: 0 !important;
	}

	#box_home_instagram_latest ul li:nth-child(3n) {
		margin-right: 0 !important;
	}

	#box_home_instagram_latest ul li:nth-child(3n+1) {
		margin-left: 0 !important;
	}


	.btn_a_more.instagram a {
		width: 45%;
	}


	/* news */

	section#sec_home_news dl {
		display: block;
		margin-top: -20px;
	}

	section#sec_home_news dl dt {
		text-align: center;
		font-size: 1.8rem;
		margin-top: 3em;
		font-weight: 400;
	}

	section#sec_home_news dl dt:first-child {
		margin-top: 0;
	}


	section#sec_home_news dl dd {
		width: 100%;
		margin-top: 1em;
		font-size: 1.6rem;
		line-height: 2;
	}

	section#sec_home_news dl dd span {
		width: 32%;
	}

	/* 来店予約の */

	#btn_open_raiten_form {
		width: 90px;
		right: auto;
		left: -3px;
		bottom: 15px;
		font-size: 1.5rem;
		font-weight: 500;
		border: 2px solid #fff;
		text-align: center;
		border-top-left-radius: 0;
		border-bottom-left-radius: 0;
		border-top-right-radius: 8px;
		border-bottom-right-radius: 8px;
		box-shadow: 0px 3px 18px rgba(0, 0, 0, 0.3);
	}

	#btn_open_raiten_form.on {
		bottom: 15px;
	}

	#btn_open_raiten_form a span {
		margin-top: 37px;
		height: 24px;
		padding-top: 3px;
	}

	#btn_open_raiten_form a::before {
		content: " ";
		display: block;
		position: absolute;
		width: 109px;
		height: 35px;
		top: 5px;
	}




	/* ========== wave ========== */

	body#home main::before {
		left: -10vw;
		margin-left: 0;
		width: 80vw;
		height: 6vw;
		top: -4.9vw;
	}


	/* mq end */

}
