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

body{
	zoom:70%;
}

img {
	max-width: 100%;
	height: auto;
}

body {
	font-family: sans-serif !important;
	font-size: 1.0em;
	line-height: 180%;
    min-height: 100vh;
	color: #333;
}

.wrapper{
    min-height: 100vh;
    position: relative;
    padding-bottom: 400px;
    box-sizing: border-box;
}

footer{
    width: 100% !important;
    background-color: #D9E9EE;
	position: absolute !important;
    bottom: 0;
}

#voice {
	display: none;
}

header {
	background-color: #4859B1;
}

#header {
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
	font-size: 0.9em;
}

#header a {
	color: #fff;
	text-decoration: none;
	padding-top: 2px;
	display: block;
}

#header:after {clear: both;height: 0;visibility: hidden;display: block;content: ".";}

.gsc-control-cse,
.gsc-control-cse-ja {
	padding: 0px !important;
	line-height: 100% !important;
	background-color: #4859B1 !important;
    border: 0px !important;
}

#header #language {
	float: right;
	padding-left: 10px;
}

#header #search {
	float: right;
	width: 250px;
	padding-top: 5px;
}

#searcharea {
	padding: 0px !important;
	margin: 0px !important;
	height: 26px !important;
	border-radius: 5px;
	border: 1px solid #ccc;
}


#searchsvg {
	width: 15px;
}


#header #header_nav {
	float: right;
	padding-top: 5px;
}


#header #header_nav li {
	float: right;
	padding-right: 10px;
	padding-left: 10px;
}


#header #header_nav li a:hover {
	color: antiquewhite;
}

#head_logo {
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

#head_logo h1 {
	background-image: url("../images/logo.jpg");
	width: 400px;
	height: 100px;
	text-indent: -9999px;
	float: left;
}


#head_logo h1 a {
	background-image: url("../images/logo.jpg");
	width: 400px;
	height: 100px;
	display: block;
	text-indent: -9999px;
}

.head_menu {
	width: 630px;
	padding-top: 20px;
	float: right;
}

.head_menu li {
	width: 120px;
	float: left;
	text-align: center;
	font-size: 0.85em;
}


.head_menu li img {
	width: 60px;
}

.head_menu a {
	color: #333 !important;
}

.head_menu a:hover {
	text-decoration: none;
	color: #0F1472 !important;
}

.head_menu a:hover img {
	opacity: 0.7;
	
}
.head_menu a p {
	padding-top: 10px;
}




.menu-container {
	clear: both;
}

