@charset "UTF-8";

/*--------------------------------------------*/
body,input,textarea {
	font-family: "游ゴシック","Yu Gothic","游ゴシック体","YuGothic","メイリオ", meiryo, Osaka, "ヒラギノ角ゴ Pro W3","ＭＳ Ｐゴシック", sans-serif;
	/*
	font-family: "ヒラギノ明朝 Pro","HiraMinPro","ＭＳ 明朝","ＭＳ Ｐ明朝","HG明朝E","MS PMincho",serif;
	font-family: "ＭＳ Ｐゴシック", Osaka, "ヒラギノ角ゴ Pro W3", sans-serif;
	*/
}
* { box-sizing:border-box; }
body {
	margin:0px;
	padding:0px;
	font-size:100%;
	line-height:1em;
	color:#333;
}
header a, footer a{ color:#333; text-decoration:none; display:inline-block; }

h1 { font-size:150%; }
h2 { font-size:140%; }
h3 { font-size:130%; }
h4 { font-size:120%; }
h5 { font-size:100%; }
h6 { font-size:100%; }
h1,h2,h3,h4,h5,h6,div,dl,dt,dd,p,a,table,tr,td,address,img,
header ul, footer ul{
	margin:0px;
	padding:0px;
	line-height:1.5em;
	text-align:left;
	font-style:normal;
	list-style:none outside;
}
ul { margin:1em 0; padding:0 0 0 2em; list-style:none; } li { line-height:1.3em; margin:0 0 .5em; }
header li, footer li { line-height:1em; margin:0; }
i,em { font-style:normal; } u { text-decoration:none; } sup,sub { font-size:60%; }
/*************/
#clear, .clear { clear:both; }
.c { margin-left:auto; margin-right:auto; }
.l { float:left; }
.r { float:right; }
.t_c { text-align:center; }
/*img.l { margin:0 10px 10px 0; }
img.r { margin:0 0 10px 10px; }*/

/* table */
table { width:100%; margin:.5em 0; border-collapse:collapse; border-spacing:0; }
thead th, thead td { background:#9166a9; color:#FFF; font-weight:normal; white-space:normal; }
th,td { border:2px solid #64aae6; padding:30px 20px; min-width:200px; }
th { text-align:center; white-space:nowrap; background:#64aae6; color:#FFF; vertical-align:text-top; }
tr:not(:last-child) th { border-bottom:2px solid #FFF; }

/* * */
.aster li:before { content:"※"; }
.aster li { padding-left:1em; text-indent:-1em; font-size:90%; }

/*
.ph img,
img.ph {
	border:3px solid #FFF;
	box-shadow:2px 2px 3px 2px #CCCCCC;
	-moz-box-shadow:2px 2px 3px 2px #CCCCCC;
	-webkit-box-shadow:2px 2px 3px 2px #CCCCCC;
}

/* -------------------------------------------- */
a:hover     { opacity:.50; text-decoration:none; }
/* nav a:hover { opacity:1; }
/* --------------------------------------------*/

/* btn */
.btn {
	display:block; background:#64aae6; width:320px;
	color:#FFF; text-decoration:none; text-align:center;
	padding:20px 0; position:relative;
}
.btn::after {
	content:""; background:url(../img/btnArrow01.svg) no-repeat; background-size:contain;
	width:8px; height:14px;
	position:absolute; right:20px; top:50%; margin-top:-7px;
}

/* inner */
.inner {
	display:block; width:1000px;
	margin-left:auto; margin-right:auto; padding-left:20px; padding-right:20px;
}

/* flexBox */
.flexBox  { display:flex; justify-content:space-between; flex-wrap:wrap; }
.flexBox2 { display:flex; justify-content:space-between; }

/* boderBox */
.boderBox { border:2px solid #64aae6; padding:40px; }

/* header ********** */
header img, header a { display:block; }

header .flexBox     { margin-left:auto; margin-right:auto; width:1000px; padding:0 20px; align-items:center; }
header .flexBox > p { margin-right:auto; padding:0 20px; }

header .tel   { padding:0 20px; }
header .tel a { margin-bottom:5px; }
header .tel p { text-align:center; }

header .contact a {
	display:flex; justify-content:center; align-items:center;
	background:#64aae6; width:192px; height:50px;
	font-weight:bold; color:#FFF; text-align:center;
}
header .contact a:first-child { border-bottom:1px solid #FFF; }
header .contact a::before {
	content:"";
	background:url(../img/iconKey.svg) no-repeat;
	width:20px; height:21px;
	padding-right:10px;
}
header .contact a:first-child::before {
	background:url(../img/iconMail.svg) no-repeat;
	width:25px; height:18px;
}

header nav { border-top:1px solid #EEE; }
header ul {
	display:flex; justify-content:space-between;
	margin-left:auto; margin-right:auto; padding:0 20px;
	width:1000px;
}
header li { width:50%; font-weight:bold; border-right:1px solid #EEE; position:relative; }
header li:first-child { border-left:1px solid #EEE; }
header li a { padding:80px 0 20px; text-align:center; }
header li span { display:block; color:#64aae6; font-size:0.8em; }
header li a::before {
	content:"";
	background:url(../img/navIconHome.svg) no-repeat;
	width:38px; height:40px;
	position:absolute; left:50%; top:20px;
	margin-left:-19px;
}
header li:nth-child(2) a::before {
	background:url(../img/navIconAbout.svg) no-repeat; width:25px; margin-left:-12px;
}
header li:nth-child(3) a::before {
	background:url(../img/navIconOem.svg) no-repeat; width:36px; margin-left:-18px;
}
header li:nth-child(4) a::before {
	background:url(../img/navIconShakeoriginal.svg) no-repeat; width:50px; margin-left:-25px;
}
header li:nth-child(5) a::before {
	background:url(../img/navIconSundries.svg) no-repeat; width:40px; height:38px; margin-left:-20px;
}


/* mv ********** */
#mv        { background:url(../img/mv.jpg) no-repeat center; background-size:cover; height:300px; }
#mv .inner { display:flex; justify-content:center; align-items:center; height:100%; }
#mv h2     { color:#FFF; font-size:2em; }

/* main ********** */
main         { padding-bottom:80px; }
main section { padding-top:80px; }
main a { color:#64aae6; font-weight:bold; }
h2 {  }
h3 { font-size:2em; text-align:center; line-height:0.8em; margin-bottom:40px; }
h3 span { font-size:0.8rem; color:#64aae6; }
.bg { background:rgba(255,255,255,100) url(../img/bg01.svg) center; }

/* sundries */
#sundries { background:#64aae6; padding-bottom:80px; color:#FFF; }
#sundries h3 ,#sundries h3 span { color:#FFF; }
#sundries ul { padding:0; flex-wrap:nowrap; margin-bottom:40px; }
#sundries li {
	display:flex; justify-content:center; align-items:center; border:2px solid #FFF;
	width:50%; height:100px; margin-bottom:0; font-weight:bold;
}
#sundries li:not(:first-child) { margin-left:10px; }
#sundries p            { text-align:center; margin-bottom:40px; }
#sundries p:last-child { margin-bottom:0; }
#sundries .btn { margin:auto; background:#FFF; color:#64aae6; }
#sundries .btn::after { background:url(../img/btnArrow02.svg) no-repeat; }


/* news cms追加 20240628 */
#news    { padding-bottom:80px; }
#news ul { padding:0; margin:0; }
#news li { padding:20px 0 10px; margin-bottom:0; }
#news li:first-child       { padding-top:0; }
#news li:not(:first-child) { border-top:1px solid #EEE; margin-top:10px; }
#news .btn { margin:40px auto 0; }
.newMark { font-weight:bold; color:red; margin-left:.5em; }

/* pagetop */
.pagetop   {  }


/* footer ********** */
footer img, footer a { display:block; }

footer { background:#64aae6; padding:80px 0; position:relative; }
footer::before {
	content:"";
	background:url(../img/border.svg) repeat-x;
	width:100%; height:10px;
	position:absolute; left:0; top:0;
}

footer .inner  { display:flex; justify-content:space-between; }
footer address { width:200px; color:#FFF; }
footer address p             { font-size:0.8em; }
footer address p:first-child { margin-bottom:20px; }
footer address > a              { margin-bottom:20px; }
footer address > a:nth-child(2) { margin-bottom:5px; }
footer address img { width:100%; }

footer nav   { display:flex; justify-content:space-between; width:700px; }
footer nav li { position:relative; padding-left:20px; }
footer nav li a::before {
	content:"";
	background:url(../img/iconArrow.svg) no-repeat;
	width:14px; height:9px;
	position:absolute; left:4px; top:50%;
	margin-top:-4.5px;
}
footer nav .key a::before {
	background:url(../img/iconKey.svg) no-repeat;
	background-size:cover;
	width:14px; height:14px;
	left:0;
	margin-top:-7px;
}
footer nav a { color:#FFF; line-height:2.5em; font-weight:bold; }


/* copyright */
.copyright { width:960px; margin:auto; text-align:right; color:#FFF; }
.copyright small { font-size:0.8rem; }


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

/* clearfix */
.clearfix:after { content:"."; display:block; height:0; clear:both; visibility:hidden; }
.clearfix { display:inline-block; }
/* ¥*/
* html .clearfix { height:1%; }
.clearfix { display:block; }
/* */
.clearfix:after { content:""; }

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

/* info-not 工事中 */
.info-not {
	padding:200px 15px;
	border:1px solid #CCC; border-radius:15px;
	background:#EEE;
	text-align:center; letter-spacing:.2em;
}

