@charset "utf-8";

a { color:#666; }
a img:hover { opacity:0.8; }

:placeholder-shown { color: #999; }
::-webkit-input-placeholder { color: #999; }
:-moz-placeholder { color: #999; opacity: 1; }
::-moz-placeholder { color: #999; opacity: 1; }
:-ms-input-placeholder { color: #999; }

img {
	width:100%;
	max-width:100%;
	-webkit-backface-visibility: hidden;
}
@font-face {
	font-family: 'MyYuGothicM';
	font-weight: normal;
	src: local('YuGothic-Medium'), /* PostScript Name = localの正式な指定方法 */
	local('Yu Gothic Medium'),     /* PostScript Nameを認識できないChrome用にFull Nameを指定 */
	local('YuGothic-Regular');     /* 游ゴシックMediumが存在しないWindows8.1用 */
}
@font-face {
	font-family: 'MyYuGothicM';
	font-weight: bold;
	src: local('YuGothic-Bold'), /* PostScript Name = localの正式な指定方法 */
	local('Yu Gothic');          /* PostScript Nameを認識できないChrome用にFull Nameを指定 */
}

.switch{}
html {
	-webkit-text-size-adjust: none;
}
body {
	color:#666;
	font-size:15px;
	font-size:3.199999992vw;
	font-family:"ヒラギノ角ゴシック Pro",
							"Hiragino Kaku Gothic Pro",
							"メイリオ",
							Meiryo,
							Osaka,
							"ＭＳ Ｐゴシック",
							"MS PGothic",
							sans-serif;
	width:100%;
	line-height:1.7;
	-webkit-text-size-adjust: 100%;
}

#header {
	width:100%;
	position:fixed;
	background:#fff;
	z-index:9999;
}
#logo {
	width:26.26666666666667%;
}
#navi {
	width:64%;
	float:right;
}
#navi li {
	width:25%;
	float:left;
}

#wrap {
	padding-top:13.33333333333333%;
}

#mv {
	background:url(../images/bg_mv_sp.jpg) top center no-repeat;
	background-size:100% auto;
	padding-bottom:113.3333333333333%;
	position:relative;
}
#mv img {
	position:absolute;
	left:0;
	bottom:9%;
}
h2 {
	text-align:center;
	padding-top:10.43478260869565%;
	padding-bottom:8.115942028985507%;
}
h3 {
	padding-bottom:7.826086956521739%;
}
.inner {
	width:92%;
	margin-left:auto;
	margin-right:auto;
}

#service {
	padding-bottom:9.866666666666667%;
}
#service .inner > p {
	font-size:3.466666658vw; /* 26px */
	margin-bottom:8.115942028985507%;
}
#service .cf div {
	width:50%;
	float:left;
	padding-bottom:7.066666666666667%;
}
#service .cf div h4,
#service .cf div p {
	margin-left:8%;
	margin-right:8%;
}
#service .cf div h4 {
	margin-top:9.333333333333333%;
	margin-bottom:3.733333333333333%;
}

#aboutus {
	background:#f6f6f6;
}
#aboutus .inner{
	padding-bottom:5.333333333333333%;
}
#aboutus dl {
	width:100%;
	display:table;
}
#aboutus dt,
#aboutus dd {
	font-size:3.466666658vw; /* 26px */
	padding:3%;
	border:1px solid #ddd;
	margin-bottom:3.91304347826087%;
}
#aboutus dt {
	color:#fff;
	font-weight:bold;
	background:#0068bc;
	width:26.3768115942029%;
	float:left;
}
#aboutus dd {
	padding-left:29.3768115942029%;
	background:#fff;
}
#aboutus #map {
	height:550px;
}

#message {
	background:url(../images/bg_message.png) top left no-repeat;
	background-size:cover;
	padding-bottom:13.2%;
}
#message h2 {
	padding-top:13.2%;
}
#message .box {
	font-size:3.466666658vw; /* 26px */
	background:url(../images/top_box.png) top center no-repeat, url(../images/btm_box.png) bottom center no-repeat, url(../images/bg_box.png) top center repeat-y;
	background-size:100% auto;
	padding:10.43478260869565% 7.536231884057971%;
}
#message .box p {
	margin-bottom:1em;
}
#message .box p .br {
	display:none;
}
#message .box p.signature {
	font-size:2.933333326vw;
	text-align:right;
	margin-bottom:0;
}

#contact {
	padding-bottom:12.26666666666667%;
}
#contact h2 {
	padding-top:13.86666666666667%;
	padding-bottom:6%;
}
#contact p {
	font-size:2.933333326vw;
	font-weight:bold;
	margin-top:25px; /* 25px */
	margin-bottom:1.594202898550725%;
}
#contact p span {
	color:#ff0101;
	font-size:2.2vw;
	font-weight:normal;
	border:1px solid #ff0101;
	margin-left:0.5em;
	padding:1px 6px;
	margin-top:-2%;
	display:inline-block;
}
#contact input {
	font-size:16px;
/*	font-size:3.466666658vw;*/
	width:100%;
	padding:4.014%;
	border:1px solid #ddd;
}
#contact input[type="radio"] {
	display:none;
}
#contact label {
	font-size:3.466666658vw;
	float: left;
	background: #fff;
	border: 1px solid #ddd;
	vertical-align: middle;
	padding:3%;
  display:block;
  position:relative;
	width:49.27536231884058%; /* 340px */
}
#contact label:nth-child(2n) {
	float:right;
}
#contact input[type="radio"] {
	width:20px;
	position:absolute;
  top:0;
  bottom:0;
  left:0;
  margin:auto 15px;
	padding:0;
}
#contact label img {
	width:10%;
	vertical-align:middle;
	margin-right:2%;
}
#contact label.label-checked {
	border:1px solid #0066bf;
}
#contact textarea {
	font-size:16px;
