@charset "UTF-8";
/*
Theme Name: standard
Author: eSales System Laboratory Inc.
Author URI: http://www.e-uru.biz/
Version: 1.0.0
*/

/****************************************
General Setting
*****************************************/
html {
	margin: 0px auto;
}


body {
	font-family: "Noto Sans Japanese", "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", sans-serif;
	font-size: 16px;
	font-weight: 200;
	font-size: 16px;
	line-height: 1.7em;
	margin: 0px auto;
	padding: 0px;
	min-width: 1050px;
	overflow-x: hidden;
	color: #4b4b4b;
}

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

.sp {
	display: none;
}
.pc_br{
	display: inline-block;
}

.aligncenter { text-align: center; }
.alignleft {float: left; }
.alignright {float: right; }
.clearfix:after {
	display: block;
	clear: both;
	content: " ";
}

.wp-pagenavi{clear: both;}
.wp-pagenavi a, .wp-pagenavi span {text-decoration: none;border: 1px solid #BFBFBF;padding: 3px 5px;margin: 2px;}
.wp-pagenavi a:hover, .wp-pagenavi span.current {border-color: #000;}
.wp-pagenavi span.current {font-weight: bold;}

/****************************************

Typography

*****************************************/

h1, h2, h3, h4, h5, h6{
	font-weight: normal;
}

/****************************************
List

*****************************************/

ul,ol {
	margin: 0;
	padding: 0;
	list-style: none;
}

li { list-style: none; }


/****************************************

Link

*****************************************/

a {
	color: #4b4b4b;
	text-decoration: none;
	cursor: pointer;
}
a{outline:0;}
a:link{color:#3796c4;}
a:visited{color:#800080;}
a:hover,
a:active{color:#f90;}
a:hover {
	color: #4594CF;
}

a:hover img {
	/*	opacity: 0.7; */
}

p {
	margin-top: 0px;
}
/****************************************

Layout

*****************************************/
#maincon {
}

.container {
	margin-left: auto;
	margin-right: auto;
}

.wrapper {
	text-align: left;
	margin-left: auto;
	margin-right: auto;
	width: 1050px;
	position: relative;
}

.wrapper02 {
	margin-left: auto;
	margin-right: auto;
	position: relative;
	width: 1400px;
}

#main {
	margin-top: 0px;
	text-align: left;
	float: left;
	width: 690px;
}

#sidepage {
	float: right;
	width: 280px;
}
.boxtitle,
.widgettitle {
	border: 1px solid #333;
	padding: 10px;
	text-align: center;
	font-size: 20px;
}

#sidepage ul ul.children { padding-left: 0px;}
#sidepage ul ul.children li:before { content: "→";}

/* ------- footer ------- */
#footer { background: #eee; padding: 30px 0px; }

footer .footbox ul {
	display: inline-block;
	margin-right: 3%;
	vertical-align: top;
	width: 30%;
}

footer .footbox ul li a {
	text-decoration: none;
	color: #000;
	font-size: 14px;
}
footer .footbox ul li a:hover {
	color: #B31B20;
}

#gotop { position: fixed; right: 10px; bottom: 10px; width:75px; height: 75; }
#goconatct { position: fixed; right: 100px; bottom: 10px; width:370px; height: 78px; z-index: 100; }
#footinfo p { font-size: 24px; color: #00478B; font-weight: 500; text-align: center;}
#footinfo h1 { font-size: 12px; line-height: 1.5em; margin: 0px; }
#footinfo { text-align: center; padding: 30px 0px 10px;}

/* ------- footer ------- */


#footer_fixed {
	position: fixed;
	left:0;
	bottom: 0;
	padding-top: 10px;
	padding-bottom: 10px;
	width: 100%;
	height:66px;
	z-index: 10;
	background: #fff;
}
#footer_fixed .footwrap {
}

#footer_fixed .footwrap .foot01 {
	float: left;
	width: 30%;
}
#footer_fixed .footwrap .foot02 {
	float: right;
	width: 70%;
	display: flex;
	justify-content: right;
}

#footer_fixed #ft_tel {
	font-size: 32px;
	text-align: center;
	vertical-align: top;
	color: #000;
	font-weight: 600;
	display: flex;
	align-items: center;
	margin-top: 10px;
	padding: 10px 0px 10px 43px;
	background: url(images/tel2.png) no-repeat left center;
	background-size: 35px;
}

#footer_fixed #ft_toi {
	background: #D32F09;
	padding: 0px 0px;
	font-size: 24px;
	width: 250px;
	display: inline-block;
	text-align: center;
	color: #fff;	
	line-height: 1em;
	display: flex;
	align-items: center;	
	justify-content: center;
	margin-right: 12px;
}
#footer_fixed #ft_sassi {
	background: #214D96;
	padding: 0px 0px;
	font-size: 22px;
	width: 250px;
	display: inline-block;
	text-align: center;
	color: #fff;	
	line-height: 1em;
	display: flex;
	align-items: center;	
	justify-content: center;
	margin-right: 2px;
}

#footer_fixed #ft_top {
	display: inline-block;
	text-align: center;
	vertical-align: top;
}
#footer_fixed #flogo { display: block; margin: 0px 10px;width: auto; height: 66px; }
#footer_fixed #ft_top img { display :block; }

/****************************************

header

*****************************************/
/****************************************

Navigation

*****************************************/
#gnavi{
}

.fixed #gnavi {
	top: 0px;
	left: 0px;
}
.fixed .hnavi { display: none;}
.fixed #gnavi .logo { /*width: 250px;*/ }

