@charset "utf-8";



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



html {
	font-size: 62.5%;
	color: #000000;
/*
	font-family: "Noto Serif JP", serif;
*/
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	font-feature-settings: "palt";
	background: #ffffff;
}
body {
	position: relative;
	font-size: 1.6rem;
	line-height: 1.5;
}

.wrap {
	width: 100%;
	max-width: 1120px;
	margin: 0 auto;
}
.wrap.wrap_narrow {
	max-width: 900px;
}
.wrap.wrap_halfhalf {
	display: flex;
	max-width: 100%;
	padding: 0;
}
.wrap .columnLeft {
	width: 50%;
}
.wrap .columnRight {
	width: 50%;
}
.wrap_slider {
	width: 100%;
	max-width: 1120px;
	margin: 0 auto;
}
.block {
	padding-top: 60px;
	padding-bottom: 60px;
}
.block.block_last {
	padding-bottom: 100px;
}
#columnwrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#maincolumn {
	width: 65.4%;
}
#sidecolumn {
	width: 31%;
}
#titlearea {
	display: flex;
	align-items: center;
	position: relative;
	height: 200px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
body#about #titlearea {
	background-image: url(/wp-content/themes/ENGAWA2019/image/common/bg_movie.jpg.avif);
}
body#service #titlearea {
	background-image: url(/wp-content/themes/ENGAWA2019/image/service/title.jpg.avif);
}
body#news #titlearea {
	background-image: url(/wp-content/themes/ENGAWA2019/image/common/bg_metropolitan.jpg.avif);
}
body#works #titlearea {
	background-image: url(/wp-content/themes/ENGAWA2019/image/works/title.jpg.avif);
}
body#team #titlearea {
	background-image: url(/wp-content/themes/ENGAWA2019/image/team/title.jpg.avif);
}
body#contact #titlearea,
body#privacy #titlearea {
	background-image: url(/wp-content/themes/ENGAWA2019/image/contact/title.jpg.avif);
}
#titlearea:after {
	display: none;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 150px 300px 0 0;
	border-color: #ffffff transparent transparent transparent;
}
#titlearea .wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
}
#titlearea h1,
#titlearea .titlearea_title {
	position: relative;
	margin-top: -0.4em;
	font-size: 3.157em;
	line-height: 1;
	color: #c2ad5d;
/*
	font-family: "Playfair Display", serif;
*/
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	z-index: 2;
}
#titlearea h1:after,
#titlearea .titlearea_title:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -0.4em;
	height: 4px;
	width: 120px;
	background: #c2ad5d;
}
#titlearea h2 {
	font-size: 1.333em;
	color: #ffffff;
	text-align: right;
}
#titlearea h2 span {
	display: inline-block;
	padding: 0.2em;
	line-height: 1;
	color: #000000;
	background: #ffffff;
}
#breadcrumbs {
	padding-top: 10px;
	padding-bottom: 10px;
	background: #f5f7f9;
	font-size: 0.75em;
	line-height: 1;
}
#breadcrumbs ul {
	display: flex;
	align-items: center;
}
#breadcrumbs ul li {
	position:relative;
	padding-right: 26px;
	white-space: nowrap;
}
#breadcrumbs ul li:last-child {
	padding-right: 0;
	white-space: normal;
}
#breadcrumbs ul li:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	width: 4px;
	height: 4px;
	margin-top: -3px;
	border-right: 2px solid #cdd7de;
	border-top: 2px solid #cdd7de;
	transform: rotate(45deg);
}
#breadcrumbs ul li:last-child:after {
	display: none;
}
#breadcrumbs a {
	text-decoration: none;
}

a {
	color: #04345b;
	text-decoration: underline;
	transition: 0.4s;
}
a:hover {
	color: #c2ad5d;
	text-decoration: none;
}
img {
	width: 100%;
	height: auto;
}
table {
	width: 100%;
}
table th {
	color: #04345b;
	vertical-align: middle;
}
table th,
table td {
	padding: 10px 20px;
	border: 1px solid #e2e2e2;
	background: #ffffff;
}
.pc {
	display: block;
}
.tb {
	display: none;
}
.sp {
	display: none;
}
.pc.tb {
	display: block;
}
.pc.sp {
	display: block;
}
.tb.sp {
	display: none;
}
.pc.tb.sp {
	display: block;
}
span.pc {
	display: inline;
}
span.sp {
	display: none;
}
.xxl {
	font-size: 3.157em;
}
.xl {
	font-size: 2.369em;
}
.ll {
	font-size: 1.777em;
}
.l {
	font-size: 1.333em;
}
.s {
	font-size: 0.75em;
}
.ss {
	font-size: 0.563em;
}
.xs {
	font-size: 0.422em;
}
h3 {
	position: relative;
	margin-bottom: 40px;
	padding-bottom: 0.8em;
	font-size: 1.777em;
	line-height: 1.2;
	color: #c2ad5d;
	font-weight: 700;
	text-align: center;
}
h3.en {
	margin-bottom: 40px;
	padding-bottom: 0.4em;
	font-size: 2.369em;
	line-height: 1.2;
	font-weight: 700;
/*
	font-family: "Playfair Display", serif;
*/
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	letter-spacing: 1px;
}
h3:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 80px;
	height: 3px;
	margin-left: -40px;
	background: #c2ad5d;
}
h4 {
	margin-bottom: 30px;
	font-size: 1.555em;
	line-height: 1.4;
	color: #c2ad5d;
}
h5 {
	margin-bottom: 20px;
	font-size: 1.333em;
	line-height: 1.4;
	color: #c2ad5d;
}
.lineheight_1 {
	line-height: 1;
}
.lineheight_s {
	line-height: 1.333;
}
.lineheight_ss {
	line-height: 0.75;
}
.lineheight_l {
	line-height: 1.777;
}
.lineheight_ll {
	line-height: 2;
}
.white {
	color: #ffffff;
}
.black {
	color: #000000;
}
.navy {
	color: #04345b;
}
.red {
	color: #e2041b;
}
.gold {
	color: #c2ad5d;
}
.orange {
	color: #ff9d02;
}
strong, .strong, b, .bold {
	font-weight: 700;
}
.letterspacing0 {
	letter-spacing: 0em;
}
.letterspacing_l {
	letter-spacing: 0.1em;
	padding-left: 0.1em;
}
.letterspacing_ll {
	letter-spacing: 0.2em;
	padding-left: 0.2em;
}
.bgwhite {
	background: #ffffff;
}
.bgwhite_a80 {
	background: rgba(255,255,255,0.8);
}
.bgwhite_a60 {
	background: rgba(255,255,255,0.6);
}
.bgblack {
	background: #000000;
}
.bgblack_a80 {
	background: rgba(0,0,0,0.8);
}
.bgblack_a60 {
	background: rgba(0,0,0,0.6);
}
.bgnavy {
	background: #04345b;
}
.bgblue {
	background: #5782a6;
}
.bggold {
	background: #f9f7ee;
}
.bggray {
	background: #f5f7f9;
}
.margin0 { margin: 0 !important; }
.mb0 { margin-bottom: 0 !important; }
.mb5 { margin-bottom: 5px !important; }
.mb10 { margin-bottom: 10px !important; }
.mb20 { margin-bottom: 20px !important; }
.mb30 { margin-bottom: 30px !important; }
.mb40 { margin-bottom: 40px !important; }
.mb50 { margin-bottom: 50px !important; }
.mb60 { margin-bottom: 60px !important; }
.mb80 { margin-bottom: 80px !important; }
.mb120 { margin-bottom: 120px !important; }
.w10 { width: 10% !important; }
.w20 { width: 20% !important; }
.w25 { width: 25% !important; }
.w30 { width: 30% !important; }
.w40 { width: 40% !important; }
.w50 { width: 50% !important; }
.w60 { width: 60% !important; }
.w70 { width: 70% !important; }
.w80 { width: 80% !important; }
.w90 { width: 90% !important; }
.w100 { width: 100% !important; }
.w10,.w20,.w25,.w30,.w40,.w50,.w60,.w70,.w80,.w90,.w100 { margin: 0 auto; }
.p10 {padding: 10px;}
.p20 {padding: 20px;}
.p30 {padding: 30px;}
.p40 {padding: 40px;}
.left {
	float: left !important;
}
.left .margin {
	margin: 0 40px 40px 0;
}
.right {
	float: right !important;
}
.right .margin {
	margin: 0 0 40px 40px;
}
.textcenter {
	text-align: center;
}
.textleft {
	text-align: left;
}
.textright {
	text-align: right;
}
.inlineblock {
	display: inline-block;
}
.border {
	border: 1px solid #eeeeee;
}
ul.disc {
	list-style-type: disc;
	padding-left: 1.5em;
}
ul.decimal {
	padding: 0 0 0 2em;
	list-style-type: decimal;
}
ul.lower-alpha {
	padding: 0 0 0 1.5em;
	list-style-type: lower-alpha;
}
.i {
	display: inline-block;
	padding-left: 40px;
	line-height: 32px;
	background-repeat: no-repeat;
	background-position: 0 center;
	background-size: 32px;
}
a.i {
	text-decoration: none !important;
}
.i.i_download {
	background-image: url(../image/common/i_download.png.avif);
}
.circle {
	border-radius: 100%;
	width: 200px;
}
.googlemap {
	position: relative;
	width: 100%;
	padding: 66.6% 0 0 0;
}
.googlemap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0 0 0 0;
}

.button {
	display: inline-block;
	min-width: 160px;
	padding: 0.6em 1em;
	line-height: 1;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	background: #04345b;
	border: 2px solid #04345b;
}
.button.button_l {
	width: 100%;
	padding: 0.8em 1em;
	max-width: 346px;
	font-size: 1.333em;
	border: 3px solid #04345b;
}
.button.button_s {
	width: auto;
	min-width: 0;
	max-width: none;
	padding: 0.6em 1em;
	font-size: 0.75em;
}
.button.button_gold {
	background: #c2ad5d;
	border: 2px solid #c2ad5d;
}
.button.button_l.button_gold {
	border: 3px solid #c2ad5d;
}
.button.button_white {
	color: #c2ad5d;
	background: #ffffff;
	border: 2px solid #ffffff;
}
.button.button_l.button_white {
	border: 3px solid #ffffff;
}
.button.button_transparent {
	color: #04345b;
	background: transparent;
}
.button.button_transparent.button_gold {
	color: #c2ad5d;
	background: transparent;
}
.button.button_transparent.button_white {
	color: #ffffff;
	background: transparent;
}
.button:hover {
	color: #04345b;
	background: #ffffff;
}
.button.button_gold:hover {
	color: #c2ad5d;
	background: #ffffff;
}
.button.button_white:hover {
	color: #ffffff;
	background: #c2ad5d;
}
.button.button_transparent:hover {
	color: #ffffff;
	background: #04345b;
}
.button.button_transparent.button_gold:hover {
	color: #ffffff;
	background: #c2ad5d;
}
.button.button_transparent.button_white:hover {
	color: #c2ad5d;
	background: #ffffff;
}

