/*****************************************************
	Anti Bootstrap
*****************************************************/
/* 以下の指定を削除すると印刷時にリンクのURLが印刷される */
@media print {
	a[href]:after {
		content: "" !important;
	}

	abbr[title]:after {
		content: "" !important;
	}
}
/*#TOP .row*/
.row {
	width: 100%;
	margin-left: auto;
	margin-right: auto;
	padding-left: 0;
	padding-right: 0;
}

.container {
	width: 100%;
	margin: 0 auto;
	padding: 0;
	margin-left: auto;
	margin-right: auto;
}

ul {
	padding-start: 0;
	padding-left: 0;
	-webkit-padding-start: 0;
	-moz-padding-start: 0;
	list-style-type: none;
}

.open_window {
	font-size: 14px;
}

img {
	box-sizing: content-box;
}

a {
	outline:none;
}

.inner {
	width: 960px;
	padding-right:0px;
	padding-left:0px;
}

mono {
	font-family: monospace;
	margin-right: 5px;
}

/*****************************************************
	共通定義
*****************************************************/
html {
	overflow-y: scroll;
}

body {
	width: 100%;
	font-size: 16px;
	color: #3e3a39;
	/*overflow: auto;*/
	background-color: white;
}

/* For modern browsers */
.clearfix:after {
	content:" ";
	display:block;
	clear:both;
}

a:hover img {
	outline:none;
	opacity: 0.6;
}

h2 {
	font-size: 28px;
	color: #4d4d4d;
	font-weight: normal;
	margin-top: 70px;
	margin-bottom: 25px;
	width: 100%;
	text-align: center;
}

.page_description {
	font-size: 18px;
	margin: 0 auto auto auto;
	text-align: center;
}

label {
	font-weight: normal;
}

dt,
dd {
	line-height: 1.8em;
}

/*
	PC / mobile
*/

#mobileHeader,
.slider {
	display: none;
}

.for_pc {
	display: block;
}

.for_mobile {
	display: none;
}

a:link,
a:visited,
a:hover,
a:active {
	color: #0000ff;
	text-decoration: none;
}

/* ページトップへ戻るボタン */
#page-top{
	position:fixed;
	display:none;
	width:100%;
	height: 0;
	bottom: 180px;
	z-index:2;
	margin: auto;
}

#page-top a{
	position:absolute;
	display:block;
	right: 40px;
	width:60px;
	height:60px;
	background-size: 60px 60px;
	-moz-background-size: 60px 60px;
	background-image:url('../img/navi/top_btn.png');
	background-repeat: no-repeat;
/*	bottom:110px;*/
}
#page-top a:hover{
	opacity:0.5;
}

header {
	color: black;
	font-size: 14px;
	background-color: white;
	height: 100%;
}

footer {
	display: block;
	width: 100%;
}

footer .container {
	display: block;
	width: 100%;
	color: white;
	background-color: black;
	height: 100px;
}

footer a:link,
footer a:visited,
footer a:active {
	color: white;
}

#footer .container {
	width: 100%;
}

.footerLink {
	margin-top: 20px;
	margin-bottom: 15px;
	text-align: center;
}

.copyright {
	font-size: 12px;
	text-align: center;
}

.page-top-bar {
	display: none;
}


/*
	Global Navigation
*/
#pcHeader{
	display: block;
	width: 100%;
	color: black;
	background-color: white;
	height: 87px;
	border-bottom: solid 1px rgb(204,204,204);
}

#pcHeader .container {
	width: 970px;
	margin: auto;
}

.company_message {
	font-size: 12px;
	color: #4d4d4d;
	margin: 0 0 8px 10px;
}

.company_message.en{
	font-size: 14px;
}


.buttonLeft{
	text-align: right;
}

.buttonRight {
	text-align: left;
}

/*
	タイトル部分
*/
	ul.boxTitle {
		display: flex;
		flex-flow: row wrap;
		margin: 0;
		justify-content: flex-start;
		align-items: flex-end;
		width: 940px;
		height: 86px;
		padding: 0;
	}

	ul.boxTitle > li:last-child {
		margin-left: auto;
		margin-right: 0;
	}

	.boxTitle h1 {
		margin: auto 0 8px 0;
	}
