@charset "UTF-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video{
margin: 0;
padding: 0;
border: 0;
font-size: 100%;
vertical-align: baseline;
box-sizing: border-box;
}
html{
line-height: 1;
}
.clearfix:after{
content: "";
display: block;
height: 0;
clear: both;
visibility: hidden;
}
.clearfix{
display: inline-table;
}
/* Hides from IE-mac \*/
* html .clearfix{
height: 1%;
}
.clearfix{
display: block;
}
/* End hide from IE-mac */
ol, ul{
list-style: none;
}
table{
border-collapse: collapse;
border-spacing: 0;
}
.clear {
clear: both;
}
em.red{
color: #d4145a;
}
caption, th, td{
text-align: left;
font-weight: normal;
vertical-align: middle;
}
q, blockquote{
quotes: none;
}
q:before, q:after, blockquote:before, blockquote:after{
content: "";
content: none;
}
a img {
border: none;
}
article, aside, details, figcaption, figure, footer, header, hgroup, main, menu, nav, section, summary{
display: block;
}
*, :after, :before {
-webkit-box-sizing: border-box;
-moz-box-sizing: border-box;
box-sizing: border-box;
}
/*Noto JP*/
@font-face {
font-family: 'Noto Japanese';
font-style: normal;
font-weight: 400;
src: url("../fonts/NotoSansJP-Medium.otf") format('opentype');
font-display: swap;
}
body{
color: #333333;
font-family: "Noto Japanese", sans-serif;
line-height: 1.5;
-webkit-text-size-adjust: 100%;
}
img{
height: auto;
max-width: 100%;
}
a{
text-decoration: none;
}
@media screen and (max-width: 768px) {
.hidden-sp{
display: none !important;
}
}
@media screen and (min-width: 769px) {
.hidden-pc{
display: none !important;
}
}
/*------------------------------------------
サービス別レスポンシブ
------------------------------------------*/
/*youtube*/
.youtubeWrapper{
position: relative;
width: 100%;
padding-top: 56.25%;
}
.youtubeWrapper iframe {
position: absolute;
top: 0;
right: 0;
width: 100% !important;
height: 100% !important;
}
/*googlemap*/
.ggmapWrapper{
position: relative;
/*padding-bottom: 56.25%;*/
height: 390px;
overflow: hidden;
}
.ggmapWrapper iframe,
.ggmapWrapper object,
.ggmapWrapper embed{
position: absolute;
top: -200px;
left: 0;
width: 100%;
height: 600px;
}
.ggmapWrapper iframe{
height: 800px;
}
/*------------------------------------------
cmn
------------------------------------------*/
img{
vertical-align: top;
}
.hoverBtn{
-webkit-transition: 0.3s;
-moz-transition: 0.3s;
-o-transition: 0.3s;
transition: 0.3s;
}
.hoverBtn:hover{
opacity: 0.8;
}
h2{
text-align: center;
}
@media screen and (max-width: 768px) {
img{
width: 100%;
}
}
/*------------------------------------------
body
------------------------------------------*/
body{
}
@media screen and (max-width: 768px) {
}
/*------------------------------------------
header
------------------------------------------*/
@media screen and (max-width: 768px) {
}
/*------------------------------------------
nav
------------------------------------------*/
header{
width: 100%;
height: 155px;
background: url("../img/head.png") no-repeat center top -10px / 100% 155px;
position: absolute;
left: 0;
top: 0;
z-index: 2;
border-top: 10px solid #136233;
}
nav{
max-width: 980px;
margin: 0 auto;
position: relative;
.logoBox{
position: absolute;
left: -40px;
top: -10px;
z-index: 2;
}
ul{
padding: 30px 0 0 0;
float: right;
li{
float: left;
margin-left: 30px;
&:first-child{
margin-left: 0;
}
a{
color: #323232;
font-size: 15px;
&:hover{
text-decoration: underline;
}
}
}
}
}
@media screen and (max-width: 768px) {
header{
background: none;
height: auto;
}
nav{
width: 100%;
height: 75px;
padding: 0;
position: fixed;
z-index: 101;
background: #FFF;
top: 0;
}
nav .logoBox{
width: 100px;
margin-left: 10px;
position: relative;
z-index: 102;
left: 0;
top: 0;
}
nav .menuBtn{
width: 40px;
float: inherit;
position: fixed;
right: 5%;
top: 20px;
z-index: 11;
}
nav .menuBtn img.close{
display: none;
}
nav .menuBtn.active img.open{
display: none;
}
nav .menuBtn.active img.close{
display: inline-block;
}
nav ul.clearfix{
width: 100%;
padding: 70px 5% 5% 5%;
display: none;
background: #FFF;
position: absolute;
left: 0;
top: 0;
z-index: 10;
box-shadow: 0 0 10px 0 rgba(0,0,0,0.5);
li{
width: 100%;
padding: 0 0 15px 0;
margin: 0 0 15px 0;
border-bottom: 1px dotted #CCC;
text-align: center;
a{
color: #333;
display: block;
}
}
}
}
/*------------------------------------------
footer
------------------------------------------*/
footer{
padding: 20px 0;
background: #009145;
box-sizing: border-box !important;
}
footer *{
line-height: 1.5 !important;
font-family: sans-serif !important;
box-sizing: border-box !important;
letter-spacing: 1px !important;
}
footer .innerBox{
width: 980px;
margin: 0 auto;
}
footer #links{
float: left;
font-size: 14px;
color: #FFF;
}
footer #links *{
color: #FFF;
text-decoration: none;
font-size: 14px;
}
footer #links a:hover{
text-decoration: underline;
}
footer #copy{
float: right;
}
footer #copy small{
font-size: 14px;
color: #FFF;
}
@media screen and (max-width: 768px) {
footer{
width: 100%;
padding: 30px 0 80px 0;
margin: 0 auto;
text-align: center;
}
footer .innerBox{
width: 100%;
}
footer #links{
float: inherit;
padding-bottom: 1%;
}
footer #links,
footer #links *{
font-size: 12px;
}
footer #copy{
float: inherit;
font-size: 12px;
}
footer #copy small{
font-size: 12px;
}
}
/*------------------------------------------
mv
------------------------------------------*/
.mv{
position: relative;
border-bottom: 2px solid #136233;
}
@media screen and (max-width: 768px) {
.mv{
padding: 75px 0 0 0;
}
}
/*------------------------------------------
#contents_01
------------------------------------------*/
.contents_bg_01{
}
.contents_01{
max-width: 980px;
margin: 0 auto 100px auto;
background: #edf2d6;
h2{
position: relative;
top: -50px;
margin-bottom: -50px;
}
.mapBox{
min-height: 730px;
background: url("../img/map.png") no-repeat left 75px center / 418px;
}
.pulArea{
width: 424px;
padding: 130px 50px 0 0;
float: right;
ul{
li{
width: 100%;
float: left;
margin-bottom: 35px;
.hasCustomSelect{
font-size: 14px !important;
cursor: pointer;
}
.customSelect{
width: 100%;
padding: 18px 71px 18px 0;
border: 1px solid #136233;
font-size: 23px;
color: #323232;
background: url("../img/pul.png") no-repeat right center / 71px #FFF;
display: block;
cursor: pointer;
text-align: center;
>span{
width: 100% !important;
display: block;
}
}
}
}
}
}
@media screen and (max-width: 768px) {
.contents_01{
max-width: inherit;
margin: 50px auto 100px auto;
background: #edf2d6;
h2{
max-width: 300px;
position: relative;
top: -35px;
margin: 0 auto;
}
.mapBox{
min-height: inherit;
background: none;
}
.pulArea{
width: 100%;
padding: 0 5% 0 5%;
float: inherit;
ul{
li{
width: 100%;
float: left;
margin-bottom: 35px;
.hasCustomSelect{
font-size: 14px !important;
cursor: pointer;
}
.customSelect{
width: 100%;
padding: 18px 71px 18px 0;
border: 1px solid #136233;
font-size: 23px;
color: #323232;
background: url("../img/pul.png") no-repeat right center / 71px #FFF;
display: block;
cursor: pointer;
text-align: center;
>span{
width: 100% !important;
display: block;
}
}
}
}
}
}
}
/*------------------------------------------
#contents_02
------------------------------------------*/
.contents_bg_02{
border-top: 1px solid #aec74c;
border-bottom: 1px solid #aec74c;
background: url("../img/bg_01.jpg") no-repeat center / cover;
}
.contents_02{
width: 980px;
margin: 0 auto;
padding-bottom: 200px;
h2{
position: relative;
top: -50px;
margin-bottom: 15px;
}
ul{
li{
width: 305px;
margin-right: 32px;
float: left;
&:nth-child(3n){
margin-right: 0;
}
a{
width: 100%;
height: 100px;
padding-right: 15px;
display: table;
background: url("../img/arrow_02.png") no-repeat right 15px center / 23px #abc44a;
span{
display: table-cell;
text-align: center;
vertical-align: middle;
color: #FFF;
font-size: 26px;
}
}
}
}
}
@media screen and (max-width: 768px) {
.contents_bg_02{
border-top: 1px solid #aec74c;
border-bottom: 1px solid #aec74c;
background: url("../img/bg_01.jpg") no-repeat center / cover;
}
.contents_02{
width: 100%;
margin: 0 auto;
padding-bottom: 100px;
h2{
max-width: 300px;
position: relative;
top: -38px;
margin: 0 auto;
}
ul{
li{
width: 90%;
margin: 0 auto 5% auto !important;
float: inherit;
a{
width: 100%;
height: 100px;
padding-right: 15px;
display: table;
background: url("../img/arrow_02.png") no-repeat right 15px center / 23px #abc44a;
span{
display: table-cell;
text-align: center;
vertical-align: middle;
color: #FFF;
font-size: 26px;
}
}
}
}
}
}
/*------------------------------------------
#contents_03
------------------------------------------*/
.contents_03{
width: 980px;
margin: 0 auto 100px auto;
h2{
position: relative;
top: -55px;
margin-bottom: 15px;
}
ul{
li{
.imgBox{
width: 50%;
float: left;
}
.txtBox{
width: 50%;
padding: 30px 40px 0 40px;
float: right;
position: relative;
h3{
padding-bottom: 10px;
margin-bottom: 10px;
background: url("../img/dot.png") repeat-x center bottom / 15px;
font-size: 28px;
font-weight: bold;
color: #136233;
text-align: center;
}
p{
font-size: 17px;
line-height: 1.8;
color: #323232;
}
.btnBox{
width: 400px;
position: absolute;
bottom: 30px;
a{
width: 100%;
height: 75px;
background: url("../img/arrow_03.png") no-repeat right 20px center / 14px #FFF;
display: table;
border: 2px solid #ed6f4a;
border-radius: 40px;
span{
display: table-cell;
text-align: center;
vertical-align: middle;
font-size: 24px;
color: #ed6f4a;
}
&:hover{
opacity: 1;
background: url("../img/arrow_03.png") no-repeat right 20px center / 14px #CCC;
}
}
}
}
&:nth-child(even){
.imgBox{
float: right;
}
.txtBox{
float: left;
}
}
&:nth-child(1){
.txtBox{
background: url("../img/bg_job_01.jpg") no-repeat right bottom / cover;
}
}
&:nth-child(2){
.txtBox{
background: url("../img/bg_job_02.jpg") no-repeat right bottom / cover;
}
}
&:nth-child(3){
.txtBox{
background: url("../img/bg_job_03.jpg") no-repeat right bottom / cover;
}
}
}
}
}
@media screen and (max-width: 768px) {
.contents_03{
width: 100%;
margin: 0 auto 100px auto;
h2{
max-width: 300px;
position: relative;
top: -41px;
margin: 0 auto;
}
ul{
li{
.imgBox{
width: 100%;
float: inherit;
}
.txtBox{
width: 100%;
padding: 30px 5% 0 5%;
float: inherit;
position: relative;
h3{
padding-bottom: 10px;
margin-bottom: 10px;
background: url("../img/dot.png") repeat-x center bottom / 15px;
font-size: 28px;
font-weight: bold;
color: #136233;
text-align: center;
}
p{
font-size: 17px;
line-height: 1.8;
color: #323232;
}
.btnBox{
width: 100%;
padding: 20px 0 20px 0;
position: inherit;
bottom: inherit;
a{
width: 100%;
height: 75px;
background: url("../img/arrow_03.png") no-repeat right 20px center / 14px #FFF;
display: table;
border: 2px solid #ed6f4a;
border-radius: 40px;
span{
display: table-cell;
text-align: center;
vertical-align: middle;
font-size: 20px;
color: #ed6f4a;
}
&:hover{
opacity: 1;
background: url("../img/arrow_03.png") no-repeat right 20px center / 14px #CCC;
}
}
}
}
&:nth-child(even){
.imgBox{
float: right;
}
.txtBox{
float: left;
}
}
&:nth-child(1){
.txtBox{
background: url("../img/bg_job_01.jpg") no-repeat right bottom / cover;
}
}
&:nth-child(2){
.txtBox{
background: url("../img/bg_job_02.jpg") no-repeat right bottom / cover;
}
}
&:nth-child(3){
.txtBox{
background: url("../img/bg_job_03.jpg") no-repeat right bottom / cover;
}
}
}
}
}
}
/*------------------------------------------
#contents_04
------------------------------------------*/
.contents_bg_04{
background: url("../img/bg_02.jpg") no-repeat center top / cover;
border-top: 1px solid #aec74c;
border-bottom: 1px solid #aec74c;
}
.contents_04{
h2{
position: relative;
top: -50px;
margin-bottom: 35px;
}
ul{
width: 980px;
margin: 0 auto;
padding-bottom: 50px;
text-align: center;
font-size: 0;
li{
width: 305px;
margin: 0 32px 32px 0;
display: inline-block;
&:nth-child(3n),
&:last-child{
margin-right: 0;
}
a{
display: block;
position: relative;
height: 100%;
border-radius: 200px;
&:before{
content: "";
width: 100%;
height: 100%;
display: block;
border: 1px solid #FFF;
position: absolute;
left: 0;
top: 0;
opacity: 0;
border-radius: 200px;
-webkit-transition: 0.3s;
-moz-transition: 0.3s;
-o-transition: 0.3s;
transition: 0.3s;
}
&:hover{
&:before{
border: 10px solid #FFF;
opacity: 0.5;
}
}
.icon{
position: absolute;
left: 50%;
bottom: 20px;
-webkit-transform: translate(-50%, 0);
transform: translate(-50%, 0);
}
p{
width: 100%;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
font-size: 28px;
font-weight: bold;
color: #FFF;
}
}
}
}
}
@media screen and (max-width: 768px) {
.contents_04{
h2{
max-width: 300px;
position: relative;
top: -38px;
margin: 0 auto;
}
ul{
width: 100%;
margin: 0 auto;
padding: 0 5% 100px 5%;
text-align: center;
font-size: 0;
li{
width: inherit;
max-width: 305px;
margin: 0 auto 5% auto;
display: inline-block;
&:nth-child(3n),
&:last-child{
margin-right: 0;
}
a{
display: block;
position: relative;
height: 100%;
border-radius: 200px;
&:before{
content: "";
width: 100%;
height: 100%;
display: block;
border: 1px solid #FFF;
position: absolute;
left: 0;
top: 0;
opacity: 0;
border-radius: 200px;
-webkit-transition: 0.3s;
-moz-transition: 0.3s;
-o-transition: 0.3s;
transition: 0.3s;
}
&:hover{
&:before{
border: 10px solid #FFF;
opacity: 0.5;
}
}
.icon{
position: absolute;
left: 50%;
bottom: 20px;
-webkit-transform: translate(-50%, 0);
transform: translate(-50%, 0);
}
p{
width: 100%;
position: absolute;
top: 50%;
left: 50%;
-webkit-transform: translate(-50%, -50%);
transform: translate(-50%, -50%);
font-size: 28px;
font-weight: bold;
color: #FFF;
}
}
}
}
}
}
/*------------------------------------------
#contents_05
------------------------------------------*/
.contents_bg_05{
}
.contents_05{
padding-bottom: 50px;
h2{
position: relative;
top: -51px;
}
.boxLR{
width: 980px;
margin: 0 auto;
.boxL,
.boxR{
position: relative;
width: 480px;
}
.boxL{
float: left;
}
.boxR{
float: right;
}
h3{
position: absolute;
left: 10px;
top: -40px;
}
.btnBox{
a{
width: 100%;
height: 75px;
display: table;
background: url("../img/icon_plus.png") no-repeat right 20px center / 24px #87ab00;
border-radius: 40px;
position: relative;
top: -37px;
span{
display: table-cell;
text-align: center;
vertical-align: middle;
font-size: 25px;
color: #FFF;
}
&:hover{
opacity: 1;
background: url("../img/icon_plus_hover.png") no-repeat right 20px center / 24px #c3d580;
}
}
}
}
}
@media screen and (max-width: 768px) {
.contents_05{
padding-bottom: 40px;
h2{
position: relative;
top: -48px;
}
.boxLR{
width: 100%;
margin: 0 auto;
.boxL,
.boxR{
padding: 0 5%;
position: relative;
width: 100%;
}
.boxL{
float: inherit;
}
.boxR{
float: inherit;
}
h3{
position: relative;
left: 10px;
top: 20px;
}
.btnBox{
a{
width: 100%;
height: 75px;
display: table;
background: url("../img/icon_plus.png") no-repeat right 20px center / 24px #87ab00;
border-radius: 40px;
position: relative;
top: -37px;
span{
display: table-cell;
text-align: center;
vertical-align: middle;
font-size: 25px;
color: #FFF;
}
&:hover{
opacity: 1;
background: url("../img/icon_plus_hover.png") no-repeat right 20px center / 24px #c3d580;
}
}
}
}
}
}
/*------------------------------------------
#contents_06
------------------------------------------*/
.contents_bg_06{
background: url("../img/bg_03.jpg") repeat-y center top / 100%;
border-top: 1px solid #aec74c;
}
.contents_06{
padding-bottom: 100px;
h2{
position: relative;
top: -50px;
}
.qaBox{
width: 980px;
margin: 0 auto;
dl{
margin-bottom: 15px;
dt{
padding: 30px 50px 30px 100px;
cursor: pointer;
background: url("../img/icon_open.png") no-repeat right 20px center / 30px #c5d780;
font-size: 28px;
font-weight: bold;
color: #146233;
position: relative;
&:before{
content: "";
width: 60px;
height: 60px;
display: block;
background: url("../img/icon_q.png") no-repeat center / 60px;
position: absolute;
top: 50%;
left: 23px;
-webkit-transform: translate(0, -50%);
transform: translate(0, -50%);
}
&.active{
background: url("../img/icon_close.png") no-repeat right 20px center / 30px #c5d780;
}
}
dd{
display: none;
padding: 30px 20px 30px 100px;
background: #FFF;
position: relative;
font-size: 28px;
&:before{
content: "";
width: 60px;
height: 60px;
display: block;
background: url("../img/icon_a.png") no-repeat center / 60px;
position: absolute;
top: 22px;
left: 23px;
}
}
}
}
}
@media screen and (max-width: 768px) {
.contents_06{
padding-bottom: 50px;
h2{
max-width: 300px;
margin: 0 auto;
position: relative;
top: -38px;
}
.qaBox{
width: 100%;
margin: 0 auto;
padding: 0 5%;
dl{
margin-bottom: 15px;
dt{
padding: 30px 50px 30px 100px;
cursor: pointer;
background: url("../img/icon_open.png") no-repeat right 20px center / 30px #c5d780;
font-size: 20px;
font-weight: bold;
color: #146233;
position: relative;
&:before{
content: "";
width: 60px;
height: 60px;
display: block;
background: url("../img/icon_q.png") no-repeat center / 60px;
position: absolute;
top: 50%;
left: 23px;
-webkit-transform: translate(0, -50%);
transform: translate(0, -50%);
}
&.active{
background: url("../img/icon_close.png") no-repeat right 20px center / 30px #c5d780;
}
}
dd{
display: none;
padding: 30px 20px 30px 100px;
background: #FFF;
position: relative;
font-size: 20px;
&:before{
content: "";
width: 60px;
height: 60px;
display: block;
background: url("../img/icon_a.png") no-repeat center / 60px;
position: absolute;
top: 50%;
left: 23px;
-webkit-transform: translate(0, -50%);
transform: translate(0, -50%);
}
}
}
}
}
}
/*------------------------------------------
#btn
------------------------------------------*/
.btnList{
padding: 90px 0;
text-align: center;
a{
width: 420px;
height: 80px;
margin: 0 auto;
display: table;
background: url("../img/arrow_01.png") no-repeat right 30px center / 14px #e66517;
border-radius: 40px;
&:hover{
opacity: 0.5;
}
span{
display: table-cell;
font-size: 41px;
color: #FFF;
text-align: center;
vertical-align: middle;
}
}
}
@media screen and (max-width: 768px) {
.btnList{
padding: 50px 5%;
text-align: center;
a{
width: 100%;
height: 80px;
margin: 0 auto;
display: table;
background: url("../img/arrow_01.png") no-repeat right 30px center / 14px #e66517;
border-radius: 40px;
&:hover{
opacity: 0.5;
}
span{
font-size: 24px;
}
}
}
}
/*------------------------------------------
#モーダル
------------------------------------------*/
.modalContents{
display: none;
}
.modaal-container{
max-width: 750px;
padding: 0;
background: #FFF;
border-radius: 30px;
>button{
}
}
.modaal-content-container{
padding: 0;
}
.modalBox{
position: relative;
padding: 65px 35px 35px 35px;
h3{
width: 676px;
height: 82px;
padding: 15px 0 0 20px;
margin-bottom: 30px;
background: url("../img/bg_sttl_interview.png") no-repeat center left / 676px;
color: #136233;
font-size: 28px;
font-weight: bold;
}
.topImg{
position: absolute;
right: 25px;
top: 25px;
}
.txtBox{
dl{
margin-bottom: 30px;
dt{
padding: 10px 0 10px 50px;
margin-bottom: 20px;
background: url("../img/icon_q.png") no-repeat left center / 40px;
color: #136233;
font-size: 21px;
font-weight: bold;
}
dd{
padding: 5px 0 10px 50px;
background: url("../img/icon_a.png") no-repeat left top / 40px;
font-size: 21px;
}
}
}
}
@media screen and (max-width: 768px) {
.modaal-container{
border-radius: 0 0 30px 30px;
}
.modalBox{
position: relative;
padding: 20px 0 35px 0;
h3{
width: 100%;
height: 82px;
padding: 20px 0 0 20px;
margin-bottom: 30px;
background: url("../img/bg_sttl_interview.png") no-repeat center left / 676px;
color: #136233;
font-size: 18px;
font-weight: bold;
}
.topImg{
padding: 0 5%;
position: inherit;
right: inherit;
top: inherit;
text-align: center;
}
.txtBox{
dl{
padding: 0 5%;
margin-bottom: 30px;
dt{
padding: 5px 0 10px 50px;
margin-bottom: 20px;
background: url("../img/icon_q.png") no-repeat left top / 40px;
color: #136233;
font-size: 18px;
font-weight: bold;
}
dd{
padding: 5px 0 10px 50px;
background: url("../img/icon_a.png") no-repeat left top / 40px;
font-size: 18px;
}
}
}
}
.modaal-wrapper .modaal-close{
background: #FFF;
box-shadow: 0 0 10px rgba(0,0,0,0.5);
}
.modaal-close:before,
.modaal-close:after{
background: #b93d0c;
}
}
/* ------------------------------
トップへ戻る
------------------------------ */
#toTop{
position: fixed;
right: 0;
bottom: 0;
display: none;
z-index: 4;
}
#toTop a{
-webkit-transition: 0.3s;
-moz-transition: 0.3s;
-o-transition: 0.3s;
transition: 0.3s;
}
#toTop a:hover{
opacity: 0.8;
}
@media screen and (max-width: 768px) {
#toTop img{
width: 40px;
}
}