/*-------------------------------------------------------
!! common
-------------------------------------------------------*/
main p {
	margin: 0 0 1.5rem;
	line-height: 1.8rem;
}

.mb80 {
	margin-bottom: 80px;
	display: table;
}

.center {
	text-align: center;
}



/* 各ページ見出し */
#page_tit {
	height: 250px;
	color: #303131;
	line-height: 1.2;
	font-weight: bold;
	font-size: 50px;
	text-align: center;
}
#page_tit p {
	padding: 55px 0 0 0;
}
#page_tit span {
	font-size: 20px;
}
@media(max-width: 768px) {
	#page_tit {
		height: 100px;
		font-size: 24px;
	}
	#page_tit p {
		padding: 18px 0 0 0;
	}
	#page_tit span {
		font-size: 14px;
	}
}



main.sub h2 {
	border-bottom: solid 1px #929292;
	margin: 0 0 30px 0;
	padding: 0 0 28px 0;
	color: #F29B76;
	font-weight: normal;
	font-size: 36px;
}
main.sub h3 {
	padding: 0 0 30px 0;
	font-weight: normal;
	font-size: 30px;
}
main.sub h4 {
	padding: 0 0 10px 0;
	font-weight: normal;
	font-size: 18px;
}
@media(max-width: 768px) {
	main.sub h2 {
		padding: 0 0 15px 0;
		font-size: 24px;
	}
	main.sub h3 {
		font-size: 18px;
	}
	main.sub h4 {
		font-size: 16px;
	}
}





/*-------------------------------------------------------
!! mobile
-------------------------------------------------------*/





/*-------------------------------------------------------
!! お問い合わせ
-------------------------------------------------------*/
/* 各ページ見出し */
.tit_contact {
	background: url('../../contact/img/title_contact.jpg') no-repeat center top;
}


/* 枠 */
main.contact {
	margin: 0 auto;
	padding: 140px 0 60px 0;
	max-width: 800px;
}

main.contact p {
	text-align: center;
}


/* フォーム */
main.contact form {
	margin: 40px 0 0 0;
}

main.contact .kome {
	margin: 0 0 8px 0;
	float: right;
	color: #E60012;
}

main.contact .item {
	margin: 0 0 28px 0;
	clear: both;
	min-height: 47px;
	line-height: 1.8rem;
}


/* フォーム - 項目名 */
main.contact .item label {
	box-sizing: border-box;
	padding: 14px 14px 0 0;
	float: left;
	width: 24%;
	font-weight: normal;
}
main.contact span {
	color: #E60012;
}


/* フォーム - 入力欄 */
main.contact .item .entry {
	float: left;
	width: 76%;
}
main.contact .item .entry input,
main.contact .item .entry textarea {
	box-sizing: border-box;
	border: solid 1px #929292;
	padding: 14px;
	width: 100%;
	background: #EEEEED;
}
main.contact .item .entry textarea {
	resize: vertical;
}


/* 個人情報の取り扱いについて */
main.contact h2 {
	padding: 40px 0 20px 0;
	mb80: both;
	font-weight: normal;
	font-size: 24px;
	text-align: center;
	text-decoration: underline;
}
main.contact .note {
	padding: 16px 10px 14px 10px;
	background: #EEEEED;
	text-align: center;
}


/* ボタン */
main.contact button {
	margin: 65px auto 0 auto;
	display: block;
	border: none;
	width: 100%;
	max-width: 230px;
	height: 60px;
	color: #FFF;
	background: #448AC9;
	font-weight: bold;
	font-size: 22px;
	text-align: center;
}
main.contact button:hover {
	background: #6097C9;
}



@media(max-width: 880px) {
	main.contact {
		padding: 40px 20px;
	}
		
	main.contact .item label,
	main.contact .item .entry {
		width: 100%;
		float: none;
	}
	
	main.contact h2 {
		font-size: 14px;
	}
	main.contact .note {
		font-size: 14px;
	}
}



/* フォーム */
main.contact #data {
	margin: 40px 0 0 0;
}

main.contact #data .item {
	padding: 0 0 24px 0;
	display: flex;
	border-bottom: solid 1px #929292;
	min-height: auto;
}


/* 入力確認 - 項目名 */
main.contact #data .item p {
	box-sizing: border-box;
	margin: 0;
	padding: 0 14px 0 0;
	float: left;
	width: 24%;
	text-align: left;
}