#tlogo {
	width: 23%;
	display: inline-block;
	margin-left: 50px;
}
#tlogo a {
	display: block;
}
h1.toph1 {
	position: absolute;
	top: 100px;
	left: 50px;
	z-index: 5;
	display: block;
	padding: 0px;
	margin: 0px;
	font-size: 15px;
}

/* ------- メニュー部分 ------- */
.menu {
	margin-left: auto;
	padding: 0;
	height: auto;
	float: right;
}

.menu ul{
	list-style-type: none;
	margin: 0px 0;
	padding: 0px 0;
	display: flex;
}

.menu li{
	display: inline-block;
	margin: 0;
	padding: 0 0px;
	vertical-align: middle;
	position: relative;
	text-align: center;
}

.menu span.wrap,
.menu a{
	text-align: center;
	padding: 0px 1.2em;
	position: relative;
	color: #333;
	font-size: 17px;
	line-height: 68px;
	display: block;
	box-sizing: border-box; 
	font-weight: 500;
	position: relative;
	text-decoration: none;
}

.menu a:after{
	content: "";
	display: block;
	width: 100%;
	height: 3px;
	background: #B31B20;
	opacity: 0;
	transition: .5s;
	position: absolute;
	left: 0px;
}

.menu a:hover {
	color: #244185;
}

.menu a:hover:after {
	opacity: 1;
}

.menu ul:after {
	clear: both;
	display: block;
	content: "";
}

/* ------- メニュー部分 ------- */

/* ------- ヘッダー部分 ------- */
#headerL {
	display: block;
	padding-bottom: 1px;
	margin-left: 3%;
	margin-right: 3%;
	margin-top: 20px;
	margin-bottom: 20px;
}
#headerL.fixed {
	position:  fixed;
	top: 0;
	left: 0;
	z-index: 1000;
	margin-left: 0%;
	margin-right: 0%;
	width: 100%;
	margin-top: 0px;
	margin-bottom: 20px;  
	background-color: rgba(255,255,255,1);
	box-shadow: 0 3px 5px -1px rgb(0 0 0 / 6%);   
}

#headerL .logo {
	float: left;
	margin:0;
	padding: 1px 0px 0px;
	color: #235685;
	font-size: 24px;
	font-weight: 600;
}
#headerL .logo a {
	text-decoration: none;
	padding-left: 30px;
	color: #295E92;
}
#headerL .logo img { width: 125px; margin-right: 20px; margin-bottom: -7px; }

#navi {
	background: #fff;
	position: relative;
	height: auto;
	left: 0px;
}

#navi {
	background-color: rgba(255,255,255,1);
	box-shadow: 0 3px 5px -1px rgb(0 0 0 / 6%); 
}
/* ------- ヘッダー部分 ------- */


/* ------- フッターメニュー部分 ------- */
.menuf {
	font-size: 14px;
	padding: 0;
	text-align: left;
	color: #fff;
}

.menuf ul {
	vertical-align: top;
	list-style-type: none;
	margin: 0px 0px 0px 30px;
	padding: 0;
	display: inline-block;
}
.menuf li {
	line-height: 1.5em;
	text-align: left;
	padding: 0px 0px 0px;
	position:relative;
}

.menuf a {
	padding: 5px 10px 8px 0px;
	text-decoration:none;
	color: #4b4b4b;
	display: block;
}
.menuf a:hover {
	color: #F36E21;
}
.menuf a:before {
	content: "- ";
}

/* ------- フッターメニュー部分 ------- */


/* ------- サイド　コンテンツボックス------- */

.font12 { font-size: 12px; }
.font14 { font-size: 14px; }
.font16 { font-size: 16px; }
.font18 { font-size: 18px; }
.font20 { font-size: 20px; }
.font24 { font-size: 24px; }
.font28 { font-size: 28px; }
.font36 { font-size: 36px; }

/****************************************

margin

*****************************************/

.mt0 { 	margin-top: 0px; }
.mt5 { 	margin-top: 5px; }
.mr5 { margin-right: 5px; }
.ml5 { 	margin-left: 5px; }
.mb5 { margin-bottom: 5px; }
.mt10 { margin-top: 10px; }
.mr10 { margin-right: 10px; }
.ml10 { margin-left: 10px; }
.mb10 { margin-bottom: 10px; }
.mt20 { margin-top: 20px; }
.mr20 { margin-right: 20px; }
.ml20 { margin-left: 20px; }
.mb20 { margin-bottom: 20px; }
.mt30 { margin-top: 30px; }
.mr30 { margin-right: 30px; }
.ml30 { margin-left: 30px; }
.mb30 { margin-bottom: 30px; }
.mt40 { margin-top: 40px; }
.mr40 { margin-right: 40px; }
.ml40 { margin-left: 40px; }
.mb40 { margin-bottom: 40px; }
.mt50 { margin-top: 50px; }
.mr50 { margin-right: 50px; }
.mr60 { margin-right: 50px; }
.ml50 { margin-left: 50px; }
.ml60 { margin-left: 60px; }
.mb50 { margin-bottom: 50px; }
.mb60 { margin-bottom: 60px; }
.mb70 { margin-bottom: 70px; }
.mb80 { margin-bottom: 80px; }


