/* Generated by less 2.2.0 */
@charset "utf-8";
/* 初期化 */
body,
form,
fieldset,
h1,
h2,
h3,
h4,
h5,
h6,
p,
pre,
span,
table,
tr,
th,
td,
img,
blockquote,
ul,
ol,
li,
dl,
dd,
input,
textarea,
select,
option,
embed,
object {
  margin: 0;
  padding: 0;
  zoom: 1;
}
blockquote,
li,
dt,
dd {
  margin-left: 1em;
}
li {
  margin: 0;
  padding: 0;
  /*IE8 fireFox用*/
  list-style-type: none;
  /*IE6-7用*/
  list-style: none;
}
input,
textarea {
  font-size: 1em;
}
table,
tr,
td,
th {
  border-collapse: collapse;
  border: 0;
}
img {
  border: 0;
}
form {
  margin: 0px;
  padding: 0px;
}
a {
  text-decoration: none;
}
a:hover {
  text-decoration: underline;
  -webkit-transition: 0.3s ease-in-out;
  -moz-transition: 0.3s ease-in-out;
  -o-transition: 0.3s ease-in-out;
  transition: 0.3s ease-in-out;
  color: #289ea0;
  text-decoration: none;
}
strong {
  font-weight: bold;
}
ol {
  width: auto;
}
ol li {
  margin-left: 20px;
  list-style: decimal !important;
  max-height: 100%;
}
ul {
  width: auto;
}
ul li {
  margin-left: 1.5em;
  list-style: disc !important;
  max-height: 100%;
}
/* IE6/7 brが改行されないバグ */
br {
  letter-spacing: 0;
}
p {
  line-height: 1.7;
  margin-bottom: 10px;
  max-height: 100%;
}
table {
  border-collapse: collapse;
  border-spacing: 0;
}
/* clearfix */
.clearfix {
  width: 100%;
  clear: both;
}
.clearfix:after {
  content: " ";
  display: block;
  height: 0;
  clear: both;
  visibility: hidden;
}
.clearfix {
  display: inline-table;
}
/* Hides from IE-mac */
* html .clearfix {
  height: 1%;
}
.clearfix {
  display: block;
}
/* ---------------------------------------------*/
/* 共通エレメント */
/* ---------------------------------------------*/
html {
  font-size: 62.5%;
  margin-top: 0 !important;
}
body {
  font-size: 14px;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  color: #333;
  text-align: justify;
  text-justify: inter-ideograph;
  -webkit-text-size-adjust: 100%;
}
#contents a {
  color: #846F75;
}
#contents a:hover {
  color: #50B6B1;
}
img:hover {
	opacity: .8;
}
.fs10 {
  font-size: 10px;
}
.fs12 {
  font-size: 12px;
}
.fs13 {
  font-size: 13px;
}
.fs14 {
  font-size: 14px;
}
.fs15 {
  font-size: 15px;
}
.fs16 {
  font-size: 16px;
}
.fs18 {
  font-size: 18px;
}
.fs32 {
  font-size: 32px;
  margin: 0;
  padding: 10px 0 !important;
  line-height: 1;
}
.ml15 {
  margin-left: 15px;
}
.ml20 {
  margin-left: 20px;
}
.ml35 {
  margin-left: 20px;
}
h1,
h2,
h3,
h4,
h5,
h6 {
  clear: both;
}
/* 見出し */
#page_title_wrapper {
  width: 100%;
  margin-top: 0px;
}
#page_title_inner {
    padding: 30px 0 0;
    margin: 0px auto 0px;
    font-size: 28px;
    font-weight: normal;
    text-align: center;
	position: absolute;
	top: 108px;
	width: 100%;
	
}


#page_title_wrapper h2.category_title {
    color: #fff !important;
    font-size: 28px;
    font-weight: bold;
    text-align: center;
    margin-bottom: 60px;
	position: absolute;
	top:198px;
	width: 100%;
	
}
#page_title_wrapper h2.kiji_title {
    color: #846F75;
    font-size: 28px;
    font-weight: bold;
    text-align: left;
    position: relative;
    margin: 0 0 60px;
	border-bottom:2px solid #846F75;
}
#page_title_wrapper h2.kiji_title a {
    color: #846F75 !important;
	border-bottom:2px solid #846F75;
}
#page_title_wrapper h2.kiji_title a:hover {
	text-decoration: none;
    color: #50B6B1 !important;
	border-bottom:2px solid #50B6B1;
}

h2.heading{
color: #333;
font-size: 24px;	
font-weight: bold;	
font-family: 游ゴシック体;	
text-align: center;	
padding: auto 120px auto 120px;
 margin: 20px auto 20px 100px;
 
}