@media(max-width: 880px) {
	main.contact #data .item {
		display: block;
	}
	
	main.contact #data .item p {
		width: 100%;
		float: none;
	}
}



/* 送信完了 */
main.contact h2.pt0 {
	padding-top: 0;
}





/*-------------------------------------------------------
!! 会社概要
-------------------------------------------------------*/
/* 各ページ見出し */
.tit_company {
	background: url('../../company/img/title_company.jpg') no-repeat center top;
}


/* 枠 */
main.company {
	margin: 0 auto;
	padding: 140px 0 60px 0;
	max-width: 1200px;
}


/* 見出し */
main.company h2 {
	margin: 0;
	padding: 0;
	border: none;
	font-weight: bold;
	font-size: 50px;
	text-align: center;
}

main.company h3 {
	border-bottom: solid 1px #929292;
	margin: 0 0 30px 0;
	padding: 0 0 28px 0;
	color: #F29B76;
	font-weight: normal;
	font-size: 36px;
}

main.company h4 a {
	color: #707070;
	text-decoration: none;
}


main.company .l {
	float: left;
	width: 90%;
}
main.company .r {
	float: right;
	width: 50%;
}


main.company p {
	margin: 0 0 3rem 0;
}
main.company .logo {
	margin: 1.5rem 0 2rem 0;
	width: 300px;
}


/* 会社概要 */
main.company dl {
	padding: 16px 50px 12px 50px;
	box-sizing: border-box;
	border-bottom: solid 1px #929292;
	display: table;
	width: 100%;
}
main.company dl.first {
	border-top: solid 1px #929292;
}
main.company dl dt {
	float: left;
	width: 20%;
	font-weight: bold;
}
main.company dl dt span {
	margin: 0 20px 0 0;
	color: #E57255;
	font-size: 20px;
}
main.company dl dd {
	margin: 5px 0 0 0;
	width: 80%;
	line-height: 1.3rem;
}



@media(max-width: 1280px) {
	main.company {
		padding: 40px 20px;
	}
	
	main.company h2 {
		padding: 0 0 28px 0;
	}
}



@media(max-width: 768px) {
	main.company .l,
	main.company .r,
	main.company dl dt,
	main.company dl dd {
		float: none;
		width: 100%;
	}

	main.company h2 {
		font-size: 24px;
	}
	main.company h3 {
		margin: 0 0 18px 0;
		padding: 0 0 18px 0;
		font-size: 18px;
	}
	
	main.company dl {
		padding: 16px 0;
	}
}



/*-------------------------------------------------------
!! イベント情報
-------------------------------------------------------*/
/* 各ページ見出し */
.tit_event {
	background: url('../../event/img/title_event.jpg') no-repeat center top;
}


/* 枠 */
main.event {
	margin: 0 auto;
	padding: 140px 0 60px 0;
	max-width: 1280px;

}


/* 見出し */
main.event h2 {
	margin: 0;
	padding: 0 0 30px 0;
	border: none;
	color: #707070;
	font-weight: normal;
	font-size: 30px;
}



@media(max-width: 1280px) {
	main.event {
		padding: 40px 20px;
	}
}



@media(max-width: 768px) {
	main.event h2 {
		font-size: 18px;
	}
}





/*-------------------------------------------------------
!! アクセス
-------------------------------------------------------*/
/* 各ページ見出し */
.tit_access {
	background: url('../../access/img/title_access.jpg') no-repeat center top;
}


/* 枠 */
main.access {
	margin: 0 auto;
	padding: 140px 0 60px 0;
	max-width: 1280px;
}


/* リスト - 見出し */
main.access h2 {
	margin: 0 0 12px 0;
	padding: 10px 20px 6px 20px;
	border: none;
	border-radius: 10px;
	color: #535353;
	background: #EEEEED;
	font-weight: bold;
	font-size: 30px;
}