/*
	メニュー部分
*/
	ul.boxMenu {
		display: flex;
		flex-flow: row nowrap;
		margin: 0;
		justify-content: space-between;
		align-items: center;
		height: 86px;
	}

	ul.boxMenu li {
		border-left: solid 1px rgb(204,204,204);
	}
	ul.boxMenu li:last-child {
		border-left: solid 1px rgb(204,204,204);
		border-right: solid 1px rgb(204,204,204);
	}

	ul.boxMenu li.boxFill {
		display: flex;
		align-items: center;
		width: 100%;
		height: 100%;
	}


	ul.boxMenu li a {
		display: block;
		width: 100%;
		height: 100%;
	}

	ul.boxMenu li a img {
		opacity: 1;
	}

	.current_position,
	ul.boxMenu li a:hover {
		background-color: #ffeb10 !important;
	}

	.language_link {
		position: relative;
		width: 100%;
		text-align: right;
		font-size: 12px;
		line-height: 21px;
		height: 21px;
		z-index: 1;
	}
	.language_link a {
		text-decoration: underline;
	}

/* Main Contents */
.main {
	width: 100%;
	line-height: 1.8;
	padding-top: 0;
	margin-bottom: 90px;
	margin-right: auto;
	margin-left: auto;
}

.container > .row {
	width: 970px;
}

.container > #NEWS.row {
	width: 100% !important;
}


/* トップページ */

/* バナーレイアウト用定義 ここから */
#TOP img {
	box-sizing: content-box;
}

#TOP .flex-right {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-end;
}

#TOP .flex-left {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
}

#TOP .border_link_short {
	float: left;
	overflow: hidden;
	margin-bottom: 20px;/*20200909追記*/
	border: solid 1px #CCCCCC;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}

#TOP .border_link_school {
	float: left;
	overflow: hidden;
	border: solid 1px #CCCCCC;
}

#TOP .border_link_recruit {
	float: left;
	overflow: hidden;
	border: solid 4px #595757;
	margin-bottom: 20px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}

#TOP .border_link_manufacturing {
	float: left;
	overflow: hidden;
	border: solid 2px #0068CC;
	margin-bottom: 20px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}


#TOP .border_link_banner1 {
	float: left;
	overflow: hidden;
	border: solid 2px #FCB11D;
	margin-bottom: 20px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}

#TOP .border_link_banner2 {
	float: left;
	overflow: hidden;
	border: solid 2px #1397A3;
	margin-bottom: 20px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}

#TOP .banner_button {
	display: flex;
	align-items: center;
	justify-content: center;
	float: left;
	overflow: hidden;
	width: calc(540px  / 2);
	height: calc(148px  / 2);
	font-size:	22px;
	color: #1397A3;
	text-align: center;
	border: solid 2px #1397A3;
	margin-bottom: 20px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
	line-height: 1.2;
	background-color: white;
}

#TOP .banner_button:hover {
	opacity: 0.6;
}

#TOP .border_link_banner3 {
	float: left;
	overflow: hidden;
	border: solid 2px #FA6183;
	margin-bottom: 20px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}

#TOP .border_link_banner4 {
	float: left;
	overflow: hidden;
	border: solid 2px #999999;
	margin-bottom: 20px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}

#TOP .border_link_csr {
	float: left;
	overflow: hidden;
	border: solid 2px #e83828;
	margin-bottom: 20px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}

#TOP .border_link_iryoukyoka {
	float: left;
	overflow: hidden;
	border: solid 2px red;
	margin-bottom: 20px;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}

#TOP a:hover.border_link_recruit,
#TOP a:hover.special_banner,
#TOP a:hover.primary_banner,
#TOP a:hover.border_link_short,
#TOP a:hover.border_link_school,
#TOP a:hover.border_link_manufacturing,
#TOP a:hover.border_link_banner1,
#TOP a:hover.border_link_banner2,
#TOP a:hover.border_link_banner3,
#TOP a:hover.border_link_banner4,
#TOP a:hover.border_link_csr{
	opacity: 0.6;
}

#TOP hr {
	text-align: right;
	width: 270px;
	margin-right: 0;
	margin-left: auto;
}

#TOP .innerLeft {
	text-align: left;
	padding-right: 0;
	padding-left: 0;
}
#TOP .innerLeft_en {
	text-align: left;
	padding-right: 0;
}

#TOP .innerLeft > .row {
	width: 620px;
}

#TOP .innerLeft_en > .row {
	width: 100%;
}

#TOP .innerLeft_en > .row > div,
#TOP .innerLeft > .row > div {
	text-align: left;
	padding-left: 0;
	padding-right: 0;
}

#TOP .innerRight {
	padding-left: 0;
}

#TOP .innerRight > .row > div,
#TOP .innerRight > .flex-right {
	text-align: right;
	padding-left: 0;
	padding-right: 0;
	justify-content: flex-end;
}

#TOP .special_banner {
	float: left;
	overflow: hidden;
	border: solid 5px #31C0DC;
	z-index: 5;
	margin-bottom: 20px;
}

#TOP .primary_banner {
	float: left;
	overflow: hidden;
	border-radius: 3px;
	z-index: 5;
	margin-bottom: 20px;
}

#TOP .primary_banner.primary_blue {
	border: solid 1px #285dbf;
}

