@charset "utf-8";
body {
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	font-size: 14px;
}
.headerLogo{
	width: 355px;
}
.mainBox_bg img,.mainBox_bg img a{
outline: none;
border-style: none;
}
.mainBox_bg{
/*
margin-top:-15px !important;
*/
padding-bottom: 22px;
background: url(../images/main_bg.jpg) repeat-x 0 0;
}
.mainBox{
margin:0;
background: url(../images/main_img.jpg) no-repeat 50% 0 !important;
}
.mainBox_bg .mainBox .footstepBox {
	padding-top: 10px;
	color: #fff;
}
.footstepBox a,
.footstepBox a:link,
.footstepBox a:visited {
	color: #fff;
}
.mainImg{
margin: 0 auto;
width: 902px;
height:505px;
}
.mainImg h1{
padding:50px 0 0 0;
}
.mainImg .txt{
width:370px;
margin:25px 0 0 0;
font-size:100%;
line-height:170%;
color:#fff;
}
.mainImg .logo{
margin:40px 0 0 0;
}
.mainBtn{
margin: 0 auto;
padding:0;
width: 902px;
text-align:center;
clear:both;
}
.mainBtn ul{
margin:0;
padding:0;
list-style:none;
}
.mainBtn li{
margin:0;
padding:0 10px;
display:inline;
background-image: url(/wp-content/uploads/2021/03/arrow-1.png) no-repeat;
}

.about{
	width: 850px;
	margin: 30px auto 80px;
	letter-spacing: 0.1em;
}
.about h2{
	font-family: "游ゴシック体", YuGothic, "游ゴシック", "Yu Gothic", "メイリオ", "Hiragino Kaku Gothic ProN", "Hiragino Sans", sans-serif;
	font-size: 30px;
	text-align: center;
	color: #063554;
}
.about p{
	text-align: center;
	margin-bottom: 40px;
	font-size: 15px;
	line-height: 1.4;
}
.feat01_box,
.feat02_box,
.feat03_box,
.feat04_box,
.feat05_box{
background: url(../images/feat_bg01.jpg) no-repeat 0 100% ;
padding-bottom: 53px;
width: 850px;
margin: 0 auto 20px;
clear:both;
}
.feat01_box{
margin-top:45px;
}
.feat06_box{
background: url(../images/feat_bg02.jpg) no-repeat 0 100% ;
padding-bottom: 73px;
width: 850px;
margin: 0 auto;
margin-bottom: 40px;
clear:both;
}
.feat01_box:after,
.feat02_box:after,
.feat03_box:after,
.feat04_box:after,
.feat05_box:after,
.feat06_box:after{
content:".";
display:block;
font-size:0;
visibility:hidden;
height:0;
clear:both;
}

.feat01_box h2,
.feat02_box h2,
.feat03_box h2,
.feat04_box h2,
.feat05_box h2,
.feat06_box h2{
margin:0 0 0 15px;
padding:0;
clear:both;
}
.feat01_box h3{
margin:30px 0 0 0;
padding:0;
font-size:140%;  
line-height:160%; 
color:#003557;
clear:both;
}
.feat01_box .inner01{
margin:0;
padding:20px 0 0 0;
clear:both;
}
.feat01_box .inner01:after{
content:".";
display:block;
font-size:0;
visibility:hidden;
height:0;
clear:both;
}
.feat01_box .inner01 .left{
margin:0;
padding:0;
width:390px;
line-height:160%;
float:left;
}
.feat01_box .inner01 .right{
margin:0;
padding:0;
width:427px;
float:right;
}
.feat01_box .inner02{
margin:0;
padding:20px 0 0 0;
clear:both;
}
.feat01_box .inner02:after{
content:".";
display:block;
font-size:0;   
visibility:hidden;
height:0;
clear:both;
}
.feat01_box .inner02 .left{
margin:0;
padding:0;
width:330px;
float:left;
}
.feat01_box .inner02 .right{
margin:0;
padding:0;
width:500px;
float:right;
}
.feat01_box .inner02 .note{
margin:0;
padding:5px 0 0 0;
text-align:right;
font-size:80%;
clear:both;
}

