/*
Theme Name: VNS Aoi
Theme URI: 
Description: z
Version: 1.0
Author: KENGO MOROOKA
Author URI: 
*/

/* カラー参考 
コーポレートカラー（青）#00b3c4
文字色 #3f3f3f


*/

@charset "UTF-8";
/* CSS Document */

/* reset */
body, div, dl, dt, dd, ul, ol, li,

h1, h2, h3, h4, h5, h6,

form, input, textarea, p, table, th, td {
	margin: 0;

	padding: 0;

	border: none;

	font-style: normal;

	font-weight: normal;

	font-size: 16px;

	text-align: left;

	list-style-type: none;
	
	line-height: 1.7;
	
}


textarea {
	font-size: 100%;
}


img {
	vertical-align: bottom;
	border: none;
}

/* reset */

/*-----------------
↓↓↓ デフォルト設定　↓↓↓
-------------------*/

body {
	font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
	color: #3f3f3f;
	background: #f0f8f6;
	background: #fff9ec;
}


p{
	font-family: Verdana, Roboto, 'Droid Sans', 'メイリオ', Meiryo, 'ＭＳ Ｐゴシック', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic ProN', sans-serif;
}



a {
	color: #007699;
	text-decoration: none;
}

a:hover {
	color: #0099c7;
	text-decoration:underline;
}

a:hover img{
	opacity: 0.5;
	transition: .3s;
}

html {
	scroll-behavior: smooth;
}


/*-----------------
↑↑↑　デフォルト設定　↑↑↑
-------------------*/

/*-----------------
↓↓↓ レイアウト　↓↓↓
-------------------*/

#wrapper {
	position: relative;
}

#mainContainer{
	box-sizing: border-box;
	width: 1050px;
	min-height: 500px;
	padding: 50px 0;
	margin: 50px auto;
	background: #fff;
	border-radius: 20px;
}


.inner{
	width: 85%;
	max-width: 1000px;
	margin: 0 auto;
	box-sizing: border-box;
}

#mainContainer section{
	margin-bottom: 50px;
}

.flex_box{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}


/*-----------------
↑↑↑ レイアウト　↑↑↑
-------------------*/
/*-----------------
↓↓↓ パーツ　↓↓↓
-------------------*/

.triangle {
	width: 0;
	height: 0;
	border-right: 30px solid transparent;
	border-left: 30px solid transparent;
	border-top: 30px solid #fbdac8;
	margin: 0 auto;
}

/*-----------------
↑↑↑ パーツ　↑↑↑
-------------------*/


/*-----------------
↓↓↓ ヘッダー　↓↓↓
-------------------*/

header{
	position:sticky;
	top:0;
	left:0;
	z-index: 1000;
	background: rgba(255,255,255,.9);
	border-top: 5px solid #00b3c4;
	box-shadow: 1px 1px 10px rgb(0,0,0,15%);
}

#headerInfo {
	max-width: 1200px;
	margin: 0 auto;
	padding: 20px;
	display: flex;
  	justify-content:space-between;
}


header h1 img{
	height: 80px;
}

@media only screen and (min-width:1000px){
	
	nav#gNav {
		width: 100%;
	}


	nav#gNav li.gnav_list {
		display: inline-block;
		padding-top: 1em;
		text-align: center;
		position: relative;
	}

	nav#gNav li.gnav_list > a {
		display: block;
		padding: 0.78em 1.25em;
		color: #00b3c4;
		font-weight: bold;
	}

	nav#gNav li.gnav_list > a:hover {
		text-decoration: none;
		opacity: 0.5;
		transition: .3s;
	}

	nav#gNav li.gnav_list span.english_title{
		display: block;
		color: #efa399;
		font-weight: normal;
		font-size: 12px;
		letter-spacing: .1em;
	}
	
	span.dropdown_arrow {
		display: none;
	}


	ul.dropdown_lists {
		display: none;/*デフォルトでは非表示の状態にしておく*/
		width: 15em;
		position: absolute;
		top: 80px;
		left: 0;
	}

	ul.dropdown_lists.last_child {
		right: 0;
		width: 10em;
	}


	nav#gNav li.gnav_list:hover > ul.dropdown_lists {
		display: block;
	}


	ul.dropdown_lists li:hover {
		background-color: #fff;
		color: #00b3c4;
	}


	ul.dropdown_lists li{
		color: #fff;
		display: block;
		padding: 0.5em 1em;
		background: #00b3c4;
		transition: all .3s;
		position: relative;
	}

	ul.dropdown_lists li a {
		display: flex;
		justify-content: center;
		align-items: center;
		color: #fff;
		text-decoration: none;
		position: relative;
	}

	ul.dropdown_lists li:hover a {
		color: #00b3c4;
	}

}

	#navContact a{
		width: 240px;
		display:  inline-block;
		border: 1px solid #00b3c4;
		background: #00b3c4;
		border-radius: 1.5em;
		font-weight: 900;
		font-size: 20px;
		text-align: center;
		color: #fff;
		padding: .25em 0;
		text-decoration: none;
		position: relative;
		margin: 0 auto;
	}

	#navContact a{
		letter-spacing: .1em;
	}

	#navContact a::before{
		font-family: "FontAwesome";
		content: "\f095";
		position: absolute;
		top:.6em;
		left: .5em;
	}

	#navContact a::before{
		font-family: "FontAwesome";
		content: "\f0e0";
		position: absolute;
		top:.6em;
		left: 1em;
	}

	#navContact a:hover{
		text-decoration: none;
		background: #fff;
		color:#00b3c4;
		transition: .3s;
	}