/****************************************

padding

*****************************************/
.pt10 { padding-top: 10px; }
.pr10 { padding-right: 10px; }
.pl10 { padding-left: 10px; }
.pb10 { padding-bottom: 10px; }
.pt20 { padding-top: 20px; }
.pr20 { padding-right: 20px; }
.pl20 { padding-left: 20px; }
.pb20 { padding-bottom: 20px; }
.pt30 { padding-top: 30px; }
.pr30 { padding-right: 30px; }
.pl30 { padding-left: 30px; }
.pb30 { padding-bottom: 30px; }
.pt40 { padding-top: 40px; }
.pr40 { padding-right: 40px; }
.pl40 { padding-left: 40px; }
.pb40 { padding-bottom: 40px; }
.pt50 { padding-top: 50px; }
.pr50 { padding-right: 50px; }
.pl50 { padding-left: 50px; }
.pb50 { padding-bottom: 50px; }
.pb60 { padding-bottom: 60px; }
.pb70 { padding-bottom: 70px; }
.pb80 { padding-bottom: 80px; }


/****************************************

Breadcrumb

*****************************************/

/*
.subHeader { padding: 120px 0px 30px; text-align: center; background-size: cover; }
*/
.breadcrumbs {
	padding-left: 10px;
	margin-bottom: 0px;
	color: #aaa;
	font-size: 13px;
	padding-top: 8px;
	padding-bottom: 8px;
	line-height: 1.2em;
}
.mB {
	font-size: 32px;
    letter-spacing: 3px;
    text-align: center;
    font-weight: 500;
    line-height: 1.5em;
    color: #000;
    margin: 0px 0px 30px;
    padding: 30px;
    background: #f8f8f8;
    border-bottom: 1px solid #ddd;
}

/****************************************

Main

*****************************************/

.rightlink {
	text-align: right;
}

.rightlink a {
	font-size: 16px;
	box-shadow: 2px 2px 2px #eee;
	color: #fff;
	background: #555;
	padding: 10px 20px;
	margin: 10px 10px;
	display: inline-block;
}

.rightlink a:hover {
	box-shadow: 2px 2px 2px #999;
	background: #800;
}

.link {
	padding: 7px 20px 7px 15px;
	float: right;
}

.link a {
	color: #333;
	padding: 5px 30px 5px 20px;
	text-decoration: none;
}

.link a:hover {
	color: #ff0000;
}


/****************************************

index.php Main

*****************************************/

.thumbnail-box{
	float: left;
	width: 160px;
}

.thumbnail-box img{
	width: 160px;
	height: 160px;
}


/****************************************

Footer

*****************************************/

#copyright{
	text-align: center;
	padding: 3px 0 10px 0px;
	font-size: 100%;
	margin: 10px 0px 0px;
	font-size: 13px;
	border-top: 1px solid #eee;
}

#copyright a { color: #000; }

/****************************************

Form

*****************************************/

select,
input[type="text"],
input[type="password"],
input[type="email"],
input[type="tel"],
input[type="search"],
textarea {
	font-family: "メイリオ",Meiryo, Verdana,Arial,"ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック";
	margin: 0;
	max-width: 100%;
	outline: none;
	border: 1px solid #ddd;
	-webkit-border-radius: 2px;
	-moz-border-radius: 2px;
	border-radius: 2px;
	vertical-align: bottom;
	font-size: 14px;
	line-height: 2em;
	margin-bottom: 2px;
}

#comment-area input[type="text"],
#comment-area textarea{
	display: block;
}

textarea {
	overflow: auto;
}

input[type="text"]:focus,
input[type="password"]:focus,
input[type="email"]:focus,
input[type="search"]:focus,
textarea:focus {
	border: 1px solid #ff69b4;
	background: #fff;
	-webkit-box-shadow: 0 0 3px rgba(255,105,180,1);
	-moz-box-shadow: 0 0 3px rgba(255,105,180,1);
	box-shadow:  0 0 3px rgba(255,105,180,1);
	color: #444;
}

textarea,
select,
input[type=text],input[type=tel],input[type=email]{
	font-size:15px;
}
span.wpcf7-list-item { display: block; margin-left: 0px !important; }
.anket01 span.wpcf7-list-item { width: 250px; }
.anket01 span.wpcf7-list-item:last-child { width: auto; margin-right: 10px; }
.anket02 span.wpcf7-list-item:nth-child(1) { width: 250px; }
.anket02 span.wpcf7-list-item:nth-child(2)  { width: 450px; }
.anket02 span.wpcf7-list-item:last-child { width: auto; margin-right: 10px; }

.checkbox-books span.wpcf7-list-item { display: block !important; margin-left: 0px !important; }
input[type=text],input[type=email],input[type=tel]{
	width:70%;
}

input[type=text]:focus,input[type=email]:focus,input[type=tel]:focus{
	border:solid 1px #20b2aa;
}

input[type=text], select,input[type=email],input[type=tel]{
	outline: none;
}

.contact_right textarea{
	border-radius: 5px;
	-moz-border-radius: 5px;
	-webkit-border-radius: 5px;
	-o-border-radius: 5px;
	-ms-border-radius: 5px;
	border:#a9a9a9 1px solid;
	-moz-box-shadow: inset 0 0 5px rgba(0,0,0,0.2),0 0 2px rgba(0,0,0,0.3);
	-webkit-box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2),0 0 2px rgba(0,0,0,0.3);
	box-shadow: inset 0 0 5px rgba(0, 0, 0, 0.2),0 0 2px rgba(0,0,0,0.3);
	width:100%;
	padding:0 3px;
}

.contact_right textarea:focus{
	border:solid 1px #20b2aa;
}

.contact_right textarea {
	outline: none;
	width:100%;
}

