@charset "utf-8";
/*
Theme Name: 市川市北方地区公共下水道整備事業
*/
/* 初期化
----------------------------------------------------------------*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-style:normal;
	font-weight: normal;
	font-size: 100%;
	vertical-align: baseline;
	outline: none;
	box-sizing: border-box;
}
blockquote, q {	quotes: none;	}
blockquote:before, blockquote:after,
q:before, q:after {	content: '';	content: none;}
input, textarea { margin: 0;	padding: 0;}
input[type="submit"], textarea { font-family: inherit; }
table{	border-collapse: collapse; border-spacing:0;	}
body { font-family:'Noto Sans JP',Helvetica,Arial,"ＭＳ Ｐゴシック","ＭＳゴシック",sans-serif; }
h1,h2,h3,h4,h5,h6,p,li,th,td,dt,dd,div { font-size:16px; line-height:1.8; }
caption,th,td { text-align:left; vertical-align:top; }
img { vertical-align:top; border:0; }
ul,li { list-style:none; }
option { padding-right:1em; }
address,caption { font-style:normal; font-weight:normal; }
a {	text-decoration:underline; }
ul a ,li a {	zoom:1;	}
strong{ font-weight: bold; }
em{ font-style: italic; }

/* HTML5
----------------------------------------------------------------*/
article, aside, details, figcaption, figure,
footer, header, hgroup, menu, nav, section {
	display: block;
}

/* 文字サイズ、装飾
----------------------------------------------------------------*/
.bold	{	font-weight:bold; }
.cap {
	font-size:small;
	line-height:1.4;
	}
