@charset "UTF-8";

@media only screen and (min-width: 1000px) {

	.pcNone {
		display: none !important;
	}
}

@media only screen and (min-width: 1400px) {

	.home_copy p {
		font-size:4.8rem !important;
	}
}



/* common /////////////////////////////////////////////////////////////////////////////////////////// */



.cmn_maxbox {
    width: 100%;
    max-width: 1000px;
    margin: 0 auto;
}

#wrapper {
    width: 100%;
	overflow: hidden;
}


/* ヘッダー */
header {
	
}

/* メニュー */
.cmn_gnavi {
	width: 100%;
	background: #374477;
}

.cmn_gnavi ul {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
}

.cmn_gnavi li {
	text-align: center;
	font-size: 1.8rem;
	font-weight: bold;
	letter-spacing: 5px;
	width: 18%;
}

.cmn_gnavi li a {
	display: block;
	color: #FFFFFF;
	padding: 32px 6px 0 6px;
	background-repeat: no-repeat;
	background-position: top 20px center;
	min-height: 100px;
}

.cmn_gnavi li:hover {
	background: url("../img/arrow_up.svg") no-repeat bottom center;
	background-color: #212b57;
   -webkit-transition: 0;
       -moz-transition: 0;
         -o-transition: 0;
            transition: 0;
}

.cmn_gnavi li a:hover {
	opacity: 1;
}

.cmn_gnavi li.home {
	width: 100px;
}

.cmn_gnavi li.home a {
	display: flex;
	align-items: center;
	justify-content: center;
	padding: 0;
	width: 100%;
}


.cmn_gnavi li a span {
	display: block;
	font-weight: normal;
	font-size: 1.2rem;
	color: #c3c7d6;
}







/* ヘッダの情報 */
.cmn_menu {
	cursor: pointer;
	margin-right: 15px;
	text-align: right;
}

.cmn_header_info {
	display: flex;
	justify-content: space-between;
	align-items: center;
	padding: 35px 0;
}

.cmn_header_info ul {
	display: flex;
	justify-content: flex-end;
	align-items: center;
}

.cmn_header_info ul li {
	padding-left: 10px;
}


.cmn_header_info ul li:nth-of-type(1) {
	font-size: 2.6rem;
	letter-spacing: 2px;
	font-weight: bold;
}

.cmn_header_tel {
	letter-spacing: 3px;
	padding-right: 20px;
}

.cmn_header_tel img {
	display: inline-block; margin: 0 5px 5px 0;
}

.cmn_menu_wrap {
	position: fixed;
	z-index:99999;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	padding: 20px;
	text-align: center;
	background: #00325a;

	transform-origin: top right; 	/* 開閉位置 */
	transition: all 300ms ease;		/* スピード */
}

#cmn_menu_open {
	z-index: 1000;
	right: -5px;
    margin: auto 0 auto 10px;
	display: none;
	width: 37px;
}


.cmn_menu_item {
	overflow: hidden;
}


.cmn_hide_menu {
	/* ポップアップメニューが展開する（閉じる）方向を指定 */
	transform: scale(0, 0);
}

.cmn_menu_wrap {
	transform-origin: top right;
}

.cmn_hide_menu {
	transform: scale(1, 0);
}

.cmn_menu_close {
	color: #FFFFFF;
}


.cmn_spmenu {
	height: 100vh;
	margin: 40px auto auto auto;
}

.cmn_spmenu li {
	margin: auto auto 20px auto;
	text-align: center;
}

.cmn_spmenu li a {
	display: inline-block;
	width: 80%;
	max-width: 260px;

	font-size: 1.7rem;
	font-weight: bold;
	padding: 8px 10px;
	color:  #00325a;
	
	background-repeat: no-repeat;
	background-position: 5% 50%;
	background-color: #FFFFFF;
}


.cmn_spmenu_logo {
	padding-right: 15px;
}

.cmn_spmenu_logo img {
	width: 180px;
}







/* フッター */

footer {
	background: #374477;
	color: #FFFFFF;
}

