@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);

@font-face { font-family: "Yu Gothic M"; src: local("Yu Gothic Medium"); }
@font-face { font-family: "Yu Gothic M"; src: local("Yu Gothic Bold"); font-weight: bold; }
body,
button {
    font-family: "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", "メイリオ", "Meiryo", "verdana", sans-serif;
	font-size: 16px;
	color: #000000;
}
a:hover { opacity: 0.7!important; }
a, a:link, a:active, a:visited {display: inline-block; text-decoration: none; cursor: pointer;}
img { width: 100%; }

.gf{
    font-family: 'M PLUS 1p', sans-serif;
    font-weight: bold;
}
.flex{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}
.sp { display: block!important; }
.tb { display: none!important; }
.pc { display: none!important; }
.st { display: block!important; }
.tp { display: none!important; }


.is-fixed {
  position: fixed;
  left: 0;
  z-index: 2;
  width: 100%;
}
.scroll-prevent {
  position: fixed;
  z-index: -1;
/*  width: 100%;
  height: 100%;*/
}
.readmore_black, .readmore_white{
    font-size: 0.8em;
    font-weight: bold;
    padding: 5px 30px;
    text-align: left;
    display: inline-block;
    border-radius: 50px!important;
}
a.read_b:hover, a.read_w:hover { opacity: 1!important; }

a.read_b .readmore_black{ border: 3px solid #000; }
a.read_b:hover .readmore_black{
    border: 3px solid #000;
    background-color: #000;
    color: #FFFFFF;
    border-radius: 50px;
}
a.read_b:hover{ opacity: 1!important; }
a.read_b,
a.read_b:link,
a.read_b:active,
a.read_b:visited{
    color: #000;
}

.readmore_white{ border: 3px solid #FFF; }
a.read_w:hover .readmore_white{
    background-color: #FFF;
    border-radius: 50px;
}
a.read_w,
a.read_w:link,
a.read_w:active,
a.read_w:visited{
    color: #FFF;
}

.btn_toiawase, .btn_form{
    font-size: 0.8em;
    font-weight: bold;
    padding: 10px 40px;
    text-align: left;
    display: inline-block;
    border-radius: 5px;
    background-color: #ED85A7;
}

a.read_p:hover .btn_toiawase,a.read_p:hover .btn_form{
    background-color: #ED85A7;
    border-radius: 5px;
}
a.read_p,
a.read_p:link,
a.read_p:active,
a.read_p:visited{
    color: #FFF;
}


.dots{
    width: 25px;
    height: 10px;
    margin: 30px auto;
    border-top-left-radius: 30px 20px;
    border-top-right-radius: 30px 20px;
    border-bottom-right-radius: 30px 20px;
    border-bottom-left-radius: 30px 20px;
}

.dot_mirai{ background-color: #F19EBC; }
.dot_work{ background-color: #5DC1CF; }
.dot_voice{ background-color: #D8E266; }
.dot_white{ background-color: #FFFFFF; }


/*SP → タブレット　→ PC*/
/* iPhone 縦 */
/***************************
　HEADER
****************************/
#header{
	align-items: center;
    width: 100%;
    height: 60px;
    background: #FFF;
    position: fixed;
    display: flex;
    top: 0;
    z-index: 20;
    box-sizing: border-box;
}

#header .headLogo{
    flex-grow: 1;
    height: auto;
    width: 120px;
    display: inline-block;
    padding: 0 10px 0 0;
    vertical-align: middle;
}


#header .headLogo img{ height: auto; width: 100%; }
#header .head_logoarea{
    flex-grow: 2;
    width: 80%;
    padding: 3vw 0 3vw 3vw;
}
#header .head_sub{
    font-size: 0.7em;
    font-weight: bold;
    color: #5DC1CF;
    border: 2px solid #5DC1CF;
    padding: 5px;
    border-radius: 3px;
    display: inline-block;
}


#headMenu{
    background-color: #000;
    flex-grow: 1;
    width: 20%;
    height: 60px;
    position: relative;
    z-index: 0;
    cursor: pointer;
}
#headMenu span.icon_menu,
#headMenu::before,
#headMenu::after {
  display: block;
  position: absolute;
  top: -10px;
  bottom: 0;
  left:0;
  right: 0;
  width: 28px;
  height: 2px;
  margin: auto;
  background: #FFF;
}
#headMenu span.icon_menu {
  overflow: hidden;
  z-index: 1;
  color: #FFF;
}
#headMenu::before {
  z-index: 2;
  transform: translate(0, -7px);
  content: "";
}
#headMenu::after {
  z-index: 2;
  transform: translate(0, 7px);
  content: "";
}
#headMenu span.menu_txt{
    font-size: 0.6em;
    font-weight: bold;
    z-index: 1;
    color: #FFF;
    margin: auto;
    display: block;
    position: absolute;
    top: 35px;
    bottom: 0px;
    left: 0;
    right: 0;
    width: 33px;
}
#headMenu li{
	flex-grow: 1;
    margin-left: 1.6vw;
	display: inline-block;
}

