@charset "utf-8";
/*------------------------------------------------------------------------------------------------
  home
--------------------------------------------------------------------------------------------------*/
#home .main-slide {
	margin:4em auto;
}

@media all and (min-width: 769px) {
	#home .main-slide.sp {
		display:none;
	}
}

#home .main-slide .slick-slide {
	margin-left:20px;
}

#home .main-slide a:hover {
	opacity:.7;
}

#home .main-slide .vertical a:last-child {
	margin-top:20px;
}

#home .about {
	padding:4em 0;
}

#home .about .container {
	padding:0 130px;
	position:relative;
}

#home .about .container div {
	width:756px;
	margin:0 auto;
}

#home .about h2 span {
	color:#d61a28;
	margin-right:.2em;
}

#home .about  p {
	display:inline-block;
	margin-top:1em;
	font-size:1.14em;
}

#home .about p:first-of-type {
	background:#f2727b;
	font-size:2.5em;
	font-weight:bold;
	letter-spacing:.2em;
	line-height:1em;
}

.brackets {
	width:55px;
	height:calc(100% - 2em);
	position:absolute;
	top:3em;
}

.brackets:first-of-type {
	left:60px;
}

.brackets:last-of-type {
	right:60px;
}

.brackets::before,
.brackets::after {
	content:'';
	width:100%;
	height:55px;
	border-color:#d71a28 !important;
	position:absolute;
}

.brackets:first-of-type::before {
	border-left:solid 3px;
	border-top:solid 3px;
	left:0;
	top:0;
}

.brackets:first-of-type::after {
	border-left:solid 3px;
	border-bottom:solid 3px;
	left:0;
	bottom:0;
}

.brackets:last-of-type::before {
	border-right:solid 3px;
	border-top:solid 3px;
	right:0;
	top:0;
}

.brackets:last-of-type::after {
	border-right:solid 3px;
	border-bottom:solid 3px;
	right:0;
	bottom:0;
}

#home .about .button {
	margin-top:1em;
}

#home .service {
	background:#d71a28;
	padding:50px 0 80px;
}

#home .service h2 {
	text-align:center;
	color:#fff;
}

#home .service h2 span {
	opacity:.3;
	display:block;
}

.service ul {
	margin:0 60px;
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
}

.service li {
	margin-top:4em;
	position:relative;
}

.service li.max:not(.taxi) a {
	box-shadow:5px 5px 0 rgba(0,0,0,.45);
	position:relative;
}

.service li.bus a::before,
.service li.bus a::after,
.service li.useful a::after {
	content:'';
	position:absolute;
	width:90px;
	height:90px;
}

.service li.bus a::before {
	left:-10px;
	top:-10px;
	border-left:solid 3px #fff;
	border-top:solid 3px #fff;
}

.service li.bus a::after,
.service li.useful a::after {
	right:-15px;
	bottom:-15px;
	border-right:solid 3px #fff;
	border-bottom:solid 3px #fff;
}

.service .bus div {
	background:#fff;
}

.service .bus .image {
	float:left;
	margin:10px 20px 0 30px;
}

.service .bus .text {
	margin-top:10px;
}

.service .bus p {
	margin:1em 0 1em 2em;
	display:inline-block;
}

.service .useful .text {
	position:absolute;
	left:-2em;
	top:-1.5em;
}

.service li.max span {
	display:block;
	text-align:right;
	font-size:1.14em;
	font-weight:bold;
	background:#8f0610;
	color:#fff;
	padding:.5em 1em;
}

.service li.max span::after {
	content:url(../image/arrow-white.png);
	margin:0 .5em;
}

#home .service li:not(.max) p,
#service .service li:not(.max) p:first-of-type {
	background:#fff;
	font-size:1.57em;
	font-weight:bold;
	text-align:center;
	width:410px;
	margin:0 auto;
	box-shadow:5px 5px 0 rgba(0,0,0,.25);
	transform:translateY(-16px);
}

.service li:not(.max) p span {
	font-size:.8em;
}

.service li:not(.max) div {
	display:none;
	position:absolute;
	left:50%;
	bottom:50%;
	transform:translateX(-50%);
}

.service li:not(.max):hover div {
	display:inline-block;
}

.service .taxi p:first-child {
	background:#fff;
	font-weight:bold;
	padding:1.5em 0 1em 2em;
}

.service .taxi ul {
	background:#8f0610;
	color:#fff;
	margin:0;
	padding:1em 240px 3em 2em;
}

.service .taxi li {
	margin:0;
	font-size:1.28em;
	font-weight:bold;
}

.service .taxi ul {
	display: flex;
	flex-wrap: wrap;
	align-items: stretch;
	justify-content: flex-start;
	column-gap: 34px;
	row-gap: 10px;
}

.service .taxi ul li {
	width: fit-content;
	min-width: 350px;
	border: 0px !important;
}

.service .taxi ul li:nth-child(2n+1) {
	min-width: 292px;
}

/* @media all and (min-width:786px) {
	.service .taxi li:nth-child(1) { width:17em; }
	.service .taxi li:nth-child(2) { order:3; width:17em; }
	.service .taxi li:nth-child(3) { order:2; width:20em; }
	.service .taxi li:nth-child(4) { order:4; width:20em; }
} */

.service .taxi li a::after{
	content:url(../image/arrow-white.png);
	float:right;
}

.service .taxi img {
	position:absolute;
	right:20px;
	top:10px;
}

.service .taxi p:last-child {
	width:410px;
	background:#fff;
	font-size:1.57em;
	font-weight:bold;
	text-align:center;
	box-shadow:5px 5px 0 rgba(0,0,0,.25);
	position:absolute;
	left:50%;
	bottom:-1em;
	transform:translateX(-50%);
}

#home .news-company {
	background-color:#eee;
	padding:6em 0 4em;
}

#home .news-company .container {
	display:flex;
	justify-content:space-between;
}

#home .news-company .container > div {
	width:calc((100% - 20px) / 2);
	background:#fff;
}

#home .news-company h2 {
	transform:translateY(-2em);
	margin-left:1.5em;
}

#home .news-company h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#home .news ul {
	margin:0 2em 2em;
}

#home .news li:not(:first-child) {
	margin-top:20px;
}

#home .news li .category {
	display:inline-block;
	background:#d71a28;
	color:#fff;
	font-weight:bold;
	text-align:center;
	width:96px;
	margin:0 .5em;
}

#home .news li p {
	display:inline-block;
	text-overflow:ellipsis;
	white-space:nowrap;
	overflow:hidden;
	width:20em;
	vertical-align:middle;
}

#home .company {
	position:relative;
}

#home .company::before {
	content:'';
	border:solid 2px #d71a28;
	width:500px;
	height:315px;
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
}

#home .company img {
	margin-top:-35px;
}

#home .company a {
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
}

#home .recruit {
	padding:4em 0;
	background:url(../image/bg-logo.png) no-repeat left 20% center;
}

#home .recruit .container {
	display:flex;
	justify-content:space-between;
}

#home .recruit h2 {
	color:#d71a28;
	line-height:.8;
}