#TOP .primary_banner.primary_orange {
	border: solid 1px #f08310;
}
#TOP .primary_banner.primary_green {
	border: solid 1px #00a29a;
}

/* バナーレイアウト用定義 ここまで */

#TOP .catalog_link {
	display: block;
	width: 100%;
	height: 50px;
	line-height: 50px;
	background-color: #333333;
	color: #FCB11D;
	text-align: center;
	font-size: 22px;
	font-weight: bold;
	margin-top: 10px;
}

#TOP .catalog_link:hover {
	opacity: 0.9;
}

/*#TOP h3 {
	display: block;
	width: 100%;
	background-image: url(../img/top/diagonal.jpg);
	background-repeat: repeat-x;
	font-size: 16px;
	height: 30px;
	line-height: 30px;
	padding-left: 10px;
	color: white;
	font-weight: bold;
	margin: 0 0 10px 0;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}*/
#TOP h3 {
	display: block;
	width: 100%;
	background-color: #222222;
	font-size: 16px;
	height: 36px;
	line-height: 36px;
	padding-left: 15px;
	color: white;
	font-weight: bold;
	margin: 0 0 10px 0;
	border-radius: 3px;
	-webkit-border-radius: 3px;
}

#TOP .banner_description {
	font-size: 14px;
	padding: 0 10px;
	margin-top: 5px;
	margin-bottom: 30px;
	min-height: 60px;
}

#TOP .boxContents {
	margin-top: 30px;
}

#TOP .boxContents_en {
	margin-top: 10px;
}


#TOP hr {
	margin-top: 0;
	margin-bottom: 20px;
}

#TOP .boxInformation {
	border: solid 1px #ccc;
	padding: 8px 8px 18px 8px;
	margin-top: 20px;
	margin-bottom: 20px;
}

#TOP .boxInformation.en {
	margin-top: 0;
	margin-bottom: 40px;
	padding-top: 18px;
	padding-bottom: 18px;
}

#TOP .boxTitle_en,
#TOP .boxTitle {
	display: flex;
	border-bottom: solid 1px #31C0DC;
	margin-bottom: 15px;
	margin: 0 10px 15px 10px;
}

#TOP .boxTitle_en .title,
#TOP .boxTitle .title {
	color: #31C0DC;
	font-size: 18px;
	margin-left: 0;
	margin-right: auto;
}

#TOP .boxTitle_en .update_list,
#TOP .boxTitle .update_list {
	color: black;
	font-size: 12px;
	padding-top: 10px;
	margin-left: auto;
	margin-right: 0;
}

#TOP .boxTitle_en .update_list a,
#TOP .boxTitle .update_list a {
	color: black;
}

#TOP .index_special {
	margin-top: 36px;
}

#TOP .boxCatalog {
	text-align: center;
	background-color: #e6e6e6;
	padding: 10px 15px;
	margin-top: 0;
	margin-bottom: 30px;
	height: 256px;
}

#TOP .boxCatalog p{
	font-size: 22px;
	margin-bottom: 5px;
}

#TOP .catalog-list1 {
	display: flex;
	flex-wrap: column nowrap;
	align-items: center;
	justify-content: flex-end;
}

#TOP .catalog-list2 {
	display: flex;
	flex-wrap: column nowrap;
	align-items: center;
	justify-content: flex-start;
}

#TOP .catalog-list1 li:nth-child(odd),
#TOP .catalog-list2 li:nth-child(odd) {
	margin-right: 30px;
}


/* 事業案内 */

#MONODZUKURI h2,
#MONODZUKURI h3,
#CATALOG_REQUEST h2,
#BUSINESS h2 {
	color: rgb(0, 104, 204);
}

#BUSINESS .top_description {
	font-size: 18px;
}


#BUSINESS h3 {
	font-size: 20px;
	color: #31c0dc;
	font-weight: normal;
	margin-top: 0;
}

#BUSINESS .boxBusiness {
	margin-top: 90px;
}

#BUSINESS .boxDoubleImage {
	display: flex;
	flex-flow: column;
	align-content: space-between; 
}

#COMPANY dl {
	width: 800px;
	padding-bottom: 20px;
	margin-bottom: 20px;
	border-bottom: solid 1px rgb(204,204,204);
	margin-right: auto;
	margin-left: auto;
}

#COMPANY dl.top {
	padding-top: 30px;
}

#COMPANY dl.bottom {
	padding-bottom: 0;
	border-bottom: none;
}

#COMPANY dt {
	display: block;
	float: left;
	font-weight: normal;
	text-indent: 0;
	padding-left: 15px;
}

#COMPANY .history dt {
	padding-left: 0;
}


#COMPANY dl.english dt:after {
	margin-right: 5px;
	/*content: "-";*/
}