.menu {
	padding-top: 20px;
	margin-bottom: 20px;
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

.menu > ul > li  {
display: none;
}

.menu > ul > li > a {
	padding: 10px 0px;
	color: #333;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 500;
}

#main_img {
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

.top_box1 {
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

.top_box1 li {
	width: 300px;
	float: left;
	text-align: center;
}


.top_box1 li img {
	width: 290px;
	text-align: center;
}

.top_box1 li p {
	padding-top: 10px;
	width: 290px;
	margin-left: auto;
	margin-right: auto;
	text-align: left;
}

.top_box1 li svg {
	color:#29ABE2; 
}

main {
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

main:after {clear: both;height: 0;visibility: hidden;display: block;content: ".";}

main .left {
	width: 300px;
	float: left;
}

.left h2 {
	border-bottom: 2px solid #5D85FF;
	font-weight: 100;
	margin-top: 15px;
	font-size: 1.3em;
	padding: 15px;
}

.left h2 svg {
	color: #5D85FF;
}


main .main {
	width: 870px;
	float: right;
}

main .main h2 {
	padding-top: 20px;
}

/*#################################################
　#################################################
　コンテンツスタイルシート
　-------------------------------------------------
#################################################*/

.entry-content h2,
.cont_h2 {
	color:#5D85FF;
	font-family: "M PLUS 1p";
	font-weight: 100;
	padding-top: 30px;
	padding-bottom: 20px;
	padding-left: 10px;
	clear: both;
}

.entry-content h3 {
	font-family: "M PLUS 1p";
	padding: 20px;
	width: 98%;
	margin-left:  auto;
	margin-right: auto;
	clear: both;
}

.entry-content h4 {
	font-family: "M PLUS 1p";
	width: 96%;
	margin-left:  auto;
	margin-right: auto;
	padding: 10px;
	clear: both;
}

.entry-content h5 {
	font-family: "M PLUS 1p";
	width: 96%;
	margin-left:  auto;
	margin-right: auto;
	padding: 10px;
	clear: both;
}


.entry-content h6 {
	font-family: "M PLUS 1p";
	width: 94%;
	margin-left:  auto;
	margin-right: auto;
	padding: 10px;
	clear: both;
}

.entry-content p {
	margin-bottom: 20px;
	width: 94%;
	margin-left: auto;
	margin-right: auto;
}

.entry-content table {
	width: 94%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
}

.main table th {
	padding: 10px;
	border: 1px solid #ccc;
	background-color: #F4F5FF;
}

.main table td {
	padding: 10px;
	border: 1px solid #ccc;
}

.entry-content ul {
	width: 94%;
	margin-left: auto;
	margin-right: auto;
}

.entry-content ul li {
	list-style: disc;
	margin-left: 20px;
}

.entry-content ol {
	width: 94%;
	margin-left: auto;
	margin-right: auto;
}

.entry-content ol li {
	list-style: decimal;
	margin-left: 20px;
}

.entry-content dl {
	width: 840px;
	margin-left: auto;
	margin-right: auto;
}

.entry-content dl:after {clear: both;height: 0;visibility: hidden;display: block;content: ".";}

.entry-content dl dt {
	width: 220px;
	padding-right: 20px;
	border-top: 1px dashed #ccc;
	float: left;
	clear: left;
	padding-top: 5px;
	padding-bottom: 5px;
}

.entry-content dl dd {
	border-top: 1px dashed #ccc;
	padding-top: 5px;
	padding-bottom: 5px;
	width: 600px;
	float: left;
}

.entry-content address {
	margin-bottom: 20px;
	width: 94%;
	margin-left: auto;
	margin-right: auto;
}






.left_menu li {
	padding: 10px;
	border-bottom: 1px dashed #ccc;
}

.left_menu li a {
	color: #333;
	display: block;
}
.left_banner {
	margin-top: 20px;
}

.left_banner li {
	margin-bottom: 15px;
}

.left_banner li a {
	display: block;
	border-radius: 10px;
	border: 1px solid #ccc;
}

.left_banner li blockquote {
	padding: 0px;
	margin: 0px;
	padding: 6px;
	float: left;
	width: 80px;
}

.left_banner li blockquote img {
	width: 60px;
	vertical-align: bottom;
}
	
.left_banner li p {
	padding-top: 25px;
	font-size: 0.9em;
}



/*-------------------------------------------------*/

/*タブ切り替え全体のスタイル*/
.tabs {
  margin-top: 30px;
  padding-bottom: 20px;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  width: 870px;
}

/*タブのスタイル*/
.tab_item {
  width: calc(100%/6);
  height: 50px;
  border-bottom: 3px solid #5ab4bd;
  background-color: #d9d9d9;
  line-height: 50px;
  font-size: 16px;
  text-align: center;
  color: #565656;
  display: block;
  float: left;
  text-align: center;
  font-weight: bold;
  transition: all 0.2s ease;
}
.tab_item:hover {
  opacity: 0.75;
}

/*ラジオボタンを全て消す*/
input[name="tab_item"] {
  display: none;
}

/*タブ切り替えの中身のスタイル*/
.tab_content {
  display: none;
  padding: 10px 10px 0;
  clear: both;
  overflow: hidden;
}


/*選択されているタブのコンテンツのみを表示*/
#tabs1:checked ~ #tabs1_content,
#tabs2:checked ~ #tabs2_content,
#tabs3:checked ~ #tabs3_content,
#tabs4:checked ~ #tabs4_content,
#tabs5:checked ~ #tabs5_content,
#tabs6:checked ~ #tabs6_content{
  display: block;
}

/*選択されているタブのスタイルを変える*/
.tabs input:checked + .tab_item {
  background-color: #5ab4bd;
  color: #fff;
}


/*-------------------------------------------------*/

.news dt {
	width: 230px;
	float: left;
	clear: both;
	padding: 10px;
	border-top: 1px dotted #ccc;
	line-height: 160%;
}
.news dd {
	width: 620px;
	float: left;
	padding: 10px;
	border-top: 1px dotted #ccc;
	line-height: 160%;
}

.icon1 {
	background-image: url("../images/top/icon1.jpg");
	background-repeat: no-repeat;
	background-position: right;
}


.icon2 {
	background-image: url("../images/top/icon2.jpg");
	background-repeat: no-repeat;
	background-position: right;
}


.icon3 {
	background-image: url("../images/top/icon3.jpg");
	background-repeat: no-repeat;
	background-position: right;
}


.icon4 {
	background-image: url("../images/top/icon4.jpg");
	background-repeat: no-repeat;
	background-position: right;
}


.icon5 {
	background-image: url("../images/top/icon5.jpg");
	background-repeat: no-repeat;
	background-position: right;
}


.icon6 {
	background-image: url("../images/top/icon6.jpg");
	background-repeat: no-repeat;
	background-position: right;
}


/*-------------------------------------------------*/


#top_banner {
	padding-top: 20px;
	width: 96%;
	margin-left: auto;
	margin-right: auto;
}

#top_banner li {
	margin: 0px !important;
	padding: 0px !important;
	list-style: none !important;
	width: 33% !important;
	float: left !important;
	margin-bottom: 10px !important;
	text-align: center;
}