#home .recruit h2 span {
	color:#000;
	margin-right:.2em;
}

#home .recruit img {
	position:relative;
	z-index:1;
}

#home .recruit .redbox {
	background:#d71a28;
	color:#fff;
	box-shadow:-90px 0 0 #d71a28, 60px 0 0 #d71a28;
	padding:3em 0;
}

#home .recruit .redbox p:first-of-type {
	font-size:2.85em;
	font-weight:bold;
	line-height:1.4;
}

#home .recruit .redbox p:last-of-type {
	margin-top:1em;
}

#home .recruit .button {
	margin:2em 0 0;
	border:none;
}

#home .fixed {
	position:fixed;
	right:0;
	top:244px;
}

/*------------------------------------------------------------------------------------------------
  about
--------------------------------------------------------------------------------------------------*/
#about img.top {
	width:100%;
}

#about .message {
	padding:80px 0;
	background:url(../image/bg-logo.png) no-repeat left -70px center / auto 110%;
}

#about .message .container {
	display:flex;
}

#about .message .redbox {
	background:#d71a28;
	color:#fff;
	padding:50px 60px 0;
}

#about .message .redbox p:first-child {
	font-size:1.71em;
	font-weight:bold;
	line-height:1.4;
	margin-bottom:1em;
}

#about .mission {
	padding:4em 0;
	background-color:#eee;
}

#about .mission ul {
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}

#about .mission ul li {
	position:relative;
}

#about .mission ul li:first-child {
	margin-right:20px;
}

#about .mission ul li:last-child {
	margin-top:5em;
}

#about .mission ul li::before {
	content:'';
	border:solid 2px #d71a28;
	width:500px;
	height:315px;
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
}

#about .mission ul li h2 {
	position:absolute;
	top:-2em;
	margin-left:1.5em;
}

#about .mission ul li h2 span {
	margin-right:.2em;
	color:#d71a28;
}

#about .mission ul li:nth-child(2) h2 span {
	transform:scaleX(.8);
	transform-origin:left;
	display:inline-block;
	margin-right:-.9em;
}

#about .mission ul li .button {
	position:absolute;
	left:50%;
	top:50%;
	transform:translate(-50%,-50%);
}

#about .certification,
#about .regulation {
	padding:5em 0;
	background-color:#eee;
	position:relative;
}

#about .certification::before {
	content:'';
	background:url(../image/bg-logo.png) no-repeat left center / auto 110%;
	position:absolute;
	width:100%;
	height:100%;
	left:0;
	top:0;
}

#about .certification .container,
#about .regulation .container {
	background:#fff;
	border:solid 1px #d71a28;
	padding:50px 60px 40px 30px;
	box-shadow:5px 5px 0 rgba(0,0,0,.25);
	position:relative;
	display:flex;
}

#about .certification .container h3,
#about .regulation .container h3 {
	font-size:1.85em;
	font-weight:bold;
	display:inline-block;
	padding:0 3em;
	background:#fff;
	border:solid 2px #d71a28;
	box-shadow:5px 5px 0 rgba(0,0,0,.25);
	position:absolute;
	left:50%;
	top:-1em;
	transform:translateX(-50%);
}

#about .certification .container img {
	margin-right:40px;
}

#about .certification p:first-of-type {
	font-size:1.42em;
	font-weight:bold;
}

#about .certification p:first-of-type span {
	font-size:1.8em;
	color:#d71a28;
	margin-left:.5em;
	background:linear-gradient(transparent 70%, rgba(215,26,40,.1) 70%);
}

#about .certification p:nth-of-type(2) {
	font-size:1.57em;
	font-weight:bold;
	display:flex;
	align-items:center;
}

#about .certification p:nth-of-type(2)::after {
	content:'';
	border-bottom:solid 2px #d71a28;
	flex:1;
	margin-left:.5em;
}

#about .facility {
	padding:4em 0;
}

#about .facility dl {
	border-top:solid 7px #d71a28;
	display:flex;
}

#about .facility dl:not(:first-child) {
	margin-top:60px;
}

#about .facility dl div:last-child {
	background:#f8f2f2;
	padding:30px 100px 0;
}

#about .facility dl dt {
	font-size:1.71em;
	font-weight:bold;
	display:flex;
	align-items:center;
}

#about .facility dl dt::after {
	content:'';
	border-bottom:solid 2px #aaa;
	flex:1;
	margin-left:.5em;
}

#about .regulation .container {
	display:block;
	padding:40px 100px 30px;
	box-shadow:none;
}

#about .regulation h3 {
	color:#d71a28;
}

#about .regulation h4 {
	background:linear-gradient(to right, #d71a28, #fff);
	color:#fff;
	font-size:1.42em;
	font-weight:bold;
	padding-left:.5em;
}

#about .regulation h4:not(:first-of-type) {
	margin-top:.5em;
}

#about .regulation p {
	margin-left:1em;
}

#about .regulation ol li {
	list-style:decimal;
	margin-left:2em;
}

#about .regulation ol li:not(:first-child) {
	margin-top:1em;
}

#about.environment .certification::before {
	height:485px;
	background-position:left -30px bottom;
}

#about.environment .certification .container img {
	margin-top:26px;
}

#about.environment .certification p:first-of-type {
	overflow:hidden;
}

#about.environment .certification p:first-of-type span {
	margin-left:0;
}

#about.environment .certification p:first-of-type span:last-child {
	float:right;
}

#about.environment .certification img.certificate {
	display:block;
	margin:60px auto 0;
}

#about.environment .facility dl {
	display:block;
}

#about.environment .facility dl div {
	padding:30px 110px 40px 110px;
}

#about.reception .certification .container {
	padding:50px 60px 60px;
}

/*------------------------------------------------------------------------------------------------
  service
--------------------------------------------------------------------------------------------------*/
#service .message {
	position:relative;
}

#service .message::before {
	content:'';
	position:absolute;
	left:0;
	top:0;
	width:380px;
	height:520px;
	background:url(../image/bg-logo.png) no-repeat right top / auto 100%;
}

#service .message .container {
	padding:70px 146px;
	position:relative;
}

#service .message p:first-child {
	font-size:2em;
	font-weight:bold;
	margin-bottom:1em;
}

#service .message .brackets {
	height:calc(100% - 80px);
	top:40px;
}

#service .service .bg-none ul {
	margin:0;
}

#service .service .bg-none li {
	padding:50px 60px;
	background:#d71a28;
}

#service .service .bg-pattern {
	margin-top:4em;
	padding-bottom:60px;
	background-color:#eee;
}

#service .service .bg-pattern li {
	border:solid 6px #d71a28;
	background:#d71a28;
}

#service .service .bg-pattern .container > ul > li:not(.max) {
	width:470px;
}

#service .service li:not(.max) p:first-of-type {
	position:absolute;
	left:50%;
	top:-1em;
	transform:translateX(-50%);
}

#service .service li:not(.max) p:last-of-type {
	color:#fff;
	padding:1em;
}

#service .service .taxi ul {
	background:#d71a28;
	padding:1em 240px 1em 1.5em;
}