input[type=button],
input[type=submit]{
	font-family: "メイリオ",Meiryo, Verdana,Arial,"ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック";
	background:#6BAC71;
	transition:all 0.3s;
	margin: 0px auto 0px;
	color:#fff;
	font-size: 24px;
	padding: 15px 50px;
	display: inline-block;
	cursor: pointer;
	border: 2px solid #6BAC71;
	border-radius: 10px;
	box-shadow: 2px 2px 2px #ddd;
}

.contact_form input[type=submit]{
	width:50%;
}

.contact_form input[type=text],.contact_form input[type=email]{
	width:100%;
	height:50px;
	font-size:1.5em;
}

.send input[type="submit"],
.back input[type="button"] {
	width: 80% !important;
}

.send {
	width: 49%;
	display: inline-block;
	float: right;
	text-align: left!important;
}

.back {
	float: left;
	text-align: right!important;
	width: 46%;
	display: inline-block;
}

.confirm {
	font-family: "メイリオ",Meiryo, Verdana,Arial,"ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
	text-align: center;
	margin: 0px 0px;
}


.wpcf7-form {
	font-family: "メイリオ",Meiryo, Verdana,Arial,"ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック",sans-serif;
	margin-bottom: 20px;
}

.wpcf7-form input[type=text],
.wpcf7-form input[type=email],
.wpcf7-form input[type=tel]
{ width: 300px; } /*名前、メール、題名*/
.wpcf7-form textarea{width: 500px;} /*本文*/
.wpcf7-form .wpcf7-submit{width: 200px; margin-left: 10px;} /*送信ボタン*/

div.wpcf7 .wpcf7-submit:disabled {
	background: #aaa;
	border-color: #aaa;
	color: #ddd;
}

.wpcf7-form::after {
	clear: both;
	display: block;
	content: "";
}

.wpcf7-radio label {
	margin-right: 20px;
}
.contactform {
	border: solid 0px #c99269;
	border-collapse:collapse;
	text-align: left;
	line-height: 1.5em;
	width: 100%;
}

.contactform p { padding: 0px; margin-bottom: 2px; }

.contactform th { border: solid 1px #dddddd; background:#f6f6f6; text-align: left; padding:10px 10px; font-weight: 400; width: 15em;}
.contactform td { border: solid 1px #dddddd; padding: 10px 10px; background-color: #fff;}
.contactform .hissu { color: #fff; display: inline-block; background: #ee0000; padding: 1px 5px; float: right; font-size: 14px;}
.contactform .spw { vertical-align: text-bottom; display: inline-block; line-height: 2em; }
.contactform .shubetu span.wpcf7-list-item { display: block; }
.contactform td .item01 { display: inline-block; width: 6em; vertical-align: top; }
.contactform td .item02 { display: inline-block; vertical-align: top;}
.contactform td .item { padding: 10px 0px; border-bottom: 1px dotted #ddd; }
.contactform td .item:last-child { padding: 10px 0px; border-bottom: 0px dotted #ddd; }
.center {
	text-align: center;
}

#text-18 {
	font-family: "メイリオ",Meiryo, Verdana,Arial,"ヒラギノ角ゴPro W3","Hiragino Kaku Gothic Pro","ＭＳ Ｐゴシック";
	width: 100%;
	background: none;
	border: 0px;
}

/* ------- TOP ------- */
#topslider {
	margin-left: 2%;
	margin-right: 2%;
	margin-bottom: 50px;
}
#topslider li img {
	border-radius: 40px;
}
.slick-dots { display: none; }
.slick-list img { width: 100%; }
#top_member {
	margin-bottom: 70px;
}

#top_member ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
#top_member ul li {
	display: inline-block;
	width: 20%;
	margin: 0px 2.5% 30px;
	text-align: center;
	box-sizing: border-box; 
	padding: 10px;
	background: #fafafa;
}
#top_member ul li:hover {
	background: #EEF7FF;
	border-radius: 10px;
}
#top_member ul li p.img {
	width: 100%;
	height: 150px;
	overflow: hidden;
}
#top_member ul li img {
	max-width: 100%;
	max-height: 150px;
	/*  object-fit: cover; */
	margin-bottom: 10px;
}
#top_member ul li a {
	text-decoration: none;
	display: block;
}

#top_member ul li h2 {
	font-size: 20px;
	color: #01478C;
	line-height: 1.5em;
	font-weight: 600;
	margin-bottom: 10px;
}
#top_member ul li .txt {
	text-align: left;
	color: #000;
	display: -webkit-box;
	overflow: hidden;
	-webkit-line-clamp: 4;
	-webkit-box-orient: vertical; 
	line-height: 1.5em;
	max-height: 6em;
}
#top_member ul li .more {
	display: block;
	width: 6em;
	background: #01478C;
	border-radius: 30px;
	padding: 5px 1em 6px;
	color: #fff;
	font-weight: 500;
	font-size: 15px;
	margin: 10px auto;
	line-height: 1em;
}
#top_member .ttl {
	font-size: 40px;
	letter-spacing: 3px;
	text-align: center;
	font-weight: 600;
	margin-bottom: 30px;
	line-height: 1.5em;
}
#top_member .ttl span {
	font-size: 18px;
	color: #01478C;
	letter-spacing: 0px;
	display: block;
}

#top_works { margin-bottom: 100px; }
#top_works ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0px;
	margin-bottom: 20px;
	justify-content: center;
}
#top_works ul li {
	display: inline-block;
	width: 23%;
	margin: 0px 1% 20px;
	text-align: center;
	box-sizing: border-box;
	vertical-align: top;
	position: relative;
}