#COMPANY dd {
	display: block;
	margin-left: 150px;
	font-weight: normal;
	text-indent: 0;
}

#COMPANY dl.history {
	padding-bottom: 30px;
	border-bottom: none;
	margin-bottom: 0;
}

#COMPANY dl.history dt{
	display: block;
	float: left;
	font-weight: normal;
}

#COMPANY dl.history dd {
	display: block;
	margin-left: 80px;
	padding-right: 50px;
	font-weight: normal;
}

#COMPANY dl.history.english dd {
	margin-left: 50px;
}


#COMPANY td.desciption {
	width: 70%;
	vertical-align:top;
}

#COMPANY .photo {
	text-align: right;
}

/* 採用ページ */
#RECRUIT h3 {
	font-size: 20px;
	color: #31c0dc;
	padding-bottom: 10px;
	border-bottom: solid 1px rgb(204,204,204);
	margin-bottom: 10px;
}

#RECRUIT dl {
	padding-bottom: 30px;
	margin-bottom: 30px;
}

#RECRUIT .main.container {
	width: 830px;
}

#RECRUIT .main.container.index {
	width: 800px;
}

#RECRUIT .main.container.newgraduate {
	width: 840px;
}

#RECRUIT dt {
	display: block;
	text-indent: 0;
	margin-bottom: 0;
}

#RECRUIT dd {
	display: block;
	font-weight: normal;
	margin-bottom: 15px;
}

#RECRUIT .boxContact {
	font-size: 18px;
}

#RECRUIT .linkPanel {
	display: flex;
	flex-flow: row nowrap;
	justify-content: center;
	align-content: center;
}

#RECRUIT .link_button {
	width: 270px;
	height: 200px;
	display: flex;
	flex-flow: column wrap;
	justify-content: center;
	align-content: center;
	text-align: center;
	border: 2px solid #31c0dc;
	border-radius: 3px;
	margin: 0 15px;
	color: #31c0dc;
	font-size:28px;
}

#RECRUIT .link_button:hover {
	opacity: 0.6;
}

#RECRUIT .link_button:first-child {
	margin-left: 0;
}

#RECRUIT .link_button:last-child {
	margin-right: 0;
}

#RECRUIT .rikunavi_button {
	width: 330px;
	height: 110px;
	display: flex;
	flex-flow: row wrap;
	justify-content: center;
	align-content: center;
/*	border: 2px solid #0068b7;
	border-radius: 3px;
*/	margin: 0 auto;
	color: black;
}

#RECRUIT .rikunavi_button:hover {
	opacity: 0.6;
}

#RECRUIT .salary {
	text-align: center;
}

#MANUFACTURING .row {
	margin-top: 15px;
	margin-bottom: 15px;
}

#MANUFACTURING .index {
	font-size: 28px;
	font-weight: bold;
	color: white;
	background-color: rgb(0, 104, 204);
}

#MANUFACTURING h3 {
	font-size: 18px;
	line-height: 28px;
	padding-left: 15px;
	font-weight: bold;
	background-color: rgb(51, 51, 51);
	color: white;
	margin-top: 35px;
	margin-bottom: 0;
}

#MANUFACTURING h3.first {
	margin-top: 0;
}


#MANUFACTURING h4 {
	font-size: 18px;
	color: #0068cc;
	margin-left: 15px;
}

#MANUFACTURING p.description {
	margin-left: 15px;
	margin-right: 15px;
}

#MANUFACTURING .index {
	font-size: 24px;
	text-align: center;
	margin-top: 30px;
	padding-left: 15px;
	padding-right: 15px;
}

#MANUFACTURING .antena {
	font-size: 36px;
	color: rgb(0, 113, 188);
}

#MANUFACTURING .boxPhoto2{
	display: flex;
	flex-flow: column wrap;
	align-items: flex-end;
	justify-content: flex-start;
	padding-left: 0;
}

#MANUFACTURING .boxPhoto2 > img:last-child {
	margin-top: 15px;
}

#MANUFACTURING .boxPhoto {
	display: flex;
	flex-flow: row nowrap;
	align-items: flex-start;
	justify-content: flex-end;
	padding-left: 0;
}

/* 2016年度版オールゴール曲試聴 */
#MUSIC_BOX .my-song{
	display: inline-block;
    border-left: 15px solid #FFFFFF;
    border-right: 15px solid #FFFFFF;
    background-color: #EEEEEE;
    padding: 1em 0;
    margin-bottom: 3em;
    text-align: center;
}

#MUSIC_BOX  audio,
#MUSIC_BOX .artist-name,
#MUSIC_BOX .artist-name,
#MUSIC_BOX .song-name,
#MUSIC_BOX .song-number{
	color: #0068cc;
	font-size: 16px;
	background-color: white;
	width: 90%;
	margin: 10px auto;
}

