@charset "UTF-8";

/*! normalize.css v3.0.2 | MIT License | git.io/normalize*/
html{
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%;
}

body{
	margin: 0;
}

article,
aside,
details,
figcaption,
figure,
footer,
header,
hgroup,
main,
menu,
nav,
section,
summary{
	display: block;
}

audio,
canvas,
progress,
video{
	display: inline-block;
	vertical-align: baseline;
}

audio:not([controls]){
	display: none;
	height: 0;
}

[hidden],
template{
	display: none;
}

a{
	background-color: transparent;
}

a:active,
a:hover{
	outline: 0;
}

abbr[title]{
	border-bottom: 1px dotted;
}

b,
strong{
	font-weight: bold;
}

dfn{
	font-style: italic;
}

h1{
	margin: 0.67em 0;
	font-size: 2em;
}

mark{
	background: #ff0;
	color: #000;
}

small{
	font-size: 80%;
}

sub,
sup{
	vertical-align: baseline;
	line-height: 0;
	position: relative;
	font-size: 75%;
}

sup{
	top: -0.5em;
}

sub{
	bottom: -0.25em;
}

img{
	border: 0;
}

svg:not(:root){
	overflow: hidden;
}

figure{
	margin: 1em 40px;
}

hr{
	height: 0;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
}

pre{
	overflow: auto;
}

code,
kbd,
pre,
samp{
	font-family: monospace, monospace;
	font-size: 1em;
}

button,
input,
optgroup,
select,
textarea{
	margin: 0;
	color: inherit;
	font: inherit;
}

button{
	overflow: visible;
}

button,
select{
	text-transform: none;
}

button,
html input[type="button"],
input[type="reset"],
input[type="submit"]{
	cursor: pointer;
	-webkit-appearance: button;
}

button[disabled],
html input[disabled]{
	cursor: default;
}

button::-moz-focus-inner,
input::-moz-focus-inner{
	padding: 0;
	border: 0;
}

input{
	line-height: normal;
}

input[type="checkbox"],
input[type="radio"]{
	padding: 0;
	box-sizing: border-box;
}

input[type="number"]::-webkit-inner-spin-button,
input[type="number"]::-webkit-outer-spin-button{
	height: auto;
}

input[type="search"]{
	-moz-box-sizing: content-box;
	-webkit-box-sizing: content-box;
	box-sizing: content-box;
	-webkit-appearance: textfield;
}

input[type="search"]::-webkit-search-cancel-button,
input[type="search"]::-webkit-search-decoration{
	-webkit-appearance: none;
}

fieldset{
	margin: 0 2px;
	padding: 0.35em 0.625em 0.75em;
	border: 1px solid #c0c0c0;
}

legend{
	padding: 0;
	border: 0;
}

textarea{
	overflow: auto;
}

optgroup{
	font-weight: bold;
}

table{
	border-collapse: collapse;
	border-spacing: 0;
}

td,
th{
	padding: 0;
}


/*------------------------------------------------------------
賢威テンプレートの共通設定
-------------------------------------------------------------*/

html{
	overflow-y: scroll;
}

body{
	font-family: 'Noto Sans', 'Noto Sans CJK JP', 'Noto Sans CJK JP Subset', sans-serif;
	color: #333;
	font-size: 16px;
}

a{
	-webkit-transition: 0.3s;
	-o-transition: 0.3s;
	transition: 0.3s;
	color: #333;
	text-decoration: none;
}

a:hover,
a:active,
a:focus{
	color: #aaaaaa;
}

address,
caption,
cite,
code,
dfn,
var,
h1,
h2,
h3,
h4,
h5,
h6{
	font-style: normal;
	font-weight: normal;
}

q{
	quotes: none;
}

q:before,q:after{
	content: '';
	content: none;
}

img{
	vertical-align: bottom;
	-ms-interpolation-mode: bicubic;
}

div{
	word-wrap: break-word;
}

pre{
	overflow: auto;
	white-space: pre-wrap;
	word-wrap: break-word;
}

form{
	margin: 0;
}

button,
input,
select,
textarea,
optgroup,
option{
	vertical-align: baseline;
}

select{
	max-width: 100%;
}

textarea{
	min-height: 100px;
	vertical-align: top;
}

button::-moz-focus-inner,
input::-moz-focus-inner{
	margin: 0;
}

table{
	width: 100%;
	word-break: break-all;
	word-wrap: break-word;
	border-spacing: 0;
}

caption{
	text-align: left;
}

img{
	height: auto;
	max-width: 100%;
}

img{
	max-width: none\9;/*IE8への対応*/
}

html:not(:target) img{
    max-width: 100%; /*IE9以上への対応*/
}

ul,
ol{
	margin: 0px;
	padding: 0;
}

li{
	margin-bottom: 0.5em;
}

q{
	background: #ccc;
}

dd{
	margin: 0;
	padding:0;
}

.container{
	position: relative;
}

.breadcrumbs-in{
	margin: 20px 0;
	padding: 0;
	color: #999;
	font-size: 14px;
}

.no-gn .breadcrumbs-in{
	margin-top: 0;
}

.breadcrumbs-in a{
	color: #0067b5;
}

.breadcrumbs-in a:hover,
.breadcrumbs-in a:active,
.breadcrumbs-in a:focus{
	color: #f60;
}

.breadcrumbs-in li{
	display: inline-block;
	list-style: none;
	position: relative;
    margin-right: 8px;
    padding-right: 15px;
    margin-bottom: 0;
    line-height: 1.4;
	background: url(./images/common/icon-brc.png) right center no-repeat;
}

.breadcrumbs-in li.bcl-last{
	background: none;
}

/*ページトップボタン*/
.page-top{
	display: none;
	position: fixed;
	right: 20px;
	bottom: 20px;
	z-index: 99;
	line-height: 1.2;
	margin-bottom: 0;
}


/*---------------------------------------------------------------------

----------------------------------------------------------------------*/

.in-cont{
	width: 1200px;
	margin: 0 auto;
}

.logo{
	width: 240px;
}

.header_logo{
	position: relative;
	padding: 8px 0 0;
	width: 260px;
}

.header_contact{
	width: 480px;
}

.header_logo p{
	position: absolute;
    top: 2px;
    left: 50px;
    font-size: 10px;
    margin: 0;
    font-weight: bold;
    letter-spacing: .1em;
}

.menu ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.menu ul li{
	list-style: none;
	justify-content: space-between;
	border-right: 1px solid #dddddd;
	text-align: center;
	width: 16.5%;
	font-size: 14px;
	font-weight: bold;
	margin: 0;
	height: 40px;
    line-height: 40px;
}

.menu ul li:nth-child(1){
	border-left: 1px solid #dddddd;
}