/*	font-size:3.466666658vw;*/
	width:100%;
	min-height:250px;
	border: 1px solid #ddd;
	resize:vertical;
	padding:4.014%;
}
#contact button {
	width:79.71014492753623%;
	display:block;
	margin:9.420289855072464% auto 0;
}
#contact button:hover {
	cursor:pointer;
	opacity:0.8;
}
#contact button {
  padding: 0;
  border: none;
  background: transparent;
}
#contact button img {
  display: block;
}
#contact button::-moz-focus-inner {
  padding: 0;
  border: none;
}
#contact p.error {
	color:#fff;
	background:#ff0101;
	font-weight:normal;
	margin-top:1.594202898550725%;
	padding:1% 2%;
	display:none;
	border-radius:4px;
}

#page_top {
	background:#eee;
}
#page_top img {
	width:5.866666666666667%;
	margin:0 auto;
	padding:4.8% 0 5.333333333333333%;
	display:block;
}
#page_top:hover {
	opacity:0.8;
}

#footer {
	background:#f6f6f6;
}
#footer #ftr_logo {
	width:29.33333333333333%;
	display:block;
	margin:0 auto;
	padding:7.2% 0 7.333333333333333%;
}
#footer .w50 {
	width:50%;
	float:left;
}

#copyright {
	margin:5.866666666666667% 0;
}

.sp { display:inline-block; }
.sp_b { display:block; }
.pc { display:none; }
.pc_b { display:none; }

@media only screen and (min-width:768px) {
img {
	width:auto;
	max-width:unset;
}
#navi a img:hover { opacity:1; }

body {
	font-size:15px;
	font-family:"ヒラギノ角ゴシック Pro",
							"Hiragino Kaku Gothic Pro",
							"メイリオ",
							Meiryo,
							Osaka,
							"ＭＳ Ｐゴシック",
							"MS PGothic",
							sans-serif;
	min-width:768px;
}

#header {
	height:90px;
	position:static;
}
#logo {
	width:150px;
	margin-top:7px;
}
#navi {
	width:600px;
}
#mv {
	width:100%;
	height:700px;
	overflow:hidden;
	background:url(../images/bg_mv_pc.jpg) top center no-repeat;
	background-size:cover;
	padding-bottom:0;
}
#mv img {
	width:650px;
	left:unset;
	right:0;
	bottom:70px;
}

#wrap {
	padding-top:0;
}

h2 {
	padding-top:70px;
	padding-bottom:44px;
}
h3 {
	padding-bottom:18px;
}

#service {
	text-align:center;
	padding-bottom:105px;
}
#service .inner > p {
	font-size:15px;
	margin-bottom:38px;
}
#service .cf div {
	padding-bottom:0;
}
#service .cf div > img {
	width:100%;
}
#service .cf div p {
	text-align:left;
}
#service .cf .box1,
#service .cf .box2 {
	padding-bottom:50px;
}
#service .cf .box3,
#service .cf .box4,
#service .cf .box5 {
	width:33.3333%;
}
#service .cf div h4 {
	text-align:left;
	margin-top:28px;
	margin-bottom:14px;
}
#service .cf div h4 img {
	width:231px;
}
#service .cf div h4,
#service .cf div p {
	margin-left:32px;
	margin-right:32px;
}

#aboutus .inner{
	padding-bottom:53px;
}
#aboutus h2 {
	padding-top:77px;
	padding-bottom:56px;
}
#aboutus dl {
	max-width:800px;
	margin:0 auto;
}
#aboutus dt,
#aboutus dd {
	font-size:15px;
	margin-bottom:29px;
}
#aboutus dt {
	width:150px;
}
#aboutus dd {
	padding-left:178px;
}
#aboutus #map {
	height:450px;
}

#message {
	background:url(../images/bg_message.png) center center no-repeat;
	background-size:cover;
	padding-bottom:91px;
}
#message h2 {
	padding-top:98px;
}
#message .box {
	max-width:1000px;
	margin:0 auto;
	font-size:15px;
	padding:77px;
}
#message .box h3 {
	text-align:center;
	margin-bottom:37px;
}
#message .box p {
	display:table;
	margin:0 auto;
}
@media only screen and (min-width:980px) {
#message .box p .br {
	display:inline-block;
}
}
#message .box p.signature {
	font-size:13px;
	display:block;
	margin:0;
}

#contact {
	padding-bottom:90px;
}
#contact .inner {
	max-width:800px;
}
#contact h2 {
	padding-top:79px;
	padding-bottom:13px;
}
#contact p {
	font-size:16px;
	margin-top:32px;
	margin-bottom:6px;
}
#contact p span {
	font-size:12px;
	padding:1px 10px;
}
#contact label {
	font-size:15px;
	padding:20px;
}
#contact label img {
	width:27px;
}
#contact input {
	font-size:15px;
	padding:25px 20px;
}
#contact textarea {
	font-size:15px;
	min-height:150px;
	padding:20px;
}
#contact button {
	width:550px;
	margin-top:64px;
}
#contact p.error {
	margin-top:12px;
	padding:6px 20px;
}

#page_top img {
	width:22px;
	padding:22px 0 26px;
}

#footer {
	padding-bottom:44px;
}
#footer #ftr_logo {
	width:130px;
	padding:45px 0 32px;
}
#footer .cf {
	width:730px;
	margin:0 auto;
}
#footer .cf img {
	float:left;
}
#footer .w50 {
	width:auto;
}

#copyright {
	width:400px;
	display:block;
	margin:21px auto 129px;
}

.sp { display:none; }
.sp_b { display:none; }
.pc { display:inline-block; }
.pc_b { display:block; }
}