.cmn_footer_nav {
	position: relative;
}

.cmn_footer_nav ul {
	padding: 40px 0;
	display: flex;
	justify-content: space-around;
}

.cmn_footer_nav ul li {
	margin: auto;
	width: 16.5%;
	letter-spacing: 2px;
	border-left: 1px solid #FFFFFF;
	display: flex;
}

.cmn_footer_nav ul li:last-of-type {
	border-right: 1px solid #FFFFFF;
}


.cmn_footer_nav ul li a {
	color: #FFFFFF;
	display: block;
	margin: auto;
}


.cmn_footer_info {
	display: flex;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	margin: auto auto 50px auto;
}

.cmn_footer_info > div {
	max-width: 50%;
	padding: 0 40px 0 0;
	line-height: 150%;
}

.cmn_footer_info > div img {
	display: block;
	margin: auto auto 20px 0;
}

.cmn_footer_info > div small {
	font-size: 1.2rem;
}

.cmn_footer_info > p {
	max-width: 50%;
	padding: 0 0 0 40px;
	font-size: 1.4rem;
	line-height: 170%;
}




.footer_gotop {
    position: fixed;
    right: 20px;
    bottom: 20px;
    z-index: 1000;
    width: 60px;
    text-align: right;
	display: none;
}

.footer_gotop a {
	display: inline-block;
	width: 60px;
}


address {
	text-align: center;
	font-style: normal;
	font-size: 1.3rem;
	padding: 0 0 15px 0;
}





/* 角丸 */
.rd10 {
	border-radius: 10px;
}

.rd20 {
	border-radius: 20px;
}

.rd50pct {
	border-radius: 50%;
}

/*基本の下マージン*/
.mgn30 {
	margin-bottom: 30px !important;
}

.mgn50 {
	margin-bottom: 50px !important;
}

.mgn80 {
	margin-bottom: 80px !important;
}



.cmn_flex_container {
	display: flex;
	flex-wrap: wrap;
	align-items: center;
}

.cmn_flex_reverse {
	flex-flow: row-reverse;
}


.cmn_flex_conts_w {
	width: 60%;
	padding:0 10px;
}

.cmn_flex_conts_s {
	width: 40%;
	text-align: center;
	padding:0 10px;
}





/* ボタン */
.cmn_btn {
	display: flex;
	margin: auto;
	justify-content: center;
	align-items: center;
	flex-wrap: wrap;
	position: relative;
	z-index: 2;
}

.cmn_btn_left {
	justify-content: flex-start;
}

.cmn_btn_right {
	justify-content:flex-end;
}

.cmn_btn_between {
	justify-content: space-between;
}



.cmn_btn span {
	display: block;
	margin: auto 5px;
}

.cmn_btn a {
	display: inline-block;
	min-width: 300px;
	max-width: 80%;
	padding: 17px 20px 17px 30px;
	margin-top: 20px;

	text-align: center;
	font-size: 1.7rem;
	color: #FFFFFF;
	letter-spacing: 3px;
	font-weight: bold;

	background-repeat: no-repeat;
	background-position: 0 50%;

	background-image: url("../img/arrow_white.svg");
	background-color: #374477;
}

.cmn_btn a.type_a {
	/* デフォルトと同じ */
}

.cmn_btn a.type_b {
	background-image: url("../img/arrow_red.svg");
	background-color: #fef9fa;
	border : 1px solid #d7182e;
	color: #d7182e;
}

.cmn_btn a.type_c {
	background-image: url("../img/arrow_blue.svg");
	background-color: rgba(255,255,255,0.5);
	border : 1px solid #374477;
	color: #374477;
}

.cmn_btn a.type_small {
	min-width: 200px;
	padding: 12px 20px 12px 30px;
	background-image: url("../img/arrow_blue.svg");
	background-color: #737ca0;
	border : 0;
}



/* 定義リスト */
.cmn_dl {
	width: 100%;
	margin: auto;
	border-top: 1px solid #374477;
	border-bottom: 1px solid #374477;
}