.breadcrumbs {
	margin: 0 auto;
	padding: .75em 0;
	background: #fff9ec;
	background: #00b3c4;
	color: #fff;
}

.breadcrumbs a{
	color: #fff;
}

/*-------ホームメインビジュアル-------*/


#mainVisual{
	position:relative;
	text-align: center;
	padding-top: 50px;
	padding-bottom: 50px;
	background-image: url("images/mv_bg_01.png"),url("images/mv_bg_02.png");
	background-repeat:no-repeat;
	background-color:#d9eef2;
	background-color: #f0f8f6;
	background-position: top right,bottom left;
	background-size:auto;
}

.mv_inner{
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;	
}



#mainVisual img{
	width: 100%;
	border-radius: 20px;
}




/*-------２階層以降ページタイトル-------*/

#pageTitle {
	background-image: url("images/pagetitle_bg.jpg");
	background-size: cover;
	background-position: center;
	background-repeat: no-repeat;
	display: block;
	text-align: center;
}

#pageTitle h2 {
	position: relative;
	background: #00b3c4;
	display: inline-block;
	padding: .5em 2em;
	margin: 50px 0;
	color:#fff;
	font-size: 30px;
	font-weight: bold;
	border-radius: 10px;
}

#pageTitle h2::before {
    content: "";
    position: absolute;
    bottom: -5px;
    left: 50%;
    width: 15px;
    height: 15px;
    box-sizing: border-box;
    background: #00b3c4;/* 背景色と同じ色を指定 */
    rotate: 135deg;
    translate: -50% 0;
  }

#pageTitle h2::after {
    content: "";
    position: absolute;
    bottom: -8px;
    left: 50%;
    width: 15px;
    height: 15px;
    box-sizing: border-box;
    rotate: 135deg;
    translate: -50% 0;
  }


/*-----------------
↑↑↑ ヘッダー　↑↑↑
-------------------*/


/*-----------------
↓↓↓ ホーム　↓↓↓
-------------------*/


section#News h2 {
	position: relative;
	text-align: center;
	color: #00b3c4;
	font-size: 30px;
	font-weight: bold;
	margin-bottom: 2em;
}

section#News h2::before{
	background-color: #ccc; /* 線の色 */
	border-radius: 5px; /* 線の両端を丸く */
	bottom: -10px; /* 線の位置 */
	content: "";
	height: 3px; /* 線の高さ */
	left: 50%; /* 線の中央寄せ */
	position: absolute;
	transform: translateX(-50%); /* 線の中央寄せ */
	width: 30px; /* 線の長さ */
}

section#News .btn_arrow{
	margin-top: 1em;
	text-align: right;
}



ul.news span.date{
	width: 7em;
	display: inline-block;
	margin-right: 1em;
	color: #999;
}

ul.news span.title{
	display: inline-block;
}

ul.news li {
	display: flex;
	padding: 0.8em 0.5em;
	border-bottom:1px dotted #ccc;
}

ul.news a:hover{
	text-decoration: none;
}

ul.news a > li:hover{
	background:#f9f9f9;
}




.btn_arrow a {
	display:inline-block;
	letter-spacing: .1em;
	border: 1px solid #00b3c4;
	border-radius: 1.5em;
	text-align: center;
	color: #00b3c4;
	padding: .3em 3em .3em 2em;
	position: relative;
}

