@charset "utf-8";

:root{
/*	--green : #008132;*/
	--green : #008132;
	--orange : #F2923A;
	}


/*green = #008132*/
/*orange = #F2923A*/
/*glay = #65624C*/

@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;700&display=swap');

/*全端末（PC・タブレット・スマホ）共通設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/

/*全体の設定
---------------------------------------------------------------------------*/
html,body,#container {height: 100%;}
body {
	margin: 0px;
	padding: 0px;
	color: #444;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 300;
	/*font-family: "ヒラギノ丸ゴ Pro", "Hiragino Maru Gothic Pro","ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;*/
	font-size: 16px;
	line-height: 2;		
	background: #fff;	
	-webkit-text-size-adjust: none;
}
h1,h2,h3,h4,h5,p,ul,ol,li,dl,dt,dd,form,figure,form {margin: 0px;padding: 0px;font-size: 100%;font-weight: normal;}
ul {list-style-type: none;}
ol {padding-left: 40px;padding-bottom: 15px;}
img {border: none;max-width: 100%;height: auto;vertical-align: middle;}
table {border-collapse:collapse;font-size: 100%;border-spacing: 0;}
video {max-width: 100%;}
iframe {width: 100%;}
strong{font-weight: 700;}
.no-display{display: none;}

/*リンク（全般）設定
---------------------------------------------------------------------------*/
a {
	color: #444;
	transition: 0.2s;
	text-decoration: none;
}
a:hover {
	color: var(--green);
	text-decoration: none;
}

/*inner
---------------------------------------------------------------------------*/
.inner_max {
	max-width: 1400px;
	margin: 0 auto;
	padding-left: 2% !important;
	padding-right: 2% !important;
}

/*ヘッダー
---------------------------------------------------------------------------*/
/*ヘッダーブロック*/
header {
	height: 70px;	
	background: #66b3d3;	
	position: relative;
}
/*ロゴ画像（※トップページ以外）*/
header #logo {
	width: 200px;	
	padding-top: 15px;
}



/*メインメニューのブロック
---------------------------------------------------------------------------*/
#menubar {
	overflow: hidden;
	position: relative;
	z-index: 10;
	display: flex;
	text-align: center;
	background: #f6f6f4;
	border-bottom: 0px solid #eee;
	box-shadow:0px 4px 4px rgba( 0, 0, 0, 0.2 );
	align-items: flex-start;
	justify-content:flex-start;
}
/*その他のページ*/
body.child #menubar{
	opacity: 0.98;
}
body.child #menubar ul{
	width: 12%;
}
body.child #menubar ul.nav_logo{
	width: 30%;
}
#menubar ul.nav_logo li{
	width: 80%;
}
#menubar ul.nav_logo img{
	width: 100%;
}

#menubar ul {
/*	margin: 0 auto;*/
}
#menubar ul li {
	font-weight: 500;
	font-size: 18px;
}

#menubar ul:not(.nav_logo) li a {
	text-decoration: none;
	display: block;
	color: var(--green);
	border-bottom: 3px solid transparent;
	height: 75px;
	padding-top: 15px;
}

#menubar ul.nav_logo li a:hover img{
	padding-top:3px;
}

ul.nav_logo{
	padding-top: 5px;
	padding-bottom: 16px;
	display: flex;
	align-items: center;
	justify-content:center;
	background-color: #fff;
	opacity: 1;
	height: 72px;
	box-shadow:0px 4px 4px rgba( 0, 0, 0, 0.2 );
}




/*日本語-小*/
#menubar ul li span {
	display: block;
	font-size: 12px;
	color: #999;
}

#menubar ul:not(.nav_logo) li a:hover,
#menubar ul:not(.nav_logo) li.current a,
body#top #menubar ul li.top a,
body#advantage #menubar ul li.advantage a,
body#business #menubar ul li.business a,
body#about #menubar ul li.about a,
body#contact #menubar ul li.contact a
{
	border-bottom: 4px solid var(--green);
}

#menubar-s {display: none;}	/*スマホ用メニュー非表示*/
#menubar_hdr {display: none;}



body.child .main_images{
	background-size: cover;
	position: relative;
	width: 100%;
	height: 395px;
}

/*メイン画像*/
body#advantage .main_images{
	background:url("/images/advantage/img_main_advantage.jpg") no-repeat;
	background-size: cover;
}
body#business .main_images{
	background:url("/images/business/img_main_business.jpg") no-repeat;
	background-size: cover;
}
body#about .main_images{
	background:url("/images/about/image_main_about.jpg") no-repeat;
	background-size: cover;
}