.cmn_dl > div {
	display: flex;
	align-items: center;
	justify-content: flex-start;
	border-bottom: 1px solid #374477;
}

.cmn_dl > div:last-of-type {
	border: none;
}

.cmn_dl dt, .cmn_dl dd
{
	padding: 15px 15px 15px 25px;
	text-align: left;
}

.cmn_dl dt {
	width: 23%;
	font-size: 1.5rem;
	text-align: left;
	font-weight: bold;
	color: #374477;
}

.cmn_dl dd {
	width: 77%;
}

/* 定義リスト(テーブル風) */
.cmn_dl_tablelike {
	width: 100%;
	margin: auto;
	border: 1px solid #9ba1bb;
}

.cmn_dl_tablelike > div {
	display: flex;
	align-items: stretch;
	justify-content: flex-start;
	border-bottom: 1px solid #9ba1bb;
}

.cmn_dl_tablelike > div:last-of-type {
	border: none;
}

.cmn_dl_tablelike dt, .cmn_dl_tablelike dd
{
	padding: 15px 15px 15px 20px;
	text-align: left;
}

.cmn_dl_tablelike dt {
	width: 23%;
	font-size: 1.5rem;
	text-align: left;
	font-weight: bold;
	background: #d7dae4;
	border-right: 1px solid #9ba1bb;
}

.cmn_dl_tablelike dd {
	width: 77%;
	background: #FFFFFF;
}

.cmn_red {
	color: #d7182e;
}




/* jquery上書き */
.sl-wrapper .sl-image .sl-caption {
	background: rgba(0,0,0,0.6) !important;;
}



.font_min {
	-webkit-text-size-adjust:none;
	font-family:'Noto Serif JP',"游明朝","Yu Mincho",YuMincho,"リュウミン M-KL","Ryumin Medium KL","YuMincho,Georgia","Hiragino Mincho ProN","HGS明朝E","メイリオ",Meiryo,serif;

}




/* sub */

.xxx_title_bg {
	background-image: url("../img/company_mainimg.jpg");
}

.sub_pagetitle {
	position: relative;
	width: 100%;
	height: 200px;
	display: flex;
	justify-content: center;
	align-items: center;
	background-size: cover;
	background-position: center;
	overflow: hidden;
	background-image: url("../img/company_mainimg.jpg");
}

.sub_pagetitle::after {
	content: '';
	background-color: rgba(255,255,255,.8);
	position: absolute;
	left: 0;
	right: 0;
	top: 0;
	bottom: 0;
	height: 200px;
}

.sub_pagetitle h1 {
	position: relative;
	color: #374477;
	font-size: 3.6rem;
	letter-spacing: 10px;
	line-height: 110%;
	text-align: center;
	padding-top: 20px;
	z-index: 1;
}

.sub_pagetitle small {
	display: block;
	color: #9ba1bb;
	font-size: 1.5rem;
	font-weight: normal;
	letter-spacing: 4px;
}



.sub_sec {
	padding: 90px 0px 90px 0;
	margin: auto auto;
}


.sub_sec h2 {
	padding: 5px 0 5px 20px;
	margin: auto auto 20px auto;
	background:url("../img/arrow_blue.svg") no-repeat top 13px left 0;
	font-size: 2.8rem;
	color: #374477;
}

.sub_sec_g {
	background: #f0f5fa;
}




/* home /////////////////////////////////////////////////////////////////////////////////////////// */


#home_main_visual {
	position: relative;
	margin: auto;
	z-index: 0;
}

.header_mainimg {
	position: relative !important;
}

.header_mainimg li {
	background-size: cover;
	background-position:  center;
	background-repeat: no-repeat;
	height:480px;
}


.header_mainimg .slide01 {
    background-image: url(../img/header_slider_01.jpg);
}

.header_mainimg .slide02 {
    background-image: url(../img/header_slider_02.jpg);
}

.header_mainimg .slide03 {
    background-image: url(../img/header_slider_03.jpg);
}

.header_mainimg .slide04 {
    background-image: url(../img/header_slider_04.jpg);
}

