@charset "utf-8";

/*===============================================
	base
===============================================*/

/*---------------------------------------------
	body
  ---------------------------------------------*/

body {
  font-family:游ゴシック体, 'Yu Gothic', YuGothic, メイリオ, Meiryo, 'ヒラギノ角ゴシック Pro', 'Hiragino Kaku Gothic Pro', sans-serif;
  color: #000;
  font-size: 17px;
  line-height:140%;
  text-align: left;
  -webkit-text-size-adjust: 100%;
}


/*---------------------------------------------
	link
  ---------------------------------------------*/

a,a img {
  color: inherit;
  text-decoration: none;
  outline: none;
  -moz-transition-duration:0.5s;
  -o-transition-duration:0.5s;
  -webkit-transition-duration:0.5s;
  transition-duration:0.5s;
}
a:hover {
  text-decoration:underline;
  color:#d86f7c;
}
a img:hover{
  opacity:0.7;
}


/*---------------------------------------------
	Clearfix
  ---------------------------------------------*/

.clearfix:after {
  content: "";
  display: block;
  clear: both;
}



/*-----------------------------------------------------  */
/*	common						*/
/*-----------------------------------------------------	*/

html {
  -webkit-text-size-adjust: none;
}

ol,ul{
  list-style-position:inside;
}
input[type="submit"], input[type="reset"], input[type="button"], button{
  cursor: pointer;
}
strong {
  font-weight:bold;
}
.left-area {
  float:left;
}
.right-area {
  float:right;
}
.on-sp {
  display:none !important;
}
.on-pc {
  display:block !important;
}
#wrapper {
  position:relative;
  width:100%;
  margin:0 auto;
  overflow: hidden;
}
#side-fixed {
  position:fixed;
  top:150px;
  right:4px;
  z-index:9999;
}
#side-fixed img {
	opacity:0.8;
}
/*-----------------------------------------------------	*/
/*	header												*/
/*-----------------------------------------------------	*/
header {
  width: 100%;
  height: 124px;
  position: relative;
  background: rgba(255,255,255,0.7);
  z-index: 999999;
}
#header-inner {
  position:relative;
  width:100%;
  max-width:1000px;
  height:120px;
  margin:0 auto;
}
#header-inner:after {
  content:"";
  position: absolute;
  bottom:2px;
  left:204px;
  background:#e81800;
  width:795px;
  height:1px;
}
#header-inner h1 {
  position:absolute;
  top:16px;
  right:20px;
  font-size:11px;
  padding-top:10px;
  margin-bottom:10px;
}
@media screen and (max-width: 1200px) {
#header-inner h1 {
  width:500px;
}
}
#logo {
  float:left;
}
#logo a {
  display: block;
  height: 118px;
}
/* nav
-------------------------------------*/
nav {
  float:left;
  margin-left:40px;
  margin-top:90px
}
nav ul {
}
nav ul li {
  float:left;
  margin-right:56px;
  font-size:15px;
}
@media screen and (max-width: 1000px) {
nav ul li {
  margin-right:10px;
  font-size: 14px;
}
}
nav ul li:last-child {
  margin-right:0;
}
nav ul li a {
}
/* ハンバーガーメニュー非表示 */
.menu_button {
  display:none;
}