body#misc .main_images{
	background:url("/images/img_main_misc.jpg") no-repeat;
	background-size: cover;
}
body#contact .main_images{
	background:url("/images/img_main_contact.jpg") no-repeat;
	background-size: cover;
}
body#information .main_images{
	background:url("/images/information/img_main_Information.jpg") no-repeat;
	background-size: cover;
}

body.child .child_pagetitle{
	position: absolute;
	width: 100%;
	bottom:-4px;
	text-align: center;
	color: #fff;
	font-size: 60px;
	font-weight: 400;
	line-height: 55px;
	letter-spacing:0.03em;
	z-index:9;
}


/*fixmenu設定（メニューが画面上部に到達した際のスタイル）
------------------------------------------------------------------------------------------------------------------------------------------------------*/
/*上部固定メニュー用fixmenu設定*/
body#top.is-fixed-menu #menubar.nav-fix-pos {
	position: fixed;
	width: 100%;
	padding-left:0%;
	padding-right:0%;
	top: 0px;
	background: #fff;
	background: rgba(255,255,255,0.95);	/*背景色+透明度。*/
}
body.child.is-fixed-menu #menubar.nav-fix-pos {
	position: fixed;
	width: 100%;
	padding-left:0%;
	padding-right:0%;
	top: 0px;
	background: #fff;
	background: rgba(255,255,255,0.95);	/*背景色+透明度。*/
}

body.is-fixed-menu #menubar.nav-fix-pos ul{
	width: 20%;
}

body#top.is-fixed-menu #menubar.nav-fix-pos ul{
	width: 12%;
}
body#top.is-fixed-menu #menubar.nav-fix-pos ul.nav_logo{
	display: flex;
	width: 30%;
}


body.child.is-fixed-menu #menubar.nav-fix-pos ul{
	width: 12%;
}
body.child.is-fixed-menu #menubar.nav-fix-pos ul.nav_logo{
	width: 30%;
}

@media screen and (max-width:1000px) {
	body.child #menubar ul, body.child.is-fixed-menu #menubar.nav-fix-pos ul{
		width: 13%;
	}
	body.child #menubar ul.nav_logo, body.child.is-fixed-menu #menubar.nav-fix-pos ul.nav_logo{
		width: 35%;
	}
}


body.is-fixed-menu #contents {
/*	margin-top: 90px;	*//*★ ※上の「#menubar ul li a」の注意書きにある数字を指定します。*/
}
/*※以下の２ブロックのスタイルの「中身」は、上の２ブロックのスタイルと単純に合わせておいて下さい。fixmenuスクリプトを２つ使う為に必要な設定になります。*/
body#top.is-fixed #menubar.nav-fix-pos {
	position: fixed;
	width: 100%;
	padding-left:16%;
	padding-right:16%;
	top: 0px;
	background: #fff;	/*背景色（古いブラウザ用）*/
	background: rgba(255,255,255,0.95);	/*背景色+透明度。*/
}
body.child.is-fixed #menubar.nav-fix-pos {
	position: fixed;
	width: 68%;
	padding-left:0%;
	padding-right:0%;
	top: 0px;
	background: #fff;	/*背景色（古いブラウザ用）*/
	background: rgba(255,255,255,0.95);	/*背景色+透明度。*/
}

body#top.is-fixed #menubar.nav-fix-pos ul{
	width: 20%;
}
body#top.is-fixed #menubar.nav-fix-pos ul.nav_logo{
}
body.child.is-fixed #menubar.nav-fix-pos ul{
	width: 11%;
}
body.child.is-fixed #menubar.nav-fix-pos ul.nav_logo{
	width: 30%;
}


body.is-fixed #contents {
	margin-top: 90px;	/*※上の「#menubar ul li a」の注意書きにある数字を指定します。*/
}

/*コンテンツ（mainとsubを囲むブロック。１カラム時の場合はメインコンテツを囲むブロック。）
---------------------------------------------------------------------------*/
#contents {
	position: relative;z-index: 1;
	overflow: hidden;
	padding: 0px 0 0;
	background-color: #fff;
}

#contents .inner {
	margin: 0 auto;
}