.header_mainimg .slide05 {
    background-image: url(../img/header_slider_05.jpg);
}


.slick-dots {
	bottom: 20px !important;
	z-index: 9999;
}

.slick-dotted.slick-slider {
	margin-bottom: 0 !important;
}


/* キャッチコピー */
.home_copy {
    position: absolute;
	width: 100%;
	padding: 32px 10px;
	background: rgba(255,255,255,0.8);

    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    -webkit-transform: translate(-50%, -50%);
    -ms-transform: translate(-50%, -50%);
}

.home_copy p {
	text-align: center;
	/*font-size:4.8rem;*/
	font-size: 4vw;
	letter-spacing: 4px;
	color: #374477;
}

.home_copy p strong {
	font-size: 6rem;
	letter-spacing: 8px;
}

.home_copy p span {
	color: #f0323c;
}

.home_copy p small {
	display: inline-block;
	padding: 50px 5px 0 0;
	font-size: 2.8rem;
}






/* 会社概要 */

.home_company {
	margin: 100px auto;
	background: url("../img/home_company.jpg") no-repeat right center;
	background-size: 50% auto;
}

.home_company_conts {
	max-width: 500px;
}

.home_company_conts h2 {
	margin: 40px auto 50px auto;
	font-size: 2.8rem;
	color: #374477;
	line-height: 170%;
}

.home_company_conts p {
	max-width: 400px;
	margin: auto auto 60px auto;
}




/* 事業案内 */

.home_linkbtn {
	padding: 30px 0 50px 0;
}

.home_service {
	background: #f0f5fa;
}

.home_service ul {
	display: flex;
	flex-wrap: wrap;
	text-align: center;
}

.home_service ul li:nth-of-type(1) {
	background-image: url("../img/home_service_01.jpg");
	background-position:top center;
}

.home_service ul li:nth-of-type(2) {
	background-image: url("../img/home_service_02.jpg");
	background-position:bottom center;
}

.home_service ul li:nth-of-type(3) {
	background-image: url("../img/home_service_03.jpg");
	background-position:top center;
}

.home_service ul li:nth-of-type(4) {
	background-image: url("../img/home_service_04.jpg");
	background-position:bottom center;
}


.home_service ul li {
	width: 25%;
	height: 400px;
	background-repeat:no-repeat;
	background-size :100% 200px;
	color: #d7182e;
}


.home_service ul li a {
	display: block;
	position: relative;
	width: 100%;
	height: 100%;
}

.home_service ul li a:hover {
	opacity: 1;
	background-color: rgba(215,24,46,0.5);
}

.home_service ul li:hover {
	background-color: #d7182e;
	color: #FFFFFF;
	opacity: 1;
}

.home_service ul li a div {
	display: flex;
	position: absolute;
	height: 200px;
	width: 101%;
	padding: 5px;
}

.home_service ul li:nth-child(odd) a div {
	bottom: 0;
}

.home_service ul li:nth-child(even) a div {
	top: 0;
}

.home_service ul li a div p {
	margin: auto;
	text-align: center;
	font-weight: bold;
	font-size: 1.8rem;
}



/* 取扱商品 */

.home_products {
	margin: 10px auto;
	padding: 50px 0 0 0;
	background:#fdf3f5;
}

.home_products ul {
	display: flex;
	justify-content: space-around;
}

.home_products ul li {
	width: 160px;
	text-align: center;
}


.home_products ul a {
	display: block;
	color: #374477;
	font-weight: bold;
	font-size: 1.8rem;
}

.home_products ul a:hover {
	opacity: 1;
}


.home_products ul div {
	height: 224px;
	padding-top: 180px;

	background-repeat: no-repeat;
	background-size: 100%;
}

.home_products ul div:hover {
	transition: 0.4s;
}

.home_products li:nth-of-type(1) div {
	background-image: url("../img/home_products_01_off.svg");
}

.home_products li:nth-of-type(1) div:hover {
	background-image: url("../img/home_products_01_on.svg");
}