#headMenu li a{
    position: relative;
  display: inline-block;
  text-decoration: none;
}
#headMenu li a::after {
  position: absolute;
  bottom: -4px;
  left: 0;
  content: '';
  width: 100%;
  height: 2px;
  background: #333;
  transform: scale(0, 1);
  transform-origin: left top;
  transition: transform .3s;
}
#headMenu li a:hover::after {
  transform: scale(1, 1);
}


#headContact{display: none;}

#headMenu.active span {
  opacity: 0;
  transition: opacity 150ms;
}
#headMenu.active::before {
  transform: rotate(45deg);
}
#headMenu.active::after {
  transform: rotate(-45deg);
}

/***************************
　GROBAL NAV
****************************/
#globalNav{
    display: none;
    width: 100%;
    height: 100%;
    max-height: 100vh;
    background-color: #000;
    overflow: auto;
    position: fixed;
    z-index: 1;
    top: 0;
    box-sizing: border-box;
}
.gnav__wrap{
    align-items:center;
    display: initial;
    height: 110%;
    justify-content: center;
    position: relative;
    width: 100%;
    overflow: auto;
    margin: 70px 0 0 0;
}
.gnav_contents{
    color: #FFF;
    width: 100%;
    height: 100%;
    margin:0 auto;
    text-align: center;
}

.gnav_tit {  display: block; color: #FFF;}



.gnav__menu{ padding: 20vh 0 30px 0; }
.gnav__menu__item{ margin: 0px 30%; }
.gnav__menu.other li{ padding: 0 0 20px 0; }
.gnav__menu.other li a{ position: relative; }

.gnav__menu .readmore_white,
.gnav__menu .btn_toiawase,
.gnav__menu .btn_form{
    width: 130px;
    text-align: center;
}
.gnav__menu .readmore_white{
    padding: 0px 30px;
    background-color: #FFF;
}
.gnav__menu a.read_w,
.gnav__menu a.read_w:link,
.gnav__menu a.read_w:active,
.gnav__menu a.read_w:visited{
    color: #000;
}


.other { padding: 0 0 20px; }
.other li:first-child{ border-top: 1px solid #000; }
.other li:last-child{border-bottom: 1px solid #000; }
.gnav__menu__item a{
    color: #000;
    font-size: 0.85em;
    font-weight: bold;
    padding: 15px 0 15px 0;
    text-decoration: none;
    transition: .5s;
}
.gnav__menu__item a:hover{
    opacity: 0.7;
}

.gnav__menu .icon_toiawase{
    position: absolute;
    height: 20px;
    width: 20px;
    top: 10px;
    left: 10px;
    background-image: url(../images/common/icon_tel.png);
    background-repeat: no-repeat;
    background-size: 100%;
}
.gnav__menu .icon_form{
    position: absolute;
    height: 20px;
    width: 20px;
    top: 10px;
    left: 10px;
    background-image: url(../images/common/icon_display.png);
    background-repeat: no-repeat;
    background-size: 100%;
}

.gnav__menu .triangle {
    position: absolute;
    background-image: url(../images/common/icon_tips.png);
    background-repeat: no-repeat;
    height: 20px;
    width: 20px;
    right: 0;
    bottom: 0px;
}

.gnav__menu .gnav_btm ul{ padding: 30px; }
ul.gnav_btm{ padding: 0 0 30px; }

.gnav_btm li{
    width: 48%;
    display: inline-block;
    color: #FFF;
}

.gnav_btm a,
.gnav_btm a:link,
.gnav_btm a:active,
.gnav_btm a:visited{
    color: #FFF;
    font-size: 0.8em;
}


/*============ .Breadcrumb ===============*/
.Breadcrumb{
    padding: 10px 7vw;
    text-align: right;
    font-size: 0.8em;
}
.Breadcrumb li{
    display: inline-block;
    padding: 0 10px;
}

.Breadcrumb li:after{
    content: " >";
    padding-left: 15px;
}

.Breadcrumb li:last-child:after{
    content: "";
}

/***************************
　KEY VISUAL
****************************/
#keyVisual{
    overflow: hidden;
    height: 450px;
    margin-top: 60px;
}

#keyVisual .visual-wrapper{
    background-image: url(../images/key_main.jpg);
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
    height: 450px;
}

#keyVisual .visual-wrapper .visual_title{
    width: 70%;
    margin: 0 auto;
    padding: 35px;
}
/*============ #recTitle ===============*/