.button .blank {
	display: inline-block;
	padding-right: 1.6em;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2073.701%2056.693%22%3E%3Cstyle%3E.st0%7Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M5.67%2034.016V5.669h45.354v5.67h5.669V0H0v39.685h11.339v-5.67z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M62.362%2017.008H17.008v39.685H73.7V17.008H62.362zm5.67%2034.016H22.677V22.677h45.355v28.347z%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 0.8em;
}
.button:hover .blank {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2073.701%2056.693%22%3E%3Cstyle%3E.st0%7Bfill%3A%2304345b%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M5.67%2034.016V5.669h45.354v5.67h5.669V0H0v39.685h11.339v-5.67z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M62.362%2017.008H17.008v39.685H73.7V17.008H62.362zm5.67%2034.016H22.677V22.677h45.355v28.347z%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_gold:hover .blank {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2073.701%2056.693%22%3E%3Cstyle%3E.st0%7Bfill%3A%23c2ad5d%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M5.67%2034.016V5.669h45.354v5.67h5.669V0H0v39.685h11.339v-5.67z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M62.362%2017.008H17.008v39.685H73.7V17.008H62.362zm5.67%2034.016H22.677V22.677h45.355v28.347z%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_white:hover .blank {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2073.701%2056.693%22%3E%3Cstyle%3E.st0%7Bfill%3A%23ffffff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M5.67%2034.016V5.669h45.354v5.67h5.669V0H0v39.685h11.339v-5.67z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M62.362%2017.008H17.008v39.685H73.7V17.008H62.362zm5.67%2034.016H22.677V22.677h45.355v28.347z%22%2F%3E%3C%2Fsvg%3E');
}

.button .mail {
	display: inline-block;
	padding-right: 2em;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2025.375%2017%22%3E%3Cstyle%3E.st0%7Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M25.375.606V0H0v.606l12.688%207.406z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M12.697%2011.038l-.01-.016-.009.016L0%203.638V17h25.375V3.638z%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 0.8em;
}
.button:hover .mail {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2025.375%2017%22%3E%3Cstyle%3E.st0%7Bfill%3A%2304345b%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M25.375.606V0H0v.606l12.688%207.406z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M12.697%2011.038l-.01-.016-.009.016L0%203.638V17h25.375V3.638z%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_gold:hover .mail {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2025.375%2017%22%3E%3Cstyle%3E.st0%7Bfill%3A%23c2ad5d%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M25.375.606V0H0v.606l12.688%207.406z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M12.697%2011.038l-.01-.016-.009.016L0%203.638V17h25.375V3.638z%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_white:hover .mail {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2025.375%2017%22%3E%3Cstyle%3E.st0%7Bfill%3A%23ffffff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M25.375.606V0H0v.606l12.688%207.406z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M12.697%2011.038l-.01-.016-.009.016L0%203.638V17h25.375V3.638z%22%2F%3E%3C%2Fsvg%3E');
}

.button .download {
	display: inline-block;
	padding-right: 1.5em;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2017.836%2021%22%3E%3Cstyle%3E.st0%7Bfill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M15%2015.583v2.583H2.836v-2.583H0V21h17.836v-5.417H15z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M6.898%2013.978l2.02%202.012%202.02-2.01v-.001l5.224-5.2-2.02-2.012-3.787%203.77V0H7.481v10.536l-3.787-3.77-2.02%202.011%205.223%205.2.001.001z%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 1em;
}
.button:hover .download {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2017.836%2021%22%3E%3Cstyle%3E.st0%7Bfill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bfill%3A%2304345b%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M15%2015.583v2.583H2.836v-2.583H0V21h17.836v-5.417H15z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M6.898%2013.978l2.02%202.012%202.02-2.01v-.001l5.224-5.2-2.02-2.012-3.787%203.77V0H7.481v10.536l-3.787-3.77-2.02%202.011%205.223%205.2.001.001z%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_gold:hover .download {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2017.836%2021%22%3E%3Cstyle%3E.st0%7Bfill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bfill%3A%23c2ad5d%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M15%2015.583v2.583H2.836v-2.583H0V21h17.836v-5.417H15z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M6.898%2013.978l2.02%202.012%202.02-2.01v-.001l5.224-5.2-2.02-2.012-3.787%203.77V0H7.481v10.536l-3.787-3.77-2.02%202.011%205.223%205.2.001.001z%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_white:hover .download {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2017.836%2021%22%3E%3Cstyle%3E.st0%7Bfill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bfill%3A%23ffffff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M15%2015.583v2.583H2.836v-2.583H0V21h17.836v-5.417H15z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M6.898%2013.978l2.02%202.012%202.02-2.01v-.001l5.224-5.2-2.02-2.012-3.787%203.77V0H7.481v10.536l-3.787-3.77-2.02%202.011%205.223%205.2.001.001z%22%2F%3E%3C%2Fsvg%3E');
}

.button .print {
	display: inline-block;
	padding-right: 1.8em;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016.65%2016.65%22%3E%3Cpath%20d%3D%22M13.965%205.371V2.954a.267.267%200%200%200-.08-.19L11.202.08a.267.267%200%200%200-.19-.079H2.955a.27.27%200%200%200-.27.269V5.37H0v8.594h2.686v2.417a.27.27%200%200%200%20.269.268h10.741c.149%200%20.269-.12.269-.268v-2.417h2.685V5.37h-2.685zM11.279.917l1.769%201.768h-1.769V.918zm2.149%2015.196H3.223V11.28h10.205v4.834zm0-10.742H3.223V.537h7.52v2.417c0%20.148.12.269.268.269h2.417V5.37zm1.342%204.028h-1.074V8.325h1.075V9.4z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: right center;
	background-size: auto 1em;
}
.button:hover .print {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016.65%2016.65%22%3E%3Cpath%20d%3D%22M13.965%205.371V2.954a.267.267%200%200%200-.08-.19L11.202.08a.267.267%200%200%200-.19-.079H2.955a.27.27%200%200%200-.27.269V5.37H0v8.594h2.686v2.417a.27.27%200%200%200%20.269.268h10.741c.149%200%20.269-.12.269-.268v-2.417h2.685V5.37h-2.685zM11.279.917l1.769%201.768h-1.769V.918zm2.149%2015.196H3.223V11.28h10.205v4.834zm0-10.742H3.223V.537h7.52v2.417c0%20.148.12.269.268.269h2.417V5.37zm1.342%204.028h-1.074V8.325h1.075V9.4z%22%20fill%3D%22%2304345b%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_gold:hover .print {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016.65%2016.65%22%3E%3Cpath%20d%3D%22M13.965%205.371V2.954a.267.267%200%200%200-.08-.19L11.202.08a.267.267%200%200%200-.19-.079H2.955a.27.27%200%200%200-.27.269V5.37H0v8.594h2.686v2.417a.27.27%200%200%200%20.269.268h10.741c.149%200%20.269-.12.269-.268v-2.417h2.685V5.37h-2.685zM11.279.917l1.769%201.768h-1.769V.918zm2.149%2015.196H3.223V11.28h10.205v4.834zm0-10.742H3.223V.537h7.52v2.417c0%20.148.12.269.268.269h2.417V5.37zm1.342%204.028h-1.074V8.325h1.075V9.4z%22%20fill%3D%22%23c2ad5d%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_white:hover .print {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016.65%2016.65%22%3E%3Cpath%20d%3D%22M13.965%205.371V2.954a.267.267%200%200%200-.08-.19L11.202.08a.267.267%200%200%200-.19-.079H2.955a.27.27%200%200%200-.27.269V5.37H0v8.594h2.686v2.417a.27.27%200%200%200%20.269.268h10.741c.149%200%20.269-.12.269-.268v-2.417h2.685V5.37h-2.685zM11.279.917l1.769%201.768h-1.769V.918zm2.149%2015.196H3.223V11.28h10.205v4.834zm0-10.742H3.223V.537h7.52v2.417c0%20.148.12.269.268.269h2.417V5.37zm1.342%204.028h-1.074V8.325h1.075V9.4z%22%20fill%3D%22%23ffffff%22%2F%3E%3C%2Fsvg%3E');
}

.button .button_arrow {
	position:relative;
	display: inline;
	padding-left: 20px;
	overflow: visible;
}
.button .button_arrow:before,
.button .button_arrow:after {
	content: "";
	display: block;
	position: absolute;
}
.button .button_arrow:before {
	border-right: 2px solid #ffffff;
	border-top: 2px solid #ffffff;
	transform: rotate(45deg);
	width: 6px;
	height: 6px;
	right: 0;
	top: 50%;
	margin-top: -4px;
	transition: 0.4s;
}
.button .button_arrow:after {
	width: 10px;
	border-bottom: 2px solid #ffffff;
	right:0;
	top: 50%;
	margin-top: -1px;
	transition: 0.4s;
}
.button.button_l span.button_arrow {
	padding-left: 26px;
}
.button.button_l span.button_arrow:before {
	width: 8px;
	height: 8px;
	margin-top: -5px;
}
.button.button_l span.button_arrow:after {
	width: 16px;
}
.button.button_transparent .button_arrow:before {
	border-right: 2px solid #04345b;
	border-top: 2px solid #04345b;
}
.button.button_transparent .button_arrow:after {
	border-bottom: 2px solid #04345b;
}
.button.button_transparent.button_gold .button_arrow:before {
	border-right: 2px solid #c2ad5d;
	border-top: 2px solid #c2ad5d;
}
.button.button_transparent.button_gold .button_arrow:after {
	border-bottom: 2px solid #c2ad5d;
}
.button.button_transparent.button_white .button_arrow:before {
	border-right: 2px solid #ffffff;
	border-top: 2px solid #ffffff;
}
.button.button_transparent.button_white .button_arrow:after {
	border-bottom: 2px solid #ffffff;
}
.button:hover .button_arrow:before {
	border-right: 2px solid #04345b;
	border-top: 2px solid #04345b;
}
.button:hover .button_arrow:after {
	border-bottom: 2px solid #04345b;
}
.button.button_gold:hover .button_arrow:before {
	border-right: 2px solid #c2ad5d;
	border-top: 2px solid #c2ad5d;
}
.button.button_gold:hover .button_arrow:after {
	border-bottom: 2px solid #c2ad5d;
}
.button.button_white:hover .button_arrow:before {
	border-right: 2px solid #ffffff;
	border-top: 2px solid #ffffff;
}
.button.button_white:hover .button_arrow:after {
	border-bottom: 2px solid #ffffff;
}
.button.button_transparent:hover .button_arrow:before {
	border-right: 2px solid #ffffff;
	border-top: 2px solid #ffffff;
}
.button.button_transparent:hover .button_arrow:after {
	border-bottom: 2px solid #ffffff;
}
.button.button_transparent.button_gold:hover .button_arrow:before {
	border-right: 2px solid #ffffff;
	border-top: 2px solid #ffffff;
}
.button.button_transparent.button_gold:hover .button_arrow:after {
	border-bottom: 2px solid #ffffff;
}
.button.button_transparent.button_white:hover .button_arrow:before {
	border-right: 2px solid #c2ad5d;
	border-top: 2px solid #c2ad5d;
}
.button.button_transparent.button_white:hover .button_arrow:after {
	border-bottom: 2px solid #c2ad5d;
}

.col2 {
	float: left;
	width: 46%;
	margin: 0 8% 0 0;
}
.col3 {
	float: left;
	width: 29%;
	margin: 0 6.5% 0 0;
}
.col3_2 {
	float: left;
	width: 64.5%;
	margin: 0 6.5% 0 0;
}
.col4 {
	float: left;
	width: 22%;
	margin: 0 4% 0 0;
}
.col4_2 {
	float: left;
	width: 48%;
	margin: 0 4% 0 0;
}
.col4_3 {
	float: left;
	width: 74%;
	margin: 0 4% 0 0;
}
.col .i_large {
	width: 80%;
	margin: 0 auto;
}
.col .i_middle {
	width: 60%;
	margin: 0 auto;
}
.col .i_small {
	width: 40%;
	margin: 0 auto;
}
.lastcol {
	margin: 0 0 0 0;
}
.flexbox {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
.flexbox .col2 {
	float: none;
	width: 48.2%;
	margin: 0;
}
.flexbox .col3 {
	float: none;
	width: 30.93%;
	margin: 0;
}
.flexbox .col3_2 {
	float: none;
	width: 65.4%;
	margin: 0;
}
.flexbox .col4 {
	float: none;
	width: 22.4%;
	margin: 0;
}
.table {
	display: table;
	width: 100%;
}
.tablecell {
	display: table-cell;
	padding-right: 4%;
	vertical-align: middle;
}
.table .tablecell:last-child {
	padding-right: 0;
}
.box80 {
	width: 80%;
	margin-left: auto;
	margin-right: auto;
}
.box60 {
	width: 60%;
	margin-left: auto;
	margin-right: auto;
}
.box80.bgwhite,
.box60.bgwhite {
	padding: 4%;
}
.bg_movie {
	color: #ffffff;
	background: url(../image/common/bg_movie.jpg.avif) no-repeat center center;
	background-size: cover;
}
.bg_metropolitan {
	color: #ffffff;
	background: url(../image/common/bg_metropolitan.jpg.avif) no-repeat center center;
	background-size: cover;
}
.bg_nami {
	background: url(../image/common/bg_nami.gif.avif) no-repeat center center;
	background-size: cover;
}
.bg_weekender {
	color: #ffffff;
	background: url(../image/common/bg_weekender.jpg.avif) no-repeat center center;
	background-size: cover;
}
.bg_gold {
	background: #f6f3e8;
}
.bg_down_white {
	height: 80px;
	background: url(../image/common/i_down_l_white.png.avif) no-repeat center center;
	background-size: 80px;
	opacity: 0.4;
}
.bg_down_gold {
	height: 80px;
	background: url(../image/common/i_down_l_gold.png.avif) no-repeat center center;
	background-size: 80px;
	opacity: 0.4;
}

::selection {
	background: rgba(5,53,92,0.3);
}
::-moz-selection {
	background: rgba(5,53,92,0.3);
}

.loader,
.loader:before,
.loader:after {
  border-radius: 50%;
  width: 10px;
  height: 10px;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation: load7 1.8s infinite ease-in-out;
  animation: load7 1.8s infinite ease-in-out;
}
.loader {
  color: #c2ad5d;
  font-size: 10px;
  line-height: 10px;
  margin: 0 auto;
  position: relative;
  text-indent: -9999em;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}
.loader:before,
.loader:after {
  content: '';
  position: absolute;
  top: 0;
}
.loader:before {
  left: -15px;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}
.loader:after {
  left: 15px;
}
@-webkit-keyframes load7 {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}
@keyframes load7 {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}



/* common responsive ---------- */



@media only screen and ( max-width: 1120px )
{

.wrap {
	padding-left: 4vw;
	padding-right: 4vw;
}

}



@media only screen and ( max-width: 1024px )
{

body {
	font-size: 1.4rem;
	line-height: 1.5;
}
.wrap.wrap_halfhalf {
	display: block;
}
.wrap .columnLeft {
	width: 100%;
}
.wrap .columnRight {
	width: 100%;
}
.pc {
	display: none;
}
.tb {
	display: block;
}
.sp {
	display: none;
}
.pc.tb {
	display: block;
}
.pc.sp {
	display: none;
}
.tb.sp {
	display: block;
}
.pc.tb.sp {
	display: block;
}
#titlearea {
	height: 160px;
}
#titlearea:after {
	border-width: 120px 240px 0 0;
}
.col2 {
	float: left;
	width: 48%;
	margin: 0 4% 0 0;
}
.col3 {
	float: left;
	width: 31%;
	margin: 0 3.5% 0 0;
}
.col3_2 {
	float: left;
	width: 65.5%;
	margin: 0 3.5% 0 0;
}
.col4 {
	float: left;
	width: 22.75%;
	margin: 0 3% 0 0;
}
.col4_2 {
	float: left;
	width: 48.5%;
	margin: 0 3% 0 0;
}
.col4_3 {
	float: left;
	width: 74.25%;
	margin: 0 3% 0 0;
}
.lastcol {
	margin: 0 0 0 0;
}
.flexbox .col2 {
	float: none;
	width: 48.2%;
	margin: 0;
}
.flexbox .col3 {
	float: none;
	width: 30.93%;
	margin: 0;
}
.flexbox .col3_2 {
	float: none;
	width: 65.4%;
	margin: 0;
}
.flexbox .col4 {
	float: none;
	width: 22.4%;
	margin: 0;
}

a {
	transition: 0;
}
a:hover {
	color: #04345b;
}
.button:hover {
	color: #ffffff;
	background: #04345b;
}
.button.button_gold:hover {
	color: #ffffff;
	background: #c2ad5d;
}
.button.button_white:hover {
	color: #c2ad5d;
	background: #ffffff;
}
.button.button_transparent:hover {
	color: #04345b;
	background: none;
}
.button.button_transparent.button_gold:hover {
	color: #c2ad5d;
	background: none;
}
.button.button_transparent.button_white:hover {
	color: #ffffff;
	background: none;
}
.button:hover .blank {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2073.701%2056.693%22%3E%3Cstyle%3E.st0%7Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M5.67%2034.016V5.669h45.354v5.67h5.669V0H0v39.685h11.339v-5.67z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M62.362%2017.008H17.008v39.685H73.7V17.008H62.362zm5.67%2034.016H22.677V22.677h45.355v28.347z%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_gold:hover .blank {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2073.701%2056.693%22%3E%3Cstyle%3E.st0%7Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M5.67%2034.016V5.669h45.354v5.67h5.669V0H0v39.685h11.339v-5.67z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M62.362%2017.008H17.008v39.685H73.7V17.008H62.362zm5.67%2034.016H22.677V22.677h45.355v28.347z%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_white:hover .blank {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2073.701%2056.693%22%3E%3Cstyle%3E.st0%7Bfill%3A%23c2ad5d%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M5.67%2034.016V5.669h45.354v5.67h5.669V0H0v39.685h11.339v-5.67z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M62.362%2017.008H17.008v39.685H73.7V17.008H62.362zm5.67%2034.016H22.677V22.677h45.355v28.347z%22%2F%3E%3C%2Fsvg%3E');
}
.button:hover .mail {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2025.375%2017%22%3E%3Cstyle%3E.st0%7Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M25.375.606V0H0v.606l12.688%207.406z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M12.697%2011.038l-.01-.016-.009.016L0%203.638V17h25.375V3.638z%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_gold:hover .mail {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2025.375%2017%22%3E%3Cstyle%3E.st0%7Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M25.375.606V0H0v.606l12.688%207.406z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M12.697%2011.038l-.01-.016-.009.016L0%203.638V17h25.375V3.638z%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_white:hover .mail {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2025.375%2017%22%3E%3Cstyle%3E.st0%7Bfill%3A%23c2ad5d%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M25.375.606V0H0v.606l12.688%207.406z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M12.697%2011.038l-.01-.016-.009.016L0%203.638V17h25.375V3.638z%22%2F%3E%3C%2Fsvg%3E');
}
.button:hover .download {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2017.836%2021%22%3E%3Cstyle%3E.st0%7Bfill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M15%2015.583v2.583H2.836v-2.583H0V21h17.836v-5.417H15z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M6.898%2013.978l2.02%202.012%202.02-2.01v-.001l5.224-5.2-2.02-2.012-3.787%203.77V0H7.481v10.536l-3.787-3.77-2.02%202.011%205.223%205.2.001.001z%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_gold:hover .download {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2017.836%2021%22%3E%3Cstyle%3E.st0%7Bfill-rule%3Aevenodd%3Bclip-rule%3Aevenodd%3Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M15%2015.583v2.583H2.836v-2.583H0V21h17.836v-5.417H15z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M6.898%2013.978l2.02%202.012%202.02-2.01v-.001l5.224-5.2-2.02-2.012-3.787%203.77V0H7.481v10.536l-3.787-3.77-2.02%202.011%205.223%205.2.001.001z%22%2F%3E%3C%2Fsvg%3E');
}
.button:hover .print {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016.65%2016.65%22%3E%3Cpath%20d%3D%22M13.965%205.371V2.954a.267.267%200%200%200-.08-.19L11.202.08a.267.267%200%200%200-.19-.079H2.955a.27.27%200%200%200-.27.269V5.37H0v8.594h2.686v2.417a.27.27%200%200%200%20.269.268h10.741c.149%200%20.269-.12.269-.268v-2.417h2.685V5.37h-2.685zM11.279.917l1.769%201.768h-1.769V.918zm2.149%2015.196H3.223V11.28h10.205v4.834zm0-10.742H3.223V.537h7.52v2.417c0%20.148.12.269.268.269h2.417V5.37zm1.342%204.028h-1.074V8.325h1.075V9.4z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_gold:hover .print {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016.65%2016.65%22%3E%3Cpath%20d%3D%22M13.965%205.371V2.954a.267.267%200%200%200-.08-.19L11.202.08a.267.267%200%200%200-.19-.079H2.955a.27.27%200%200%200-.27.269V5.37H0v8.594h2.686v2.417a.27.27%200%200%200%20.269.268h10.741c.149%200%20.269-.12.269-.268v-2.417h2.685V5.37h-2.685zM11.279.917l1.769%201.768h-1.769V.918zm2.149%2015.196H3.223V11.28h10.205v4.834zm0-10.742H3.223V.537h7.52v2.417c0%20.148.12.269.268.269h2.417V5.37zm1.342%204.028h-1.074V8.325h1.075V9.4z%22%20fill%3D%22%23fff%22%2F%3E%3C%2Fsvg%3E');
}
.button.button_white:hover .print {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2016.65%2016.65%22%3E%3Cpath%20d%3D%22M13.965%205.371V2.954a.267.267%200%200%200-.08-.19L11.202.08a.267.267%200%200%200-.19-.079H2.955a.27.27%200%200%200-.27.269V5.37H0v8.594h2.686v2.417a.27.27%200%200%200%20.269.268h10.741c.149%200%20.269-.12.269-.268v-2.417h2.685V5.37h-2.685zM11.279.917l1.769%201.768h-1.769V.918zm2.149%2015.196H3.223V11.28h10.205v4.834zm0-10.742H3.223V.537h7.52v2.417c0%20.148.12.269.268.269h2.417V5.37zm1.342%204.028h-1.074V8.325h1.075V9.4z%22%20fill%3D%22%23c2ad5d%22%2F%3E%3C%2Fsvg%3E');
}
.button:hover .button_arrow:before {
	border-right: 2px solid #ffffff;
	border-top: 2px solid #ffffff;
}
.button:hover .button_arrow:after {
	border-bottom: 2px solid #ffffff;
}
.button.button_gold:hover .button_arrow:before {
	border-right: 2px solid #ffffff;
	border-top: 2px solid #ffffff;
}
.button.button_gold:hover .button_arrow:after {
	border-bottom: 2px solid #ffffff;
}
.button.button_white:hover .button_arrow:before {
	border-right: 2px solid #c2ad5d;
	border-top: 2px solid #c2ad5d;
}
.button.button_white:hover .button_arrow:after {
	border-bottom: 2px solid #c2ad5d;
}
.button.button_transparent:hover .button_arrow:before {
	border-right: 2px solid #04345b;
	border-top: 2px solid #04345b;
}
.button.button_transparent:hover .button_arrow:after {
	border-bottom: 2px solid #04345b;
}
.button.button_transparent.button_gold:hover .button_arrow:before {
	border-right: 2px solid #c2ad5d;
	border-top: 2px solid #c2ad5d;
}
.button.button_transparent.button_gold:hover .button_arrow:after {
	border-bottom: 2px solid #c2ad5d;
}
.button.button_transparent.button_white:hover .button_arrow:before {
	border-right: 2px solid #ffffff;
	border-top: 2px solid #ffffff;
}
.button.button_transparent.button_white:hover .button_arrow:after {
	border-bottom: 2px solid #ffffff;
}

}



@media only screen and ( max-width: 640px )
{

body {
	font-size: 3.5vw;
	line-height: 1.5;
}
.block {
	padding-top: 12vw;
	padding-bottom: 12vw;
}
.block.block_last {
	padding-bottom: 16vw;
}
#columnwrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#maincolumn {
	width: 100%;
	margin-bottom: 6vw;
}
#sidecolumn {
	width: 100%;
}
#titlearea {
	display: flex;
	align-items: center;
	position: relative;
	height: 50vw;
	background-repeat: no-repeat;
	background-position: center center;
	background-size: cover;
}
#titlearea:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 25vw 50vw 0 0;
	border-color: #ffffff transparent transparent transparent;
}
#titlearea .wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
	flex-wrap: wrap;
}
#titlearea h1,
#titlearea .titlearea_title {
	position: relative;
	width: 100%;
	margin-top: -0.4em;
	font-size: 3em;
	line-height: 1;
	color: #c2ad5d;
/*
	font-family: "Playfair Display", serif;
*/
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	z-index: 2;
}
#titlearea h1,
#titlearea .titlearea_title {
	position: relative;
	width: 100%;
	margin-top: -0.4em;
	font-size: 3em;
	line-height: 1;
	color: #c2ad5d;
/*
	font-family: "Playfair Display", serif;
*/
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	z-index: 2;
}
#titlearea h1:after,
#titlearea .titlearea_title:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: -0.4em;
	height: 3px;
	width: 80px;
	background: #c2ad5d;
}
#titlearea h2 {
	padding-top: 8vw;
	font-size: 1.2em;
	width: 100%;
	text-align: left;
}
#breadcrumbs {
	padding-top: 10px;
	padding-bottom: 10px;
	background: #f5f7f9;
	font-size: 0.75em;
	line-height: 1;
}
#breadcrumbs ul {
	display: flex;
	align-items: center;
}
#breadcrumbs ul li {
	position:relative;
	padding-right: 5vw;
	white-space: nowrap;
}
#breadcrumbs ul li:last-child {
	padding-right: 0;
	white-space: normal;
}
#breadcrumbs ul li:after {
	content: "";
	position: absolute;
	top: 50%;
	right: 2vw;
	width: 4px;
	height: 4px;
	margin-top: -3px;
	border-right: 2px solid #cdd7de;
	border-top: 2px solid #cdd7de;
	transform: rotate(45deg);
}
#breadcrumbs ul li:last-child:after {
	display: none;
}
#breadcrumbs a {
	text-decoration: none;
}
.xxl {
	font-size: 1.8em;
}
.xl {
	font-size: 1.6em;
}
.ll {
	font-size: 1.4em;
}
.l {
	font-size: 1.2em;
}
.s {
	font-size: 0.8em;
}
.ss {
	font-size: 0.6em;
}
.xs {
	font-size: 0.5em;
}
h3 {
	position: relative;
	margin-bottom: 8vw;
	padding-bottom: 0.8em;
	font-size: 1.7em;
	line-height: 1.2;
	color: #c2ad5d;
	font-weight: 700;
	text-align: center;
}
h3.en {
	margin-bottom: 8vw;
	padding-bottom: 0.4em;
	font-size: 2.6em;
	line-height: 1.2;
	font-weight: 700;
/*
	font-family: "Playfair Display", serif;
*/
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	letter-spacing: 1px;
}
h3:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 40px;
	height: 2px;
	margin-left: -20px;
	background: #c2ad5d;
}
h4 {
	margin-bottom: 6vw;
	font-size: 1.6em;
	line-height: 1.4;
	color: #c2ad5d;
}
h5 {
	margin-bottom: 4vw;
	font-size: 1.4em;
	line-height: 1.4;
	color: #c2ad5d;
}
.button.button_l {
	width: auto;
	padding: 0.8em 1em;
	max-width: 346px;
	font-size: 1.333em;
	border: 3px solid #04345b;
}
table {
}
table tr {
	border: 1px solid #e2e2e2;
}
table th {
	padding: 4% 4% 2% 4%;
	font-size: 1.333em;
}
table td {
	padding: 0 4% 4% 4%;
}
table th,
table td {
	display: block;
	width: 100%;
	border: none;
}
.pc {
	display: none;
}
.tb {
	display: none;
}
.sp {
	display: block;
}
.pc.tb {
	display: none;
}
.pc.sp {
	display: block;
}
.tb.sp {
	display: block;
}
.pc.tb.sp {
	display: block;
}
span.pc {
	display: none;
}
span.sp {
	display: inline;
}
.mb5 { margin-bottom: 1vw !important; }
.mb10 { margin-bottom: 2vw !important; }
.mb20 { margin-bottom: 4vw !important; }
.mb30 { margin-bottom: 6vw !important; }
.mb40 { margin-bottom: 8vw !important; }
.mb50 { margin-bottom: 10vw !important; }
.mb60 { margin-bottom: 12vw !important; }
.mb80 { margin-bottom: 16vw !important; }
.mb120 { margin-bottom: 20vw !important; }
.w10,.w20,.w25,.w30,.w40,.w50,.w60,.w70,.w80,.w90,.w100 { width: auto !important; }
.p10 {padding: 2vw;}
.p20 {padding: 4vw;}
.p30 {padding: 6vw;}
.p40 {padding: 8vw;}
.left {
	float: none !important;
	margin: 0 auto 8vw auto;
	text-align: center;
}
.left .margin {
	margin: 0;
}
.right {
	float: none !important;
	margin: 0 auto 8vw auto;
	text-align: center;
}
.right .margin {
	margin: 0;
}
.left img,
.right img {
	width: 80%;
}
.i {
	padding-left: 30px;
	line-height: 24px;
	background-size: 24px;
}
.col2 {
	float: none;
	width: 100%;
	margin: 0 0 8% 0;
}
div .col2:last-child {
	margin-bottom: 0;
}
.col3 {
	float: none;
	width: 100%;
	margin: 0 0 8% 0;
}
.col3_2 {
	float: none;
	width: 100%;
}
div .col3:last-child,
div .col3_2:last-child {
	margin-bottom: 0;
}
.col4 {
	float: left;
	width: 48%;
	margin: 0 4% 8% 0;
}
.col4_2 {
	float: none;
	width: 100%;
	margin: 0 0 8% 0;
}
.col4_3 {
	float: none;
	width: 100%;
	margin: 0 0 8% 0;
}
div .col4:nth-of-type(2) {
	margin: 0 0 8% 0;
}
div .col4:nth-of-type(3) {
	margin: 0 4% 0 0;
}
div .col4:nth-of-type(4) {
	margin: 0 0 0 0;
}
div .col4_2:last-child,
div .col4_3:last-child {
	margin-bottom: 0;
}
.col .i_large {
	width: 40%;
}
.col4 .i_large {
	width: 80% !important;
}
.col .i_middle {
	width: 40%;
}
.col .i_small {
	width: 40%;
}
.lastcol {
	margin-right: 0;
}
.table {
	display: block;
}
.tablecell {
	display: block;
	width: 100%;
	padding-right: 0;
	padding-bottom: 8%;
	vertical-align: middle;
}
.table .tablecell:last-child {
	padding-bottom: 0;
}
.box80 {
	width: 100%;
}
.box60 {
	width: 100%;
}
.box80.bgwhite,
.box60.bgwhite {
	padding: 8%;
}