#service .service .taxi p:first-child {
	padding-top:2em;
}

#service .service .taxi p:last-child {
	position:absolute;
	left:1.5em;
	top:-1em;
	bottom:auto;
	transform:none;
}

#service.taxi .feature {
	background:#d71a28;
	color:#fff;
	padding:60px 0;
}

#service.taxi .feature .container {
	width:940px;
}

#service.taxi .feature h2 {
	color:#282828;
}

#service.taxi .feature h2 span {
	color:#fff;
	margin-right:.2em;
}

#service.taxi .feature ul {
	display:flex;
	margin-top:3em;
}

#service.taxi .feature li {
	padding:1em 30px 0;
	text-align:center;
	flex:1;
}

#service.taxi .feature li:not(:last-child) {
	border-right:solid 2px #fff;
}

#service.taxi .feature li:first-child {
	padding-left:0;
}

#service.taxi .feature li:last-child {
	padding-right:0;
}

#service.taxi .feature h3 {
	font-size:1.42em;
	font-weight:bold;
	margin:1em 0;
}

#service.taxi .feature p {
	text-align:left;
}

#service.taxi .system {
	padding:90px 0 60px;
}

#service.taxi .system .container {
	background:#eee;
	padding-bottom:60px;
}

#service.taxi .system h2 {
	text-align:center;
	transform:translateY(-2.25em);
}

#service.taxi .system h2 span {
	color:#d71a28;
	display:block;
}

#service.taxi .system h3 {
	color:#d71a28;
	font-size:2.14em;
	font-weight:bold;
	text-align:center;
}

#service.taxi .system h3 span {
	color:#000;
	background:rgba(215,26,40,.3);
	font-size:.66em;
}

#service.taxi .system p {
	text-align:center;
	margin-top:2em;
}

#service.taxi .system ul {
	display:flex;
	justify-content:center;
	margin:1em auto 3em;
}

#service.taxi .system li {
	background:#d71a28;
	color:#fff;
	padding:1em 0;
	margin:0 1em;
	border-radius:2em;
	text-align:center;
	width:163px;
	display:flex;
	justify-content:center;
	align-items:center;
}

#service.taxi .system h3:nth-of-type(2) {
	font-size:1.71em;
}

#service.taxi .system dl {
	display:flex;
	justify-content:space-between;
	margin:1em 2.25em 0;
}

#service.taxi .system dl div {
	margin-top:1em;
	width:181px;
}

#service.taxi .system dt span {
	display:block;
	background:#d71a28;
	color:#fff;
	font-weight:bold;
	text-align:center;
	padding:.2em 0;
}

#service.taxi .system dd {
	margin-top:1em;
}

#service.taxi .automobile {
	background-color:#eee;
	padding:90px 0 60px;
}

#service.taxi .automobile .container {
	background:#fff;
	padding:0 60px 60px;
}

#service.taxi .automobile h2 {
	transform:translateY(-2.25em);
	text-align:right;
}

#service.taxi .automobile span {
	color:#d71a28;
	margin-right:.2em;
}

#service.taxi .automobile ul {
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}

#service.taxi .automobile li {
	width:310px;
	background:#d71a28;
	color:#fff;
}

#service.taxi .automobile li:nth-child(n+4) {
	margin-top:2em;
}

#service.taxi .automobile div {
	padding:1em;
}

#service.taxi .automobile li h3 {
	font-size:1.57em;
	text-align:center;
	font-weight:bold;
}

#service.taxi .automobile li p {
	margin-top:1em;
}

#service.taxi .area {
	padding:60px 0;
}

#service.taxi .area .container {
	position:relative;
	padding:120px 60px;
}

#service.taxi .area h2 {
	text-align:center;
	transform:translateY(-2.25em);
}

#service.taxi .area h2 span {
	color:#d71a28;
	display:block;
}

#service.taxi .area .wrap {
	overflow:hidden;
}

#service.taxi .area p {
	width:460px;
	float:right;
	clear:right;
}

#service.taxi .area p span {
	background:#d71a28;
	color:#fff;
	font-size:2.14em;
	font-weight:bold;
}

#service.taxi .area p span:last-child {
	float:right;
	line-height:1.1;
}

#service.taxi .area p:last-of-type {
	margin-top:2em;
}

#service.taxi .area img {
	position:absolute;
	left:0;
	top:50%;
	transform:translateY(-50%);
	z-index:-1;
}

#service.taxi .area .brackets {
	top:120px;
	height:calc(100% - 100px);
}

/*-----homecare-----*/
#service.homecare .flex,
#service.useful .flex {
		display: flex;
	}
	
#service.homecare .fl-left,
#service.useful .fl-left {
		float:left;
	}
	
#service.homecare .fl-right,
#service.useful .fl-right {
		float:right;
	}
	
#service.homecare .clear:after,
#service.useful .clear:after {
		content: "";
		display: block;
		height: 0;
		clear: both;
		visibility: hidden;
  }
  
#service.homecare .clear,
#service.useful .clear {
	display: inline-table;
  }
  
  /* mac \*/
  * html .clear {
	height: 1%;
  }
  
  .clear {
	display: block;
  }
  
#service.homecare .initiatives {
	padding: 4.2em 0 3.2em;
	background-color: #d71a28;
}

#service.homecare .initiatives .container {
	width: 960px;
}

#service.homecare .initiatives h2 span {
	margin-right: .2em;
	color: #fff;
}

#service.homecare .initiatives .info {
	margin-top: 3.5em;
	display:flex;
	justify-content:space-between;
	align-items:flex-start;
}

#service.homecare .initiatives .info .text {
	color: #fff;
	width: 515px;
}

#service.homecare .initiatives h3 {
	font-size: 1.14em;
	font-weight: bold;
	margin-top: 1.36em;
	margin-bottom: 0.6em;
	position: relative;
	padding-left: 2.5em;
	overflow:hidden;
}

#service.homecare .initiatives h3 span:not(.fl-right) {
	font-size: 1.375em;
}

#service.homecare .initiatives h3::before {
	content: "";
	width: 30px;
	height: 30px;
	background-color: #fff;
	position: absolute;
	left: 0;
	top: 0;
	border-radius: 50%;
}

#service.homecare .initiatives .photo {
	position: relative;
}

#service.homecare .initiatives .photo::before,
#service.homecare .initiatives .photo::after {
	content: "";
	position: absolute;
	width: 3.9em;
	height: 3.9em;
}

#service.homecare .initiatives .photo::before {
	top: -0.78em;
	left: -0.78em;
	border-left: 0.22em solid #fff;
	border-top: 0.22em solid #fff;
}

#service.homecare .initiatives .photo::after {
	bottom: -0.78em;
	right: -0.78em;
	border-right: 0.22em solid #fff;
	border-bottom: 0.22em solid #fff;
}

#service.homecare .feature {
	padding: 2.86em 0  0.75em 0;
	background-color:#eee;
}

#service.homecare .feature .container {
	width: 960px;
}

#service.homecare .feature h2 span,
#homecare .flow-of-service h2 span {
	color:#d71a28;
	margin-right: .2em;
}