#recTitle{ padding: 60px 0px 60px 20px; }
#recTitle .title_wrapper{ display: inline-block; }

#recTitle h1{ width: auto; height: 22px; }
#recTitle h1 img{ width: auto; height: 100%; }


/***************************
　CONTENT
****************************/
#pageTop{
    background-color: #ED85A7;
    text-align: center;
}
#pageTop a{
    display: block;
}

#pageTop .pagetop_img{
    height: 40px;
    width: auto;
    padding: 20px 0;
}
#pageTop img{
    height: 100%;
    width: auto;
}

/*============ #mainContents ===============*/
#mainContents{ margin-top: 60px; }

/*============ #newsArea ===============*/

#newsArea{ padding: 15vw 10vw 20vw; }

#newsArea .title_news{
    width: 45%;
    display: inline-block;
    margin-right: 3%;
    padding: 0 0 30px;
}
#newsArea h2{
    font-size: 0.8em;
    font-weight: bold;
    padding: 0px 4%;
    display: inline-block;
    border: 2px solid #000;
    border-radius: 5px;
    }
#newsArea dl{ font-size: 0.85em; padding: 0 0 30px;}
#newsArea dt{
	display: inline-block;
    vertical-align: top;
    margin: 0;
    padding: 0 2% 0 0;

}
#newsArea dd{
    display: inline-block;
    width: 65%;
    word-wrap: break-word;
    margin: 0;
    padding: 0;
}

#newsArea .readmore{
	text-align: left;
}

/*============ #greetingArea ===============*/


#greetingArea .greeting_key{
    background-image: url(../images/pic_greeting.jpg);
    background-size: cover;
    background-position: center center;
    height: 300px;
    background-repeat: no-repeat;
}

#greetingArea .key_txt{
    height: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    font-size: 1.5em;
    letter-spacing: 0.2em;
    text-shadow: #FFF 1px 1px 10px, #FFF -1px 1px 10px, #FFF 1px -1px 10px, #FFF -1px -1px 10px;
    text-align: center;
}

#greetingArea .greeting_message{
    color: #FFFFFF;
    padding: 15vw 10vw 20vw;
    background-color: #000;
}

#greetingArea .title_area{ text-align: left; }
#greetingArea .title_greeting{ width: 200px; }

#greetingArea h2{
	font-weight: bold;
    letter-spacing: 0.3em;
    padding: 15px 0px 30px 0;
}
#greetingArea .message_area{
    padding: 0 0 30px 0;
    font-size: 0.9em;
    line-height: 2em;
}

