body [class*="clm"].-is-wrap {
	flex-wrap: wrap;
}

body [class*="clm"].-is-flex-end {
	justify-content: flex-end;
}

body .container_office .box_top {
	border-top: 1px solid #8cf;
}

body .container_office .box_top .title {
	text-align: left;
}

body .container_office .box_top .link_comment::after {
	content: "";
	display: inline-block;
	background: url("../img/assets/icon_popup.svg") center no-repeat;
	margin-left: 2px;
}

body .container_office .box_top .category {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

body .container_office .box_top .category li {
	display: inline-block;
	background-color: #fff5a0;
	line-height: 1;
	font-weight: 500;
	min-width: 4em;
}

body .container_office .box_bottom {
	border-top: 1px solid #8cf;
}

body .container_office .box_bottom .inquiry {
	font-weight: bold;
}

body #map-area {
	position: relative;
	margin: 0 auto;
	max-width: 874px;
}

body #map-area ul.parts li {
	position: absolute;
	opacity: 0;
	transition: opacity 0.2s;
}

body #map-area ul.parts li.active {
	opacity: 1;
}

body #map-area ul.parts li.tohoku {
	width: 12.929061784897025%;
	left: 61.784897025171624%;
	top: 27.23342939481268%;
}

body #map-area ul.parts li.kanto {
	width: 10.869565217391305%;
	left: 58.35240274599543%;
	top: 57.06051873198847%;
}

body #map-area ul.parts li.chubu {
	width: 20.251716247139587%;
	left: 45.19450800915332%;
	top: 47.40634005763689%;
}

body #map-area ul.parts li.kinki {
	width: 10.755148741418765%;
	left: 39.588100686498855%;
	top: 64.4092219020173%;
}

body #map-area ul.parts li.chugoku {
	width: 17.162471395881006%;
	left: 24.37070938215103%;
	top: 59.51008645533141%;
}

body #map-area ul.parts li.kyushu {
	width: 28.26086956521739%;
	left: 0.80091533180778%;
	top: 67.86743515850145%;
}

body #map-area [class^="container_list"] {
	position: absolute;
	width: 57.20823798627003%;
}

body #map-area .container_list1 {
	top: 17.29106628242075%;
	left: 0;
}

body #map-area .container_list1 ul {
	margin-bottom: 5.763688760806916%;
}

body #map-area .container_list2 {
	right: 9.153318077803203%;
	bottom: 0;
}

body section.maps {
	margin-top: -10px;
}

body section.maps .clm-inner a {
	width: 100%;
}

body .google-map {
	width: 100%;
	position: relative;
}

body .google-map::before {
	content: "";
	display: block;
	padding-top: 53.247%;
}

body .google-map #google-map_canvas,
body .google-map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

body .container_comment {
	border-top: 1px solid #8cf;
}

body .container_comment .photo .carousel {
	position: relative;
	line-height: 0;
}

body .container_comment .photo .carousel >li {
	display: none;
	text-align: center;
}

body .container_comment .photo .carousel >li:nth-child(1) {
	display: block;
}

body .container_comment .photo .carousel li img {
	margin: 0 auto;
}

body .container_comment .photo .carousel .slick-dots {
	display: flex;
	position: absolute;
	width: 100%;
	text-align: center;
	left: 50%;
	transform: translateX(-50%);
	margin: 0 auto;
	justify-content: center;
}

body .container_comment .photo .carousel .slick-dots li {
	line-height: 0;
}

body .container_comment .photo .carousel .slick-dots li button {
	appearance: none;
	margin: 0;
	padding: 0;
	border: 1px solid #fff;
	background-color: #d0d0d0;
	color: transparent;
	cursor: pointer;
	border-radius: 50%;
}

body .container_comment .photo .carousel .slick-dots li.slick-active button {
	background-color: #fff;
}

body .container_comment .content .title {
	text-align: left;
}

body .container_comment .content .text .cmn-link {
	text-decoration: underline;
}

body .container_button_back {
	border-top: 1px solid #8cf;
	text-align: center;
}

body .container_button_back a.cmn-btn {
	display: inline-block;
}

body ul.place-list {
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}

body ul.place-list li a {
	max-width: none;
	height: 100%;
	line-height: 1.2;
	text-align: center;
}

body ul.place-list.-width-20-sp {
	justify-content: center;
}

body .container_office-list >.head {
	background-color: #d8f3ff;
	font-weight: bold;
	text-align: center;
}

body [class^="modal_content_"] {
	display: none;
}

body [class^="modal_content_"] .inner {
	background-color: #fff;
	position: relative;
	box-sizing: content-box;
}

body [class^="modal_content_"] .inner .container_comment {
	display: block;
	margin-top: 0;
	padding-top: 0;
	border-top: none;
}

body [class^="modal_content_"] .inner .container_comment .photo {
	width: 100%;
}