@media screen and (min-width:960px){
	.inner {
		margin: 0 auto;
		width: 960px;
	}
	#information.child #contents .inner {
		margin: 0 auto;
		width: 860px;
	}




	#footermenu {
		margin-left: auto;
		margin-right: auto;
		width: 1100px;
	}	
}


@media screen and (max-width:960px){
	.inner {
		margin: 0 4%;
		width: calc(100% - 8%);
	}
}



h3 {
	font-size: 33px;
	line-height: 33px;
	margin-bottom: 50px;
	color: #3D4043;
}
h3.mb0 {
	margin-bottom: 0px;
}
h3 span {
	display: inline-block;	
	border-bottom: 1px solid orange;
	padding: 0px 0.5em 15px 0.5em;
	letter-spacing:0.5em;
}
h3.letter-spacing05 span {
	padding: 0px 0 15px 0.6em;
	letter-spacing:0.5em;
}
h3.letter-spacing02 span {
	padding: 0px 0.15em 15px 0.5em;
	letter-spacing:0.2em;
}
h3.letter-spacing00 span {
	padding: 0px 0.15em 15px 0.5em;
	letter-spacing:0em;
}

h4{
	font-size: 28px;
}
h4.color-orange{
	font-size: 28px;
	margin-bottom: 30px;
}
h5 {
	font-size: 18px;
	margin-bottom: 40px;
}
h5 span{
	letter-spacing:0.2em;
	border-bottom: 1px solid orange;
	line-height: 1.8;
}
.catch{
	font-size: 24px;
	margin-bottom: 30px;
	line-height: 44px;
}
/*h3タグの１文字目*/
#contents h3::first-letter {
}
/*段落タグ*/
#contents p {
	padding: 0 0 20px 0
}
#contents p.mb0 {
	padding: 0 0 10px 0
}
#contents h2{
	font-weight: 500;
	color: #66624c;
}
#contents h2 + p,
#contents h3 + p {
	margin-top: -5px;
}
#contents p + p {
	margin-top: -10px;
}

/*flex-box*/
.flex-container {
	display: flex;
	flex-wrap: wrap;
	padding: 0 5px;
	align-items: center;
}
.flex-container.top {
	align-items: flex-start;
}
.flex-container.bottom {
	align-items: flex-end;
}
.flex-container.center{
	justify-content:center;
}

@media screen and (min-width: 800px){
	.flex2box {
		width: 47%;
		margin-right: 6%;
		transition: 0.3s;
	}
	.flex3box {
		width: 31%;
		margin-right: 3.5%;
		transition: 0.3s;
	}
	.flex3x2box {
		width: 65.5%;
		margin-right: 0;
		margin-bottom: 25px;
	}
	.flex4box {
		width: 22%;
		margin-right: 4%;
	}
	.flex2box:last-child, .flex3box:last-child, .flex4box:last-child{
		margin-right: 0%;
	}
}

table.history td{
	vertical-align: top;
}

/*mainコンテンツ
---------------------------------------------------------------------------*/
.main {
}
/*section同士の余白*/
.main section + section {
	margin-top: 40px;
	padding-top: 0;
}

section .gray{
	background-color: #f6f6f4;
}


section .inner{
	padding: 70px 0;
}
section  .inner.centering{
	text-align: center;
}
section .inner.pt20{
	padding: 20px 0 70px;
}
#contents section .inner + .inner {
	padding-top: 0 !important;
}

.last_section {
	padding-bottom: 250px;
	background:url("/images/common/img_building.png") no-repeat center bottom ;
	background-size: 100%;
}

/*Newsのリスト*/
#information .newslist {
	text-align: left;
	font-size: 15px;
	border-top: 1px solid #707070;
	border-bottom: 1px solid #707070;
	margin-bottom: 80px;
}
#information .newslist a{
	padding: 10px 0;
	display: block;
	border-bottom: 1px dotted #707070;
}
#information .newslist a:last-of-type {
	border-bottom: 0px;
}
#information .newslist dt {
	vertical-align: middle;
	padding-left: 25px;
	display: inline-block;
	width: 167px;
	font-weight: 500;
	letter-spacing:0.05em;
}
#information .newslist dd {
	vertical-align: middle;
	display: inline-block;
	width: calc(100% - 192px);
	font-weight: 400;
}


/*下層ページ用*/
a.links{
	font-size: 14px;
	font-weight: 500;
	text-decoration:none;
	color: orange;
	background:url("/images/common/pct_tryangle_right.png") no-repeat center left ;
	padding-left: 1.2em;
	display: inline-block;
}
a.links:hover{
	opacity: 0.7;
}