#greetingArea a.read_w:hover{ color: #000; }


/*============ #statueArea ===============*/
#statueArea { background-color: #ED85A7;text-align: center; padding: 30px; }
.statueArea_img { max-width: 800px; width: 100%; }


/*============ #indexArea ===============*/

#indexArea{
    padding: 20vw 10vw;
}

#indexArea .index_wrap .list{
    text-align: center;
    padding: 0 0 60px;
}

#indexArea .index_wrap .list:last-child{
    padding: 0 0 0 0;
}

#indexArea .index_wrap .list_pic{
    padding: 0 0 30px;
}
#indexArea .index_wrap .list_pic img{
    width: 80%;
}
#indexArea .index_wrap h3{
    height: 20px;
}
#indexArea .index_wrap h3 img{
    height: 100%;
    width: auto;
}

#indexArea .index_wrap .list .list_text p{
    font-size: 0.85em;
    padding: 0 0 30px;
}




/*============ #qaArea ===============*/

#qaArea{
	background-color: #FFEB3E;
    padding: 20vw 10vw;
    overflow: hidden;
    text-align: center;
}
#qaArea .qa_wrap{
    background-color: #FFFFFF;
    width: 80%;
    margin: 0 auto;
    border-radius: 25px;
}

#qaArea .qa_wrap .item{ padding: 20% 20% 0 20%; }
#qaArea .qa_wrap .item:last-child{ padding: 20% 20% 20% 20%; }


/*============ #recuritArea & briefingArea ===============*/

#recuritArea,#briefingArea{ width: 100%; }


#recuritArea .recruit_text{ background-color: #8D93C8; }
#briefingArea .briefing_text{ background-color: #69BD83; }

#recuritArea .wrap_text,
#briefingArea .wrap_text{ padding: 20px 10px; }

#recuritArea p, #briefingArea p{
    font-size: 0.8em;
    color: #FFFFFF;
    padding: 0 0 30px;
}

#recuritArea .recruit_img{
    background-image: url(../images/pic_recruit.png);
    background-size: cover;
    background-position: center;
}
#briefingArea .briefing_img{
    background-image: url(../images/pic_briefing.png);
    background-size: cover;
    background-position: center;
}

#recuritArea a.read_w:hover{ color: #8D93C8; }
#briefingArea a.read_w:hover{ color: #69BD83; }

#recuritArea h2, #briefingArea h2{ height: 17px; width: auto; }
#recuritArea h2 img, #briefingArea h2 img{ height: 100%; width: auto; }

.col2{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}


.col{
    flex-grow: 1;
    height: 300px;
    width: 50%;
}

.col .wrap{
    height: 100%;
    text-align: center;
    display: flex;
    justify-content: center;
    align-items: center;
}

/*============ #contactArea ===============*/

#contactArea{
    background-color: #EBEBEB;
    padding: 15vw 10vw 20vw;
}

#contactArea h2{
    padding: 0 0 30px;
}

#contactArea img{
    width: 100%;
}
#contactArea .contact_list div{ padding: 0 0 20px; }
#contactArea .contact_list div:last-child{ padding: 0 0 0px; }

@media only screen and (-webkit-min-device-pixel-ratio: 2) {

.gnav__menu .icon_toiawase{
    position: absolute;
    height: 20px;
    width: 20px;
    top: 10px;
    left: 10px;
    background-image: url(../images/common/icon_tel@2x.png);
    background-repeat: no-repeat;
    background-size: 100%;
}
.gnav__menu .icon_form{
    position: absolute;
    height: 20px;
    width: 20px;
    top: 10px;
    left: 10px;
    background-image: url(../images/common/icon_display@2x.png);
    background-repeat: no-repeat;
    background-size: 100%;
}
.gnav__menu .triangle{
    position: absolute;
    background-image: url(../images/common/icon_tips@2x.png);
    background-repeat: no-repeat;
    height: 15px;
    width: 15px;
    right: 5px;
    bottom: 5px;
}

#recuritArea .recruit_img{ background-image: url(../images/pic_recruit@2x.png); }
#briefingArea .briefing_img{ background-image: url(../images/pic_briefing@2x.png); }
}