#top_works .ttl {
	font-size: 40px;
	letter-spacing: 3px;
	text-align: center;
	font-weight: 600;
	line-height: 1.5em;
	color: #01478C;
}
#top_works .ttl span {
	font-size: 18px;
	letter-spacing: 0px;
	text-align: center;
	font-weight: 600;
	line-height: 1.5em;
	color: #01478C;
	display: block;
}

#top_works .subttl {
	font-size: 28px;
	color: #01478C;
	letter-spacing: 0px;
	display: block;
	text-align: center;
	margin: 30px 0px 40px;
	font-weight: 500;
}

#top_works ul li img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    border-radius: 20px;
    position: relative;
    outline: 0px!important;
    outline-offset: 0px;
    top: 0px;
    left: 0px;
    transform: none;	
}

#top_works ul li a {
    outline: 0px!important;
    outline-offset: 0px;
}
#top_works ul li a.wp_rss_retriever_title {
	font-weight: normal;
	position: absolute;
	display: none;
	top: 0px;
	padding: 20% 5%;
	text-decoration: none;
	color: #fff;
	font-size: 20px;
	text-align: center;
	line-height: 1.6em;
	vertical-align: middle;
	font-weight: normal;
	height: 90%;
	width: 100%;
	margin: 0px;
	box-sizing: border-box;
	border-radius: 20px;
	opacity: 0;
    display: block;
    color: #fff;
    text-decoration: none;
    position: absolute;
    z-index: 2;
    outline: 0px!important;
    outline-offset: 0px;
}
#top_works ul li:hover a.wp_rss_retriever_title {
	display: block;
	background: rgba(5,5,5,0.5);
	opacity: 1;
}
#top_works ul li a.wp_rss_retriever_image {
	float: none;
}
#top_works .morelink {
	text-align: center;
	margin-bottom: 100px;
}
#top_works .morelink a {
	display: block;
	width: 15em;
	background: #01478C;
	border-radius: 30px;
	padding: 1em 1em 1em;
	color: #fff;
	font-weight: 500;
	font-size: 16px;
	margin: 10px auto;
	line-height: 1em;
	text-decoration: none;
}
#top_works .morelink a:hover {
	background: #B31B20;
}
#top_news_wrap {
	background: #f4f4f4;
	padding: 50px 0px;
	margin-bottom: 100px;
}

#top_news { text-align: center; }

#top_news .ttl {
	font-size: 40px;
	letter-spacing: 3px;
	text-align: left;
	font-weight: 600;
	line-height: 1.5em;
}
#top_news .ttl span {
	font-size: 18px;
	color: #01478C;
	letter-spacing: 0px;
	padding-left: 30px;
}

#top_news ul li a {
	text-decoration: none;
	outline: 0px!important;
	outline-offset: 0px!important;	
}

#top_news .morelink {
	text-align: center;
	margin-bottom: 100px;
}
#top_news .morelink a {
	display: block;
	width: 10em;
	background: #01478C;
	border-radius: 30px;
	padding: 0.8em 0.8em 1em;
	color: #fff;
	font-weight: 500;
	font-size: 16px;
	margin: 10px auto;
	line-height: 1em;
	text-decoration: none;
}

#top_news .morelink a:hover {
	background: #B31B20;
}

#top_news div.date {
	display: inline;
	padding-right: 20px;
}
#top_news li {
	overflow: hidden;
	text-overflow: ellipsis;
	white-space: nowrap;
	line-height: 2em;
/*	margin-bottom: 20px; */
}
#top_news ul {
	margin-bottom: 50px;
}

#top_bannar {
	margin-bottom: 70px;
}
#top_housenews {
	margin-bottom: 60px;
}

#top_housenews ul li {
	display: inline-block;
	width: 27%;
	margin: 10px 5% 20px 0px;
	box-sizing: border-box; 
}
#top_housenews ul li:nth-child(3n + 3) {
	margin-right: 0px;
}

#top_housenews ul li a {
	position: relative;
	display: block;
	text-align: left;
	color: #000;
	font-weight: normal;
	font-size: 20px;
	padding: 20px 30px 20px 40px;
	line-height: 55px;
	transition: background-color 1s;
	text-decoration: none;
	box-sizing: border-box;
	overflow: hidden;
	background-position-x: 0%, 90%;
}
#top_housenews ul li a:hover {
	color: #a00;
}
#top_housenews .ttl {
	font-size: 40px;
	letter-spacing: 3px;
	text-align: left;
	font-weight: 600;
	line-height: 1.5em;
}
#top_housenews .ttl span {
	font-size: 18px;
	color: #01478C;
	letter-spacing: 0px;
	padding-left: 30px;
}

#top_concept {
	background: url(images/bg.jpg?v=1665992987) no-repeat top center;
	padding: 60px 0px;
	color: #fff;
	margin-bottom: 70px;
}

#top_concept .ttl {
	font-size: 40px;
	letter-spacing: 3px;
	text-align: center;
	font-weight: 600;
	line-height: 1.5em;
	color: #fff;
}
#top_concept .txt {
	font-size: 22px;
	font-weight: 500;
	padding: 30px 0px;
	line-height: 2em;
	margin-bottom: 20px;
}
#top_concept .morelink {
	text-align: center;
}
#top_concept .morelink a {
	display: block;
	margin: auto;
	width: 300px;
	background: url(images/yaji-w.png?v=1665992987)no-repeat right center #BFBFBF;
	background-size: 9px;
	background-position-x: 95%;
	color: #fff;
	font-size: 20px;
	font-weight: 500;
	padding: 1em 2em;
	text-align: center;
	border-radius: 10px;
	text-decoration: none;
}