#service.homecare .feature .frame {
	background: #fff;
	margin-top: 2.1em;
	margin-bottom: 3.6em;
	padding: 4em 1em 2.5em;
	position: relative;
}

#service.homecare .feature .frame h3 {
	position: absolute;
	top: -0.7em;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: center;
	color: #d71a28;
	font-size: 2.14em;
	font-weight: bold;
}

#service.homecare .feature .frame .info {
	text-align: center;
}

#service.homecare .feature .frame .info .text {
	font-size:0;
}

#service.homecare .feature .frame .intro {
	margin-top: 1em;
	text-align: center;
}

#service.homecare .feature .frame ul {
	margin-left: auto;
	margin-right: auto;
	width: 800px;
	justify-content: space-around;
	-ms-justify-content: space-around;
}

#service.homecare .feature .frame li {	
	width: 181px;
	margin-top: 1.3em;
}

#service.homecare .feature .frame h4 {
	width: 100%;
	background-color: #d71a28;
	line-height: 30px;
	text-align: center;
	font-size: 1em;
	font-weight: bold;
	color: #fff;
	margin-bottom: 1em;
}

#service.homecare .service {
	background: url(../../common/image/bg-logo.png) no-repeat left 90px top -20px / auto 105%;
	padding: 6.79em 0 4.3em 0;
}

#service.homecare .service .container {
	background-color: #eee;
	padding: 4.28em;
	position: relative;
}

#service.homecare .service h2 {
	position:absolute;
	top:-2em;
}

#service.homecare .service h2 span {
	margin-right: .2em;
	color:#d71a28;
}

#service.homecare .service table th,
#service.homecare .service table td {
	line-height: 1.8;
	padding: 20px 1.43em 15px;
	border: 1px solid #d8271c;
}

#service.homecare .service table th {
	width: 28%;
	background-color: #f6e9ea;
	text-align: left;
	vertical-align:top;
}

#service.homecare .service table td {
	width: 72%;
	background-color: #fff;
	overflow:hidden;
}

#service.homecare .service table td p {
	float:left;
	margin-right:2em;
}

#service.homecare .flow {
	padding: 2.86em 0 4.28em 0;
	background-color:#eee;
}

#service.homecare .flow h2 {
	margin-left:70px;
}

#service.homecare .flow h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#service.homecare .flow img {
	margin-top: 2.5em;
}

#service.homecare .automobile {
	margin-top: 6.42em;
}

#service.homecare .automobile .container {
	padding: 4.29em 5em 2.85em 4.29em ;
	background-color: #eee;
	position: relative;
}

#service.homecare .automobile h2 {
	position:absolute;
	right: 5em;
	top:-2em;
}

#service.homecare .automobile h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#service.homecare .automobile ul {
	justify-content: space-between;
	-ms-justify-content: space-between;
}

#service.homecare .automobile .info {
	background-color: #d71a28;
	color: #fff;
	padding: 1em 1.43em;
	margin-bottom: 1.43em;
}

#service.homecare .automobile .info h3 {
	font-size: 1.57em;
	font-weight: bold;
	padding-bottom: 0.4em;
}

#service.homecare .area {
	margin: 9.29em auto 3.75em auto;
}

#service.homecare .area .container {
	position: relative;
	height: 500px;
	background: #eee;
	padding:0 5em;
	z-index:0;
}

#service.homecare .area h2 {
	text-align: center;
	transform:translateY(-2em);
}

#service.homecare .area h2 span {
	display: block;
	color:#d71a28;
}

#service.homecare .area .container div {
	margin-top:5em;
	float:right;
}

#service.homecare .area .container div p {
	width: 460px;
}

#service.homecare .area .container div p span {
	font-size: 2.14em;
	background-color: #d71a28;
	color: #fff;
	font-weight: bold;
	line-height: 1.1;
	margin-bottom: 0.43em;
	display: inline-block;
}

#service.homecare .area .container div p span:last-of-type {
	float: right;
}

#service.homecare .area .container div p:last-child {
	margin-top: 1.8em;
	clear: both;
}

#service.homecare .area img {
	position: absolute;
	left: -1.43em;
	top: -4.28em;
	z-index:-1;
}

/*-----useful-----*/
#service.useful .message {
	padding-bottom:40px;
}

#service.useful .message::before {
	top:-8.6em;
	width:449px;
	height:461px;
	z-index:-1;
}

#service.useful .type {
	background-color: #eee;
	padding: 50px 0;
}

#service.useful .type .image {
	text-align:center;
}

#service.useful .list-title {
	margin:40px 60px 20px 0;
}

#service.useful .list-title li {
	float: left;
	margin-right: 0.7em;
	margin-bottom: 0.7em;
}

#service.useful .list-title li a {
	font-size: 1.14em;
	border: 0.125em solid #d71a28;
	padding: 0.6em 1.56em;
	background-color: #fff;
	color: #d71a28;
	box-shadow: 3px 5px #c0bfbf;
	font-weight: bold;
}

#service.useful .list-title li a.active,
#service.useful .list-title li a:hover {
	background-color: #d71a28;
	color: #fff;
}

#service.useful .frame {
	border-top: 0.714em solid #d71a28;
	padding: 0 4.29em 1.79em 4.29em;
	background-color: #fff;
	margin-top: 40px;
}

#service.useful .frame h2 {
	font-size: 2.64em;
	color: #d71a28;
	font-weight: bold;
	line-height:normal;
}

#service.useful .frame .intro {
	box-shadow:3px 5px 0 rgba(0,0,0,.25);
}

#service.useful .frame .intro .title {
	font-size: 1.71em;
	color: #fff;
	font-weight: bold;
	text-align: center;
	background-color: #808080;
	padding: 0.45em 0;
}

#service.useful .frame .intro ul {
	padding: 0.57em 3em 1.43em;
	background-color: #eee;
}

#service.useful .frame .intro ul li {
	font-size: 1.57em;
	font-weight: bold;
	color: #221815;
	line-height: 35px;
	padding-left: 1.82em;
	background: url(../image/icon-check.png) no-repeat left center;
	background-size: 1.73em auto;
	margin-top: 0.45em;
}

#service.useful .frame .about {
	margin-top: 1.64em;
	margin-bottom: 1.57em;
	display:flex;
	justify-content: space-between;
}

#service.useful .frame .about .text {
	width: 480px;
	padding: 1em 1.57em 1.43em 1.57em;
	position: relative;
	line-height: 1.6;
}

#service.useful .frame .about .text p:first-child {
	font-size: 1.71em;
	color: #d71a28;
	font-weight: bold;
	margin-bottom: 0.42em;
}

@media all and (min-width: 1025px) {
	#service.useful .frame#grave .about .text p:first-child {
		white-space:nowrap;
	}
}

#service.useful .frame .about .text .brackets {
	top:0;
	height:100%;
}

#service.useful .frame .about .text .brackets:first-of-type {
	left:0;
}

#service.useful .frame .about .text .brackets:last-of-type {
	right:0;
}