/* リスト - 全幅 */
main.access .list_full {
	margin: 0 0 60px 0;
	padding: 0 0 40px 0;
	border-bottom: solid 1px #929292;
	display: table;
	width: 100%;
}
main.access .list_full img {
	float: left;
	width: 48%;
}
main.access .list_full .r {
	float: right;
	width: 48%;
}
main.access p.traffic {
	padding: 0 0 8px 0;
	border-bottom: solid 1px #929292;
	color: #535353;
	font-weight: bold;
	font-size: 24px;
}
main.access dl {
	margin: 0 0 10px 0;
	display: table;
	width: 100%;
}
main.access dl dt {
	margin: 0 10px 0 -10px;
	float: left;
	width: 35%;
}
main.access dl dd {
	float: right;
	width: 65%;
}


/* リスト - 地図 */
main.access #map_canvas {
	padding: 40px 0 0 0;
	clear: both;
	width: 100%;
	height: 350px;
}


/* リスト - 2カラム */
main.access .list {
	margin: 0 0 40px 0;
	box-sizing: border-box;
	display: table;
	width: 100%;
}
main.access .list_l {
	float: left;
	width: 49%;
}
main.access .list_r {
	float: right;
	width: 49%;
}


/* お問い合わせ */
main.access .go_contact a {
	margin: 20px 0 0 0;
	padding: 14px 20px 8px 20px;
	display: block;
	color: #FFF;
	background: #F29B76;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
}
main.access .go_contact a:hover {
	background: #E57255;
}
main.access .go_contact02 {
	clear: both;
	text-align: center;
}
main.access .go_contact02 .go_contact a {
	margin: 0 auto;
	max-width: 320px;
}



@media(max-width: 1280px) {
	main.access {
		padding: 40px 20px;
	}
	
	main.access dl dt,
	main.access dl dd {
		float: none;
		width: 100%;
	}
}



@media(max-width: 768px) {
	main.access {
		padding: 40px 20px;
	}
	
	main.access .list_full img,
	main.access .list_full .r,
	main.access .list_l,
	main.access .list_r {
		float: none;
		width: 100%;
	}
	
	main.access .list_full img {
		margin:  0 0 20px 0;
	}
	
	main.access .list {
		margin: 0;
	}
	
	main.access .list_l,
	main.access .list_r {
		margin:  0 0 40px 0;
	}
		
	main.access h2 {
		margin: 0 0 12px 0;
		padding: 10px 20px 6px 20px;
		border-radius: 10px;
		font-size: 18px;
	}
	main.access p.traffic {
		font-size: 18px;
	}
}





/*-------------------------------------------------------
!! プライバシーポリシー
-------------------------------------------------------*/
/* 各ページ見出し */
.tit_privacy {
	background: url('../../privacy/img/title_privacy.jpg') no-repeat center top;
}


/* 枠 */
main.privacy {
	margin: 0 auto;
	padding: 140px 0 60px 0;
	max-width: 1280px;

}


/* 見出し */
main.privacy h2 {
	margin: 50px 0 18px 0;
	padding: 0 0 18px 0;
	font-size: 20px;
}



@media(max-width: 1280px) {
	main.privacy {
		padding: 40px 20px;
	}
}



@media(max-width: 480px) {
	main.privacy li {
		margin: 0 0 1.5rem;
	}
}





/*-------------------------------------------------------
!! 福利厚生紹介
-------------------------------------------------------*/
/* 各ページ見出し */
.tit_benefits {
	background: url('../../benefits/img/title_benefits.jpg') no-repeat center top;
}


/* 枠 */
main.benefits {
	margin: 0 auto;
	padding: 140px 0 60px 0;
	max-width: 1280px;

}



@media(max-width: 1280px) {
	main.benefits {
		padding: 40px 20px;
	}
}





/*-------------------------------------------------------
!! 個人情報の取扱
-------------------------------------------------------*/
/* 各ページ見出し */
.tit_security {
	background: url('../../security/img/title_security.jpg') no-repeat center top;
}


/* 枠 */
main.security {
	margin: 0 auto;
	padding: 140px 0 60px 0;
	max-width: 1280px;

}



@media(max-width: 1280px) {
	main.security {
		padding: 40px 20px;
	}
}





/*-------------------------------------------------------
!! よくある質問
-------------------------------------------------------*/
/* 各ページ見出し */
.tit_faq {
	background: url('../../faq/img/title_faq.jpg') no-repeat center top;
}


/* 枠 */
main.faq {
	margin: 0 auto;
	padding: 140px 0 60px 0;
	max-width: 1280px;

}



@media(max-width: 1280px) {
	main.faq {
		padding: 40px 20px;
	}
}