#top_concept .morelink a:hover {
	background: url(images/yaji-w.png?v=1665992987)no-repeat right center #01478C;
	background-size: 9px;
	background-position-x: 95%; 
}

#top_company {
	background: #f4f4f4;
	padding: 50px 0px;
	position: sticky;
	margin-bottom: 100px;
}

#top_company .ttl {
	font-size: 40px;
	letter-spacing: 3px;
	text-align: left;
	font-weight: 600;
	line-height: 1.5em;
}
#top_company .ttl span {
	font-size: 18px;
	color: #01478C;
	letter-spacing: 0px;
	padding-left: 30px;
}

#top_company ul li {
	display: inline-block;
	width: 31%;
	margin: 10px 2.5% 20px 0px;
	box-sizing: border-box; 
}
#top_company ul li:nth-child(3n + 3) {
	margin-right: 0px;
}

#top_company ul li a {
	position: relative;
	display: block;
	text-align: center;
	color: #000;
	font-weight: normal;
	font-size: 20px;
	padding: 20px 30px 20px 70px;
	line-height: 55px;
	transition: background-color 1s;
	border-radius: 10px;
	border: 1px solid #ddd;
	text-decoration: none;
	box-sizing: border-box;
	overflow: hidden;
}
#top_company ul li a::after {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -2;
	content: '';
	width: 110%;
	height: 100%;
	background: #fff;
}

#top_company ul li a::before {
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	content: '';
	width: 110%;
	height: 100%;
	background: #79C8ED;
	transform-origin: right top;
	transform: skewX(180deg) scale(0, 1);
	transition: transform .3s;
}

#top_company ul li a:hover::before {
	transform-origin: left top;
	transform: skewX(180deg) scale(1, 1);
}
#top_company ul li a:hover::after {
	background: #eee;
}

#top_company ul li.item01 a {
	background: url(images/icon-1-ao.png?v=1665992988) no-repeat center left, url(images/yaji-00478B.png?v=1665992987) no-repeat center right;
	background-position-x: 12%, 90%;
	background-size: 40px,8px;
}
#top_company ul li.item02 a {
	background: url(images/icon-3-ao.png?v=1665992989) no-repeat center left, url(images/yaji-00478B.png?v=1665992987) no-repeat center right;
	background-position-x: 12%, 90%;
	background-size: 40px,8px;
}
#top_company ul li.item03 a {
	background: url(images/icon-2-ao.png?v=1665992989) no-repeat center left, url(images/yaji-00478B.png?v=1665992987) no-repeat center right;
	background-position-x: 12%, 90%;
	background-size: 40px,8px;
}

#top_news .item02 {
	display: inline-block;
	width: 48%;
	margin-right: 0%;
	vertical-align: top;
	text-align: left;
}
#top_news .item01 {
	display: inline-block;
	width: 48%;
	margin-right: 3%;
	vertical-align: top;
	text-align: left;
}

/* ------- TOP ------- */

/* list_category01
----------------------------------------*/
.list_category01{margin:0 0 15px 2px; text-align: center; }
.list_category01 li{
	display:inline-block;
	margin:0 15px 35px 15px;
	width: 300px;
	height:61px;
}
.list_category01 li h2{
	height:61px;
	margin:0px;
	line-height:1.3;
	font-size:1.0em;
	font-weight:normal;
}
.list_category01 li a{
	display:block;
	padding:24px 30px 20px 20px;
	zoom:1;
	background: url(images/yaji-00478B.png?v=1665992987&v=1658307867) no-repeat center right;
	background-position-x: 90%;
	background-size: 8px;
	border-radius: 5px;
	border: 1px solid #aaa;
	text-decoration: none;
	font-weight: 500;
	font-size: 18px;
}
.text_cont h4 { font-weight: bold; margin: 20px 0px 10px; }

table.tbl_type01 {
  margin:10px 0px 50px 0px;
  border: 0px;
  border-collapse:collapse;
  text-align: left;
  line-height: 1.5em;
}

table.tbl_type01 th {
  text-align: center; 
  padding:10px 20px; 
  font-weight: normal;
  width: 12em; 
  font-weight: 500;
  color: #3E3A39;
  background: #f0fefe;
  border-color: #e5e5e5;
  border-bottom: 1px solid #e5e5e5;
  border-top: 1px solid #e5e5e5;
}

table.tbl_type01 td {
  border: solid 0px #dddddd; 
  padding:10px 20px; 
  border-bottom: 1px solid #e5e5e5;
  border-top: 1px solid #e5e5e5;
}
table.tbl_type01:after {
  clear: both;
  display: block;
  content: "";
}
#corp_map iframe { width: 100%; height: 450px; margin-bottom: 100px; }

#kizi_content { padding: 30px 0px; }
.hdg_type01{
    font-size: 32px;
    letter-spacing: 3px;
    text-align: center;
    font-weight: 500;
    line-height: 1.5em;
    color: #000;  
    margin-bottom: 30px;
    padding: 30px;
    background: #f8f8f8;
    border-bottom: 1px solid #ddd;

}

.hdg_type02{
    font-size: 28px;
    text-align: left;
    font-weight: 400;
    line-height: 1.5em;
    color: #000;  
    margin-bottom: 30px;
    padding: 3px 15px;
    line-height: 1.2em;
    margin-bottom: 30px;
    border-left: 6px solid #00478B;
}