.text{
	font-size: 15px;
	text-align: left;
}
.text18{
	font-size: 18px;
	text-align: left;
}

.text p,.text18 p{
	font-weight: 300;
	padding: 0;
	margin: 20px 0 20px;
}
.text p.mb0,.text18 p.mb0{
	margin: 20px 0 0px;
}

body#business .content, body#about .content{
	width: 80%;
	margin: 0 10%;
}
body#business .content .flex-container{
	align-items: flex-end;
	justify-content: center;
}




.bunner{
	height: 207px;
	display: flex;
	align-items: center;
	justify-content: center;
}

body#business .bunner.real_estate{
	background:url("/images/business/img_bunner_business01.jpg") no-repeat;
	background-size: cover;
}
body#business .bunner.finance{
	background:url("/images/business/img_bunner_business02.jpg") no-repeat;
	background-size: cover;
}
body#business .bunner.insurance{
	background:url("/images/business/img_bunner_business03.jpg") no-repeat;
	background-size: cover;
}


[id*="links-"]:before {
	display: block;
	content: " ";
	margin-top: -100px;
	height: 100px;
	visibility: hidden;
}


footer {
	clear: both;position: relative;z-index: 1;
	font-size: 12px;	
	background-color: white;
	color: #444;	
	text-align: center;
}
footer a {color: #444;}
footer a:hover {color: #555;}
footer .pr {display: block;font-size: 80%;}

/*フッターメニュー
---------------------------------------------------------------------------*/
/*ボックス全体*/
#footermenu {
	overflow: hidden;
	padding: 40px 20px;
}

#footermenu .flex-container{
	justify-content: space-around;
	align-items: flex-start;
}

#footermenu a {
	text-decoration: none;
	opacity: 0.7;	
}

#footermenu a:hover {
	opacity: 1;
}
#footermenu ul {
	width: 20%;
	text-align: left;
	line-height: 1.7;
}

#footermenu ul.logo_mark{
	text-align: center;
}

#footermenu ul li{
	vertical-align: top;
}


#footermenu li.title, #footermenu li.title a {
	color: var(--green);
	opacity: 1;	
	font-size: 12px;
}
#footerlist{
	background: var(--green);
	color: #fff;
	padding: 15px 0;
}
#footerlist li{
	line-height: 1;
	display: inline-block;
	padding: 0 1em;
}
#footerlist li.line{
	border-right: 1px solid #fff;
}

#footerlist a{
	color: #fff;
	text-decoration:none;
}
#footerlist a:hover{
	opacity: 0.8;
	color: #fff;
	text-decoration:none;
}

/*コピーライト
---------------------------------------------------------------------------*/
#copyright {
	clear: both;
	border-top: 5px solid orange;
	text-align: center;
	background: #fff;
	padding: 12px;
	letter-spacing:0.05em;
}


/*table設定
---------------------------------------------------------------------------*/
table.normal {
	width: 100%;
	table-layout: fixed;
	background: #fff;	
}
table.normal td{
	padding: 20px 40px;
	border: 2px solid #ddd;
	border-right: 0;
}
body#about table.normal td{padding: 20px 0px 20px 40px;}
table.normal th{
	font-weight: normal;
	padding: 20px 20px;
	text-align: center;
	background: #ddd;	
	border: 2px solid #fff;
}
table.normal.green th{
	background: #d0d8c6;	
}
body#about table.normal th{
	width: 25%;
}
table.normal th.top{
	border-top: 2px solid #ddd;
}
table.normal th.bottom{
	border-bottom: 2px solid #ddd;
}
table.normal.green th.top{
	border-top: 2px solid #d0d8c6;
}
table.normal.green th.bottom{
	border-bottom: 2px solid #d0d8c6;
}

.text .indent{
	padding: 12px 0 12px 60px;
}

.acsess_title{width: 30%;}
.inner .bg_gray{
	background-color: #eee;padding: 30px 0;align-items: center;justify-content: center;
}


.inner .bg_white{
	border: 1px solid #ccc;padding: 30px;margin: 30px 130px;align-items: center;justify-content: center;
}

.inner .bg_shadow{
	box-shadow: 0px 0px 15px #ccc;
}

#misc .inner .bg_gray,
#misc .inner .bg_white {
	margin: 30px 130px;
}
#misc .inner .bg_shadow{
	margin: 30px 160px;
}