.loader,
.loader:before,
.loader:after {
  border-radius: 50%;
  width: 6px;
  height: 6px;
  -webkit-animation-fill-mode: both;
  animation-fill-mode: both;
  -webkit-animation: load7 1.8s infinite ease-in-out;
  animation: load7 1.8s infinite ease-in-out;
}
.loader {
  color: #c2ad5d;
  font-size: 6px;
  line-height: 6px;
  margin: -6px auto 0 auto;
  position: relative;
  text-indent: -9999em;
  -webkit-transform: translateZ(0);
  -ms-transform: translateZ(0);
  transform: translateZ(0);
  -webkit-animation-delay: -0.16s;
  animation-delay: -0.16s;
}
.loader:before,
.loader:after {
  content: '';
  position: absolute;
  top: 0;
}
.loader:before {
  left: -15px;
  -webkit-animation-delay: -0.32s;
  animation-delay: -0.32s;
}
.loader:after {
  left: 15px;
}
@-webkit-keyframes load7 {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}
@keyframes load7 {
  0%,
  80%,
  100% {
    box-shadow: 0 2.5em 0 -1.3em;
  }
  40% {
    box-shadow: 0 2.5em 0 0;
  }
}

}










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



header {
	position: relative;
/*
	position: -webkit-sticky;
	position: sticky;
	top: 0;
*/
	width: 100%;
	background: #04345b;
	z-index: 8000;
}
header #header_bar {
	position: relative;
	padding-top: 16px;
	padding-bottom: 16px;
}
header #header_bar:after {
	content: "";
	clear: both;
	display: block;
}
header #header_bar h1,
header #header_bar .header_logo {
	float: left;
	height: 45px;
}
header #header_bar h1 img,
header #header_bar .header_logo img {
	width: auto;
	height: 100%;
}
header .recruit {
	position: relative;
	float: right;
	margin-top: 6px;
	margin-right: 30px;
	font-size: 0.75em;
}
header .recruit a {
	padding: 0;
	line-height: 28px;
}
header .facebook {
	position: relative;
	float: right;
	margin-top: 6px;
	margin-left: 30px;
	font-size: 0.75em;
}
header .facebook a {
	display: block;
	width: 32px;
	height: 32px;
	background: url(../image/common/header_i_facebook.png.avif) no-repeat right center;
	background-size: 32px;
	cursor: pointer;
	overflow: hidden;
	text-indent: -9999px;
	transition: opacity 0.4s;
}
header .facebook a:hover {
	opacity: 0.6;
}
header .wantedly {
	position: relative;
	float: right;
	margin-top: 6px;
	margin-left: 10px;
	font-size: 0.75em;
}
header .wantedly a {
	display: block;
	width: 32px;
	height: 32px;
	background: url(../image/common/header_i_wantedly.png.avif) no-repeat right center;
	background-size: 32px;
	cursor: pointer;
	overflow: hidden;
	text-indent: -9999px;
	transition: opacity 0.4s;
}
header .wantedly a:hover {
	opacity: 0.6;
}
header .lang {
	position: relative;
	float: right;
	padding: 0 42px 0 0;
	line-height: 45px;
	color: #ffffff;
	background: url(../image/common/header_i_lang.svg) no-repeat right center;
	background-size: 32px;
	cursor: pointer;
}
header .lang ul {
	display: none;
	position: absolute;
	top: 100%;
	left: 0;
	width: 100%;
	padding: 5px 0;
	background: rgba(4,33,57,0.9);
	border-top: 4px solid #c2ad5d;
	z-index: 9999;
}
header .lang ul li {
	padding: 5px 0;
	text-align: center;
	line-height: 1em;
}
header .lang ul li a {
	color: #ffffff;
	text-decoration: none;
	font-size: 0.75em;
	line-height: 1.2em;
}
header .lang ul li a:hover {
	color: #c2ad5d;
}
header .btn_spmenu {
	position: relative;
	float: right;
	display: none;
	width: 32px;
	height: 32px;
	margin-top: 6px;
	margin-left: 30px;
	background: #04345b;
	z-index: 9001;
}
header .btn_spmenu a {
	display: inline-block;
	position: relative;
	width: 32px;
	height: 32px;
	border: 2px solid #c2ad5d;
	
}
header .btn_spmenu a .icon {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 2px;
	margin: -1px 0 0 -8px;
	background: #c2ad5d;
	transition: .2s;
}
header .btn_spmenu a .icon:before,
header .btn_spmenu a .icon:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 16px;
	height: 2px;
	background: #c2ad5d;
	transition: .3s;
}
header .btn_spmenu a .icon:before {
	margin-top: -6px;
}
header .btn_spmenu a .icon:after {
	margin-top: 4px;
}
header .btn_spmenu a .close {
	background: transparent;
}
header .btn_spmenu a .close:before,
header .btn_spmenu a .close:after {
	margin-top: 0;
}
header .btn_spmenu a .close:before {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
header .btn_spmenu a .close:after {
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}



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



.layer {
	position: fixed;
	top: 0;
	display: none;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.6);
	z-index: 9000;
}
header #gnav {
	position: relative;
	right: 0;
	width: 100%;
	background: #042139;
	z-index: 9001;
}
header nav ul {
	display: flex;
	justify-content: center;
}
header nav ul li {
	position: relative;
}
header nav ul li a {
	display: block;
	width: 100%;
	padding: 0 1.5em;
	line-height: 3em;
	color: #ffffff;
	letter-spacing: 0.1em;
	text-decoration: none;
}
header nav ul li a:hover {
	color: #c2ad5d;
}


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



