@charset "utf-8";

/*------------------------------------------------------------------
CSS Information

 File Name:      style.css
 Author:         MCY
 Style Info:     スタイル設定
------------------------------------------------------------------*/

/*------------------------------------------------------------------
	Base Setting
------------------------------------------------------------------*/
@import "normalize.css";

html {overflow: auto;font-family: "游ゴシック", YuGothic,Verdana, Roboto, "Droid Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, sans-serif;}
.hiragino { font-family: "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
#home,#about,#service,#contact,#privacy { background:url(../img/img-bg.gif?181219) repeat-y center center; background-size:100%;}
/*------------------------------------------------------------------
	Base Link Color Setting
------------------------------------------------------------------*/
a:link {color: #6D5245;text-decoration: none;}
a:visited {color: #6D5245;text-decoration: none;}
a:active {text-decoration: underline;}
a:hover {color: #6D5245;opacity:0.7;cursor: pointer !important;-webkit-transition: all ease-out 0.2s !important;-moz-transition: all ease-out 0.2s !important;-ms-transition: all ease-out 0.2s !important;transition: all ease-out 0.2s !important; text-decoration:none;}
/*------------------------------------------------------------------
	Common Style
------------------------------------------------------------------*/
.inner { width:1000px; margin-left:auto; margin-right:auto;}
.clearfix:after {content: "";clear: both;display: block;}
.mb30 { margin-bottom:30px;}
.mb50 { margin-bottom:50px;}
.mb60 { margin-bottom:60px;}
/*------------------------------------------------------------------
	Title Style
------------------------------------------------------------------*/
.ttl-a { font-size:35px; color:#0C65BE; text-align:center; line-height:1.5; padding:15px 0; border-bottom:1px solid #708080;border-top:1px solid #708080; margin-bottom:40px; letter-spacing:5px; font-weight:bold;}
.ttl-b { font-size:24px; color:#fff; background-color:#0071C3; padding:10px 25px; margin-bottom:40px; line-height:1.8; border-radius:3px;}
.ttl-c { font-size:24px; color:#0C65BE; padding:15px 20px; margin-bottom:25px; line-height:1.8;border-bottom:1px solid #004183;border-top:1px solid #004183; font-weight:bold;}
/*------------------------------------------------------------------
	Link Style
------------------------------------------------------------------*/
.link-style01 { background-color:#3F7EBD; width:720px; margin-left:auto; margin-right:auto; border-radius:5px; box-shadow:1px 1px #004183; box-sizing:border-box; margin-bottom:30px;}
.link-style01 a { color:#fff; font-size:20px; display:block;height:70px; line-height:70px;display:flex;justify-content: center;align-items: center;}
.link-style01 a:after {content: "";display: inline-block;background: url(../img/img-yajirushi01.png) no-repeat right center;top: 28px;background-size: 8px 16px;height: 1em;width: 20px;}
.link-style02 { width:720px; margin-left: auto; margin-right:auto;}
.link-style02 ul li{ float:left; background-color:#fff; width:350px;  border-radius:3px; border:1px solid #3F7EBD; box-sizing:border-box; margin-right:20px; margin-bottom:20px; font-weight:bold;}
.link-style02 ul li:nth-child(2),.link-style02 ul li:nth-child(4){ margin-right:0;}
.link-style02 ul li:nth-child(3),.link-style02 ul li:nth-child(4){ margin-bottom:0;}
.link-style02 a { color:#3F7EBD; font-size:20px; display:block;height:70px; height:70px;display:flex;justify-content: center;align-items: center; }
.link-style02 a:after {content: "";display: inline-block;background: url(../img/img-yajirushi02.png) no-repeat right center;top: 25px;background-size: 8px 16px;height: 1em;width: 20px;}
#service-info .link-style02 a:after {content: "";display: inline-block;background: url(../img/img-yajirushi05.png) no-repeat right center;top: 25px;background-size: 16px 8px;height: 1em;width: 23px;}
/*------------------------------------------------------------------
	Header Style
------------------------------------------------------------------*/
#header { margin:25px auto;}
#header h1 { float:left; margin-top:8px;}
#header figure#header-img { width:270px !important; float:left;}
#header ul { float:right;}
#header ul li { float:left;}
#header ul li:first-child { margin-right:20px;}
#header ul li:last-child { width:250px; border-radius:3px; font-size:17px;box-sizing:border-box; box-shadow: 1px 1px #004183;}
#header ul li:last-child a { color:#fff; display:block;height:70px; line-height:70px;background:url(../img/img-mail.png) no-repeat; background-position:20px center; background-color:#3F7EBD; border-radius:3px;}
#header ul li:last-child a:hover { opacity:0.6!important;}
#header ul li:last-child a span { padding-left:60px;}
nav { width:100%; margin:0 auto;border-top:1px solid #D1D1D0;border-bottom:1px solid #D1D1D0; background-color:#fff;}
nav ul { width:1000px; margin:0 auto;}
nav ul li { float:left; text-align:center; border-right:1px solid #D1D1D0; box-sizing:border-box;}
nav ul li:first-child { border-left:1px solid #D1D1D0;}
nav ul li a { display:flex !important; font-size:18px; font-weight:bold; color:#333333 !important; width:248px; height:50px;justify-content: center;align-items: center; box-sizing:border-box;}
nav ul li a:hover { opacity:0.6!important;}
/*------------------------------------------------------------------
	Mainvisual Style
------------------------------------------------------------------*/
#mainvisual { position:relative; margin-bottom:45px; background:url(../img/mainvisual-bg.gif) no-repeat center bottom; background-size:cover; height:500px;}
#mainvisual img { position:relative; margin-top:75px;}
#mainvisual figure { text-align:center;}
/*------------------------------------------------------------------
	Top-service Style
------------------------------------------------------------------*/
#top-service { margin-bottom:70px;}
#top-service-intro { font-size:26px; line-height:1.5; text-align:center; margin-bottom:60px; font-weight:bold;color:#333333;}
#top-service #main-service { margin-bottom:40px;}
#top-service #main-service li { width:310px; float:left; margin-right:35px;}
#top-service #main-service li:last-child { margin-right:0;}
#top-service #main-service h3 { font-size:24px; line-height:1.2; text-align:center; margin-bottom:15px; font-weight:bold;color:#333333;}
#top-service #main-service img { margin-bottom:15px;}
#top-service #main-service p { font-size:18px; color:#333333; line-height:1.8;}
#top-service #main-service-lists { background-color:#fff; margin-bottom:35px; padding:35px 0 15px 0; box-sizing:border-box; border:1px solid #E2E2E2; position:relative;}
#top-service #main-service-lists h4 { text-align:center; line-height:1.8; font-size:22px; color:#333333; font-weight:bold;}
#top-service #main-service-lists h4 span { background-color:#FFFF66;}
#top-service #main-service-lists ul { position:relative;height:650px;}
#top-service #main-service-lists ul li { width:200px; height:200px; background-color:#038DD8; border-radius:50%;display:flex;justify-content: center;align-items: center;text-align:center; color:#fff; font-size:28px;}
#top-service #main-service-lists ul li a { color:#fff; line-height:1.5;}
#top-service #main-service-lists ul li:first-child { position:absolute; left:157px; top:-10px; background:url(../img/img-top-service12.png) no-repeat center center;}
#top-service #main-service-lists ul li:first-child img { position:absolute; left:12px; top:0;}
#top-service #main-service-lists ul li:nth-child(2) { position:absolute; left:97px; top:192px;background:url(../img/img-top-service13.png) no-repeat center center;}
#top-service #main-service-lists ul li:nth-child(2) img { position:absolute; left:60px; top:145px;}
#top-service #main-service-lists ul li:nth-child(3) { position:absolute; left:200px; top:392px;background:url(../img/img-top-service12.png) no-repeat center center;}
#top-service #main-service-lists ul li:nth-child(3) img { position:absolute; left:100px; top:130px;}
#top-service #main-service-lists ul li:nth-child(4) { position:absolute; left:400px; bottom:20px;background:url(../img/img-top-service13.png) no-repeat center center;}
#top-service #main-service-lists ul li:nth-child(4) img { position:absolute; left:88px; top:130px;}
#top-service #main-service-lists ul li:nth-child(5) { position:absolute; left:600px; top:392px;background:url(../img/img-top-service12.png) no-repeat center center;}
#top-service #main-service-lists ul li:nth-child(5) img { position:absolute; left:35px; top:-45px;}
#top-service #main-service-lists ul li:nth-child(6){ position:absolute; left:700px; top:192px;background:url(../img/img-top-service13.png) no-repeat center center;}
#top-service #main-service-lists ul li:nth-child(6) img { position:absolute; left:92px; top:-20px;}
#top-service #main-service-lists ul li:last-child { position:absolute; left:635px; top:-10px;background:url(../img/img-top-service12.png) no-repeat center center;}
#top-service #main-service-lists ul li:last-child img { position:absolute; left:95px; top:0;}
#top-service #main-service-lists figure#img-staff { position:absolute; left:375px; top:176px;}
/*------------------------------------------------------------------
	Access Style
------------------------------------------------------------------*/
#access { margin-bottom:65px;}
#map { width:406px; float:left; border:3px solid #288FC9; box-sizing:border-box;}
#access-info { width:555px; float:right;}
#access-info dl { margin-bottom:30px}
#access-info dl dd { line-height:1.8; font-size:17px; float:left; color:#333333;}
#access-info dl:nth-child(3) dd, #access-info dl:last-child dd{ font-size:24px; line-height:50px;}
#access-info dl dt { float:left; margin-right:10px;}
#access-info dl:first-child dt { background:url(../img/img-flag.png) no-repeat center center; width:50px; height:50px;}
#access-info dl:nth-child(2) dt { background:url(../img/img-watch.png) no-repeat center center; width:50px; height:50px;}
#access-info dl:nth-child(3) dt { background:url(../img/img-tel.png) no-repeat center center; width:50px; height:50px;}
#access-info dl:last-child dt { background:url(../img/img-fax.png) no-repeat center center; width:50px; height:50px;}
/*------------------------------------------------------------------
	Philosophy Style
------------------------------------------------------------------*/
#philosophy { margin-bottom:60px; padding:65px 0; background-image:url(../img/bg-profile.png); background-repeat:repeat-x repeat-y; background-position: center center;}
#philosophy .clearfix { width:930px; margin:0 auto;display:flex; justify-content: center; align-items: center;}
#philosophy #philosophy-ttl { float:left; width:277px; margin-right:40px;}
#philosophy #philosophy-ttl h2 { font-size:40px; color:#fff;line-height:1.2; border-bottom:1px dotted #fff;border-top:1px dotted #fff; padding:12px 0; text-align:center;}
#philosophy #philosophy-txt { float:right; width:611px;}
#philosophy #philosophy-txt p { color:#fff; line-height:1.8; font-size:18px;}
/*------------------------------------------------------------------
	Sub-ttl Style
------------------------------------------------------------------*/
#sub-ttl { background:url(../img/sub-header.gif) no-repeat center bottom; height:200px; background-size:cover; position:relative;}
#sub-ttl h1 { text-align:center; font-size:40px; color:#0166C3; line-height:200px; letter-spacing:5px;}
/*------------------------------------------------------------------
	Profile Style
------------------------------------------------------------------*/
.profile { border:1px solid #E2E2E2; padding:20px 30px; box-sizing:border-box; margin-bottom:40px;color:#333333; background-color:#fff;}
.profile:last-child { margin-bottom:70px;}
.profile figure { float:left; width:240px; margin-right:25px;}
.profile .profile-info { float:left; width:640px;}
.profile .profile-info h3 { font-size:30px;display:flex;align-items: center; margin-bottom:20px;}
.profile .profile-info h3 span { font-size:16px;}
.profile .profile-info p.number { margin-bottom:10px;}
.profile .profile-info p { line-height:1.8;}
/*------------------------------------------------------------------
	Outline Style
------------------------------------------------------------------*/
#outline { margin-bottom:70px;}
.outline { float:left; width:484px; margin-right:30px;}
.outline:last-child { margin-right:0;}
.outline dl { border-top:solid 1px #E2E2E2; padding:15px 0; color:#333333;}
.outline dl:last-child { border-bottom:solid 1px #E2E2E2;}
.outline dl dt { font-weight:bold; width:110px; float:left;line-height:1.8;}
.outline dl dd { width:370px; float:left;line-height:1.8;}
/*------------------------------------------------------------------
	Service-info Style
------------------------------------------------------------------*/
#service-info #service-intro { text-align:center; line-height:1.8; margin:50px auto; font-size:18px; font-weight:bold; color:#333333;}
#service-info #service-intro span,#service-info #main-service dl dd p span { background-color:#FFFF66;}
#service-info #service-intro2 { line-height:1.8; margin:50px auto; font-size:18px; color:#333333;}
#service-info #main-service dl { width:1000px; margin-bottom:30px; box-sizing:border-box;border:1px solid #E2E2E2; padding:19px; background-color:#fff;}
#service-info #main-service dl:last-child { margin-bottom:45px;}
#service-info #main-service dl dt { width:290px; float:left;}
#service-info #main-service dl dd { width:650px; float:left;  box-sizing:border-box; margin-left:20px;}
#service-info #main-service dl dd h3 { height:1.2; font-size:32px; color:#1762C5; margin-bottom:10px; letter-spacing:2px;}
#service-info #main-service dl dd p { font-size:18px; line-height:1.8; color:#333333;}
#service-faq { width:645px; float:left;}
#service-faq p { line-height:1.8; font-size:18px; color:#333333;}
#service-faq p:first-child { margin-bottom:30px;}
#service-img { float:right; width:320px; margin-bottom:45px;}
.services { margin-bottom:35px;}
.services-img{ max-width:150px; float:left; margin-right:20px;}
.services-info { width:830px; float:left;}
.services-info p { line-height:1.8; font-size:18px; color:#333333;}
/*------------------------------------------------------------------
	Price Style
------------------------------------------------------------------*/
#price p { line-height:1.8; font-size:18px; color:#333333;}
#price table { width:1000px;border-collapse:collapse;box-sizing:border-box; margin-bottom:50px;}
#price table th {background-color:#fff;font-size:18px;font-weight:bold;border:1px solid #E2E2E2; padding:20px; width:333px; color:#333333;}
#price table td {padding:20px;font-size:18px;text-align:center;border:1px solid #E2E2E2; background-color:#fff; color:#333333;}
#price table td.bg-blue {background-color:#E9F5FC;}
#price table td span { font-size:20px; color:#004183;}
/*------------------------------------------------------------------
	Contact-info Style
------------------------------------------------------------------*/
#contact-info #contact-intro { text-align:center; line-height:1.8; margin:50px auto; font-size:18px; font-weight:bold; color:#333333;}
#form {width:900px !important;}
#form table { margin-bottom:40px; width:1000px;}
#form table tr {border-bottom:1px solid #E2E2E2; color:#333333;}
#form table th {width:230px;padding-left:20px;vertical-align:middle;font-size:18px;text-align:left; position:relative;}
#form table th span { background-color:#C35E02; color:#fff; padding:5px 6px; border-radius:3px;font-size:14px; position:absolute; right:35px;}
#form table td {width:620px;font-size:16px;padding-bottom: 15px; padding-top:15px;}
#form table td input[type="text"] {border:1px solid #C9C9C9;padding: 7px;font-size: 18px; }
#form table td textarea{border:1px solid #C9C9C9; padding:7px;}
#submit {width:400px;background-color:#3F7EBD !important;border-radius:5px;box-sizing:border-box;margin:0 auto 15px auto;color:#fff;font-size:20px;font-weight: bold;border:none; height:70px; line-height:70px;box-shadow:1px 1px #004183;background: url(../img/img-yajirushi01.png) no-repeat 368px center;background-size: 8px 16px;}
#form-btn {width:400px;background-color:#FF6633;border-radius:5px;box-sizing:border-box;margin:0 auto 15px auto;}
#form-btn a {color:#fff;text-decoration:none;display:block;box-sizing:border-box;}
#form-btn p {font-size:20px;font-weight: bold;text-align:center;position:relative;}
.txt-center { text-align:center;}
#contact-info { font-size:18px; line-height:1.5; margin-bottom:75px;}
#privacy-confirm p { font-size:18px;box-sizing:border-box;margin:0 auto; width:1000px; color:#333333;}
.c-form-policyAgree__check { text-align:center; font-size:17px; margin-bottom:30px; color:#333333;}
#contact p {margin-bottom: 30px; font-size: 18px; line-height: 1.8;}
.error , .msg {color: #FF1727; font-weight: bold;}
/*
input[type="checkbox"] {background-color:#fff;cursor: default;margin: 0 0.5ex;padding: initial;border: initial;font-size:22px !important;width: 22px !important;height: 22px !important;border: 2px solid #C9C9C9; vertical-align: -3px; -webkit-appearance: none; position: relative; margin-right: 15px; -webkit-box-sizing: border-box;}*/
/*------------------------------------------------------------------
	Privacy-info Style
------------------------------------------------------------------*/
#privacy-info { margin-bottom:65px;}
#privacy-info h2.ttl-a { margin-top:60px;}
#privacy-info .ttl-b { margin-bottom:25px;}
#privacy-info p { line-height:1.8; font-size:18px; margin-bottom:30px !important; color:#333333;}
/*------------------------------------------------------------------
	Footer Style
------------------------------------------------------------------*/
#footer-contact { background-color:#3F7EBD; margin-bottom:35px;}
#footer-contact .inner{ font-size:24px; text-align:center; line-height:1.2; padding:30px 0;}
#footer-contact a { color:#fff;}
#footer-contact:hover { opacity:0.8;cursor: pointer !important;-webkit-transition: all ease-out 0.2s !important;-moz-transition: all ease-out 0.2s !important;-ms-transition: all ease-out 0.2s !important;transition: all ease-out 0.2s !important;}
#footer-contact a .inner:before {content: "";display: inline-block;background: url(../img/img-mail-f.png) no-repeat left center; vertical-align:-3px;background-size: 40px 26px;height:26px;width: 40px; margin-right:16px;}
#footer-contact a .inner:after {content: "";display: inline-block;background: url(../img/img-yajirushi03.png) no-repeat right center; vertical-align:-2px;background-size: 30px 24px;height:24px;width: 30px; margin-left:20px;}
#footer-nav { width:800px; margin-bottom:40px;}
#footer-nav li { float:left;font-size:15px; margin-right:50px;}
#footer-nav li:last-child { margin-right:0;}
#footer-nav li a { color:#0665BF; display:block; font-weight:bold;}
#footer-nav li a:hover { text-decoration:underline;}
#footer-nav li a:before {content: "";display: inline-block;background: url(../img/img-yajirushi04.png) no-repeat right center;background-size: 6px 12px;height: 1em;width: 12px; vertical-align:-1px; margin-right:5px;}
footer figure { text-align:center; margin-bottom:35px;}
footer figure img { width:270px; height:51px;}
footer p#copyright { text-align:center; font-size:14px; color:#333333; margin-bottom:30px; font-weight:lighter;}