.btn_arrow a::after{
	font-family: "FontAwesome";
	content: "\f105";
	position: absolute;
	top:.3em;
	right: 1em;
}

.btn_arrow a:hover{
	text-decoration: none;
	background: #00b3c4;
	color:#fff;
	transition: .3s;
}

.btn_arrow_center{
	width: 50%;
	margin: 25px auto;
	display: block;
}

.btn_arrow_center a{
	display:  block;
	letter-spacing: .1em;
	border: 1px solid #00b3c4;
	background: #00b3c4;
	border-radius: 1.5em;
	font-weight: bold;
	font-size: 20px;
	text-align: center;
	color: #fff;
	padding: .5em;
	text-decoration: none;
	position: relative;
}

.btn_arrow_center a::after{
	font-family: "FontAwesome";
	content: "\f105";
	position: absolute;
	top:.3.5em;
	right: 1.5em;
}

.btn_arrow_center a:hover{
	text-decoration: none;
	background: #fff;
	color:#00b3c4;
	transition: .3s;
}


.return{
	text-align: center;
	margin-top: 2em;
}

.return a{
	padding: .3em 2em .3em 3em;
}


.return a::before{
	font-family: "FontAwesome";
	content: "\f104";
	position: absolute;
	top:.5em;
	left: 1em;	
}

.return a::after{
	content: '';
}

section#introduction h2{
	text-align: center;
	color: #00b3c4;
	font-size: 30px;
	font-weight: bold;
}

section#introduction .arrow_bottom{
	text-align: center;
}

section#introduction .arrow_bottom img{
	width: 25%;
}

section#introduction .img_introduction{
	text-align: center;
}

section#introduction .img_introduction img{
	width: 50%;
}


ul.worries{
	margin: 25px 0;
	padding: 30px 50px;
	background: #fff9ec;
	background: #f0f8f6;
	border-radius: 20px;
	position: relative;
	}
	

ul.worries li.worries_list{
	font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
	font-size: 20px;
	background: #fff;
	margin-bottom: 10px;
	padding: .8em 1.3em .8em 2.6em;
	position: relative;
	border-radius: 10px;
}

ul.worries li.worries_list::before{
	font-family: "FontAwesome";
	content: "\f14a";
	position: absolute;
	top:.8em;
	left: 1em;	
	color:#FF7666;
}


ul.worries li.img_worries{
	width: 480px;
	position: absolute;
	bottom: 10px;
	right: 10px;
}



/*-----------------
↑↑↑ ホーム ↑↑↑
-------------------*/

/*-----------------
↓↓↓ メイン共通　↓↓↓
-------------------*/


#main {
	width: 100%;
	padding: 0;
}

#main p {
	line-height: 1.75em;
	margin-top: 1em;
	clear: both;
}

#main h3 {
	position: relative;
	text-align: center;
	color: #00b3c4;
	font-size: 30px;
	font-weight: bold;
	border-left: none;
	padding: 0;
	margin-bottom: 2em;
}

#main h3::before{
  background-color: #CCC; /* 線の色 */
  border-radius: 5px; /* 線の両端を丸く */
  bottom: -10px; /* 線の位置 */
  content: "";
  height: 3px; /* 線の高さ */
  left: 50%; /* 線の中央寄せ */
  position: absolute;
  transform: translateX(-50%); /* 線の中央寄せ */
  width: 30px; /* 線の長さ */
}
/*-----------------
↑↑↑ メイン共通　↑↑↑
-------------------*/



/*-----------------
フッター
-------------------*/

.gotop{
    position: fixed;
    right: 2.5%;
    bottom: 0;
}
.gotop a{
    width: 60px;
    height: 60px;
    display: block;
	background: #00b3c4;
	text-align: center;
	color: #fff;
	font-size: 25px;
	border-radius: 30px;
}

.gotop a:hover {
	text-decoration: none;
     filter:alpha(opacity=70);
     -moz-opacity:0.7;
     -khtml-opacity: 0.7;
     opacity:0.7;
}



#footerInfo {
	background: #fff;
	display: flex;
	justify-content: space-between;
	flex-wrap:wrap;
	
}

#footerLogoArea{
	width: 50%;
	max-width: 480px;
	padding: 50px 0 0 0;
	margin: 0 auto;
}



#footerLogoArea p {
	margin: .5em 0 .5em 0;
	text-align: center;
}

a#footerLogo{
	display: block;
	width: 75%;
	margin: 0 auto;
}