#footer {
	width: 1200px;
	padding-top: 30px;
	margin-left: auto;
	margin-right: auto;
}

#footer h1 {
	width: 450px;
	float: left;
}


#footer address {
	width: 350px;
	float: left;
	display: block;
	padding-top: 20px;
}

#footer_menu1 {
	border-left: 3px solid #5162B5;
	width: 170px;
	float: right;
	padding-left: 15px;
}



#footer_menu1 svg,
#footer_menu2 svg {
	font-size: 0.9em;
}

#footer_menu2 {
	width: 120px;
	float: right;
}

#footer_menu1 li,
#footer_menu2 li {
	margin-bottom: 7px;
}

footer small {
	display: block;
	clear: both;
	width: 100%;
	padding: 30px;
	border-top: 1px solid #fff;
	text-align: center;
}

#footer_menu {
	background-color: #F1F1F1;
	width: 100%;
	clear: both;
	line-height: 100%;
}

#footer_menu:after {clear: both;height: 0;visibility: hidden;display: block;content: ".";}

#footer_menu a {
	padding: 20px;
	display: block;
}

#footer_menu nav {
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

#footer_menu nav li {
	width: 20%;
	float: left;
}

/*スムーススクロール*/

#page_top{
  width: 50px;
  height: 50px;
  position: fixed;
  right: 10px;
  bottom: 10px;
  background: #113DB4;
  opacity: 0.6;
  border-radius: 50%;
}
#page_top a{
  position: relative;
  display: block;
  width: 50px;
  height: 50px;
  text-decoration: none;
	font-size: 1.6em;
	color: #fff;
	text-align: center;
	padding-top: 3px;
}
#page_top a::before{
	
  font-size: 1.6em;
  color: #fff;
  position: absolute;
  width: 25px;
  height: 25px;
  top: 0;
  bottom: 15px;
  right: 0;
  left: 0;
  margin: auto;
  text-align: center;
}

/*-------------------------------------------------
共通CSSここまで
-------------------------------------------------*/


/*-------------------------------------------------
コンテンツCSSここから
-------------------------------------------------*/

#cont_main {
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
	position: relative;
}

#cont_main img {
	width: 100%;
	height: 180px;
	object-fit: cover;
}

#cont_main h2 {
	position: absolute;
	left:0px;
	top: 60px;
	color: #fff;
	padding: 10px 20px;
	min-width: 300px;
	background-color: rgba(51,51,51,0.49);
	font-size: 1.8em;
	font-family: "M PLUS 1p";
}

.topic_path {
	padding: 20px 20px 0px 20px;
	background-color: #F7F7F7;
	border-bottom: 2px solid #cccc;
	clear:both; 
}

.max_cont {
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
}

.max_cont:after {clear: both;height: 0;visibility: hidden;display: block;content: ".";}

.cont_news {
	width: 100% !important;
	padding: 20px;
    box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
	max-height: 300px;
	overflow-y: auto;
}