#MUSIC_BOX  h3 {
	font-size: 22px;
    line-height: 1.6em;
    margin: 1em 0;
    text-align: center;
    color: #0068CC;
    border: 2px solid #0068CC;
    border-radius: 3px;
}


/* */
#MYSERIES_TEMPLATE.main.container {
	width: 800px;
}

#MYSERIES_TEMPLATE h3 {
	background-color: rgb(232, 230, 230);
	font-size: 16px;
	padding: 5px 0 5px 10px;
}

#MYSERIES_TEMPLATE .description {
	margin-left: 50px;
}

#MYSERIES_TEMPLATE p a{
	padding-left: 10px;
}

#MYSERIES_TEMPLATE .index {
	font-weight: bold;
	margin-top: 30px;
}

#MYSERIES_TEMPLATE .row {
	margin-bottom: 30px;
}

#TAIKO .description {
	margin: 20px auto;
}

#TAIKO .boxMovie {
	width: 560px;
	height: 315px;
	margin: auto;
}


#AWARDS.main.container {
	width: 970px;
}

#AWARDS h3 {
	background-color: #31C0DC;
	color: white;
	font-size: 24px;
	font-weight: bold;
	text-align: center;
	padding: 5px 0;
	margin-top: 30px;
}

#AWARDS .description {
	margin-bottom: 60px;
}

#AWARDS .boxLogoLeft {
	text-align: left;
}

#AWARDS .boxLogoRight {
	text-align: center;
}

#AWARDS .row.items {
/*	display: flex;
	flex-wrap: wrap;
*/
}


#AWARDS .items > div {
	margin-bottom: 30px;
	padding-left: 12px;
	padding-right: 12px;
}

#AWARDS .title {
	font-weight: bold;
	font-size: 14px;
}

#AWARDS .name {
	font-weight: bold;
	margin-bottom: 0;
}

#AWARDS .award_description {
	display: inline-block;
	margin-top: 10px;
	font-size: 14px;
	height: 5em;
}

.no-padding {
	padding: 0 !important;
	font-size: 14px;
}

#CATALOG .link-button {
	display: block;
	background-color: #E6E6E6;
	font-size: 14px;
    padding: 1em;
    line-height: 1em;
    margin-top: 0.8em;
    border-radius: 3px;
	height: 42px;
	width: 200px;
	margin-left: auto;
	margin-right: auto;
}

#CATALOG .link-button p:after {
	content: "＞＞";
    display: inline-block;
    float: right;
}

#CATALOG .catalog-list {
/*	display: flex;
	flex-wrap: wrap;
*/
}

#CATALOG .name {
	font-size: 14px;
	height: 50px;
}

#CATALOG .cover {
	text-align: center;
	margin-top: 0.2em;
}

#CATALOG a {
	color: #4d4d4d;
}

#CATALOG .row > div {
	margin-bottom: 60px;
}

/* 学校カタログ用追記*/
#CATALOG .name.nameschool {
	height: 3em;
	line-height: 1.5em;
}



/* カタログ請求 */
#catalog-list-area .catalog {
  text-align: center;
  margin-bottom: 3em;
}

#catalog-list-area .catalog p {
  display: block;
  width: 80%;
  margin-left: auto;
  margin-right: auto;
  border: 1px solid #0068CC;
  border-radius: 2px;
  color: #0068CC;
}

#catalog-list-area .catalog img {
  /*margin-left: 1em;*/
  border: 1px solid #dedede;
}

#catalog-list-area .catalog input {
  width: 20px;
  height: 20px;
  cursor: pointer;
}

#CATALOG_REQUEST {
	margin-bottom: 90px;
}

#CATALOG_REQUEST .row.inner {
	width: 100%;
	margin-bottom: 15px;
}


#CATALOG_REQUEST h4 {
	padding-left: 15px;
	color: #FFFFFF;
	background-color: rgb(180,180,180);
	text-align: left;
	font-size: 18px;
	height: 32px;
	line-height: 32px;
	margin: 20px 0;
}

#CATALOG_REQUEST .boxButton {
	margin-top: 60px;
	margin-bottom: 90px;
}

#CATALOG_REQUEST h3 {
	width: 100%;
	height: 50px;
	font-size: 24px;
	font-weight: bold;
	background-color: #b8e7e8;
	color: #34babe;
	text-align: center;
	line-height: 50px;
}

#CATALOG_REQUEST input[type=radio],
#CATALOG_REQUEST input[type=checkbox] {
	margin-left: 20px;
	margin-right: 5px;
}

#CATALOG_REQUEST ul.overview li {
	float: left;
	width: 33%;
	font-weight: bold;
	margin-bottom: 10px;
	font-size: 18px;
	padding-left: 30px;
}