.home_products li:nth-of-type(2) div {
	background-image: url("../img/home_products_02_off.svg");
}

.home_products li:nth-of-type(2) div:hover {
	background-image: url("../img/home_products_02_on.svg");
}

.home_products li:nth-of-type(3) div {
	background-image: url("../img/home_products_03_off.svg");
}

.home_products li:nth-of-type(3) div:hover {
	background-image: url("../img/home_products_03_on.svg");
}

.home_products li:nth-of-type(4) div {
	background-image: url("../img/home_products_04_off.svg");
}

.home_products li:nth-of-type(4) div:hover {
	background-image: url("../img/home_products_04_on.svg");
}




/* News */

.home_news {
	padding: 40px 0 0 0;
}

.home_news h2 {
	margin: auto auto 20px auto;
	text-align: center;
	font-size: 1.8rem;
	color: #374477;
}

.cmn_news dt {
	text-align: center;
}


.cmn_news dd span {
	display: inline-block;
	padding: 1px 6px;
	background: #f0323c;
	color: #FFFFFF;
	font-size: 1.2rem;
}


/* ページ内ページネーション */
.news_pagination ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 50px 0 30px 0;	
}

.news_pagination ul li {
	font-size: 1.3rem;
	margin: 0 5px 10px 5px;
	list-style: none;
}

.news_pagination ul li a,
.news_pagination ul li span {
	padding: 5px 12px;
	border: 1px solid #4f4f4f;
	background-color: #FFFFFF;
	color: #4f4f4f;
}

.news_pagination ul span.current {
	background-color: #4f4f4f;
	color: #FFFFFF;
}

.news_pagination ul li a:hover {
	background-color: #D4D4D4;
}



/* お問い合わせ */

.home_contact_container {
	padding: 40px 0 20px 0;
	background: url("../img/home_contact.jpg") no-repeat top left;
	background-size: auto 100%;
}

.home_contact_conts {
	margin: auto 0 auto auto;
	max-width: 50%;
}

.home_contact_conts h2 {
	font-size: 2.8rem;
	text-align: right;
	margin: auto auto 20px auto;
	letter-spacing: 4px;
}

.home_contact_tel {
	padding-left: 100px;
}




/* 会社概要 company /////////////////////////////////////////////////////////////////////////////////////////// */

.company_title_bg {
	background-image: url("../img/company_mainimg.jpg");
}

.company_greet_ceo {
	display: block;
	padding: 0 5% 0 0;
	margin: 20px 0 0 0;
	font-size: 2.0rem;
	letter-spacing: 0.15em;
	font-weight: 700;
	text-align: right;
}

.company_greet_ceo small {
	display: inline-block;
	padding: 0 20px 0 0;
	font-size: 1.5rem;
}

.company_outline_shiiresaki li,
.company_outline_tokuisaki li {
	display: inline-block;
	width: 46%;
	vertical-align: top;
}

.company_access.company_access {
	padding-bottom: 0;
}

.company_access_way {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	padding: 0 0 54px 0;
}

.company_access_way > div {
	width: 45%;
}

.company_access_way dt {
	padding: 0 0 10px 0;
	border-bottom: 1px solid #374477;
	color: #00325A;
	font-size: 1.8rem;
	font-weight: 700;
}

.company_access_way dd {
	margin: 16px 0 0 0;
}

.company_access_map {
	position: relative;
	height: 400px;
	overflow: hidden;
}

.company_access_map > iframe {
	position: absolute;
	left: 0;
	top: 0;
	width: 100%;
	height: 100%;
}


/* 事業案内 service /////////////////////////////////////////////////////////////////////////////////////////// */
.service_title_bg {
	background-image: url("../img/service_mainimg.jpg");
}

.service_list.service_list {
	padding: 0;
	margin: 0;
}

.service_list:nth-of-type(2n) {
	background-color: #F0F5FA;
}

.service_list_inner {
	display: flex;
	max-width: 1000px;
	margin: 0 auto;
}