#contents .more.btn,
#contents input[type="submit"].btn,
#contents input[type="button"].btn,
#contents input[type="reset"].btn {
	padding: 10px 45px;		
	border: 1px solid #707070;
	font-size: 16px;	
	background: #fff;
	opacity: 0.8;
}
#contents .more.btn a{
	text-decoration:none;
}


#contents .more.btn:hover,
#contents input[type="submit"].btn:hover,
#contents input[type="button"].btn:hover,
#contents input[type="reset"].btn:hover {
	border: 1px solid #999;
	background: #efefef;
}



/*ヘッダーにメニューが固定される分、リンク先が隠れるのを防ぐ為のスタイル。※ページ内へのリンクで使う。
---------------------------------------------------------------------------*/
.link {
	display: block;
	margin-top: -120px;
	padding-top: 120px;
}

/*ページの上部へボタン「↑」設定
---------------------------------------------------------------------------*/
@keyframes scroll {0% {opacity: 0;}100% {opacity: 1;}}
body .nav-fix-pos-pagetop a {display: none;}
body.is-fixed-pagetop .nav-fix-pos-pagetop a {
	display: block;
	text-decoration: none;
	text-align: center;
	width: 50px;		
	line-height: 50px;	
	z-index: 1;
	font-size: 20px;
	position: fixed;
	bottom: 20px;
	right: 3%;
	background: #ccc;	/*背景色（古いブラウザ用）*/
	background: rgba(0,0,0,0.6);	/*背景色。0,0,0は黒の事。0.6は60%色がついた状態。*/
	color: #fff;	
	border: 2px solid #fff;	
	animation-name: scroll;	/*上のアニメーションで指定しているkeyframesの名前（scroll）*/
	animation-duration: 1S;	/*アニメーションの実行時間*/
	animation-fill-mode: forwards;	/*アニメーションの完了後、最後のキーフレームを維持する*/
	border-radius: 50%;
}

body.is-fixed-pagetop .nav-fix-pos-pagetop a:hover {
	background: #aaa;
}

.newwindow{vertical-align:2px;display: inline-block;width: 24px;text-align: center;}