.feat02_box h3{
margin:30px 0 0 0;
padding:0 5px;
font-size:140%; 
line-height:140%;  
color:#003557;
clear:both;
}
.feat02_box p{
margin:0;
padding:20px 5px 0 5px;
line-height:160%;
clear:both;
}
.feat02_box ul{
margin:0 5px;
padding:20px 0 0 0;
list-style:none;
width:840px;
clear:both;
}
.feat02_box ul:after{
content:".";
display:block;
font-size:0;
visibility:hidden;
height:0;
clear:both;
}
.feat02_box li{
margin:0;
padding:0 0 0 40px;
float:left;
background: url(../images/feat_arrow01.jpg)no-repeat 10px 50%;
width:180px;
}
.feat02_box li.left{
margin:0;
padding:0;
float:left;
}

.feat03_box .left{
margin:0;
padding:0 5px;
width:445px;
float:left;
}
.feat03_box .right{
margin:0;
padding:0;
width:371px;
float:right;
}
.feat03_box h3{
margin:30px 0 0 0;
padding:0;
font-size:140%; 
line-height:140%;  
color:#003557;
clear:both;
}
.feat03_box p{
margin:0;
padding:20px 0 0 0;
line-height:160%;
clear:both;
}

.feat04_box h3{
margin:30px 0 0 0;
padding:0 5px;
font-size:140%;   
color:#003557;
clear:both;
}
.feat04_box p{
margin:0;
padding:20px 5px 0 5px;
line-height:160%;
clear:both;
}
.feat04_box .img{
margin:0;
padding:20px 5px 0 5px;
clear:both;
}

.feat05_box .left{
margin:0;
padding:0 0 0 5px;
width:445px;
float:left;
}
.feat05_box .right{
margin:0;
padding:0 5px 0 0;
width:358px;
float:right;
}
.feat05_box h3{
margin:30px 0 0 0;
padding:0;
font-size:140%;
line-height:160%;   
color:#003557;
clear:both;
}
.feat05_box p{
margin:0;
padding:20px 0 0 0;
line-height:160%;
clear:both;
}

.feat06_box .faq {
	display: flex;
	flex-direction: column;
	gap: 12px;
	margin-top: 32px;
}
.feat06_box dl {
	margin: 0 0 0 24px;
}
.feat06_box dl dt {
	position: relative;
	padding: 0 32px;
	color: #003557;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.2;
	cursor: pointer;
}
.feat06_box dl dt::before {
	content: 'Q.';
	position: absolute;
	top: 50%;
	left: 8px;
	transform: translateY(-50%);
	font-weight: bold;
	color: #003557;
}

.feat06_box dl dd {
	position: relative;
	padding: 0 32px;
	margin: 12px 0;
	line-height: 1.7;
}
.feat06_box dl dd::before {
	content: 'A.';
	position: absolute;
	top: -2px;
	left: 8px;
	font-size: 16px;
	font-weight: bold;
	color: #003557;
}
.feat06_box dl.open dd {
	display: block;
}
.feat06_box dl.open dt span::after {
	transform: translate(-50%, -50%) rotate(90deg);
	opacity: 0;
}

.case_box{
margin:0 auto 45px auto;
padding:0 0 2px 0;
background:#F2E8B5;
width: 840px;
clear:both;
}
.case01_box,
.case02_box,
.case03_box,
.case04_box,
.case05_box{
margin:13px auto;
padding:0;
width: 808px;
background:url(../images/case_bg02.jpg) repeat-y 0 0;
clear:both;
}

.case_box .inner01{
margin:0;
padding:0;
background:url(../images/case_bg01.jpg) no-repeat 0 0;
clear:both;
}
.case_box .inner02{
margin:0;
padding:25px;
background:url(../images/case_bg03.jpg) no-repeat 0 100%;
width: 758px;
clear:both;
}

.case_box .inner02:after{
content:".";
display:block;
font-size:0;
visibility:hidden;
height:0;
clear:both;
}
.case_box .left h3{
margin:0;
padding:0;
clear:both;
}
.case_box .left p{
margin:10px 0 0 0;
padding:0;
line-height:160%;
clear:both;
}
.case_box .left ul{
margin:10px 0 0 0;
padding:0;
list-style:none;
clear:both;
}
.case_box .left li{
margin:0;
padding:0;
display:inline;
}
.case_box .left li a{
margin:0;
padding:0 10px 0 15px;
background:url(../images/arrow02.jpg) no-repeat 0 50%;
}
.case01_box .left,
.case05_box .left{
margin:0;
padding:0;
width:445px;
float:left;
}
.case01_box .right,
.case05_box .right{
margin:0;
padding:0;
width:295px;
float:right;
}
.case02_box .left,
.case03_box .left{
margin:0;
padding:0;
width:425px;
float:left;
}
.case02_box .right,
.case03_box .right{
margin:0;
padding:0;
width:314px;
float:right;
}
.case04_box .left{
margin:0;
padding:0;
width:405px;
float:left;
}
.case04_box .right{
margin:0;
padding:0;
width:335px;
float:right;
}
.case_box .img01{
margin:0;
padding:0;
clear:both;
}
.case_box .img02{
margin:15px 0 0 0;
padding:0;
clear:both;
}