.hdg_type03{
    font-size: 24px;
    text-align: center;
    font-weight: 400;
    line-height: 1.5em;
    color: #000;  
    margin-bottom: 30px;
    padding: 3px 10x;
    line-height: 1.2em;
    margin-bottom: 30px;
}

.hdg_type03 a { text-decoration: none; font-size: 20px; }

.hdg_type04{
    clear: both;
    font-size: 22px;
    text-align: left;
    font-weight: 400;
    line-height: 1.5em;
    color: #000;  
    margin-bottom: 30px;
    padding: 3px 10x;
    line-height: 1.2em;
    margin-bottom: 10px;
}

.blk_segment05 {
    clear: both;
    padding: 20px;
    border: 1px solid #ddd;
    margin-bottom: 30px;
}

.hdg_type06 {
      background: #61bfeb;
    border-top: 1px solid #4e99bc;
    border-left: 1px solid #4e99bc;
    margin: 0 0 5px;
    padding: 6px 10px 4px;
    font-size: 1em;
    color: #fff;
}
.blk_segment05 .blk_section01 .cont01{
float:left;
margin:0 20px 0 0;
width:150px;
}
.blk_segment05 .blk_section01 .cont02{
float:right;
width:820px;
}
.blk_segment05 .blk_section01 .cont02 p {
  padding: 0px 0px 15px;
}
.hdg_type07 {
    margin: 0 0 3px;
    background: url(/files/user/pc/common/line_dotted01.gif?v=1334575350) left 0.6em repeat-x;
    font-weight: normal;
    line-height: 1.4;
    color: #3796c4;
}
.hdg_type07 span {
    padding-right: 5px;
    background: #fff;
}

.blk_segment03 { display: inline-block; vertical-align: top; width: 30%; margin-right: 1.5%; margin-left: 1.5%; margin-bottom: 40px; }
.blk_segment03 .blk_section01 .cont01 { width: 100%; height: 250px; overflow: hidden; margin-bottom: 10px; }
.blk_segment03 .blk_section01 .cont01 img {
    width: 100%;
    height: 250px;
    object-fit: cover;
    }
.blk_segment03 .blk_section01 .cont02 p { font-size: 14px; line-height: 1.6em; }
.blk_segment03 img { max-width: 100%; max-height: 150px; display: block; margin: auto; }
.blk_segment03 .cont01 { max-width: 100%; height: 150px; overflow: hidden; }

.blk_segment03 .cont02 p {
  display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 6; /* 制限したい行数が3の場合 */
  overflow: hidden;
}
.blk_photo01 { float: left; margin-right: 20px; margin-bottom: 50px; }

.list_segment01 li { margin: 0 0 20px;
    padding: 0 10px 10px;
    background: url(/wp-content/uploads/line_dotted01.png) left bottom repeat-x; }
.list_segment01 li p.link_type01 {
  padding: 10px 0px;
}
#top_news .wp_rss_retriever_metadata {
    margin: 0.5em 0;
    font-size: 100%!important;
    margin-right: 21px!important;
    clear: both;
}
#top_news .wp_rss_retriever_item_wrapper {
	display: flex;
	align-items: flex-end;
}
#top_news .wp_rss_retriever li {
	margin-bottom: 0px!important;
}
#top_news .wp_rss_retriever li a{	
   overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}

#work_list ul {
	display: flex;
	flex-wrap: wrap;
	margin: 0px;
	margin-bottom: 20px;
	justify-content: center;
}
#work_list ul li {
	display: inline-block;
	width: 23%;
	margin: 0px 1% 40px;
	text-align: center;
	box-sizing: border-box;
	vertical-align: top;
	position: relative;
}

#work_list .ttl {
	font-size: 40px;
	letter-spacing: 3px;
	text-align: center;
	font-weight: 600;
	line-height: 1.5em;
	color: #01478C;
}
#work_list .ttl span {
	font-size: 18px;
	letter-spacing: 0px;
	text-align: center;
	font-weight: 600;
	line-height: 1.5em;
	color: #01478C;
	display: block;
}

#work_list .subttl {
	font-size: 28px;
	color: #01478C;
	letter-spacing: 0px;
	display: block;
	text-align: center;
	margin: 30px 0px 40px;
	font-weight: 500;
}

#work_list ul li img {
    width: 100%;
    height: 200px;
    object-fit: cover;
    border-radius: 20px;
    position: relative;
    outline: 0px!important;
    outline-offset: 0px;
    top: 0px;
    left: 0px;
    transform: none;	
}

#work_list ul li a {
    outline: 0px!important;
    outline-offset: 0px;
}
#work_list ul li a.wp_rss_retriever_title {
	/*
	font-weight: normal;
	position: absolute;
	display: none;
	top: 0px;
	padding: 20% 5%;
	text-decoration: none;
	color: #fff;
	font-size: 20px;
	text-align: center;
	line-height: 1.6em;
	vertical-align: middle;
	font-weight: normal;
	height: 90%;
	width: 100%;
	margin: 0px;
	box-sizing: border-box;
	border-radius: 20px;
	opacity: 0;
    display: block;
    color: #fff;
    text-decoration: none;
    position: absolute;
    z-index: 2;
	*/
    outline: 0px!important;
    outline-offset: 0px;
	text-align: left;
}
#work_list ul li:hover a.wp_rss_retriever_title {
	text-decoration: underline;