/*その他
---------------------------------------------------------------------------*/
hr{border-top: 1px solid #ccc;}
.look {background: #ccc;padding: 5px 10px;border-radius: 4px;}
.mb5{margin-bottom: 5px;}
.mb10{margin-bottom: 10px;}
.mb15,.mb1em {margin-bottom: 15px !important;}
.mb20 {margin-bottom: 20px !important;}
.mb30 {margin-bottom: 30px !important;}
.mb50 {margin-bottom: 50px !important;}
.mb70 {margin-bottom: 70px !important;}
.mb80 {margin-bottom: 80px !important;}
.mb100 {margin-bottom: 100px !important;}
.pd10 {padding-bottom: 10px !important;}
.p0, .pd0{padding:0 !important;}
.clear {clear: both;}
ul.disc {padding: 0em 25px 15px;list-style: disc;}
.color1, .color1 a {color: #66b3d3 !important;}
.pr {font-size: 10px;}
.wl {width: 96%;}
.ws {width: 50%;}
.ft90 {font-size: 90%;}
.centering {text-align: center !important;}
.t-right {text-align: right !important;}
.t-left {text-align: left !important;}
.w50 {overflow: hidden;width: 50%;}
.fl {float: left;}
img.fl {float: left;width:30%;margin-right: 20px;margin-bottom: 20px;}
.fr {float: right;}
img.fr {float: right;width:30%;margin-left: 20px;margin-bottom: 20px;}
.big1 {font-size: 22px;}
.sub .big1 {font-size: 12px;}
.mini1 {font-size: 11px;display: inline-block;line-height: 1.5;}
.sp {display: none;}
.date {text-align: right;color: #000;font-size: 15px;}
.color-white{color: #fff !important;}
.color-orange, .orange{color: orange !important;}
.color-glay, .glay{color: #65624C !important;}
a color-orange:hover{color: var(--green) !important;}
.color-green{color: var(--green) !important;}
.letter-spacing02em{letter-spacing:0.2em;}
.u-line, a.ul{text-decoration: underline;}
@media screen and (max-width:800px){

	/*メインメニュー
	---------------------------------------------------------------------------*/
	/*アニメーションのフレーム設定。*/
	@keyframes menu1 {
		0% {opacity: 0;}
		100% {opacity: 1;}
	}
	/*スマホ用メニューブロック*/
	#menubar-s {
		display: block;overflow: hidden;
		position: fixed;z-index: 100;
		top: 0px;
		width: 100%;
		background: rgba(0,0,0,0.8);	
		border-top: 1px solid #fff;
		animation-name: menu1;
		animation-duration: 0.5s;
		animation-fill-mode: both;
	}
	/*メニュー１個あたりの設定*/
	#menubar-s ul li {
		display: block;
		padding: 15px 15px;
		border-bottom: 1px solid #888;
	}
	#menubar-s ul li a {
		display: block;
		text-decoration: none;
		color: #fff;
		font-size: 16px;
	}
	/*飾り文字*/
	#menubar-s ul li span {
		display: block;
		font-size: 10px;
		color: #999;		
	}
	
	#menubar {display: none;}/*PC用メニューを非表示にする*/
	#menubar-s .sp-logo{margin: 15px 0 0;padding-bottom: 25px;}
	#menubar-s .sp-logo img{width: 85%;}
	
	/*３本バーアイコン設定
	---------------------------------------------------------------------------*/
	
	#menubar_hdr {
		display: block;
		position: fixed;z-index: 100;
		top: 8px;
		right: 0;
	}
	
	#menubar_hdr.close,
	#menubar_hdr.open {
		width: 50px;	
		height: 50px;	
		border-radius:8px 0 0 8px;
	}
	
	#menubar_hdr.close {
		background: #efefef url(../images/icon_menu.png) no-repeat center top/50px;
		box-shadow:0px 2px 2px rgba( 0, 0, 0, 0.15 );
		opacity: 0.8;
	}
	
	#menubar_hdr.open {
		background: url(../images/icon_menu.png) no-repeat center bottom/50px;	/*背景色、背景画像の読み込み、画像の下半分（×マーク）を表示。幅は50px。*/
	}
	
	/*fixmenu設定（メニューが画面上部に到達した際のスタイル）
	---------------------------------------------------------------------------*/
	/*fixmenuから折りたたみメニューになるのでリセット。*/
	body.is-fixed-menu #contents {
		margin-top: 0px;
	}
	
	/*main,subコンテンツ
	---------------------------------------------------------------------------*/
	#contents .main, #contents .sub {
		float: none;
		width: auto;
		clear: both;
	}
	
	/*ヘッダーメニューが固定されなくなるので、再設定。
	---------------------------------------------------------------------------*/
	.link {
		margin-top: -30px;
		padding-top: 30px;
	}
	
	/*その他
	---------------------------------------------------------------------------*/
	body.s-n .sub,body.s-n #footermenu {display: none;}
	.big1 {font-size: 20px;}
	.w50 {overflow: hidden;width: auto;}
	.fl {float: none;}
	.fr {float: none;}
}