#CATALOG_REQUEST .explanation li {
	border-bottom: solid 1px #cccccc;
	padding-left: 0;
	padding-top: 3px;
	padding-bottom: 3px;
}

#CATALOG_REQUEST .note {
	font-size: 14px;
}

#CATALOG_REQUEST table {
	width: 100%;
}

#CATALOG_REQUEST .description {
	padding-left: 15px;
}

#sample-info-area {
  font-size: 16px;
  margin-bottom: 1em;
}

#sample-info-area .row {
  background-color: #f1f1f1;
  margin-bottom: 0.5em;
  border-left: 15px solid white;
  border-right: 15px solid white;
  padding: 1em 0;
}

#sample-info-area .row input {
  width: 100%;
}

#sample-info-area .row input[name^="product_number"] {
  margin-bottom: 0.5em;
}

/*
	ステップ表示
*/
.boxArrow {
	margin-top: 30px;
	padding: 0 15px;
}

.boxArrowStep {
	line-height: 42px;
	color:#000000;
	text-align:center;
	padding-right: 23px;
	padding-left: 0;
	background-image: url(../img/form/arrow.png);
	background-position: top right;
	background-repeat: no-repeat;
	background-size: 23px 42px;
	background-color: #f1f1f1;
}

.boxArrowStep.current {
	color: white;
	background-color: #0068CC;
}

.form_title {
	border-right: 5px solid rgb(180,180,180);
	text-align: right;
	padding-right: 10px;
}

.form_title[class~="essential_mark"]:after {
	content: "必須";
	display: inline-block;
	font-size: 12px;
	line-height: 16px;
	background-color: red;
	color: #FFFFFF;
	padding: 3px;
	border-radius: 3px;
	font-weight: bold;
	margin: 0 0 0 10px;
}
.form_title[class~="without_essential_mark"]:after{
	content:"";
	display:inline-block;
	width:40px;
}

.form_question[class~="essential_mark"]:after {
    content: "必須";
    display: inline-block;
    font-size: 12px;
    line-height: 16px;
    background-color: red;
    color: #FFFFFF;
    padding: 3px;
    border-radius: 3px;
    font-weight: bold;
    margin: 0 10px;
}

/* 確認ボタン */
.submitButton {
	display: inline-block;
	width: 280px;
	height: 50px;
	font-size: 18px;
	color: #FFFFFF;
	line-height: 50px;
	text-align: center;
	background-color:rgba(57,180,74,1);
	border: none;
	border-radius: 5px;
	box-shadow: 0px 3px 0px rgba(203,203,203,1);
	cursor: default;
	opacity: 1;
}

/* 送信ボタン */
.sendButton{
	display:inline-block;
	width:150px;
	height:50px;
	font-size:18px;
	color:#FFFFFF;
	line-height:50px;
	text-align:center;
	background-color:rgba(57,180,74,1);
	border:none;
	border-radius:5px;
	margin:0px 15px;
	box-shadow:0px 3px 0px rgba(203,203,203,1);
	opacity: 1;
}

/* 戻るボタン */
.backButton{
	display:inline-block;
	width:150px;
	height:50px;
	font-size:18px;
	color:#FFFFFF;
	line-height:50px;
	text-align:center;
	background-color:rgba(158,158,158,1);
	border:none;
	border-radius:5px;
	margin:0px 15px;
	box-shadow:0px 3px 0px rgba(203,203,203,1);	
	opacity: 1;
}

/*
	フォーム共通
*/
hr.separator {
	border-width: 2px 0 0 0;
	border-style: solid;
	border-color: rgb(180,180,180);
	height: 2px;
	clear: both;
}

p.caution{
	width: 100%;
	text-align: center;
	visibility:hidden;
	color:rgb(255,51,51);
	margin-top: 15px;
}
p.caution[class~="visible"]{
	visibility:visible;
}

textarea,
input[type="tel"],
input[type="email"],
input[type="text"] {
	width: 100%;
	padding: 0 5px;
	border: 1px solid rgb(180,180,180);
}
#complete_message {
	margin-top: 20px;
	margin-bottom: 90px;
}

#complete_message table {
	margin-bottom: 15px;
}

#complete_message th {
	border: 1px solid rgb(155,155,155);
	background-color: rgb(242,242,242);
	text-align: center;
	padding: 10px 10px;
	font-size: 18px;
	font-weight: normal;
}

#complete_message td {
	border: 1px solid rgb(155,155,155);
	background-color: transparent;
	text-align: center;
	font-size: 18px;
	padding: 15px 15px;
}

#complete_message td p {
	margin: 15px 0;
}