h2.top_text{
	color: #FFFFFF;
    font-size: 36px;
    font-weight: bold;
    margin: 120px auto 120px auto;
    
}

h2.kiji_title {
	color: #846F75;
    font-size: 28px;
    font-weight: bold;
    text-align: left;
    position: relative;
	margin: 35px 0 20px;
	padding: 0;
	width: 100%;
	border-bottom:0;
}
h2.kiji_title a {
	display: block;
	color: #846F75 !important;
	border-bottom:2px solid #846F75;
}
h2.kiji_title a:hover {
	text-decoration: none;
	color: #50B6B1 !important;
	border-bottom:2px solid #50B6B1;
}

h3 {
	font-family: "游ゴシック体", YuGothic;
	font-size: 22px;
    padding: 1px 10px;
	margin: 35px 0 20px;
	min-height: 42px;
	border-bottom: 1px solid #999999;
	position: relative;
}

h4 {
	font-family: "游ゴシック体", YuGothic;
    font-size: 20px;
    color: #333;
    margin: 35px 0 20px;
	padding-left: 10px;
    border-left: 4px solid #219aaa;
}

h5 {
	font-family: "游ゴシック体", YuGothic;
    color: #333;
	font-size: 18px;
    max-height: 100%;
    margin: 35px 0 20px;
	padding-left:20px;
	padding-bottom: 10px;
    font-size: 20px;
	border-bottom: 2px solid #219aaa;
	position: relative;
}
h5:before {
        background: #219aaa;
        content: "";
        height: 10px;
        width: 10px;
        left: 3px;
        position: absolute;
        top: 11px;
}
h6 {
	font-family: "游ゴシック体", YuGothic;
    color: #FFFFFF;
    font-size: 20px;
    margin: 35px 0 20px;
    padding-left: 25px;
	position: relative;
	display: flex;
    align-items: center;
	background-color:#219aaa;
}



table {
  	width: 100%;
	border:2px solid #219aaa;
	margin-bottom: 30px;
	font-size: 16px;
}
table tr {
  	border-top: 2px solid #219aaa;
}
table th {
  	text-align: left;
	display: block;
	background:#219aaa;
	padding: 10px 15px;
	color: #FFFFFF;
	font-weight: bold;
}
table td {
	display: block;
	padding: 10px 15px;
}
table.border-none,
table.border-none th,
table.border-none td {
  border: none;
  text-align: center;
  margin: 0;
  padding: 0 0 10px 0;
}
table.border-none td img {
  margin-bottom: 5px;
}
@media (min-width: 768px) {
    table th {
        text-align: left;
        display:table-cell;
		max-width: 70px;
        width:auto;
		border-bottom: 2px solid #FFFFFF !important;
    }
    table td {
        display:table-cell;
        width:auto;
		
    }
	table tr:last-child th{
	border-bottom: 2px solid #219aaa !important;
	}
}
.box {
  padding-bottom: 20px;
}
.bold {
  font-weight: bold;
}
.clear {
  clear: both;
  margin-bottom: 10px;
}
.pink {
  color: #FF1F80;
}
.mail-link {
  font-size: 14px;
  padding: 8px 0px;
  background-color: #FF1F80;
  display: block;
  color: #FFF !important;
  width: 192px;
  text-align: center;
}
.mail-link:hover {
  background-color: #A2CA0F;
  text-decoration: none;
}
table.type2 {
	border: 1px solid #E7E7E7 !important;
}
table.type2 th {
	text-align: center;
	display: table-cell;
	background:#FFF8EB;
	padding: 10px 15px;
	color: #846F75;
	font-weight: bold;
	border-left: 1px solid #E7E7E7;
	border-top:none !important;
}
table.type2 tr {
	border-top:none !important;
}
table.type2 tr:nth-child(even){
	background: #eee;
}
table.type2 td {
	display: table-cell;
	padding: 10px 15px;
	border-left: 1px solid #E7E7E7;
}
@media (min-width: 768px) {
    table.type2 td {
        width:auto;
    }
}
ul.type2{
	padding: 0px 0 20px 0;
}
ul.type2 li{
	list-style: none !important;
	font-size:16px; 
	padding: 0px 0 0 5px;
	margin: 10px 0 0;
}
ul.type2 li:first-child{
	margin: 0;
}
ul.type2 li:before {
	content: '';
	width: 10px;
	height: 10px;
	display: inline-block;
	border-radius: 100%;
	background: #333;
	position: relative;
	left: -5px;
	top: -1px;
}
ol.type2{
	padding: 0px 0 20px 0;
}
ol.type2 li{
	counter-increment: number;
    list-style: none !important;
	font-size:16px; 
	padding: 0px;
	margin: 10px 0 0;
}
ol.type2 li:first-child{
	margin: 0;
}
ol.type2 li:before {
	content: counter(number) ".";
  margin-right: 3px;
  color: #333;
}