/*画面幅800px以下の設定
------------------------------------------------------------------------------------------------------------------------------------------------------*/
@media screen and (max-width:800px){

	/*ヘッダー
	---------------------------------------------------------------------------*/
	#top #logo img {
		left: 26%;
		top: 35%;
		width: 50%;
	}
	.text .indent{
		padding: 12px 0 12px 0px;
	}
	
	.last_section {
		padding-bottom: 100px;
	}
	#contents .main .list.compact {
		width: auto;
		float: none;
		margin: 0;
		border-top: 1px solid #dcdcdc;
		padding-top: 3%;
	}
	#contents .main .list.compact a {
		height: auto;
	}
	#contents .main .list.compact figure img {
		float: left;
		width: 20%;
		margin-right: 10px;
	}
	#contents .main .list.compact:last-of-type {
		margin-bottom: 15px;
		border-bottom: 1px solid #dcdcdc;
	}
	#contents .bunner h3{font-size: 32px;}
	
	
	
	#contents h4{font-size: 24px;}
	
	h4.color-orange{
		font-size: 24px;
		margin-bottom: 15px;
	}
	/*フッター*/
	#footermenu{
		margin: 0;
		padding: 20px 12px;
	}
	#footermenu .flex-container{
		margin: 0;
		padding: 0;
		justify-content:space-between;
	}
	#footermenu .flex-container *{
	}
	#footermenu .flex-container ul{
		width: 49%;
	}
	#footermenu .logo_mark.sp {
		margin-bottom: 10px;
		width: 100%;
		text-align: center;
	}
	#footerlist li.line-sp-none{
		border:none;
	}
	
	body#business .content, body#about .content{
		width: 90%;
		margin: 0 5%;
	}

	body#business .flex3box, body#about .flex4box{
		width: 50%;margin-bottom: 50px;
	}

	.flex2box:nth-child(2), .flex3box:nth-child(3), .flex4box:nth-child(3), .flex4box:nth-child(4){
		margin-bottom: 0 !important;
	}
	.flex3box{width: 90%;padding-left: 10%;padding-right: 10%;}
	table.normal, table.history{
		font-size: 12px;
	}
	table.normal td{
		padding: 7px 0px 7px 4px !important;
	}
	table.normal th{
		padding: 7px 4px;
	}
	body#about table.normal th{
		width: 4.5em;
	}
	#information .newslist dt {
		padding-left: 0px;
		width: 130px;
	}
	#information .newslist dd {
		width: calc(100% - 130px);
	}
	.catch{
		font-size: 18px;
		margin-bottom: 30px;
		line-height: 32px;
	}
	#our_advantage .group img,
	#capitalstructure .group img{
		width: 90%;
	}
	
	#contents h3 {
		font-size: 24px;
	}
	#contents h3 span{
		padding-bottom: 10px;
	}
	#misc .inner .bg_gray,
	#misc .inner .bg_white {
		margin: 30px 0;
		padding: 15px;
	}
	#misc .inner .bg_shadow{
		margin: 10px;
	}
	.last_section {
		background:url("/images/common/img_building_sp.png") no-repeat center bottom ;
		background-size: 100%;
	}
	.flex2box.spw80 {
		width: 80%;
		margin-left: 10%;
		margin-right: 10%;
		transition: 0.3s;
	}

	.acsess_title{width: 80%;text-align: center;font-weight: 400;margin-bottom: 10px;}
	.sp {display:block;}
	.pc {display:none;}
	.sp_text90{font-size: 90% !important;}
	.text18{font-size: 16px;}
	.sp-mb-10{margin-bottom: 10px;}
	.sp-mb-20{margin-bottom: 20px;}
}


@media screen and (max-width:480px){

	body {
		font-size: 12px;
		line-height: 1.5;	
	}
	
	.inner {
		padding-left: 2% !important;
		padding-right: 2% !important;
	}
	
	#contents h2 {
		font-size: 14px;
		padding: 5px 10px;	
	}
	#contents p {
		padding: 0 10px 20px;
	}
	
	.main section + section {
		margin-top: 20px;
	}
	
	.ta1, .ta1 td, .ta1 th {
		padding: 5px;	
	}
	.ta1 th {
		width: 100px;
	}
	.xs-mb-10{margin-bottom: 10px;}
	.xs-mb-20{margin-bottom: 20px;}
}


/*電子公告*/
table.publicnotice{
	text-align: left;
	border-collapse: separate: !important;
	font-size: 14px;
	border-bottom: 1px solid #d0d8c6;
}
table.publicnotice th{
	width: 18%;
	background-color: #d0d8c6;
	padding: 15px 60px;
	border-bottom: 1px solid #fff;
}
table.publicnotice th+td{
	border-top: 1px solid #d0d8c6;
	width: 82%;
	padding: 15px 50px;
}
@media screen and (min-width:800px){
	table.publicnotice{
		width: 90%;
		margin: 0 5%;
	}
}
@media screen and (max-width:680px){
	table.publicnotice{
		width: 100%;
	}
	table.publicnotice th, table.publicnotice th+td{
		padding: 10px 20px;
	}
}


/*y____*/
body#information [id*="y"]:before,
body#information #publicnotice:before {
	display: block;
	content: " ";
	margin-top: -100px;
	height: 100px;
	visibility: hidden;
}

/*infomationの年号*/
.to-index {
	text-align: center;
}

.to-index .text_bg_green{
	display: inline-block;
	font-size: 14px;
	padding: 7px 50px 6px !important;
	line-height: 16px;
}
.to-index a:hover .text_bg_green{
	opacity: 0.7;
}
.text_border{
	font-size: 18px;
	color: #65624C;
	border: 1px solid #aaa;
	padding: 10px 30px;
	letter-spacing:0.25em;
}
@media screen and (max-width:680px){
	.text_border{
		font-size: 16px;
		padding: 10px 20px;
		letter-spacing:0em;
		display: inline-block;
		margin-bottom: 10px;
	}
}