@media only screen and ( max-width: 1024px )
{

header {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 8000;
}
header .btn_spmenu {
	display: block;
}
header .lang ul {
	z-index: 8000;
}
header #gnav {
	position: fixed;
	top: 0;
	right: -50%;
	width: 50%;
	height: 100%;
}
header nav ul {
	display: block;
	padding-top: 4vw;
	padding-bottom: 4vw;
}
header nav ul li {
	width: 100%;
	text-align: left;
	border-bottom: 1px solid rgba(0,0,0,0.4);
}
header nav ul li:first-child {
	border-top: 1px solid rgba(0,0,0,0.4);
}
header nav ul li a {
	display: block;
	width: 100%;
	padding: 0 10px;
	color: #ffffff;
	font-size: 1.333em;
	line-height: 3em;
}
header nav ul li ul {
	display: flex;
	justify-content: center;
}
header nav ul li ul li {
	width: auto;
	margin: 0 0.5em;
	padding: 0;
	border-bottom: none;
}
header nav ul li ul li:first-child {
	border-top: none;
}

header .lang ul li a:hover {
	color: #ffffff;
}
header nav ul li a:hover {
	color: #ffffff;
}
header .sns li + li {
	margin-left: 10px;
}
header .facebook {
	margin: 0;
	padding: 0;
}
header .facebook a {
	width: 32px;
	height: 32px;
	padding: 0;
	background: url(../image/common/header_i_facebook.png.avif) no-repeat right center;
	background-size: 32px;
	transition: opacity 0;
}
header .facebook a:hover {
	opacity: 1;
}
header .wantedly {
	margin: 0;
	padding: 0;
}
header .wantedly a {
	width: 32px;
	height: 32px;
	padding: 0;
	background: url(../image/common/header_i_wantedly.png.avif) no-repeat right center;
	background-size: 32px;
	transition: opacity 0;
}
header .wantedly a:hover {
	opacity: 1;
}

}



@media only screen and ( max-width: 640px )
{


header #header_bar {
	position: relative;
	padding-top: 4vw;
	padding-bottom: 4vw;
}
header #header_bar h1,
header #header_bar .header_logo {
	height: 28px;
}
header .lang {
	padding: 0 36px 0 0;
	font-size: 1em;
	line-height: 28px;
	background-size: 28px;
}
header .lang ul {
	padding: 0 0 5px 0;
	border-top: 4px solid #04345b;
}
header .lang ul li:first-child {
	padding: 10px 0 5px 0;
	border-top: 2px solid #c2ad5d;
}
header .lang ul li a {
	font-size: 12px;
}
header .btn_spmenu {
	width: 28px;
	height: 28px;
	margin-top: 0px;
	margin-left: 4vw;
}
header .btn_spmenu a {
	width: 28px;
	height: 28px;
	border: 1px solid #ffffff;
}
header .btn_spmenu a .icon {
	display: block;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 16px;
	height: 2px;
	margin: -1px 0 0 -8px;
	background: #ffffff;
	transition: .2s;
}
header .btn_spmenu a .icon:before,
header .btn_spmenu a .icon:after {
	display: block;
	content: "";
	position: absolute;
	top: 50%;
	left: 0;
	width: 16px;
	height: 2px;
	background: #ffffff;
	transition: .3s;
}
header .btn_spmenu a .icon:before {
	margin-top: -6px;
}
header .btn_spmenu a .icon:after {
	margin-top: 4px;
}
header .btn_spmenu a .close {
	background: transparent;
}
header .btn_spmenu a .close:before,
header .btn_spmenu a .close:after {
	margin-top: 0;
}
header .btn_spmenu a .close:before {
	transform: rotate(-45deg);
	-webkit-transform: rotate(-45deg);
}
header .btn_spmenu a .close:after {
	transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
}
header #gnav {
	position: fixed;
	top: 0;
	right: -75%;
	width: 75%;
	height: 100%;
}
header nav ul li a {
	font-size: 1em;
	line-height: 3em;
}

}










/* footer ---------- */



footer {
	position: relative;
	padding: 0;
	font-size: 0.75em;
	color: #ffffff;
	border-top: 6px solid #c2ad5d;
	background: #042139;
}
footer #footercolumnwrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
footer #footerleftcolumn {
	display: flex;
	align-content: space-between;
	flex-wrap: wrap;
	width: 31%;
}
footer #footerleftcolumn .footer_info_engawa,
footer #footerleftcolumn .footer_info_contact {
	width: 100%;
}
footer #footercentercolumn {
	width: 31%;
}
footer #footerrightcolumn {
	width: 31%;
}
footer a {
	color: #ffffff;
	text-decoration: none;
}
footer .footer_info_engawa .logo {
	max-width: 220px;
	margin-bottom: 20px;
}
footer .footer_info_engawa .address {
	margin-bottom: 10px;
	background: url(../image/common/i_footer_address.png.avif) no-repeat 0 0;
	background-size: auto 1.2em;
}
footer .footer_info_engawa .tel {
	margin-bottom: 10px;
	background: url(../image/common/i_footer_tel.png.avif) no-repeat 0 0;
	background-size: auto 1.2em;
}
footer .footer_info_engawa .mail {
	background: url(../image/common/i_footer_mail.png.avif) no-repeat 0 0;
	background-size: auto 1.2em;
}
footer .footer_info_engawa .address,
footer .footer_info_engawa .tel,
footer .footer_info_engawa .mail {
	padding-left: 1.8em;
	line-height: 1.2;
}
footer .footer_info_contact .contact {
	padding: 10px;
	background: #04345b;
}
footer .footer_info_contact .contact .button {
	width: 100%;
	padding: 1em 0;
}
footer .footer_info_contact .contact .button span {
	display: inline-block;
	padding-left: 2em;
	font-size: 1.777em;
	line-height: 1;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2025.375%2017%22%3E%3Cstyle%3E.st0%7Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M25.375.606V0H0v.606l12.688%207.406z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M12.697%2011.038l-.01-.016-.009.016L0%203.638V17h25.375V3.638z%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: 0 center;
	background-size: auto 1em;
}
footer .footer_info_contact .contact .button:hover span {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2025.375%2017%22%3E%3Cstyle%3E.st0%7Bfill%3A%23c2ad5d%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M25.375.606V0H0v.606l12.688%207.406z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M12.697%2011.038l-.01-.016-.009.016L0%203.638V17h25.375V3.638z%22%2F%3E%3C%2Fsvg%3E');
}
footer .footer_info_contact .contact .telephone {
	margin-top: 10px;
	text-align: center;
}
footer .footer_info_contact .contact .telephone .number a {
	display: inline-block;
	font-size: 2.369em;
	line-height: 1;
	font-weight: 700;
}
footer .footer_info_contact .contact .telephone .number a span {
	display: inline-block;
	padding-left: 1em;
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2014.726%2016.6%22%3E%3Cstyle%3E.st0%7Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M4.06%201.527v.538a2.42%202.42%200%200%201%202.417%202.417h.537A2.958%202.958%200%200%200%204.06%201.527z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M8.005%204.499h.537a4.47%204.47%200%200%200-1.318-3.182A4.47%204.47%200%200%200%204.044%200v.537c1.058%200%202.052.412%202.8%201.16A3.937%203.937%200%200%201%208.004%204.5zM11.087%2010.006l-1.9%201.9L4.694%207.41l1.899-1.899-3.64-3.638L.864%203.96a2.957%202.957%200%200%200%200%204.178l7.595%207.595c.558.558%201.3.866%202.09.866.788%200%201.53-.308%202.088-.866l2.089-2.089-3.639-3.639z%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: 0 center;
	background-size: auto 0.8em;
}
footer .footer_info_contact .contact .telephone .number a:hover span {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2014.726%2016.6%22%3E%3Cstyle%3E.st0%7Bfill%3A%23c2ad5d%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M4.06%201.527v.538a2.42%202.42%200%200%201%202.417%202.417h.537A2.958%202.958%200%200%200%204.06%201.527z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M8.005%204.499h.537a4.47%204.47%200%200%200-1.318-3.182A4.47%204.47%200%200%200%204.044%200v.537c1.058%200%202.052.412%202.8%201.16A3.937%203.937%200%200%201%208.004%204.5zM11.087%2010.006l-1.9%201.9L4.694%207.41l1.899-1.899-3.64-3.638L.864%203.96a2.957%202.957%200%200%200%200%204.178l7.595%207.595c.558.558%201.3.866%202.09.866.788%200%201.53-.308%202.088-.866l2.089-2.089-3.639-3.639z%22%2F%3E%3C%2Fsvg%3E');
}
footer .googlemap {
	position: relative;
	width: 100%;
	padding: 340px 0 0 0;
}
footer .googlemap iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	margin: 0 0 0 0;
}
footer #copyright {
	padding-top: 1em;
	padding-bottom: 1em;
	background: #04192a;
}
footer #copyright small {
	color: #ffffff;
}
footer .btn_pagetop {
	display: none;
	position: fixed;
	bottom: 10px;
	right: 10px;
	display: block;
	width: 40px;
	height: 40px;
	z-index: 100;
}
footer .btn_pagetop a {
	display: block;
	width: 40px;
	height: 40px;
	background: #c2ad5d url(../image/common/i_pagetop.png) no-repeat center center;
	background-size: 20px 10px;
}
footer .btn_pagetop a:hover {
	background-color: #d4c58d;
}