body [class^="modal_content_"] .inner .container_button_back {
	margin-top: 0;
}

body [class^="modal_content_"] .inner .container_button_back .cmn-btn-close {
	justify-content: center;
	margin: 0 auto;
}

body [class^="modal_content_"] .slick-dots {
	opacity: 0;
	transition: opacity 0.3s;
}

body .iziModal {
	box-shadow: none !important;
}

@media print, screen and (min-width: 769px) {

body .forSP {
	display: none !important;
}

body .cmn-section.is-last,
body .cmn-section.place:last-of-type {
	margin-bottom: 200px;
}

body section.heading {
	margin: 120px auto;
}

body .container_office .box_top {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 18px 0;
}

body .container_office .box_top .title {
	flex: 0 1 auto;
	padding-right: 1em;
}

body .container_office .box_top .link_comment {
	flex: 0 0 auto;
	padding-right: 1em;
}

body .container_office .box_top .link_comment::after {
	width: 15px;
	height: 15px;
}

body .container_office .box_top .category {
	flex: 0 1 auto;
	justify-content: flex-end;
}

body .container_office .box_top .category li {
	margin: 2px 0 2px 10px;
	padding: 5px 15px;
}

body .container_office .box_bottom {
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 14px 0;
}

body .container_office .box_bottom .address {
	flex: 0 1 auto;
	max-width: 450px;
	box-sizing: content-box;
	padding-right: 1em;
}

body .container_office .box_bottom .address span.tel + span.fax::before {
	content: "　/　";
}

body .container_office .box_bottom .inquiry {
	flex: 0 0 auto;
}

body .container_office .box_bottom .inquiry a.cmn-btn {
	display: inline-block;
}

body .page-content .cmn-heading_1 {
	margin-bottom: 40px;
}

body section.main-copy {
	position: relative;
	z-index: 3;
}

body section.service ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

body section.service ul li {
	width: 355px;
	margin: 10px;
}

body .google-map {
	margin-bottom: 60px;
}

body .container_comment {
	display: flex;
	justify-content: space-between;
	margin-top: 40px;
	margin-bottom: 60px;
	padding-top: 60px;
}

body .container_comment .photo {
	width: 360px;
	box-sizing: content-box;
	margin-right: 5em;
	flex: 0 0 auto;
}

body .container_comment .photo .carousel .slick-dots {
	bottom: 23px;
	padding: 0 40px;
}

body .container_comment .photo .carousel .slick-dots li {
	margin: 0 8px;
}

body .container_comment .photo .carousel .slick-dots li button {
	width: 12px;
	height: 12px;
}

body .container_comment .content {
	flex: 1 1 auto;
}

body .container_button_back {
	margin-top: 40px;
	padding-top: 60px;
}

body h2 {
	margin-bottom: 50px;
}

body section.place +section.place {
	margin-top: 130px;
}

body ul.place-list {
	margin: 0 -10px 100px;
}

body ul.place-list li {
	margin: 0 10px 20px;
	width: calc(25% - 20px);
}

body ul.place-list.-width-20 li {
	width: calc(20% - 20px);
}

body ul.place-list.-width-33 li {
	width: calc(33.333% - 20px);
}

body ul.place-list.-width-50 li {
	width: calc(50% - 20px);
}

body .container_office-list {
	display: flex;
	justify-content: space-between;
}

body .container_office-list +.container_office-list {
	margin-top: 60px;
}

body .container_office-list >.head {
	flex: 0 1 216px;
	padding: 2em 3em;
}

body .container_office-list >.list {
	flex: 1 1 auto;
	padding-left: 25px;
	max-width: 695px;
}

body .container_office-list >.list .container_office {
	margin-bottom: 50px;
}

body [class^="modal_content_"] .inner {
	max-width: 770px;
	margin: 110px auto 0;
	padding: 120px 130px 110px;
}

body [class^="modal_content_"] .inner .container_comment {
	margin-bottom: 50px;
}

body [class^="modal_content_"] .inner .container_comment .photo {
	margin-bottom: 50px;
}

body [class^="modal_content_"] .inner .container_button_back {
	padding-top: 40px;
}

body [class^="modal_content_"] .inner .container_button_back .cmn-btn-close {
	width: 182px;
}

}

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

body section.maps .clm-inner a .txt-box {
	font-size: 1.6rem;
}

}

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

body .forPC {
	display: none !important;
}

body .cmn-section.is-last,
body .cmn-section.place:last-of-type {
	margin-bottom: 33.33vw;
}

body section.heading {
	margin: 10.67vw auto;
}

body .container_office .box_top {
	padding: 3.33vw 0 4.53vw;
}

body .container_office .box_top .title {
	margin-bottom: 3.33vw;
}

body .container_office .box_top .link_comment {
	margin-bottom: 3.33vw;
}