#service.useful .frame h3 {
	font-size: 1.71em;
	color: #d71a28;
	font-weight: bold;
	padding-left: 0.625em;
	border-left: 0.25em solid #d71a28;
	margin-bottom: 0.5em;
}

#service.useful .frame h4 {
	font-size: 1.43em;
	color: #d71a28;
	font-weight: bold;
}

#service.useful .frame .price {
	margin-top: 1.43em;
}

#service.useful .frame .price table {
	width: 100%;
	margin-top: 0.5em;
}

#service.useful .frame .price th,
#service.useful .frame .price td {
	line-height: 1.8;
	padding: 1em 1.43em;
	border: 1px solid #d8271c;
}

#service.useful .frame .price th {
	background-color: #f6e9ea;
	text-align: left;
	vertical-align:top;
	width:168px;
}

#service.useful .frame .price table td {
	background-color: #fff;
}

#service.useful .frame .half {
	width: 50%;
}

@media all and (min-width: 426px) {
	#service.useful .frame .half:first-child td {
		border-right: none;
	}
}

#service.useful .frame .button {
	margin-top:2em;
}

#service.useful .frame .info-other ul {
	margin:0 0 2em;
}

#service.useful .reservation {
	padding-top:60px;
}

#service.useful .payment {
	padding:40px 0 60px;
}

#service.useful .reservation .container,
#service.useful .payment .container {
	padding:40px 60px;
}

#service.useful .reservation h2,
#service.useful .payment h2 {
	margin-left:10px;
}

#service.useful .reservation h2 span,
#service.useful .payment h2 span {
	margin-right:.2em;
	color:#d71a28;
}

#service.useful .reservation p,
#service.useful .payment p {
	margin-top:1em;
}

#service.useful .reservation .flex,
#service.useful .payment .flex {
	justify-content:space-between;
	margin-top:1em;
}

#service.useful .reservation .box {
	background:#fff;
	position:relative;
	width:300px;
	padding:2em 0 50px;
	text-align:center;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
}

#service.useful .payment .box {
	background:#fff;
	position:relative;
	width:300px;
	padding:2em 0 40px;
	text-align:center;
	height: 100%;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: space-between;
}

#service.useful .reservation .box .button {
	margin-top:1em;
}

#service.useful .payment .box p {
	color:#d71a28;
	font-size:1.14em;
	font-weight:bold;
}

#service.useful .payment .box p::before {
	content:'';
	width:24px;
	height:24px;
	background:#d71a28;
	border-radius:50%;
	margin-right:.2em;
	vertical-align:middle;
	display:inline-block;
}

#service.useful .reservation .box .brackets,
#service.useful .payment .box .brackets {
	height:100%;
	top:0;
}

#service.useful .reservation .box .brackets:first-of-type,
#service.useful .payment .box .brackets:first-of-type {
	left:0;
}

#service.useful .reservation .box .brackets:last-of-type,
#service.useful .payment .box .brackets:last-of-type {
	right:0;
}

#service.outsourcing h1 {
	width:max-content;
	margin-left:calc((100% - 960px) / 2);
}

#service.outsourcing .about {
	background:#d71a28;
	padding:60px 0;
}

#service.outsourcing .about .container {
	background:#fff;
	padding:40px 60px;
}

#service.outsourcing .about h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#service.outsourcing .about h3 {
	background:#808080;
	color:#fff;
	font-size:1.71em;
	font-weight:bold;
	text-align:center;
	padding:.2em 0;
}

#service.outsourcing .about .box {
	box-shadow:5px 5px 0 rgba(0,0,0,.25);
	margin-top:1em;
}

#service.outsourcing .about .box div {
	display:flex;
}

#service.outsourcing .about .box ul {
	background:#eee;
	flex:1;
	padding:9px 0 0 48px;
}

#service.outsourcing .about .box li {
	font-size:1.57em;
	font-weight:bold;
	margin:.2em 0;
}

#service.outsourcing .about .box li::before {
	content:url(../image/icon-check.png);
	vertical-align:middle;
}

#service.outsourcing .about p {
	margin:40px 60px 0;
}

#service.outsourcing .business {
	padding:60px 0;
}

#service.outsourcing .business h2,
#service.outsourcing .dispatch h2 {
	text-align:center;
}

#service.outsourcing .business h2 span,
#service.outsourcing .dispatch h2 span {
	color:#d71a28;
	display:block;
}

#service.outsourcing .business h3:first-of-type {
	text-align:right;
	margin:60px 70px -6px 0;
}

#service.outsourcing .business h3 span,
#service.outsourcing .dispatch h3 span {
	color:#d71a28;
	margin-right:.2em;
}

#service.outsourcing .redbox {
	background:#d71a28;
	color:#fff;
	padding:60px;
	display:flex;
	justify-content:space-between;
	align-items:center;
}

#service.outsourcing .redbox img {
	margin:0 30px;
}

#service.outsourcing .redbox dl {
	margin:0 30px;
}

#service.outsourcing .redbox dt {
	font-size:1.42em;
	font-weight:bold;
}

#service.outsourcing .redbox dd {
	margin-top:1.5em;
}

#service.outsourcing .business h3:last-of-type,
#service.outsourcing .dispatch h3:last-of-type {
	margin:50px 0 40px 70px;
}

#service.outsourcing .flow dl {
	border:solid 1px #d71a28;
	background:#fff;
	padding:24px 60px;
	display:flex;
	align-items:center;
}

#service.outsourcing .flow dl:not(:last-child) {
	border-bottom:none;
}

#service.outsourcing .flow dt {
	font-size:1.42em;
	font-weight:bold;
	line-height:1.2;
	flex:1;
}

#service.outsourcing .flow dt::before {
	content:'';
	width:45px;
	height:45px;
	display:inline-block;
	background:#d71a28;
	border-radius:5em;
	float:left;
	margin-right:.5em;
}

#service.outsourcing .flow dt span {
	font-size:.7em;
}

#service.outsourcing .flow dd {
	flex:1;
	padding:.5em 0 .5em 1em;
	border-left:solid 1px #000;
	min-height:4em;
}

#service.outsourcing .dispatch {
	background-color:#eee;
	padding:60px 0;
}

#service.outsourcing .dispatch h3:first-of-type {
	margin:60px 0 -6px 70px;
}

#service.locabus .about {
	background:#d71a28;
	padding:60px 0;
}

#service.locabus .about .container {
	width:940px;
}

#service.locabus .about h2 span {
	color:#fff;
	margin-right:.2em;
}

#service.locabus .about .whitebox {
	background:#fff;
	box-shadow:15px 15px 0 rgba(0,0,0,.25);
	padding:40px 50px;
	margin-top:2em;
	display:flex;
	justify-content:space-between;
}

#service.locabus .about .whitebox div {
	width:400px;
}

#service.locabus .about h3 {
	font-size:1.71em;
	font-weight:bold;
	color:#d71a28;
	margin-bottom:1em;
}

#service.locabus .strength {
	padding:60px 0;
	background:url(../image/service/locabus-strength-bg.gif);
}

#service.locabus .strength h2 {
	text-align:center;
}

#service.locabus .strength h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#service.locabus .strength ul {
	display:flex;
	justify-content:space-between;
	margin-top:2em;
}