/***************************
　FOOTER
****************************/

#footer .footer_logo{
	padding: 15vw 0;
    height: 150px;
    text-align: center;
}
#footer .footer_logo img{
    height: 100%;
    width: auto;
}
#footer .access{
	padding: 0 0 7vw;
    text-align: center;
}
#footer .detail{
	display: block;
    font-size: 0.8em;
}

#copyrightArea{
    background-color: #000;
    color: #FFF;
}
#copyrightArea .copyright{
	text-align: center;
    font-size: 0.6em;
    padding: 10px;
}

#footer .menu_parts,
#footer .footer_location,
#copyrightArea ul
{
	display: none;
}
@media screen and (max-width:350px) {
/*　for iPhone Landscape　(iPhone4)　*/

#newsArea dd{ width: 100%; }

}



@media screen and (min-width:480px) {
/*　for iPhone Landscape　(iPhone 横)　*/



}

@media screen and (min-width:600px){
/***************************
　for iphone 6 横
****************************/



}


@media screen and (min-width:768px){

/***************************
　for iPad 　
****************************/

.sp { display: none!important; }
.tb { display: block!important; }
.pc { display: none!important; }
.tp { display: block!important; }


#header{ height: 70px; }
#header .headLogo{ /*height: 40px;*/ }
#headMenu {
    width: 10%;
    height: 70px;
}

#headMenu span.menu_txt{ top: 43px; }
#globalNav{ height: 100vh; }

#keyVisual{ height: 400px; }
#keyVisual .visual-wrapper{ height: 640px; }
#keyVisual .visual-wrapper .visual_title{ width: 300px; }

.Breadcrumb{ padding: 15px 5px; }

#newsArea{ padding: 7vw; }
#newsArea .title_news{ width: 110px; padding: 0 0 20px; }
#newsArea dt{ width: 20%; }
#newsArea dd{ width: 75%; }


#greetingArea .key_txt{ font-size: 2.0em; }
#greetingArea .greeting_message{ padding: 7vw; }

#statueArea { padding: 50px; }

#indexArea{ padding: 10vw 7vw; }
#indexArea .index_wrap .list{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}
#indexArea .index_wrap .list_pic,
#indexArea .index_wrap .list_text{
    flex-grow: 1;
    width: 50%;
}

#indexArea .index_wrap .list_text{
    display: flex;
    justify-content: center;
    align-items: center;
}

#qaArea .qa_wrap .item{ padding: 15% 30% 0 30%; }
#qaArea .qa_wrap .item:last-child{ padding: 20% 30% 20% 30%; }


#recuritArea .wrap_text,
#briefingArea .wrap_text{ padding: 20px; }

#contactArea{ padding: 15vw 10vw; }
#contactArea h2{ padding: 0 0 60px; }
#contactArea .contact_list div{ padding: 0 0 40px; }

#footer .footer_logo{
    padding: 10vw 0;
    height: 210px;
}

#copyrightArea ul{
    display: initial;
    flex-grow: 1;
    float: left;
}
#copyrightArea li{
    padding: 0 20px 0 0;
    text-align: left;
    display: inline-block;
}
#copyrightArea .copyright{
    border: none;
    flex-grow: 1;
    font-size: 1em;
    padding: 0;
    text-align: right;
    margin: 0;
    display: inline-block;
    float: right;

}

#copyrightArea{
    background-color: #000;
    color: #FFF;
}

#copyrightArea .copyright_wrap a{
    color: #FFF;
}
#copyrightArea .copyright_wrap{
    margin: 0 auto;
    font-size: 0.6em;
    padding: 10px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}