.header_in{
	padding: 10px 0 15px;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.header_contact{
	display: flex;
	flex-wrap: wrap;
	position: absolute;
    top: 10px;
    right: 40px;
}

.header_contact_box1{
	width: 280px;
}

.header_contact_box2{
	width: 200px;
}

.header_contact_txt1{
	font-size: 10px;
    margin: 0;
    font-weight: bold;
    letter-spacing: .1em;
}

.header_contact_txt2{
	font-size: 30px;
	font-weight: bold;
	font-family: 'Lato', sans-serif;
	color: #0067b5;
	margin: -4px 0 0;
    display: block;
}

.header_contact_txt3{
	font-size: 14px;
	font-weight: bold;
	font-family: 'Lato', sans-serif;
	color: #0067b5;
	margin: 0 0 0 2px;
    letter-spacing: 0.1em;
}

.header_contact_txt2 .fas{
	-moz-transform: rotate(100deg);
	-webkit-transform: rotate(100deg);
	-o-transform: rotate(100deg);
	-ms-transform: rotate(100deg);
	font-size: 20px;
    vertical-align: middle;
    margin-top: -5px;
    margin-right: 4px;
}

.header_contact_txt3 span{
	font-size: 12px;
}

.header_contact_box2 a{
	background-color: #ff7c3c;
	color: #fff;
	font-size: 16px;
	display: block;
	width: 100%;
	height: 50px;
	line-height: 52px;
	padding: 0px;
	text-align: center;
	box-sizing: border-box;
}

.header_contact_box2 a:hover{
	opacity:0.85;
}

.header_contact_box2 a .far{
	margin-right: 6px;
    font-size: 20px;
    vertical-align: middle;
    margin-top: -2px;
    font-weight: 100;
}

.top_mv{
	height: 500px;
	background-color: #eee;
	background-image: url(./images/top/top_mv.jpg);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
}

.top_mv .in-cont{
	justify-content: flex-end;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.site-footer{
	background-color: #242424;
	color: #fff;
}

.site-footer a{
	color: #aaaaaa;
}

.site-footer h3{
	margin: 0 0 10px;
	font-size: 14px;
	font-weight: bold;
}

.site-footer h3>a{
	color: #ffffff;
}

.site-footer a:hover{
	color: #176f96;
}

.copyright{
	text-align: center;
	padding: 10px 0;
}

.copyright p{
	margin: 0;
	font-size: 12px;
}

.footer_box-wrap{
	display: flex;
	flex-wrap: wrap;
	padding: 40px 0 56px;
	border-top: 1px solid #3a3a3a;
}

.footer_box{
	width: 25%;
}

.footer_box ul{
	margin: 0;
	padding: 0;
}

.footer_box ul li{
	list-style: none;
	font-size: 14px;
	margin: 0 0 8px;
	padding: 0;
}

.footer_in{
	padding: 30px 0;
}

.footer_logo .logo{
	width: 100%;
}

.footer_in{
	display: flex;
	flex-wrap: wrap;
}

.footer_logo{
	width: 270px;
}

.footer_data_wrap{
	width: 930px;
	display: flex;
	flex-wrap: wrap;
	padding: 0 0 0 60px;
	box-sizing: border-box;
}

.footer_data{
	width: 28%;
	justify-content: center;
	display: flex;
	flex-direction: column;
	height: 100%;
}

.footer_data p{
	margin: 0;
}

.footer_data ul{
	display: flex;
	flex-wrap: wrap;
}

.footer_data ul li{
	list-style: none;
    margin: 0 28px 0 0;
    font-size: 22px;
}

.footer_data ul li a{
	color: #fff;
}

.footer_data ul li a:hover{
	color: #06a3e0;
}

.mv_ani2{
	/*display: none;*/
	visibility: hidden;
}

.view{
	display: block;
}

.mv_txt1{
	display: inline-block;
	background-color: #fff;
	margin: 0;
	font-size: 48px;
	font-weight: bold;
	color: #0067b5;
	padding: 0 20px;
	-webkit-text-stroke-width: .5px;
}

.mv_txt2{
	display: inline-block;
	background-color: #fff;
	margin: 0 0 90px 60px;
	font-size: 48px;
	font-weight: bold;
	color: #0067b5;
	padding: 0 5px 0 20px;
	-webkit-text-stroke-width: .5px;
}

.top1{
	text-align: center;
	padding: 90px 0;
	background-image: url(./images/top/top1_bg.png);
	background-size: 485px;
    background-position: -60px -230px;
	background-repeat: no-repeat;
}

.top1_txt1{
	margin: 0 0 30px;
	font-size: 20px;
	font-weight: bold;
	color: #20a7e1;
}

.fadein {
  opacity: 0;
  transform : translate(0, 50px);
  transition : all 1500ms;
}

.fadein.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}

.fadein2 {
  opacity: 0;
  transform : translate(0, 50px);
  transition : all 1500ms;
}

.fadein2.scrollin{
  opacity: 1;
  transform: translate(0, 0);
}

.top1_txt2{
	margin: 0 0 45px;
	font-size: 30px;
}

.top1_txt2 span{
	font-weight: bold;
}

.top1 a{
	background-color: #0067b5;
	color: #fff;
	font-size: 16px;
	display: inline-block;
	padding: 12px 32px;
}

.top1 a:hover{
	opacity: 0.7;
}

.menu{
	margin: 0 0 10px;
}

.top2{
	background-color: #fcfcfc;
	padding: 70px 0;
	position: relative;
}

.top2_txt1{
	text-align: center;
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 70px;
	margin: 0 0 30px;
}

.top2_3box{
	display: flex;
	flex-wrap: wrap;
}

.top2_3box .box{
	width: 33.3%;
	padding: 0 30px;
	box-sizing: border-box;
}

.top2_3box .box img{
	display: block;
	margin: 0 auto;
	width: 200px;
}

.top2_3box .box h3{
	text-align: center;
    justify-content: center;
    display: flex;
    flex-direction: column;
    font-weight: bold;
    font-size: 20px;
    height: 60px;
    margin: 0 0 15px;
}

.top2_3box .box p{
	margin: 0;
}

.top3{
	background-color: #003880;
	color: #fff;
	padding: 70px 0 30px;
    background-image: url(./images/top/top3_bg.png);
    background-size: 485px;
    background-position: top right;
    background-repeat: no-repeat;
}

.tt_base{
	font-weight: bold;
	margin: 0 0 15px;
	font-size: 16px;
	position: relative;
	padding: 4px 0 0 50px;
}

.tt_base:before{
	content: "";
	width: 32px;
	height: 53px;
	background-image: url(./images/common/tt_parts.png);
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	position: absolute;
	top: 0;
	left: 0;
}


.tt_base span{
	font-size: 46px;
	display: block;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", "Yu Gothic", YuGothic, sans-serif;
}

.top2:after{
	content: "";
    position: absolute;
    bottom: -100px;
    left: 50%;
    margin-left: -180px;
    border-top: 50px solid #fcfcfc;
    border-right: 180px solid transparent;
    border-bottom: 50px solid transparent;
    border-left: 180px solid transparent;
}

.top3_img1{
	background-image: url(./images/top/top3_img1.jpg);
}

.top3_img2{
	background-image: url(./images/top/top3_img2.jpg);
}

.top3_img3{
	background-image: url(./images/top/top3_img3.jpg);
}

.top3_img4{
	background-image: url(./images/top/top3_img4.jpg);
}

.top3_img_base{
	background-size: cover;
	background-position: center center;
	background-repeat: no-repeat;
	width: 100%;
	height: 216px;
	justify-content: flex-end;
	display: flex;
	flex-direction: column;
}

.top3_box_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 20px 0 0;
}

.top3_box_wrap .box{
	width: 585px;
	margin: 0 0 40px;
}

.top3_box_wrap .box h3{
	font-size: 28px;
	font-weight: bold;
	margin: 0;
	padding: 0 30px;
	box-sizing: border-box;
	height: 100px;
	justify-content: center;
	display: flex;
	flex-direction: column;
	line-height: 1.2;
}

.top3_box_in{
	background-color: #fff;
	padding: 0px 255px 0px 30px;
	position: relative;
	height: 100px;
	justify-content: center;
	display: flex;
	flex-direction: column;
}

.top3_box_in p{
	margin: 0;
	color: #333;
}

.top3_box_in a{
	position: absolute;
	top: 24px;
	right: 30px;
	background-color: #0067b5;
	color: #fff;
	width: 210px;
	height: 54px;
	line-height: 56px;
	text-align: center;
	font-size: 16px;
}

.top4{
	padding: 70px 0 30px;
}

.top4_box_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 20px 0 0;
}

.top4_box_wrap .box{
	width: 278px;
	margin: 0 0 25px;
}

.top4_box_wrap .box img{
	border: 1px solid #dddddd;
}

.top4_box_wrap .box span{
	text-align: center;
	display: block;
	font-size: 16px;
	padding: 10px 0;
}

.top5_box_wrap{
	padding: 20px 60px 0;
}

.top5_box_wrap .box{
	display: flex;
	flex-wrap: wrap;
	background-color: #f0f7fb;
	margin-bottom: 40px;
}

.top5_box_wrap .box .left{
	width: 240px;
	padding: 24px 30px 15px 70px;
	box-sizing: border-box;
}

.top5_box_wrap .box .left span{
	font-weight: bold;
	display: block;
	text-align: center;
	padding: 5px 0;
}

.top5_box_wrap .box .right{
	width: 820px;
	justify-content: center;
	display: flex;
	flex-direction: column;
}

.top5_box_wrap .box .right p{
	padding: 30px 30px 30px 60px;
    box-sizing: border-box;
    line-height: 2;
    background-image: url(./images/top/top5_img3.png);
    background-position: 0 0;
    background-size: 38px;
    background-repeat: no-repeat;
}

.top5{
	padding: 20px 0 40px;
}

.news_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 20px 0 0;
}

.news_box{
	width: 380px;
}