/* footer responsive ---------- */



@media only screen and ( max-width: 1024px )
{

footer #footercolumnwrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
footer #footerleftcolumn {
	display: flex;
	justify-content: space-between;
	width: 100%;
	margin-bottom: 4%;
}
footer #footerleftcolumn .footer_info_engawa,
footer #footerleftcolumn .footer_info_contact {
	width: 48.2%;
}
footer #footerleftcolumn .footer_info_contact {
	display: flex;
	align-items: center;
	background: #04345b;
}
footer #footerleftcolumn .footer_info_contact .contact {
	width: 100%;
}
footer #footercentercolumn {
	width: 48.2%;
}
footer #footerrightcolumn {
	width: 48.2%;
}
footer .footer_info_contact .contact .telephone .number a {
	font-size: 1.777em;
}
footer .googlemap {
/*
	padding: 60% 0 0 0;
*/
}

footer a:hover {
	color: #ffffff;
}
footer .footer_info_contact .contact .button:hover span {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2025.375%2017%22%3E%3Cstyle%3E.st0%7Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M25.375.606V0H0v.606l12.688%207.406z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M12.697%2011.038l-.01-.016-.009.016L0%203.638V17h25.375V3.638z%22%2F%3E%3C%2Fsvg%3E');
}
footer .footer_info_contact .contact .telephone .number a:hover span {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%2014.726%2016.6%22%3E%3Cstyle%3E.st0%7Bfill%3A%23fff%7D%3C%2Fstyle%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M4.06%201.527v.538a2.42%202.42%200%200%201%202.417%202.417h.537A2.958%202.958%200%200%200%204.06%201.527z%22%2F%3E%3Cpath%20class%3D%22st0%22%20d%3D%22M8.005%204.499h.537a4.47%204.47%200%200%200-1.318-3.182A4.47%204.47%200%200%200%204.044%200v.537c1.058%200%202.052.412%202.8%201.16A3.937%203.937%200%200%201%208.004%204.5zM11.087%2010.006l-1.9%201.9L4.694%207.41l1.899-1.899-3.64-3.638L.864%203.96a2.957%202.957%200%200%200%200%204.178l7.595%207.595c.558.558%201.3.866%202.09.866.788%200%201.53-.308%202.088-.866l2.089-2.089-3.639-3.639z%22%2F%3E%3C%2Fsvg%3E');
}
footer .btn_pagetop a:hover {
	background-color: #c2ad5d;
}

}



@media only screen and ( max-width: 860px )
{

footer .googlemap {
/*
	padding: 70% 0 0 0;
*/
}

}



@media only screen and ( max-width: 640px )
{

footer #footercolumnwrap {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
footer #footerleftcolumn {
	display: flex;
	align-content: space-between;
	flex-wrap: wrap;
	width: 100%;
	margin-bottom: 8vw;
}
footer #footerleftcolumn .footer_info_engawa,
footer #footerleftcolumn .footer_info_contact {
	width: 100%;
}
footer #footerleftcolumn .footer_info_engawa {
	margin-bottom: 4vw;
}
footer #footercentercolumn {
	width: 100%;
	margin-bottom: 8vw;
}
footer #footerrightcolumn {
	width: 100%;
}
footer .footer_info_engawa .logo {
	width: 60%;
	margin-bottom: 4vw;
}
footer .footer_info_engawa .address {
	margin-bottom: 2vw;
}
footer .footer_info_engawa .tel {
	margin-bottom: 2vw;
}
footer .footer_info_engawa .mail {
}
footer .footer_info_contact .contact {
	padding: 4vw;
}
footer .footer_info_contact .contact .telephone {
	margin-top: 4vw;
}
footer .googlemap {
	padding: 340px 0 0 0;
}

}










/* sidecolumn ---------- */



#sidecolumn .sidecolumn_inner {
	position: -webkit-sticky;
	position: sticky;
	top: 20px;
	padding: 40px;
	background: #f5f7f9;
}
#sidecolumn section {
	margin-bottom: 40px;
}
#sidecolumn section:last-child {
	margin-bottom: 0;
}
#sidecolumn h4 {
	position: relative;
	margin-bottom: 1em;
	padding-bottom: 0.75em;
	font-size: 1.333em;
	line-height: 1;
	color: #c2ad5d;
}
#sidecolumn h4:after {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 40px;
	height: 2px;
	background: #c2ad5d;
}
#sidecolumn ul li {
	margin-bottom: 0.5em;
}
#sidecolumn ul li:last-child {
	margin-bottom: 0;
}
#sidecolumn ul li a {
	text-decoration: none;
}



/* sidecolumn responsive ---------- */



@media only screen and ( max-width: 1024px )
{

#sidecolumn .sidecolumn_inner {
	top: 77px;
	padding: 4vw;
}
#sidecolumn section {
	margin-bottom: 4vw;
}

}



@media only screen and ( max-width: 640px )
{

#sidecolumn .sidecolumn_inner {
	top: 60px;
	padding: 4vw;
}
#sidecolumn h4 {
	margin-bottom: 0.5em;
	padding-bottom: 0.5em;
}
#sidecolumn ul li {
	display: inline-block;
	margin-right: 4vw;
}
#sidecolumn ul li:last-child {
	margin-right: 0;
}

}










/* home ---------- */



body#home #news {
	position: relative;
	margin-top: -60px;
	z-index: 100;
}
body#home #news li {
	background: #ffffff;
}
body#home #news li:nth-child(2n) {
	background: #f5f7f9;
}
body#home #news a {
	display: flex;
	align-items: center;
	min-height: 60px;
	padding: 0 40px;
	line-height: 1.4;
	text-decoration: none;
}
body#home #news a .date {
	margin-right: 40px;
	white-space: nowrap;
	font-size: 0.75em;
	color: #999999;
}
body#home #news .more {
	text-align: center;
}
body#home #news .more a {
	display: block;
	line-height: 60px;
}
body#home #news .more .button_arrow {
	position:relative;
	display: inline;
	padding-left: 20px;
	overflow: visible;
}
body#home #news .more .button_arrow:before,
body#home #news .more .button_arrow:after {
	content: "";
	display: block;
	position: absolute;
}
body#home #news .more .button_arrow:before {
	border-right: 2px solid #04345b;
	border-top: 2px solid #04345b;
	transform: rotate(45deg);
	width: 6px;
	height: 6px;
	right: 0;
	top: 50%;
	margin-top: -4px;
	transition: 0.4s;
}
body#home #news .more .button_arrow:after {
	width: 10px;
	border-bottom: 2px solid #04345b;
	right:0;
	top: 50%;
	margin-top: -1px;
	transition: 0.4s;
}
body#home #news .more a:hover .button_arrow:before {
	border-right: 2px solid #c2ad5d;
	border-top: 2px solid #c2ad5d;
}
body#home #news .more a:hover .button_arrow:after {
	border-bottom: 2px solid #c2ad5d;
}

body#home #about {
	background-image: url('data:image/svg+xml;charset=utf8,%3Csvg%20xmlns%3D%22http%3A%2F%2Fwww.w3.org%2F2000%2Fsvg%22%20viewBox%3D%220%200%20283.464%20138.851%22%3E%3Cpath%20d%3D%22M141.721%2081.688l141.743-69.85V9.793l-60.998%2030.056L142.092.173%20141.746%200%200%2069.855v2.046L141.746%202.052l78.643%2038.82-12.408%206.114-66.235-32.692-.346.173L0%2084.143v2.052l141.746-69.843%2064.153%2031.66-12.402%206.112-51.751-25.542L0%2098.437v16.346l141.746-69.85%2035.165%2017.363-12.413%206.117-22.752-11.244L0%20127.024v2.047l60.997-30.058%2080.377%2039.672.342.166%20141.748-69.843v-2.057l-141.743%2069.855-78.643-38.819%2012.408-6.114%2066.235%2032.69.342-.172%20141.401-69.676v-2.053l-141.743%2069.85-64.154-31.665%2012.404-6.112%2051.75%2025.54%20141.743-69.854V24.075L141.721%2093.924l-35.167-17.36%2012.41-6.116%2022.757%2011.24zm20.7-12.252l-20.7%2010.2-20.677-10.213%2020.702-10.201%2020.675%2010.214z%22%20fill%3D%22%23f5f7f9%22%2F%3E%3C%2Fsvg%3E');
	background-repeat: no-repeat;
	background-position: top 80px left;
	background-size: 100% auto;
}

body#home .works_slider .item {
	cursor: pointer;
	transition: 0.4s;
	margin-right: 1px;
}
body#home .works_slider .item:hover {
	color: #c2ad5d;
	z-index: 2;
}
body#home .works_slider .item .thumb {
	position: relative;
	overflow: hidden;
}
body#home .works_slider .item .thumb img {
	object-fit: cover;
	transition: 0.4s;
}
body#home .works_slider .item:hover .thumb img {
	transform: scale(1.1);
}
body#home .works_slider .item .item_info {
	padding: 20px;
}
body#home .works_slider .item .item_info .title {
	margin-bottom: 0.5em;
}
body#home .works_slider .item .item_info .client {
	margin-bottom: 0.75em;
	color: #999999;
	font-size: 0.75em;
}
body#home .works_slider .item .item_info .tag a {
	display: inline-block;
	margin-top: 5px;
	margin-right: 5px;
	padding: 0.5em;
	font-size: 0.75em;
	line-height: 1;
	color: #c2ad5d;
	text-decoration: none;
	border: 1px solid #c2ad5d;
}
body#home .works_slider .item .item_info .tag a:hover {
	color: #ffffff;
	background: #c2ad5d;
}

body#home .team_slider .item {
	text-align: center;
	line-height: 1.2;
}
body#home .team_slider .item .thumb {
	position: relative;
	width: 100%;
	padding-top: 100%;
	margin-bottom: 10px;
	overflow: hidden;
}
body#home .team_slider .item .thumb img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
body#home .bggray .team_slider .item .thumb {
	background: #f5f7f9;
}
body#home .bggray .team_slider .item .thumb img {
	mix-blend-mode: multiply;
}
body#home .team_slider .item .name {
	font-size: 1.333em;
	margin-bottom: 10px;
	font-weight: 700;
}
body#home .team_slider .item .position,
body#home .team_slider .item .nationality {
	font-size: 0.75em;
}



/* home responsive ---------- */



@media only screen and ( max-width: 1024px )
{

body#home #news a {
	padding: 0 4vw;
}
body#home #news a .date {
	margin-right: 4vw;
}
body#home .works_slider .item .item_info {
	padding: 2vw 2vw 0 2vw;
}

body#home #news .more a:hover .button_arrow:before {
	border-right: 2px solid #04345b;
	border-top: 2px solid #04345b;
}
body#home #news .more a:hover .button_arrow:after {
	border-bottom: 2px solid #04345b;
}
body#home .works_slider .item:hover {
	color: #000000;
}
body#home .works_slider .item:hover .thumb img {
	transform: scale(1);
}
body#home .works_slider .item .item_info .tag a:hover {
	color: #c2ad5d;
	background: none;
}

}



@media only screen and ( max-width: 640px )
{

body#home #news a {
	display: block;
	min-height: 0;
	padding: 4vw;
	line-height: 1.4;
}
body#home #news a .date {
	margin-right: 0;
	margin-bottom: 1vw;
	white-space: nowrap;
	font-size: 0.75em;
	color: #999999;
}
body#home #news .more a {
	line-height: 1.2;
}
body#home .works_slider .item .item_info {
	padding: 4vw 4vw 0 4vw;
}

}










/* about ---------- */



body#about {
}



/* about responsive ---------- */



@media only screen and ( max-width: 1024px )
{

body#about .business .tablecell {
	display: block;
	padding-right: 0;
	padding-bottom: 8%;
	vertical-align: middle;
}
body#about .business .tablecell:last-child {
	padding-bottom: 0;
}
body#about .business .tablecell.w60 {
	width: 100% !important;
	margin: 0 auto;
}
body#about .business .tablecell.w40 {
	width: 60% !important;
	margin: 0 auto;
	text-align: center;
}

}

@media only screen and ( max-width: 640px )
{

body#about h2 {
	font-size: 2em !important;
}
body#about .business section.block {
	padding: 0 0 8% 0;
}
body#about .business .tablecell.w60 {
	width: 100% !important;
}
body#about .business .tablecell.w40 {
	width: 80% !important;
}
body#about span.president {
	padding: 0 0 0 70px;
	font-size: 12px;
	line-height: 60px;
	background-size: 60px;
}

}










/* service ---------- */



