@charset "utf-8";
body {
	margin: 0;
	padding: 0;
    background-image: url(../img/bg001.png);
	background-color: #f9f9f9; /* 全体の背景色 */
	background-size:auto;
    background-position: top;
	color: #666666; /* 全体の文字色 */
	font-size: 100%; /* 全体の文字サイズ */
	font-family:"ヒラギノ角ゴ Pro", "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","Hiragino Kaku Gothic ProN","游ゴシック", sans-serif;
}
header {
	position: absolute;
	top: 0;
	left: 0;
	z-index: 100;
	width: 100%;
}
.headA {
	display: inline-block;
	padding-left: 20px;
	padding-right: 20px;
	text-decoration: none;
    background-color: #f9f9f9;
}
.headB ul {
    display: flex;
	margin: 0 auto;
	padding: 0;
	list-style: none;
}
.headB li {
    display: block;
    flex: 1 0 auto;
    z-index: 99;
}
.headB a {
	display: block;
    padding-top: 4px;
    padding-bottom: 4px;
	padding-left: 20px;
    padding-right: 20px;
	color: inherit;
	font-size: 16px;
	text-decoration: none;
}
.headB a:hover {
	background-color: rgba(0,0,0,0.3);
}
.headB ul li ul {
    display: none;
    margin: 0;
    padding: 0;
    position: absolute;
    background-color: #dddddd;
}
.headB ul li:hover ul {
    display: block;
}
.headB ul li ul li {
    border-top: 1px solid #fff;
    border-left: 0;
    text-align: left;
}
.headB ul li ul li:hover {
    background-color: rgba(0,0,0,0.3);
}
.headlogo {
    background-color: #f9f9f9;
}
footer {
	color: #fff;
	background-color: #3333cc;
}
footer .container {
	padding: 40px 20px;
}
.footA {
	margin-bottom: 30px;
}
.footA a {
	color: #fff;
	text-decoration: none;
}
.footA h2 {
	margin-top:0;
	margin-bottom: 10px;
	font-size: 30px;
	letter-spacing: 0.1em;
}
.footA p {
	margin-top: 0;
	margin-bottom: 0;
	font-size: 14px;
}
.footB div {
	margin-bottom: 20px;
}
.footB h3 {
	margin-top: 0;
	margin-bottom: 0px;
	border-bottom: solid 1px currentColor;
	font-size: 14px;
}
.footB ul {
	margin: 0;
	padding: 0;
	list-style: none;
}
.footB a {
	display: block;
	padding: 5px;
	color: inherit;
	font-size: 12px;
	text-decoration: none;
}
.footB a:hover {
	background-color: rgba(0,0,0,0.3);
}
.footC {
	font-size: 12px;
	text-align: center;
}
.ulogo {
    width: 1000px;
    height: 65px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
	padding-left: 20px;
    background-color: #f9f9f9;
}
.toiawase {
    width: 1000px;
    margin-top: 30px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
    text-align: center;
}
.toiawase .container{
    display: flex;
    justify-content: center;
}
.toiawase .toform {
    width: 360px;
    margin-left: auto;
    margin-right: auto;
    color: #ffffff;
    background-color: #3333cc;
    border: solid 2px #3333cc;
    border-radius: 5px;
}
.toiawase .btn {
    padding: 20px;
    font-size: 1.2em;
    font-weight: bold;
}
.toiawase .toform:hover {
    background-color: #ffffff;
}
.toiawase .btn:hover {
    color: #3333cc;
}
.toiawase .mail {
    display: flex;
    align-items: center;
    margin: 10px;
    width: 360px;
    height: 120px;
    background-color: #33cccc;
    border-radius: 8px;
}
.toiawase .phone {
    display: flex;
    align-items: center;
    margin: 10px;
    width: 360px;
    height: 120px;
    background-color: #ff9933;
    border-radius: 8px;
}
.toiawase img {
    margin: 10px;
    width: 75px;
    height: 60px;
}
.toiawase h3 {
    margin: 10px;
    padding: 5px;
    color: #0000ff;
    background-color: #ffffff;
    border-radius: 5px;
}
.toiawase p {
    margin: 20px;
    color: #ffffff;
    font-weight: bold;    
}
.toiawase a {
    color: #ffffff;
    text-decoration: none;
}