#service.locabus .strength li {
	width:290px;
}

#service.locabus .strength h3 {
	font-size:2em;
	font-weight:bold;
	color:#d71a28;
	border-bottom:solid 2px #d71a28;
	padding-bottom:.5em;
	margin:1em 0 .5em;
}

#service.locabus .automobile {
	background-color:#eee;
	padding:60px 0;
}

#service.locabus .automobile .container {
	width:940px;
}

#service.locabus .automobile h2 {
	text-align:center;
}

#service.locabus .automobile h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#service.locabus .automobile li {
	border-top:solid 10px #d71a28;
	background:#fff;
	box-shadow:15px 15px 0 rgba(0,0,0,.25);
	padding:70px 35px 30px;
	margin-top:90px;
	position:relative;
}

#service.locabus .automobile li:first-child {
	padding-top:30px;
	margin-top:60px;
}

#service.locabus .automobile li h3 {
	font-size:1.57em;
	font-weight:bold;
	color:#fff;
	width:475px;
	text-align:center;
	padding:.85em 0;
	position:absolute;
	top:-2em;
	right:1.5em;
	z-index:0;
}

#service.locabus .automobile li:nth-child(2) h3 {
	left:1.5em;
}

#service.locabus .automobile li h3::before {
	content:'';
	width:100%;
	height:100%;
	background:#d71a28;
	position:absolute;
	left:0;
	top:0;
	transform:skew(-25deg);
	box-shadow:7px 5px 0 rgba(0,0,0,.25);
	z-index:-1;
}

#service.locabus .automobile li .flex {
	display:flex;
	justify-content:space-between;
	align-items:center;
}

@media all and (min-width: 1025px) {
	#service.locabus .automobile li .flex:not(:nth-of-type(2)) > img {
		margin-left:-60px;
	}
	
	#service.locabus .automobile li:nth-child(2) .flex:not(:nth-of-type(2)) > img {
		margin-right:-70px;
	}
	
	#service.locabus .automobile li:nth-child(3) .flex:not(:nth-of-type(2)) > img {
		margin-left:-70px;
	}
}

#service.locabus .automobile li .flex div {
	width:390px;
}

#service.locabus .automobile li:nth-child(2) .flex div {
	width:351px;
}

#service.locabus .automobile li table {
	font-weight:bold;
}

#service.locabus .automobile li th {
	padding-right:1em;
	vertical-align:top;
}

#service.locabus .automobile li p {
	margin:1em 0;
}

#service.locabus .area {
	padding:60px 0;
	background:url(../image/bg-logo.png) no-repeat left -60px top -30px / auto 1000px;
}

#service.locabus .area .container {
	width:940px;
}

#service.locabus .area h2 {
	text-align:center;
}

#service.locabus .area h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#service.locabus .area h3 {
	font-size:1.42em;
	font-weight:bold;
	background:rgba(215,26,40,.3);
	width:max-content;
	margin:3em auto 0;
}

#service.locabus .area p {
	margin:1em 120px 0;
}

#service.locabus .area ul {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	align-items:start;
	margin-top:4em;
}

#service.locabus .area li {
	box-shadow:15px 15px 0 rgba(0,0,0,.25);
}

#service.locabus .area li:nth-child(2) {
	margin-top:190px;
}

#service.locabus .area li:nth-child(3) {
	margin-top:-115px;
}

#service.locabus .area li:nth-child(4) {
	margin-top:75px;
}

#service.locabus .flow {
	padding:60px 0;
}

#service.locabus .flow .container {
	width:700px;
}

#service.locabus .flow h2 {
	text-align:center;
}

#service.locabus .flow h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#service.locabus .flow h3 {
	color:#d71a28;
	font-size:1.71em;
	font-weight:bold;
	border-bottom:solid 2px #d71a28;
	padding-bottom:.3em;
	margin:1em 0 .7em;
}

#service.locabus .flow li:not(:last-child) {
	position:relative;
	margin-bottom:54px;
}

#service.locabus .flow li:not(:last-child)::before,
#service.locabus .flow li:not(:last-child)::after {
	content:'';
	position:absolute;
	left:50%;
	transform:translateX(-50%);
}

#service.locabus .flow li:not(:last-child)::before {
	background:#e24953;
	width:20px;
	height:34px;
	bottom:-34px;
}

#service.locabus .flow li:not(:last-child)::after {
	border-top:solid 20px #e24953;
	border-left:solid 18px transparent;
	border-right:solid 18px transparent;
	bottom:-54px;
}

#service.locabus .flow li h4 {
	background:#d71a28;
	color:#fff;
	font-size:1.14em;
	font-weight:bold;
	padding:0 .5em;
}

#service.locabus .flow li h4 span {
	font-size:1.5em;
}

#service.locabus .flow li p {
	border:solid 1px #d71a28;
	background:#fff;
	padding:1em;
	text-align:center;
}

#service.locabus .flow li:nth-child(4) p {
	background:#fad7d9;
}

#service.locabus .notice,
#service.locabus .association {
	padding:60px 0;
}

#service.locabus .notice .container,
#service.locabus .price .container,
#service.locabus .association .container {
	width:940px;
}

#service.locabus .notice h2 span,
#service.locabus .price h2 span,
#service.locabus .association h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#service.locabus .notice .graybox,
#service.locabus .price .graybox,
#service.locabus .association .graybox {
	background:#eee;
	padding:30px 80px;
	margin-top:1em;
}

#service.locabus .notice .graybox h3,
#service.locabus .association .graybox h3 {
	color:#d71a28;
	font-size:1.42em;
	font-weight:bold;
	margin-top:1em;
}

#service.locabus .notice .graybox h3:before,
#service.locabus .association .graybox h3:before {
	content:'';
	width:22px;
	height:22px;
	border-radius:5em;
	background:#d71a28;
	display:inline-block;
	vertical-align:middle;
	margin-right:.5em;
}

#service.locabus .association .graybox p span {
	font-size:1.85em;
	font-weight:bold;
	color:#d71a28;
	display:block;
	margin-bottom:1em;
}

#service.locabus .association .graybox .link {
	position:relative;
	width:450px;
	text-align:center;
	padding:2em 0;
	margin-top:1em;
}

#service.locabus .association .graybox .link .button {
	margin-top:1em;
}

#service.locabus .association .graybox .link .brackets {
	height:100%;
	top:0;
}

#service.locabus .association .graybox .link .brackets:first-of-type {
	left:0;
}

#service.locabus .association .graybox .link .brackets:last-of-type {
	right:0;
}

/*------------------------------------------------------------------------------------------------
  company
--------------------------------------------------------------------------------------------------*/
#company .greeting {
	background:#d71a28;
	color:#fff;
	padding:60px 0;
}

#company .greeting .container {
	width:960px;
}

#company .greeting h2 {
	color:#282828;
	margin-left:10px;
}

#company .greeting h2 span {
	color:#fff;
	margin-right:.2em;
}

#company .greeting .container > div {
	display:flex;
	justify-content:space-between;
	margin:30px 0 0 10px;
}