.service_list_inner > div {
	flex-shrink: 0;
	width: 50%;
	min-height: 400px;
	padding: 70px 0 50px;
}

.service_list:nth-of-type(2n-1) .service_list_inner > div {
	padding-right: 5%;
}

.service_list:nth-of-type(2n) .service_list_inner > div {
	order: 1;
	padding-left: 5%;
}

.service_list_inner > figure {
	position: relative;
	width: 100%;
	margin: 0;
	background-image: url(../img/service_img_01.jpg);
	background-repeat: no-repeat;
	background-size: cover;
}

.service_list_inner > .office {
	background-image: url(../img/service_img_01.jpg);
	background-position: right top;
}

.service_list_inner > .jimu {
	background-image: url(../img/service_img_02.jpg);
	background-position: right top;
}

.service_list_inner > .oa {
	background-image: url(../img/service_img_03.jpg);
	background-position: left top;
}

.service_list_inner > .paper {
	background-image: url(../img/service_img_04.jpg);
	background-position: left top;
}

.service_list_inner > figure::before {
	content: '';
	position: absolute;
	top: 0;
	display: block;
	width: 100%;
	height: 100%;
	background-image: url(../img/service_img_01.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-size: 200%;
	opacity: 0.1;
}

.service_list:nth-of-type(2n-1) figure::before {
	right: 0;
	transform: translate(100%, 0);
	background-position: left -450px center;
}

.service_list:nth-of-type(2n) figure::before {
	left: 0;
	transform: translate(-100%, 0);
	background-position: right -260px center;
}

.service_list_inner > .office::before {
	background-image: url(../img/service_img_01.jpg);
}

.service_list_inner > .jimu::before {
	background-image: url(../img/service_img_02.jpg);
}

.service_list_inner > .oa::before {
	background-image: url(../img/service_img_03.jpg);
}

.service_list_inner > .paper::before {
	background-image: url(../img/service_img_04.jpg);
}


.service_case {
	margin: 10px 0 0 0;
	background-color: #FDF3F5;
}

.service_case_title.service_case_title {
	padding: 0;
	font-size: 3.2rem;
	background: none;
	text-align: center;
}

.service_case_outline {
	padding: 16px 0 0 0;
	font-size: 1.7rem;
	text-align: center;
}

.service_case_list {
	display: flex;
	align-items: flex-start;
	justify-content: space-between;
	flex-wrap: wrap;
}

.service_case_list::after {
	content: '';
	display: block;
	width: 30%;
}

.service_case_list li {
	width: 30%;
	margin: 60px 0 0 0;
}

.service_case_list a {
	display: inline-block;
}

.service_case_list p {
	margin: 10px 0 0 0;
}


/* 取扱商品 products /////////////////////////////////////////////////////////////////////////////////////////// */

.products_title_bg {
	background-image: url("../img/products_mainimg.jpg");
}

.products_list dt {
	display: flex;
	align-items: center;
}

.products_list dt span {
	flex-shrink: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	width: 80px;
	height: 80px;
	border-radius: 50%;
	margin: 0 20px 0 0;
	background-color: #374477;
}


.products_list dt strong {
	display: block;
	width: 100%;
	color: #374477;
	font-size: 2.8rem;
	font-weight: 700;
	line-height: 1.4;
}

.products_list dd {
	margin: 45px 0 0 0;
}

.products_list ul {
	display: flex;
	justify-content: space-between;
	align-items: flex-start;
	flex-wrap: wrap;
	margin: -8px 0 0 0;
}

.products_list li {
	display: inline-flex;
	align-items: flex-start;
	width: 32%;
	margin: 8px 0 0 0;
	font-size: 1.8rem;
	font-weight: 700;
}

.products_list li span {
	display: inline-block;
	margin: 5px 5px 0 0;
	color: #9BA1BB;
	font-size: 1.1rem;
	font-size: 1.0rem;
}


/* 採用情報 recruit /////////////////////////////////////////////////////////////////////////////////////////// */

.recruit_title_bg {
	background-image: url("../img/recruit_mainimg.jpg");
}

.recruit_noinfo {
	max-width: 800px;
	padding: 30px 30px;
	margin: 0 auto;
	background-color: #FDF3F5;
	text-align: center;
}

.recruit_noinfo strong {
	color: #D7182E;
	font-size: 3.2rem;
	font-weight: 700;
}

.recruit_noinfo p {
	margin: 16px 0 0 0;
	font-size: 1.6rem;
	letter-spacing: 0.05rem;
	font-weight: 500;
}

.recruit_msg {
	display: flex;
	align-items: flex-start;
	margin-top: 100px;
}

.recruit_msg > div {
	flex-shrink: 0;
	width: 40%;
	margin: 8px 10% 0 0;
}

.recruit_msg > figure {
	width: 100%;
}

.recruit_msg > figure img {
	max-width: none;
	max-height: 300px;
}

.recruit_contact {
	display: flex;
	justify-content: flex-end;
	align-items: flex-start;
}

.recruit_contact > div {
	flex-shrink: 0;
	width: 50%;
	padding: 0 10%;
	margin: 40px 0 0 0;
}

.recruit_contact_txtbox > p {
	font-size: 1.8rem;
	letter-spacing: 0.05rem;
	font-weight: 700;
}

.recruit_contact_txtbox > a, .home_contact_tel > a {
	display: inline-block;
	padding: 0 0 0 24px;
	margin: 10px 0 0 0;
	color: #D7182E;
	font-size: 2.6rem;
	letter-spacing: 0.3rem;
	font-weight: 700;
	background-color: #FFFFFF;
	background-image: url(../img/home_contact_tel.svg);
	background-repeat: no-repeat;
	background-position: left top 12px;
	background-size: 17px;
	pointer-events: none;
}

.recruit_contact_txtbox > span {
	display: block;
	margin: 2px 0 0 0;
}

.recruit_contact_txtbox .cmn_btn a {
	background-color: #FEF9FA;
}

.recruit_contact > figure {
	width: 100%;
	text-align: right;
}

.recruit_contact > figure img {
	max-width: none;
	max-height: 300px;
}



/* お問い合わせ contact /////////////////////////////////////////////////////////////////////////////////////////// */

.contact_title_bg {
	background-image: url("../img/contact_mainimg.jpg");
}

.contact_info {
	width: 700px;
	max-width: 80%;
	margin: 30px auto;
	background: #f2f5f7;
	padding: 50px;
	text-align: center;
}

.contact_info h3 {
	font-size: 3.6rem;
	letter-spacing: 5px;
}

.contact_info ul {
	display: flex;
	margin: 15px auto auto auto;
	justify-content: space-around;
	flex-wrap: wrap;
}

.contact_info ul li {
	width: 50%;
	margin: auto auto 20px auto;
	font-size: 2.4rem;
}

.contact_info ul li span {
	display: inline-block;
	padding: 0px 8px;
	margin: auto 8px auto auto;
	letter-spacing: 1px;
	font-size: 1.4rem;
	font-weight: bold;
	color: #FFFFFF;
	background: #00325a;

	font-family: 'Noto Sans JP',"Hiragino Kaku Gothic Pro", "ヒラギノ角ゴ Pro", "游ゴシック体", "Yu Gothic", YuGothic, sans-serif, Meiryo, メイリオ, Osaka;
}

.contact_info ul li strong {
	display: inline-block;
	color: #aa283c;
	font-size: 2.8rem;
}

.contact_info ul li small {
	font-size: 1.2rem;
}

.contact_info p {
	font-size: 1.7rem;
}





.contact_form div dt > span {
    display: block;
	width: 40px;
    margin: -20px 0 0 auto;
    padding: 3px 6px;
    background-color: #c30d23;
    font-size: 1.2rem;
	font-weight: normal;
    line-height: 130%;
    color: #FFFFFF;
}

.contact_form div dt {
	width: 270px;
}

.contact_form div dd {
	width: calc( 100% - 250px);
	padding-left: 20px;
}


.input01,
.input02,
.input03,
.input04,
.input05,
.input06,
.input07 {
 	box-shadow:none !important;
}

.input01 {
}

.input02 {
    width: 100% !important;
    max-width: 400px !important;
}

.input03 {
    width: 100% !important;
    max-width: 300px !important;
}

.input04 {
    width: 100% !important;
    max-width: 500px !important;
	margin-bottom: 10px !important;
}

.input04 + span {
    display: inline-block;
    color: #DC5050;
}

.input05 {
    width: 100% !important;
    max-width: 200px !important;
	margin-bottom: 10px !important;
}

.input06 {
    width: 100% !important;
    max-width: 500px !important;
}

.input07 {
    width: 100% !important;
    max-width: 500px !important;
}


#message {
    width: 100% !important;
    height: 200px !important;
}