.cont_news:after {clear: both;height: 0;visibility: hidden;display: block;content: ".";}

.cont_news dt {
	width: 20%;
	float: left;
	clear: both;
	padding: 10px;
	border-top: 1px dashed #ccc;
}

.cont_news dd {
	width: 80%;
	float: left;
	padding: 10px;
	border-top: 1px dashed #ccc;
}


.list_box {
	width: 33%;
	float: left;
	margin-bottom: 30px;
}


.list_box:nth-child(1),
.list_box:nth-child(4),
.list_box:nth-child(7),
.list_box:nth-child(10),
.list_box:nth-child(13),
.list_box:nth-child(16),
.list_box:nth-child(19) {
	clear: both;
}

.list_box h3 {
	color: #333;
	padding: 10px;
	font-size: 1.4em;
	border-left: 3px solid #4859B1;
	margin-bottom: 20px;
}


.list_box li {
	width: 94% !important;
	margin-left: auto;
	margin-right: auto;
	padding: 10px !important;
	border-bottom: 1px dashed #ccc !important;
	list-style: none !important;
}

.list_box li a {
}



#attention {
	width: 1200px;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 20px;
	padding: 10px;
	border-radius: 20px;
	border: 4px solid #ff0000;
	line-height: 160% !important;
	background-color: #FFF7F7;
}

#attention dt {
	color: red;
	font-size: 1.6em;
	float: left;
	text-align: center;
	width: 200px;
	padding-bottom: 5px;
	padding-top: 5px;
}
#attention dd a {
	color: #FF0000;
}

#attention dd {
	width: 880px;
	font-size: 1.6em;
	float:right;
	padding-bottom: 5px;
	padding-top: 5px;
}

#attention:after {clear: both;height: 0;visibility: hidden;display: block;content: ".";}


.entry-footer {
	clear: both;
}

.post-edit-link {
  display: inline-block;
  padding: 0.5em 1em;
  text-decoration: none;
  background: #668ad8;/*ボタン色*/
  color: #FFF;
  border-bottom: solid 4px #627295;
  border-radius: 3px;
}
.post-edit-link:active {
  /*ボタンを押したとき*/
  -webkit-transform: translateY(4px);
  transform: translateY(4px);/*下に動く*/
  border-bottom: none;/*線を消す*/
}


.search_listbox {
	width: 96%;
	margin-left: auto;
	margin-right: auto;
}

.search_listbox {
	width: 98%;
	margin-left: auto;
	margin-right: auto;
	margin-top: 20px;
}

.search_listbox h2 {
	font-size: 1.0em;
	padding: 10px;
	background-color: #F2F4FB;
}

.wpcf7 {
	width: 96% !important;
	margin-left: auto;
	margin-right: auto;
}

.wpcf7 input[type=text] {
	width: 800px;
	padding: 5px;
	border: 1px solid #ccc;
	border-radius: 10px;
}

.wpcf7 input[type=tel],
.wpcf7 input[type=number] {
	width: 200px;
	padding: 5px;
	border: 1px solid #ccc;
	border-radius: 10px;
}

.wpcf7 input[type=email] {
	width: 300px;
	padding: 5px;
	border: 1px solid #ccc;
	border-radius: 10px;
}

.wpcf7 input[type=date] {
	padding: 5px;
	border: 1px solid #ccc;
	border-radius: 10px;
}

.wpcf7 textarea {
	width: 800px;
	padding: 5px;
	border: 1px solid #ccc;
	border-radius: 10px;
}

.wpcf7 select {
	padding: 5px;
	border: 1px solid #ccc;
	border-radius: 10px;
}

.wpcf7 input[type=submit] {
  position: relative;
  display: inline-block;
  padding: 0.25em 0.5em;
  text-decoration: none;
  color: #FFF;
  background: #03A9F4;/*色*/
  border: solid 1px #0f9ada;/*線色*/
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
  text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}

.wpcf7 input[type=submit]:active {
  /*押したとき*/
  border: solid 1px #03A9F4;
  box-shadow: none;
  text-shadow: none;
}

.wpcf7-not-valid-tip {
	color: red;
	display: block;
}


.screen-reader-response {
	color: red;
	margin-bottom: 20px;
}
.screen-reader-response ul {
	display: none;
}