/* ---------------------------------------------*/
/* レイアウト */
/* ---------------------------------------------*/
* {
    box-sizing: border-box;
}
#contents_wrapper {
	width: 100%;
	height: auto !important;
	clear: both;
}
#contents {
	padding-bottom: 0px;
	line-height: 1.7;
}
#main-contents {
	margin: 0 auto;
	padding: 0 15px 75px;
}
@media (min-width: 768px) {
    #main-contents {
		max-width: 750px;
	}
}
@media (min-width: 992px) {
    #main-contents {
		max-width: 970px;
	}
}
@media (min-width: 1200px) {
    #main-contents {
		max-width: 1170px;
	}
}

#sub #main-contents {
	padding-top: 50px;
}
/* ------------------------------------------ */
/* ヘッダー */
/* ------------------------------------------ */
#header {
	margin-top: 0px;
	width: 100%;
	padding: 0 15px;
}
#header-content {
    position: relative;
	width: 100%;
	height: 100%;
    margin: 0 auto;
	padding-top: 10px ;
	padding-bottom: 10px;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
#header-content #site-title a {
    display: flex;
    align-items: center;
}
.logo_area {
	flex-basis: 273px;
	width: 273px;
	height: auto;
	padding-right: 10px;
}
.logo_area img {
	width: 100%;
    height: auto;
}
#header {
	position: absolute;
	z-index: 999;
	background: #fff;
}
@media (min-width: 768px) {
    #header {
        height: 80px;
    }
    #header-content {
		max-width: 750px;
        padding: 17px 0;
    }
	.logo_area {
		flex-basis: 273px;
		width: 273px;
	}
}
@media (min-width: 992px) {
    #header-content {
		max-width: 992px;
    }
}
@media (min-width: 1200px) {
    #header-content {
		max-width: 1170px;
    }
}

.gnav {
    flex-basis: 30px;
    width: 30px;
    height: 29px;
    display: block;
    padding: 0 !important;
	margin-left: auto;
}
.gnav li {
  width: 30px;
  float: left;
  display: block;
  margin:10px 10px 10px 10px !important;
  padding: 0 !important;
  background: #E3DECC;
}
.gnav li.end {
  width: 33%;
  float: left;
  display: block;
  margin: 0 !important;
  padding: 0 !important;
  background: #fff;
}
@media (min-width: 992px) {
	.gnav {
		display: none;
	}
}
.gnav img {
  margin: 0 !important;
  padding: 0 !important;
}
#global_navi {
    width: 30px;
    height: 29px;
}
#global_navi img {
    width: auto;
    height: auto;
}
.title_box {
  width: 470px;
  height: 100px;
  float: right;
  margin-top: 20px;
}
.title_box a {
  margin: 0px;
}
.title_box img {
  margin: 0px;
}
.title_box p {
  margin: 0px;
}

/* スマホメニュー */
/* ------------------------------------------- */
.home_link{
	padding: 0px;
	margin: 30px 20px 20px 15px;
	font-size: 16px;
}
.home_link a {
	font-size: 16px;
	color: #333;
	padding: 10px 10px 10px 0;
}
.right_modoru {
    width: 50px;
    height: 50px;
    display: block;
    margin: 15px 15px 0 auto;
    font-size: 30px;
    border: 1px solid #333;
	text-align: center;
}
.modalcontent ul {
	margin-top: 0;
	padding: 0px 15px;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: center;
}
.modalcontent ul li {
  width: 100%;
  padding: 0px;
	margin: 0;
  list-style: none !important;
}
.modalcontent ul li + li {
  margin-top: 10px;
}
@media (min-width: 768px) {
	.modalcontent ul li {
		width: 49%;
	}
	.modalcontent ul li + li {
	  margin-top: 0;
	}
	.modalcontent ul li:nth-child(n+3) {
	  margin-top: 10px;
	}
}
.modalcontent ul li a {
	width: 100%;
	line-height: 30px;
	text-align: left;
	color: #333;
	display: block;
	font-size: 16px;
	padding: 5px 15px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	-moz-border-radius: 3px;
	border: 1px solid #333;
}
.modalcontent ul li a:hover {
	color: #50B6B1;
	border-color: #50B6B1;
}
.modalcontent p {
	margin-left: 20px;
	margin-top: 10px;
	color: #333;
	font-size: 12px;
}