#footerMap{
	width: 50%;
	margin: 0;
	padding-bottom: 0;
}

#footerMap iframe{
	display: block;
}


.btn_call,
.btn_mail{
	margin-top: 1em;
}


.btn_call a,
.btn_mail a{
	width: 65%;
	display:  block;
	border: 1px solid #00b3c4;
	background: #00b3c4;
	border-radius: 1.5em;
	font-weight: 900;
	font-size: 20px;
	text-align: center;
	color: #fff;
	padding: .25em;
	text-decoration: none;
	position: relative;
	margin: 0 auto;
}

.btn_call a{
	letter-spacing: .1em;
}

.btn_call a::before{
	font-family: "FontAwesome";
	content: "\f095";
	position: absolute;
	top:.3em;
	left: 1em;
}

.btn_mail a::before{
	font-family: "FontAwesome";
	content: "\f0e0";
	position: absolute;
	top:.3em;
	left: 1em;
}

.btn_call a:hover,
.btn_mail a:hover{
	text-decoration: none;
	background: #fff;
	color:#00b3c4;
	transition: .3s;
}


#copyright {
	background-color: #00b3c4;
	padding: 20px 0;
	color: #fff;	
}

#copyright p{
	text-align: center;
	font-size: 80%;
	font-weight: normal;
}

/*-----------------
フッター
-------------------*/


/*-----------------
サービス内容
-------------------*/


.service_content{
	box-sizing: border-box;
	width: 49.5%;
	border: 4px solid #eee;
	border-radius: 10px;
	padding:1em;
	margin-bottom: 10px;
}

.service_content h4{
	font-weight: bold;
	font-size: 20px;
	border-bottom: 1px dotted #ccc;
}

#Features .flex_box{
	margin-bottom: 30px;
}

.feature_txt{
	width: 65%;
}

.feature_img{
	width: 30%;
}

.feature_txt h4{
	font-weight: bold;
	font-size: 24px;	
}

span.marker{
	background:linear-gradient(transparent 60%, #feecd2 60%);
}


.area_img{
	text-align: center;
}

.area_img img{
	width: 64%;
}

#Area dl {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-items: start;
	width: 72%;
	margin: 25px auto 0 auto;
}

#Area dl dt{
	display: inline-block;
	width: 20%;
	background: #00b3c4;
	border-radius: 5px;
	text-align: center;
	color: #fff;
	font-weight: bold;
	margin-bottom: 0.5em;
	padding: .3em 0;
	box-sizing: border-box;
}

#Area dl dd{
	width: 79%;
	margin-bottom: 1.5em;
}

#Area dl dd span{
	font-size: 20px;
}


/*-----------------
ご利用案内
-------------------*/

#TargetAudience .flex_box .txt{
	width: 74%;
}

#TargetAudience .flex_box .img{
	width: 25%;
}	


#TargetAudience ul{
	margin: 1em 0;
} 

#TargetAudience ul li{
	font-size: 20px;
	list-style-type: disc;
	list-style-position: outside;
	margin: .5em 0 .5em 1em;
}


.usage_flow {
	padding: 1em 2.5%;
	border: 4px solid #00b3c4;
	border-radius: 15px;
	width: 75%;
	margin: 10px auto;
	box-sizing: border-box;
}

.usage_flow h4{
	color:#00b3c4;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	padding-bottom: .5em;
	border-bottom: 2px solid #00b3c4;
}

.usage_flow ul.contact {
	margin-top: .5em;
	margin-bottom: .5em;
}

.usage_flow ul.contact li{
	display: inline-block;
	margin-right: 1em;
}

.usage_flow ul.contact span{
	font-size: 20px;
	font-weight: bold;
	color:#00b3c4;
}

#Price table{
	margin: 0 auto 15px auto;
	width: 75%;
	border: 4px solid #00b3c4;
	border-radius: 15px;
	border-collapse:separate;
	border-spacing: 0;
	overflow: hidden;
}

#Price table th{
	width: 33%;
	background: #bce2e8;
	text-align: center;
	border-right: 1px solid #00b3c4;
}

#Price table span{
	font-size: 20px;
	font-weight: bold;
	line-height: 2em;
}

#Price table td {
	padding: 1em;
	text-align: center;
	border-bottom: 1px solid #00b3c4;
}

#Price table td.right_top{
	background: #f0f8f6;
}

#Price table td.bottom{
	border-bottom: none;
}

#Price table td.left{
	border-right: 1px solid #00b3c4;

}