#copyrightArea ul{
    flex-grow: 1;
    display: initial;
    flex-grow: 2;
}
#copyrightArea .copyright{
    border: none;
    flex-grow: 1;
    font-size: 1em;
    padding: 0;
    text-align: right;
    margin: 0;
}

}
@media screen and (min-width:1024px) {
/***************************
　for PC 　
****************************/
.sp { display: none!important; }
.tb { display: none!important; }
.pc { display: block!important; }
.st { display: none!important; }
.tp { display: block!important; }


#globalNav{
   display: none;
    height: 100%;
    position: fixed;
    width: 100%;
    z-index: 98;
    overflow: auto;
    margin-top: 70px;
}
#globalNav .gnav__wrap{
    align-items:center;
    display: flex;
    height: initial;
    justify-content: center;
    position: relative;
    width: 100%;
    overflow: auto;
    margin: 0 0 0 0;
}
#globalNav .gnav_contents{
    padding: 0px 0 70px 0;
}
.gnav__menu__item{
    margin: 0px 35%;

}

.other {  padding: 0 0 50px; }
.other li:first-child{ border-top: 1px solid #000; }
.other li:last-child{border-bottom: 1px solid #000; }
.gnav__menu__item a{
    color: #000;
    font-size: 1.0em;
    font-weight: bold;
    padding: 15px 0 15px 0;
    text-decoration: none;
    transition: .5s;
}
.gnav__menu__item a:hover{
    opacity: 0.7;
}
.ex_nonal{position: relative;}
.ex_nonal:after{
    position: absolute;
    content: "";
    display: inline-block;
    width: 20px;
    height: 20px;
    background: url(../images/icon_ex_nomal.png) no-repeat;
    background-size: 90%;
    top: 7px;
    right: -30px;
}

.gnav__menu{ padding: 30px 0;}

#globalNav .gnav_btm{ padding: 30px 0; }

.menu_logo{ padding-bottom: 40px; width: 40%; margin: 0 auto;}
.menu_logo img{ width: 60%; }

.menu_address{ font-size: 0.85em; line-height: 1.5; padding-bottom: 40px; }

#header{
	height: auto;
    padding: 30px 50px;
}

#header .headLogo { height: auto; width: 160px; padding: 0 10px 0 0; vertical-align: sub;}

#header .head_logoarea{
    flex-grow: 1;
    width: 20%;
    padding: 0;
}
#header .head_sub{
    padding: 5px 5px;
    text-align: center;
}
#headMenu{
    flex-grow: 1;
    width: 40%;
    font-size: 15px;
    background-color: #FFFFFF;
    position: relative;
    pointer-events:none;
}
#headMenu ul{
    position: absolute;
    bottom: 0;
    width: 100%;
}
#headMenu ul li{
    margin-left: 10px;
    font-size: 1em;
}

#headMenu a,
#headMenu a:visited{
    color: #000;
    pointer-events:auto!important;
}
#headMenu span.icon_menu,
#headMenu::before,
#headMenu::after { display: none; }
#headMenu span.menu_txt{ display: none; }

#headContact { display: block; }
#headContact .space li{
    text-align: right;
    position: relative;
    padding-bottom: 10px;
}
#headContact .space li:last-child{
    margin-bottom: -10px;
}

#headContact .btn_toiawase,
#headContact .btn_form{
    width: 130px;
    text-align: center;
    font-size: 0.75em;
    padding: 5px 32px;
}

#headContact .icon_toiawase{
    position: absolute;
    height: 20px;
    width: 20px;
    top: 6px;
    left: 10px;
    background-image: url(../images/common/icon_tel.png);
    background-repeat: no-repeat;
    background-size: 100%;
}
#headContact .icon_form{
    position: absolute;
    height: 20px;
    width: 20px;
    top: 6px;
    left: 10px;
    background-image: url(../images/common/icon_display.png);
    background-repeat: no-repeat;
    background-size: 100%;
}

#headContact .triangle {
    position: absolute;
    background-image: url(../images/common/icon_tips.png);
    background-repeat: no-repeat;
    height: 20px;
    width: 20px;
    right: 0;
    bottom: 10px;
}


#mainContents{margin-top: 130px;}