/* ------------------------------------------ */
/* フッター */
/* ------------------------------------------ */
#footer-wrap {
	width: 100%;
	margin: 0px;
		
}
#footer-wrap .footer_contact{
	background: url("../../img/public/site/common/laptop.jpg") no-repeat center center;
	width: 100%;
	height: 400px;
	padding-top: 135px;
}
#footer-wrap .footer_contact a.btn{
	border: 1px solid #fff;
	color: #fff;
}
#footer-wrap .footer_contact a.btn:hover{
	border: 1px solid #fff;
	color: #333;
	background: #fff;
}
#footer-wrap .footer_contact a.btn:hover::after{
	color: #333;
}
#footer-wrap .inner {
	padding: 50px 15px 35px;
    max-width: 1170px;
	margin: 0 auto;
}
#footer-wrap .snsWrap {
	display: flex;
    flex-wrap: nowrap;
    justify-content: center;
    align-items: center;
	margin: 0 auto 30px;
}
#footer-wrap .snsWrap li {
	flex-basis: auto;
    width: auto;
	list-style-type: none !important;
	margin: 0;
}
#footer-wrap .snsWrap li + li {
	margin-left: 20px;
}
#footer-wrap .snsWrap li img {
	width: 74px;
	height: auto;
}
#PageTop a {
	color: #fff;
	text-align: center;
	display: block;
	padding: 6px 5px 6px;
}
#footer {
    width: 100%;
    text-align: center;
}
.footer_logo {
	margin-bottom: 30px;
}
.footer_logo img {
	max-width: 268px;
	width: 100%;
	display: block;
 margin-left: auto;
 margin-right: auto;
}
.footer_logo a {
    display: inline-block;
}
.footer_navi {
	display: none;
}
.footer_navi a:hover {
	color: #50B6B1;
	text-decoration: underline;
}
#footer .inner p {
    color: #fff;
    padding: 15px 0 0;
}
.copy {
	margin: 0;
	color: #846F75;
	font-size: 12px;
}
@media (min-width: 768px) {
	#footer-wrap .inner {
		padding-bottom: 30px;
	}
    .footer_navi {
        display: block;
        margin: 0 auto 50px;
    }
    .footer_navi li {
        list-style: none !important;
        display: inline-block;
        position: relative;
    }
    .footer_navi li + li {
        margin-left: 3px;
        padding-left: 10px;
    }
    .footer_navi li + li:before {
        content: "|";
        position: absolute;
        top: 0;
        left: 0;
        color: #333;
    }
    .footer_navi li a {
        color: #333;
    }
}
@media (min-width: 992px) {
	#footer-wrap .inner {
		padding-bottom: 70px;
	}
}

/* パンくず */
.pagenavi_box{
	padding: 5px 0 5px;
	width: 100%;
    color: #333;
	background: #EFEFEF;
}
#kuzu {
	font-size: 12px;
	width: 100%;
	display: block;
	margin: 0px auto;
	padding: 0 15px;
}
#kuzu a {
	color: #846F75;
}
@media (min-width: 768px) {
	#kuzu {
		max-width: 750px;
	}
}
@media (min-width: 992px) {
	#kuzu {
		max-width: 970px;
	}
}
@media (min-width: 1200px) {
	#kuzu {
		max-width: 1170px;
	}
}
/* pagenavi */
.pagenavi {
	padding: 0;
	width: 50px;
	float: left;
	display: block;
	text-align: right;
}
.pagenavi ul {
	margin: 0;
	padding: 0;
}
.pagenavi ul li {
	float: left;
	list-style: none outside none;
	margin: 0 5px 12px 0;
	list-style: none !important;
}
.pagenavi ul li a {
	display: block;
	margin-left: 0;
}
/* pagenavi2 */
.pagenavi2 {
	width: 100%;
}
.pagenavi2 ul {
	margin: 0;
	padding: 0;
	width: 100%;
}
.pagenavi2 ul li {
	display: inline-block;
	margin: 0;
	list-style: none !important;
}
.pagenavi2 ul li a {
	display: block;
	width: 20px;
	height: 20px;
	border-radius: 100%;
	background-color: #219AAA;
	color: #fff !important;
	font-size: 12px;
	position: relative;
}
.pagenavi2 ul li.previous a::before,
.pagenavi2 ul li.next a::before {
	display: block;
	color: #fff;
	position: absolute;
	top:1px;
	font-size: 11px;
}
.pagenavi2 ul li.previous a::before {
	content: "◀";
	left: 3px;
}
.pagenavi2 ul li.next a::before {
	content: "▶";
	right: 3px;
}