.news_thum{
	height: 200px;
	position: relative;
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center;
}

.news_thum span{
	position: absolute;
	top: 0;
	left: 0;
	background-color: #181818;
	color: #fff;
	padding: 3px 22px;
}

.news_box_in{
	padding: 24px 24px;
	background-color: #fff;
}

.top6{
	background-color: #fcfcfc;
	padding: 70px 0 10px;
}

.news_box a{
	display: block;
	width: 100%;
	height: 100%;
}

.news_box a:hover{
	opacity: 0.7;
}

.news_box_in span{
	color: #aaa;
	font-size: 12px;
	display: block;
	margin: 0;
	font-weight: bold;
}

.news_box_in h3{
	font-size: 20px;
	margin: 0;
}

.top6_link{
	font-size: 16px;
    text-align: center;
    width: 234px;
    height: 54px;
    line-height: 56px;
    background-color: #0062b2;
    color: #fff;
    display: block;
    margin: 50px auto;
}

.top6_link:hover{
	color: #fff;
	opacity: 0.7;
}

.cta_pt1{
	padding: 60px 0;
}

.cta_pt1 h3{
	font-weight: bold;
	text-align: center;
	font-size: 28px;
	margin: 0 0 30px;
}

.cta_pt1_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.cta_pt1_wrap .left,.cta_pt1_wrap .right{
	width: 585px;
}

.cta_pt1_wrap .right h4{
	font-size: 20px;
	font-weight: bold;
	margin: 15px 0 20px;
}

.cta_pt1_wrap .right ul{
	padding: 0;
	margin: 0;
}

.cta_pt1_wrap .right ul li{
	list-style: none;
	padding: 2px 0 2px 28px;
	background-image: url(./images/common/cta_check.png);
    background-position: 0px 4px;
    background-size: 20px;
    background-repeat: no-repeat;
}

.cta_pt1_wrap .right p{
	line-height: 2;
}

.link_wrap{
	display: flex;
	flex-wrap: wrap;
	padding: 10px 0 0;
}

.link_wrap a{
	display: block;
	width: 200px;
	height: 48px;
	line-height: 46px;
	border: 2px solid #0062b2;
	color: #0062b2;
	box-sizing: border-box;
	margin-right: 30px;
	text-align: center;
	font-weight: bold;
	font-size: 16px;
}

.link_wrap a:hover{
	background-color: #0062b2;
	color: #fff;
}

.cta_pt2{
	background-image: url(./images/common/cta_pt2_bg.jpg);
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
	padding: 60px 0;
	text-align: center;
}

.cta_pt2_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.page-template-page-contact .cta_pt2_wrap{
	justify-content: space-around;
}

.cta_pt2_wrap .box{
	width: 380px;
	background-color: #fff;
	padding: 32px 0;
}

.cta_pt2_wrap .box h3{
	margin: 0 0 10px;
	color: #0062b2;
	font-size: 20px;
	font-weight: bold;
	text-align: center;
}

.cta_pt2_tel a{
	font-size: 30px;
    font-weight: bold;
    font-family: 'Lato', sans-serif;
    color: #0067b5;
    margin: 0px 0 2px;
    display: block;
}

.cta_pt2_tel a .fas {
    -moz-transform: rotate(100deg);
    -webkit-transform: rotate(100deg);
    -o-transform: rotate(100deg);
    -ms-transform: rotate(100deg);
    font-size: 24px;
    vertical-align: middle;
    margin-top: -5px;
    margin-right: 6px;
}

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

.cta_pt2_tel span{
	font-size: 20px;
	color: #0062b2;
	font-weight: bold;
	display: block;
}

.line-icon{
	width: 26px;
    vertical-align: middle;
    margin-bottom: 4px;
}

.cta_pt2_mail a{
	background-color: #0067b5;
    color: #fff;
    font-size: 16px;
    display: inline-block;
    width: 240px;
    height: 50px;
    line-height: 52px;
    padding: 0px;
    text-align: center;
    box-sizing: border-box;
}

.cta_pt2_mail a .far {
    margin-right: 6px;
    font-size: 20px;
    vertical-align: middle;
    margin-top: -2px;
    font-weight: 100;
}

.cta_pt2_mail a:hover{
	opacity: .7;
}

.cta_pt2_line a{
	background-color: #00b900;
    color: #fff;
    font-size: 16px;
    display: inline-block;
    width: 240px;
    height: 50px;
    line-height: 52px;
    padding: 0px;
    text-align: center;
    box-sizing: border-box;
    background-image: url(./images/common/line.png);
    background-repeat: no-repeat;
    background-position: 44px 6px;
}

.cta_pt2_line a:hover{
	opacity: .7;
}

.cta_pt3{
	background-color: #fcfcfc;
	padding: 30px 0;
}

.cta_pt3_in{
	display: flex;
	flex-wrap: wrap;
}

.cta_pt3_in .left{
	width: 50%;
	text-align: right;
	padding: 0 15px 0 0;
	box-sizing: border-box;
}

.cta_pt3_in .right{
	width: 50%;
	padding: 0 0 0 15px;
	box-sizing: border-box;
}

.cta_pt3_in .right input[type="email"]{
	background-color: #fff;
    padding: 0px 14px;
    border: 1px solid #ccc;
    width: 340px;
    box-sizing: border-box;
    height: 50px;
    line-height: 50px;
    float: left;
}

.cta_pt3_in .right input[type="email"]::placeholder {
  color: #ccc;
}

.cta_pt3_in .right p{
	margin: 0;
	overflow: hidden;
	display: block;
}

.cta_pt3_in .right input[type="submit"]{
	background-color: #242424;
	color: #fff;
	border: 0;
	height: 50px;
    line-height: 50px;
    float: left;
    padding: 0px 14px;
}

.sp-only{
	display: none;
}

#page_mv{
	height: 200px;
	background-color: #eee;
	text-align: center;
	justify-content: center;
	display: flex;
	flex-direction: column;
	color: #fff;
}

#page_mv h1{
	font-size: 30px;
	font-weight: bold;
	margin: 0;
}

#page_mv h1 span{
	display: block;
	font-size: 16px;
}

.mv_contact{
	background-image: url(./images/page/mv_contact.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.contact_head{
	margin: 0;
}

.contact_cont{
	width: 850px;
	margin: 0 auto;
}

.contact_head {
    margin: 0;
    padding: 30px 0 60px;
}

#input_plural {
    margin: 10px 0;
}
 
#input_plural input.form-control {
    display: inline-block;
    width: 100%;
    padding: 6px 12px;
    box-sizing: border-box;
    font-size: 14px;
    color: #555;
}
 
#input_plural input.pluralBtn {
    width: 30px;
    height: 30px;
    border: 1px solid #ccc;
    background: #fff;
    border-radius: 5px;
    padding: 0;
    margin: 0;
}

.contact_tt{
	font-size: 20px;
	font-weight: bold;
	margin: 0 0 15px;
}

.contact_dl{
	display: flex;
	flex-wrap: wrap;
	margin: 0;
}

.contact_dl dd{
	margin: 0;
}

.contact_dd1{
	width: 30%;
	padding-right: 30px;
	box-sizing: border-box;
}

.contact_dd2{
	width: 46%;
	padding-right: 30px;
	box-sizing: border-box;
}

.contact_dd3{
	width: 15%;
	padding-right: 30px;
	box-sizing: border-box;
}

.contact_dd4{
	width: 20%;
}

#input_plural{
	position: relative;
}

.add{
	position: absolute;
	top: 4px;
	right: 50px;
}

.del{
	position: absolute;
	top: 4px;
	right: 0px;
}

.contact_product{
	background-color: #fcfcfc;
	padding: 60px 0 0;
	margin: 0px 0;
	overflow: hidden;
}

.contact_attachment{
	background-color: #fcfcfc;
	padding: 40px 0;
	margin: 0px 0;
}

.contact_block dl{
	display: flex;
	flex-wrap: wrap;
	margin: 0;
}

.contact_block dl dt{
	width: 24%;
	margin: 0 0 20px;
	padding: 12px 0 0;
	font-weight: bold;
}

.contact_block dl dd{
	width: 76%;
	margin: 0 0 20px;
	padding: 0;
}

.contact_block{
	padding: 60px 0 90px;
}

.hissu{
	background-color: #0062b2;
	color: #fff;
	display: inline-block;
	padding: 1px 6px;
	border-radius: 2px;
	margin-left: 10px;
}