.gallery_box{
margin:25px auto 0 auto;
padding:0;
width:840px;
clear:both;
}
.gallery_box h2{
margin:0;
padding:10px 0;
border-top:solid 3px #34577F;
background:url(../images/dot01.gif) repeat-x 0 100%;
font-size:130%;
clear:both;
}
.gallery_box ul{
margin:0;
padding:30px 0 0 0;
list-style:none;
width:840px;
clear:both;
}
.gallery_box ul:after{
content:".";
display:block;
font-size:0;
visibility:hidden;
height:0;
clear:both;
}
.gallery_box li{
margin:0;
padding:0 0 45px 30px;
width:260px;
float:left;
}
.gallery_box li.left{
margin:0;
padding:0 0 45px 0;
width:260px;
float:left;
}
.gallery_box dl{
margin:0;
padding:0;
}
.gallery_box dt{
margin:0;
padding:0;
}
.gallery_box dd{
margin:0;
padding:5px 0 0 0;
}
.gallery_box dd a{
margin:0;
padding:0 0 0 10px;
background:url(../images/arrow03.gif) no-repeat 0 0.3em;
}

.relation_box{
margin:20px auto 45px auto;
padding:0;
width:840px;
clear:both;
}
.relation_box:after{
content:".";
display:block;
font-size:0;
visibility:hidden;
height:0;
clear:both;
}
.relation_box .left{
margin:15px 0 0 0;
padding:0 0 20px 0;
width:408px;
border:solid 1px #CCC;
float:left;
}
.relation_box .right{
margin:15px 0 0 0;
padding:0 0 20px 0;
width:408px;
border:solid 1px #CCC;
float:right;
}

.relation_box h2{
margin:0;
padding:0;
clear:both;
}

.relation_box .img{
margin:0;
padding:10px 0;
text-align:center;
clear:both;
}
.relation_box ul{
margin:0 0 0 20px;
padding:0;
list-style:none;
clear:both;
}
.relation_box p{
margin:5px 0 0 0;
padding:0 20px 0 0;
text-align:right;
clear:both;
}
.relation_box li{
margin:5px 0 0 0;
padding:0 0 0 20px;
background:url(../images/icon01.jpg) no-repeat 0 0;
clear:both;
}
.relation_box .btn02,
.relation_box .btn03{
width:175px;
height:32px;
display:block;
margin-top:5px;
}
.relation_box .btn02{
float:left;
margin-left:20px;
}
.relation_box .btn03{
float:right;
margin-right:20px;
}


.call{
width: 692px;
height: 97px;
background: url(../images/call_bg.jpg) no-repeat left top;
margin: 0 auto;
padding-bottom: 23px;
overflow: hidedn;
*zoom:1;
clear:both;
}
.call .call_info{
padding: 15px 0 0 142px;
width: 257px;
text-align: center;
float:left;
}
.call .call_info p{
padding: 0;
margin: 0;
margin-bottom: 5px;
width: 257px
}
.call .btn_call{
float: right;
margin: 25px 25px 0 0;
_margin-right: 12px!important;
}
.pagetopBtn01{
margin:30px auto 0 auto;
padding:0;
width: 850px;
clear:both;
}
.contents{
text-align:left;
}
.contents img,.contents img a{
outline: none;
border-style: none;
}