#company .greeting .image {
	position:relative;
	align-self:start;
}

#company .greeting .image::before,
#company .greeting .image::after {
	content:'';
	width:55px;
	height:55px;
	position:absolute;
}

#company .greeting .image::before {
	border-left:solid 3px #fff;
	border-top:solid 3px #fff;
	left:-10px;
	top:-10px;
}

#company .greeting .image::after {
	border-right:solid 3px #fff;
	border-bottom:solid 3px #fff;
	right:-10px;
	bottom:-10px;
}

#company .greeting p {
	width:410px;
}

#company .greeting p span {
	display:block;
	text-align:right;
	font-size:1.42em;
	font-weight:bold;
}

#company .outline {
	padding:90px 0 60px;
	background:url(../image/bg-logo.png) no-repeat left -90px top -20px / auto 100%;
}

#company .outline .container,
#company .history .container {
	background:#eee;
	padding-bottom:60px;
}

#company .outline h2,
#company .history h2 {
	text-align:right;
	transform:translateY(-2.25em);
}

#company .history h2 {
	text-align:left;
	margin-left:70px;
}

#company .outline h2 span,
#company .history h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#company .outline table,
#company .history .container > table {
	margin:0 20px;
}

#company .outline th,
#company .history th {
	font-weight:bold;
	text-align:left;
	vertical-align:top;
	padding:.5em 2em;
}

#company .history table tbody tr th ~ td {
	width: 43.5%;
}

#company .outline td,
#company .history td {
	border-left:solid 1px #fff;
	padding:.5em 1em;
	vertical-align:top;
}

#company .outline td span.pc {
display: inline-block;
}


#company .history {
	padding:2.25em 0 60px;
}

#company .history td td {
	border-left:none;
	padding: 0 0 .5em 0;
}

#company .history td td:first-child {
	text-align:right;
	padding-right:1em;
	white-space: nowrap;
}

#company .office {
	background:#d71a28;
	color:#fff;
	padding:60px 0;
}

#company .office h2 {
	text-align:center;
	color:#000;
}

#company .office h2 span {
	color:#fff;
	margin-right:.2em;
}

#company .office .container > div {
	display:flex;
	justify-content:space-between;
	margin:60px 44px 0 70px;
}

@media all and (min-width: 769px) {
	#company .office .container div div:first-child {
		border-right:solid 2px;
		padding-right:20px;
	}
}

#company .office h3 {
	font-size:1.71em;
	font-weight:bold;
}

#company .office p {
	font-size:1.42em;
}

#company .office p span {
	font-weight:bold;
	display:block;
}

#company .office h4 {
	font-size:2.14em;
	font-weight:bold;
	border-bottom:solid 2px;
	margin-top:1em;
}

#company .office iframe:not(:first-of-type) {
	margin-top:2em;
}

#company .area {
	padding:60px 0;
}

#company .area h2 {
	text-align:center;
	color:#000;
}

#company .area h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#company .area .container > div {
	display:flex;
	justify-content:space-between;
	align-items:flex-end;
	margin-top:1em;
}

#company .area .container div div:last-child {
	margin-bottom:70px;
}

#company .area p {
	margin-top:1em;
	line-height:2;
}

#company .area p .bold {
	font-size:1.42em;
	font-weight:bold;
	display:block;
}

#company .area p .color {
	width:18px;
	height:18px;
	display:inline-block;
	vertical-align:middle;
	margin-right:5px;
}

#company .area p .red {
	background:#d71a28;
}

#company .area p .pink {
	background:#e46e77;
}

#company .group h2 {
	margin-bottom:1em;
}

#company .group h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#company .group p {
	margin-top:.5em;
}

#company .group p span {
	text-decoration:underline;
}

#company .safety,
#company .environment {
	padding:60px 0;
}

#company .safety .container,
#company .environment .container {
	background:#fff;
	position:relative;
	width:940px;
}

#company .safety h2 {
	text-align:right;
	transform:translateY(-2.25em);
	margin-right:70px;
}

#company .environment h2 {
	transform:translateY(-2.25em);
	margin-left:70px;
}

#company .safety h2 span,
#company .environment h2 span {
	color:#d71a28;
	margin-right:.2em;
}

#company .safety .container > div,
#company .environment .container > div {
	display:flex;
	justify-content:space-between;
	padding:0 50px 30px;
}

#company .safety .container > div > figure {
	display: flex;
	align-items: center;
	justify-content: center;
	padding-right: 50px;
	flex: 1;
}

#company .safety .container div div:last-child,
#company .environment .container div div:last-child {
	width:560px;
}

#company .safety p:first-child,
#company .environment p:first-child {
	font-size:1.42em;
	font-weight:bold;
}

#company .safety p:first-child span,
#company .environment p:first-child span {
	display:block;
	background:#f2727b;
	padding-left:10px;
	margin-left:-10px;
}

#company .safety p:last-child,
#company .environment p:last-child {
	margin-top:1em;
}

#company .safety p + p {
	margin-top: 1em;
}

#company .safety .__bt {
	margin-top: 25px;
	width: fit-content !important;
}

#company .safety p:last-child span,
#company .environment p:last-child span {
	font-weight:bold;
	display:block;
}

#company .safety .brackets,
#company .environment .brackets {
	height:calc(100% + 20px);
	top:-10px;
}

#company .safety .brackets:first-of-type,
#company .environment .brackets:first-of-type {
	left:-10px;
}

#company .safety .brackets:last-of-type,
#company .environment .brackets:last-of-type {
	right:-10px;
}

/*------------------------------------------------------------------------------------------------
  news
--------------------------------------------------------------------------------------------------*/
#news .bg-pattern {
	padding:60px 0;
}

#news:not(.detail) .container {
	width:960px;
}

#news .categories {
	display:flex;
}

#news .categories a {
	background:#d71a28;
	color:#fff;
	font-weight:bold;
	width:110px;
	text-align:center;
	padding:.5em 0;
	margin-right:50px;
}

#news .posts {
	margin:0 10px;
}

#news .posts li {
	display:flex;
	justify-content:space-between;
	padding:40px 0;
	border-bottom:solid 2px #e8351d;
}

#news .posts li div:first-child {
	width:240px;
}

#news .posts li div img {
	max-width:100%;
	height:auto;
	display:block;
	margin:0 auto;
}

#news .posts li div:last-child {
	width:640px;
}

#news .category {
	background:#d71a28;
	color:#fff;
	font-weight:bold;
	display:inline-block;
	width:100px;
	text-align:center;
	margin-bottom:1em;
}

#news .date {
	display:inline-block;
	font-size:1.42em;
	font-weight:bold;
	margin-left:1em;
}

#news .title {
	font-size:1.42em;
	font-weight:bold;
	text-overflow:ellipsis;
	white-space:nowrap;
	overflow:hidden;
}

#news .posts li .button {
	margin:1em auto 0 0;
}

#news ul.page-numbers {
	display:flex;
	justify-content:center;
	font-size:1.42em;
	font-weight:bold;
	margin-top:60px;
}

#news ul.page-numbers li {
	margin:0 20px;
}