.contact_block dl dd input{
	padding: 10px 10px;
}

.contact_block dl dd textarea{
	width: 100%;
	height: 11em;
}

.form_submit input[type="submit"] {
    background: #0062b2;
    border: 1px solid #2D9CDB;
    font-size: 18px;
    padding: 16px 24px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    width: 300px;
    display: block;
    margin: 45px auto 0;
    color: #fff;
}

.mv_news{
	background-image: url(./images/page/mv_news.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.col2_wrap{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 20px 0 60px;
}

.col2_wrap .left{
	width: 780px;
}

.col2_wrap .right{
	width: 350px;
	padding: 20px 0 0;
}

.page-template-page-news .news_box_in{
	background-color: #fcfcfc;
}

.page-template-page-news .news_box{
	margin-bottom: 30px;
}

.page_nav {
    padding: 30px 0 90px;
    text-align: center;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    width: 100%;
}

.page_nav span {
    display: inline-block;
    width: 48px;
    height: 48px;
    line-height: 50px;
    font-size: 24px;
    margin: 0 10px;
    background-color: #fcfcfc;
    border: 1px solid #e6e6e6;
}

.page_nav a {
    border: 1px solid #e6e6e6;
    display: inline-block;
    width: 48px;
    height: 48px;
    line-height: 50px;
    font-size: 24px;
    margin: 0 10px;
    text-decoration: none;
}

.page_nav a .fas{
	color: #aaaaaa;
}

.cta_pt4{
	background-color: #fcfcfc;
	padding: 90px 0;
}

.cta_pt4_in{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.cta_pt4_in .left,.cta_pt4_in .right{
	width: 508px;
	margin: 0 30px;
}

.cta_pt4_in .left a:hover,.cta_pt4_in .right a:hover{
	opacity: 0.85;
}

.search_input{
	width: 300px;
	float: left;
	margin: 0;
	box-sizing: border-box;
	border: 1px solid #aaa;
	height: 50px;
	padding: 0 15px;
}

.searchsubmit{
	width: 50px;
	float: left;
	margin: 0;
	box-sizing: border-box;
	background-color: #333;
	color: #fff;
	border: 0;
	height: 50px;
}

.side_tt{
	font-size: 20px;
	font-weight: bold;
	margin: 0 0 20px;
}

.side_tt span{
	display: block;
	font-size: 14px;
	color: #07a3e0;
	margin: -2px 0 0 2px;
}

.side_cat{
	clear: both;
	padding: 40px 0 40px;
}

.side_cat ul{
	margin: 0;
	padding: 0;
}

.side_cat ul li{
	margin: 0 0 10px;
	padding: 0;
	list-style: none;
}

.side_tag ul{
	margin: 0;
	padding: 0;
	overflow: hidden;
}

.side_tag ul li{
	margin: 0 10px 15px 0;
	padding: 0;
	list-style: none;
	float: left;
}

.side_tag ul li a{
	background-color: #e6e6e6;
	color: #666666;
	display: inline-block;
	padding: 4px 10px;
	margin: 00;
}

.mv_ballbearing{
	background-image: url(./images/page/mv_ballbearing.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.bg_ballbearing{
	background-color: #003880;
	overflow: hidden;
}

.bg_ballbearing .breadcrumbs-in{
	color: #fff;
}

.ballbearing_section1{
	background-color: #003880;
	color: #fff;
	text-align: center;
	padding: 30px 0 60px;
}

.ballbearing_css1{
	margin: 0;
	font-size: 30px;
}

.ballbearing_in{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	padding: 30px 0;
}

.ballbearing_in .box{
	width: 220px;
    margin: 0 30px;
    background-color: #fff;
    color: #333;
    border-radius: 50%;
    height: 220px;
  	border-bottom: solid 5px #a0cee1;/*ボタン色より暗めに*/
  	border-right: solid 5px #a0cee1;/*ボタン色より暗めに*/
  	justify-content: center;
	display: flex;
	flex-direction: column;
}

.ballbearing_in .box span{
	display: block;
	font-size: 18px;
	font-weight: bold;
	margin-top: 10px;
}

.ballbearing_css2{
	font-size: 18px;
	margin: 0;
}

.ballbearing_menu{
	background-color: #fcfcfc;
	padding: 30px 0 10px;
}

.ballbearing_menu ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

.ballbearing_menu ul li{
	list-style: none;
	margin: 0 0 20px;
	padding: 0 20px;
	border-right: 1px solid #aaa;
	line-height: 1;
}

.ballbearing_menu ul li:nth-child(1){
    border-left: 1px solid #aaa;
}

.ballbearing_menu ul li a{
	color: #0067b5;
	font-weight: bold;
}

.tt_base2{
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	margin: 0 0 30px;
}

.tt_base2 span{
	display: block;
	font-size: 16px;
	color: #07a3e0;
}

.descption{
	text-align: center;
	margin: 0;
	line-height: 1.8;
}

.ballbearing_section2{
	padding: 60px 0 40px;
}

.ballbearing_list{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding: 40px 0 0px;
}

.ballbearing_list .box{
	width: 380px;
	padding: 10px 10px 10px 145px;
	margin-bottom: 30px;
	box-sizing: border-box;
	position: relative;
	min-height: 140px;
	border: 1px solid #e6e6e6;
	background-color: #fff;
}

.ballbearing_thum{
	position: absolute;
	top: 10px;
	left: 10px;
	width: 120px;
	height: 120px;
	background-color: #eee;
}

.ballbearing_list .box h3{
	font-size: 18px;
	font-weight: bold;
	margin:0 0 10px;
}

.ballbearing_list .box p{
	margin: 0;
}

.ballbearing_section3{
	padding: 60px 0;
	background-color: #fcfcfc;
}

.ballbearing_dl{
	display: flex;
	flex-wrap: wrap;
	width: 740px;
	margin: 30px auto 0px;
}

.ballbearing_dl dt{
	width: 19%;
	margin: 0;
	padding: 0;
	font-weight: bold;
}

.ballbearing_dl dd{
	width: 81%;
	margin: 0;
	padding: 0;
}

.ballbearing_section4{
	padding: 60px 0;
}

.ballbearing_section5{
	padding: 60px 0 0;
	background-color: #fcfcfc;
}

.case_lead{
	margin: 0 0 30px;
	padding: 20px 0 0;
}

.mv_case-study{
	background-image: url(./images/page/mv_case-study.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.case_list{
	border-top: 1px solid #e6e6e6;
}

.case_list .box{
	border-bottom: 1px solid #e6e6e6;
	padding: 30px 220px 30px 0;
	position: relative;
	min-height: 202px;
    box-sizing: border-box;
}

.case_tumb{
	position: absolute;
	top: 30px;
	right: 0;
	width: 190px;
	height: 142px;
	background-color: #d1dae1;
}

.case_txt1{
	color: #0062b2;
	font-size: 14px;
	display: block;
	line-height: 1;
	margin-bottom: 10px;
}

.case_list .box h2{
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 5px;
}

.case_txt2{
	font-size: 14px;
	display: block;
	line-height: 1;
	margin-bottom: 20px;
}

.case_tag{
	overflow: hidden;
	margin: 0;
	padding: 0;
}

.case_tag li{
	list-style: none;
	margin: 0 5px 5px 0;
	float: left;
	padding: 0;
	padding: 2px 8px;
	background-color: #e6e6e6;
	border-radius: 2px;
	overflow: hidden;
}

.products_lead_txt1{
	display: block;
	text-align: center;
	font-size: 30px;
	margin: 0 0 20px;
}

.products_lead{
	padding: 60px 0;
}

.products_lead p{
	text-align: center;
	font-size: 18px;
	margin: 0 0 60px;
}

.products_lead_in ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.products_lead_in ul li{
	width: 49%;
	margin: 0;
	padding: 10px 0px 10px 40px;
	box-sizing: border-box;
	list-style: none;
	background-image: url(./images/page/products_check2.png);
	background-repeat: no-repeat;
	background-size: 28px;
	background-position: center left;
}

.products_lead_in{
	border: 2px solid #e5e5e5;
	position: relative;
	padding: 45px 60px 35px;
	box-sizing: border-box;
}

.products_lead_txt2{
	position: absolute;
	top: -14px;
	left: 0;
	display: block;
	width: 100%;
	text-align: center;
	color: #06a3e0;
	font-size: 18px;
	font-weight: bold;
}

.products_lead_txt2 span{
	background-color: #fff;
	padding: 0 10px;
}

.mv_products{
	background-image: url(./images/page/mv_products.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.products_wrap h2{
	font-size: 30px;
	text-align: center;
	margin: 0 0 30px;
	font-weight: bold;
}

.products_wrap h2 span{
	display: block;
	font-size: 14px;
	color: #aaaaaa;
}

.products_wrap{
	padding: 60px 0;
}

.products_menu ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	box-sizing: border-box;
	font-size: 22px;
}

.products_menu ul li{
	list-style: none;
	margin: 0;
	padding: 0;
	border-right: 1px solid #aaa;
	line-height: 1;
	box-sizing: border-box;
}

.products_menu ul li:nth-child(1){
	border-left: 1px solid #aaa;
}

.products_menu ul li a{
	color: #0067b5;
	display: inline-block;
	padding: 0 4px;
	padding: 0 15px;
}

.products_wrap h3{
	background-color: #e6e6e6;
	padding: 6px 10px 4px;
	font-weight: bold;
	font-size: 24px;
	position: relative;
}

.products_wrap h3 .to-menu{
	position: absolute;
    top: 7px;
    right: 15px;
    width: 26px;
}

.products_data{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.products_data .box{
	width: 175px;
	margin:0 30px 30px 0;
	list-style: none;
}

.products_data a:nth-child(6n) li{
	margin-right: 0;
}

.products_tumb{
	width: 175px;
	height: 130px;
	overflow: hidden;
	border: 1px solid #e6e6e6;
	box-sizing: border-box;
}

.products_data h4{
	font-weight: bold;
	margin: 8px 0 4px;
	font-size: 14px;
}

.products_company1{
	display: block;
	font-size: 12px;
	line-height: 1.3;
	color: #666;
}

.products_company2{
	display: block;
	font-size: 12px;
	line-height: 1.3;
	color: #666;
}

.products_menu{
	margin: 0 0 60px;
}

.mv_faq{
	background-image: url(./images/page/mv_faq.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.faq_cont h2{
	font-size: 24px;
	font-weight: bold;
	margin: 0 0 30px;
	text-align: center;
}

.faq_cate_menu{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 40px;
}

.faq_cate_menu li{
	list-style: none;
	margin: 0 0 20px;
	padding: 0;
	text-align: center;
	width: 23.5%;
}

.faq_cate_menu li a{
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid #0067b5;
	font-size: 16px;
	font-weight: bold;
	padding: 18px 0;
	box-sizing: border-box;
}

.faq_cate_menu li a:hover{
	background-color: #0067b5;
	color: #fff;
}

.faq_search_input{
	width: 600px;
	float: left;
	margin: 0;
	box-sizing: border-box;
	border: 1px solid #0067b5;
	height: 50px;
	padding: 0 15px;
}

.faq_searchsubmit{
	width: 120px;
	float: left;
	margin: 0;
	box-sizing: border-box;
	background-color: #0067b5;
	color: #fff;
	border: 0;
	height: 50px;
	background-image: url(./images/page/faq_searchsubmit.png);
	background-repeat: no-repeat;
	background-repeat: no-repeat;
    background-position: 24px 14px;
    font-size: 16px;
    font-weight: bold;
    letter-spacing: 2px;
    padding-left: 30px;
}

.faq_search_box{
	width: 720px;
	margin: 0 auto 60px;
	overflow: hidden;
}

.faq_type_menu{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	background-color: #fcfcfc;
	padding: 20px 30px;
}

.faq_type_menu li{
	list-style: none;
	margin: 0;
	padding:5px 30px;
	width: 25%;
	box-sizing: border-box;
}

.faq_col2{
	display: flex;
	flex-wrap: wrap;
	padding: 60px 0;
	justify-content: space-between;
}

.faq_col2 .left{
	width: 50%;
	padding: 0 15px 0 0;
	box-sizing: border-box;
}

.faq_col2 .right{
	width: 50%;
	padding: 0 0 0 15px;
	box-sizing: border-box;
}

.faq_list_ul{
	border-top: 1px solid #e6e6e6;
}

.faq_list_ul li{
	border-bottom: 1px solid #e6e6e6;
	padding: 15px 20px 15px 50px;
	list-style: none;
	background-image: url(./images/page/faq_col2_icon.png);
	background-repeat: no-repeat;
	background-position: center left;
	background-size: 34px;
	position: relative;
}

.faq_list_ul li .fas{
	position: absolute;
	top: 19px;
	right: 2px;
	color: #0067b5;
}

.faq_list_ul li .new{
	color: #ff4a20;
	font-size: 12px;
	margin: 0 10px;
	font-weight: bold;
}

.faq_cont{
	padding: 30px 0;
}

.mv_about{
	background-image: url(./images/page/mv_about.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.about_lead{
	padding: 60px 0;
	text-align: center;
}

.about_lead h2{
	margin: 0 0 30px;
	font-size: 30px;
}

.about_lead p{
	margin: 0 0 60px;
	line-height: 1.8;
}

.about_lead_in {
    border: 2px solid #e5e5e5;
    position: relative;
    padding: 45px 60px 35px;
    box-sizing: border-box;
    width: 780px;
    margin: 0 auto;
}

.about_lead_txt2 {
    position: absolute;
    top: -14px;
    left: 0;
    display: block;
    width: 100%;
    text-align: center;
    color: #06a3e0;
    font-size: 18px;
    font-weight: bold;
}

.about_lead_txt2 span {
    background-color: #fff;
    padding: 0 10px;
}

.about_lead_in ul {
    display: flex;
    flex-wrap: wrap;
}

.about_lead_in ul li {
    width: 100%;
    margin: 0;
    padding: 10px 0 10px 40px;
    box-sizing: border-box;
    list-style: none;
    background-image: url(./images/page/products_check2.png);
    background-repeat: no-repeat;
    background-size: 28px;
    background-position: center left;
    text-align: left;
}

.about_lead_in ul li span ,.products_lead_in ul li span{
	background: -webkit-linear-gradient(transparent 60%, #ffff7f 60%);
	background: -o-linear-gradient(transparent 60%, #ffff7f 60%);
	background: linear-gradient(transparent 60%, #ffff7f 60%);
	font-weight: bold;
}

.about_col2{
	height: 400px;
	display: flex;
	flex-wrap: wrap;
	margin: 0 0 60px;
}

.about_col2 .left{
	width: 50%;
	height: 100%;
	padding: 0 30px 0 0;
	box-sizing: border-box;
}

.about_col2 .left .left_in{
	width: 100%;
	height: 100%;
	background-repeat: no-repeat;
	background-size: cover;
	background-position: center;
}

.about_col2 .right{
	width: 50%;
	height: 100%;
	justify-content: center;
	display: flex;
	flex-direction: column;
	padding: 0 30px;
	box-sizing: border-box;
}

.about_tt{
	font-size: 30px;
	font-weight: bold;
	text-align: center;
	margin: 0 0 40px;
	line-height: 1.4;
}

.about_tt span{
	color: #07a3e0;
	font-size:18px;
	display: block;
}

.about_section1{
	padding: 90px 0;
}

.strength1 .left .left_in{
	background-image: url(./images/page/strength1.jpg);
}

.strength2 .left .left_in{
	background-image: url(./images/page/strength2.jpg);
}

.strength3 .left .left_in{
	background-image: url(./images/page/strength3.jpg);
}

.about_col2 .right h4{
	font-size: 24px;
    font-weight: bold;
    margin: 0 0 0px;
    position: relative;
    z-index: 100;
    background-repeat: no-repeat;
    padding: 45px 0 20px;
}

.strength1 .right h4{
	background-image: url(./images/page/strength1_tt.png);
}

.strength2 .right h4{
	background-image: url(./images/page/strength2_tt.png);
}

.strength3 .right h4{
	background-image: url(./images/page/strength3_tt.png);
}

.strength2 .right{
	order: 1;
}

.strength2 .left{
	order: 2;
	padding: 0 0 0 30px;
}

.strength2 .right .right_in{
	max-width: 570px;
	margin-left: auto;
}

.about_col2 .right p{
	max-width: 570px;
    margin: 0 0 30px;
}

.about_col2 .right a{
	background-color: #0067b5;
	color: #fff;
	display: block;
	width: 210px;
	height: 54px;
	line-height: 54px;
	text-align: center;
	font-size: 16px;
}

.about_col2 .right a:hover{
	opacity:0.85;
}

.about_message{
	width: 1200px;
    margin: 0 auto 60px;
    background-image: url(./images/page/about_section2_bg.jpg);
    position: relative;
    padding: 60px 60px 60px 420px;
    box-sizing: border-box;
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.about_message_img{
	position: absolute;
	bottom: 0;
	left: 60px;
}

.about_message_txt1{
	font-family: 'Noto Sans', 'Noto Sans CJK JP', 'Noto Sans CJK JP Subset', sans-serif;
	font-size: 26px;
	margin: 0 0 30px;
	display: block;
}

.about_message_txt2{
	font-size: 14px;
	line-height: 1.8;
	margin: 0 0 10px;
}

.about_message_txt3{
	font-size: 22px;
	font-weight: bold;
	text-align: right;
	margin: 0;
}

.about_message_txt3 span{
	font-size: 14px;
	margin-right: 10px;
}

.about_message_txt4{
	width: 850px;
	margin: 0 auto;
}

.about_message_txt4 h4{
	font-size: 20px;
	font-weight: bold;
	margin: 0 0 20px;
	padding: 0 0 0 30px;
	position: relative;
}

.about_message_txt4 h4:before{
	content: "";
	width: 20px;
	height: 2px;
	background-color: #838181;
	position: absolute;
	top: 15px;
	left: 0;
}

.about_message_txt4 p{
	line-height: 1.8;
	margin: 0 0 30px;
}

.about_message_txt4 img{
	margin: 10px 0 40px;
}

.about_section3{
	padding: 90px 0;
	background-color: #fcfcfc;
}

.about_section2{
	padding: 0 0 60px;
}

.about_section3 dl{
	display: flex;
	flex-wrap: wrap;
	width: 850px;
	margin: 0 auto;
}

.about_section3 dl dt{
	width: 180px;
	padding: 12px 12px;
	box-sizing: border-box;
	border-bottom: 1px solid #0062b2;
	color: #0062b2;
	line-height: 2;
	font-weight: bold;
}

.about_section3 dl dd{
	width: 670px;
	padding: 12px 12px;
	box-sizing: border-box;
	border-bottom: 1px solid #e0e0e0;
	line-height: 2;
}

.about_map{
	height: 400px;
	background-color: #eee;
}

.about_map iframe{
	width: 100%;
	height: 100%;
}

.about_section4{
	padding: 90px 0;
}

.about_media{
	display: flex;
	flex-wrap: wrap;
}

.about_media .left{
	width: 50%;
	background-image: url(./images/page/media_contact.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

.about_media .right{
	width: 50%;
	padding: 0 0 0 60px;
	box-sizing: border-box;
	line-height: 1.8;
}

.media_contact{
	background-color: #fafafa;
    border: 1px solid #eee;
    width: 380px;
    padding: 20px 30px;
}

.media_contact span{
	display: block;
	font-weight: bold;
}

.media_contact p{
	margin: 0;
}

.mv_flow{
	background-image: url(./images/page/mv_flow.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

.flow_box{
	display: flex;
	flex-wrap: wrap;
	border-bottom: 2px solid #e6e6e6;
	position: relative;
	padding: 60px 0;
}

.flow_box .left{
	width: 25.5%;
}

.flow_box .right{
	width: 74.5%;
	padding: 0 0 0 60px;
    box-sizing: border-box;
    line-height: 2;
}

.flow_box_wrap{
	padding: 0px 0;
	margin-top: -30px;
}

.flow_box .right h2{
	font-size: 24px;
	font-weight: bold;
	margin: 0 0 20px;
	padding: 2px 0 2px 60px;
	position: relative;
	background-repeat: no-repeat;
	background-position: 0 0;
}

.flow_num1 h2{
	background-image: url(./images/page/flow_num1.png);
}

.flow_num2 h2{
	background-image: url(./images/page/flow_num2.png);
}

.flow_num3 h2{
	background-image: url(./images/page/flow_num3.png);
}

.flow_num4 h2{
	background-image: url(./images/page/flow_num4.png);
}

.flow_num5 h2{
	background-image: url(./images/page/flow_num5.png);
}

.flow_box .right p{
	margin: 0;
}

.flow_ul_pt1{
	padding: 30px 25px 0;
	line-height: 1.4;
}

.flow_ul_pt1 li{
	list-style: none;
	margin: 0;
}

.flow_ul_pt1_txt1{
	font-weight: bold;
	font-size: 20px;
}

.flow_ul_pt1_txt1 span{
	font-size: 14px;
}

.flow_box a{
	color: #0067b5;
}

.flow_box:after{
	content: "";
	width: 93px;
	height: 39px;
	background-image: url(./images/page/flow_box_parts.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	position: absolute;
	bottom: -39px;
	left: 50%;
	margin-left: -46px;
}

.flow_box .right h3{
	font-size: 18px;
	font-weight: bold;
	margin: 0px 0 10px;
}

.flow_dl_pt1{
	display: flex;
	flex-wrap: wrap;
	margin: 0 ;
	width: 480px;
	border-bottom: 1px solid #e6e6e6;
	border-right: 1px solid #e6e6e6;
	border-left: 1px solid #e6e6e6;
}

.flow_dl_pt1 dt{
	width: 30%;
	text-align: center;
	font-weight: bold;
	background-color: #fcfcfc;
	border-top: 1px solid #e6e6e6;
	padding: 10px 0;
	box-sizing: border-box;
}

.flow_dl_pt1 dd{
	width: 70%;
	border-top: 1px solid #e6e6e6;
	padding: 10px 10px;
	box-sizing: border-box;
}

.flow_num3 ol{
	padding: 0;
}

.flow_num3 ol li{
	list-style: none;
	position: relative;
	padding: 0 0 0 24px;
	margin: 0 0 20px;
}

.flow_num3 ol li:nth-child(2){
	margin: 0;
}

.flow_num3 ol li:nth-child(1):before{
	content: "1.";
	font-weight: bold;
	position: absolute;
	top: -4px;
	left: 0;
	color: #003880;
	font-size: 18px;
}

.flow_num3 ol li:nth-child(2):before{
	content: "2.";
	font-weight: bold;
	position: absolute;
	top: -4px;
	left: 0;
	color: #003880;
	font-size: 18px;
}

.flow_num2 .right p{
	margin-bottom: 30px;
}

.news_detail_tt{
	margin: 0 0 20px;
	padding: 20px 0 0;
	font-size: 24px;
	font-weight: bold;
}

.news_data{
	display: flex;
	flex-wrap: wrap;
	color: #666666;
	background-color: #fafafa;
	padding: 10px;
	margin-bottom: 30px;
}

.news_data li{
	list-style: none;
	margin: 0;
	padding: 0 12px;
}

.news_data li .fas,.news_data li .far{
	color: #07a3e0;
	margin-right: 4px;
}

.article-body{
	padding: 30px 0;
}

.article-body h2{
	border-left: 6px solid #333;
	padding: 2px 0 2px 10px;
	margin: 45px 0 30px;
	font-size: 24px;
	font-weight: bold;
}

.article-body p{
	font-size: 16px;
	line-height: 1.8;
	margin: 0 0 30px;
}

.article-body h3{
	margin: 45px 0 30px;
	font-size: 18px;
	font-weight: bold;
}

.sns-box{
	display: flex;
	flex-wrap: wrap;
	border-top: 1px solid #e6e6e6;
	border-bottom: 1px solid #e6e6e6;
	padding: 30px 0;
}

.sns-box li{
	list-style: none;
	margin: 0 10px;
	width: 130px;
    height: 50px;
	text-align: center;
	justify-content: center;
	display: flex;
	flex-direction: column;
	border-radius: 4px;
	overflow: hidden;
}

.sns-box li a{
	color: #fff;
	display: block;
	width: 100%;
	height: 100%;
	line-height: 50px;
    font-size: 14px;
    font-weight: bold;
    letter-spacing: 0.05em;
}

.sns-box li a:hover{
	opacity: 0.85;
}

.b-pocket a{
	background-color: #ef4056;
}

.b-hatena a{
    background-color: #00a4de;
}

.b-twitter a{
    background: #1da1f2;
}

.b-facebook a{
    background: #1877f2;
}

.b-line a{
    background: #00b900;
}

.sns-box li a i{
	font-size: 18px;
    margin: -4px 6px 0px 0;
    vertical-align: middle;
}

.icon-hatenabook{
	background-image: url(./images/common/i_hatebu.png);
	background-repeat: no-repeat;
	background-position: 0 16px;
	background-size: 20px;
	display: inline-block;
	padding: 0 2px 0 24px;
}

.icon-line{
	background-image: url(./images/common/i_line.png);
	background-repeat: no-repeat;
	background-position: 0 10px;
	background-size: 30px;
	display: inline-block;
	padding: 0 12px 0 34px;
}

.share_tt{
	display: block;
	font-weight: bold;
	font-size: 20px;
	margin: 0 0 10px;
}

.news_prevnext{
	display: flex;
	flex-wrap: wrap;
	padding: 60px 0 0;
}

.news_prevnext .left{
	width: 50%;
	padding: 0 15px 0 0;
	box-sizing: border-box;
}

.news_prevnext .right{
	width: 50%;
	padding: 0 0 0 15px;
	box-sizing: border-box;
}

.news_link1{
	display: block;
	color: #848484;
	margin: 0 0 10px;
}

.news_prevnext a{
	color: #0062b2;
}

.news_prevnext .left .news_link1{
	background-image: url(./images/common/prev_icon.png);
    background-repeat: no-repeat;
    background-position: center left;
    background-size: 9px;
    padding: 0 0 0 18px;
}

.news_prevnext .right .news_link1{
	background-image: url(./images/common/next_icon.png);
    background-repeat: no-repeat;
    background-position: center right;
    background-size: 9px;
    padding: 0 18px 0 0;
    text-align: right;
}

.news_prevnext .news_link2 a{
	color: #333;
	font-weight: bold;
}

.news_prevnext .right .news_link2 {
	text-align: right;
}

.archive-title{
	font-size: 22px;
	font-weight: bold;
	margin: 0 0 45px;
}

.mv_ballbearing_d{
	background-image: url(./images/page/mv_ballbearing_d.jpg);
	background-size: cover;
	background-repeat: no-repeat;
	background-position: center center;
}

#ballbearing_d_mv{
	height: 200px;
	background-color: #eee;
	padding: 30px 0;
	box-sizing: border-box;
}

.mv_page2{
	display: flex;
	flex-wrap: wrap;
	height: 140px;
}

.mv_page2 .left{
	width: 34%;
	justify-content: center;
	display: flex;
	flex-direction: column;
	border-right: 1px solid #e6e6e6;
	box-sizing: border-box;
	padding-right: 15px;
}

.mv_page2 .right{
	width: 66%;
	justify-content: center;
	display: flex;
	flex-direction: column;
	padding: 0 30px;
	box-sizing: border-box;
}

.mv_page2 h1{
	margin: 0;
	font-size: 30px;
	font-weight: bold;
}

.ballbearing_d_img{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	padding: 20px 0 40px;
}

.ballbearing_d_img .box{
	width: 240px;
}

.ballbearing_d_img .box:nth-child(2){
	margin: 0 3.8%;
}

.ballbearing_d_img .box img{
	border:1px solid #dddddd;
	box-sizing: border-box;
}

.ballbearing_d_tt{
	font-size: 20px;
	font-weight: bold;
	margin: 0 0 20px;
	padding: 8px 12px;
	background-color: #ececec;
}

.ballbearing_d_section1 ul{
	margin: 20px 0 0;
	padding: 0;
}

.ballbearing_d_section7 p{
	margin: 0 0 20px;
}

.ballbearing_d_section1 ul li{
	padding: 6px 0 6px 38px;
    list-style: none;
    background-image: url(./images/page/icon_ballbearing_d_section1.png);
    background-size: 28px;
    background-repeat: no-repeat;
    background-position: center left;
    margin: 0 0 10px;
}

.ballbearing_d_section1{
	padding: 0 0 40px;
}

.ballbearing_d_section2 dl ,.b_d_dl2{
	display: flex;
	flex-wrap: wrap;
	margin: 8px 0 60px;
}

.ballbearing_d_section2 dl dt,.b_d_dl2 dt{
	width: 22%;
	margin: 0;
	padding: 12px 0;
	box-sizing: border-box;
	color: #003880;
	font-weight: bold;
	border-bottom: 1px solid #003880;
	text-align: center;
	justify-content: center;
	display: flex;
	flex-direction: column;
}

.ballbearing_d_section2 dl dd,.b_d_dl2 dd{
	width: 78%;
	margin: 0;
	padding: 12px 12px;
	box-sizing: border-box;
	border-bottom: 1px solid #e6e6e6;
}

.b_d_dl{
	display: flex;
	flex-wrap: wrap;
	margin: 8px 0 60px;
}

.b_d_dl dt{
	width: 60%;
	margin: 0;
	padding: 12px 0;
	box-sizing: border-box;
	color: #003880;
	font-weight: bold;
	border-bottom: 1px solid #003880;
	text-align: center;
	justify-content: center;
	display: flex;
	flex-direction: column;
}

.b_d_dl dd{
	width: 40%;
	margin: 0;
	padding: 12px 12px;
	box-sizing: border-box;
	text-align: center;
	border-bottom: 1px solid #e6e6e6;
}

.ballbearing_d_section3 ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
	padding: 20px 0 40px;
}

.ballbearing_d_section3 ul li{
	list-style: none;
	background-color: #003880;
	color: #fff;
	width: 94px;
	height: 94px;
	text-align: center;
	margin-right: 20px;
	justify-content: center;
	display: flex;
	flex-direction: column;
	position: relative;
}

.ballbearing_d_section3 ul li:last-child{
	margin-right: 0;
}

.ballbearing_d_section3 ul li:after{
    background-image: url(./images/page/icon_ballbearing_d_section3.png);
    background-size: 10px;
    background-repeat: no-repeat;
	content: "";
	width: 10px;
    height: 14px;
    position: absolute;
    top: 40px;
    right: -15px;
}

.ballbearing_d_section3 ul li:last-child:after{
	width: 0;
}

.ballbearing_d_tt2{
	color: #003880;
	font-size: 14px;
	margin: 20px 0 20px;
	border-bottom: 1px solid #003880;
	font-weight: bold;
	padding: 8px 0;
}

.ballbearing_d_section4 p{
	margin: 0;
	line-height: 1.8;
}

.ballbearing_d_section4 ul{
	padding: 0 0 0 18px;
}

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

.ballbearing_d_section5 ul li{
	list-style: none;
	margin: 0 0 10px;
}

.ballbearing_d_section6{
	background-color: #eff5f9;
	border: 1px solid #c0d0dc;
	padding: 40px 50px;
	margin: 0;
	line-height: 2;
	margin: 0 0 40px;
}

.ballbearing_d_section7{
	margin: 0 0 40px;
}

.ballbearing_d_section6 ul{
	padding: 0 0 0 28px;
}

.ballbearing_d_section6 p{
	margin: 0;
}

.ballbearing_d_section5{
	margin: 0 0 60px;
}


#accordion{
  position:relative;
  margin: 0 auto;
  padding: 0;
}
#accordion input{
  position:absolute;
  height: 0;
  padding: 0;
}
#accordion div div{
  position: relative;
  padding: 15px 18px;
  font-weight: bold;
  border-bottom: 1px solid #e6e6e6;
}
#accordion label:first-child div div{
  font-weight: bold;
	border-bottom: 1px solid #e6e6e6;
}
#accordion label:last-child div div{
}
#accordion div div:hover{
  color: #003880;
  cursor: pointer;
}
#accordion div div:after{
  position:absolute;
  top: 22px;
  right: 18px;
  color: #2f7f99;
  font: 20px 'Typicons';
  content: "";
  background-image: url(./images/page/icon_ballbearing_side.png);
  width: 10px;
  height: 6px;
  background-size: 10px;
  -moz-transition: .3s;
  -webkit-transition: .3s;
  -o-transition: .3s;
  -ms-transition: .3s;
  transition: .3s;
}
#accordion input:checked + div div:after{
  top: 22px;
  right: 18px;
  -moz-transform: rotate(180deg);
  -webkit-transform: rotate(180deg);
  -o-transform: rotate(180deg);
  -ms-transform: rotate(180deg);
  transform: rotate(180deg);
}
#accordion ul{
  list-style: none;
  margin: 0;
}
#accordion ul li{
	margin: 0;
}
#accordion ul li a{
  display: block;
  overflow: hidden;
  height: 0;
  padding: 0px 36px;
  color: #333;
  text-decoration: none;
  -moz-transition: .3s;
  -webkit-transition: .3s;
  -o-transition: .3s;
  -ms-transition: .3s;
  transition: .3s;
}
#accordion ul li a:hover{
  color: #003880;
}
#accordion input:checked + div ul li a{
  position:relative;
  background: none;
  line-height: 1;
  height: 16px;
  padding: 15px 36px;
  border-bottom: 1px solid #e6e6e6;
}
#accordion input:checked + div ul li:first-child a{
}
#accordion input:checked + div ul li:last-child a{
  border-bottom: 1px solid #d4ebf2;
}
#accordion input:checked + div ul li a:hover{
  color: #003880;
  font-weight: bold;
}

.tt_ballbearing_side{
	background-color: #003880;
	color: #fff;
	font-size: 20px;
	font-weight: bold;
	padding: 18px 18px;
	margin: 0;
}

#accordion input:checked + div ul li a:after{
  position:absolute;
  top: 22px;
  right: 18px;
  color: #2f7f99;
  font: 20px 'Typicons';
  content: "";
  background-image: url(./images/page/icon_ballbearing_side.png);
  width: 10px;
  height: 6px;
  background-size: 10px;
  -moz-transform: rotate(-90deg);
  -webkit-transform: rotate(-90deg);
  -o-transform: rotate(-90deg);
  -ms-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.industry{
	color: #666666;
	display:block;
	margin-bottom: 20px;
	font-weight: bold;
}

.case_d_lead{
	display: flex;
	flex-wrap: wrap;
	margin-bottom: 40px;
}

.case_d_lead .left{
	width: 50%;
}

.case_d_lead .right{
	width: 50%;
	padding: 0 0 0 30px;
	box-sizing: border-box;
}

#case_d p{
	line-height: 1.8;
	margin: 0 0 30px;
}

#case_d .case_d_lead p{
	margin: 0;
}

.case_d_tt{
	font-size: 24px;
	font-weight: bold;
	margin: 0 0 30px;
	border-bottom: 1px solid #aaaaaa;
	padding: 8px 0;
}

.case_d_cont1 h2{
	font-size: 20px;
	font-weight: bold;
	margin: 40px 0 30px;
	background-color: #ececec;
	padding: 8px 16px;
}

.case_d_cont1 h3{
	font-size: 20px;
	font-weight: bold;
	margin: 40px 0 30px;
	padding: 0px 16px;
	border-left: 4px solid #0067b5;
}

.case_d_cont1{
	margin-bottom: 40px;
}

.case_d_cont3{
	margin: 40px 0;
	padding: 28px 40px;
	background-color: #eff5f9;
	border:1px solid #c0d0dc;
}

#case_d .case_d_cont3 p,#case_d .case_d_cont4 p{
	margin: 0;
}

.case_d_cont3 h2{
	font-size: 20px;
	margin: 0 0 10px;
	font-weight: bold;
}

.case_d_cont4{
	margin: 40px 0;
	padding: 28px 40px;
	background-color: #eff5f9;
	border:1px solid #c0d0dc;
}

.case_d_cont4 h2{
	font-size: 20px;
	margin: 0 0 10px;
	font-weight: bold;
}

.case_d_cont4_in{
	display: flex;
	flex-wrap: wrap;
}

.case_d_cont4_in .left{
	width: 20%;
}

.case_d_cont4_in .left img{
	border-radius: 50%;
}

.case_d_cont4_in .right{
	width: 80%;
	padding: 0 0 0 30px;
	box-sizing: border-box;
}

.products_d_img{
	display: flex;
	flex-wrap: wrap;
}

.products_d_img .left_box{
	width: 45%;
}

.products_d_img .left_box img{
	border: 1px solid #dddddd;
	box-sizing: border-box;
}

.products_d_img .right_box{
	width: 55%;
	justify-content: center;
	display: flex;
	flex-direction: column;
	padding-left: 30px;
	box-sizing: border-box;
}

.products_d_img .right_box span{
	font-size: 12px;
	display: block;
}

.products_d_cont ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-start;
}