/* ---------------------------------------------*/
/* HOME */
/* ---------------------------------------------*/
/* 共通 */
.btn {
	max-width: 290px;
    margin: 35px auto 35px auto;
    height: 60px;
    align-items: center;
    border: 1px solid #333333;
	position: relative;
	display: block;
	line-height: 60px;
	padding: 0 20px;
	transition: all ease-in-out 0.3s;
	color: #333;
}
.btn:after {
	font-size: 20px;
	content: "→";
	top: 0px;
right: 16px;
	position: absolute;
	
}
.btn:hover {
	background-color: #219aaa;
	color: #fff;
	border: 1px solid #219aaa;
}
.btn:hover:after {
  	color: #fff;
}

/* メインイメージ */
.main_area {
	height: 420px;
 	margin: 0 auto;
	position: relative;
	overflow: hidden;
}

.main_text h2{
    margin-bottom: 10px;
}

@media (min-width: 768px) {
.main_area {
	height: 683px;
 	margin: 0 auto;
	position: relative;
	overflow: hidden;
}
.main_text h2{
    margin-bottom: 100px;
}
}
.main_img {
    margin: -116px auto 0 !important;
    position: relative;
    overflow: hidden;
}
.main_img .main_text p {
    margin-top: 20px;
}
.main_img .main_slider {
	position: relative;
}
.main_img .main_slider .slick-slide {
	height: 600px;
}
.main_img .main_slider li {
	margin: 0;
	height: 600px;
}
.main_img .main_slider li img {
	width: auto;
	height: 100%;
	position: absolute;
	top: 64%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.main_img .main_slider li img:hover {
	opacity: 1 !important;
}
.main_img .main_text {
	width: 100%;
	font-size: 36px !important;
	
	padding: 0 15px;
	text-align: center;
	position: absolute;
	bottom: 150px;
	left: 50%;
	transform: translate(-50%, 0);
	color: #fff;
	font-weight: bold;
}
@media (min-width: 768px) {
	.main_img .main_slider .slick-slide {
		height: 800px;
	}
	.main_img .main_slider li {
		height: 800px;
	}
    .main_img .main_text {
        font-size: 36px;
    }
}
@media (min-width: 992px) {
	.main_img .main_slider li img {
		width: 100%;
		height: auto;
	}
}
/* メインメニュー */
.main_navi {
	display: none;
}
.main_navi ul.main_navi_inner.pc_navi {
	display: none;
}
@media (min-width: 1000px) {
	.main_navi {
		display: block;
		position: relative;
		width: 100%;
		height: 100px;
		margin: 0 auto;
		color: #000000;
		font-size: 16px;
	}
	.blue_circle li {
		background-color: #219aaa; 
	}
	.main_navi ul.main_navi_inner.sp_navi {
		display: none;
	}
	.main_navi ul.main_navi_inner.pc_navi {
		display: block;
	}
	.main_navi ul.main_navi_inner {
		display: flex;
		flex-wrap: nowrap;
		justify-content: right;
		align-items: center;
		text-align: center;
		height: 100%;
	}
	.main_navi ul.main_navi_inner > li {
		list-style-type: none !important;
		margin: 0;
		position: relative;
	}
	.main_navi ul.main_navi_inner > li + li {
		padding-left: 30px;
	}
	
	.main_navi ul.main_navi_inner > li a {
		color: #000000;
	}
	.main_navi ul.main_navi_inner > li a:hover {
		text-decoration: none;
		color: #219AAA;
	}
	ul.sub_menu {
		visibility: hidden;
		opacity: 0;
		z-index: 1;
	}
	.main_navi ul.main_navi_inner > li.menu_toggle {
		position: relative;
		padding-right: 20px;
	}
	
	.main_navi ul.main_navi_inner > li a.otoiawase {
		background: #219AAA;
		display: block !important;
		width: 160px;
		height: 40px;
		line-height: 40px;
		font-size: 14px;
		border-radius: 25px;		
	-webkit-border-radius: 25px;	
	-moz-border-radius: 25px;
		color: #fff;
		border: 1px solid #219AAA;
	}
	.main_navi ul.main_navi_inner > li a.otoiawase:hover {
		background: #fff;
		display: block !important;
		width: 160px;
		height: 40px;
		line-height: 40px;
		font-size: 14px;
		border-radius: 25px;		
	-webkit-border-radius: 25px;	
	-moz-border-radius: 25px;
		color: #219AAA;
		text-decoration: none;
	}

	li.menu_toggle ul.sub_menu {
		position: absolute;
		top: 26px;
		left: -45px;
		min-width: 160px;
		-webkit-transition: all .2s ease;
		transition: all .2s ease;
	}

	li.menu_toggle:hover ul.sub_menu {
		visibility: visible;
		opacity: 1;
		background-color: rgba(255,255,255,.8);
	}
	.sub_menu li {
		border-bottom: 1px solid #E7E7E7;
		display: block;
		width: 100%;
		text-align: center;
		margin: 0;
	}
	.sub_menu li:last-child {
		border-bottom: 0;
	}
	.sub_menu li a {
		display: block;
		padding: 15px;
	}
	.sub_menu li a:hover {
		text-decoration: none !important;
		background-color: #FFF8EB;
	}
	.main_navi ul.main_navi_inner .menu_toggle:after {
		content: '';
		display: inline-block;
		width: 6px;
		height: 6px;
		margin: 0 10px 0 15px;
		border-right: 1px solid #846F75;
		border-bottom: 1px solid #846F75;
		-webkit-transform: rotate(45deg);
		-ms-transform: rotate(45deg);
		transform: rotate(45deg);
		position: absolute;
		top: 50%;
		right: -5px;
		margin-top: -5px;
	}
}
/* トップコンテンツエリア */
.top_contents {
  width: 100%;
  margin-top: 0px !important;
}
.top_contents h2 {
    color: #333;
    font-size: 28px;
    font-weight: normal;
	text-align: center;
	padding: 0;
	margin: 0 0 30px 0 !important;
}

.top_contents .inner {
	margin: 0px auto;
	padding: 31px 15px 0;
}
.top_contents .inner p {
	font-size: 20px;
	color: #333 !important;
	padding-top: 3px;
	padding-bottom: 10px;
	padding-left: 0px;
	width: 100%;
	margin-bottom: 3px !important;
}
@media (min-width: 768px) {
	.top_contents .inner {
		max-width: 750px;
	}
}
@media (min-width: 992px) {
	.top_contents .inner {
		max-width: 970px;
	}
	.top_contents .inner p {
		font-size: 20px;
		color: #333 !important;
		padding-top: 3px;
		padding-left: 0px !important;
		width: 100%;
		margin-bottom: 3px !important;
		padding-bottom: 3px;
	}
}
@media (min-width: 1200px) {
	.top_contents .inner {
		max-width: 1170px;
	}
}



/* 	キャッチコピーエリア */

.catch_copy_area {
	padding: 30px 0;
}
.catch_copy_area .bg_software{
	background-size: 300px;
	background-position: left -90px top -90px; 
	
}
@media (min-width: 768px) {
.catch_copy_area {
	padding: 0;
	background: url("../../img/public/site/home/software-657188_1920.jpg") no-repeat bottom right;
}
.catch_copy_area .bg_software{
	padding: 30px 0;
	background: url("../../img/public/site/home/network-3537400_1920.jpg") no-repeat center center;
	background-size: 300px;
	background-position: left -90px top -90px; 
}
}
.catch_copy_area .inner .topics_list {
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.catch_copy_area .logo_b{
	text-align: center;
	padding-bottom: 20px;
}
.catch_copy_area .logo_b img{
	margin: 0 auto;
	width: 194px;
}
.catch_copy_area p{
	text-align: center;
	font-size: 14px !important;
}

.catch_copy_area .link_list ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-bottom: 15px; 
  padding-top: 20px;
}

.catch_copy_area .link_list ul li {
    flex-basis: 100%;
    width: 100%;
    margin-bottom: 20px;
	list-style: none !important;
	padding: 0;
	margin: 0 0 10px 0;
}
@media print, screen and (min-width: 1000px) {
.catch_copy_area .link_list ul:after {
    content: "";
    width: 31%; 
}
.catch_copy_area .link_list ul li {
    flex-basis: 31%;
    width: 31%; 
}

}
.catch_copy_area .link_list ul li a{
    width: 100%;
    padding-bottom: 60% ;
	display: block;
	position: relative;
	background-size: 100% !important;
	background-repeat: no-repeat !important;
}
.catch_copy_area .link_list ul li a:hover{
    filter:alpha(opacity=50);
    -moz-opacity: 0.5;
    opacity: 0.5;
}
.catch_copy_area .link_list ul li a span{
    width: 100%;
	position: absolute;
	top:50%;
	margin-top: -15px;
	text-align: center;
	color: #fff;
	font-size: 24px;
	text-shadow: 1px 2px 3px #808080;
}
.catch_copy_area .link_list ul li.img_1 a {
    background: url("../../img/public/site/home/about01.jpg")
}
.catch_copy_area .link_list ul li.img_2 a {
    background: url("../../img/public/site/home/about02.jpg")
}
.catch_copy_area .link_list ul li.img_3 a {
    background: url("../../img/public/site/home/about03.jpg")
}


/* お知らせ */
.news_top_area {
	padding-bottom: 30px;
	background: #EFEFEF;
}
.news_top_area .inner .news_list li {
    flex-basis: 100%;
    width: 100%;
	list-style-type: none !important;
	margin: 0;
	padding-bottom: 5px;
}
.news_top_area .inner .news_list li + li {
    margin-top: 30px;
}
.news_top_area .inner .news_list li a {
    margin: 0;
    padding: 0;
}
.news_top_area .inner .news_list li a:hover {
    text-decoration: none;
}
.news_top_area .inner .news_list li .cat_time_box {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
	margin-bottom: 10px;
	float: left;
  	width: 235px;
}
.news_top_area .inner .news_list li .date {
	font-size: 16px;
	padding-right: 20px;
	color: #666;
}
.news_top_area .inner .news_list li .cat_name {
	font-size: 12px;
    font-weight: normal;
    text-align: center;
	background: #219AAA;
	width: 150px;
	height: 30px;
	line-height: 30px;
	color: #fff;
}
.news_top_area .inner .news_list li .text {
    
	
}
@media (min-width: 992px) {
.news_top_area .inner .news_list li .text {
    float: right;
  width : -webkit-calc(100% - 255px) ;
  width : calc(100% - 255px);
	
}
}
.news_top_area .inner .news_list li .text a {
    color: #333;
    font-weight: normal;
    font-size: 16px;
    display: block;
    clear: both;
    padding-bottom: 10px;
	
}
.news_top_area .inner .news_list li .text a:hover {
    color: #219AAA;
	
}
@media (min-width: 768px) {
	.news_top_area .inner .news_list li {
		flex-basis: 100%;
		width: 100%;
	}
	.news_top_area .inner .news_list li + li {
		margin-top: 0;
	}
	
}




/* ページトップへ戻る */
#page-top {
    position: fixed;
    bottom: 0;
    right: 15px;
	background-color: #219aaa;
	width: 70px;
	height: 40px;
	margin: 0;
}