/*	
	display: block;
	background: rgba(5,5,5,0.5);
	opacity: 1;
	*/
}
#work_list ul li a.wp_rss_retriever_image {
	float: none;
}
#work_list .morelink {
	text-align: center;
	margin-bottom: 100px;
}

#news_list .wp_rss_retriever_metadata {
    margin: 0.5em 0;
    font-size: 100%!important;
    margin-right: 21px!important;
    clear: both;
}
#news_list .wp_rss_retriever_item_wrapper {
	display: flex;
	align-items: flex-end;
}
#news_list .wp_rss_retriever li {
	margin-bottom: 0px!important;
}
#news_list .wp_rss_retriever li a{	
   overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
}
#news_list ul li a {
	text-decoration: none;
	outline: 0px!important;
	outline-offset: 0px!important;	
}

osusumelist ul {
  display: flex;
  flex-wrap: wrap;
  margin-bottom: 20px;
}
.osusumelist ul li {
  display: inline-block;
  width: 23.5%;
  margin: 0px .5%;
  text-align: center;
  box-sizing: border-box;
  vertical-align: top;
  position: relative;
}

.osusumelist .ttl {
  font-size: 40px;
  letter-spacing: 3px;
  text-align: center;
  font-weight: 600;
  line-height: 1.5em;
  color: #01478C;
}
.osusumelist .ttl span {
  font-size: 18px;
  letter-spacing: 0px;
  text-align: center;
  font-weight: 600;
  line-height: 1.5em;
  color: #01478C;
  display: block;
}

.osusumelist .subttl {
  font-size: 28px;
  color: #01478C;
  letter-spacing: 0px;
  display: block;
  text-align: center;
  margin: 30px 0px 40px;
  font-weight: 500;
}

.osusumelist ul li img {
  width: 100%;
  height: 250px;
  object-fit: cover;
  display: block;
  border-radius: 20px;
}


.osusumelist ul li h2 {
    font-weight: normal;
    position: absolute;
    display: none;
    top: 0px;
    padding: 20% 5%;
    text-decoration: none;
    color: #fff;
    font-size: 20px;
    text-align: center;
    line-height: 1.6em;
    vertical-align: middle;
    font-weight: normal;
    height: 100%;
    width: 100%;
    margin: 0px;
    box-sizing: border-box;
    border-radius: 20px;
}
.osusumelist ul li:hover h2 {
  display: block;
  background: rgba(5,5,5,0.5);
}
.osusumelist ul li a { color: #fff; text-decoration: none; }
.osusumelist .morelink {
  text-align: center;
  margin-bottom: 100px;
}
.osusumelist .morelink a {
    display: block;
    width: 15em;
    background: #01478C;
    border-radius: 30px;
    padding: 1em 1em 1em;
    color: #fff;
    font-weight: 500;
    font-size: 16px;
    margin: 10px auto;
    line-height: 1em;
    text-decoration: none;
}
.osusumelist .morelink a:hover {
  background: #B31B20;
}

#work_list ul li a.wp_rss_retriever_title {
	display: -webkit-box;
	-webkit-line-clamp: 2;
	-webkit-box-orient: vertical;
	overflow: hidden;

	/*IE対策*/
	line-height: 1.5em;
	max-height: 3em;
}
#top_bannar ul { display: flex; flex-wrap: wrap; justify-content: center; margin-bottom: 50px; align-items: center;}
#top_bannar ul li { display: inline-block; width: 23%; margin: 10px 1%; text-align: center; }
#top_bannar ul li a {
  display :block;
    width: 100%;
    height: 100%;
    box-sizing: border-box;
    text-align: center;
    color: #01478C;
}
#top_bannar ul li a span.title { padding: 15px; display: block; box-shadow: 4px 4px 2px rgb(0 0 0 / 20%);}
#top_bannar ul li a:hover span.title { padding: 15px; display: block; background: #eee;}
#top_bannar ul li a img { display :block; margin: auto;  box-shadow: 4px 4px 2px rgb(0 0 0 / 20%);}
#top_bannar ul li.txt_link02 a {
    justify-content: center;
    width: 100%;
    height: 100%;
    padding: 20px;
    background: #fefefe;
    font-weight: 400;
    border: 2px solid #00478B;
    color: #000;
    line-height: 1.4; 
    text-decoration: none;
    box-sizing: border-box;
    text-align: center;
}
.bloglist img { width: 30%; margin-right: 2%; float: left; margin-bottom: 10px; }


.kanren-thumbnail { width: 100px; float: left; margin-right: 10px; }
.kanren-thumbnail img { border: 1px solid #eee; }

#prevANDnext {
    border-top:2px double #f0dfd5;
    margin:25px 0 10px 0;
    padding:10px ;
    font-size:14px;
}

#prevANDnext .prev {
    float:  left;
    width:45%;
}

#prevANDnext .next {
    text-align: right;
    float:  right   ;
    width:45%;
}


/* css追加をここの上に記載 */

@media (max-width: 1550px) {
	.menu { width: auto; }
	.menu li {margin: 0px 5px 0px 0px; }
	.menu a { font-size: 15px; }
	#tlogo a { left: 1px; }
}

@media (max-width: 1450px) {
	.menu a { font-size: 13px; }
}
@media (max-width: 1350px) {
	.menu a { font-size: 12px; }
}

@media (max-width: 1300px) {
	body {min-width: 1300px;}
	.menu a { font-size: 12px; }
}

/****************************************************
* 端末ごとの調整で、PCのcssはここ以下に追加しない
*****************************************************/