#complete_message dt {
	float: left;
	width: 50%;
	text-align: right;
	padding-right: 15px;
	font-size: 18px;
	font-weight: normal;
}

#complete_message dd {
	float: left;
	width: 50%;
	text-align: left;
	padding-left: 15px;
	font-size: 18px;
}

#complete_message .closeButton {
	display: inline-block;
	font-size: 18px;
	width: 220px;
	height: 50px;
	line-height: 50px;
	margin: 30px 0;
	border: none;
	color: #FFFFFF;
	border-radius: 5px;
	background-color: rgba(199,159,98,1);
	box-shadow: 0px 3px 0px rgba(203,203,203,1);
}

#go_contact {
	display: inline-block;
	font-size: 18px;
	width: 220px;
	height: 50px;
	line-height: 50px;
	margin: 30px auto;
	border: none;
	color: #FFFFFF;
	border-radius: 5px;
	background-color: rgba(57,180,74,1);
	box-shadow: 0px 3px 0px rgba(203,203,203,1);
}


/* お問い合わせフォーム用 */
#CONTACT form {
	width: 400px;
	text-align: left;
	margin: auto;
}

#CONTACT form li {
	text-align: left;
}

#CONTACT form.confirm {
	width: 600px;
}

::-webkit-input-placeholder,
:-moz-placeholder,
::-moz-placeholder,
:-ms-input-placeholder {
	font-style: italic;
	font-weight: bold;
	color: blue;
}

#CONTACT input {
	margin-bottom: 0;
}

#CONTACT input[type="radio"] {
	margin-left: 0;
	margin-right: 10px;
	text-align: left;
}

#CONTACT textarea,
#CONTACT input[type="tel"],
#CONTACT input[type="email"],
#CONTACT input[type="text"] {
	width: 100%;
	background-color: #e6e6e6;
	border: 1px solid #c0c0c0;
	padding: 3px 5px;
}

#CONTACT input[type="button"],
#CONTACT input[type="submit"] {
	display: block;
	width: 150px;
	margin: 0 auto;
}

#CONTACT .form_box {
	margin-bottom: 30px;
}

#CONTACT form ul {
	padding-left: 20px;
}

#CONTACT form li {
	list-style: none;
	font-weight: normal;
}


/* 確認画面の表示用　*/
#CONTACT table {
	width: 600px;
	margin: 0 auto 30px auto;
}

#CONTACT tr {
	height: 32px;
}

#CONTACT tr:nth-child(odd) {
	background-color: white;
}

#CONTACT tr:nth-child(even) {
	background-color: #e6e6e6;
}

#CONTACT th {
	font-size: 16px;
	font-weight: normal;
	padding: 0;
}

#CONTACT td {
	font-size: 14px;
	padding: 5px 10px;
	vertical-align: top;
}

.sagi_notice {
	margin: 0 0 20px 0;
	padding-top: 3px;
	padding-bottom: 3px;
	padding-left: 10px;
	font-size: 16px;
	text-decoration: underline;
	background-color: #dcdcdc;
}

.monodukuri {
	margin: 40px 0 30px 10px;
	/*font-size: 16px;*/
	line-height: 1.6em;
}

.monodukuri a {
	font-weight: bold;
	text-decoration: underline;
	font-size: 18px;
}

#MONODZUKURI.main.container {
	width: calc(880px + 30px);
}

#MONODZUKURI h2 {
	margin-bottom: 0;
}

#MONODZUKURI h3 {
	font-size: 22px;
	text-align: center;
	margin-top: 8px;
	margin-bottom: 8px;
}

#MONODZUKURI .description {
	font-size: 18px;
}

#MONODZUKURI .description2 {
	font-size: 18px;
	text-align: left;
	margin-top: 8px;
	margin-bottom: 18px;
}

#MONODZUKURI .description3 {
	font-size: 18px;
	margin-top: 40px;
	margin-bottom: 8px;
}

#MONODZUKURI .boxMonodzukuri {
	padding: 36px 40px 20px 40px;
	border: solid 1px #cccccc;
	margin-top: 60px;
}

#MONODZUKURI .boxMonodzukuri > .title {
	font-size: 18px;
	margin-bottom: 20px;
}

#MONODZUKURI .boxMonodzukuri > .description {
	font-size: 18px;
	text-align: left;
	margin-top: 20px;
}

#MONODZUKURI .adjust {
	letter-spacing: -10px;
}

#MONODZUKURI .adjust2 {
	letter-spacing: -4px;
}


#NEWS .box_update_outer {
	margin-top: 30px;
	background-color: #0984e3;
	text-align: center;
	padding: 10px 0 20px 0;
	color: #ffffff;
}