/* お知らせ一覧ページ */
#news_page #info-list{
	width:100%;
	display:block;
	float:right;
	margin-top:30px;
	padding-bottom:50px;
}
#news_page #info-list li {
    flex-basis: 100%;
    width: 100%;
	list-style-type: none !important;
	margin: 0;
	padding-bottom: 5px;
}
#news_page #info-list li + li {
    margin-top: 30px;
}
#news_page #info-list li a {
    margin: 0;
    padding: 0;
}
#news_page #info-list li a:hover {
    text-decoration: none;
}
#news_page #info-list li .cat_time_box {
    display: flex;
    flex-wrap: nowrap;
    align-items: center;
	margin-bottom: 10px;
	float: left;
  width: 240px;
}
#news_page #info-list li .date {
	font-size: 16px;
	padding-right: 20px;
	color: #666;
}
#news_page #info-list li .cat_name {
	font-size: 12px;
    font-weight: normal;
    text-align: center;
	background: #219AAA;
	width: 120px;
	height: 30px;
	line-height: 30px;
	color: #fff;
}
#news_page #info-list li .text {
    
	
}
@media (min-width: 992px) {
#news_page #info-list li .text {
    float: right;
  width : -webkit-calc(100% - 240px) ;
  width : calc(100% - 240px);
	
}
}
#news_page #info-list li .text a {
    color: #333;
    font-weight: normal;
    font-size: 16px;
    display: block;
    clear: both;
    padding-bottom: 10px;
	
}
#news_page #info-list li .text a:hover {
    color: #219AAA;
	
}
@media (min-width: 768px) {
	#news_page #info-list li {
		flex-basis: 100%;
		width: 100%;
	}
	#news_page #info-list li + li {
		margin-top: 0;
	}
	
}