/*-----------------------------------------------------	*/
/*	main						*/
/*-----------------------------------------------------	*/
#main {
  position:relative;
  display:block;
}
/*-----------------------------------------------------	*/
/*	voice						*/
/*-----------------------------------------------------	*/
#voice {
  margin-bottom:90px;
}
#voice .inner {
  position:relative;
  width:96%;
  max-width:1000px;
  margin:0 auto;
}
#voice .inner h2 {
  text-align:center;
  margin-bottom:60px;
}
#voice .inner .txt {
  text-align:center;
  margin-bottom:60px;
}
#voice .inner ul {
  width:96%;
  max-width:960px;
  margin:0  auto;
}
#voice .inner ul li {
  float:left;
  box-sizing:border-box;
  margin-right:2.13%;
  margin-bottom:50px;
  width:23.4%;
}
#voice .inner ul li img {
  width:100%;
  max-width:220px;
  height:auto;
}
#voice .inner ul li:nth-child(2) img,
#voice .inner ul li:nth-child(3) img {
  max-width:223px;
}
#voice .inner ul li:last-child {
  margin-right:0;
}
#voice .inner ul li:last-child img {
  max-width:221px;
}
/*-----------------------------------------------------	*/
/*	contact						*/
/*-----------------------------------------------------	*/
#contact {
  margin-bottom:90px;
}
#contact .inner {
  position:relative;
  width:96%;
  max-width:1000px;
  margin:0 auto;
}
#contact .inner h2 {
  text-align:center;
  margin-bottom:60px;
}
#contact .inner .btn-contact a {
  display:block;
  background:#ff931e;
  box-sizing:border-box;
  width:90%;
  max-width:556px;
  height:67px;
  margin:0 auto 14px;
  padding:22px;
  color:#fff;
  font-size:30px;
  text-align:center;
}
#contact .inner .btn-request a {
  display:block;
  background:#8cc63f;
  box-sizing:border-box;
  width:90%;
  max-width:556px;
  height:67px;
  margin:0 auto 60px;
  padding:22px;
  color:#fff;
  font-size:30px;
  text-align:center;
}
#contact .inner .btn-contact a:hover,
#contact .inner .btn-request a:hover{
  opacity: 0.7;
  text-decoration: none;
}
#contact .inner .txt {
  text-align:center;
  margin-bottom:60px;
  font-family: '小塚ゴシック','Kozuka Gothic',sans-serif;
  font-size:20px;
  line-height:160%;
}
#contact .inner .txt .orange {
  display:inline-block;
  margin-bottom:4px;
  color:#f15a24;
}

/*-----------------------------------------------------	*/
/*	page top						*/
/*-----------------------------------------------------	*/
#pagetop {
  position: fixed;
  right: 10px;
  bottom: 10px;
  z-index: 10;
  opacity: 0.7;
}
#pagetop a {
  display:block;
  background:#e81800;
  width:50px;
  height:50px;
  border-radius:50%;
}
#pagetop a:hover {
  text-decoration: none;
}
#pagetop span {
  text-indent: 100%;
  white-space: nowrap;
  overflow: hidden;
  display: block;
}
#pagetop a:before{
  content: '\f077 ';
  display: block;
  position: absolute;
  top: 13px;
  left: 16px;
  font-family:FontAwesome;
  color: #fff;
  font-size: 18px;
  -webkit-font-smoothing: antialiased;
  -moz-osx-font-smoothing: grayscale;
}
/*-----------------------------------------------------	*/
/*	footer						*/
/*-----------------------------------------------------	*/