body#service .service_nav {
	display: flex;
}
body#service .service_nav li {
	position: relative;
	width: 25%;
	padding-top: 12.5%;
	border-right: 1px solid #ffffff;
}
body#service .service_nav li a:before {
	content: "";
	position: absolute;
	border-right: 3px solid #ffffff;
	border-bottom: 3px solid #ffffff;
	transform: rotate(45deg);
	width: 10px;
	height: 10px;
	left: 50%;
	bottom: 20px;
	margin-left: -8px;
	transition: 0.4s;
}
body#service .service_nav li a:after {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 50px 100px 0 0;
	border-color: #ffffff transparent transparent transparent;
}
body#service .service_nav li a .thumb {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: #04345b;
	overflow: hidden;
}
body#service .service_nav li a .thumb img {
	object-fit: cover;
	opacity: 0.3;
	transition: 0.4s;
}
body#service .service_nav li:hover a .thumb img {
	opacity: 0.6;
	transform: scale(1.1);
}
body#service .service_nav li a .title {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
	line-height: 1.4;
	text-align: center;
	color: #ffffff;
	text-shadow: 0 0 5px rgba(0,0,0,0.5);
}
body#service .service_nav li a .number {
	position: absolute;
	top: -5px;
	left: 0.4em;
	font-size: 3.157em;
	line-height: 0;
	color: #c2ad5d;
/*
	font-family: "Playfair Display", serif;
*/
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	font-style: italic;
	z-index: 2;
}

body#service .service_item {
	display: flex;
	align-items: center;
}
body#service .service_item .thumb {
	flex-shrink: 0;
	width: 346px;
	margin-right: 3.6%;
}
body#service .service_item .info {
	flex-grow: 1;
}
body#service .service_item .service_link .button {
	margin-top: 0.5em;
	margin-right: 1em;
}
body#service .service_item .service_link .button:last-child {
	margin-right: 0;
}



/* service responsive ---------- */



@media only screen and ( max-width: 1024px )
{

body#service .service_nav li a:before {
	width: 6px;
	height: 6px;
	bottom: 10px;
	margin-left: -4px;
}
body#service .service_nav li a:after {
	border-width: 40px 80px 0 0;
}
body#service .service_item .thumb {
	flex-shrink: 0;
	width: 44vw;
	margin-right: 4vw;
}
body#service .service_item .info {
	flex-grow: 1;
}

body#service .service_nav li a:before {
	transition: 0;
}
body#service .service_nav li a .thumb img {
	transition: 0;
}
body#service .service_nav li:hover a .thumb img {
	opacity: 0.3;
	transform: scale(1);
}

}



@media only screen and ( max-width: 640px )
{

body#service .service_nav {
	display: block;
}
body#service .service_nav li {
	width: 100%;
	padding-top: 25vw;
	margin-bottom: 1px;
	border-right: none;
}
body#service .service_nav li a:after {
	border-width: 12.5vw 25vw 0 0;
}
body#service .service_nav li a .title {
	margin: -1vw;
	font-size: 1.5em;
	line-height: 1.4;
}
body#service .service_nav li a .title br {
	display: none;
}
body#service .service_nav li a .number {
	top: -5px;
	left: 0;
	font-size: 2.6em;
	line-height: 1;
}

body#service .service_item {
	display: block;
}
body#service .service_item .thumb {
	width: 80%;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 8vw;
}
body#service .service_item .info {
	width: 100%;
}
body#service .service_item .button {
	min-width: 0;
	padding-left: 6vw;
	padding-right: 6vw;
	margin-top: 2vw;
}
body#service .service_nav li a:before {
	bottom: 4vw;
}

}










/* works ---------- */



body#works .tabs {
	padding: 20px;
	background: #f5f7f9;
}
body#works .tab {
	display: flex;
	justify-content: center;
	margin-left: 10px;
	margin-right: 10px;
	margin-bottom: 20px;
}
body#works .tab li {
	position: relative;
	display: block;
	width: 200px;
	margin-left: 10px;
	margin-right: 10px;
	cursor: pointer;
}
body#works .tab li a {
	display: block;
	width: 100%;
	line-height: 2em;
	color: #ffffff;
	text-align: center;
	text-decoration: none;
	background: #04345b;
	border: 1px solid #04345b;
	border-radius: 1.1em;
}
body#works .tab li a:hover {
	color: #c2ad5d;
}
body#works .tab li.active a {
	color: #04345b;
	background: #ffffff;
}
body#works .tab li:before {
	content: "";
	display: none;
	position: absolute;
	left: 50%;
	bottom: -21px;
	width: 0;
	height: 0;
	margin-left: -12px;
	border-style: solid;
	border-width: 0 12px 15px 12px;
	border-color: transparent transparent #cdd7de transparent;
}
body#works .tab li:after {
	content: "";
	display: none;
	position: absolute;
	left: 50%;
	bottom: -21px;
	width: 0;
	height: 0;
	margin-left: -10px;
	border-style: solid;
	border-width: 0 10px 13px 10px;
	border-color: transparent transparent #ffffff transparent;
}
body#works .tab li.active:before,
body#works .tab li.active:after {
	display: block;
}
body#works .tab_content {
	padding: 10px;
	text-align: center;
	background: #ffffff;
	border: 1px solid #cdd7de;
}
body#works .tab_content li {
	display: none;
}
body#works .tab_content li.active {
	display: block;
}
body#works .tab_content a {
	display: inline-block;
	margin: 10px 15px;
	text-decoration: none;
}

body#works .archivelist {
	display: flex;
	flex-wrap: wrap;
}
body#works .archivelist .item {
	display: block;
	width: 30.93%;
	margin-top: 3.6%;
	margin-right: 3.6%;
	cursor: pointer;
	transition: 0.4s;
}
body#works .archivelist .item:nth-child(3n+3) {
	margin-right: 0;
}
body#works .archivelist .item:hover {
	box-shadow: 0 5px 20px rgba(0,0,0,0.1);
	color: #c2ad5d;
}
body#works .archivelist .item .thumb {
	position: relative;
	overflow: hidden;
	padding-top: 66.66%;
}
body#works .archivelist .item .thumb img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: 0.4s;
}
body#works .archivelist .item:hover .thumb img {
	transform: scale(1.1);
}
body#works .archivelist .item .item_info {
	padding: 20px;
}
body#works .archivelist .item .item_info .title {
	margin-bottom: 0.5em;
}
body#works .archivelist .item .item_info .client {
	margin-bottom: 0.75em;
	color: #999999;
	font-size: 0.75em;
}
body#works .archivelist .item .item_info .tag a {
	display: inline-block;
	margin-top: 5px;
	margin-right: 5px;
	padding: 0.5em;
	font-size: 0.75em;
	line-height: 1;
	color: #c2ad5d;
	text-decoration: none;
	border: 1px solid #c2ad5d;
}
body#works .archivelist .item .item_info .tag a:hover {
	color: #ffffff;
	background: #c2ad5d;
}
body#works .button_more {
	width: 100%;
}

body#works #maincolumn h2,
body#works #maincolumn h1.single_title {
	margin-bottom: 15px;
	font-size: 1.777em;
	font-weight: 700;
}
body#works #maincolumn h3 {
	margin-top: 30px;
	margin-bottom: 20px;
	padding-bottom: 0;
	font-size: 1.555em;
	line-height: 1.2;
	color: #c2ad5d;
	font-weight: 400;
	text-align: left;
}
body#works #maincolumn h3:after {
	display: none;
}
body#works #maincolumn h4 {
	margin-bottom: 10px;
	font-size: 1.333em;
	line-height: 1.2;
	color: #c2ad5d;
}
body#works #maincolumn .tag {
	margin-bottom: 10px;
}
body#works #maincolumn .tag a {
	display: inline-block;
	margin-bottom: 5px;
	margin-right: 5px;
	padding: 0.75em;
	font-size: 0.75em;
	line-height: 1;
	color: #c2ad5d;
	text-decoration: none;
	border: 1px solid #c2ad5d;
}
body#works #maincolumn .tag a:hover {
	color: #ffffff;
	background: #c2ad5d;
}
body#works #maincolumn .client {
	font-size: 0.75em;
}
body#works #maincolumn .period {
	font-size: 0.75em;
	margin-bottom: 20px;
}
body#works #maincolumn .printbutton {
	margin-bottom: 40px;
}
body#works #maincolumn .thumb {
	margin-bottom: 40px;
}
body#works #maincolumn .servicedetail {
	margin-top: 40px;
	text-align: center;
}
body#works #maincolumn .link {
	margin-top: 40px;
	padding: 20px;
	background: #f5f7f9;
}
body#works #maincolumn .link .linkname {
	margin-top: 10px;
}
body#works .workscontact {
	background: #f9f7ee;
}
body#works #maincolumn .link .linkurl {
	word-break: break-all;
}
body#works .workscontact {
	background: #f9f7ee;
}
body#works .workscontact .contactbutton {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
body#works .workscontact .contactbutton li {
	display: block;
	width: 346px;
	margin-right: 3.6%;
	text-align: right;
}
body#works .workscontact .contactbutton li:last-child {
	margin-right: 0;
	text-align: left;
}



/* works responsive ---------- */



@media only screen and ( max-width: 1024px )
{

body#works .archivelist .item .item_info {
	padding: 20px 0;
}
body#works .workscontact .contactbutton li {
	width: 48.2%;
}

body#works .tab li a:hover {
	color: #ffffff;
}
body#works .tab li.active a:hover {
	color: #04345b;
}
body#works .archivelist .item:hover {
	box-shadow: none;
	color: #000000;
}
body#works .archivelist .item:hover .thumb img {
	transform: scale(1);
}
body#works .archivelist .item .item_info .tag a:hover {
	color: #c2ad5d;
	background: none;
}
body#works #maincolumn .tag a:hover {
	color: #c2ad5d;
	background: none;
}

}



@media only screen and ( max-width: 640px )
{

body#works .tabs {
	padding: 4vw;
	margin-bottom: 6vw;
}
body#works .tab {
	display: flex;
	justify-content: center;
	margin-bottom: 3vw;
	margin-left: 0;
	margin-right: 0;
}
body#works .tab li {
	width: 32%;
	margin-left: 0;
	margin-right: 2%;
	cursor: pointer;
}
body#works .tab li:last-child {
	margin-right: 0;
}
body#works .tab li a {
	padding: 0.5em;
	font-size: 0.8em;
	line-height: 1em;
}
body#works .tab li:before {
	content: "";
	display: none;
	position: absolute;
	left: 50%;
	bottom: -3vw;
	width: 0;
	height: 0;
	margin-bottom: -1px;
	margin-left: -2vw;
	border-style: solid;
	border-width: 0 2vw 2.5vw 2vw;
}
body#works .tab li:after {
	content: "";
	display: none;
	position: absolute;
	left: 50%;
	bottom: -3vw;
	width: 0;
	height: 0;
	margin-bottom: -1px;
	margin-left: -1.5vw;
	border-width: 0 1.5vw 2vw 1.5vw;
}
body#works .tab_content {
	padding: 1vw;
}
body#works .tab_content li {
	display: none;
}
body#works .tab_content a {
	display: inline-block;
	margin: 1vw 2vw;
	text-decoration: none;
}

body#works .archivelist {
	display: flex;
	flex-wrap: wrap;
}
body#works .archivelist .item {
	display: block;
	width: 47.25%;
	margin-top: 5.5%;
	margin-right: 5.5%;
}
body#works .archivelist .item:nth-child(3n+3) {
	margin-right: 5.5%;
}
body#works .archivelist .item:nth-child(6n+6) {
	margin-right: 0;
}
body#works .archivelist .item:nth-child(-n+2) {
	margin-top: 0;
}
body#works .archivelist .item:nth-child(2n+2) {
	margin-right: 0;
}

body#works #maincolumn h2,
body#works #maincolumn h1.single_title {
	font-size: 1.6em;
}
body#works #maincolumn h3 {
	margin-top: 6vw;
	margin-bottom: 4vw;
}
body#works #maincolumn h4 {
	margin-bottom: 2vw;
}
body#works #maincolumn .tag {
	margin-bottom: 2vw;
}
body#works #maincolumn .period {
	margin-bottom: 4vw;
}
body#works #maincolumn .printbutton {
	margin-bottom: 8vw;
}
body#works #maincolumn .thumb {
	margin-bottom: 8vw;
}
body#works #maincolumn .servicedetail {
	margin-top: 8vw;
}
body#works #maincolumn .link {
	margin-top: 8vw;
	padding: 4vw;
}
body#works #maincolumn .link .linkname {
	margin-top: 2vw;
}
body#works .workscontact .contactbutton li {
	width: 80%;
	max-width: auto;
	margin-right: 0;
	margin-bottom: 4vw;
	text-align: center;
}
body#works .workscontact .contactbutton li:last-child {
	margin-right: 0;
	margin-bottom: 0;
	text-align: center;
}
body#works .workscontact .contactbutton li a {
	width: 100%;
}

}








/* team ---------- */



body#team section {
	overflow: hidden;
}
body#team #teamnav {
	position: relative;
	left: 100%;
	top: 60px;
	height: 0;
}
body#team #teamnav ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	position: relative;
	font-size: 10px;
	line-height: 1.2;
	color: #b9b9b9;
	z-index: 2;
	transform: rotate(90deg);
	transform-origin: top left;
}
body#team #teamnav li {
	max-width: 80px;
	background: #ffffff;
}
body#team #teamnav li + li {
	margin-left: 1em;
}
body#team #teamnav a {
	display: block;
	position: relative;
	padding-top: 2em;
	background: #ffffff;
	color: #b9b9b9;
	text-decoration: none;
}
body#team #teamnav a span {
	display: block;
	padding: 0.5em 0;
	min-height: 3.8em;
	border-top: 4px solid #b9b9b9;
}
body#team #teamnav a:hover {
	color: #c2ad5d;
}
body#team #teamnav a:hover span {
	border-top: 4px solid #c2ad5d;
}
body#team #teamnav li:nth-child(1) a:before {
	content: "01";
}
body#team #teamnav li:nth-child(2) a:before {
	content: "02";
}
body#team #teamnav li:nth-child(3) a:before {
	content: "03";
}
body#team #teamnav li:nth-child(4) a:before {
	content: "04";
}
body#team #teamnav li:nth-child(5) a:before {
	content: "05";
}
body#team #teamnav li:nth-child(6) a:before {
	content: "06";
}
body#team #teamnav li:nth-child(7) a:before {
	content: "07";
}
body#team #teamnav li:nth-child(8) a:before {
	content: "08";
}
body#team #teamnav li:nth-child(9) a:before {
	content: "09";
}
body#team #teamnav li:nth-child(10) a:before {
	content: "10";
}
body#team #teamnav a:before {
	position: absolute;
	top: 0.5em;
	left: 50%;
	margin-left: -0.5em;
	line-height: 1;
	transform: rotate(-90deg);
}