/* ---------------------------------------------*/
/* サブページ共通 */
/* ---------------------------------------------*/
#sub .sub_main_area {
	background: url("../../img/public/site/sub/listmain_sample.jpg") no-repeat center center;
	background-size: 900px auto;
	height: 380px;
}
@media (min-width: 768px) {
	#sub .sub_main_area {
		background: url("../../img/public/site/sub/listmain_sample.jpg") no-repeat center center;
		background-size: 1200px auto;
		height: 380px;
	}
}
@media (min-width: 992px) {
	#sub .sub_main_area {
		background: url("../../img/public/site/sub/listmain_sample.jpg") no-repeat center center;
		background-size: cover;
	}
}
#sub .sub_main_area {
	position: relative;
}
#sub .sub_main_area {
	position: relative;
}

#main-contents img {
 	max-width: 100%;
	height: auto;
}
#sub p {
	font-size: 16px;
	line-height: 1.4;
}
#sub .inner {
	margin: 0px auto;
	padding: 30px 15px;
}
@media (min-width: 768px) {
	#sub .inner {
		max-width: 750px;
	}
}
@media (min-width: 992px) {
	#sub .inner {
		max-width: 970px;
	}
}
@media (min-width: 1200px) {
	#sub .inner {
		max-width: 1170px;
	}
}