body .container_office .box_top .link_comment::after {
	width: 3.73vw;
	height: 3.73vw;
}

body .container_office .box_top .category {
	justify-content: flex-start;
}

body .container_office .box_top .category li {
	margin: 2px 2.93vw 2px 0;
	padding: 1.33vw 3.2vw;
}

body .container_office .box_bottom {
	padding: 2.67vw 0;
}

body .container_office .box_bottom .address a.map-link {
	margin-right: calc(100% - 7em);
}

body .container_office .box_bottom .address span.fax::before {
	content: "\A";
	white-space: pre;
}

body .container_office .box_bottom .inquiry {
	margin-top: 4vw;
}

body section.main-copy {
	margin-bottom: 12vw;
}

body section.service ul {
	width: 81.33vw;
	margin: 0 auto;
}

body section.service ul li {
	margin-bottom: 2.67vw;
}

body section.maps .clm-inner {
	margin-bottom: 6.67vw;
}

body section.maps .clm-inner a {
	padding-bottom: 4.67vw;
}

body section.maps .clm-inner a .txt-box {
	font-size: 3.73vw;
}

body .google-map {
	margin-bottom: 12vw;
}

body .container_comment {
	margin-top: 9.33vw;
	padding-top: 12vw;
}

body .container_comment .photo {
	margin-bottom: 11.47vw;
}

body .container_comment .photo .carousel .slick-dots {
	bottom: 4.8vw;
}

body .container_comment .photo .carousel .slick-dots li {
	margin: 0 2.13vw;
}

body .container_comment .photo .carousel .slick-dots li button {
	width: 2.67vw;
	height: 2.67vw;
}

body .container_button_back {
	margin-top: 12vw;
	padding-top: 12vw;
}

body h2 {
	margin-bottom: 12vw;
}

body section.place +section.place {
	margin-top: 20vw;
}

body ul.place-list {
	margin: 0 -1.33vw 16vw;
}

body ul.place-list li {
	margin: 0 1.33vw 4vw;
	width: calc(25% - 2.67vw);
}

body ul.place-list li a {
	padding-left: 1.33vw;
	padding-right: 1.33vw;
}

body ul.place-list.-width-20 li {
	width: calc(20% - 2.67vw);
}

body ul.place-list.-width-20-sp li {
	width: 28vw;
}

body ul.place-list.-width-33 li {
	width: calc(33.333% - 2.67vw);
}

body ul.place-list.-width-50 li {
	width: calc(50% - 2.67vw);
}

body .container_office-list +.container_office-list {
	margin-top: 21.33vw;
}

body .container_office-list >.head {
	margin-bottom: 12vw;
	padding: 1em 1em;
}

body .container_office-list >.list {
	padding: 0 1em;
}

body .container_office-list >.list .container_office {
	margin-bottom: 12.67vw;
}

body [class^="modal_content_"] .inner {
	margin: 18vw 4.67vw 0;
	padding: 12vw 6vw;
}

body [class^="modal_content_"] .inner .container_comment {
	margin-bottom: 8vw;
}

body [class^="modal_content_"] .inner .container_button_back {
	padding-top: 8vw;
}

body [class^="modal_content_"] .inner .container_button_back .cmn-btn-close {
	width: 50.67vw;
}

}

@-webkit-keyframes link-hover {

0%,100% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

50%,50.01% {
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
}

0%,50% {
	-webkit-transform-origin: top right;
	transform-origin: top right;
}

100%,50.01% {
	-webkit-transform-origin: top left;
	transform-origin: top left;
}

}

@-moz-keyframes link-hover {

0%,100% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

50%,50.01% {
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
}

0%,50% {
	-webkit-transform-origin: top right;
	transform-origin: top right;
}

100%,50.01% {
	-webkit-transform-origin: top left;
	transform-origin: top left;
}

}

@-webkit-keyframes link-hover {

0%,100% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

50%,50.01% {
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
}

0%,50% {
	-webkit-transform-origin: top right;
	transform-origin: top right;
}

100%,50.01% {
	-webkit-transform-origin: top left;
	transform-origin: top left;
}

}

@-o-keyframes link-hover {

0%,100% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

50%,50.01% {
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
}

0%,50% {
	-webkit-transform-origin: top right;
	transform-origin: top right;
}

100%,50.01% {
	-webkit-transform-origin: top left;
	transform-origin: top left;
}

}

@keyframes link-hover {

0%,100% {
	-webkit-transform: scale(1);
	transform: scale(1);
}

50%,50.01% {
	-webkit-transform: scale(0, 1);
	transform: scale(0, 1);
}

0%,50% {
	-webkit-transform-origin: top right;
	transform-origin: top right;
}

100%,50.01% {
	-webkit-transform-origin: top left;
	transform-origin: top left;
}

}