.products_d_cont ul li{
	list-style: none;
	width: 31%;
	margin: 0 0 20px;
}

.products_d_cont ul li:nth-child(2),.products_d_cont ul li:nth-child(3n+2){
	margin-left:3.5%;
	margin-right:3.5%;
}

.products_d_cont ul li img{
	width: 100%;
	border: 1px solid #dddddd;
	box-sizing: border-box;
}

.products_d_cont ul li span{
	font-weight: bold;
	display: block;
	font-size: 16px;
	text-align: center;
	padding: 10px 0;
}

.products_d_cont ul li span {
    font-size: 12px;
    padding: 6px 0;
}

.faq_dl{
	margin: 20px 0 40px;
	line-height: 2;
}

.faq_dl dt{
	background-image: url(./images/page/faq_q.png);
	background-repeat: no-repeat;
	background-position: 0 10px;
	background-size: 34px;
	font-size: 24px;
	font-weight: bold;
	padding: 4px 0 4px 50px;
	margin-bottom: 20px;
}

.faq_dl dd{
	background-image: url(./images/page/faq_a.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	background-size: 34px;
	font-size: 14px;
	padding: 0px 0 0px 50px;
}

.faq_dl dd p{
	margin: 0;
}

.faq_cate_tt{
	font-weight: bold;
	margin: 20px 0 40px;
	font-size: 24px;
}

.ballbearing_d_tokusyoku{
	padding: 0px 0 20px;
}

.ballbearing_d_tokusyoku p{
	margin: 0 0 20px;
}

.ballbearing_d_tokusyoku_in{
	padding: 20px 0 0;
}

.tt_add001{
	font-size: 14px;
    font-weight: bold;
    margin: 0px 0 20px;
    padding: 0px 12px;
    border-left: 4px solid #0067b5;
}

.ballbearing_d_section_add{
	padding: 0 0 40px;
}


.contact_confirm .contact_tt{
	display: none;
}

.contact_confirm .contact_attachment {
    padding: 20px;
}

.contact_confirm .contact_block dl dt {
    width: 24%;
    margin: 0 0 2px;
    padding: 15px 0;
    border-top: 1px solid #eee;
}

.contact_confirm .contact_block dl dd {
    margin: 0 0 2px;
    padding: 15px 0 15px 30px;
    box-sizing: border-box;
    border-top: 1px solid #eee;
}

.contact_confirm .contact_block dl {
    display: flex;
    flex-wrap: wrap;
    margin: 0;
    border-bottom: 1px solid #eee;
}

.form_back input[type="submit"] {
    background: rgba(255, 255, 255, 0.2);
    border: 1px solid #BDBDBD;
    box-sizing: border-box;
    font-size: 18px;
    padding: 16px 24px;
    -webkit-transition: 0.3s;
    -o-transition: 0.3s;
    transition: 0.3s;
    min-width: 300px;
    margin: 45px auto 0;
}

.contact_confirm .form_bt_wrap {
    display: flex;
    flex-wrap: wrap;
    width: 660px;
    justify-content: space-between;
    margin: 0 auto;
}

.form_comp{
	text-align: center;
	font-size: 16px;
	line-height: 1.8;
	padding: 60px 0;
}

#nav_toggle{
	display: none;
}

.top3_box_in a:hover{
	opacity: 0.85;
}

.totop_add {
    background-color: #0067b5;
    color: #fff;
    width: 210px;
    height: 54px;
    line-height: 56px;
    text-align: center;
    font-size: 16px;
    margin: 90px auto;
    display: block;
}

.totop_add:hover{
	opacity: 0.85;
	color: #fff;
}

.add404{
	padding: 90px 0 0;
	text-align: center;
}

table{
	text-align: center;
}

table td {
    margin: 0;
    padding: 12px 12px;
    box-sizing: border-box;
    border-bottom: 1px solid #e6e6e6;
}

table th {
    margin: 0;
    padding: 12px 0;
    box-sizing: border-box;
    color: #003880;
    font-weight: bold;
    border-bottom: 1px solid #003880;
}