/* index.htm */
.conA {
    width: 1000px;
    margin-top: 140px;
    margin-left: auto;
    margin-right: auto;
    overflow: hidden;
}
.conA .swiper-container {
    width: 100%;
    max-width: 800px;
    margin: 0 auto;
    overflow: visible;
}
.conA .swiper-slide-prev {
    opacity: 0.5;
}
.conA .swiper-slide-next {
    opacity: 0.5;
}
.conA h1 {
    text-align: left;
}
.conB {
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
}
.conB h3 {
    margin-left: 20px;
    color: #0000ff;
}
.conB .container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
	padding-top: 30px;
}
.conB .box {
    position: relative;
    margin: 40px;
}
.conB .box h2 {
    position: absolute;
    color: #ffffff;
    transform: translate(-50%,-50%);
	top: 40%;
	left: 50%;
    text-shadow: 2px 2px #000000;
	font-size: 22px;
    z-index: 99;
}
.conB .box .shadow {
    position: absolute;
    top: -4%;
    left: -4%;
    opacity: 50%;
}
.conB .box .shadow :hover {
    opacity: 0%;
}
.conB a {
	text-decoration: none;
}
.conC {
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
    background-color: #eeeeee;
}
.conC .container {
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
	padding-top: 30px;
}
.conC .box {
    width: 400px;
    margin: 10px;
    padding: 3px;
    background-color: #336699;
    border-radius: 5px;
}
.conC h3 {
    margin-left: 20px;
    color: #0000ff;
}
.conC p {
    padding: 10px;
    color: #ffffff;
    font-weight: bold;
}
.conC .link p {
    color: #336699;
    background-color: #ffffff;
    border-radius: 5px;
    margin: 10px;
}
.conC a {
	text-decoration: none;
}
/* 各ページ共通 */
.content {
    width: 1000px;
    margin: 0 auto;
}
.content .container {
	display: flex;
    align-items: flex-end;
	height: 30vh;
	min-height: 300px;
}
.content .title {
    position: relative;
    margin: 30px;
    width:380px;
    height: 90px;
    background-color: #3333cc;
}
.content .title h1 {
    position: absolute;
    color: #ffffff;
    transform: translate(-50%,-50%);
	top: 25%;
	left: 50%;
    text-shadow: 2px 2px #000000;
	font-size: 30px;
    z-index: 99;
}
.content .shadow {
    position: absolute;
    top: -10%;
    left: -4%;
    opacity: 50%;
}
.intro {
    width: 980px;
    margin: 0 auto;
    padding: 10px;
    background-color: #ffffff;
}
.table {
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 50px;
}
.table .bar {
    width: 980px;
    height: 30px;
    padding: 10px;
    color: #ffffff;
    background-color: #3333cc;
    font-weight: bold;
}
.table .text {
    width: 980px;
    padding: 10px;
    color: #333333;
    background-color: #ffffff;
}
/* 事業案内各ページ共通 */
.content2 {
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
}
.content2 .container {
	display: flex;
    align-items: flex-end;
	height: 30vh;
	min-height: 300px;
}
.content2 .title {
    position: relative;
    margin: 50px;
    width:380px;
    height: 90px;
    background-color: #3399ff;
}
.content2 h1 {
    position: absolute;
    color: #ffffff;
    transform: translate(-50%,-50%);
	top: 25%;
	left: 50%;
    text-shadow: 2px 2px #000000;
	font-size: 30px;
    z-index: 99;
}
.content2 .shadow {
    position: absolute;
    top: -10%;
    left: -4%;
    opacity: 40%;
}
.details {
    width: 980px;
    margin: 0 auto;
    padding-top: 50px;
    padding-left: 10px;
    padding-right: 10px;
    background-color: #ffffff;
}
/* kaitai.htm */
.content2 .kai {
    position: absolute;
    color: #35b253;
    transform: translate(-50%,-50%);
	top: -100%;
    text-shadow: 6px 6px 8px #000000;
    font-size: 110px;
    font-weight: bold;
    z-index: 99;    
}
/* iten.htm */
.content2 .hiki {
    position: absolute;
    color: #f01e00;
    transform: translate(-50%,-50%);
	top: -100%;
    text-shadow: 6px 6px 8px #000000;
    font-size: 110px;
    font-weight: bold;
    z-index: 99;    
}
.kouhou .srm {
    color: #f01e00;
    font-size: 40px;
    font-weight: bold;
    text-shadow: 2px 2px 5px #000000;
}
.kouhou .srm2 {
    padding: 5px;
    color: #ffffff;
    font-size: 1.2em;
    font-weight: bold;
    background-color: #ff6600; 
}
.kouhou .srm3 {
    color: #fbb03b;
    font-size: 30px;
    font-weight: bold;
    text-shadow: 2px 2px 5px #000000;
}
.kouhou .dai {
    color: #f01e00;
    font-size: 40px;
    font-weight: bold;
    text-shadow: 2px 2px 5px #000000;
}
.merit h3 {    
    padding: 5px;
    color: #f01e00; 
}
.merit img {
    float: right;
}
.merit :after {
    display: block;
    content: "";
    clear: both;
}
/* kyousei.htm */
.content2 .nao {
    position: absolute;
    color: #2996e2;
    transform: translate(-50%,-50%);
	top: -100%;
    text-shadow: 6px 6px 8px #000000;
    font-size: 110px;
    font-weight: bold;
    z-index: 99;    
}
/* doboku.htm */
.content2 .sou {
    position: absolute;
    color: #ad6200;
    transform: translate(-50%,-50%);
	top: -100%;
    text-shadow: 6px 6px 8px #000000;
    font-size: 110px;
    font-weight: bold;
    z-index: 99;    
}
.details img {
    width: 400px;
}
/* company.htm */
.table img.img1 {
    padding: 5px;
    float: right;
    width: 260px;
}
.table img.img2 {
    padding: 5px;
    float: right;
    width: 400px;
}
.table .map {
    width: 940px;
    padding: 30px;
    text-align: center;
    background-color: #ffffff;
}
.table .maps {
    text-align: center;
}
.table :after {
    display: block;
    content: "";
    clear: both;
}
.table1 {
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
}
.table1 .container {
    display: flex;
    flex-wrap: wrap;
}
.table1 .bar {
    width: 980px;
    height: 30px;
    padding: 10px;
    color: #ffffff;
    background-color: #3333cc;
    font-weight: bold;
}
.table1 .text1 {
    width: 280px;
    padding: 9px;
    color: #333333;
    background-color: #ffffff;
    border: 1px solid;
    border-color: #666666;
    border-top: transparent;
    font-weight: bold;
}
.table1 .text2 {
    width: 680px;
    padding: 9px;
    color: #333333;
    background-color: #ffffff;
    border: 1px solid;
    border-color: #666666;
    border-left:transparent;
    border-top: transparent;
}
/* iso.htm */
.table2 {
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 30px;
    padding-bottom: 30px;
}
.table2 .container {
    display: flex;
    flex-wrap: wrap;
}
.table2 .bar {
    width: 980px;
    height: 30px;
    padding: 10px;
    color: #ffffff;
    background-color: #3333cc;
    font-weight: bold;
}
.table2 .list1 {
    width: 600px;
    display: flex;
    flex-wrap: wrap;
}
.table2 .isop {
    width: 388px;
    padding: 5px;
    background-color: #dcffff;
    border: 1px solid;
    border-color: #666666;
    border-top: transparent;
    text-align: center;
}
.table2 img {
    width: 300px;
}
.table2 .text1 {
    width: 180px;
    padding: 9px;
    color: #333333;
    background-color: #ffffff;
    border: 1px solid;
    border-color: #666666;
    border-top: transparent;
    font-weight: bold;
}
.table2 .text2 {
    width: 380px;
    padding: 9px;
    color: #333333;
    background-color: #ffffff;
    border: 1px solid;
    border-color: #666666;
    border-left:transparent;
    border-top: transparent;
}
/* contact.htm */
.table3 {
    width: 1000px;
    margin-left: auto;
    margin-right: auto;
    padding-top: 20px;
}
.table3 .container {
    display: flex;
    flex-wrap: wrap;
}
.table3 .text1 {
    width: 280px;
    padding: 9px;
    color: #333333;
    background-color: #dcffff;
    border: 1px solid;
    border-color: #ffffff;
    font-weight: bold;
}
.table3 .text2 {
    width: 680px;
    padding: 9px;
    color: #333333;
    background-color: #ffffe9;
    border: 1px solid;
    border-color: #ffffff;
}
.hissu {
    color: #ff0000;
    margin: 10px;
    padding-left: 5px;
    padding-right: 5px;
    background-color: #ffffff;
    border: 1px solid;
    border-color: #ff0000;
    border-radius: 3px;
    font-size: 0.6em;
}
input {
    height: 30px;
    width: 240px;
}
.send {
    margin-top: 30px;
    text-align: center;
}
.sendbtn {
    width: 80px;
    border-radius: 5px;
    background-color: #ff0000;
    color: #ffffff;
    font-weight: bold;
}
/* policy */
.titlep {
    background-color: #3333cc;
}
.titlep h1 {
    padding: 10px;
    color: #ffffff;
    text-shadow: 2px 2px #000000;
    font-size: 24px;
}