#contactButton {
	margin: 30px auto;
	text-align: center;
}


#contactButton {
    display: flex;
    justify-content: center;
    align-items: center;
}


#contactButton button[type="reset"],
#contactButton button[type="submit"] {
	/* width: 150px;
    height: 40px; */
	width: 250px;
    height: 50px;
    padding: 5px 0.8em;
    margin: 0 4% 0 0;
    outline: none;
	
	text-align: center;
	font-size: 1.7rem;
	letter-spacing: 3px;
	font-weight: bold;
}


#contactButton button[type="reset"] {

	background-repeat: no-repeat;
	background-position: 0 50%;
	background-image: url("../img/arrow_blue.svg");
	background-color: rgba(255,255,255,0.5);
	border : 1px solid #374477;
	color: #374477;
}

#contactButton button[type="submit"] {
    margin: 0 0 0 4%;
    background: #374477;
	color: #FFFFFF;
 	background-image: url("../img/arrow_white.svg");
    background-repeat: no-repeat;
    background-position: right 10px center;
	border: none;
	background-position: 0 50%;
}

#contactButton button:hover {
	opacity: 0.7;
	transition: 0.4s;
}

/* NEWS /////////////////////////////////////////////////////////////////////////////////////////// */

.news_title_bg {
	background-image: url("../img/news_mainimg.jpg");
}