#Price .annotation{
	text-align: center;
}

/*-----------------
お知らせページ
-------------------*/

.pagination {
	margin-top: 25px;
	text-align: center;
}

.pagination .page-numbers{
	display:inline-block;
	margin:0 4px;
	padding:8px 14px;
	border-radius:6px;
	text-decoration:none;
	color:#3f3f3f;
	background:#f3f3f3;
	font-size:14px;
	transition:0.2s;
}

.pagination .page-numbers:hover{
	background:#00b3c4;
	color:#fff;
}

.pagination .current{
	background:#00b3c4;
	color:#fff;
}



/*-----------------
singleページ
-------------------*/

article .news_title h1{
	font-size: 24px;
	font-weight: bold;
	color: #00b3c4;
}

article p{
	margin: 1em 0;
}

p.news_date{
	color:#999;
}

ul.next_prev {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

ul.next_prev li{
	display: inline-block;
}

.next_prev{
	margin-top: 2em;
}


.next,
.prev {
	display: inline-block;
}

.prev a,
.next a{
	display: inline-block;
	background-color: #00b3c4;
	border-radius: 5px;
	position: relative;
	color: #fff;
	text-decoration: none;
}

.prev a{
	padding: .3em 1.5em .3em 2.5em;
}

.next a{
	padding: .3em 2.5em .3em 1.5em;
}

.prev a::after{
	font-family: "FontAwesome";
	content: "\f104";
	position: absolute;
	top:.3em;
	left: 1em;
}

.next a::after{
	font-family: "FontAwesome";
	content: "\f105";
	position: absolute;
	top:.3em;
	right: 1em;
}

.prev a:hover,
.next a:hover{
	opacity: .7;
}


/*-----------------
↓↓↓ 事業所概要　↓↓↓
-------------------*/

table.simple_table{
	border-collapse: collapse;
	width: 100%;
	border-top:1px solid #00b3c4;
}


table.simple_table th{
	border-collapse: collapse;
	padding: 1em;
	background: #f0f8f6;
	border-bottom:1px solid #00b3c4;
	width: 25%;
}

table.simple_table td{
	padding: 1em;
	border-bottom:1px solid #ccc;
}

ul.documents {
	
}

ul.documents li{
	padding: 1em 0;
	border-bottom: 1px dotted #ccc;
}

ul.documents li a::after{
  font-family: "Font Awesome 6 Free";
  content: " \f35d"; /* fa-up-right-from-square */
  font-weight: 900;
  margin-left: 5px;
  font-size: 0.8em;
}




/*-----------------
↑↑↑ 事業所概要　↑↑↑
-------------------*/


/*-----------------
↓↓↓ お問い合わせフォーム　↓↓↓
-------------------*/


#ContactForm {
	margin: 0 auto;
	width: 90%;
	border: 4px solid #00b3c4;
	border-radius: 15px;
	padding: 50px;
}

#ContactForm dt{
	margin-bottom: .5em;
}

#ContactForm dd {
	margin-bottom: 2em;
	
}

#ContactForm p{
	margin: 0;
}


#ContactForm span.must {
	display: inline-block;
	width: 4em;
	text-align: center;
	font-size: 12px;
	color: #fff;
	background: #ff6666;
	border-radius: 3px;
	line-height:1em;
	padding: .35em 0;
}


.wpcf7 input[type="text"],
.wpcf7 input[type="email"],
.wpcf7 input[type="tel"]{
	width: 50%;
	border: 1px solid #00b3c4;
	padding: .5em;
	box-sizing: border-box;
	margin-top: 0;
}

.wpcf7 textarea {
	width: 100%;
	border: 1px solid #00b3c4;
	padding: .5em;
	box-sizing: border-box;
	margin-top: 0;
}

.btn_form {
	font-family: "ヒラギノ丸ゴ Pro W4","ヒラギノ丸ゴ Pro","Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","HG丸ｺﾞｼｯｸM-PRO","HGMaruGothicMPRO";
	font-size: 20px;
	font-weight: bold;
	color: #fff;
	background-color: #00b3c4;
	display: block;
	width: 50%;
	padding: .5em;
	margin: 50px auto 0 auto;
	border-radius: 1.5em;
	border: 1px solid #00b3c4;
	text-align: center;
	letter-spacing: .1em;
}


.btn_form:hover {
	color: #00b3c4;
    background-color: #fff;
}


	
	
/*-----------------
↑↑↑ お問い合わせ　↑↑↑
-------------------*/