@media (max-width: 1000px) {
    .headB {
        margin-top: 100px;
    }
}
@media (max-width: 767px) {
	header .container-small {
		display: flex;
		align-items: center;
		justify-content: space-between;
	}
	.headB {
		display: none;
        margin-top: 0;
	}
    .headB ul {
        display: block;
        margin-left: 0;
        width: 200px;
        background-color: #cccccc;
    }
    .headB ul li {
        border: none;
        border-bottom: 1px solid #fff;
    }
    .headB ul li:hover ul {
        margin-top: -31px;
        margin-left: 200px;
    }
    .headB ul li ul li {
        border: none;
        border-bottom: 1px solid #fff;
    }
	.headC {
		margin-right: 10px;
		padding: 0;
		border: none;
		outline: none;
		background: none;
		font-size: 28px;
		opacity: 0.5;
		cursor: pointer;
	}
	.headC;hover {
		opacity: 0.3;
	}
    .headlogo {
        width: 200px;
    }
    .conA {
        width: auto;
    }
    .conA .swiper-container {
        display: none;
    }
    .conB {
        width: auto;
        margin-left: auto;
        margin-right: auto;
    }
    .conB .container {
        display: block;    
        width: 360px;
    }
    .conC {
        display: block;
        width: auto;
    }
    .conC .box {
        margin-left: auto;
        margin-right: auto;
    }
    .toiawase {
        width: auto;
    }
    .toiawase .container {
        display: block;
    }
    .toiawase .mail {
        margin-left: auto;
        margin-right: auto;
    }
    .toiawase .phone {
        margin-left: auto;
        margin-right: auto;
    }
    .ulogo {
        width: auto;
    }
    .content {
        width: auto;
    }
    .content .shadow img {
        width: 98%;
        height: 90px;
    }
    .content2 {
        margin-top: 30px;
        width: auto;
    }
    .content2 .shadow img {
        width: 98%;
        height: 90px;
    }
    .intro {
        width: auto;
    }
    .details {
        width: auto;
    }
    .details img {
        width: 100%;
    }
    .merit img {
        float: none;
    }
    .table {
        width: auto;
    }
    .table .bar {
        width: auto;
    }
    .table .text {
        width: auto;
    }
    .table .text img {
        float: none;
    }
    .table .map {
        display: none;
    }
    .table1 {
        width: 400px;
    }
    .table1 .bar {
        width: 400px;
    }
    .table1 .text1 {
        width: 400px;
        background-color: #ccffff;
    }
    .table1 .text2 {
        width: 400px;
        border-left: 1px solid;
    }
    .table2 {
        width: 400px;
    }
    .table2 .bar {
        width: 400px;
    }
    .table2 .text1 {
        width: 400px;
    }
    .table2 .text2 {
        width: 400px;
        border-left: 1px solid;
    }
    .table2 .list1 {
        width: 400px;
    }
    .table2 .isop {
        width: 400px;
    }
    .table3 {
        width: 400px;
    }
    .table3 .bar {
        width: 400px;
    }
    .table3 .text1 {
        width: 400px;
    }
    .table3 .text2 {
        width: 400px;
    }
}

@media (min-width: 768px) {
	header .container {
		display: flex;
		align-items: center;
		justify-content: space-between;
		max-width: 1000px;
		margin-left: auto;
		margin-right: auto;
	}
	.headB {
		display: block !important;
	}
	.headB ul {
		display: flex;
	}
	.headC {
		display: none;
	}
	footer .container {
		display: flex;
		flex-wrap: wrap;
		max-width: 1000px;
		margin-left: auto;
		margin-right: auto;
	}
	.footA {
		flex: 0 0 40%;
	}
	.footB {
		display: flex;
		flex: 0 0 60%;
	}
	.footB div {
		flex: 1;
	}
	.footB div:not(:first-child) {
		margin-left: 40px;
	}
	.footC {
		flex: 0 0 100%;
	}
    a[href*="tel:"] {
        pointer-events: none;
        cursor: default;
        text-decoration: none;
    }
	/* index.htm */
	.conB .container {
		display: flex;
		max-width: 1000px;
		margin-left: auto;
		margin-right: auto;
	}
	.conB .text {
		flex: 1;
	}
    /* map */
    .table .maps {
        display: none;
    }