footer {
  width:100%;
  margin:0 auto;
}
footer * * {
  text-align:center;
}
footer #footer-top {
  background:#F2F2F2;
  margin-bottom:70px;
  padding:60px 0 30px;
}
footer #footer-top .catch {
  font-size:27px;
  letter-spacing:3px;
  margin-bottom:30px;
}
footer #footer-top .btn-request {
  margin-bottom:60px;
}
footer #footer-top .txt {
  position:relative;
  font-size:20px;
  width:370px;
  margin:0 auto;
}
footer #footer-top .txt:before {
  content:"";
  background:url(../img/common/dot.png) no-repeat;
  position:absolute;
  top:-24px;
  right:36%;
  width:65px;
  height:19px;
}
footer #footer-bottom {
  background:#F2F2F2;
  padding:60px 0 0;
}
#footer-logo {
  text-align:center;
  margin-bottom:30px;
}
footer #footer-bottom .txt {
  font-size:15px;
  margin-bottom:30px;
}
footer #footer-bottom #copyright {
  background:#E81800;
  color: #fff;
  font-size: 14px;
  padding:10px 0;
}
/*===============================================
	SP CSS
===============================================*/
@media screen and (max-width: 1120px) {
/*-----------------------------------------------------	*/
/*	1120px side fixed											*/
/*-----------------------------------------------------	*/
#side-fixed {
  width:40px;
  position:fixed;
  right:0;
  z-index:999999;
}
#side-fixed img {
  width:100%;
  height:auto;
}
}
@media screen and (max-width: 768px) {
/*-----------------------------------------------------	*/
/*	sp common											*/
/*-----------------------------------------------------	*/
.on-sp {
  display:block !important;
}
.on-pc {
  display:none !important;
}
#side-fixed {
  top:67px;
}
/*-----------------------------------------------------	*/
/*	sp header						*/
/*-----------------------------------------------------	*/
header {
  position: fixed;
  left: 0px;
  top: 0px;
  height:67px;
  background: #fff;
  box-sizing:border-box;
  z-index: 999999;
  margin: 0;
}
#header-inner {
  height:63px;
}
#header-inner:after {
  content:"";
  position: absolute;
  bottom:0;
  left:20px;
  background:#e81800;
  width:100%;
  height:1px;
}
#header-inner h1 {
  width:53%;
  top:6px;
  left:116px;
  right:auto;
  padding-top:0;
  line-height:140%;
  font-size:10px;
  margin-bottom:0;
}
#logo {
  box-sizing:border-box;
  z-index: 10;
  float: left;
  text-align: left;
  width:110px;
  margin-bottom:0;
  padding:0;
}
#logo img {
  width:100%;
  height:auto;
}
/*-----------------------------------------------------	*/
/*	sp nav												*/
/*-----------------------------------------------------	*/
nav {
  display:none;
  position:absolute;
  top:63px;
  left:0;
  margin:0;
  width:100%;
  z-index:9999;
}
nav ul {
  background:rgba(255,255,255,0.7);
  width:100%;
  height: auto;
  font-size: 0;
  position: relative;
  text-align: left;
  margin: 0 auto;
}
nav ul li {
  width:100%;
  font-size: 1%;
  position: relative;
  display: block;
}
nav ul li a {
  width:100%;
  height:40px;
  font-size: 14px;
  color:#000;
  text-decoration: none;
  display: block;
  padding: 10px 0 0 30px;
  border-bottom:#000 1px solid;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
  box-sizing: border-box;
}
/* ハンバーガーメニュー */
.menu_button {
  position: absolute;
  top:0;
  right: 0px;
  z-index: 9;
  display: inline-block;
  width: 60px;
  height: 60px;
}
.menu_button span {
  display: block;
  position: absolute;
  top: 29px;
  left: 4px;
  background:#e81800;
  width:38px;
  height:4px;
  border:#e81800 solid 1px;
  border-radius:5px;
  transition: .2s;
}
.menu_button span:before {
  content:"";
  display: block;
  position: absolute;
  top: -15px;
  left:-1px;
  background:#e81800;
  width:38px;
  height:4px;
  border:#e81800 solid 1px;
  border-radius:5px;
  transition: .3s;
}
.menu_button span:after {
  content:"";
  display: block;
  position: absolute;
  top: 13px;
  left:-1px;
  background:#e81800;
  width:38px;
  height:4px;
  border:#e81800 solid 1px;
  border-radius:5px;
  transition: .3s;
}
.menu_button .close{
  background: transparent;
  border:none;

}
.menu_button .close:before, menu_button .close:after{
  margin-top: 0;
}
.menu_button .close:before{
  transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  background:#e81800;
  top:0;
}
.menu_button .close:after{
  transform: rotate(-135deg);
  -webkit-transform: rotate(-135deg);
  background:#e81800;
  top:0;
}
/*-----------------------------------------------------	*/
/*	sp breadcrumbs										*/
/*-----------------------------------------------------	*/
#breadcrumbs {
  background:#f2f2f2;
  box-sizing:border-box;
  height:40px;
  margin:0;
  padding-top:10px;
}
/*-----------------------------------------------------	*/
/*	sp main										　　　　*/
/*-----------------------------------------------------	*/
#main {
  overflow:hidden;
}
/*-----------------------------------------------------	*/
/*	sp voice						*/
/*-----------------------------------------------------	*/
#voice {
  margin-bottom:60px;
}
#voice .inner {
  position:relative;
  width:96%;
  max-width:1000px;
  margin:0 auto;
}
#voice .inner h2 {
  text-align:center;
  margin-bottom:60px;
}
#voice .inner .txt {
  text-align:center;
  margin-bottom:60px;
}
#voice .inner ul {
  width:96%;
  max-width:960px;
  margin:0  auto;
}
#voice .inner ul li {
  float:none;
  text-align:center;
  box-sizing:border-box;
  margin-right:0;
  margin-bottom:50px;
  width:auto;
}
#voice .inner ul li:last-child {
  margin-right:0;
}
/*-----------------------------------------------------	*/
/*	sp contact						*/
/*-----------------------------------------------------	*/
#contact {
  margin-bottom:90px;
}
#contact .inner {
  position:relative;
  width:96%;
  max-width:1000px;
  margin:0 auto;
}
#contact .inner h2 {
  width:96%;
  max-width:487px;
  text-align:center;
  margin:0 auto 60px;
}
#contact .inner h2 img {
  width:100%;
  height:auto;
}
#contact .inner .btn-contact a {
  background:#ff931e;
  box-sizing:border-box;
  width:90%;
  max-width:556px;
  height:67px;
  margin:0 auto 14px;
  padding:22px;
  color:#fff;
  font-size:20px;
  text-align:center;
}
#contact .inner .btn-request a {
  background:#8cc63f;
  box-sizing:border-box;
  width:90%;
  max-width:556px;
  height:67px;
  margin:0 auto 60px;
  padding:22px;
  color:#fff;
  font-size:20px;
  text-align:center;
}
#contact .inner .txt {
  text-align:center;
  margin-bottom:60px;
  font-family: '小塚ゴシック','Kozuka Gothic',sans-serif;
  font-size:16px;
  line-height:160%;
}
#contact .inner .txt .orange {
  display:inline-block;
  margin-bottom:4px;
  color:#f15a24;
}
#contact .inner .txt img {
  width:100%;
  max-width:381px;
  height:auto;
}
/*-----------------------------------------------------	*/
/*	sp footer											*/
/*-----------------------------------------------------	*/
footer {
  width:100%;
  margin:0 auto;
}
footer * * {
  text-align:center;
}
footer #footer-top {
  background:#F2F2F2;
  margin-bottom:30px;
  padding:60px 0 30px;
}
footer #footer-top .catch {
  font-size:16px;
  letter-spacing:3px;
  margin-bottom:30px;
}
footer #footer-top .btn-request {
  margin:0 auto 60px;
  width: 96%;
  max-width: 370px;
}
footer #footer-top .btn-request img {
  width: 100%;
  height: auto;
}
footer #footer-top .txt {
  position:relative;
  font-size:20px;
  width:370px;
  margin:0 auto;
}
footer #footer-top .txt:before {
  content:"";
  background:url(../img/common/dot.png) no-repeat;
  position:absolute;
  top:-24px;
  right:36%;
  width:65px;
  height:19px;
}
footer #footer-bottom {
  background:#F2F2F2;
  padding:60px 0 0;
}
#footer-logo {
  text-align:center;
  margin-bottom:30px;
}
footer #footer-bottom .txt {
  font-size:15px;
  margin-bottom:30px;
}
footer #footer-bottom #copyright {
  background:#E81800;
  padding:10px 0;
}
footer #footer-bottom #copyright img {
  width:100%;
  height:auto;
}
}
/*===============================================
	412px CSS
===============================================*/
@media screen and (max-width: 412px) {
#side-fixed {
  display: none;
}
}/*===============================================
	370px CSS
===============================================*/
@media screen and (max-width: 370px) {
#wrapper {
  overflow: hidden;
}
header #header-inner h1 {
  display: none;
}
}
/*===============================================
	320px CSS
===============================================*/
@media screen and (max-width: 320px) {

#bnr-contact .clearfix .btn-contact a:before {
  left:30px;
}
/*-----------------------------------------------------	*/
/*	sp footer											*/
/*-----------------------------------------------------	*/
#footer-inner {
  width:98%;
}
footer .contact {
  width:80%;
}
/* footer privacy
-------------------------------------*/
footer #footer-inner .privacy img {
  width:45px;
  height:auto;
}
}