#news ul.page-numbers li a {
	color:#d71a28;
}

#news ul.page-numbers li span {
	color:#bfbfbf;
}

#news.detail > div {
	background:#eee;
	padding:60px 0;
}

#news.detail .bg-pattern {
	background-color:#fff;
	padding:60px;
}

#news.detail .bg-none {
	background:#fff;
	padding:40px 70px;
	display:flex;
	justify-content:space-between;
}

#news.detail .post-content {
	width:560px;
}

#news.detail .category {
	margin-bottom:0;
}

#news.detail .date {
	font-size:inherit;
	display:inline;
	margin-right:3em;
}

#news.detail .title {
	display:inline;
	white-space:normal;
	overflow:auto;
}

#news.detail .post-content div {
	margin-top:2em;
}

#news.detail .post-content div a {
display: inline-block;
}

#news.detail .post-content img {
	max-width:100%;
	height:auto;
}

#news.detail .post-content p {
	margin-top:1em;
}

#news.detail .post-content .pager {
	display:flex;
	justify-content:center;
}

#news.detail .post-content .pager .button {
	width:124px;
	height:24px;
	margin:0 20px;
	padding:0;
	font-size:.85em;
}

#news.detail .post-content .pager .button::after {
	width:5px;
	height:6px;
}

#news.detail .post-content .pager .button:nth-child(1)::after {
	left:1em;
	right:auto;
	transform:translateY(-50%) rotate(180deg);
}

#news.detail .post-content .pager .button:nth-child(2)::after {
	display:none;
}

#news.detail .post-content .pager .blank {
	width:125px;
}

#news.detail .sidebar {
	width:180px;
	margin:0 10px;
}

#news.detail .date-archive {
	margin-top:60px;
}

#news.detail .sidebar span {
	background:#d71a28;
	color:#fff;
	font-weight:bold;
	text-align:center;
	display:block;
	padding:.2em 0;
}

#news.detail .sidebar li {
	border-bottom:dashed 1px #000;
}

#news.detail .sidebar li a {
	padding:.5em 1em;
	font-weight:bold;
}

#news.detail .sidebar li a::after {
	content:'＞';
	float:right;
}

/*------------------------------------------------------------------------------------------------
  contact
--------------------------------------------------------------------------------------------------*/
#contact .content {
	background-color:#eee;
	padding:60px 0;
}

#contact.index p {
	text-align:center;
}

#contact.index a {
	width:500px;
	padding:.5em 4em;
	margin:45px auto 0;
	border:none;
	font-size:1.28em;
	border-radius:5em;
	display:flex;
	justify-content:space-between;
	align-items:center;
}

#contact:not(.index) .container {
	background:#fff;
	width:960px;
}

#contact h2 {
	font-size:1.42em;
	text-align:center;
	transform:translateY(-.5em);
}

#contact form {
	padding:40px 70px;
}

#contact form p {
	text-align:center;
}

#contact form > p {
	display:none;
}

#contact .mw_wp_form_input form p.input,
#contact .mw_wp_form_confirm form p.confirm {
	display:block;
}

#contact form p span {
	color:#d71a28;
}

#contact form table {
	margin:30px auto;
	width:100%;
}

#contact.other form table {
	width:640px;
}

#contact form caption {
	text-align:left;
	color:#d71a28;
}

#contact form th {
	width:13em;
	padding:.5em 10px;
	font-weight:normal;
	text-align:left;
	vertical-align:top;
}

#contact form th.required::after {
	content:'*';
	color:#d71a28;
}

#contact form td {
	padding:.5em 0;
}

#contact form td table {
	margin:0;
}

#contact form td th {
	width:auto;
	padding:.5em 1em .5em 0;
	white-space:nowrap;
}

#contact form label {
	display:inline-block;
	margin-right:1em;
}

#contact form label input[type="radio"],
#contact form label input[type="checkbox"] {
	display:none;
}

#contact form label input[type="radio"] + span::before,
#contact form label input[type="checkbox"] + span::before {
	content:'';
	display:inline-block;
	width:12px;
	height:12px;
	border:solid 1px #000;
	vertical-align:middle;
	margin:5px;
}

#contact form label input[type="radio"] + span::before,
#contact form .privacy label input[type="checkbox"] + span::before {
	border-radius:50%;
	border:solid 2px #000;
}

#contact form  label input[type="radio"]:checked + span::before,
#contact form .privacy label input[type="checkbox"]:checked + span::before {
	background:radial-gradient(black 49%, transparent 50%);
}

#contact form td label input[type="checkbox"]:checked + span::before {
	content:'✔';
	line-height:12px;
}

#contact form input[type="text"],
#contact form select,
#contact form textarea {
	border:solid 2px #000;
	padding:.2em .5em;
	font:inherit;
	border-radius:0;
}

#contact form .schedule input,
#contact form .schedule select {
	margin:.5em 0;
}

#contact form td a {
	color:#d71a28;
	text-decoration:underline;
}

#contact form .destination input {
	margin-top:2px;
}

#contact form h3 {
	font-size:1.28em;
	font-weight:bold;
	margin-left:10px;
}

#contact form .questionnaire th {
	width:10em;
}

#contact .privacy h3 {
	text-align:center;
}

#contact .mw_wp_form_input .privacy h3 br {
	display:none;
}

#contact .privacy div {
	width:660px;
	height:156px;
	border:solid 2px #000;
	padding:0 1em 1em;
	overflow-y:scroll;
	margin:2em auto;
}

#contact .privacy div p {
	margin-top:1em;
	text-align:left;
}

#contact .privacy label {
	display:block;
	text-align:center;
}

#contact .privacy .error {
	text-align:center;
}

#contact .buttonwrap {
	display:flex;
	justify-content:center;
	margin-top:2em;
}

#contact .button {
	width:290px;
	border-radius:5em;
	margin:0 20px;
	font-family:inherit;
	cursor:pointer;
}

#contact button[name="submitBack"]::after {
	left:3em;
	right:auto;
	transform:translateY(-50%) rotate(180deg);
}

#contact .mw_wp_form_confirm form td br {
	display:none;
}

#contact .mw_wp_form_confirm form td th {
	width:7em;
}

#contact .mw_wp_form_confirm form span.input {
	display:none;
}

#contact .mw_wp_form_confirm form table:nth-of-type(2) caption {
	display:none;
}

#contact.other .mw_wp_form_confirm form .privacy {
	width:640px;
	margin:0 auto;
}

#contact .mw_wp_form_confirm form .privacy h3 {
	font-size:1em;
	font-weight:normal;
	margin-left:1em;
	text-align:left;
	width:170px;
	display:inline-block;
}

#contact .mw_wp_form_confirm form .privacy p,
#contact .mw_wp_form_confirm form .privacy div {
	display:none;
}

#contact .mw_wp_form_complete {
	padding:60px 0;
	text-align:center;
}

#contact .mw_wp_form_complete .button {
	margin:60px auto 0;
}

/*MW WP Form*/
.mw_wp_form .horizontal-item + .horizontal-item {
	margin:0!important;
}

