@charset "utf-8";

/* =Reset default browser CSS.
Based on work by Eric Meyer: http://meyerweb.com/eric/tools/css/reset/index.html
-------------------------------------------------------------- */
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, font, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td {border: 0;font-family: inherit;font-size: 100%;font-style: inherit;font-weight: inherit;margin: 0;outline: 0;padding: 0;vertical-align: baseline;}
:focus {outline: 0;}

ol, ul {list-style: none;}
table {border-collapse: separate;border-spacing: 0;}
caption, th, td {font-weight: normal;text-align: left;}
blockquote:before, blockquote:after,q:before, q:after {content: "";}
blockquote, q {quotes: "" "";}
a img{border: 0;}
figure{margin:0}
article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {display: block;}
/* -------------------------------------------------------------- */

body{
	font-family: 'Lucida Grande','Hiragino Kaku Gothic ProN', Meiryo, メイリオ, sans-serif;
	color: #333;
	font-size: 14px;
	line-height: 1.6;
	-webkit-text-size-adjust: none;
}
.clearfix:after{
	visibility: hidden;
	display: block;
	content: ".";
	height: 0;
	clear: both;
}
* html .clearfix{ height: 1%;}
.clearfix{display: block;}

a{
	color: #333;
	text-decoration:none;
}
a:hover{ color: #111; text-decoration: underline;}
a:active, a:focus { outline: none;}
a:hover img{ opacity: 0.9;}

img{ vertical-align: bottom;}

.m10-t{ margin-top: 10px!important;}
.m20-t{ margin-top: 20px!important;}

/* common css
---------------------------------- */
.topBar{ padding: 10px;}
.topBar h1{}
@media (max-width: 768px) {
    .topBar h1 img{
        width: auto;
        height: 60px;
    }
}
@media (max-width: 425px) {
    .topBar h1 img{ height: 40px;}
}

footer{
    background: #f6f6f6;
    border-top: 1px solid #ddd;
}
footer .contBox{ padding: 40px 0 30px;}
.footLink{ float: left;}
.footLink ul{ font-size: 0;}
.footLink li{
    display: inline-block;
    margin: 0 30px 0 0;
}
.footLink li a{
    font-size: 12px;
    color: #555;
}
footer small{
    float: right;
    font-size: 12px;
    color: #888;
}
@media (max-width: 768px) {
    .footLink{
        float: none;
        text-align: center;
        margin: 0 0 20px 0;
    }
    .footLink li{ margin: 0 10px 0;}
    footer small{
        float: none;
        text-align: center;
        display: block;
    }
}
@media (max-width: 640px) {
    footer .contBox{ padding: 20px 0 10px;}
    footer .contBox.clearfix::after{ display: inline;}
    .footLink li{
        margin: 0 1% 1%;
        float: left;
        width: 48%;
        display: block;
    }
    .footLink li a{
        display: block;
        border: 1px solid #ccc;
        border-radius: 4px;
        padding: 5px;
        text-align: center;
    }
}

/***** pageTop *****/
.pagetop {
    display: none;
    position: fixed;
    bottom: 20px;
    right: 15px;
    z-index: 9999;
}
.pagetop a {
    display: block;
	background: url(../images/arrow-w-up.png) no-repeat center 10px #1ba1e6;
	background-size: 10px auto;
    text-align: center;
    color: #fff;
    font-size: 10px;
    text-decoration: none;
    opacity: 0.7;
    width:40px;
    height:40px;
    border-radius: 30px;
    position: relative;
}
.pagetop a span{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateY(-50%) translateX(-50%);
	padding: 10px 0 0 0;
}
.pagetop a:hover{ opacity: 1.0;}
@media (max-width: 425px) {
    body.jobOne .pagetop{ bottom: 80px;}
    body.jobOne footer{ padding: 0 0 70px 0;}
}


li.menu01 a.drawer-menu-item{
    padding: 17px 10px 15px 40px;
    background: url("../images/menu_home.png") no-repeat 15px center;
    background-size: 16px auto;
}
li.menu02 a.drawer-menu-item{
    padding: 17px 10px 15px 40px;
    background: url("../images/menu_job.png") no-repeat 15px center;
    background-size: 16px auto;
}
li.menu03 a.drawer-menu-item{
    padding: 17px 10px 15px 40px;
    background: url("../images/menu_mail.png") no-repeat 15px center;
    background-size: 16px auto;
}
li.menu01 a.drawer-menu-item:hover,
li.menu02 a.drawer-menu-item:hover,
li.menu03 a.drawer-menu-item:hover{ background-color: #ecf7fb;}

li.sub a.drawer-menu-item{
    font-size: 12px;
    padding: 12px 10px 10px 10px;
}

.contBox{
    max-width: 1000px;
    margin: 0 auto;
    padding: 60px 0;
}
.contBox.wide1400{ max-width: 1400px;}
.contBox h2{
    margin: 0 0 40px 0;
    text-align: center;
    font-size: 48px;
    line-height: 1.2;
    font-family: 'Noto Serif JP', serif;
    color: #124e6d;
}
@media (max-width: 1220px) {
    .contBox.wide1400{ margin: 0 10px;}
}
@media (max-width: 1024px) {
    .contBox{ margin: 0 10px;}
}
@media (max-width: 768px) {
    .contBox h2{ font-size: 30px;}
}
@media (max-width: 640px) {
    .contBox{ padding: 40px 0;}
    .contBox h2{
        font-size: 24px;
        margin: 0 0 30px 0;
    }
}
@media (max-width: 375px) {
    .contBox h2{ font-size: 20px;}
}

.bg01{ background: #ecf7fb;}
.bg02{ background: #f6f6f6;}
.bdrT{ border-top: 1px solid #ccc;}

table td span.type{
    display: inline-block;
    font-size: 12px;
    line-height: 1.0;
    padding: 5px 8px;
    margin: 0 0 5px 0;
}
table td span.emp{
    border: 1px solid #eb0e0e;
    color: #eb0e0e;
}
table td span.part{
    border: 1px solid #3460b3;
    color: #3460b3;
}

table.typeA{
    width: 100%;
    border-bottom: 1px solid #ccc;
    margin: 0 0 40px 0;
}
table.typeA th{
    width: 140px;
    padding-right: 20px;
    color: #555;
}
table.typeA th div{
    position: relative;
    padding: 30px 0;
}
table.typeA th div::before{
    content: '';
    display: block;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 0;
    left: 0;
    background-color: #1ba1e6;
}
table.typeA td{
    padding: 30px 0;
    border-top: 1px solid #ccc;
    color: #555;
}
table.typeA tr:first-child th div::before{ display: none;}
table.typeA tr:first-child td{ border: none;}

table.typeA.mini{}
table.typeA.mini th{
    width: 110px;
    font-size: 12px;
}
table.typeA.mini th div{ padding: 10px 0;}
table.typeA.mini td{
    padding: 10px 0;
    font-size: 12px;
}
@media(max-width: 1024px) {
    table.typeA th{ width: 100px;}
}
@media (max-width: 768px) {
    table.typeA th{ width: 30%;}
}
@media (max-width: 425px) {
    table.typeA th{
        box-sizing: border-box;
        width: 100%;
        display: block;
        padding: 0;
        background: #f6f6f6;
    }
    table.typeA th div{
        padding: 10px;
    }
    table.typeA td{
        box-sizing: border-box;
        width: 100%;
        display: block;
        border: none;
        padding: 10px 0;
    }
    table.typeA tr:first-child th div::before{ display: block;}
}






table.typeZ{
    width: 100%;
    border-bottom: 1px solid #ddd;
    margin: 0 0 40px 0;
}
table.typeZ th{
    display: block;
    width: 100%;
    box-sizing: border-box;
    color: #555;
    background: #f6f6f6;
    border-top: 1px solid #ddd;
}
table.typeZ th div{ padding: 5px 10px;}
table.typeZ td{
    display: block;
    width: 100%;
    box-sizing: border-box;
    padding: 15px 10px;
    color: #555;
}
table.typeZ.mini{}
table.typeZ.mini th{}
table.typeZ.mini th div{}
table.typeZ.mini td{}


/* slider img
---------------------------------- */
.swiper-container {
    width: 100%;
    height: 800px;
    /*height: calc(100vh - 100px);*/
}
.swiper-slide .slide-bgimg.cover01{
    background: url("../images/sliderTop-takahori.jpg") no-repeat center center;
    background-size: cover;
}
.swiper-slide .slide-bgimg.cover02{
    background: url("../images/sliderTop-mizue.jpg") no-repeat center center;
    background-size: cover;
}
.swiper-slide .slide-bgimg.cover03{
    background: url("../images/sliderTop-kitakoiwa.jpg") no-repeat center center;
    background-size: cover;
}
.swiper-slide .slide-bgimg{
    position: absolute;
    left: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
}
.swiper-slide .content{
    position: absolute;
    bottom: 30px;
    right: 10%;
    width: 400px;
    height: 400px;
    box-sizing: border-box;
    padding: 60px 35px 20px;
    background: #1ba1e6;
    background: -moz-linear-gradient(left,  #1ba1e6 0%, #89cff2 100%);
    background: -webkit-linear-gradient(left,  #1ba1e6 0%,#89cff2 100%);
    background: linear-gradient(to right,  #1ba1e6 0%,#89cff2 100%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#1ba1e6', endColorstr='#89cff2',GradientType=1 );
}
@keyframes SlideSquare{
	0%{
		opacity: 0.5;
		transform: translateX(100px);
	}
	100%{
		opacity: 1;
		transform: translateX(0);
	}
}
.swiper-slide.swiper-slide-active .content{
	animation-duration: 2s;
	animation-name: SlideSquare;
	opacity: 1;
}

.swiper-slide .content h2{
    margin: 0 0 20px 0;
    font-size: 52px;
    line-height: 1.2;
    font-family: 'Noto Serif JP', serif;
    font-weight: 600;
    color: #fff;
}
.swiper-slide .content p{
    font-size: 15px;
    color: #fff;
}
.swiper-slide .content .moreLink{
    position: absolute;
    right: 30px;
    bottom: 30px;
}
.swiper-slide .content .moreLink a{
	color: #fff!important;
	font-size: 14px;
	text-decoration: none;
	display: block;
	text-align: center;
	border: 1px solid #efefef;
	width: 160px;
	padding: 12px 0;
	margin: 0 auto;
	background: url(../images/arrow01.png) no-repeat right 15px center;
	background-size: 10px auto;
	position: relative;
	transition: all 0.4s ease;
	outline: none;
}
.swiper-slide .content .moreLink a:hover{
	color: #fff!important;
	border: 1px solid #fff;
	background-position: right 10px center;
}
@media (max-width: 1440px) {
    .swiper-slide .content{ right: 5%;}
}
@media (max-width: 768px) {
    .swiper-container{ height: 500px;}
    .swiper-slide .content{
        padding: 30px 30px 20px;
        height: 300px;
    }
    .swiper-slide .content h2{ font-size: 30px;}
    .swiper-slide .content h2 br{ display: none;}
}
@media (max-width: 640px) {
    .swiper-slide .content{
        padding: 15px 15px 70px;
        width: 100%;
        right: 0;
        left: 0;
        bottom: 0;
        height: auto;
    }
    .swiper-slide .content h2{ margin: 0 0 10px 0;}
    .swiper-slide .content .moreLink{
        right: 20px;
        bottom: 10px;
    }
    .swiper-slide.swiper-slide-active .content{ animation-name: none;}
    .swiper-slide .slide-bgimg{ padding-bottom: 150px;}
}
@media (max-width: 425px) {
    .swiper-container{ height: 350px;}
    .swiper-slide .content{ padding: 10px;}
    .swiper-slide .content h2{
        font-size: 20px;
        margin: 0 0 5px 0;
    }
    .swiper-slide .content p{
        font-size: 13px;
        margin: 0 0 10px 0;
    }
    .swiper-slide .content .moreLink{ position: static;}
    .swiper-slide .content .moreLink a{
        width: 100%;
        padding: 8px 0;
    }
}


/* top page
---------------------------------- */
.topMainbox{ padding: 100px 0;}
.topMainbox h1{
    margin: 0 0 40px 0;
    text-align: center;
    font-size: 48px;
    line-height: 1.2;
    font-family: 'Noto Serif JP', serif;
    color: #124e6d;
    font-feature-settings : "palt" 1;
}
.topServiceIN{ position: relative;}
.topServiceL{
	float: left;
	margin: 0;
	width: 85%;
}
.topServiceL img{
	width: 100%;
	height: auto;
	vertical-align: bottom;
}
.topServiceR{
	position: absolute;
    right: 5%;
	background: #fff;
	padding: 40px 40px 40px 120px;
	width: 45%;
	bottom: -40px;
	box-sizing: border-box;
	z-index: 100;
}
.topServiceR p{
    font-size: 18px;
    line-height: 1.6;
    margin: 0 0 15px 0;
}
.topServiceR p:last-child{ margin: 0;}
.topServiceR::before{
    content: '';
    width: 50px;
    height: 2px;
    background: #1ba1e6;
    display: block;
    position: absolute;
    top: 45px;
    left: 50px;
}
@media (max-width: 1440px) {
    .topServiceR{ width: 60%;}
    .topServiceR p{
        font-size: 16px;
        margin: 0 0 10px 0;
    }
}
@media (max-width: 1024px) {
    .topServiceL{
        width: 100%;
        float: none;
    }
    .topServiceR{
        width: 100%;
        position: relative;
        right: 0;
        bottom: 0;
        padding: 40px 40px 40px 100px;
    }
    .topServiceR::before{
        left: 40px;
        width: 40px;
    }
}
@media (max-width: 768px) {
    .topMainbox h1{ font-size: 30px;}
}
@media (max-width: 640px) {
    .topMainbox{ padding: 60px 0;}
    .topMainbox h1{
        font-size: 24px;
        margin: 0 0 30px 0;
    }
    .topServiceR p{ font-size: 14px;}
}
@media (max-width: 425px) {
    .topServiceR{ padding: 50px 20px 20px;}
    .topServiceR::before{
        top: 30px;
        left: 20px;
    }
}
@media (max-width: 375px) {
    .topMainbox h1{ font-size: 20px;}
    .topServiceR{ padding: 50px 10px 20px;}
    .topServiceR::before{ left: 10px;}
}

.topNewsbox{}
.topNewsbox dl{
    margin: 0 0 25px 0;
    padding: 0 0 25px 0;
    border-bottom: 1px solid #ccc;
}
.topNewsbox dl:last-child{ margin: 0;}
.topNewsbox dt.data{
    display: inline-block;
    width: 110px;
    font-size: 16px;
    color: #888;
}
.topNewsbox dd.cate{
    display: inline-block;
    border: 1px solid #ddd;
    text-align: center;
    padding: 8px 2px;
    width: 90px;
    font-size: 12px;
    line-height: 1.0;
    vertical-align: bottom;
}
.topNewsbox dd.cont{
    display: block;
    margin: 10px 0 0 0;
    font-size: 16px;
}
.topNewsbox dd.cont a{ text-decoration: underline;}
.topNewsbox dd.cont a:hover{ text-decoration: none;}
@media (max-width: 640px) {
    .topNewsbox dt.data{
        font-size: 14px;
        width: 100px;
    }
    .topNewsbox dd.cate{
        font-size: 11px;
        width: 80px;
    }
    .topNewsbox dd.cont{ font-size: 14px;}
}
@media (max-width: 425px) {
    .topNewsbox dl{
        margin: 0 0 20px 0;
        padding: 0 0 20px 0;
    }
}


.topgoShopbox{
    background: url("../images/topgoShop.jpg") no-repeat center center;
    background-size: cover;
    padding: 150px 0;
    position: relative;
}
.topgoShopbox::before{
    content: '';
    background: rgba(0,0,0,0.5);
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    top: 0;
}
.topgoShopbox .link a{
    font-family: 'Noto Serif JP', serif;
    color: #ddd!important;
	font-size: 24px;
	text-decoration: none;
	display: block;
	text-align: center;
	border: 1px solid #ddd;
	max-width: 600px;
	padding: 30px 0;
	margin: 0 auto;
	background: url(../images/arrow01.png) no-repeat right 15px center;
	background-size: 17px auto;
    background-color: rgba(255,255,255,0.2);
	position: relative;
	transition: all 0.4s ease;
	outline: none;
}
.topgoShopbox .link a:hover{
	color: #fff!important;
	border: 1px solid #fff;
	background-position: right 10px center;
    background-color: inherit;
}
@media (max-width: 768px) {
    .topgoShopbox{ background-size: 1000px auto;}
    .topgoShopbox .link a{ width: 96%;}
}
@media (max-width: 640px) {
    .topgoShopbox{
        padding: 100px 0;
        background-size: 700px auto;
    }
}
@media (max-width: 425px) {
    .topgoShopbox .link a{
        padding: 15px 0;
        font-size: 18px;
        background-size: 10px auto;
    }
}


.banaBox{ padding: 20px 0;}
.banaBox a{}
.banaBox a img{
    vertical-align: bottom;
    display: block;
    margin: 0 auto;
}
@media (max-width: 425px) {
    .banaBox{ padding: 20px 10px;}
    .banaBox a img{
        width: 100%;
        height: auto;
    }
}



/* job/
---------------------------------- */
.jobListbox{}
.jobListone{
    display: flex;
    justify-content: center;
    margin: 0 0 80px 0;
    clear: both;
}
.jobListone:last-of-type{ margin: 0;}
.jobListone .L{
    width: 1000px;
    flex-shrink: 0;
    position: relative;
}
.jobListone .L img{
    width: 100%;
    height: auto;
}
.jobListone .R{
    flex-shrink: 0;
    width: 400px;
    background: #fff;
    padding: 20px;
    box-sizing: border-box;
    position: relative;
}
.jobListone .R h3{
    font-size: 30px;
    line-height: 1.2;
    font-family: 'Noto Serif JP', serif;
    margin: 0 0 10px 0;
}
.jobListone .R .moreLink{
    position: absolute;
    right: 20px;
    bottom: 20px;
}
.jobListone .R .moreLink a{
	color: #1ba1e6!important;
	font-size: 14px;
	text-decoration: none;
	display: block;
	text-align: center;
	border: 1px solid #1ba1e6;
	width: 160px;
	padding: 12px 0;
	margin: 0 auto;
	background: url("../images/arrow01_blue.png") no-repeat right 15px center #ecf7fb;
	background-size: 10px auto;
	position: relative;
	transition: all 0.4s ease;
	outline: none;
}
.jobListone .R .moreLink a:hover{
	color: #1ba1e6!important;
	border: 1px solid #1ba1e6;
	background-position: right 10px center;
    background-color: #fff;
}
.jobListone .L::before {
    content: "";
    top: 0;
    left: 0;
    border-bottom: 80px solid transparent;
    border-left: 80px solid #f26600;
    position: absolute;
    z-index: 100;
}
.jobListone .L::after {
    content: "";
    display: block;
    top: 15px;
    left: 5px;
    transform: rotate(-45deg);
    color: #fff;
    font-size: 16px;
    position: absolute;
    z-index: 101;
}
.jobListone .L.katsushika::after { content: "葛飾区";}
.jobListone .L.edogawa::after {
    content: "江戸川区";
    font-size: 14px;
    top: 20px;
    left: 0;
}
@media (max-width: 1440px) {
    .jobListone .L{ width: 800px;}
}
@media (max-width: 1220px) {
    .jobListone{ display: block;}
    .jobListone .L{ width: 100%;}
    .jobListone .R{
        width: 100%;
        padding: 20px 20px 85px 20px;
    }
}
@media (max-width: 640px) {
    .jobListone{ margin: 0 0 40px 0;}
    .jobListone .R h3{ font-size: 20px;}
}
@media (max-width: 425px) {
    .jobListone .R{ padding: 10px 10px 85px 10px;}
}



table.typeB{ width: 100%;}
table.typeB th{
    width: 70px;
    padding: 15px 10px 10px 0;
    color: #555;
    font-size: 12px;
    border-bottom: 1px solid #1ba1e6;
}
table.typeB th div{}
table.typeB td{
    padding: 15px 10px 10px 0;
    border-bottom: 1px solid #ccc;
    font-size: 12px;
    color: #555;
}
@media (max-width: 1024px) {
    table.typeB th{ width: 200px;}
}
@media (max-width: 640px) {
    table.typeB th{ width: 80px;}
}
@media (max-width: 425px) {
    table.typeB{ border-bottom: 1px solid #ccc;}
    table.typeB th{
        width: 100%;
        display: block;
        box-sizing: border-box;
        background: #f6f6f6;
        border-bottom: none;
        font-size: 14px;
        border-top: 1px solid #1ba1e6;
        padding: 10px;
    }
    table.typeB td{
        width: 100%;
        display: block;
        box-sizing: border-box;
        
        border: none;
        padding: 10px 0;
    }
}




/* job/shopname/
---------------------------------- */
.JoboneBox{
    position: relative;
    /*padding: 60px 0;
    background: #ecf7fb;*/
}
.swiper-container.Jobone{
    max-width: 100%;
    height: calc( 100vh - 100px );
}
.swiper-container.Jobone .swiper-slide img{
    max-width: 100%;
    height: auto;
}
.swiper-pagination-bullet{ border: 1px solid #fff;}
.swiper-pagination-bullet-active{ background: #1ba1e6!important;}
@media (max-width: 1500px) {
    .swiper-container.Jobone{ height: auto;}
}

a.scroll{
	text-decoration: none;
	color: #fff;
	position: absolute;
	text-align: center;
	bottom: 40px;
	left: 50%;
	margin-left: -50px;
	width: 100px;
    padding: 20px 0 10px;
    z-index: 9999;
}
a.scroll span {
  position: absolute;
	bottom: 60px;
	left: 50%;
	width: 24px;
	height: 24px;
	margin-left: -12px;
	border-left: 4px solid #fff;
	border-bottom: 4px solid #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	box-sizing: border-box;
}a.scroll:hover{ opacity:0.8;}
@media (max-width: 768px) {
    a.scroll span { bottom: 50px;}
}
@media (max-width: 640px){
	a.scroll{ display: none;}
}


.jobMainbox{}
.jobMainbox h1{
    margin: 0 0 40px 0;
    text-align: center;
    font-size: 48px;
    line-height: 1.2;
    font-family: 'Noto Serif JP', serif;
    font-feature-settings : "palt" 1;
}
.comment{
    font-size: 18px;
    font-family: 'Noto Serif JP', serif;
    border: 1px solid #1ba1e6;
    margin: 0 0 60px 0;
}
.comment .In{
    max-width: 700px;
    margin: 0 auto;
    padding: 30px 0;
}
.comment span{ font-size: 28px;}
@media (max-width: 768px) {
    .jobMainbox h1{
        font-size: 36px;
        margin: 0 0 30px 0;
    }
    .comment .In{
        max-width: 100%;
        padding: 20px;
    }
    .comment span{ font-size: 24px;}
}
@media (max-width: 640px) {
    .jobMainbox h1{ font-size: 24px;}
    .comment{ font-size: 15px;}
    .comment span{ font-size: 18px;}
}
@media (max-width: 425px) {
    .comment{ font-size: 14px;}
    .comment span{ font-size: 16px;}
    .comment .In{ padding: 10px;}
}


.jobContbox{
    display: -webkit-box;
  	display: -ms-flexbox;
    display: flex;
}
.jobContbox .sideL{
    flex-shrink: 0;
    width: calc( 100% - 400px );
    margin: 0 20px 0 0;
}
.jobContbox .sideR{
    flex-shrink: 0;
    width: 380px;
}
@media (max-width: 768px) {
    .jobContbox{ display: block;}
    .jobContbox .sideL{
        width: 100%;
    }
    .jobContbox .sideR{
        width: 100%;
    }
}

.jobContbox h2,
.jobContbox h3{
    text-align: left;
    font-size: 24px;
    line-height: 1.6;
    font-family: 'Noto Serif JP', serif;
    color: #555;
    border-bottom: 1px solid #555;
    padding: 0 0 10px 0;
    margin: 0 0 20px 0;
}
.jobContbox .sideR h4{
    font-size: 14px;
    line-height: 1.1;
    color: #555;
    background: #f6f6f6;
    padding: 10px;
    margin: 0 0 25px 0;
}
@media (max-width: 640px) {
    .jobContbox h2,
    .jobContbox h3{
        font-size: 20px;
    }
}



.workBarbox{}
.workBarIn{
    position: relative;
}
.workBarbox .workBar{
    background: url("../images/work-bar.png") no-repeat left top;
    background-size: 100% auto;
    height: 10px;
}
.workBarbox .workBall{
    width: 24px;
    height: auto;
    position: absolute;
    top: -7px;
}
.workBarbox .workBall.here01{ left: 23%;}
.workBarbox .workBall.here02{ left: 50%; transform: translateY(0) translateX(-50%);}
.workBarbox .workBall.here03{ left: 73.5%;}
.workText{ position: relative;}
.workText::after{
    content: '';
    display: block;
    padding-bottom: 90px;
}
.workText li{
    position: absolute;
    display: inline-block;
    margin: 1.5em 0;
    padding: 2px 5px;
    width: 80px;
    max-width: 100%;
    color: #555;
    font-size: 12px;
    text-align: center;
    background: #fff;
    border: solid 1px #1ba1e6;
    box-sizing: border-box;
    border-radius: 4px;
}
.workText li::before{
    content: '';
    position: absolute;
    top: -17px;
    left: 50%;
    margin-left: -8px;
    border: 6px solid transparent;
    border-bottom: 11px solid #fff;
    z-index: 2;
}
.workText li::after {
    content: '';
    position: absolute;
    top: -22px;
    left: 50%;
    margin-left: -10px;
    border: 8px solid transparent;
    border-bottom: 14px solid #1ba1e6;
    z-index: 1;
}
.workText li.txtS{ left: 0;}
.workText li.txtM{
    left: 0;
    right: 0;
    top: 18px;
    margin: auto;
}
.workText li.txtL{ right: 0;}

.features{ margin: 0;}
.features ul{
    font-size: 0;
    padding-bottom: 40px;
}
.features li{
    display: inline-block;
    margin: 0 10px 10px 0;
    font-size: 12px;
    line-height: 1.1;
    color: #f26600;
    padding: 5px 5px 4px;
    border: 1px solid #f26600;
    border-radius: 3px;
}

.mapBox{}
.mapBox iframe{
    width: 100%;
    vertical-align: bottom;
}
.mapBox p{
    font-size: 14px;
    line-height: 1.2;
    text-align: right;
    padding: 5px 5px 10px 5px;
}
@media (max-width:425px) {
    .mapBox iframe{ height: 360px;}
    .mapBox p{ font-size: 12px;}
}
@media (max-width:375px) {
    .mapBox iframe{ height: 300px;}
}

.goApplicationbox{
    padding: 50px 0;
    background: #0f75e2;
    background: -moz-linear-gradient(left,  #0f75e2 0%, #1ba1e6 50%);
    background: -webkit-linear-gradient(left,  #0f75e2 0%,#1ba1e6 50%);
    background: linear-gradient(to right,  #0f75e2 0%,#1ba1e6 50%);
    filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#0f75e2', endColorstr='#1ba1e6',GradientType=1 );
}
.goApplicationbox .link a{
    font-family: 'Noto Serif JP', serif;
    color: #fff!important;
	font-size: 24px;
	text-decoration: none;
	display: block;
	text-align: center;
	border: 1px solid #fff;
	max-width: 600px;
	padding: 30px 0;
	margin: 0 auto;
	background: url(../images/arrow01.png) no-repeat right 30px center;
	background-size: 17px auto;
	position: relative;
	transition: all 0.4s ease;
	outline: none;
    box-sizing: border-box;
}
.goApplicationbox .link a:hover{
	color: #fff!important;
	background-position: right 20px center;
}
@media (max-width: 768px) {
    .goApplicationbox .link a{ width: 96%;}
}
@media (max-width: 425px) {
    .goApplicationbox{ display: none;}
    .goApplicationbox{ padding: 30px 0;}
    .goApplicationbox .link a{
        padding: 15px 0;
        font-size: 18px;
        background-size: 10px auto;
    }
}

.phoneCallbox{
    padding: 50px 0;
    background: #ecf7fb;
}
.phoneCallbox a{
    font-family: 'Noto Serif JP', serif;
    color: #1ba1e6!important;
	font-size: 36px;
	text-decoration: none;
	display: block;
	text-align: center;
	border: 1px solid #1ba1e6;
	max-width: 600px;
	padding: 15px 0 20px;
	margin: 0 auto;
    transition: all 0.4s ease;
	outline: none;
    box-sizing: border-box;
}
.phoneCallbox a span.tel{
    font-weight: 600;
    background: url(../images/phone.png) no-repeat left center;
	background-size: 20px auto;
    padding: 0 0 0 30px;
}
.phoneCallbox a span.sub{
    display: block;
    text-align: center;
    font-size: 16px;
    line-height: 1.0;
}
.phoneCallbox a:hover{ background: #fff;}
@media (max-width: 768px) {
    .phoneCallbox .link a{ width: 96%;}
}
@media (max-width: 425px) {
    .phoneCallbox{ display: none;}
    .phoneCallbox{ padding: 30px 0;}
    .phoneCallbox a{
        padding: 10px 0 15px;
        font-size: 24px;
    }
    .phoneCallbox a span.tel{
        background-size: 16px auto;
        padding: 0 0 0 20px;
    }
}


#spFooterbox{
	display: none;
	position: fixed;
	bottom: 0;
	width: 98%;
	padding: 0 1%;
	z-index: 999;
	background: rgba(27, 161, 230, 0.5);
}
#spFooterbox a{
	color: #fff;
	text-decoration: none;
	font-size: 18px;
	line-height: 45px;
}
#spFooterbox .spF-l a{
	float: left;
	width: 48%;
	height: 45px;
	margin: 10px 1%;
	padding: 0 0 0 20px;
	text-align: center;
	background: url("../images/sp-web.png") no-repeat 25px center #1ba1e6;
	background-size: 25px auto;
	border-radius: 4px;
	box-sizing: border-box;
}
#spFooterbox .spF-r a{
	float: left;
	width: 48%;
	height: 45px;
	margin: 10px 1%;
	padding: 0 0 0 20px;
	text-align: center;
	background: url("../images/sp-phone.png") no-repeat 35px center #1ba1e6;
	background-size: 15px auto;
	border-radius: 4px;
	box-sizing: border-box;
}
@media screen and (max-width:425px){
	#spFooterbox{ display: block;}
}
@media screen and (max-width:375px){
    #spFooterbox a{ font-size: 15px;}
    #spFooterbox .spF-l a{
        background-position: 15px center;
    }
    
    #spFooterbox .spF-r a{
        background-position: 20px center;
    }
}


.goReturnbox{
    padding: 20px 0;
    background: #fff;
}
.goReturnbox .link a{
    color: #1ba1e6!important;
	font-size: 12px;
	text-decoration: none;
	display: block;
	text-align: center;
	border: 1px solid #1ba1e6;
	max-width: 600px;
	padding: 15px 0;
	margin: 0 auto;
	transition: all 0.4s ease;
	outline: none;
    box-sizing: border-box;
}
.goReturnbox .link a:hover{ background: #ecf7fb;}
@media (max-width: 768px) {
    .goReturnbox .link a{ width: 96%;}
}


/* job/shopname/form/
---------------------------------- */
.formBox{
    background: #fff;
    padding: 40px 0;
}
.formBoxIn{
    max-width: 700px;
    margin: 0 auto;
}
.formBox h1{
    margin: 0 0 40px 0;
    text-align: center;
    font-size: 36px;
    line-height: 1.2;
    font-family: 'Noto Serif JP', serif;
    font-feature-settings : "palt" 1;
}
@media (max-width: 768px) {
    .formBoxIn{ margin: 0 10px;}
}
@media (max-width: 640px) {
    .formBox h1{
        font-size: 24px;
        margin: 0 0 30px 0;
    }
}
@media (max-width: 425px) {
    .formBox h1{ font-size: 20px;}
}




/* ---- php form ---- */
table.tableForm {
	width: 100%;
	border-collapse: collapse;
	border: 1px solid #ddd;
	margin: 0 0 20px;
}
.tableForm th{
	color: #555;
	font-size: 14px;
	padding: 15px 10px;
	width: 180px;
	border-bottom: 1px solid #e9e9e9;
	background: #fafafa;
    vertical-align: top;
}
.tableForm th span{
	color: #ff0000;
	font-size: 11px;
	line-height: 1.0;
	display: inline-block;
	border: 1px solid #ff0000;
    background: #fff;
	padding: 3px 5px;
	margin: 0 0 0 10px;
}
.tableForm td{
	color: #555;
	font-size: 14px;
	padding: 15px 10px;
	border-bottom: 1px solid #e9e9e9;
	background: #fff;
}
.tableForm td p{
    margin: 0;
    font-size: 12px;
}
.tableForm td p.caution{
    margin-top: 5px;
    line-height: 1.1;
}
.tableForm tr:last-child th{ border-bottom: none;}
.tableForm tr:last-child td{ border-bottom: none;}

input[type="text"],
input[type="button"],
input[type="reset"],
input[type="submit"],
textarea, select{
	-webkit-appearance: none;
}
input[type="text"],
input[type="email"],
input[type="password"],
select,
textarea{
    padding: 5px;
	border: 1px solid #ccc;
	border-radius: 3px;
    box-sizing: border-box;
}
select{
    background: url("../images/arrowD.png") no-repeat right 8px center;
    background-size: 10px auto;
    padding: 5px 30px 5px 5px;
}
textarea{ width: 100%;}

.sendbtnBox{ text-align: center;}
input[type="button"].sendBtn,
input[type="reset"].sendBtn,
input[type="submit"].sendBtn{
    cursor: pointer;
	color: #333!important;
	font-size: 13px;
	text-decoration: none;
	padding: 10px 20px;
	margin: 0 5px;
	border: 1px solid #ccc;
	background: #fff;
	border-radius: 3px;
	display: inline-block;
    box-sizing: border-box;
}
.sendBtn.go{ border: solid 1px #ff0000;}
.sendBtn:hover { background: #efefef;}




.tableForm td input.inpText01{ width: 300px;}
.tableForm td input.inpText02{ width: 100%;}
.tableForm td input.inpText03{ width: 100px;}
.tableForm td .inpTextbox{
	width: 100%;
	padding: 5px;
	border: 1px solid #ccc;
	border-radius: 3px;
}
.tableForm td label{
	margin: 0 10px 0 0;
	display: inline-block;
}
.tableForm td dl{ margin: 0 0 10px 0;}
.tableForm td dt{
	width: 90px;
	float: left;
	padding: 4px 0 0 0;
}
.tableForm td dd{ margin-left: 90px;}

.policyBox{
    max-width: 700px;
	color: #555;
	padding: 10px;
    font-size: 12px;
	text-align: center;
	background: #fafafa;
	margin: 0 auto 30px;
	border: 1px solid #e9e9e9;
}
.policyBox a{ text-decoration: underline;}


@media screen and (max-width:768px) {
    .tableForm td dt{
		float: none;
		width: 100%;
		padding: 0;
	}
	.tableForm td dd{ margin: 0;}
}
@media screen and (max-width: 640px) {
	.tableForm th{
        box-sizing: border-box;
        display: block;
		width: 100%;
        padding: 10px;
	}
	.tableForm td{
        box-sizing: border-box;
        display: block;
		width: 100%;
		padding: 10px;
	}
	.tableForm td input.inpText01{ width: 100%;}
	.tableForm td label{
		margin: 0 0 5px 0;
		display: block;
	}
    .tableForm tr:last-child th{ border-bottom: 1px solid #e9e9e9;}
}
@media screen and (max-width: 375px) {
    .tableForm td .YY{
        display: block;
        margin: 0 0 5px 0;
    }
	.tableForm td input.inpText03{ width: 80%;}
    .tableForm td .MM{ margin-right: 10px;}
    .tableForm td .MM select,
    .tableForm td .DD select{ width: 35%;}
}

/* ---- error ---- */
.errorTxt,
.checkTxt{
    margin: 0 0 40px 0;
    font-size: 18px;
    font-family: 'Noto Serif JP', serif;
    border: 1px solid #1ba1e6;
    padding: 20px;
}
p.error_messe{
	margin: 0 auto 10px;
	padding: 10px;
	border: 1px solid #ff0000;
	border-radius: 4px;
	text-align: center;
    background: url("../images/error.png") no-repeat 10px center;
    background-size: 20px auto;
}
@media (max-width: 425px) {
    .errorTxt,
    .checkTxt{
        font-size: 14px;
        padding: 10px;
    }
    p.error_messe{ padding: 8px 10px;}
}

/* ---- thanks ---- */
.formDonebox{
    border: 1px solid #333;
    padding: 100px 40px 120px;
    max-width: 600px;
    box-sizing: border-box;
    margin: 0 auto;
}
.formDonebox h3{
    text-align: center;
    font-size: 36px;
    font-family: 'Noto Serif JP', serif;
    font-weight: 600;
    color: #FF0000;
    margin: 0 0 40px 0;
}
.done{}
.done p{ font-size: 20px;}
@media (max-width: 640px) {
    .formDonebox{
        padding: 40px 20px;
    }
    .formDonebox h3{
        font-size: 24px;
        margin: 0 0 20px 0;
    }
    .done p{ font-size: 16px;}
}
@media (max-width: 425px) {
    .formDonebox{ padding: 20px 10px;}
    .formDonebox h3{ font-size: 18px;}
    .done p{ font-size: 14px;}
}


.commonBox{
    background: #fff;
    padding: 40px;
}
.commonBox h3{
    font-size: 16px;
    margin: 40px 0 10px;
}
@media (max-width: 640px) {
    .commonBox{ padding: 20px;}
}