.red	{	color:#f00;		}
.yellow	{	color:#cbb847;		}
.blue	{	color:#0047a2;		}
.lightblue { color:#00afd7; }
.green	{	color:#5b9000;	}
.brown	{	color:#633;		}
.pink	{	color:#f3c;		}
.gray	{	color:#eaeeed;		}
.deepgray { color:#92999f ;}
.align_center	{	text-align:center;		}
.align_right	{	text-align:right;		}
.replace {	overflow:hidden;	white-space:nowrap;	text-indent:100%;	}
.bluearrow{ color:#0083c9; }
.backgray{ background: #f1eeee; }
.acrobat{ margin-left:10px; }

/* フロート関係
----------------------------------------------------------------*/
.clear {
	width:100%;
	overflow:hidden;
}
.clearboth {
	clear:both;
}
.cf:before,
.cf:after {
    content: " ";
    display: table;
}
.cf:after {
    clear: both;
}
.cf {
  *zoom: 1;
}
.flol {
	float:left;
}
.flor {
	float:right;
}
/* マージン
----------------------------------------------------------------*/
.mt0	{	margin-top:0px !important; }
.mt05	{	margin-top:5px;		}
.mt10	{	margin-top:10px;	}
.mt15	{	margin-top:15px;	}
.mt20	{	margin-top:20px;	}
.mt25	{	margin-top:25px;	}
.mt30	{	margin-top:30px;	}
.mt40	{	margin-top:40px;	}
.mt50	{	margin-top:50px;	}
.mt60	{	margin-top:60px;	}
.mt70	{	margin-top:70px;	}
.mt80	{	margin-top:80px;	}
.mt90	{	margin-top:90px;	}
.mt100	{	margin-top:100px;	}
.mb05	{	margin-bottom:5px;	}
.mb10	{	margin-bottom:10px;	}
.mb15	{	margin-bottom:15px;	}
.mb20	{	margin-bottom:20px;	}
.mb25	{	margin-bottom:25px;	}
.mb30	{	margin-bottom:30px;	}
.mb40	{	margin-bottom:40px;	}
.mb50	{	margin-bottom:50px;	}

/*===============================================================

	色

===============================================================*/
.gradient {
	background: #fd9b8f;
	background: -moz-linear-gradient(left,  #fd9b8f 0%, #e39cce 100%);
	background: -webkit-linear-gradient(left,  #fd9b8f 0%,#e39cce 100%);
	background: linear-gradient(to right,  #fd9b8f 0%,#e39cce 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#fd9b8f', endColorstr='#e39cce',GradientType=1 );
}

/* html/body設定
----------------------------------------------------------------*/
body {
	width: 100%;
	color:#3b4043;
	background:#c0efef;
	text-align:left;
	-webkit-text-size-adjust:none; /* 縦横文字サイズ同じ */
	-webkit-font-smoothing: antialiased;
	overflow-x: hidden;
}
a {
	color:#0897FF;
	transition: all 0.3s;
  	text-decoration: none;
}
.boxshadow {
	box-shadow: 0px 0px 5px rgba(0, 0, 0, 0.20);
}


/*===============================================================

	基本文字サイズ

===============================================================*/
h2 {
	font-weight:bold;
}
h3 {
	font-weight:bold;
}
h4 {
	line-height:1.4;
	font-weight:bold;
}
p {
	line-height:1.8;
}
sup {
	margin:0;
	padding:0;
	font-size:11px;
	line-height:15px;
}

/* SP向けレイアウトの指定：～768px */
@media only screen and (max-width: 768px) {
h1,h2,h3,h4,h5,h6,p,li,th,td,dt,dd,div { line-height:1.6; }
div,
p {
	font-size: 4vw;
	line-height:1.8;
}
li,
p {
	font-size: 4vw;
	line-height:1.6;
}
}/* for SP max-width: 800px */


/*===============================================================

	PC/SP/TABLET

===============================================================*/

@media only screen and (min-width:769px){
	.no_pc{
		display:none;
	}
}
@media only screen and (max-width:768px){
	.no_sp{
		display:none;
	}
}


/*===============================================================

	投稿一覧のナビゲーション
  https://chiiweb.net/media/wp-pagenavi/

===============================================================*/

.wp-pagenavi {
	margin: 0px auto;
	font-size: 13px;	
	font-weight: 600;
	text-align: center;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
}
.wp-pagenavi a {
    color: #00a3a4;
}
.wp-pagenavi span.current,
.wp-pagenavi a.page {
	margin: 0 10px 0 0;
	border: solid 2px #00a3a4;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	line-height: 40px;
	text-align: center;
	box-sizing: border-box;
	justify-content: center;
	display: flex;
	align-items: center;
	transition: .3s;
}
.wp-pagenavi span.current {
	border: none;
	background: #fff;
	color: #00a3a4;
	border: solid 2px #00a3a4;
	font-weight: 600;
}
.wp-pagenavi a.page {
	background: #00a3a4;
	color: #fff;
}
.wp-pagenavi a.page:hover {
	background: #fff;
	color: #00a3a4;
}
.wp-pagenavi .first,
.wp-pagenavi .extend {
	margin-right: 10px;
}

/*===============================================================

	ヘッダ

===============================================================*/

/* PC向けレイアウトの指定 */
@media only screen and (min-width:769px){
	.header_wrp {
		width:100%;
		z-index: 100;
		position: relative;
		margin-bottom: 100px;
	}
	.header {
		position: fixed;
		display: flex;
		justify-content: center;
		width: 80%;
    	min-width: 1000px;
		height: 100px;
		background: #fff;
		border-radius: 0 0 30px 30px;
		filter: drop-shadow(0px -1px 5px rgba(159, 155, 180, 0.7));
		top: 50px;
		left: 50%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	.header .logo {
		float:left;
		display:block;
		width:190px;
	}
	.header .logo img {
		width:250px;
		margin-top: 30px;
		margin-left: 50px;
	}
	.header a:hover {
		opacity: 0.5;
	}
	.header .navigation {
		height: auto;
		display: flex;
		justify-content: left;
		align-items: center;
	}
	.header .navigation img {
		width:18px;
		margin-right: 8px;
	}
	.header .navigation ul {
		display:flex;
		flex-direction:row;
		flex-wrap:nowrap;
		justify-content:flex-end;
		width: max-content;
	}
	.header .navigation li {
		float:left;
    	padding: 10px;
	}
	.header .navigation .underline {
		color:#00a3a4;
    	padding: 10px 0px;
	  	border-bottom: 3px solid;
		margin: 0 5px;
	}
	.header .navigation ul li a {
		text-align:center;
		padding:3px;
		box-sizing: border-box;
		display: flex;
		align-items: center;
		color: #3b4043;
		font-size: 17px;
		font-weight: 600;
		margin-bottom: -10px;
	}
	.header .navigation .contact01 {
		margin-left:15px;
		border-radius: 50px;
		width: 170px;
		height: 50px;
		padding: 8px 0px 0px 2px;
		background: #00a3a4;
	}
	.header .navigation .contact01 a {
		color: #fff;
	}
	.header .navigation .contact02 {
		margin-left:15px;
		border-radius: 50px;
		width: 170px;
		height: 50px;
		padding: 5px 0px 0px 0px;
		border: #00a3a4 2px solid;
		background-color:#ade0e0;
	}
	.header .navigation .contact02 a {
		color:#00a3a4;
	}
	.mainvisual {
		z-index: 10;
		position: relative;
		top: -110px;
	  height: 600px;
	}
	.mainvisual-image {
	  overflow: hidden;
	  height: 600px;
	}
	.mainvisual-image img {
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  width: 100%;
	  height: 600px;
	  transform: translate(-50%, -50%);
	  object-fit: cover;
	}
	.mainvisual p {
		position: absolute;
		color: white;
		top: 250px;
		left: 50%;
		margin-left: -40%;
		filter: drop-shadow(2px 1px 5px rgba(47, 51, 58, 0.8));
  	}
	.mainvisual p .text01 {
		font-size:38px;
		font-weight: 600;
	}
	.mainvisual p .text02 {
		font-size:20px;
	}
	.header_menu {
		width: 1000px;
		height:120px;
		padding-top: 10px;
		margin:0 auto;
	}
	.header_menu ul {
		display:flex;
		margin:0;
	}
	.header_menu li {
		width: 170px;
		margin:0;
	}
	.header_menu a:hover {
		opacity: 0.5;
	}

}
/* SP向けレイアウトの指定 */
@media only screen and (max-width:768px){

	.header_wrp {
		width:100%;
		z-index: 100;
		position: relative;
		background: #fff;
		border-radius: 0px 0px 10px 10px;
		box-shadow: 0px 4px 4px -2px #00a3a4;
	}
	.header {
		width:100%;
		height:75px;
		margin:0 auto;
		position: fixed;
		background-color: #fff;
		border-radius: 0px 0px 15px 15px;
		filter: drop-shadow(0px -1px 4px rgba(159, 155, 180, 0.7));
	}
	.header .logo {
		float:left;
		display:block;
		width: 190px;
		height: auto;
		margin: 18px 0px 0px 15px;
	}
	.header .logo img {
		width:200px;
		margin-top: 14px;
		margin-left: 20px;
	}
	.mainvisual {
		z-index: 10;
		position: relative;
		top: -15px;
	  	height: 300px;
	}
	.mainvisual-image {
	  overflow: hidden;
	  height: 250px;
	}
	.mainvisual-image img {
	  position: absolute;
	  top: 50%;
	  left: 50%;
	  width: 100%;
	  height: 250px;
	  object-fit: cover;
	  transform: translate(-50%, -50%);
	}
	.mainvisual p {
		position: absolute;
		color: white;
		top: 125px;
		left: 5%;
		line-height: 1.8rem;
		filter: drop-shadow(2px 1px 5px rgba(89, 100, 116, 0.8));
  }
	.mainvisual p .text01 {
		font-size:22px;
		font-weight: 600;
	}
	.mainvisual p .text02 {
		font-size:16px;
	}

	/***ドロワーメニューデザイン***/
	.drawer-menu {
		z-index: 10;
		padding-left: 15px;
		padding-right: 35px;
		padding-top: 85px;
		position: absolute;
		right: -50px;
		height: 100vh;
		width: 278px;
		background-color: #fff;
		transition: all .3s;
	}
	.drawer-menu li{
		display:flex;
		align-items: center;
		justify-content: left;
		margin-top: 30px;
		font-size: 18px;
		margin-bottom: 40px;
		margin-left:20px;
		font-weight: 600;
	}
	.drawer-menu li a{
		color:#666;
		text-decoration:none;
	}
	.drawer-menu img{
		width: 40px;
		padding-right: 10px;
	}
	.drawer-menu .underline {
		color:#00a3a4;;
		width: 120px;
		padding: 10px 0 0 0;
	  border-bottom: 3px solid;
		padding-bottom: 8px;
	}
	.drawer-menu .contact01 {
		background: #00a3a4;
		border-radius: 20px;
		width: 200px;
		line-height: 100%;
		padding: 10px 25px;
		margin-left: 13px;
	}
	.drawer-menu .contact01 a {
		color: #fff;
	}
	.drawer-menu .contact02 {
		border-radius: 20px;
		width: 220px;
		line-height: 100%;
		padding: 10px 25px;
		margin-left: 10px;
		border: #00a3a4 2px solid;
		background-color:#ade0e0;
	}
	.drawer-menu .contact02 a {
		color:#00a3a4;
	}
	.drawer-img {
		z-index: 100;
		background-color: unset;
		background-image: url("images/menu.png");
		background-size: 100%;
		background-repeat: no-repeat;
		width: 55px;
    	height: 55px;
		padding: 0;
		border: 0;
		position: absolute;
        right: 13px;
        top: 10px;
		transition: all .3s;
	}
	.menu-close{
		width: 55px;
		height: 55px;
		display: none;
		position: absolute;
		top: 0;
		opacity: 0;
		z-index: 120;
		transition: all .3s;
	}
	.responsivenav:has(.list-open) .menu-close{
		display: block;
		opacity: 1;
		transition: all .3s;
	}
	.responsivenav:has(.list-open) .drawer-menu{
		right: -3px;
		position: fixed;
		transition: all .3s;
	}
	.responsivenav:has(.list-open){
		width: 100vw;
		height: 100vh;
		background-color: #0000001f;
		z-index: 20;
	}
}

/*===============================================================

	フッタ

===============================================================*/

/* PC向けレイアウトの指定 */
@media only screen and (min-width:769px){

	.footer_wrp {
		width: 100%;
	}

	.footer_img {
		width:1000px;
		height:56px;
		margin:0 auto;
		background:#c0efef;;
		background-image: url("images/footer_bg1.png");
		background-size: 25%;
		background-repeat: no-repeat;
		background-position: right bottom;
	}

	.footer {
		width:100%;
		height:285px;
		margin:0 auto;
		background:#00a3a4;
	}
	.footer .logo {
		float:left;
		display:block;
		width:250px;
	}
	.footer .logo img{
		width:200px;
	}

	.footer .navigation {
		height:40px;
		float:right;
	}
	.footer .navigation ul {
		display:flex;
		flex-direction:row;
		flex-wrap:wrap;
		justify-content:flex-end;
	}
	.footer .navigation li {
		margin-left: 15px;
	}
	.footer .navigation ul li a {
		text-align:center;
		color:#ffffff;
		padding:10px 10px;
		font-weight: 500;
	}

	.footer_copy {
		padding-top: 80px;
		text-align:center;
		font-size:12px;
		color:#fff;
		clear:both;
		background:#00a3a4;
	}

}
/* SP向けレイアウトの指定 */
@media only screen and (max-width:768px){

	.footer {
		width:100%;
		margin:0 auto;
		background:#00a3a4;
	}

	.footer_img {
		width:95%;
		height:56px;
		margin:0 auto;
		background:#c0efef;;
		background-image: url("images/footer_bg1.png");
		background-size: 50%;
		background-repeat: no-repeat;
		background-position: right bottom;
	}

	.footer .logo {
		width: 100%;
		text-align:center;
		padding-top:50px;
	}
	.footer .logo img{
		width:200px;
	}
	.footer .navigation {
		padding-top: 20px;
		width: 100%;
		text-align:center;
	}
	.footer .navigation li {
		padding-top:20px;
		font-size:18px;
	}
	.footer .navigation ul li a {
		text-align:center;
		color:#ffffff;
		padding:10px 10px;
		font-weight: 500;
	}
	.footer_copy {
		padding-top: 50px;
		padding-bottom: 20px;
		text-align:center;
		font-size:12px;
		color:#fff;
		background:#00a3a4;
	}
}

/*===============================================================

	TOPページ

===============================================================*/

/* PC向けレイアウトの指定 */
@media only screen and (min-width:769px){

	.top_news_area {
		width:100%;
		position: relative;
		top: -110px;
	}
	.top_news_area_white {
		z-index:10;
	  	width: 500px;
		height:500px;
		background: #ffffff;
		overflow: hidden;
		border: 1px solid #FF0000;
	}
	.top_news_area_inner {
		display: flex;
		width: 100%;
		margin: 0 auto;
		padding-top: 50px;
		padding-bottom: 30px;
		overflow: hidden;
		border: 0px solid #FF0000;
		flex-direction: column;
		align-items: center;
		justify-content: center;
	}
	.top_news_block01 {
		width: 90%;
		max-width: 1000px;
		height: 50px;
	}
	.top_news_block_a {
		float:left;
		width:176px !important;
		height:50px;
		background: #ffffff;
		font-size:16px;
		font-weight: 500;
		text-align: center;
		padding-top:10px;
		border-radius: 10px 10px 0 0;
		color: #3b4043;
	}
	.underline02{
		padding-bottom:5px;
		border-bottom: 3px solid #ffe682;
		font-weight: 600;
	}
	.underline03{
		padding: 10px 5px 5px 10px;
		border-bottom: 2px solid #00a3a4;
		font-weight: 600;
		color: #292c32;
	}
	.top_news_block_b {
		float:left;
		width:176px;
		height:50px;
		background: #00a3a4;
		font-size:16px;
		color:#ffffff;
		font-weight: 600;
		text-align: center;
		padding-top:10px;
		margin-left:17px;
		border-radius: 10px 10px 0 0;
	}
	.top_news_block_a:hover,.top_news_block_b:hover{
		opacity: .7;
		cursor: pointer;
		transition: all .3s;
	}
	.top_news_block02 {
		width:1000px;
		background: #fff;
		padding-bottom:40px;
		border-radius: 0px 20px 20px 0px;
	}

	.top_news_block02 ul{
		padding:30px 100px;
	}
	.top_news_block02 li{
		font-size:17px;
		color:#545352;
		margin-bottom:17px;
	}
	.top_news_block02 li a{
		color:#545352;
	  text-decoration: none;
	}
	a.top_news_block03 {
		display: flex;
		width: 250px;
		height: 45px;
		justify-content: center;
		align-items: center;
		background-color: #00a3a4;
		color: #fff;
		font-weight: 600;
		text-align: center;
		margin: 0 auto;
		border-radius: 25px;
	}
	a.top_news_block03:hover {
		opacity: 0.5;
		transition: all .3s;
	}
	.top_news_block03 div {
		font-weight: 600;
		font-size: 17px;
	}

	.plan_area {
		width:100%;
		position: relative;
		top: -110px;
		background: linear-gradient(to left, white 50%, transparent 50% 100%);
	}
	.plan_area_inner {
		width:1000px;
	  margin: 0 auto;
		padding-top:50px;
		padding-bottom:30px;
		background: #fff;
		border-radius: 20px 0px 0px 20px;
	}
	.plan_block01 {
		width:800px;
	  	margin: 0 auto;
		text-align:center;
	}

	.plan_block01 img {
		width:700px;
		text-align:center;
	}
	.plan_block01 h1 {
		font-size: 35px;
		font-weight:bold;
		color: #00a3a4;
		text-align:center;
	}
	.plan_block01 h2 {
		padding-top:20px;
		padding-bottom:20px;
		font-size: 30px;
		font-weight:500;
		color: #00a3a4;
		text-align:left;
		font-weight: 700;
	}
	.plan_block01 table{
		width:800px;
	  	margin: 0 auto;
		margin-bottom:50px;
	}
	.plan_block01 th{
		width:120px;
		font-size:16px;
	  	padding: 7px 7px 7px 30px;
		text-align:left;
		font-weight: 500;
	}
	.plan_block01 td{
		color:#353535;
		font-size:16px;
	  	padding: 7px;
	}
	.plan_block01 .bg{
	  background-color:#e0f1f1;
	}
	a.plan_block03 {
		display: flex;
	  	width:250px;
	  	height:45px;
		justify-content: center;
		align-items: center;
	  	background:#00a3a4;
		text-align:center;
	  	margin: 0 auto;
		border-radius: 20px 20px 20px 20px;
		margin-top:50px;
		margin-bottom:50px;
		color: #fff;
		border-radius: 25px;
		text-decoration: none;
	}
	a.plan_block03:hover{
		opacity: 0.5;
		transition: all .3s;
	}
	.plan_block03 div {
		color:#fff;
		font-size:17px;
		font-weight: 600;
	}

	.logo_area {
		width:100%;
		padding-top:100px;
		padding-bottom:0px;
	}
	.logo_area_inner {
		width:950px;
	  	margin: 0 auto;
		padding-bottom:50px;
		position: right bottom;
	}
	.logo_block01 {
		width:800px;
	  margin: 0 auto;
		text-align:center;
	}
	.logo_block01 img {
		width:250px;
		text-align:center;
	}
	.logo_block01 a:hover {
		opacity: 0.5;
	}

}
/* SP向けレイアウトの指定 */
@media only screen and (max-width:768px){

	.top_news_area {
		width:100%;
		background: #c0efef;
		position: relative;
		top: -30px;
	}
	.top_news_area_inner {
		width:100%;
	  	margin: 0 auto;
		padding-top:10px;
		padding-bottom:20px;
	}
	.top_news_block01 {
		width: 98%;
		height: 50px;
		display: flex;
		flex-wrap: nowrap;
		margin: 0 auto;
	}

	.top_news_block_a {
		float:left;
		width:150px;
		height:50px;
		background: #ffffff;
		font-size:16px;
		font-weight: 600;
		text-align: center;
		padding-top:10px;
		border-radius: 10px 10px 0 0;
	}
	.underline02{
		padding: 10px 0px 5px 0px;
	  	border-bottom: 3px solid #ffe682;
		font-weight: 600;
	}
	span.underline03{
		font-weight: 600;
		color: #3b4043;
		padding-bottom:5px;
	  	border-bottom: 3px solid #00a3a4;
	}
	.top_news_block_b {
		float:left;
		width:150px;
		height:50px;
		background: #00a3a4;
		font-size:16px;
		color:#ffffff;
		font-weight: 600;
		text-align: center;
		padding-top:10px;
		margin-left:3px;
		border-radius: 10px 10px 0 0;
	}
	.top_news_block02 {
	  margin: 0 auto;
		width:98%;
		background: #fff;
		margin-bottom:40px;
		padding-bottom:40px;
		border-radius: 0px 10px 10px 0px;
		float:left;
	}
	.top_news_block02 ul{
		padding:20px;
	}
	.top_news_block02 li{
		font-size:16px;
		color:#545352;
		margin-bottom:15px;
	}
	.top_news_block02 li a{
		color:#545352;
	  text-decoration: none;
	}
	.top_news_block02_a {
		width:70px;
		height:20px;
		background: #5ed5be;
		font-size:12px;
		color:#ffffff;
		text-align: center;
		margin-left:10px;
		display:inline-block;
	}
	.top_news_block02_b {
		width:70px;
		height:20px;
		background: #00a3a4;
		font-size:12px;
		color:#ffffff;
		text-align: center;
		margin-left:10px;
		display:inline-block;
	}
	a.top_news_block03 {
		display: flex;
		width: 250px;
		height: 45px;
		justify-content: center;
		align-items: center;
		background-color: #00a3a4;
		color: #fff;
		font-weight: 600;
		text-align: center;
		margin: 0 auto;
		border-radius: 25px;
	}
	a.top_news_block03:hover {
		opacity: 0.5;
		transition: all .3s;
	}
	.top_news_block03 div {
		font-weight: 600;
		font-size: 17px;
	}

	.plan_area {
		width:100%;
		background: #c0efef;
	}
	.plan_area_inner {
		width:98%;
	  margin: 0 auto;
		padding-top:20px;
		padding-bottom:20px;
		background: #fff;
		border-radius: 10px 0px 0px 10px;
		float:right;
	}
	.plan_block01 {
		width:100%;
	  margin: 0 auto;
		text-align:center;
	}
	.plan_block01 img {
		width:90%;
		text-align:center;
	}
	.plan_block01 h1 {
		font-size: 25px;
		font-weight:bold;
		color: #00a3a4;
		text-align:center;
	}
	.plan_block01 h2 {
		padding-top:20px;
		padding-bottom:20px;
		font-size: 20px;
		font-weight:700;
		color: #00a3a4;
		text-align:left;
		margin-left:20px;
	}
	.plan_block01 table{
		width:95%;
	  	margin: 0 auto;
		margin-bottom:30px;
	}
	.plan_block01 th{
		width: 90px;
		font-size: 15px;
		padding: 7px 7px 7px 15px;
		text-align: left;
		font-weight: 500;
	}
	.plan_block01 td{
		color:#353535;
		font-size:15px;
	  	padding: 7px;
	}
	.plan_block01 .bg{
	  background-color:#e0f1f1;
	}

	a.plan_block03 {
		display: flex;
		width: 250px;
		height: 45px;
		justify-content: center;
		align-items: center;
		background-color: #00a3a4;
		color: #fff;
		font-weight: 600;
		text-align: center;
		margin: 0 auto;
		margin-top: 15px;
    	margin-bottom: 30px;
		border-radius: 25px;
	}
	a.plan_block03:hover {
		opacity: 0.5;
		transition: all .3s;
	}
	.plan_block03 div {
		font-weight: 600;
		font-size: 17px;
	}

	.logo_area {
		width:100%;
		padding-top:100px;
		display: flex;
	}
	.logo_area_inner {
		width:100%;
	  margin: 0 auto;
		padding-bottom:50px;
	}
	.logo_block01 {
		width:100%;
	  margin: 0 auto;
		text-align:center;
	}
	.logo_block01 img {
		width:250px;
		text-align:center;
		margin-bottom:50px;
	}

}

/*===============================================================

	全ページ共通

===============================================================*/

/* PC向けレイアウトの指定 */
@media only screen and (min-width:769px){

	.pankuzu {
		width: 100%;
		height: 60px;
	  margin: 0 auto;
		padding-top:10px;
	}
	.pankuzu_inner {
		width: 90%;
		max-width: 1000px;
		height: 60px;
		margin: 0 auto;
	}
	.pankuzu_inner p{
		color:#00a3a4;
		font-size:13px;
		margin-top : 10px;

	}
	.pankuzu_inner p a{color:#00a3a4;}
	.pankuzu_inner p a:hover{opacity: .5;cursor: pointer;transition: all .3s;}
	.headline {
		width: 100%;
		background: #c0efef;
		overflow: hidden;
		margin: 0 auto;
		background: linear-gradient(to right, white 30%, transparent 30% 100%);
	}
	.headline_inner {
		width: 100%;
		text-align: left;
		background-image: url(images/index3_1.png);
		background-size: contain;
		background-repeat: no-repeat;
		background-position: 30% bottom;
	}
	.headline_text{
		width: 90%;
		max-width: 1000px;
		color: #00a3a4;
		font-weight: 700;
		font-size: 27px;
		line-height: 150%;
		margin: 0 auto;
	}

}
/* SP向けレイアウトの指定 */
@media only screen and (max-width:768px){

	.pankuzu {
		width: 100%;
	  	margin: 0 auto;
		padding-top:85px;
	}
	.pankuzu_inner {
		width: 100%;
	  	margin: 0 auto;
	}
	.pankuzu_inner p{
		color: #00a3a4;
		font-size: 13px;
		margin: 5px 0px 15px 15px;
	}
	.pankuzu_inner p a{
		color:#00a3a4;
	}
	.headline {
		width: 100%;
		height: 40px;
		background: linear-gradient(to right, white 40%, transparent 40% 100%);
		max-width: 1920px;
		overflow: hidden;
	  	margin: 0 auto;
	}
	.headline_inner {
		width: 90%;
		max-width: 480px;
		height: 40px;
		text-align: left;
		background-image: url(images/index3_1.png);
		background-size: auto 40px;
		background-repeat: no-repeat;
		background-position: right center;
	}
	.headline_text{
		margin-left: 15px;
		color: #00a3a4;
		font-size: 21px;
		font-weight: 700;
	}

}

/*===============================================================

	お知らせページ

===============================================================*/

/* PC向けレイアウトの指定 */
@media only screen and (min-width:769px){

	.news_area {
		width:100%;
		display:block;
	}
	.news_area_inner {
		width:1000px;
	  margin: 0 auto;
		padding-top:50px;
		padding-bottom:30px;
	}
	.news_block01 {
		width:100%;
		height:50px;
	}
	.news_block_a {
		float:left;
		width:176px;
		height:50px;
		background: #ffffff;
		font-size:16px;
		font-weight: 500;
		text-align: center;
		padding-top:10px;
		margin-left:70px;
		border-radius: 10px 10px 0 0;
	}
	.news_block_b {
		float:left;
		width:176px;
		height:50px;
		background: #00a3a4;
		font-size:16px;
		color:#ffffff;
		font-weight: 500;
		text-align: center;
		padding-top:10px;
		margin-left:10px;
		border-radius: 10px 10px 0 0;
	}	
	.news_block_a:hover,.news_block_b:hover,.process_block_a:hover,.process_block_b:hover{
		opacity: .7;
		cursor: pointer;
		transition: all .3s;
	}
	.news_block02 {
		width:100%;
		background: #fff;
		margin-bottom:40px;
		padding-bottom:40px;
		border-radius: 20px 20px 20px 20px;
	}
	.news_block02 ul{
		padding-top:30px;
		padding-left:80px;
		padding-bottom:30px;
	}
	.news_block02 li{
		font-size:16px;
		color:#545352;
		margin-bottom:16px;
	}
	.news_block02 li a{
		color:#545352;
	  text-decoration: none;
	}
	.news_block02_a {
		width: 80px;
		height: fit-content;
		background: #5ed5be;
		font-size:15px;
		color:#ffffff;
		text-align: center;
		margin-left:10px;
		display:inline-block;
		border-radius: 4px;
	}
	.news_block02_b {
		width: 80px;
		height: fit-content;
		background: #00a3a4;
		font-weight: 500;
		font-size: 15px;
		color: #ffffff;
		text-align: center;
		margin-left: 10px;
		display: inline-block;
		border-radius: 4px;
	}
	.news_block03 {
	  width:250px;
	  height:45px;
	  background:#00a3a4;
		text-align:center;
	  margin: 0 auto;
		border-radius: 20px 20px 20px 20px;
	}
	.news_block03 a {
		text-decoration: none;
		color:#fff;
		font-size:18px;
		font-weight: 500;
		line-height:250%;
	}
	.news_block03 a:hover {
		opacity: 0.5;
	}

}
/* SP向けレイアウトの指定 */
@media only screen and (max-width:768px){

	.news_area {
		width:100%;
		background: #c0efef;
		padding-top:20px;
		display: flex;
	}
	.news_area_inner {
		width:100%;
	  margin: 0 auto;
		padding-top:10px;
		padding-bottom:30px;
	}
	.news_block01 {
		width: 98%;
		height: 50px;
		display: flex;
		flex-wrap: nowrap;
		justify-content: left;
		margin: 0 auto;
	}
	.news_block_a {
		float:left;
		width:150px;
		height:50px;
		background: #ffffff;
		font-size:16px;
		font-weight: 600;
		text-align: center;
		padding-top:10px;
		border-radius: 10px 10px 0 0;
	}
	.news_block_b {
		float:left;
		width:150px;
		height:50px;
		background: #00a3a4;
		font-size:16px;
		color:#ffffff;
		font-weight: 600;
		text-align: center;
		padding-top:10px;
		margin-left:6px;
		border-radius: 10px 10px 0 0;
	}
	.news_block02 {
	  margin: 0 auto;
		width:98%;
		background: #fff;
		margin-bottom:40px;
		padding-bottom:40px;
		border-radius: 0px 10px 10px 10px;
		float:center;
	}
	.news_block02 ul{
		padding:20px;
	}
	.news_block02 li{
		font-size:16px;
		color:#545352;
		margin-bottom:15px;
	}
	.news_block02 li a{
		color:#545352;
	  text-decoration: none;
	}
	.news_block02_a {
		width:80px;
		height:auto;
		background: #5ed5be;
		font-size:14px;
		color:#ffffff;
		text-align: center;
		margin-left:10px;
		display:inline-block;
		border-radius: 4px;
		font-weight: 600;
	}
	.news_block02_b {
		width:80px;
		height:auto;
		background: #00a3a4;
		font-size:14px;
		color:#ffffff;
		text-align: center;
		margin-left:10px;
		display:inline-block;
		border-radius: 4px;
		font-weight: 600;
	}
	.news_block03 {
	  width:250px;
	  height:45px;
	  background:#00a3a4;
		text-align:center;
	  margin: 0 auto;
		border-radius: 20px 20px 20px 20px;
	}
	.news_block03 a {
		text-decoration: none;
		color:#fff;
		font-size:18px;
		font-weight: 500;
		line-height:250%;
	}
}


/*===============================================================

	お知らせ詳細ページ

===============================================================*/

/* PC向けレイアウトの指定 */
@media only screen and (min-width:769px){

	.news_detail01 {
		width: 100%;
		background: #c0efef;
		padding-top:30px;
		padding-bottom:60px;
	}
	.news_detail01_inner {
		width: 1000px;
	  margin: 0 auto;
		padding-top:30px;
		padding-bottom:30px;
		background: #ffffff;
		border-radius: 20px 20px 20px 20px;
	}
	.news_detail01_title {
		text-align:left;
		font-size:28px;
		color:#00a3a4;
		font-weight: 700;
		line-height:150%;
		margin: 10px 0px 20px 0px;
		padding:0px 50px;
	}
	.news_detail01_title02 {
		text-align:left;
		font-size:28px;
		color:#00a3a4;
		font-weight: 700;
		line-height:150%;
		margin-top:10px;
		margin-bottom:20px;
		padding:0px 50px;
	}
	.news_detail01_days{
		color:#3b4043;
		font-size:18px;
		line-height:180%;
		margin-top:20px;
		padding:0px 50px;
	}
	.hr_line{
		width: 908px;
		height: 3px;
		background-color: #c0efef;
		border: none;
		color: #ff0000;
	}
	.news_detail01_inner p{
		color:#3b4043;
		font-size:18px;
		line-height:180%;
		margin-top:20px;
		padding:0px 50px;
	}

	.hr_line02{
		margin-top:50px;
		width: 908px;
		height: 3px;
		background-color: #c0efef;
		border: none;
		color: #ff0000;
	}


	.post__pagination{
			width:1000px;
			height:120px;
	}
	.post__pagination__left,
	.post__pagination__right{
		width:480px;
	}
	.post__pagination__left{
		float:left;
	}
	.post__pagination__right{
		float:right;
	}
	.post__pagination__left > a,
	.post__pagination__right > a{
		display:block;
		position:relative;
	}
	.post__pagination__left__text,
	.post__pagination__right__text{
		position: absolute;
		top: 20px;
		z-index: 999;
		color:#00a3a4;
		font-size:14px;
		font-weight:500;
	}
	.post__pagination__left__text{
		left:50px;
	}
	.post__pagination__right__text{
		right: 50px;
	}
	.post__pagination__left02{
		width: 400px;
		height: 50px;
		float: left;
		background-image: url(images/index_preview_pre1.png);
		background-size: 80% auto;
		background-repeat: no-repeat;
		background-position: left;
		overflow: hidden;
		padding-top: 8px;
	}
	.post__pagination__left__text02 {
		margin-left:50px;
		line-height: 300%;
	}
	.post__pagination__right02{
		width: 400px;
		height:50px;
		float:right;
		background-image: url("images/index_preview_next1.png");
		background-size: 80% auto;
		background-repeat: no-repeat;
		background-position: right;
		overflow: hidden;
		padding-top: 8px;
		text-align: right;
	}
	.post__pagination__right__text02 {
		line-height: 300%;
	}
	.post__pagination__left02 a{
		display: inline-block;
		width: 310px;
		height: 45px;
		padding: 5px;
		margin-top: -13px;
		color: #00a3a4;
	}
	.post__pagination__right02 a{
		color:#00a3a4;
		display: inline-block;
		width: 270px;
		height: 45px;
		padding: 5px 50px 5px 5px;
		margin-top: -13px;
	}

}
/* SP向けレイアウトの指定 */
@media only screen and (max-width:768px){

	.news_detail01 {
		width: 100%;
		background: #c0efef;
		padding-top:30px;
		padding-bottom:60px;
	}
	.news_detail01_inner {
		width: 95%;
	  margin: 0 auto;
		padding-top:10px;
		padding-bottom:10px;
		background: #ffffff;
		border-radius: 10px 10px 10px 10px;
	}
	.news_detail01_title {
		text-align:left;
		font-size:20px;
		color:#00a3a4;
		font-weight: 600;
		line-height:150%;
		margin: 10px 0px 20px 0px;
		padding: 0px 3%;
	}
	.news_detail01_title02 {
		text-align:left;
		font-size:20px;
		color:#00a3a4;
		font-weight: 600;
		line-height:150%;
		margin: 10px 0px 20px 0px;
		padding: 0px 3%;
	}
	.news_detail01_days{
		color:#353535;
		font-size:14px;
		line-height:180%;
		padding-left:3%;
	}
	.hr_line{
		width: 94%;
		height: 3px;
		background-color: #c0efef;
		border: none;
		color: #ff0000;
	}
	.news_detail01_inner p{
		color:#353535;
		font-size:16px;
		line-height:180%;
		margin-top:20px;
		padding: 0px 3%;
	}
	.news_detail01_inner p img{
		max-width:90%;
		padding: 0px 3%;
	}

	.hr_line02{
		margin-top:30px;
		width: 94%;
		height: 3px;
		background-color: #c0efef;
		border: none;
		color: #ff0000;
	}

	.post__pagination{
		margin-top:0px;
		margin-bottom:20px;
		width:100%;
	}
	.post__pagination__left > a,
	.post__pagination__right > a{
		display:flex;
	}
	.post__pagination__left__text,
	.post__pagination__right__text{
		color:#00a3a4;
		font-size:15px;
		font-weight:500;
	}
	.post__pagination__left__text{display: block;}
	.post__pagination__right__text{display: block;text-align: right;}
	.post__pagination__left a{text-align: left;display: block; padding-left: 3%;width: 300px;}
	.post__pagination__right a{text-align: right;display: block; padding-right: 3%;width: 300px;}

	.post__pagination__left02{
		width: 100%;
		height: 45px;
		background-image: url(images/index_preview_pre1.png);
		background-size: 300px auto;
		background-repeat: no-repeat;
		background-position: left;
		overflow: hidden;
	}
	.post__pagination__left__text02 {
		margin-left:15px;
		line-height: 300%;
	}
	.post__pagination__right02{
		width: 100%;
		height:45px;
		background-image: url("images/index_preview_next1.png");
		background-size: 300px auto;
		background-repeat: no-repeat;
		background-position: right;
		overflow: hidden;
		display: flex;
		flex-direction: row-reverse;
	}
	.post__pagination__right__text02 {
		line-height: 300%;
		margin-right: 15px;
	}
	.post__pagination__left02 a{
		display: block;
		color: #00a3a4;
		font-size: 14px;
		width: 300px;
	}
	.post__pagination__right02 a{
		display: block;
		color: #00a3a4;
		font-size: 14px;
		width: 300px;
		text-align: right;
	}
	.post__pagination__left {
		display: flex;
		justify-content: flex-start;
		text-align: left;
		margin-top: 30px;
	}
	.post__pagination__right {
		display: flex;
		justify-content: flex-end;
		text-align: right;
		margin-top: 30px;
	}

}


/*===============================================================

	工程計画ページ

===============================================================*/

/* PC向けレイアウトの指定 */
@media only screen and (min-width:769px){

	.process_area {
		width:100%;
		display:block;
	}
	.process_area_inner {
		width:1000px;
	  margin: 0 auto;
		padding-top:50px;
		padding-bottom:20px;
	}
	.process_block01 {
		width:100%;
		height:50px;
	}
	.process_block_a {
		float:left;
		height:50px;
		background: #ffffff;
		font-size:16px;
		font-weight: 500;
		text-align: center;
		padding: 10px 13px 0px 13px;
		margin-left:10px;
		border-radius: 10px 10px 0 0;
	}
	.process_block_a:nth-child(1){margin-left: 70px;}
	.process_block_b {
		float:left;
		height:50px;
		background: #00a3a4;
		font-size:16px;
		color:#ffffff;
		font-weight: 500;
		text-align: center;
		padding: 10px 13px 0px 13px;
		margin-left:10px;
		border-radius: 10px 10px 0 0;
	}
	.process_block02 {
		width:100%;
		background: #fff;
		margin-bottom:60px;
		padding-bottom:20px;
		border-radius: 20px 20px 20px 20px;
	}
	.process_block02 ul{
		width:93%;
		padding-top:50px;
		padding-bottom:50px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
	}
	.process_block02 li {
		margin-left: 40px;
		margin-bottom:30px;
		padding:0px;
		border: 1px solid #c0efef;
		border-radius: 8px;
	}
	.process_block02 li img{
		border-radius: 8px 8px 0px 0px;
	}
	.process_text {
		font-size:14px;
		color:#545352;
		line-height:200%;
		padding:15px 0px 15px 10px;
	}
	.process_text a{
		color:#545352;
	  text-decoration: none;
	}
	.process_block02 a:hover {
	cursor: pointer;
	opacity: 0.5;
	text-decoration: none;
	}
	.news_block_a:hover,.news_block_b:hover,.process_block_a:hover,.process_block_b:hover{
		opacity: .7;
		cursor: pointer;
		transition: all .3s;
	}
}

/* SP向けレイアウトの指定 */
@media only screen and (max-width:768px){
	.process_area {
		width:100%;
		background: #c0efef;
		padding-top:20px;
	}
	.process_area_inner {
		width:100%;
	  margin: 0 auto;
		padding-top:10px;
		padding-bottom:10px;
	}
	.process_block01 {
		width: 98%;
		height: 50px;
		display: flex;
		flex-wrap: nowrap;
		justify-content: left;
		margin: 0 auto;
	}
	.process_block_a {
		float:left;
		height:50px;
		background: #ffffff;
		font-size:16px;
		font-weight: 600;
		text-align: center;
		padding: 10px 5px 0px 5px;
		border-radius: 10px 10px 0 0;
		/*min-width: 75px;*/
	}
	.process_block_b {
		float:left;
		height:50px;
		background: #00a3a4;
		font-size:16px;
		color:#ffffff;
		font-weight: 600;
		text-align: center;
		padding: 10px 5px 0px 5px;
		margin-left:7px;
		border-radius: 10px 10px 0 0;
		min-width: 75px;
	}
	.process_block02 {
		margin: 0 auto;
		width: 98%;
		background: #fff;
		margin-bottom: 60px;
		padding-bottom: 10px;
		border-radius: 0px 10px 10px 10px;
	}
	.process_block02 ul{
		width:93%;
		padding-top:30px;
		padding-bottom:30px;
		margin: 0 auto;
	}
	.process_block02 li{
		width:90%;
		font-size:14px;
		color:#545352;
		border: 1px solid #c0efef;
		border-radius: 5px;
		margin: 0 auto;
		margin-bottom:30px;
	}
	.process_block02 li a{
		color:#545352;
	  text-decoration: none;
	}
	.process_block02 li img{
		width:100%;
		height:100%;
		border-radius: 5px 5px 0px 0px;
	}
	.process_text {
		font-size:15px;
		color:#545352;
		line-height:200%;
		padding:15px 0px 15px 10px;
	}
	.process_text a{
		color:#545352;
	  text-decoration: none;
	}

	.process_block02_a {
		width:70px;
		height:20px;
		background: #00a3a4;
		font-size:12px;
		color:#ffffff;
		text-align: center;
		margin-left:10px;
		display:inline-block;
	}
	.process_block02_b {
		width:70px;
		height:20px;
		background: #00a3a4;
		font-size:12px;
		color:#ffffff;
		text-align: center;
		margin-left:10px;
		display:inline-block;
	}
	.news_block_a:hover,.news_block_b:hover,.process_block_a:hover,.process_block_b:hover{
		opacity: .7;
		cursor: pointer;
		transition: all .3s;
	}
}

/*===============================================================

	職員紹介ページ

===============================================================*/

/* PC向けレイアウトの指定 */
@media only screen and (min-width:769px){

	.staff_area {
		width:100%;
		display:block;
	}
	.staff_area_inner {
		width:1000px;
	  margin: 0 auto;
		padding-top:50px;
		padding-bottom:30px;
	}
	.staff_block02 {
		width:100%;
		background: #fff;
		margin-bottom:40px;
		padding-bottom:60px;
		border-radius: 20px 20px 20px 20px;
	}
	.staff_block02 h2 {
		font-size: 30px;
		font-weight:700;
		color: #00a3a4;
		text-align:left;
		padding-top:50px;
		padding-left:100px;
	}
	.staff_line{
		width: 80%;
		height: 3px;
		background-color: #c0efef;
		border: none;
		color: #ff0000;
		margin-bottom:20px;
	}

	.staff_block02 ul{
		width:750px;
		margin: 0 auto;
		display: flex;
		flex-wrap: wrap;
		justify-content: space-between;
	}

	.staff_block02 li{
		margin: 20px;
		float: left;
		width: 300px;
		margin-bottom:20px;
		display: -webkit-box;
		display: -moz-box;
		display: -o-box;
		display: -ms-box;
		display: box;
		-webkit-box-align: center;
		-moz-box-align: center;
		-o-box-align: center;
		-ms-box-align: center;
		box-align: center;
	}

	.staff_text01 {
		width: 165px;
		font-size: 16px;
		color: #fff;
		margin-left: 20px;
		padding-left: 10px;
		margin-bottom: 10px;
		display: inline-block;
		background-image: url(images/staff_jobtitle.png);
		background-size: auto 30px;
		background-position-x: right;
		background-repeat: no-repeat;
	}
	.staff_text02 {
		width: 150px;
		font-size:16px;
		color:#3b4043;
		margin-left:10px;
		padding-left:10px;
	}

}
/* SP向けレイアウトの指定 */
@media only screen and (max-width:768px){

	.staff_area {
		width:100%;
		display:block;
	}
	.staff_area_inner {
		width:96%;
	  	margin: 0 auto;
		padding-top:20px;
		padding-bottom:60px;
	}
	.staff_block02 {
		width:100%;
		background: #fff;
		margin-bottom:20px;
		padding-bottom:60px;
		border-radius: 10px 10px 10px 10px;
	}
	.staff_block02 h2 {
		font-size: 20px;
		font-weight:700;
		color: #00a3a4;
		text-align:center;
		padding-top:20px;
	}
	.staff_line{
		width: 90%;
		height: 3px;
		background-color: #c0efef;
		border: none;
		color: #ff0000;
		margin-bottom:10px;
	}

	.staff_block02 ul{
		width:100%;
		margin: 0 auto;
		display: flex;
		flex-direction: column;
		align-items: center;
	}

	.staff_block02 li{
		width: fit-content;
		margin-top: 20px;
	}
	.staff_block02 li img{
		width: 135px;
		max-width: 150px;
		height: auto;
	}

	.staff_text01 {
		width: 135px;
		font-size: 15px;
		color: #fff;
		position: relative;
		margin-left: 7px;
		padding-left: 7px;
		margin-bottom: 5px;
		margin-top: 45px;
		display: inline-block;
		background-image: url(images/staff_jobtitle.png);
		background-size: auto 25px;
		background-position-x: right;
		background-repeat: no-repeat;
	}
	.staff_text02 {
		font-size: 16px;
		color: #3b4043;
		margin-left: 7px;
	}

}

/*===============================================================

	プライバシポリシーページ

===============================================================*/

/* PC向けレイアウトの指定 */
@media only screen and (min-width:769px){

	.privacy_area {
		width:100%;
		display:block;
	}
	.privacy_area_inner {
		width:1000px;
	  margin: 0 auto;
		padding-top:50px;
		padding-bottom:30px;
	}
	.privacy_block02 {
		width:100%;
		background: #fff;
		margin-bottom:60px;
		padding-bottom:60px;
		border-radius: 20px 20px 20px 20px;
		text-align:left;
	}
	.privacy_block02 h2 {
		font-size: 30px;
		font-weight:700;
		color: #00a3a4;
		text-align:left;
		padding-top:50px;
		padding-bottom:10px;
		padding-left:100px;
	}
	.privacy_line{
		width: 80%;
		height: 3px;
		background-color: #c0efef;
		border: none;
		color: #ff0000;
		margin-bottom:20px;
	}

	.privacy_block02 .p_text01  {
		color: #3b4043;
		text-align: left;
		padding-bottom: 20px;
		width: 800px;
		margin: 0 auto;
	}
	.privacy_block02 .p_text02  {
		color: #3b4043;
		text-align:left;
		padding-left:130px;
		padding-bottom:20px;
	}

	.privacy_block02 .privacy_text01 {
		color: #00a3a4;
		text-align:left;
		padding-left:100px;
		padding-bottom:10px;
		font-weight: 600;
	}

	.privacy_block02 .privacy_text02 {
		color: #00a3a4;
		text-align:left;
		margin-top:20px;
		padding-left:130px;
		padding-bottom:10px;
		font-weight: 600;
	}

}
/* SP向けレイアウトの指定 */
@media only screen and (max-width:768px){

	.privacy_area {
		width:100%;
		display:block;
	}
	.privacy_area_inner {
		width:98%;
	  margin: 0 auto;
		padding-top:20px;
		padding-bottom:60px;
	}
	.privacy_block02 {
		width:100%;
		background: #fff;
		margin-bottom:40px;
		padding-bottom:40px;
		border-radius: 10px 10px 10px 10px;
	}
	.privacy_block02 h2 {
		font-size: 20px;
		font-weight: 700;
		color: #00a3a4;
		text-align: center;
		padding: 20px 3%;
	}
	.privacy_line{
		width: 95%;
		height: 3px;
		background-color: #c0efef;
		border: none;
		color: #ff0000;
		margin-bottom:20px;
	}

	.privacy_block02 .p_text01  {
		font-size: 15px;
		color: #3b4043;
		text-align:left;
		padding: 0px 3% 30px 3%;
	}
	.privacy_block02 .p_text02  {
		font-size: 15px;
		color: #3b4043;
		text-align:left;
		padding: 0 3% 20px 3%;
	}

	.privacy_block02 .privacy_text01 {
		font-size: 16px;
		font-weight: 600;
		color: #00a3a4;
		text-align: left;
		padding-left: 3%;
		padding-bottom: 10px;
	}

	.privacy_block02 .privacy_text02 {
		font-size: 16px;
		font-weight: 600;
		color: #00a3a4;
		text-align: left;
		margin-top: 20px;
		padding: 0 3% 10px 3%;
	}

	.privacy_block02 .privacy_text02 img{
		margin-top:20px;
		width: 250px;
		height: auto;
	}

}

/*===============================================================

	お問い合わせページ

===============================================================*/

/* PC向けレイアウトの指定 */
@media only screen and (min-width:769px){

	.contact_area {
		width:100%;
		display:block;
	}
	.contact_area_inner {
		width:1000px;
	  margin: 0 auto;
		padding-top:20px;
		padding-bottom:30px;
	}
	.contact_block02 {
		width:100%;
		background: #fff;
		margin-bottom:40px;
		padding-bottom:40px;
		border-radius: 20px 20px 20px 20px;
		text-align:center;
	}
	.contact_block02 .p_text01  {
		color: #3b4043;
		text-align: left;
		padding-top: 50px;
		padding-bottom: 0px;
		width: 800px;
		margin: 0 auto;
		margin-bottom: 30px;
	}

	.contact_block02 .mailform {
		display: -webkit-flex;
		display: -moz-flex;
		display: flex;
		flex-wrap: wrap;
		width: 80%;
		border: 1px solid #ade0e0;
		margin: 0 auto;
	}

	.contact_block02 dt {
		width: 250px;
		background: #e0f1f1;
		border-right: 1px solid #ade0e0;
		border-bottom: 1px solid #ade0e0;
		padding:13px;
		display: flex;
		text-align:left;
		align-items: center;
	}
	.contact_block02 dd {
		background: #fff;
		width: calc(100% - 250px);
		border-bottom: 1px solid #ade0e0;
	}
	.contact_line{
		width: 100%;
		height: 1px;
		background-color: #ade0e0;
		border: none;
		color: #ff0000;
		margin-top:20px;
		margin-bottom:20px;
	}
	.contact_block02 textarea {
		width:95%;
		margin-bottom:20px;
		max-width: 520px;
	}
	.contact_block02 p {
		text-align: center;
		display: flex;
		align-items: center;
		height: 100%;
	}
	.contact_block02 .button_area {
		width: 800px;
		display: flex;
		align-items: center;
		justify-content: center;
		margin: 30px auto;
	}
	.button_area p{margin-right: -115px;}
	.mailform p{font-weight: 600;}

	.button {
		display       : inline-block;
		font-size     : 15pt;        /* 文字サイズ */
		text-align    : center;      /* 文字位置   */
		cursor        : pointer;     /* カーソル   */
		padding       : 12px 54px;   /* 余白       */
		background    : #00a3a4;     /* 背景色     */
		color         : #ffffff;     /* 文字色     */
		line-height   : 1em;         /* 1行の高さ  */
		border        : 2px solid #00a3a4;    /* 枠の指定 */
		border-radius: 30px;
		font-weight: 600;
	}
	.button:hover {
		box-shadow    : none;        /* カーソル時の影消去 */
		color         : #00a3a4;     /* 背景色     */
		background    : #ffffff;     /* 文字色     */
	}

	.must {
	  display       : inline-block;
	  border-radius : 10%;         /* 角丸       */
	  font-size     : 10pt;        /* 文字サイズ */
	  text-align    : center;      /* 文字位置   */
	  cursor        : pointer;     /* カーソル   */
	  padding       : 2px 4px;   /* 余白       */
	  background    : #00a3a4;     /* 背景色     */
	  color         : #ffffff;     /* 文字色     */
	  line-height   : 1em;         /* 1行の高さ  */
	  border        : 2px solid #00a3a4;    /* 枠の指定 */
	}

}
/* SP向けレイアウトの指定 */
@media only screen and (max-width:768px){

	.contact_area {
		width:100%;
		display:block;
	}
	.contact_area_inner {
		width:98%;
	  margin: 0 auto;
		padding-top:20px;
		padding-bottom:30px;
	}
	.contact_block02 {
		width:100%;
		background: #fff;
		margin-bottom:60px;
		padding-bottom:60px;
		border-radius: 20px 20px 20px 20px;
		text-align:center;
	}
	.contact_block02 .p_text01  {
		color: #3b4043;
		text-align:left;
		padding: 30px 3%;
	}

	.contact_block02 .mailform {
		display: -webkit-flex;
		display: -moz-flex;
		display: flex;
		flex-wrap: wrap;
		width: 96%;
		border: 1px solid #ade0e0;
		border-radius: 5px;
		margin: 0 auto;
	}
	.contact_block02 dt {
		width: 100%;
		padding: 10px;
		font-weight: 600;
		background: #e0f1f1;
		border-right: 1px solid #ade0e0;
		border-bottom: 1px solid #ade0e0;
		display: flex;
		text-align:left;
	}
	.contact_block02 dd {
		background: #fff;
		width: 100%;
		border-bottom: 1px solid #ade0e0;
		padding: 15px 10px;
	}
	.contact_line{
		width: 100%;
		height: 1px;
		background-color: #ade0e0;
		border: none;
		color: #ff0000;
		margin-top:20px;
		margin-bottom:20px;
	}

	.contact_block02 textarea {
		width:99%;
		margin-bottom:10px;
		max-width: 99%;
	}

	.contact_block02 p {
		font-size : 12pt;
		text-align: center;
	}

	.contact_block02 .button_area p {
		display: flex;
		padding-top: 30px;
		width: 300px;
		margin: 0 auto;
	}

	.button {
	  display       : inline-block;
	  border-radius : 30px;          /* 角丸       */
	  font-size     : 14pt;        /* 文字サイズ */
	  text-align    : center;      /* 文字位置   */
	  cursor        : pointer;     /* カーソル   */
	  padding       : 12px 25px;   /* 余白       */
	  background    : #00a3a4;     /* 背景色     */
	  color         : #ffffff;     /* 文字色     */
	  line-height   : 1em;         /* 1行の高さ  */
	  border        : 2px solid #00a3a4;    /* 枠の指定 */
	  font-weight: 600;
	}
	.button:hover {
		box-shadow    : none;        /* カーソル時の影消去 */
		color         : #00a3a4;     /* 背景色     */
		background    : #ffffff;     /* 文字色     */
	}

	.must {
	  display       : inline-block;
	  border-radius : 10%;         /* 角丸       */
	  font-size     : 10pt;        /* 文字サイズ */
	  text-align    : center;      /* 文字位置   */
	  cursor        : pointer;     /* カーソル   */
	  padding       : 2px 4px;   /* 余白       */
	  background    : #00a3a4;     /* 背景色     */
	  color         : #ffffff;     /* 文字色     */
	  line-height   : 1em;         /* 1行の高さ  */
	  border        : 2px solid #00a3a4;    /* 枠の指定 */
	}

}

/*-------------------------------------------------------------
	concat form 7 input
-------------------------------------------------------------*/

/* PC向けレイアウトの指定 */
@media only screen and (min-width:769px){

	.txtinput {
		vertical-align: bottom;
		width: 100%;
		padding: 10px;
		-webkit-appearance: none;
		outline: 0;
		font-size: 16px;
		line-height: 1.8;
	  	font-weight: 300;
		border: none;
		box-sizing: border-box;
		transition: all 0.1s linear;
		display: flex;
	}
	.txtinput:focus,
	.txtinput_postal:focus {
		border-color: #333;
	}

}
/* SP向けレイアウトの指定 */
@media only screen and (max-width:768px){

	.txtinput{
		width: 100%;
		font-size: 16px;
		padding: 5px 3px;
		display: flex;
		border: none;
	}

}

/*===============================================================

  contact-form-7の全体的なカスタマイズ

===============================================================*/

/* エラーメッセージの上部を消去 */

div.screen-reader-response{
  display: none;
}

.wpcf7-form-control.wpcf7-checkbox {
  display: flex;
  flex-wrap: wrap;
  padding: 10px;
}
.wpcf7-list-item-label {
  cursor: pointer;
  font-size: 16px;
}

.wpcf7-form-control-wrap {
  display: block;
  width: 100%;
}

span.wpcf7-list-item {
  position: relative;
  margin: 0 40px 0 0 !important;
}

.wpcf7-not-valid-tip,
.wpcf7-response-output.wpcf7-validation-errors {
	color: #cc0000;
	font-weight: bold;
	text-align: left;
	height:40px;
	display: block;
}

.wpcf7-response-output {
	color: #cc0000;
	font-weight: bold;
}

.wpcf7-submit:disabled {
	background-color: #999;
}

/*======調整　240321～======================================================================*/
/*共通*/
#wpfront-scroll-top-container{filter: drop-shadow(1px 3px 4px rgba(110, 110, 110, 0.8));}
.home_index1,.home_index1 h1{display: inline-block; margin: 0px 10px;}
.home_index1::before,.home_index1::after{
	content: "";
	display: inline-block;
	width: 60px;
	height: 30px;
	background-image: url(images/index1.png);
	background-size: 60px auto;
	background-repeat: no-repeat;
	background-position-y: 5px;
}
.news_block02 li a:hover,.top_news_block02 li a:hover{opacity: .5;cursor: pointer;transition: all .3s;}
dt.no_btop{border-top: none;}
dt.no_bbottom{border-bottom: none;}
p.contact_attention{
	width: 800px;
    justify-content: center;
    margin: 30px auto;
}
.contact_checkboxarea span{font-weight: 600;margin-right: -40px;}
.contact_checkboxarea label{display: flex; align-items: center;}
.contact_checkboxarea input{width: 18px;height: 18px;}

.top_news_block_a,.top_news_block_b,.news_block_a,.news_block_b,.process_block_a,.process_block_b{background-color: #00a3a4;color:#fff;}
.top_news_block_a:has(.underline02),.top_news_block_b:has(.underline02),.news_block_a:has(.underline02),.news_block_b:has(.underline02),.process_block_a:has(.underline02),.process_block_b:has(.underline02){background-color: #fff;}
span.underline02{color: #3b4043;}
.grecaptcha-badge { visibility: hidden; }/*reCAPTCHAのロゴを非表示にする*/
.news_block_a:hover,.news_block_b:hover,.process_block_a:hover,.process_block_b:hover{
	opacity: .7;
	cursor: pointer;
	transition: all .3s;
}
.process-list{display: block;width: 100%;height: auto;}
/* PC向けレイアウトの指定 */
@media only screen and (min-width:769px){
	.header_logo{display: flex;align-items: center;margin-right: 50px;}
	.home_news_bg{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		background: linear-gradient(to right, white 50%, transparent 50% 100%);
		margin-bottom: 50px;
	}
	.footer_navarea{
		display: flex;
		align-items: center;
		justify-content: space-between;
		width: 85%;
		min-width: 700px;
		max-width: 1100px;
		margin: 0 auto;
		padding-top: 80px;
	}
	.privacy_text02 img{width: 300px; height: auto;}	
	.process_block02 li img{width: 250px;height: 175px;object-fit: cover;}
	.process_block02 li{width: fit-content;}
}
	button.process_block_a{padding-top: 0;}
	button.process_block_a.tabmenu01{border: none;background-color: #00a3a4;}
	button.process_block_a.tabmenu01 span.underline02{color: #fff;border-bottom: transparent;}
	button.process_block_a.tabmenu01.button-on{background-color: #fff;}
	button.process_block_a.tabmenu01.button-on span.underline02{color: #3b4043;border-bottom: 3px solid #ffe682;}
/* SP向けレイアウトの指定 */
@media only screen and (max-width:768px){
	.footer_img{ background-size: contain; }
	.footer_navarea{flex-direction: column;}
	div#wpfront-scroll-top-container img {
		width: 55px;
		height: 55px;
	}
	.home_index1::before,.home_index1::after{
		width: 50px;
		height: 25px;
		background-size: 50px auto;
	}
	dt.no_btop{display: none;}
	span.wpcf7-list-item {
		margin: 10px 80px 10px 0px !important;
	  }
	p.contact_attention {
		width: 100%;
		margin: 30px auto;
		font-size: 14px;
	}
	.contact_checkboxarea span {
		font-size: 15px;
	}
	.process_block02 ul{flex-direction: column;}
	.process_block02 li{max-width: 450px;}
	/*
	.responsivenav:has(.list-open) .drawer-nav,
	.responsivenav .drawer-nav:has(.list-close){transform: translateX(-255px);overflow: visible;transition: transform .3s;}
	.responsivenav:has(.list-close) .drawer-nav,
	.responsivena .drawer-nav{transform: translateX(255px);overflow: visible;transition: transform .3s;}
	*/
}
@media only screen and (max-width:460px){
	.menucontent01{display: flex;}
	.process_block_a{font-size: 3.2vw;min-width: unset;}
}