#keyVisual{ height: 500px; margin-top: 120px;}
#keyVisual .visual-wrapper{ height: 750px; }
#keyVisual .visual-wrapper .visual_title{
    width: 550px;
    padding:60px;
}

#recTitle{ padding: 60px 50px; }

#newsArea{
    padding: 3vw 2vw;
    max-width: 1240px;
    margin: 0 auto;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center;
}
#newsArea .title_area{ width: 30%; }
#newsArea .title_news{
    width: 110px;
    padding: 0 0 0px;
    margin-right: 20px;
}
#newsArea dl{
    width: 50%;
    padding: 0 0 0 0;
}

#greetingArea{
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}
#greetingArea .greeting_key,
#greetingArea .greeting_message{
    width: 50%;
    flex-grow: 1;
}
#greetingArea .greeting_key{ height: auto; }
#greetingArea .greeting_message{ padding: 4vw; }
#greetingArea .key_txt{  font-size: 2.3em; }

#indexArea{
    padding: 6vw 0vw;
    max-width: 1240px;
    margin: 0 auto;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    align-items: center;
}

#indexArea .index_wrap .list{
    flex-grow: 1;
    padding: 0 0 0 0;
    display: -webkit-initial;
    display: -moz-initial;
    display: -ms-initial;
    display: -o-initial;
    display: initial;
}
#indexArea .index_wrap .list:nth-child(2){
    padding: 0 50px 0;
}
#indexArea .index_wrap {
    width: 100%;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}
#indexArea .index_wrap .list_pic, #indexArea .index_wrap .list_text{
    flex-grow: initial;
    width: initial;
}



#qaArea{ padding: 7vw; }
#qaArea .qa_wrap{
    width: initial;
    padding: 50px;
    max-width: 1240px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}
#qaArea .qa_wrap .item{ padding: 50px; flex-grow: 1; }
#qaArea .qa_wrap .item:first-child{ padding: 0px; }
#qaArea .qa_wrap .item:nth-child(2){ padding: 0 100px 0 150px; }
#qaArea .qa_wrap .item:nth-child(3){ padding: 0 100px 0 0; }
#qaArea .qa_wrap .item:last-child{ padding: 0 100px 0 0; }


#recuritArea p, #briefingArea p{ font-size: 1em; }
#recuritArea .recruit_img{ width: 60%; flex-grow: 3; }
#recuritArea .recruit_text{ width: 40%; flex-grow: 2; }
#briefingArea .briefing_img{ width: 60%; flex-grow: 3; }
#briefingArea .briefing_text{ width: 40%; flex-grow: 2; }

#pageTop .pagetop_img{
    height: 50px;
    padding: 30px 0;
}

#contactArea{
    padding: 7vw;
    margin: 0 auto;
}
#contactArea .contact_wrap h2{
    max-width: 700px;
    margin: 0 auto;
}
#contactArea .contact_wrap .tel{
    max-width: 650px;
    margin: 0 auto;
}
#contactArea .contact_wrap .mail,
#contactArea .contact_wrap .form{
    max-width: 550px;
    margin: 0 auto;
}


#footer .footer_pc,
#footer .footer_pc .footer_menu,
#footer .footer_pc .footer_location{
	display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}

#footer .footer_pc{
    max-width: 1240px;
    margin: 0 auto;
    padding: 50px 20px;
}
#footer .footer_pc .footer_logo{
    height: auto;
	flex-grow: 1;
    margin: 0 100px 0 0;
    padding: 0 0 0 0;
}

#footer .footer_pc .footer_menu{
	flex-grow: 4;
    display: flex;
    position: relative;
}
#footer .footer_pc .footer_menu .menu_parts{
	flex-grow: 1;
	display: inline-block;
	font-size: 0.85em;
    font-weight: bold;
}

#footer .dots{
    background-color: #ED85A7;
    width: 20px;
    height: 8px;
    margin: 10px 0 0 0;
    border-top-left-radius: 30px 20px;
    border-top-right-radius: 30px 20px;
    border-bottom-right-radius: 30px 20px;
    border-bottom-left-radius: 30px 20px;

}