@media screen and (max-width: 900px) and (min-width: 768px) {
	.mainImg {
		width: auto;
	}
	.mainBox_bg {
		padding: 0 15px 22px;
	}
	.mainBox_bg .mainBox h1 {
		width: auto;
	}
	.mainBtn {
		width: auto;
	}
	.mainBtn ul {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr 1fr;
		gap: 10px;
	}
	.mainBtn li {
		width: auto;
		padding: 0;
	}
	.mainBtn li img {
		width: 100%;
		height: auto;
	}
	.about {
		width: auto;
		padding: 0 15px;
	}
	.about > div img {
		width: 100%;
		height: auto;
	}
	.feat01_box,
	.feat02_box,
	.feat03_box,
	.feat04_box,
	.feat05_box {
		width: auto;
		padding: 0 15px 53px;
	}
	.feat01_box .inner01 .left,
	.feat01_box .inner01 .right {
		width: 48%;
	}
	.feat01_box .inner01 .right img,
	.feat01_box .inner02 .left img,
	.feat01_box .inner02 .right img {
		width: 100%;
		height: auto;
	}
	.feat01_box .inner02 .left {
		width: 40%;
	}
	.feat01_box .inner02 .right {
		width: 60%;
	}
	.pagetopBtn01 {
		width: auto;
	}
	.feat02_box ul {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr 1fr;
		column-gap: 15px;
		width: auto;
	}
	.feat02_box li {
		position: relative;
		float: none;
		width: auto;
		padding: 0;
		background: none;
	}
	.feat02_box li img {
		width: 100%;
		height: auto;
	}
	.feat02_box li.left {
		float: none;
	}
	.feat02_box li:not(li.left):before {
		content: '';
		position: absolute;
		top: 40%;
		left: -12px;
		width: 10px;
		height: 20px;
		background: url(../images/feat_arrow01.jpg) no-repeat 0 0 / 100% auto;
	}
	.feat03_box .left,
	.feat05_box .left {
		width: 55%;
	}
	.feat03_box .right,
	.feat05_box .right {
		width: 40%;
	}
	.feat03_box .right img,
	.feat05_box .right img {
		width: 100%;
		height: auto;
	}
	.feat04_box .img img {
		width: 100%;
		height: auto;
	}
	.case_box {
		width: auto;
	}
	.case_box h2 img {
		width: 100%;
	}
	.case01_box, .case02_box, .case03_box, .case04_box, .case05_box {
		width: auto;
		margin: 10px;
	}
	.case_box .inner02 {
		width: auto;
	}
	.case01_box .left,
	.case02_box .left,
	.case03_box .left,
	.case04_box .left,
	.case05_box .left {
		width: 58%;
	}
	.case01_box .right,
	.case02_box .right,
	.case03_box .right,
	.case04_box .right,
	.case05_box .right {
		width: 40%;
	}
	.case01_box .right img,
	.case02_box .right img,
	.case03_box .right img,
	.case04_box .right img,
	.case05_box .right img {
		width: 100%;
		height: auto;
	}
	.gallery_box {
		width: auto;
		padding: 0 15px;
	}
	.gallery_box ul {
		display: grid;
		grid-template-columns: 1fr 1fr 1fr;
		gap: 10px;
		width: auto;
	}
	.gallery_box li,
	.gallery_box li.left {
		width: auto;
		float: none;
		padding: 0;
	}
	.gallery_box li img {
		width: 100%;
		height: auto;
	}
	.relation_box {
		width: auto;
		padding: 0 15px;
	}
	.relation_box .left,
	.relation_box .right {
		width: 48%;
	}
	.relation_box h2 img {
		width: 100%;
		height: auto;
	}
	.relation_box .btn02 {
		float: none;
	}
	.relation_box .btn03 {
		float: none;
		margin: 5px 0 0 20px;
	}
	.relation_box p {
		text-align: left;
		padding: 0 0 0 20px;
	}
}