/*
	更新情報表示
*/
.box_title {
	width: 970px;
	font-size: 21px;
}
.link_update_list {
	display: flex;
	justify-content: flex-end;
	align-content: flex-end;
	font-size: 14px;
	padding-top: 10px;
}

.link_update_list a:visited,
.link_update_list a:active,
.link_update_list a:hover,
.link_update_list a {
	display: block;
	color: #ffffff;
	text-align: right;
	margin-top: auto;
	margin-bottom: 0;
}

.box_update {
	display: flex;
	flex-flow: row nowrap;
	justify-content: flex-start;
	align-items: flex-start;
	width: 940px;
	margin-left: auto;
	margin-right: auto;
}

.box_article{
	display: block;
	width: 188px;
	border: solid 1px #ffffff;
	margin: 0;
	border-collapse: collapse;
}

.box_thumbnail{
	/*display: inline-block;*/
	position: relative;
	overflow: hidden;
}

.box_thumbnail:after{
	position: absolute;
	display: block;
	content: "";
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background: linear-gradient(0deg, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0) 30%); /* 塗りつぶす */
}

.box_excerpt {
	background-color: transparent;
	color: #ffffff;
	background-color: #0984e3;
	width: 100%;
	padding: 5px 15px;
	overflow: hidden;
	height: 120px;
}

.article_date {
	font-size: 12px;
	font-weight: bold;
	text-align: left;
	margin-bottom: 2px;
}

.article_title {
	font-size: 14px;
	font-weight: bold;
	text-align: left;
	line-height: 1.2;
	margin-bottom: 5px;
}

.article_title a:visited,
.article_title a:active,
.article_title a:hover,
.article_title a {
	color: #ffffff;
	text-decoration: underline;
}


.article_content {
	font-size: 12px;
	text-align: justify;
	line-height: 1.4;
	margin-top: 10px;
	margin-bottom: 0;
}

#UPDATE .article_date {
	font-size: 12px;
	color: #898989;
	font-weight: bold;
	text-align: left;
	margin-top: 64px;
}

#UPDATE .article_title {
	font-size: 28px;
	color: #0984e3;
	font-weight: normal;
	text-align: left;
}

#UPDATE .article_content {
	font-size: 16px;
	line-height: 1.4;
	height: auto;
	margin-bottom: 5px;
}

#UPDATE .article_link a:visited,
#UPDATE .article_link a:active,
#UPDATE .article_link a:hover,
#UPDATE .article_link a {
	font-size: 16px;
	line-height: 1.4;
	color: #0984e3;
	height: auto;
	text-decoration: underline;
}

#UPDATE ul {
	display: flex;
	flex-flow: row wrap;
	justify-content: flex-start;
	align-items: flex-start;
	margin-top: 30px;
}

#UPDATE li {
	margin-bottom: 20px;
}

#UPDATE li:nth-child(3n-1) {
	margin-left: 20px;
	margin-right: 20px;
}

#UPDATE_LIST .update_title {
	font-size: 28px;
}

#UPDATE_LIST dl {
	margin-bottom: 15px;
}

#UPDATE_LIST dt {
	float: left;
	font-size: 16px;
	font-weight: normal;
	margin-left: 30px;
	margin-right: 20px;
}

#UPDATE_LIST dd {
	font-size: 16px;
	font-weight: normal;
}

#UPDATE_LIST .notice{
	font-size: 16px;
	margin-top: 5px;
}

.box_back {
	margin-top: 60px;
	text-align: center;
}

a.newslist,
a.newslist:visited,
a.newslist:active,
a.newslist:hover,
.box_back a:visited,
.box_back a:active,
.box_back a:hover,
.box_back a {
	font-size: 16px;
	line-height: 1.4;
	color: #0984e3;
	height: auto;
	text-decoration: none;
}

.csrtel {
	font-size: 42px;
	font-weight: 900;
	margin-top: -15px;
}

.csrbtn{
     display:block;
     width: 400px;
     height:80px;
     line-height: 80px;
     color: white !important;
	 font-size: 22px;
	 font-weight: 900;
     text-decoration: none;
     text-align: center;
     background-color: #0169cc; /*ボタン色*/
     border-radius: 3px; /*角丸*/
     -webkit-transition: all 0.5s;
     transition: all 0.5s;
	margin-top: 15px;
	margin-bottom: 30px;
}
.csrbtn:hover{
     opacity: 0.6; /*ボタン色*/
}

.visibleicon {
	margin-top: -100px;
}


/*
	5冠達成バックグラウンド用
*/
.container > #fiveaward.row {
	width: 100% !important;
}
.fiveaward_outer {
	background-color: #0f1e2e;
}

.fiveaward_text {
	font-size: 12px;
	margin-top: 15px;
}

/*company_profile用*/
.company_profile {
	display: inline-block;
}
.return_text {
	margin-top: 45px;
}