#footer .footer_pc .access{
	position: absolute;
    bottom: 0;
    text-align: left;
    padding: 0;
}

#footer .footer_pc .footer_location{
	flex-grow: 1;
	padding-left: 30px;
	font-size: 0.85em;
}

#footer .footer_pc .footer_location .name{
	flex-grow: 1;
}
#footer .footer_pc .footer_location .space{
	flex-grow: 2;
}
#footer .footer_pc .footer_location .space li{
	text-align: right;
    position: relative;
    padding-bottom: 10px;
}

#footer .readmore_black{
    padding: 2px 40px;
}
#footer .readmore_black,
#footer .btn_toiawase,
#footer .btn_form{
    width: 110px;
    text-align: center;
}


#footer .icon_toiawase,
#footer .icon_form{
    position: absolute;
    height: 20px;
    width: 20px;
    top: 10px;
    left: 27%;
}
#footer .icon_toiawase{
    background-image: url(../images/common/icon_tel.png);
    background-repeat: no-repeat;
    background-size: 100%;
}
#footer .icon_form{
    background-image: url(../images/common/icon_display.png);
    background-repeat: no-repeat;
    background-size: 100%;
}

#footer .triangle {
    position: absolute;
    background-image: url(../images/common/icon_tips.png);
    background-repeat: no-repeat;
    height: 20px;
    width: 20px;
    right: 0;
    bottom: 10px;
}


#copyrightArea{
    background-color: #000;
    color: #FFF;
}
#copyrightArea .copyright_wrap{
    max-width: 1240px;
    margin: 0 auto;
    padding: 10px 0px;
    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
}
#copyrightArea ul{
    flex-grow: 1;
	display: initial;
	flex-grow: 2;
}
#copyrightArea .copyright{
	border: none;
    flex-grow: 1;
    font-size: 1em;
    padding: 0;
    text-align: right;
    margin: 0;
}


/* scroll */


#header.is-fixed { height: 70px; padding: 0; }
#header.is-fixed .headLogo{ width:170px; vertical-align: initial;}
#header.is-fixed #headMenu {
    width: 10%;
    height: 70px;
    background-color: #000;
}
#header.is-fixed .head_sub{
    vertical-align: super;
}
#header.is-fixed .head_sub .pc{ display: none!important; }
#header.is-fixed #headMenu ul{ display: none!important;}
#header.is-fixed #headMenu span.menu_txt{ top: 43px; }
#header.is-fixed .head_logoarea{
    flex-grow: 2;
    width: 80%;
    padding: 0 3vw;
}
#header.is-fixed #headContact{display: none;}

#header.is-fixed #headMenu span.icon_menu,
#header.is-fixed #headMenu::before,
#header.is-fixed #headMenu::after { display: block; }
#header.is-fixed #headMenu span.menu_txt{ display: block; }

}
@media only screen and (-webkit-min-device-pixel-ratio: 2) {
#footer .icon_toiawase,
#headContact .icon_toiawase{
    background-image: url(../images/common/icon_tel@2x.png);
    background-repeat: no-repeat;
    background-size: 100%;
}
#footer .icon_form,
#headContact .icon_form{
    background-image: url(../images/common/icon_display@2x.png);
    background-repeat: no-repeat;
    background-size: 100%;
}

#footer .triangle,
#headContact .triangle {
    position: absolute;
    background-image: url(../images/common/icon_tips@2x.png);
    background-repeat: no-repeat;
    background-size: 100%;
    height: 13px;
    width: 13px;
    right: 5px;
    bottom: 15px;
}
}
@media screen and (min-width:1300px) {
/***************************
　for PC 2
****************************/

#headMenu ul li{ font-size: initial; margin-left: 30px; }
#header .headLogo { height: auto; width: 240px; padding: 0 40px 0 0; }

#headContact .btn_toiawase,
#headContact .btn_form{
    padding: 5px 40px;
}
#footer .icon_toiawase,
#footer .icon_form{ left: 35%; }

}

