@charset "utf-8";

/* ---------------------------------------------
　layout modules
------------------------------------------------ */

/* base modules
------------------------------------------------ */
.content p,
.content ul,
.content dl,
.content ol,
.content table,
.content blockquote{
	margin: 20px 0 0;
	line-height:1.8em;
}

.content .acms-entry p {
	margin: 20px 10px;
}

.content ul p, .content ul dl, .content ul ol, 
.content dl p, .content dl ul, .content dl ol, 
.content ol p, .content ol ul, .content ol dl, 
.content table p, .content table ul, .content table dl, .content table ol{
	margin: 0;
}

.content p img, .content dl img, .content ul img {
	vertical-align: middle;
}

.column-image-left,.column-image-center,.column-image-right { margin-top:20px !important; }

/* common modules
------------------------------------------------ */

em        { color:#FD6408;  }

.small    { font-size:87%;  }
.x-small  { font-size:78%;  }

.large    { font-size:107%; }
.x-large  { font-size:120%; }

.attention{ color: #FF3366;   }
.bold     { font-weight:bold; }

.center{ text-align: center; }
.right { text-align:right;   }
.left  { text-align:left;    }

.float-l{ float: left;  }
.float-r{ float: right; }
.clear  { clear: both;  }

.img-l{ float:left;  margin:0 25px 10px 0; }
.img-r{ float:right; margin:0 0 10px 25px; }

.nowrap         { white-space:nowrap; }
.nomargintop    { margin-top: 0 !important; }
.content .nocss { maring:0; padding:0; border:none; background:none; }

/* --- anchor --- */

.anchor{
	background:url(../images/icon_arrow01.png) no-repeat 0 0.4em;
	padding-left:13px;
}

a.anchor-ex{
	background:url(../images/icon_new_window01.png) no-repeat right 0.2em top 0.35em;
	padding:0 20px 0 7px;
	color:#333;
}
.anchor-ex:hover{ text-decoration:underline; }

/* --- ext icon --- */

a[href$='.xls'], a[href$='.xlsx']{
	background: url(../images/fileicon/xls.png) no-repeat 100% 50%;
	padding-right: 25px;
}

a[href$='.doc'], a[href$='.docx']{
	background: url(../images/fileicon/doc.png) no-repeat 100% 50%;
	padding-right: 25px;
}

a[href$='pdf']{
	background: url(../images/fileicon/pdf.png) no-repeat 100% 50%;
	padding-right: 25px;
}
a[href$='pdf'].no-icon{
	background: none;
	padding-right: 0;
}

a[href$='ppt']{
	background: url(../images/fileicon/ppt.png) no-repeat 100% 50%;
	padding-right: 25px;
}

a.pdf:after {
	content: "";
	display: inline-block;
	background: url(../images/fileicon/pdf.png) no-repeat 100% 50%;
	background-size: contain;
	width: 14px;
	height: 14px;
	margin-left: 4px;
	position: relative;
	top: 2px;
}


/* --- openwin --- */

.openwin{ 
	padding-right: 15px;
}

/* ---　pagetop-in　 --- */

.pagetop-in {
	text-align:right;
}

.pagetop-in a {	
	background:url(../images/icon_arrow_pagetop.png) no-repeat 0 0.4em;
	padding-left: 15px;
	font-size: 92%;
}

/* --- blockquote --- */

blockquote, 
.acms-entry blockquote{
	background:#fff;
	border:0;
	margin-top:40px;
	padding:30px 20px;
}

/* --- btn --- */
.btn a{
	background:url(../images/icon_arrow03.png) no-repeat right 20px center #c850b1;
	color:#fff;
	padding:17px 0;
	text-align:center;
	width:480px;
	display:block;
	text-decoration:none;
}

.btn a:hover{
	background-color:#b8359b;
}

.center.btn.recruit a {
	margin: 50px auto 0;
}

.btncenter a{
	background:url(../images/icon_arrow03.png) no-repeat right 20px center #B762AA;
	color:#fff;
	padding:17px 0;
	text-align:center;
	width:480px;
	display:block;
	text-decoration:none;
	margin: 0 auto;
}

.btncenter a:hover{
	background-color:#b74ea7;
}

.btngray a {
	background:url(../images/icon_arrow02.png) no-repeat right 20px center #edeadd;
	color:#333;
	padding:17px 0;
	text-align:center;
	width:480px;
	display:block;
	text-decoration:none;
	margin: 0 auto;
}

.btngray a:hover{
	background-color:#dddace;
}

/* ------ title -------------------------------- */

.content h2, 
.content .wysiwyg h1{
	background:url(../images/bg_title_h2.png) 0 0 no-repeat;
	clear:both;
	margin:50px 0 0;
	font-family:"あおぞら明朝 Medium";
	font-size:24px;
	padding:15px 0 0 15px;
}
.content h2 a:link          { text-decoration:underline; }
.content h2 a:visited       { text-decoration:underline; }
.content h2 a:hover,a:active{ text-decoration:none; }


.content h3, 
.content .wysiwyg h2{
	clear:both;
	margin:50px 0 0;
	font-family:"あおぞら明朝 Medium";
	font-size:20px;
	background:url(../images/bg_title_h3.png) 20px 14px no-repeat #f3f1e8;
	padding:7px 0 7px 50px;
}

.content h4, 
.content .wysiwyg h3{
	clear:both;
	font-family:"あおぞら明朝 Medium";
	font-size:20px;
	margin:50px 0 0;
	padding:0 0 12px 10px;
	border-bottom: 1px solid #ddd;
}

.content h5, 
.content .wysiwyg h4{
	clear:both;
	font-weight:bold;
	margin:40px 0 0;
	padding: 5px 10px;
	border:1px solid #eef1fa;
	font-size:120%;
}

.content h6.question, 
.content .wysiwyg h5.question{
	clear:both;
	margin:50px 0 0;
	font-family:"あおぞら明朝 Medium";
	color:#cc4fb5;
	font-size:20px;
	background:url(../images/bg_title_quastion.png) 0 20px no-repeat;
	padding:23px 0 7px 50px;
}

/* ------ ul ----------------------------------- */


/* --- normal list --- */

.list li{
	background:url(../images/icon_list01.png) no-repeat 0 0.6em;
	padding-left:13px;
	margin-bottom:5px;
}

.list li li {
	background:url(../images/icon_list02.png) no-repeat 0 0.6em;
}

/* --- link list --- */

.link li{
	background:url(../images/icon_arrow02.png) no-repeat 0 0.5em;
	padding-left:10px;
	margin-bottom:5px;
}

.link li li{
	background:url(../images/icon_arrow02.png) no-repeat 0 0.5em;
	padding-left: 10px;
}

/* --- number list --- */

ol li {
	list-style-type:decimal;
	margin-left:25px;
	margin-bottom:5px;
}

ol ul li{
	list-style-type:none;
	margin-left:10px;
}

/* --- attention list --- */

.rice li{
	margin:0 0 5px 1em;
	text-indent:-1em;
}

/* --- compact list --- */

.compact li{
	display:inline;
	margin-right:10px;
}

/* --- within compact list --- */

.within {
	padding: 8px;
	border: 1px solid #ddd;
}

.within li{
	background:url(../images/icon_arrow_within.png) no-repeat 0 0.4em;
	padding-left:15px;
}


.content ul ul, .content dl dl, .content ol ol {
	margin-top: 5px;
}

/* ------ dl ----------------------------------- */

/* --- normal list --- */

.list dt{
	background:url(../images/icon_list01.png) no-repeat 0 0.5em;
	padding-left:13px;
	font-weight:bold;
}

.list dd{
	padding-left:13px;
}

/* --- link list --- */

.link dt{
	background:url(../images/icon_arrow01.png) no-repeat 0 0.4em;
	padding-left:15px;
	font-weight:bold;
}

.link dd{
	padding-left:15px;
}

/* --- horizonal --- */

.horizonal dt {
  clear: left;
  float: left;
  width: 10em;
  padding:8px 8px 8px 0;
}

.horizonal dd {
  padding:8px 15px 8px 11em;
  border-bottom:1px solid #ddd;
}



/* ------ layout frame ------------------------- */

.content .layout-frame {
	clear: both;
	margin-left: -20px;
}

.content .layout-3col {
	margin-left: -15px;
}

.content .layout-3cols {
	margin-left: -10px;
}

.content .layout-4col {
	margin-left: -12px;
}

.content .layout-5col {
	margin-left: -25px;
}

.content .layout-unit {
	float: left;
	display: inline;
	margin-left: 20px;
}

.content .layout-3col .layout-unit {
	margin-left: 15px;
}

.content .layout-3cols .layout-unit {
	margin-left: 10px;
}

.content .layout-4col .layout-unit {
	margin-left: 12px;
}

.content .layout-5col .layout-unit {
	margin-left: 25px;
}

/* 720px */
.grid-1 { width:100px; }
.grid-2 { width:190px; }
.grid-25 { width:220px; }
.grid-3 { width:290px; }
.grid-4 { width:390px; }
.grid-5 { width:490px; }
.grid-6 { width:590px; }
.grid-7 { width:690px; }
.grid-8 { width:790px; }
.grid-9 { width:890px; }
.grid-10{ width:990px; }
.grid-11{ width:1090px; }



/* ------ social media ------------------------- */

.social{
	margin-top:20px;
}

.social ul li{
	float:left;
	margin-right:10px;
	vertical-align:top;
	width:80px;
	display:inline-table;
}

/*
.social ul li.twitter, 
.social ul li.google{
	padding-top:5px;
}
	*/

.social ul li *{
	margin:0;
	padding:0;
}

.social ul:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
* html .social ul             { zoom:1; } /* IE6 */
*:first-child+html .social ul { zoom:1; } /* IE7 */



/* ------ table -------------------------------- */

table{
	border-collapse:collapse;
	border:0px solid #f9f8f3;
	width:100%;
	-webkit-box-sizing: border-box;
  -moz-box-sizing: border-box;
  box-sizing: border-box;

}

table th,
table td{
	padding:15px 20px;
	vertical-align:top;
	border:2px solid #f9f8f3;
	background:#f3f1e8;
	color:#4e483b;
	font-size:14px;
}

table th{
	background:#e2dec9;
}

table thead th,
th.head {
	background:#ddd8c0;
	text-align:center;
}

/* --- noborder --- */

table.noborder,
table.noborder td,
table.noborder th{
	border:0;
	background: none;
}

/* index
------------------------------------------------ */

.index {
	clear: both;
	margin: 0 0 0 -20px;
}

.index dl {
	position: relative;
	float: left;
	display: inline;
	margin-left: 20px;
	width: 350px;
}

.index dt {
	padding: 7px;
	background:#ddd;
}

.index dt a {
	text-decoration:none;
}

.index dd {
	padding: 7px;
}


.index2 {
	clear: both;
}

.index2 dl {
	position: relative;
	float: left;
	margin-right: 25px;
	width: 383px;
}

.index2 dl:nth-child(3n) {
	margin-right: 0;
}

.index2 dd {
	clear: both;
	margin: 20px 0 20px;
	font-family: "あおぞら明朝 Medium";
	font-size: 22px;
	font-weight: normal;
	text-align: center;
	letter-spacing: 2px;
}

.index2 dd a {
	text-decoration: none;
	color: #333;
	transition: 0.15s ease-in-out;
}

.index2 dd a:hover {
	opacity: 0.5;
}

.index2 dd img {
	width: 100%;
	-webkit-border-radius: 9px;
	-moz-border-radius: 9px;
	border-radius: 9px;
}

.index2 dt .btncenter a {
	width: 80%;
	text-decoration:none;
	color: #fff;
}

/* cms
------------------------------------------------ */

/* --- entry-date --- */

.entry-date {
	text-align: right;
	font-size: 87%;
}

/* --- entry-navigation / pager-navigation --- */

.entry-navigation, 
.pager-navigation{
	font-size:87%;
	margin:50px 0 0;
}

.entry-navigation a:link, .entry-navigation a:visited, .entry-navigation a:hover, .entry-navigation a:active, 
.pager-navigation a:link, .pager-navigation a:visited, .pager-navigation a:hover, .pager-navigation a:active{
	text-decoration:none;
}

.entry-navigation ul, 
.pager-navigation ul{
	margin:0;
}

/* entry-navigation */

.entry-navigation{
	background:#eee;
	padding:10px;
}

.entry-navigation li{
	width:33%;
}


.entry-navigation .entry-new{
	float:left;
}

.entry-navigation .entry-list{
	float:left;
	text-align:center;
}

.entry-navigation .entry-old{
	float:right;
	text-align:right;
}

.entry-navigation .home{
	text-align:center;
	margin-top:-20px;
}

.entry-navigation ul:after {
	visibility:hidden;
	display:block;
	font-size:0;
	content:" ";
	clear:both;
	height:0;
}
* html .entry-navigation ul             { zoom:1; } /* IE6 */
*:first-child+html .entry-navigation ul { zoom:1; } /* IE7 */

/* pager-navigation */

.pager-navigation ul li{
	float:left;
	text-align:center;
	margin-right:10px;
	line-height:1;
}

.pager-navigation ul li span.cur{
	background:#f6f6f6;
	border:1px solid #CECECE;
	color:#666;
	display:block;
	line-height:1;
	padding:0.5em 0.7em;
	position:relative;
}

.pager-navigation ul li a:link, 
.pager-navigation ul li a:visited{
	background:#fff;
	border:1px solid #CECECE;
	color:#666;
	display:block;
	line-height:1;
	padding:0.5em 0.7em;
	position:relative;
}

.pager-navigation ul li a:hover, 
.pager-navigation ul li a:active{
	background:#CECECE;
}

/* 続きを読むリンク */
.search.entry p.continue {
	margin: 0;
	padding: 0;
}

.search.entry p.continue a {
	display: block;
	margin: 0;
	padding: 10px 0;
	border-top: 1px solid #E8E8E8;
}

.search.entry p.continue a:hover {
	background-color: #F0F0F0;
}

/* 先輩メッセージ */
.future-message {
	width: 100%;
	position: relative;
	background-color: #FFF;
	padding: 50px;
	box-sizing: border-box;
	margin: 60px 0;
}

.future-message:before {
	content: "";
	width: 46px;
	height: 46px;
	background: url(../recruit/message/images/bg_left-top.png) center center no-repeat;
	background-size: cover;
	position: absolute;
	top: -7px;
	left: -7px;
	visibility: visible;
}

.future-message:after {
	content: "";
	width: 46px;
	height: 46px;
	background: url(../recruit/message/images/bg_right-bottom.png) center center no-repeat;
	background-size: cover;
	position: absolute;
	bottom: -7px;
	right: -7px;
	visibility: visible;
}

h4.message-list {
	text-align: center;
	border-bottom: none;
}
.message-list ul {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
	margin: -10px -12px 0;
}
.message-list li {
	position: relative;
	width: 220px;
	margin: 30px 12px 0;
	text-align: center;
	font-size: 14px;
	font-family:"あおぞら明朝 Medium";
	opacity: 1;
	transition: all 0.8s ease;
}
.message-list li.hide{
	max-width: 0;
	max-height: 0;
	margin: 30px 0 0 !important;
	opacity: 0;
}
.message-list li.hide .name {
	display: none;
}
.message-list li img {
	-webkit-border-radius: 9px;
	-moz-border-radius: 9px;
	border-radius: 9px;
	position: static;
	z-index: 9998;
}

.message-list li.last {
	margin-right: 0;
}

.message-list li a.name {
	display: block;
	text-decoration: none;
	margin-top: 10px;
	color: #333;
	line-height: 1.2;
	position: relative;
	z-index: 99;
	transition: 0.1s ease-in-out;
}

.message-list li a.name.stay {
	color: #CD52BA;
	background-image: url(../images/bg_title_h3.png), url(../images/bg_title_h3.png);
	background-position: center left 20px, center right 20px;
	background-repeat: no-repeat;
	padding: 0 50px;
	pointer-events: none;
}

.message-list li a.name:hover {
	opacity: 0.5;
}

.message-list li a span.name {
	font-size: 18px;
}

.content h6.message, 
.content .wysiwyg h6.message{
	clear:both;
	margin:0;
	font-family:"あおぞら明朝 Medium";
	color:#cc4fb5;
	text-align: center;
	font-size:20px;
}
.sortItems {
	display:-webkit-box;
	display:-ms-flexbox;
	display:flex;
	-ms-flex-wrap: wrap;
	flex-wrap: wrap;
}
.sortItems li input[type="radio"]{
	display:none;
}
.sortItems li label{
	border:1px solid #ccc;
	border-radius:16px;
	cursor:pointer;
	padding:0 18px;
	margin: 0 5px 5px 0;
	height: 30px;
	line-height: 32px;
}
.sortItems li.active label,
.sortItems li label:hover,
.sortItems li input[type="radio"]:checked + label{
	background:#cc4fb5;
	border-color:#cc4fb5;
	color:#fff;
}

.decoration-box.deco02{
	background:#fff;
	border:6px solid #ebeae6;
	padding:15px;
	margin: 40px 0 0;
}

.decoration-box.deco01 .deco01-inner p:first-child,
.decoration-box.deco02 p:first-child{ margin:0; }

.no-br br {
	display: none;
}

.no-br .pc-br {
	display: inline;
}

.acms-entry [class*="column-image-"].nocaption, .acms-entry [class*="column-media-"].nocaption, .acms-entry [class*="column-eximage-"].nocaption, .acms-entry [class*="column-yolp-"], .acms-entry [class*="column-youtube-"], .acms-entry [class*="column-video-"] {
  margin-top: 20px;
  margin-bottom: 0;
}