body#team .block + .block {
	padding-top: 30px;
}
body#team .block:last-child {
	margin-bottom: 30px;
}
body#team h3 {
	position: relative;
	margin-bottom: 40px;
	padding-bottom: 0;
	font-size: 2.369em;
	line-height: 1;
	color: #c2ad5d;
	font-weight: 700;
	text-align: left;
}
body#team h3 span {
	display: inline-block;
	background: #ffffff;
	font-weight: inherit;
}
body#team h3:after {
	content: "";
	position: absolute;
	bottom: 1px;
	left: 0;
	width: 100%;
	height: 1px;
	margin-left: 0;
	background: #c2ad5d;
	z-index: -1;
}
body#team .teamlist_ceo .item {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
body#team .teamlist_ceo .thumb {
	width: 48.666%;
}
body#team .teamlist_ceo .profile {
	width: 48.666%;
}
body#team .teamlist {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}
body#team .teamlist .item {
	width: 23%;
	margin-top: 4%;
	margin-right: 2.666%;
}
body#team .teamlist .item:nth-child(4n) {
	margin-right: 0;
}
body#team .teamlist .item:nth-child(-n+4) {
	margin-top: 0;
}
body#team .teamlist .item .thumb {
	margin-bottom: 0.5em;
}
body#team .item .name {
	margin-bottom: 0.25em;
	font-size: 1.333em;
	font-weight: 700;
}
body#team .item .profile {
	line-height: 1.333;
}
body#team .item .nationality {
	color: #9c9c9c;
}
body#team .item .position + .nationality:before {
	content: "|";
	color: #9c9c9c;
	padding: 0 1em;
}
body#team .item .history {
	margin-top: 2em;
}



/* team responsive ---------- */



@media only screen and ( max-width: 1280px )
{

body#team section .wrap {
	padding-right: 80px;
}

}



@media only screen and ( max-width: 1024px )
{

}



@media only screen and ( max-width: 640px )
{

body#team h3 {
	font-size: 1.5em;
}

body#team section .wrap {
	padding-right: 4vw;
}

body#team .block + .block {
	padding-top: 0;
}
body#team .block:last-child {
	margin-bottom: 0;
}
body#team h3 {
	margin-bottom: 8vw;
}

body#team #teamnav {
	left: 0;
	top: 0;
	height: auto;
	margin-top: 12vw;
	padding-left: 0;
	padding-right: 0;
}
body#team #teamnav ul {
	display: flex;
	flex-wrap: nowrap;
	justify-content: stretch;
	position: relative;
	width: 100%;
	font-size: 3vw;
	transform: rotate(0);
}
body#team #teamnav li {
	max-width: 100%;
	min-width: 4em;
}
body#team #teamnav li + li {
	margin-left: 1em;
}
body#team #teamnav a {
	padding-top: 2em;
	color: #c2ad5d;
}
body#team #teamnav a span {
	min-height: 3.8em;
	border-top: 3px solid #c2ad5d;
}
body#team #teamnav a:hover {
	color: #c2ad5d;
}
body#team #teamnav a:hover span {
	border-top: 3px solid #c2ad5d;
}
body#team #teamnav a:before {
	transform: rotate(0);
}

body#team .teamlist .item {
	width: 48%;
	margin-top: 6%;
	margin-right: 4%;
}
body#team .teamlist .item:nth-child(4n) {
	margin-right: 3%;
}
body#team .teamlist .item:nth-child(-n+4) {
	margin-top: 6%;
}
body#team .teamlist .item:nth-child(2n) {
	margin-right: 0;
}
body#team .teamlist .item:nth-child(-n+2) {
	margin-top: 0;
}

body#team .teamlist_ceo .item {
	display: block;
}
body#team .teamlist_ceo .thumb {
	width: 100%;
	margin-bottom: 0.5em;
}
body#team .teamlist_ceo .profile {
	width: 100%;
}

}










/* news ---------- */



body#news .archivelist {
	display: flex;
	flex-wrap: wrap;
}
body#news .archivelist .item {
	display: block;
	width: 47.25%;
	margin-top: 5.5%;
	margin-right: 5.5%;
	cursor: pointer;
	transition: 0.4s;
}
body#news .archivelist .item:nth-child(-n+2) {
	margin-top: 0;
}
body#news .archivelist .item:nth-child(2n+2) {
	margin-right: 0;
}
body#news .archivelist .item:hover {
	box-shadow: 0 5px 20px rgba(0,0,0,0.1);
	color: #c2ad5d;
}
body#news .archivelist .item .thumb {
	position: relative;
	overflow: hidden;
	padding-top: 66.66%;
}
body#news .archivelist .item .thumb img {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
	object-fit: cover;
	transition: 0.4s;
}
body#news .archivelist .item:hover .thumb img {
	transform: scale(1.1);
}
body#news .archivelist .item .item_info {
	padding: 20px;
}
body#news .archivelist .item .item_info .newsheader {
	display: flex;
	align-items: center;
	margin-bottom: 0.5em;
}
body#news .archivelist .item .item_info .newsheader .category a {
	display: inline-block;
	margin-right: 1em;
	padding: 0.5em;
	font-size: 0.75em;
	line-height: 1;
	color: #c2ad5d;
	text-decoration: none;
	border: 1px solid #c2ad5d;
}
body#news .archivelist .item .item_info .newsheader .category a:hover {
	color: #ffffff;
	background: #c2ad5d;
}
body#news .archivelist .item .item_info .newsheader .date {
	font-size: 0.75em;
	line-height: 1.2;
	color: #999999;
}
body#news .archivelist .item .item_info .title {
}
body#news .button_more {
	width: 100%;
}



/* news single ---------- */



body#news #contents .mainvisual {
	margin: 0 0 2em 0;
}
body#news #contents h2,
body#news #contents h1.single_title {
	margin-bottom: 0.75em;
	font-size: 1.777em;
	font-weight: 700;
}
body#news #contents .newsheader {
	display: flex;
	align-items: center;
	margin-bottom: 10px;
}
body#news #contents .newsheader .category a {
	display: inline-block;
	margin-right: 1em;
	padding: 0.75em;
	font-size: 0.75em;
	line-height: 1;
	color: #c2ad5d;
	text-decoration: none;
	border: 1px solid #c2ad5d;
}
body#news #contents .newsheader .category a:hover {
	color: #ffffff;
	background: #c2ad5d;
}
body#news #contents .newsheader .date {
	font-size: 0.75em;
	line-height: 1.2;
	color: #999999;
}

body#news #contents .single_content p,
body#news #contents .single_content div,
body#news #contents .single_content ul,
body#news #contents .single_content ol,
body#news #contents .single_content table {
	margin: 0 0 1.333em 0;
}
body#news #contents .single_content li {
	margin: 0 0 0.5em 0;
}
body#news #contents .single_content p:last-child,
body#news #contents .single_content div:last-child,
body#news #contents .single_content ul:last-child,
body#news #contents .single_content ol:last-child,
body#news #contents .single_content li:last-child,
body#news #contents .single_content table:last-child {
	margin: 0 0 0 0;
}
body#news #contents .single_content p:after ,
body#news #contents .single_content div:after {
	content: "";
	clear: both;
	display: block;
}
body#news #contents .single_content ul {
	list-style-type: disc;
	padding: 0 0 0 2em;
}
body#news #contents .single_content ol {
	list-style-type: decimal;
	padding: 0 0 0 2em;
}
body#news #contents .single_content b,
body#news #contents .single_content strong {
	font-weight: 700;
}
body#news #contents .single_content i,
body#news #contents .single_content em,
body#news #contents .single_content em strong {
	font-style: italic;
}
body#news #contents .single_content table {
	width: 100%;
}
body#news #contents .single_content table th {
	color: #04345b;
}
body#news #contents .single_content table th,
body#news #contents .single_content table td {
	padding: 0.5em 1em;
	border: 1px solid #cdd7de;
}
body#news #contents .single_content h1 {
	position: relative;
	margin: 1.333em 0 1em 0;
	padding-bottom: 0.5em;
	font-size: 2.369em;
	line-height: 1.2;
	color: #c2ad5d;
	font-weight: 700;
	text-align: center;
}
body#news #contents .single_content h1:after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 80px;
	height: 3px;
	margin-left: -40px;
	background: #c2ad5d;
}
body#news #contents .single_content h2 {
	margin: 1.333em 0 0.75em 0;
	padding: 0.5em;
	font-size: 1.777em;
	color: #c2ad5d;
	line-height: 1.2em;
	font-weight: 700;
	text-align: left;
	background: #f5f7f9;
}
body#news #contents .single_content h3 {
	margin: 1.333em 0 0.75em 0;
	padding: 0 0 0 10px;
	font-size: 1.555em;
	line-height: 1.2em;
	color: #c2ad5d;
	font-weight: 700;
	text-align: left;
	border-left: 5px solid #c2ad5d;
}
body#news #contents .single_content h3:after {
	display: none;
}
body#news #contents .single_content h4 {
	margin: 1.333em 0 0.75em 0;
	padding: 0 0 0.5em 0;
	font-size: 1.333em;
	line-height: 1.2em;
	color: #c2ad5d;
	font-weight: 700;
	text-align: left;
	border-bottom: 1px solid #cdd7de;
}
body#news #contents .single_content h5 {
	margin: 1.333em 0 0.75em 0;
	font-size: 1.222em;
	line-height: 1.2em;
	color: #c2ad5d;
	font-weight: 700;
	text-align: left;
}
body#news #contents .single_content h6 {
	margin: 1.333em 0 0.75em 0;
	font-size: 1.111em;
	color: #c2ad5d;
	font-weight: 700;
	text-align: left;
}
body#news #contents .single_content img {
	width: auto;
	max-width: 100%;
	height: auto;
}
body#news #contents .single_content .aligncenter {
	display: block;
	margin: 0 auto;
	text-align: center;
}
body#news #contents .single_content .alignleft {
	float: left;
	max-width: 50%;
	margin: 0 1.333em 1.333em 0;
}
body#news #contents .single_content .alignright {
	float: right;
	max-width: 50%;
	margin: 0 0 1.333em 1.333em;
}



/* news responsive ---------- */



@media only screen and ( max-width: 1024px )
{

body#news .archivelist .item .item_info {
	padding: 20px 0;
}

body#news .archivelist .item:hover {
	box-shadow: none;
	color: #000000;
}
body#news .archivelist .item:hover .thumb img {
	transform: scale(1);
}
body#news .archivelist .item .item_info .newsheader .category a:hover {
	color: #c2ad5d;
	background: none;
}
body#news #contents .newsheader .category a:hover {
	color: #c2ad5d;
	background: none;
}

}



@media only screen and ( max-width: 640px )
{

body#news #contents h2,
body#news #contents h1.single_title {
	font-size: 1.6em;
}
body#news #contents .mainvisual {
	margin-bottom: 6vw;
}
body#news #contents .newsheader {
	margin-bottom: 2vw;
	font-size: 10px;
	line-height: 24px;
}
body#news #contents .newsheader .category a:hover {
	opacity: 1;
}
body#news #contents .newsheader .date {
	margin-left: 2%;
}
body#news #contents section {
	margin-bottom: 8%;
	padding-bottom: 8%;
}
body#news #contents section .thumb {
	float: none;
	width: 80%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 8%;
}
body#news #contents section .info .title {
	margin-bottom: 4%;
}
body#news #contents section .info .title,
body#news #contents section .info .title a {
	font-size: 18px;
	line-height: 1.2em;
}
body#news #contents section .info .more {
	margin-top: 4%;
}
body#news #contents .pagenation ul li {
	padding: 0 4px;
	font-size: 16px;
}
body#news #contents .pagenation ul li a:hover {
	color: #666666;
}
body#news #contents .pagenation ul li.i_prev a:hover,
body#news #contents .pagenation ul li.i_next a:hover {
	opacity: 0.2;
}
body#news #contents #sidecolumn {
	font-size: 12px;
	line-height: 1.2em;
}
body#news #contents #sidecolumn section {
	margin-bottom: 4%;
}
body#news #contents #sidecolumn section:last-child {
	margin-bottom: 0;
}
body#news #contents #sidecolumn section h3 {
	padding: 2%;
	font-size: 14px;
}
body#news #contents #sidecolumn section ul {
	padding: 2%;
}
body#news #contents #sidecolumn section li {
	margin: 0 0 2% 0;
}
body#news #contents #sidecolumn section li:last-child {
	margin: 0 0 0 0;
}

body#news #contents .single_content p,
body#news #contents .single_content div,
body#news #contents .single_content ul,
body#news #contents .single_content ol,
body#news #contents .single_content table {
	margin: 0 0 4% 0;
}
body#news #contents .single_content li {
	margin: 0 0 1% 0;
}
body#news #contents .single_content table th,
body#news #contents .single_content table td {
	display: table-cell;
	width: auto;
	padding: 2% 4%;
}
body#news #contents .single_content h2 {
	margin: 8% 0 4% 0;
	padding: 2%;
	font-size: 22px;
}
body#news #contents .single_content h3 {
	margin: 6% 0 4% 0;
	padding: 0 0 0 2%;
	font-size: 20px;
}
body#news #contents .single_content h4 {
	margin: 6% 0 4% 0;
	padding: 0 0 2% 0;
	font-size: 18px;
}
body#news #contents .single_content h5 {
	margin: 4% 0 2% 0;
	font-size: 16px;
}
body#news #contents .single_content h6 {
	margin: 4% 0 1% 0;
	font-size: 14px;
}
body#news #contents .single_content img {
	width: auto;
	max-width: 80%;
	height: auto;
	margin-top: 4vw;
	margin-bottom: 4vw;
}
body#news #contents .single_content .alignleft {
	display: block;
	float: none;
	margin: 0 auto 4% auto;
}
body#news #contents .single_content .alignright {
	display: block;
	float: none;
	margin: 0 auto 4% auto;
}
body#news #contents .single_content .alignleft {
	max-width: 80%;
}
body#news #contents .single_content .alignright {
	max-width: 80%;
}

}