/* 注目記事一覧ページ */
#sub #topics-list {
	width: 100%;
	padding-bottom: 60px;
	display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
#sub #topics-list .img_box {
	margin-bottom: 20px;
	width: 100%;
    overflow: hidden;
    position: relative;
}
#sub #topics-list .img_box:before {
	content: '';
    display: block;
    width: 100%;
    height: 0;
    padding-bottom: 66.5%;
}
#sub #topics-list .img_box img {
	border-radius: 7px;
}
#sub #topics-list li {
	flex-basis: 100%;
	width: 100%;
	height: auto;
	list-style: none !important;
	margin:50px;
}
#sub #topics-list li + li {
	margin-top: 40px;
}
#sub #topics-list li .img_box img {
	width: 100%;
    height: auto;
    vertical-align: bottom;
    position: absolute;
    top: 50%;
    left: 50%;
    -webkit-transform: translate(-50%, 0);
    -ms-transform: translate(-50%, 0);
    transform: translate(-50%, -50%);
}
#sub #topics-list li a {
  color: #595757;
}
#sub #topics-list li .title {
    display: block;
	font-size: 22px;
    line-height: 1.6;
    font-weight: bold;
    padding-left: 10px;
    margin-bottom: 20px;
    border-left: 4px solid #846F75;
}
#sub #topics-list li a:hover .title {
    color: #50B6B1;
}
#sub #topics-list li .text {
	color: #666;
	line-height: 1.6;
	font-weight: normal;
}
#sub #topics-list li a:hover .text {
    color: #50B6B1;
}
@media (min-width: 768px) {
	#sub #topics-list li {
		flex-basis: 48%;
		width: 48%;
	}
	#sub #topics-list li + li {
		margin-top: 0;
	}
	#sub #topics-list li:nth-child(n+3) {
		margin-top: 40px;
	}
}
@media (min-width: 992px) {
	#sub #topics-list:before {
		content: "";
		display: block;
		flex-basis: 32%;
		width: 32%;
		order: 1;
	}
	#sub #topics-list:after {
		content: "";
		display: block;
		flex-basis: 32%;
		width: 32%;
	}
	#sub #topics-list li {
		flex-basis: 32%;
		width: 32%;
	}
	#sub #topics-list li:nth-child(n+3) {
		margin-top: 0;
	}
	#sub #topics-list li:nth-child(n+4) {
		margin-top: 40px;
	}
}

.img_left_box{
	width: 100%;
	float: left;
}
.img_left_box img{
	width: 100%;
	margin-bottom: 30px;
}
.text_right_box{
	width: 100%;
	float: right;
	padding: 0px 0 20px 0px;
}
.text_right_box h3{
	margin-top: 0px !important;
}
.text_right_box h4{
	margin-top: 0px !important;
}
.text_right_box h5{
	margin-top: 0px !important;
}
.text_right_box p{
	margin-bottom: 30px !important;
}
@media (min-width: 768px) {
	.img_left_box{
		width: 40%;
		float: left;
	}
	.img_left_box img {
		width: 100%;
	}
	.text_right_box{
		width: 57%;
		float: right;
		padding: 0px 0 20px 0px;
	}
}

.content01-off{
	display: none !important;
}
.content01-on{
	display: block !important;
	z-index: 99999 !important;
}
#content01{
	z-index: 99999 !important;
	display: none;
}
.modalcontent{
	padding-bottom: 30px;
}
.img_2_box{
	margin: 20px 0px 20px;
	padding:  0px;
}
.img_2_box li{
	margin: 0px 0px 15px;
	padding:  0px;
	width: 100%;
	list-style:none !important;
	float: left;
}

.img_2_box li img{
	width: 100%;
	text-align: center;
}
@media (min-width: 768px) {
	.img_2_box li{
		margin: 0px 0px 15px;
		padding:  0px;
		width: 49%;
		list-style:none !important;
		float: left;
	}
	.img_2_box li:nth-child(odd){ float: right; }
}





