@charset "utf-8";
/* ココUPするときに消す */
article{ padding: 0; }
article section{ margin-bottom: 0; }

/* news */
.news{ padding: 30px 0; background-color: #f4f4f4; }
.news .vertical{ font-size: 1.9em; letter-spacing: 4px; color: #444; }
.news h2{ width: 110px; padding: 40px 0; float: left; border-left: 5px solid #e8676e;
	background: url(../img/top/entx_news.png) no-repeat 16px 40px; }
.news .txt{ width: 750px; height: 230px; overflow-y: scroll; float: right; }
.news .txt p{ padding-bottom: 20px; margin-bottom: 15px; border-bottom: 2px solid #4c4c4c; }
.news .txt p:last-child{ border: 0; }


/*top_banner*/
.top_banner { position:relative; margin:0 auto; max-width:980px; /*border:solid 2px #ea4e48;*/ margin-top:30px; /*background:url(../img/bnr_asahi_bg.png) 0 0 / cover no-repeat #fff;*/ }
.top_banner a { display:block; }
.top_banner p { margin:0 auto; }
.top_banner p+p {
	position:absolute; bottom:0; right:0; background:#ea4e48; color:#fff; font-weight:bold; font-size:16px; padding:6px 16px 2px 17px;
	font-family:Helvetica, Arial, "游ゴシック", "Yu Gothic", "メイリオ", "Meiryo","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", Osaka, sans-serif; }
.top_banner p+p:before { content:""; position:absolute; left:-15px; top:0; border-style:solid; border-width:37px 15px 0px 0; border-color:transparent #ea4e48 transparent transparent;}
.top_banner .btn { position:absolute; max-width:220px; bottom:15px; right:25px; }
.top_banner .btn li + li { margin-top:5px; }
.top_banner img { max-width:100%; }

.bnrApps { position:relative; margin-top:40px; padding:20px 20px 0; border:2px solid #ea4e48; background:url(../img/top/bnr_apps.jpg)top 0 right 0 / cover no-repeat; overflow:hidden; }
.news .bnrApps .txt { float:left; width:48%; height:auto; overflow-y:visible; }
.bnrApps .comment { float:right; width:48%; }
.bnrApps p { margin:0; }
.bnrApps .btnList { position:absolute; bottom:0; left:20px; overflow:hidden; }
.bnrApps .btnList li { float:left; }
.bnrApps .btnList li + li { margin-left:20px; }
.bnrApps img { max-width:100%; }


/*recruit_banner*/
.recruit_banner { max-width:980px; margin: 0 auto; margin-top: 30px;}
.recruit_banner img { width: 100%;}


/* message */
.message{ margin-bottom: 50px; padding: 50px 0 90px; background: url(../img/bg_p.jpg) repeat #ecdadb; }
.message h3{ margin-bottom: 20px; font-size: 1.5em; }
.message figure{ width: 190px; float: left; }
.message figure img{ box-shadow: 0 0 6px rgba(0,0,0,0.2); }
.message figcaption{ margin: 15px 0 0 5px; line-height: 1.5; }
.message .txt{ width: 750px; float: right; }
.message .txt div{ height: 210px; overflow-y: scroll; }

/* management */
.b_box{ margin-top: -50px; border-top: #4c4c4c 2px solid; border-bottom: 0; }
.sub{ width: 460px; margin: -35px auto 40px; padding: 12px 0; text-align: center;
	font-size: 1.6em; letter-spacing: 2px; background-color: #FFF; border: #4c4c4c 2px solid; }
.sub + .vida{ display: inline-block; width: 230px;  float: right; margin: -104px 0 0 0; font-size: 1.7em; }
.management{ margin-bottom: 40px; }
.management li{ position:relative; width: 50%; margin-bottom: 20px; padding: 35px 35px 30px; background: url(../img/bg_footer.png) no-repeat; background-size: 280px 327px; }
.management .open_txt { position:absolute; top:-17px; left:35px; color:#d80300; margin:0 auto; font-weight:bold; font-size:1.5em; }
.management .manat{ overflow: hidden; }
.management .logo{ width: 28%; float: left; }
.management h2{ width: 69%; float: right; font-size: 1.5em; line-height: 1.5; }
.management h2 span{ font-size: 0.8em; color:#d80300; }
.management figure{ margin: 25px auto; }
.management dl{ overflow: hidden; font-size: 0.9em; }
.management dt{ clear: both; width: 18%; float: left; }
.management dd{ width: 75%; float: left; }
.management .link_yoko{ width: 90%; margin: 20px auto 0; }

/* 関連会社 */
.kanren{ background-color: #FBEAEB; }
.group{ margin-top: 0; padding-bottom: 70px; }
.group .flex{ -webkit-justify-content: flex-start; justify-content: flex-start; }
.group li{ width: 29%; margin: 0 2% 20px; background-color: #FFF; }
.group li img{ width: 100%; padding: 8px 8px; border: 1px solid #DDD; }

/*980px 以下  768px-979px */
@media screen and (max-width:979px) {

	/* news */
	.news{ padding: 20px 0; }
	.news .vertical{ font-size: 1.3em; letter-spacing: 2px; }
	.news h2{ width: 10%; padding: 20px 0; border-left: 3px solid #e8676e; background-position: 10px 20px; background-size: 15px 87px; }
	.news .txt{ width: 85%; height: 250px; }
	.news .txt p{ padding-bottom: 15px; border-bottom: 1px solid #4c4c4c; }
	.news .txt strong{ font-size: 1.2em; }

	/*top_banner*/
	.top_banner { margin:15px 15px 0; }
	/*.top_banner p img { height:150px; }*/
	.top_banner .btn { max-width:180px; bottom:8px; }

	.bnrApps .btnList { width:65%; }
	.bnrApps .btnList li { width:47%; }
	.bnrApps .btnList li + li { width:49%; margin-left:4%; }

  /*recruit_banner*/
  .recruit_banner { margin: 15px 15px 0;}


	/* message */
	.message{ padding: 20px 0 60px; }
	.message h3{ margin-bottom: 15px; font-size: 1.3em; }
	.message figure{ float: none; margin: 0 auto 20px; }
	.message .txt{ width: auto; float: none; }

	/* management */
	.b_box{ margin-top: -50px; }
	.sub{ width: 60%; margin: -35px auto 40px; font-size: 1.4em; }
	.sub + .vida{ display: none; }
	.management{ margin-bottom: 30px; }
	.management li{ background-size: 200px 234px; }
	.management h2{ font-size: 1.3em; }
	.management li p{ font-size: 0.9em; }
	.management dt{ width: 20%; }
	.management .link_yoko{ width: 100%; }
	.management figure img{ width: 100%; }

	/* 関連会社 */
	.group{ margin-top: 10px; padding-bottom: 40px; }

}

/*768px 以下*/
@media screen and (max-width:767px) {

	/* news */
	.news{ margin-bottom: 20px; }
	.news .vertical{ font-size: 1.1em; }
	.news h2{ width: 10%; padding: 20px 0; border-left: 2px solid #e8676e; background: none; }
	.news .txt{ width: 86%; height: 200px; }
	.news .txt p{ padding-bottom: 10px; margin-bottom: 10px; font-size: 0.9em; }
	.news .txt strong{ font-size: 1.05em; }

	/* message */
	.message{ margin-bottom: 20px; }
	.message h3{ font-size: 1.0em; }
	.message .txt div{ height: 200px; }

	/* management */
	.b_box{ margin-top: -20px; }
	.sub{ width: 99%; margin: -30px auto 20px; font-size: 1.1em; }
	.management li{ width: auto; padding: 20px 15px 0; background-size: 150px 175px; }
	.management h2{ font-size: 1.1em; }
	.management dl{ font-size: 0.85em; }
	.management dt{ width: 23%; }
	.management dd{ width: 72%; }
	.management .open_txt { top:-14px; left:20px; font-size:1.2em; }

	/* 関連会社 */
	.group{ margin-top: 15px; padding-bottom: 30px; }
	.group li{ width: 46%; margin: 0 2% 15px; }
	.group li img{ padding: 5px 8px; }

  /*top_banner*/
	/*.top_banner p img { height:105px; }*/
	.top_banner p+p { position:relative; font-size:13px; padding:4px 0 2px; text-align:center; }
	.top_banner p+p:before { display:none; }



}

@media screen and (max-width:500px){
	.news .bnrApps .txt { float:none; width:75%; margin-bottom:10px; }
	.bnrApps { padding:10px 10px 0; margin-top: 0; background-position:top 0 left 0; }
	.bnrApps .comment { width:54%; }
	.bnrApps .btnList { position:static; float:left; width:42%; }
	.bnrApps .btnList li { float:none; width:100%; }
	.bnrApps .btnList li + li { width:100%; margin-top:5px; margin-left:0; }

	.top_banner { background-position:top 0 right -55px; }
	.top_banner p img { height:auto; max-width:100%; padding:10px 0; }
	.top_banner .btn { position:static; max-width:100%; margin:0 auto 15px; padding:0 15px; overflow:hidden; }
	.top_banner .btn li { float:left; width:48%; }
	.top_banner .btn li + li { margin-left:4%; margin-top:0; }
}