/* contact ---------- */

body#contact #contents form * {
	-webkit-appearance: none;
	border-radius: 0;
}
body#contact #contents form dt,
body#contact #contents form dd {
	width: 100%;
}
body#contact #contents form dt {
	margin-bottom: 5px;
	color: #04345b;
}
body#contact #contents form dd {
	margin-bottom: 20px;
}
body#contact #contents form dd .select_outer {
	position: relative;
	overflow: hidden;
	display: inline-block;
	width: 100%;
	background: #ffffff;
	border: 1px solid #e2e2e2;
}
body#contact #contents form dd .select_outer select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	position: relative;
	z-index: 2;
	display: block;
	width: 100%;
	margin: 0;
	padding: 10px 36px 10px 10px;
	background: transparent;
	border: 0;
	outline: none;
	font-size: 16px;
	line-height: 1.2em;
	color: #666666;
	-moz-appearance: none;
	text-indent: 0.01px;
	text-overflow: '';
}
:root body#contact #contents form dd .select_outer select {
	width: 104%\0/;
	padding-right: 0\0/;
}
body#contact #contents form dd .select_outer select::-ms-expand {
	display: none;
}
body#contact #contents form dd .select_outer:before{
	position: absolute;
	content: '';
	z-index: 2;
	top: 50%;
	right: 10px;
	width: 16px;
	height: 16px;
	margin-top: -8px;
	background: url(../image/common/i_pulldown.png.avif) no-repeat 0 0;
	background-size: 16px;
}
body#contact #contents form dd input:not([type=checkbox]) {
	width: 100%;
	padding: 10px;
	font-size: 16px;
	line-height: 1.2em;
	color: #666666;
	border: 1px solid #e2e2e2;
}
body#contact #contents form dd input[type=checkbox] {
	-webkit-appearance: auto;
}
body#contact #contents form dd textarea {
	width: 100%;
	padding: 10px;
	font-size: 16px;
	line-height: 1.2em;
	color: #666666;
	border: 1px solid #e2e2e2;
}
body#contact #contents form dd .select_outer:active,
body#contact #contents form dd input:focus,
body#contact #contents form dd textarea:focus { 
	border: 1px solid #c2ad5d;
}
body#contact #contents form dl.phone input { 
	width: 5em;
}
body#contact #contents form .agreement {
	margin-bottom: 40px;
	line-height: 20px;
	color: #04345b;
	text-align: center;
}
body#contact #contents form .agreement * {
	line-height: 20px;
	vertical-align: top;
}
body#contact #contents form .agreement label.checkbox {
	cursor: pointer;
	width: 20px;
	height: 20px;
	margin-right: 6px;
	border: 1px solid #e2e2e2;
	background: #fff;
	overflow: hidden;
	position: relative;
	display: inline-block;
	box-sizing: border-box;
}
body#contact #contents form .agreement label.checkbox input[type="checkbox"] {
	-moz-appearance: none;
	-webkit-appearance: none;
	margin: 0;
	padding: 0;
	position: absolute;
	left: 20px;
	width: 20px;
	height: 20px;
	left: -40px;
	box-shadow: 40px 0px #ffffff;
	z-index: 2;
}
body#contact #contents form .agreement label.checkbox input[type="checkbox"]:checked {
	box-shadow: none;
}
body#contact #contents form .agreement label.checkbox input[type="checkbox"]:checked:focus {
	box-shadow: 40px 0px #666;
	opacity: 0.1;
}
body#contact #contents form .agreement label.checkbox input[type="checkbox"]:focus {
	box-shadow: 40px 0px #ffffff;
}
body#contact #contents form .agreement label.checkbox:after {
	content: '';
	position: absolute;
	top: 0;
	left: 5px;
	display: block;
	margin-top: 1px;
	width: 6px;
	height: 10px;
	border-right: 2px solid #c2ad5d;
	border-bottom: 2px solid #c2ad5d;
	transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	-moz-transform: rotate(45deg);
	z-index: 1;
}
body#contact #contents form .agreement a {
	color: #04345b;
	text-decoration: underline;
}
body#contact #contents form .agreement a:hover {
	text-decoration: none;
}
body#contact #contents form .formbutton {
	text-align: center;
}
body#contact #contents form .formbutton input {
	margin: 0 10px;
	padding: 10px 40px;
	font-size: 24px;
	line-height: 1.2em;
	color: #ffffff;
/*
	font-family: "Noto Serif JP", serif;
*/
	font-family: "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
	background: #c2ad5d;
	border: 2px solid #c2ad5d;
	cursor: pointer;
	transition: 0.4s;
}
body#contact #contents form .formbutton input:hover {
	color: #c2ad5d;
	background: #ffffff;
}
body#contact #contents .errormessage {
	display: none;
}
body#contact #contents form .error {
	display: inline-block;
	margin: 0 5px 0 0;
	font-size: 100%;
	color: #e2041b;
}
body#contact #contents form .form_error dd input,
body#contact #contents form .form_error dd textarea,
body#contact #contents form .form_error dd .select_outer,
body#contact #contents form .agreement.form_error label.checkbox {
	border: 1px solid #e2041b;
}



body#contact #contents .mw_wp_form_confirm form dl {
	border: 1px solid #e2e2e2;
	margin-top: -1px;
}
body#contact #contents .mw_wp_form_confirm form dt,
body#contact #contents .mw_wp_form_confirm form dd {
	width: 100%;
}
body#contact #contents .mw_wp_form_confirm form dt {
	padding: 10px 10px 5px 10px;
	margin-bottom: 0;
	color: #04345b;
}
body#contact #contents .mw_wp_form_confirm form dd {
	padding: 0 10px 10px 10px;
	margin-bottom: 0;
}
body#contact #contents .mw_wp_form_confirm form dd .select_outer {
	border: none;
}
body#contact #contents .mw_wp_form_confirm form dd .select_outer:before{
	display: none;
}
body#contact #contents .mw_wp_form_confirm form dd .select_outer:active { 
	border: none;
}
body#contact #contents .mw_wp_form_confirm form .agreement {
	display: none;
}
body#contact #contents .mw_wp_form_confirm form p.s.red,
body#contact #contents .mw_wp_form_confirm form span.red {
	display: none;
}
body#contact #contents .mw_wp_form_confirm form .formbutton{
	margin-top: 40px;
}

body#contact #contents .captcha{
	width: 200px;
	margin: 0 auto 40px auto;
	font-size: 12px;
	line-height: 1.2;
	text-align: center;
}
body#contact #contents .captcha input{
	width: 100%;
	margin-top: 10px;
	padding: 5px;
	font-size: 14px;
	line-height: 1.2em;
	color: #666666;
	border: 1px solid #e2e2e2;
}
body#contact #contents .captcha span{
	display: block;
	margin-top: 10px;
}
body#contact #contents .captcha img{
	margin-bottom: 10px;
}
body#contact #contents .note {
    padding: 20px;
    background: #fff;
    box-shadow: 0 0 50px #e2e2e2 inset;
    -moz-box-shadow: 0 0 50px #e2e2e2 inset;
    -webkit-box-shadow: 0 0 50px #e2e2e2 inset;
}
body#contact #contents .mediakit_info {
	display: flex;
	align-content: space-between;
	flex-wrap: wrap;
}
body#contact #contents .mediakit_info .mediakit_title,
body#contact #contents .mediakit_info .mediakit_button {
	width: 100%;
}
body#contact #contents .mediakit_info .mediakit_button {
	text-align: left;
}



/* contact new ---------- */



body#contact #contents .block.block_contact {
	padding-top: 0;
	padding-bottom: 0;
}
body#contact #contents .columnLeft {
	padding: 60px;
}
body#contact #contents .columnRight {
	padding: 60px;
	background: #f8f8f8;
}
body#contact #contents .columnRight .columnRightContents {
	position: sticky;
	top: 60px;
}
body#contact #contents .columnRight .columnRightContents .columnRightContentsTitle {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	gap: 0.5em;
	margin-bottom: 0.5em;
}
body#contact #contents .columnRight .columnRightContents .columnRightContentsTitle:first-child {
	margin-top: 0;
}
body#contact #contents .columnRight .columnRightContents .columnRightContentsTitle .button_s {
    margin-top: -2px;
	padding: 0.4em 1em;
}
body#contact #contents .columnRight .columnRightContents h2 {
	font-size: 1.6em;
	font-weight: bold;
}
body#contact #contents .columnRight .columnRightContents h3 {
    margin-bottom: 0;
    padding-bottom: 0;
	font-size: 1.4em;
    line-height: 1;
    text-align: left;
}
body#contact #contents .columnRight .columnRightContents ul li {
    position: relative;
	padding-left: 1em;
}
body#contact #contents .columnRight .columnRightContents ul li::before {
    content: "・";
	position: absolute;
	top: 0;
	left: 0.25em;
}
body#contact #contents .columnRight .columnRightContents h3::after {
	display: none;
}
body#contact #contents .columnRight .columnRightContents .works-items .item + .item {
	margin-top: 0.5em;
}
body#contact #contents .columnRight .columnRightContents .works-items .item a {
	display: flex;
	gap: 0.5em;
	align-items: center;
}
body#contact #contents .columnRight .columnRightContents .works-items .thumb {
	aspect-ratio: 3/2;
	width: 120px;
	flex-shrink: 0;
}
body#contact #contents .columnRight .columnRightContents .works-items .thumb img {
	object-fit: cover;
	width: 100%;
	height: 100%;
}
body#contact #contents .columnRight .columnRightContents .works-items .item_info {
	width: 100%;
}
body#contact #contents .checkbox_block {
	border: 1px solid #e2e2e2;
}
body#contact #contents .checkbox_block p {
	text-align: center;
	padding: 1em;
}
body#contact #contents .checkbox_block label {
	display: block;
	width: 100%;
	padding: 0.5em 1em;
	border-bottom: 1px solid #e2e2e2;
}
body#contact #contents .checkbox_block .custom-checkbox {
    font-size: 0.9em;
    padding-left: 1.4em;
    background-color: #ffffff;
	border-bottom: 1px solid #e2e2e2;
    opacity: 1;
    transition: opacity 0.3s ease;
}
body#contact #contents .checkbox_block .custom-checkbox label {
	border-bottom: none;
}
body#contact #contents .checkbox_block .custom-checkbox.disabled-checkbox {
    opacity: 0.5;
    background-color: #f8f8f8;
}
body#contact #contents .mw_wp_form .checkbox_block .vertical-item + .vertical-item {
	margin-top: 0;
}
body#contact #contents .mw_wp_form .checkbox_block.checkbox_horizontal {
	display: flex;
	flex-wrap: wrap;
}
body#contact #contents .mw_wp_form .checkbox_block.checkbox_horizontal .horizontal-item {
	width: 50%;
}
body#contact #contents .mw_wp_form .checkbox_block .horizontal-item + .horizontal-item {
	margin-left: 0;
}
body#contact #contents .mw_wp_form .checkbox_block.checkbox_horizontal .horizontal-item:nth-last-of-type(-n+2) label {
	border-bottom: none;
}
body#contact #contents .mw_wp_form .checkbox_block.checkbox_horizontal .horizontal-item:nth-child(even) label {
	border-left: 1px solid #e2e2e2;
}

body#contact #contents .mw_wp_form.mw_wp_form_confirm .checkbox_block {
	border: none;
}
body#contact #contents .mw_wp_form.mw_wp_form_confirm .checkbox_block p {
	display: none;
}



/* contact responsive ---------- */



@media only screen and ( max-width: 1024px )
{

body#contact #contents .columnLeft {
	padding: 8vw 4vw;
}
body#contact #contents .columnRight {
	padding: 8vw 4vw;
}

body#contact #contents form .agreement a:hover {
	text-decoration: underline;
}
body#contact #contents form .formbutton input:hover {
	color: #ffffff;
	background: #c2ad5d;
}

}


@media only screen and ( max-width: 640px )
{

body#contact #contents form dt {
	margin-bottom: 2vw;
}
body#contact #contents form dd {
	margin-bottom: 4vw;
}
body#contact #contents form .agreement {
	margin-bottom: 4vw;
}
body#contact #contents form .formbutton input {
	margin: 0 1vw;
	padding: 2vw 4vw;
	font-size: 1.333em;
}
body#contact #contents .captcha{
	width: 200px;
	margin: 0 auto 8vw auto;
	font-size: 0.8em;
	line-height: 1.2;
	text-align: center;
}
body#contact #contents .captcha input{
	width: 100%;
	margin-top: 10px;
	padding: 5px;
	font-size: 16px;
	line-height: 1.2em;
	color: #666666;
	border: 1px solid #e2e2e2;
}
body#contact #contents .captcha span{
	display: block;
	margin-top: 10px;
}
body#contact #contents .captcha img{
	margin-bottom: 10px;
}
body#contact #contents .mw_wp_form_confirm form .formbutton{
	margin-top: 8vw;
}

}










/* privacy ---------- */



body#privacy #contents h4 {
	margin-top: 2em;
}
body#privacy #contents h4:first-child {
	margin-top: 0;
}
body#privacy #contents p,
body#privacy #contents ul,
body#privacy #contents dl {
	margin-top: 1em;
}
body#privacy #contents ul {
	margin-top: 1em;
}
body#privacy #contents .blockindent {
	 padding-left: 1.5em;
}
body#privacy #contents .textindent {
	 padding-left: 1.5em;
	 text-indent: -1.5em;
}



/* privacy responsive ---------- */



@media only screen and ( max-width: 640px )
{

}