.news_list {
	padding: 0 0 80px 0;
}

.news_list article {
	margin: auto;
	border-top:1px solid #0078c8;
}

.news_list article:last-of-type {
	border-bottom:1px solid #0078c8;
}

.news_list article a {
	display: flex;
	padding: 20px 40px 20px 15px;
	
	justify-content: flex-start;
	align-items: center;
	background: url("../img/button_arrow_blue.svg") no-repeat;
	background-position: right 14px center;
	background-color: #FFFFFF;
}

.news_list article a > span {
	display: block;
	padding-right: 30px;
	color: #0078c8;
}

.news_list article a > div > span {
	display: inline-block;
	padding: 1px 6px;
	background: #f0323c;
	color: #FFFFFF;
	font-size: 1.2rem;
}

.news_btn_box {
	max-width: 925px;
	margin: auto;
}



/* CMS /////////////////////////////////////////////////////////////////////////////////////////// */

.cms_date {
	padding: 0 0 30px 0;
	font-size: 1.3rem;
	font-weight: bold;
	color: #374477;
}

.cms_box {
	margin: auto auto 40px auto;
}

.cms_box p {
	margin: auto auto 20px auto;
}

.cms_box h3, .cms_box h4 {
	color: #374477;
	padding: 5px 5px 8px 5px;
	margin: auto auto 10px auto;
}

.cms_box h3 {
	border-bottom: 1px solid #374477;
	font-size: 1.8rem;
}

.cms_box h4 {
	border-bottom: 1px dashed #374477;
	font-size: 1.6rem;
}

.cms_box img.alignright { display: block; margin: 0 0 0 auto!important;}
.cms_box img.alignleft { display: block; margin: 0 auto 0 0!important;}
.cms_box img.aligncenter { display: block; margin: 0 auto!important;}

.cms_page_box {
	padding: 20px;
	background: #FFFFFF;
}