@media screen and (max-width: 767.9px) {
	.mainBox_bg .mainBox .footstepBox {
		width: auto;
		margin: 0 25px;
	}
	.mainImg {
		width: auto;
		height: 850px;
	}
	.mainBox_bg {
		height: 1100px;
		padding-bottom: 0;
	}
	.mainBox_bg .mainBox {
		position: relative;
		background-position: 80% bottom !important;
		background-size: 210% auto !important;
	}
	.mainBox_bg .mainBox h1 {
		width: 80%;
		padding: 40px 0 0 0;
	}
	.mainBox_bg .mainBox h1 img {
		width: 100%;
		height: auto;
	}
	.mainImg .txt {
    width: 90%;
    margin: 25px auto 0;
    line-height: 180%;
	}
	.mainImg .logo {
    width: 90%;
    margin: 25px auto 0;
	}
	.mainBtn {
		position: absolute;
		width: auto;
		margin-top: 20px;
	}
	.mainBtn li {
		display: inline-block;
		width: calc(100% / 3 - 20px);
		padding: 0;
	}
	.mainBtn li img {
		width: 100%;
		height: auto;
	}
	.contents {
		padding: 0 10px;
	}
	.about {
		width: auto;
	}
	.about > div img {
		width: 100%;
		height: auto;
	}
	.feat01_box,
	.feat02_box,
	.feat03_box,
	.feat04_box,
	.feat06_box {
		width: auto;
	}
	.feat01_box h2,
	.feat02_box h2,
	.feat03_box h2,
	.feat04_box h2,
	.feat05_box h2,
	.feat06_box h2 {
		width: 85%;
		margin: 0;
	}
	.feat02_box h2 {
		width: 75%;
	}
	.feat03_box h2 {
		width: 65%;
	}
	.feat01_box h2 img,
	.feat02_box h2 img,
	.feat03_box h2 img,
	.feat04_box h2 img,
	.feat05_box h2 img,
	.feat06_box h2 img {
		width: 100%;
		height: auto;
	}
	.feat01_box .inner01 .left,
	.feat01_box .inner01 .right,
	.feat01_box .inner02 .left,
	.feat01_box .inner02 .right {
		float: none;
		width: auto;
	}
	.feat01_box .inner02 .left img,
	.feat01_box .inner01 .right img,
	.feat01_box .inner02 .right img {
		width: 100%;
		height: auto;
	}
	.feat01_box .inner02 .right {
		margin-top: 10px;
	}
	.feat01_box .inner02 .note {
		text-align: left;
	}
	.feat02_box ul {
		display: grid;
		grid-template-columns: 1fr 1fr;
		row-gap: 15px;
		width: auto;
	}
	.feat02_box li {
		float: none;
		width: auto;
		padding: 0 0 0 20px;
		background: url(../images/feat_arrow01.jpg) no-repeat 5px 40% / 12px auto;
	}
	.feat02_box li.left {
		float: none;
	}
	.feat02_box li img {
		width: 100%;
		height: auto;
	}
	.feat02_box p:nth-of-type(2) {
		padding: 0 5px;
		font-size: 12px;
	}
	.feat03_box .left,
	.feat03_box .right {
		width: auto;
		float: none;
	}
	.feat03_box .right img {
		width: 100%;
		height: auto;
	}
	.feat04_box h2 img,
	.feat05_box h2 img,
	.feat04_box .img img {
		width: 100%;
		height: auto;
	}
	.feat05_box {
		width: auto;
	}
	.feat05_box .left,
	.feat05_box .right {
		width: auto;
		float: none;
	}
	.feat05_box .right {
		margin-top: 10px;
	}
	.feat05_box .right img {
		width: 100%;
		height: auto;
	}
	.feat06_box dl {
		margin: 0;
	}
	.feat06_box dl dt {
		padding: 0 0 0 32px;
	}
	.feat06_box dl dd {
		padding: 0 0 0 32px;
	}
	.call {
		display: none;
	}
	.case_box {
		width: auto;
	}
	.case_box h2 img {
		width: 100%;
		height: auto;
	}
	.case01_box, .case02_box, .case03_box, .case04_box, .case05_box, .case_box .inner02 {
		width: auto;
	}
	.case01_box, .case02_box, .case03_box, .case04_box, .case05_box {
		margin: 10px;
	}
	.case01_box .left, .case05_box .left,
	.case01_box .right, .case05_box .right,
	.case02_box .left, .case03_box .left,
	.case02_box .right, .case03_box .right,
	.case04_box .left, .case04_box .right {
		width: auto;
		float: none;
	}
	.case02_box .right img, .case03_box .right img, .case04_box .right img {
		width: 100%;
		height: auto;
	}
	.case_box .left h3 img {
		width: 100%;
		height: auto;
	}
	.gallery_box,
	.relation_box {
		width: auto;
	}
	.gallery_box ul {
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 15px;
		width: auto;
	}
	.gallery_box li,
	.gallery_box li.left {
		width: auto;
		float: none;
		padding: 0;
	}
	.gallery_box li img {
		width: 100%;
		height: auto;
	}
	.relation_box h2 img {
		width: 100%;
		height: auto;
	}
	.relation_box .left,
	.relation_box .right {
		width: auto;
		float: none;
	}
	.relation_box .btn02,
	.relation_box .btn03 {
		float: none;
	}
	.relation_box .btn03 {
		margin: 5px 0 0 20px;
	}
	.relation_box p {
		text-align: left;
		padding: 0 0 0 20px;
	}
	.pagetopBtn01 {
		width: auto;
	}
}