@charset "utf-8";
/*
 Share Style
----------------------------------------------------------- */
* {
    margin: 0;
    padding: 0;
}
*, *:before, *:after {
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
    box-sizing: border-box;
}
body {
    background: #FFF;
    font-family: "メイリオ", Meiryo, Verdana, "ＭＳ Ｐゴシック", sans-serif;
    font-size: 90%;
	margin: 0;
	padding: 0;
	font-size: 100%;
	-webkit-print-color-adjust: exact;
	overflow-x: visible !important;
    overflow-y: visible !important;
}
html {
    
    scroll-behavior: smooth;
}
h1, h2, h3, h4, h5, h6 {
}
p, li, dt, dl {
    line-height: 1.6;
}
p {
    margin: 0 0 1em 0;
}
li {
    list-style-type: none;
}
img {
    border: 0;
}
address {
    font-style: normal;
}
.clear {
    clear: both;
}
@media print{
  .onlyPC {
    display: block;
}
.onlySP {
    display: none !important;
}
.menuPC {
    display: block;
}
.menuSP {
    display: none !important;
}
}
/*
 Link Color
----------------------------------------------------------- */
a:link {
    color: #0065b0;
    text-decoration: none;
}
a:visited {
    color: #0065b0;
    text-decoration: none;
}
a:hover {
    text-decoration: underline;
}
a:active {
    color: #666;
}
/*
 container
----------------------------------------------------------- */
#container {
    width: 100%;
    height: auto;
    margin: 0;
    padding: 0;
	overflow: hidden;
}
/*
 Head
----------------------------------------------------------- */
header {
    width: 100%;
    z-index: 1;
}
header .head {
    width: 100%;
    min-width: 1000px;
    height: 80px;
    padding: 0 20px;
    float: left;
}
header .head .logo {
    width: 32%;
    padding: 20px 0;
    float: left;
}
/*メニュー */
header .head .nav {
    width: 55%;
    float: left;
}
header .head .cnt {
    width: 13%;
    float: right;
}
header .head .nav ul.gnavi {
    width: 100%;
    float: left;
    text-align: right;
    padding-top: 31px;
}
header .head .nav ul.gnavi li {
    display: inline;
    font-size: 14px;
    font-weight: bold;
    margin-right: 4%;
}
header .head .nav ul.gnavi li a {
    color: #000;
}
header .head .nav ul.gnavi li a:hover {
    color: #0065b0;
    border-bottom: #007cb2 3px solid;
    text-decoration: none;
}
header .head .nav ul.gnavi li.nav_on a {
    color: #0065b0;
    border-bottom: #007cb2 3px solid;
    text-decoration: none;
}
header .head .cnt {
    display: block;
    width: 130px;
    height: 35px;
    line-height: 35px;
    position: relative;
    text-decoration: none;
    text-align: center;
    color: #fff;
    font-weight: bold;
    border-radius: 17.5px;
    z-index: 0;
    margin-top: 25px;
}
header .head .cnt a, header .head .cnt a:hover {
    color: #fff;
    text-decoration: none;
}
header .head .cnt:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 17.5px;
    z-index: -1;
    left: 0;
    transition: 0.5s;
    background: linear-gradient(to left, #0e9cb8, #001eaa);
}
header .head .cnt:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 17.5px;
    z-index: -2;
    left: 0;
    background: linear-gradient(to left, #6ec7da, #0e9cb8);
}
header .head .cnt:hover:before {
    opacity: 0;
}
header .head .cnt a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
header:after {
    content: "";
    display: block;
    clear: both;
}

@media screen and (max-width:1099px) {
header .head .nav {
}
header .head .nav ul {
    float: left;
    width: 100%;
    padding: 30px 20px 0;
}
header .head .nav ul li {
    width: 100%;
    font-size: 1rem;
    padding-bottom: 10px;
    margin-bottom: 10px;
    border-bottom: 1px #ccc solid;
    margin-right: 30px;
    padding-left: 20px;
    position: relative;
    font-weight: bold;
	font-family: 'Roboto',"メイリオ", Meiryo, Verdana, "ＭＳ Ｐゴシック", sans-serif;
}
header .head .nav ul li:before {
    content: "\025b6";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    color: #0e9cb8;
}
header .head .nav ul li a {
    color: #333;
}
}
/*
 main
----------------------------------------------------------- */
#main {
    width: 100%;
    height: auto;
    font-size: 16px;
}
h2 {
    text-align: center;
    font-size: 2.5rem;
    margin-bottom: 55px;
}
.inner {
    max-width: 1000px;
	width: 96%;
    height: auto;
    padding: 70px 0 90px;
    margin: 0 auto;
}
.inner.first {
    padding: 110px 0 90px;
}
@media screen and (max-width:999px) {
.inner {
    padding: 40px 0 50px;
}
.inner.first {
    padding: 80px 0 90px;
}
}
@media screen and (max-width:640px) {
h2 {
    font-size: 2rem;
    margin-bottom: 30px;
}
#main {
    font-size: 14px;
}
}
/*
 main　トップページ
----------------------------------------------------------- */
#intro {
    background-color:#e4f1fb;
}
#intro h2 {
    width: 300px;
    font-family: 'Roboto';
    letter-spacing: 5px;
    margin: 0 auto 55px;
    color: #0065b0;
    background: -webkit-linear-gradient(0deg, #001eaa, #0e9cb8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
#intro .introwrap {
    width: 96%;
	margin: 0 auto;
	display: block;
}
#intro .introwrap .introbox {
    width: 100%;
	text-align: center;
}
#intro .introwrap .introbox img {
    width: 100%;
	margin: 0 auto;
	border: #FFF 5px solid;
}
#intro .introwrap .introbox p.ttl {
    color: #0065b0;
	font-size: 28px;
	font-weight: bold;
	margin-bottom: 25px;
	line-height: 1.4;
}
#intro .introwrap .introbox .btn {
    display: block;
    width: 270px;
    height: 46px;
    line-height: 46px;
    position: relative;
    text-decoration: none;
    text-align: center;
    color: #fff;
    border-radius: 10px;
    z-index: 0;
    margin: 35px auto 0;
    font-size: 18px;
}
#intro .introwrap .introbox .btn a, #intro .introwrap .introbox .btn:hover {
    color: #fff;
    text-decoration: none;
}
#intro .introwrap .introbox .btn:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 10px;
    z-index: -1;
    left: 0;
    transition: 0.5s;
    background: linear-gradient(to left, #0e9cb8, #001eaa);
}
#intro .introwrap .introbox .btn:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 10px;
    z-index: -2;
    left: 0;
    background: linear-gradient(to left, #6ec7da, #0e9cb8);
}
#intro .introwrap .introbox .btn:hover:before {
    opacity: 0;
}
#intro .introwrap .introbox .btn a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/arrow.png)top 12px right 15px no-repeat;
    background-size: 20px 20px;
}
#info {
    background: linear-gradient(to top, #0e9cb8, #001eaa);
}
#info h2 {
    color: #fff;
    font-family: 'Roboto';
    letter-spacing: 5px;
}
#info .info_btn {
    display: flex;
    justify-content: space-between;
}
#info .info_btn a:hover {
    opacity: 0.7;
}
#news {
    background: #fff;
}
#news h2 {
    width: 130px;
    font-family: 'Roboto';
    letter-spacing: 5px;
    margin: 0 auto 55px;
    color: #0065b0;
    background: -webkit-linear-gradient(0deg, #001eaa, #0e9cb8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
#news .newsarea ul {
    width: 100%;
    padding: 0 20px 30px;
    margin-bottom: 30px;
    border-bottom: #e9e9e9 1px solid;
}
#news .newsarea ul li {
    float: left;
    text-align: left;
}
#news .newsarea ul li.newsdate {
    width: 16%;
    height: auto;
    font-size: 18px;
    font-family: 'Roboto';
    color: #0065b0;
}
#news .newsarea ul li.newsmain {
    width: 80%;
    font-size: 16px;
    line-height: 1.6;
}
#news .newsarea ul:after {
    content: "";
    display: block;
    clear: both;
}
@media screen and (max-width:999px) {
#intro .introwrap .introbox p.ttl {
	font-size: 1.4rem;
	margin-bottom: 5px;
}
#intro .introwrap .introbox {
	margin-left: 15px;
}
#intro .introwrap .introbox .btn {
    margin: 20px auto 0;
}
	#info .info_btn {
    width: 90%;
	margin: 0 5%;
}
#info .info_btn img {
    width: 90%;
}
}
@media screen and (max-width:640px) {
#intro h2 {
	margin-bottom: 30px;
}
#intro .introwrap {
	display: block;
}
#intro .introwrap .introimg {
	 width: 90%;
	 margin: 0 5%;
}
#intro .introwrap .introbox {
    width: 96%;
	margin: 0 2%;
	text-align: left;
}
#intro .introwrap .introbox p.ttl {
	font-size: 1.5rem;
	margin-bottom: 10px;
	text-align: center;
}
#intro .introwrap .introbox .btn {
    margin: 15px auto 0;
}
#info .info_btn {
    flex-wrap: wrap;
    justify-content: space-around;
}
#info .info_btn a {
    width: 33%;
}
#news .newsarea ul li.newsdate {
    width: 100%;
}
#news .newsarea ul li.newsmain {
    width: 100%;
}
#news h2 {
    margin: 0 auto 30px;
}
#news .newsarea ul li.newsmain {
    font-size: 14px;
}
}
/*
受託開発ページ
----------------------------------------------------------- */
.development h1 {
    background-image: url(../development/img/ttl_bk.png);
    background-size: cover;
    width: 100%;
    height: 300px;
    text-align: left;
    font-size: 2.5rem;
    font-family: 'Roboto';
    letter-spacing: 5px;
    padding: 100px 0 0 60px;
    color: #fff;
}
.development h1 span {
    display: block;
    font-size: 20px;
    font-weight: normal;
    line-height: 1.8;
}
.development article:nth-child(even) {
    background-color: #e4f1fb;
}
.development article:nth-child(-n + 3) {
    text-align: center;
}
.development article:nth-child(2) p {
    margin-bottom: 30px;
}
.development h2 {
    width: 550px;
    margin: 0 auto 55px;
    color: #0065b0;
    background: -webkit-linear-gradient(0deg, #001eaa, #0e9cb8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.development .btn {
    display: block;
    width: 460px;
    height: 75px;
    line-height: 75px;
    position: relative;
    text-decoration: none;
    text-align: center;
    color: #fff;
    font-weight: bold;
    border-radius: 10px;
    z-index: 0;
    margin: 70px auto 0;
    font-size: 25px;
}
.development .btn a, .development .btn:hover {
    color: #fff;
    text-decoration: none;
}
.development .btn:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 10px;
    z-index: -1;
    left: 0;
    transition: 0.5s;
    background: linear-gradient(to left, #0e9cb8, #001eaa);
}
.development .btn:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 10px;
    z-index: -2;
    left: 0;
    background: linear-gradient(to left, #6ec7da, #0e9cb8);
}
.development .btn:hover:before {
    opacity: 0;
}
.development .btn a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/arrow.png)top 20px right 30px no-repeat;
}
.development ul.inbtn {
    width: 96%;
    margin: 0 2% 20px;
    float: left;
}
.development ul.inbtn li {
    width: 460px;
    height: 75px;
    line-height: 75px;
    position: relative;
    text-decoration: none;
    text-align: center;
    color: #fff;
    font-weight: bold;
    border-radius: 10px;
    z-index: 0;
    margin: 0 0 20px;
    font-size: 22px;
    float: left;
}
.development ul.inbtn li p {
    font-size: 22px;
    transform: scale(0.8, 1);
    line-height: 78px;
    text-align: left;
    text-indent: -25px;
}
.development ul.inbtn li:nth-child(2n) {
    margin: 0 0 20px 40px;
}
.development ul.inbtn li a, .development ul.inbtn li a:hover {
    color: #fff;
    text-decoration: none;
}
.development ul.inbtn li:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 10px;
    z-index: -1;
    left: 0;
    transition: 0.5s;
    background: #19a6c3;
}
.development ul.inbtn li:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 10px;
    z-index: -2;
    left: 0;
    background: linear-gradient(to left, #6ec7da, #0e9cb8);
}
.development ul.inbtn li:hover:before {
    opacity: 0;
}
.development ul.inbtn li a {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/arrow02.png)top 20px right 20px no-repeat;
}
.development .wrap {
    width: 96%;
    height: auto;
    margin: 0 2% 40px;
    background-color: #fff;
    border-radius: 17px;
    webkit-box-shadow: 0 0 10px rgba(0,0,0,0.1);
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    padding: 60px 70px 70px;
}
.development .wrap:last-child {
    margin: 0 2% 0;
}
.development .wrap h3 {
    color: #0065b0;
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    padding-bottom: 30px;
}
.development .wrap .ttlbox {
    width: 80px;
    height: 2px;
    background: linear-gradient(to left, #0e9cb8, #001eaa);
    margin: 0 auto 30px;
}
.development .wrap .wrapbox {
    width: 100%;
    height: auto;
    background-color: #fff;
    border: #dfe6ea 1px solid;
    margin-top: 30px;
}
.development .wrap .wrapbox .ttl {
    width: 100%;
    height: 60px;
    line-height: 60px;
    background-color: #dfe6ea;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    color: #333;
}
.development .wrap .wrapbox ul {
    padding: 30px 30px 10px;
    width: 100%;
}
.development .wrap .wrapbox ul li {
    float: left;
    margin-bottom: 20px;
    text-indent: -15px;
    padding: 0 0 0 5px;
}
.development .wrap .wrapbox ul li span {
    font-weight: bold;
    color: #0065b0;
}
.development .wrap .wrapbox ul:after {
    content: "";
    display: block;
    clear: both;
}
.development .wrap .wrapbox .photobox {
    margin: 0 0 20px;
    text-align: center;
}
.development .wrap .wrapbox .photobox img:nth-child(2) {
    margin: 0 0 0 20px;
}
@media screen and (max-width:999px) {
.development article:nth-child(2) img {
	width: 100%;
}
.development article:nth-child(3) img {
	width: 100%;
}
.development .wrap {
    padding: 40px 25px 30px;
}
.development .wrap .wrapbox {
    margin-top: 20px;
}
.development .wrap .wrapbox .photobox {
    padding: 0 10px;
}
.development .wrap .wrapbox .photobox img {
    width: 47%;
}
.development .wrap .wrapbox .photobox img.p01 {
    width: 100%;
}
}
@media screen and (max-width:1099px) {
.development ul.inbtn li {
    width: 47%;
    height: 60px;
    line-height: 60px;
    font-size: 1.0rem;
}
.development ul.inbtn li p {
    font-size: 1.0rem;
    line-height: 62px;
    text-indent: -25px;
}
.development ul.inbtn li a {
    position: absolute;
    background: url(../img/arrow02.png)top 17px right 10px no-repeat;
	background-size: 25px;
}
}
@media screen and (max-width:640px) {
.development article:nth-child(2) p {
    text-align: left;
}
.development h2 {
    width: 90%;
    margin: 0 auto 15px;
}
.development .wrap h3 {
    font-size: 24px;
    padding-bottom: 20px;
}
.development .wrap {
    padding: 30px 15px;
}
.development .wrap .wrapbox ul {
    padding: 20px 15px 0;
}
.development .wrap .wrapbox .photobox img {
    width: 100%;
}
.development .wrap .wrapbox .photobox img:nth-child(2) {
    margin: 10px 0 0;
}
.development ul.inbtn li {
    width: 95%;
    height: 55px;
    line-height: 55px;
    margin: 0 2.5% 10px;
    font-size: 18px;
}
.development ul.inbtn li:nth-child(2n) {
    margin: 0 2.5% 10px;
}
.development ul.inbtn li a {
    position: absolute;
    background: url(../img/arrow02.png)top 14px right 10px no-repeat;
	background-size: 25px;
}
.development ul.inbtn li p {
    font-size: 0.95rem;
    line-height: 58px;
    text-indent: -10px;
}
.development .btn {
    width: 90%;
    height: 60px;
    line-height: 60px;
    margin: 35px auto 0;
    font-size: 1.2rem;
}
.development .btn a {
    background: url(../img/arrow.png)top 17px right 15px no-repeat;
	background-size: 25px;
}
}
/*
企業概要ページ
----------------------------------------------------------- */
.information h1 {
    background-image: url(../information/img/ttl_bk.png);
    background-size: cover;
    width: 100%;
    height: 300px;
    text-align: left;
    font-size: 2.5rem;
    font-family: 'Roboto';
    letter-spacing: 5px;
    padding: 100px 0 0 60px;
    color: #fff;
}
.information h1 span {
    display: block;
    font-size: 20px;
    font-weight: normal;
    line-height: 1.8;
}
.information .submenu {
    background-color: #e4f1fb;
}
.information .submenu .info_btn {
    width: 90%;
	max-width: 900px;
    margin: 0 auto;
    padding: 45px 0;
    display: flex;
    justify-content: space-between;
}
.information .submenu .info_btn a:hover {
    opacity: 0.7;
}
.information article:nth-child(even) {
    background-color: #e4f1fb;
}
.information #aisatsu h2 {
    width: 130px;
    margin: 0 auto 55px;
    color: #0065b0;
    background: -webkit-linear-gradient(0deg, #001eaa, #0e9cb8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.information #rinen h2 {
    width: 360px;
    margin: 0 auto 55px;
    color: #0065b0;
    background: -webkit-linear-gradient(0deg, #001eaa, #0e9cb8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.information #gaiyo h2 {
    width: 160px;
    margin: 0 auto 55px;
    color: #0065b0;
    background: -webkit-linear-gradient(0deg, #001eaa, #0e9cb8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.information #enkaku h2 {
    width: 100px;
    margin: 0 auto 55px;
    color: #0065b0;
    background: -webkit-linear-gradient(0deg, #001eaa, #0e9cb8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.information #map h2 {
    width: 130px;
    margin: 0 auto 10px;
    color: #0065b0;
    background: -webkit-linear-gradient(0deg, #001eaa, #0e9cb8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.information #security h2 {
    width: 330px;
    margin: 0 auto 55px;
    color: #0065b0;
    background: -webkit-linear-gradient(0deg, #001eaa, #0e9cb8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.information #aisatsu img {
    width: 25%;
	float: right;
	margin: 0 0 10px 10px;
}
@media screen and (max-width:999px) {
.information #aisatsu img {
    width: 35%;
}
}
@media screen and (max-width:640px) {
.information #aisatsu img {
	width: 50%;
	float: right;
	margin: 0 25% 10px;
}
}
.information #aisatsu p.textright {
    text-align: right;
    font-size: 18px;
}
.information #aisatsu p.textright span {
    font-size: 24px;
}
.information .wrap {
    width: 96%;
    height: auto;
    margin: 0 2% 40px;
    background-color: #fff;
    border-radius: 17px;
    webkit-box-shadow: 0 0 10px rgba(0,0,0,0.1);
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    padding: 60px 70px 70px;
}
.information .wrap:last-child {
    margin: 0 2% 0;
}
.information .wrap h3 {
    color: #0065b0;
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    padding-bottom: 30px;
}
.information .wrap .ttlbox {
    width: 80px;
    height: 2px;
    background: linear-gradient(to left, #0e9cb8, #001eaa);
    margin: 0 auto 30px;
}
.information .wrap p {
    text-indent: -20px;
    margin-bottom: 5px;
}
.information .wrap p span {
    font-size: 22px;
    font-weight: bold;
}
.information .wrap p.txt {
    text-indent: 0;
    margin-bottom: 13px;
    margin-left: -20px;
}
.information .wrap p.textright {
    text-align: right;
    margin-top: 40px;
}
.information .wrap .photobox {
    margin: 0;
    text-align: center;
}
.information table {
    width: 100%;
    height: auto;
    border-collapse: collapse;
    border-spacing: 0;
}
.information table tr th {
    border: 1px #dfe6ea solid;
    padding: 20px;
    vertical-align: middle;
    background-color: #eff7fb;
    text-align: center;
    font-weight: bold;
    width: 25%;
}
.information table tr td {
    border: 1px #dfe6ea solid;
    padding: 20px;
    vertical-align: middle;
    background-color: #fff;
    text-align: left;
    width: 75%;
}
.information .wrapmap {
    max-width: 1000px;
	width: 100%;
    padding: 45px 0 70px;
    border-bottom: 1px #0065b0 solid;
}
.information .wrapmap:last-child {
    padding: 45px 0 0;
    border-bottom: none;
}
.information h4 {
    padding: 0 0 10px 20px;
    color: #0065b0;
    text-align: left;
    font-weight: bold;
    font-size: 20px;
}
.information .wrapmap p {
    padding: 0 0 5px 20px;
}
.information .wrapmap .mapbox {
    width: 100%;
    display: flex;
    margin-top: 10px;
}
.information .wrapmap .mapbox .maptxt {
    width: 33%;
    font-size: 14px;
}
@media screen and (max-width:999px) {
.information #aisatsu h2,.information #rinen h2,.information #gaiyo h2,.information #enkaku h2,.information #security h2 {
    margin: 0 auto 30px;
}
.information .wrap {
    padding: 40px 45px 30px;
}
.information .wrap img.p01 {
    width: 100%;
}
}
@media screen and (max-width:640px) {
.information #aisatsu h2,.information #rinen h2,.information #gaiyo h2,.information #enkaku h2,.information #security h2 {
    margin: 0 auto 15px;
}
.information .submenu .info_btn {
    padding: 30px 0;
	display:flex;
	 flex-wrap:wrap;
    justify-content:space-around;
	width: 90%;
    margin: 0 5%;
}
.information .submenu .info_btn a {
    width: 30%;
}
.information .submenu .info_btn a img {
    width: 100%;
}
.information #aisatsu p.textright {
    font-size: 16px;
}
.information #aisatsu p.textright span {
    font-size: 20px;
}
.information .wrap h3 {
    font-size: 24px;
    padding-bottom: 20px;
}
.information .wrap {
    padding: 30px 15px;
}
.information table tr th {
    padding: 10px;
}
.information table tr td {
    padding: 10px;
}
.information .map iframe {
   height: 200px;
}
	.information .wrapmap {
    padding: 30px 0 40px;
}
.information .wrapmap:last-child {
    padding: 30px 0 0;
}
.information .wrapmap .mapbox {
    display: block;
	margin-top: 0;
}
.information .wrapmap .mapbox .maptxt {
    width: 100%;
	margin-top: 10px;
}
.information .wrap p {
    text-indent: 0;
}
.information .wrap p span {
    font-size: 18px;
}
.information .wrap p.txt {
    margin-left: 0;
}
.information .wrap p.textright {
    margin-top: 20px;
}
.information .wrap .photobox img {
    width: 100%;
}
}
/*
採用ページ
----------------------------------------------------------- */
.recruit h1 {
    background-image: url(../recruit/img/ttl_bk.png);
    background-size: cover;
    width: 100%;
    height: 165px;
    text-align: left;
    font-size: 2.5rem;
    font-family: 'Roboto';
    letter-spacing: 5px;
    padding: 40px 0 0 60px;
    color: #fff;
}
.recruit h1 span {
    display: block;
    font-size: 20px;
    font-weight: normal;
    line-height: 1.8;
}
.recruit article:nth-child(odd) {
    background-color: #e4f1fb;
}
.recruit #bosyu h2 {
    width: 170px;
    margin: 0 auto 45px;
    color: #0065b0;
    background: -webkit-linear-gradient(0deg, #001eaa, #0e9cb8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.recruit .btnbox {
    display: flex;
    margin-bottom: 50px;
}
.recruit .btnbox .btn {
    display: block;
    width: 460px;
    height: 75px;
    line-height: 75px;
    position: relative;
    text-decoration: none;
    text-align: center;
    color: #fff;
    font-weight: bold;
    border-radius: 10px;
    z-index: 0;
    margin: 0 20px 0;
    font-size: 1.5rem;
}
.recruit .btnbox .btn a, .recruit .btnbox .btn:hover {
    color: #fff;
    text-decoration: none;
}
.recruit .btnbox .btn:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 10px;
    z-index: -1;
    left: 0;
    transition: 0.5s;
    background: linear-gradient(to left, #0e9cb8, #001eaa);
}
.recruit .btnbox .btn:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 10px;
    z-index: -2;
    left: 0;
    background: linear-gradient(to left, #6ec7da, #0e9cb8);
}
.recruit .btnbox .btn:hover:before {
    opacity: 0;
}
.recruit .btnbox .btn a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/arrow.png)top 22px right 15px no-repeat;
	background-size: 30px;
}
.recruit .recwrap {
    width: 96%;
    height: auto;
    margin: 0 2%;
    display: flex;
}
.recruit .recwrap .recbox {
    width: 48%;
    height: auto;
    background-color: #fff;
    webkit-box-shadow: 0 0 10px rgba(0,0,0,0.1);
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
}
.recruit .recwrap .recbox:nth-child(1) {
    margin-right: 4%;
}
.recruit .recwrap .recbox .recttl {
    background-color: #19a6c3;
    font-size: 1.8rem;;
    font-weight: bold;
    text-align: center;
    color: #fff;
    height: 75px;
    line-height: 75px;
}
.recruit .recwrap .recbox p {
    padding: 35px 35px 10px;
}
.recruit .recwrap .recbox p img {
    margin: 15px 20px 0;
}
.recruit .recwrap .recbox .btn {
    display: block;
    width: 85%;
    height: 50px;
    line-height: 50px;
    position: relative;
    text-decoration: none;
    text-align: center;
    color: #fff;
    font-weight: bold;
    border-radius: 25px;
    z-index: 0;
    margin: 0 auto 35px;
    font-size: 18px;
}
.recruit .recwrap .recbox .btn.m103 {
    margin-top: 103px;
}
.recruit .recwrap .recbox .btn a, .recruit .recwrap .recbox .btn:hover {
    color: #fff;
    text-decoration: none;
}
.recruit .recwrap .recbox .btn:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 25px;
    z-index: -1;
    left: 0;
    transition: 0.5s;
    background: linear-gradient(to left, #0e9cb8, #001eaa);
}
.recruit .recwrap .recbox .btn:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 25px;
    z-index: -2;
    left: 0;
    background: linear-gradient(to left, #6ec7da, #0e9cb8);
}
.recruit .recwrap .recbox .btn:hover:before {
    opacity: 0;
}
.recruit .recwrap .recbox .btn a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.recruit #bosyu table {
    width: 100%;
    height: auto;
    border-collapse: collapse;
    border-spacing: 0;
}
.recruit #bosyu table tr th {
    border: 1px #dfe6ea solid;
    padding: 20px;
    vertical-align: middle;
    background-color: #eff7fb;
    text-align: center;
    font-weight: bold;
    width: 25%;
}
.recruit #bosyu table tr td {
    border: 1px #dfe6ea solid;
    padding: 20px;
    vertical-align: middle;
    background-color: #fff;
    text-align: left;
    width: 75%;
}
.recruit .career {
    background-color: #fff;
    text-align: center;
}
.recruit .career h2 {
    width: 300px;
    margin: 0 auto 45px;
    color: #0065b0;
    background: -webkit-linear-gradient(0deg, #001eaa, #0e9cb8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.recruit .career table {
    width: 100%;
    height: auto;
    border-collapse: collapse;
    border-spacing: 0;
    margin-top: 80px;
	margin-bottom: 40px;
}
.recruit .career table tr th {
    border: 1px #dfe6ea solid;
    padding: 20px;
    vertical-align: middle;
    background-color: #c0ddec;
    color: #fff;
    text-align: center;
    font-weight: bold;
    width: 7%;
    font-size: 24px;
}
.recruit .career table tr td {
    border: 1px #dfe6ea solid;
    padding: 20px;
    vertical-align: middle;
    background-color: #fff;
    text-align: left;
    width: 68%;
}
.recruit .career table tr td.t01 {
    border: 1px #dfe6ea solid;
    padding: 20px;
    vertical-align: middle;
    background-color: #eff7fb;
    text-align: left;
    font-weight: bold;
    width: 25%;
}
.recruit #innovation h2 {
    width: 220px;
    margin: 0 auto 45px;
    color: #0065b0;
    background: -webkit-linear-gradient(0deg, #001eaa, #0e9cb8);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
}
.recruit #innovation p {
    text-align: center;
    font-weight: bold;
    color: #0f218b;
}
.recruit #innovation .iconwrap {
    display: flex;
    width: 86%;
    margin: 40px 7% 0;
    background-color: #fff;
    border: #dfe6ea 1px solid;
    border-radius: 10px;
    padding: 10px 20px;
}
.recruit #innovation .iconwrap img {
    margin-right: 20px;
}
.recruit #innovation .iconwrap p {
    text-align: left;
    font-weight: normal;
    color: #333;
    margin-top: 25px;
}
.recruit .wrap {
    width: 96%;
    height: auto;
    margin: 0 2% 40px;
    background-color: #fff;
    border-radius: 17px;
    webkit-box-shadow: 0 0 10px rgba(0,0,0,0.1);
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
    padding: 60px 40px 70px;
}
.recruit .wrap:last-child {
    margin: 0 2% 0;
}
.recruit .wrap h3 {
    color: #0065b0;
    font-size: 30px;
    font-weight: bold;
    text-align: center;
    line-height: 1;
    padding-bottom: 30px;
}
.recruit .wrap .ttlbox {
    width: 80px;
    height: 2px;
    background: linear-gradient(to left, #0e9cb8, #001eaa);
    margin: 0 auto 30px;
}
.recruit .wrap table {
    width: 100%;
    height: auto;
    border-collapse: collapse;
    border-spacing: 0;
    margin: 40px 0 10px;
}
.recruit .wrap table tr th {
    border: 1px #dfe6ea solid;
    padding: 20px;
    vertical-align: middle;
    background-color: #eff7fb;
    color: #333;
    text-align: left;
    font-weight: bold;
    width: 30%;
}
.recruit .wrap table tr td {
    border: 1px #dfe6ea solid;
    padding: 20px;
    vertical-align: middle;
    background-color: #fff;
    text-align: left;
    width: 60%;
}
.recruit .wrap table tr td.t01 {
    border: 1px #dfe6ea solid;
    padding: 20px;
    vertical-align: middle;
    background-color: #fff;
    text-align: center;
    width: 10%;
    font-weight: bold;
}
.recruit .recwrap02 {
    width: 100%;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
}
.recruit .recwrap02 .box {
    width: 278px;
    height: auto;
    border: #dfe6ea 1px solid;
    margin-bottom: 20px;
}
.recruit .recwrap02 .box:nth-child(2) {
    margin: 0 20px 20px;
}
.recruit .recwrap02 .box:nth-child(4) {
    margin: 0;
}
.recruit .recwrap02 .box:nth-child(5) {
    margin: 0 20px 0;
}
.recruit .recwrap02 .box p {
    padding: 13px 15px 0;
    font-size: 16px;
}
@media screen and (max-width:999px) {
.recruit #bosyu h2 {
    margin: 0 auto 30px;
}
.recruit .recwrap .recbox p {
    padding: 20px 20px 10px;
}
.recruit .recwrap .recbox p img {
    margin: 15px 5px 0;
	width: 100%;
}
.recruit .recwrap .recbox .btn {
    font-size: 2vw;
}
.recruit .career img {
    width: 100%;
}
.recruit .career h2 {
    margin: 0 auto 30px;
}
.recruit #innovation h2 {
    margin: 0 auto 30px;
}
.recruit .wrap {
    padding: 40px 25px 30px;
}
}
@media screen and (max-width:1099px) {
.recruit .recwrap02 {
    width: 100%;
	display: flex;
}
.recruit .recwrap02 .box {
    width: 49%;
}
.recruit .recwrap02 .box:nth-child(2) {
    margin: 0 0 20px 2%;
}
.recruit .recwrap02 .box:nth-child(4) {
    margin: 0 0 20px 2%;
}
.recruit .recwrap02 .box:nth-child(5) {
    margin: 0;
}
.recruit .recwrap02 .box img{
		width: 100%;
	}
}
@media screen and (max-width:640px) {
.recruit h1 {
    background-image: url(../recruit/img/ttl_bk_sp.png);
}
.recruit .btnbox {
    display:block;
    margin-bottom: 30px;
}
.recruit .btnbox .btn {
    width: 90%;
    height: 60px;
    line-height: 60px;
    margin: 0 5% 15px;
    font-size: 1.2rem;
}
.recruit .btnbox .btn a {
    background: url(../img/arrow.png)top 17px right 15px no-repeat;
	background-size: 25px;
}
.recruit .recwrap {
    width: 90%;
    margin: 0 5%;
    display: block;
}
.recruit .recwrap .recbox {
    width: 100%;
	padding-bottom: 1px;
}
.recruit .recwrap .recbox:nth-child(1) {
    margin-right: 0;
	margin-bottom: 15px;
}
.recruit .recwrap .recbox .recttl {
    font-size: 1.4rem;
    height: 60px;
    line-height: 60px;
}
.recruit .recwrap .recbox p {
    padding: 20px 20px 0;
}
.recruit .recwrap .recbox .btn {
    font-size: 1.0rem;
}
.recruit .recwrap .recbox .btn.m103 {
    margin-top: 0;
}
.recruit #bosyu table tr th {
    padding: 10px;
}
.recruit #bosyu table tr td {
    padding: 10px;
}
.recruit .career table tr th {
    font-size: 16px;
	width: 3%;
	padding: 10px;
}
.recruit .career table tr td {
    padding: 10px;
    width: 67%;
}
.recruit .career table tr td.t01 {
    padding: 10px;
    width: 30%;
}
.recruit .career h2 {
    margin: 0 auto 10px;
}
.recruit #innovation h2 {
    margin: 0 auto 10px;
}
.recruit #innovation .iconwrap {
    display: block;
    width: 90%;
    margin: 20px 5% 0;
	text-align: center;
}
.recruit #innovation .iconwrap img {
    margin: 0 auto;
}
.recruit #innovation .iconwrap p {
    margin-top: 10px;
}
.recruit .wrap h3 {
    font-size: 24px;
    padding-bottom: 20px;
}
.recruit .wrap {
    padding: 30px 15px;
}
.recruit .recwrap02 {
	display: block;
}
.recruit .recwrap02 .box {
    width: 100%;
	margin-bottom: 15px;
}
.recruit .recwrap02 .box:nth-child(2) {
    margin: 0 0 15px 0;
}
.recruit .recwrap02 .box:nth-child(4) {
    margin: 0 0 15px 0;
}
.recruit .recwrap02 .box:nth-child(5) {
    margin: 0;
}
.recruit .recwrap02 .box p {
    font-size: 14px;
}
	.recruit .wrap table {
    margin: 30px 0 10px;
}
	.recruit .wrap table tr th {
    padding: 10px;
    width: 30%;
}
.recruit .wrap table tr td {
    padding: 10px;
    width: 60%;
}
.recruit .wrap table tr td.t01 {
    padding: 10px;
    width: 10%;
}
}
.recruit .recbtn{
	width: 400px;
	text-align: center;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: 0 auto;
}
.recruit .recbtn .rec {
    display: block;
    width: 170px;
    height: 35px;
    line-height: 35px;
    position: relative;
    text-decoration: none;
    text-align: center;
    color: #fff;
    border-radius: 17.5px;
    z-index: 0;
    margin-top: 25px;
}
.recruit .recbtn .rec a, .recruit .recbtn .rec a:hover {
    color: #fff;
    text-decoration: none;
}
.recruit .recbtn .rec:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 17.5px;
    z-index: -1;
    left: 0;
    transition: 0.5s;
    background: linear-gradient(to left, #0e9cb8, #001eaa);
}
.recruit .recbtn .rec:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 17.5px;
    z-index: -2;
    left: 0;
    background: linear-gradient(to left, #6ec7da, #0e9cb8);
}
.recruit .recbtn .rec:hover:before {
    opacity: 0;
}
.recruit .recbtn .rec a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
@media screen and (max-width:640px) {
	.recruit .recbtn{
	width: 96%;
	margin: 0 2%;
}
.recruit .recbtn .rec {
    width: 48%;
	font-size: 4vw;
}
}
/*
リンクページ
----------------------------------------------------------- */
.link h1 {
    background-image: url(../link/img/ttl_bk.png);
    background-size: cover;
    width: 100%;
    height: 300px;
    text-align: left;
    font-size: 2.5rem;
    font-family: 'Roboto';
    letter-spacing: 5px;
    padding: 100px 0 0 60px;
    color: #fff;
}
.link h1 span {
    display: block;
    font-size: 20px;
    font-weight: normal;
    line-height: 1.8;
}
.link {
    background-color: #e4f1fb;
}
@media screen and (max-width:999px) {
.link .inner img{
	width: 100%;
}
}
/*
お問合わせページ
----------------------------------------------------------- */
.contact h1 {
    background-image: url(../contact/img/ttl_bk.png);
    background-size: cover;
    width: 100%;
    height: 300px;
    text-align: left;
    font-size: 2.5rem;
    font-family: 'Roboto';
    letter-spacing: 5px;
    padding: 100px 0 0 60px;
    color: #fff;
}
.contact h1 span {
    display: block;
    font-size: 20px;
    font-weight: normal;
    line-height: 1.8;
}
.contact {
    background-color: #e4f1fb;
}
.contact .wrap {
    width: 96%;
    height: auto;
    margin: 0 2% 40px;
    padding: 0 0 55px 0;
    background-color: #fff;
    border-radius: 17px;
    webkit-box-shadow: 0 0 10px rgba(0,0,0,0.1);
    box-shadow: 0 0 10px rgba(0,0,0,0.1);
}
.contact .wrap:last-child {
    margin: 0 2% 0;
}
.contact .wrap .ttl {
    width: 100%;
    height: 95px;
    line-height: 95px;
    background-color: #19a6c3;
    text-align: center;
    font-size: 24px;
    font-weight: bold;
    color: #fff;
    border-top-left-radius: 17px;
    border-top-right-radius: 17px;
}
.contact .wrap .ttl span {
    font-size: 30px;
}
.contact .wrap .btn {
    display: block;
    width: 360px;
    height: 60px;
    line-height: 63px;
    position: relative;
    text-decoration: none;
    text-align: center;
    color: #fff;
    border-radius: 10px;
    z-index: 0;
    margin: 55px auto 0;
    font-size: 20px;
}
.contact .wrap .btn a, .contact .wrap .btn:hover {
    color: #fff;
    text-decoration: none;
}
.contact .wrap .btn:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 10px;
    z-index: -1;
    left: 0;
    transition: 0.5s;
    background: linear-gradient(to left, #0e9cb8, #001eaa);
}
.contact .wrap .btn:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    border-radius: 10px;
    z-index: -2;
    left: 0;
    background: linear-gradient(to left, #6ec7da, #0e9cb8);
}
.contact .wrap .btn:hover:before {
    opacity: 0;
}
.contact .wrap .btn a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/arrow.png)top 20px right 30px no-repeat;
    background-size: 25px 25px;
}
.contact .wrap .conwrap {
    padding: 50px 70px 0;
    display: flex;
}
.contact .wrap .conwrap .conttl {
    width: 410px;
    height: auto;
    font-weight: bold;
}
.contact .wrap .conwrap .contel {
    width: 410px;
    height: auto;
}
.contact .wrap .conwrap .contel span {
    font-size: 24px;
    color: #0080b2;
    font-weight: bold;
}
.contact .attention {
    padding: 40px 50px 0;
}
.contact .end {
    padding: 40px 50px 0;
	text-align: center;
}
/*フォーム */
.wrap_form {
    padding: 40px 70px 0;
}
#entryForm dl {
    width: 100%;
    display: flex;
    border-bottom: 1px solid #dfe6ea;
}
#entryForm dl:first-child {
    width: 100%;
    display: flex;
    border-top: 1px solid #dfe6ea;
    border-bottom: 1px solid #dfe6ea;
}
#entryForm dl dt {
    width: 35%;
    padding: 1em;
    display: flex;
    align-items: center;
    font-weight: bold;
}
#entryForm dl dd {
    width: 65%;
    padding: 1em;
}
#entryForm dl dd p {
    margin: 0.5em 0 0 0;
}
.r14 {
    color: #d50707;
	margin-right: 10px;
}
select {
	padding: inherit;
}
select {
	padding: 0.5em 2.25em 0.5em 0.5em;
	background: url(../img/icon_arrow_bot.png)  center right .5em no-repeat #fff;
	background-size: 0.75em;
	border: 1px solid #ccc;
	border-radius: 3px;
	position: relative;
	font-size: 16px;
	font-family: 'メイリオ', 'Meiryo','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','ＭＳ Ｐゴシック','Osaka', sans-serif;
	line-height: 1.3;
	cursor: pointer;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	font-size: 15px;
}
select::-ms-expand {
	display: none;
}
input[type="text"] {
    width: 100%;
    padding: 0.5em;
    border: 1px solid #ccc;
    border-radius: 3px;
    box-sizing: border-box;
    font-size: 16px;
    font-family: 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'Osaka', sans-serif;
    line-height: 1.3;
    -webkit-appearance: none;
}
input[type="text"]+input[type="text"] {
    margin-top: 1em;
}
input[type="password"] {
    width: 100%;
    padding: 0.5em;
    border: 1px solid #ccc;
    border-radius: 3px;
    box-sizing: border-box;
    font-size: 16px;
    font-family: 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'Osaka', sans-serif;
    line-height: 1.3;
    -webkit-appearance: none;
}
input[type="password"]+input[type="password"] {
    margin-top: 1em;
}
textarea {
    width: 100%;
    height: 6.4em;
    padding: 0.5em;
    border: 1px solid #ccc;
    border-radius: 3px;
    box-sizing: border-box;
    font-size: 16px;
    font-family: 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'Osaka', sans-serif;
    line-height: 1.3;
    -webkit-appearance: none;
}
.wrap_contract {
    margin: 2em 0 0;
}
.wrap_contract .wrap_list {
    width: 100%;
    height: 270px;
    padding: 30px;
    overflow-y: scroll;
    border: #ccc 1px solid;
    margin: 0 0 2em;
}
#js_check {
    text-align: center;
}
#buttonArea {
    padding: 2em 0;
    display: flex;
    flex-wrap: wrap;
    text-align: center;
}
input[type="submit"] {
    width: 35%;
    padding: 0.7em;
    margin: 15px auto 0;
    background-size: contain;
    border-radius: 10px;
    display: inline-block;
    position: relative;
    color: #fff;
    font-size: 20px;
    font-family: 'メイリオ', 'Meiryo', 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', 'Osaka', sans-serif;
    letter-spacing: 0.05em;
    cursor: pointer;
    border: none;
    background: linear-gradient(to left, #0e9cb8, #001eaa);
}
/* チェックボックス */
label input[type="checkbox"]:checked + span::before {
    background-color: #0095b4;
}
input[type="checkbox"], input[type="radio"] {
    margin: 0;
    padding: 0;
    background: none;
    border: none;
    border-radius: 0;
    display: none;
    outline: none;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    cursor: pointer;
}
label input[type="checkbox"] + span, label input[type="radio"] + span {
    position: relative;
    padding: 0 0.5em 0 1.75em;
}
/* CHECKBOX */
label input[type="checkbox"] + span::before, label input[type="checkbox"] + span::after {
    content: '';
    display: inline-block;
    box-sizing: border-box;
    position: absolute;
    top: 50%;
    left: 0;
}
label input[type="checkbox"] + span::before {
    width: 1.25em;
    height: 1.25em;
    margin-top: -0.625em;
    background-color: #fff;
    border: 1px solid #808080;
    border-radius: 3px;
    z-index: 0;
    transition: .2s;
}
label input[type="checkbox"] + span::after {
    width: 0.5em;
    height: 0.75em;
    margin-top: -0.5em;
    margin-left: 0.35em;
    -webkit-transform: scale(0) rotate(45deg);
    -ms-transform: scale(0) rotate(45deg);
    transform: scale(0) rotate(45deg);
    z-index: 1;
}
label input[type="checkbox"]:checked + span::before {
    border: none;
}
label input[type="checkbox"]:checked + span::after {
    border: 0.1875em solid #fff;
    border-width: 0 0.1875em 0.1875em 0;
    -webkit-transform: scale(1) rotate(45deg);
    -ms-transform: scale(1) rotate(45deg);
    transform: scale(1) rotate(45deg);
}
@media screen and (max-width:999px) {
.contact .wrap {
    padding: 0 0 35px 0;
}
.contact .wrap .btn {
    margin: 25px auto 0;
}
.contact .wrap .conwrap {
    padding: 30px 30px 0;
}
.wrap_form {
    padding: 40px 30px 0;
}
}
@media screen and (max-width:640px) {
.contact .wrap {
    padding: 0 0 25px 0;
}
.contact .wrap .ttl {
    height: 60px;
	line-height: 62px;
    font-size: 16px;
}
.contact .wrap .ttl span {
    font-size: 16px;
}
.contact .wrap .conwrap {
    padding: 30px 25px 0;
    display: block;
}
.contact .wrap .conwrap .conttl {
    width: 100%;
}
.contact .wrap .conwrap .contel {
    width: 100%;
}
.contact .wrap .btn {
    width: 280px;
    height: 50px;
    line-height: 52px;
    font-size: 18px;
	text-indent: -10px;
}
.contact .wrap .btn a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: url(../img/arrow.png)top 15px right 10px no-repeat;
    background-size: 20px 20px;
}
.contact .attention {
    padding: 20px 20px 0;
}
.wrap_form {
    padding: 0px 20px;
}
#entryForm dl:first-child,#entryForm dl {
    display: block;
}
#entryForm dl dt {
    width: 100%;
    display: block;
	padding: 1em 1em 0;
}
#entryForm dl dd {
    width: 100%;
}
input[type="submit"] {
    width: 70%;
}
.recruit .career table {
    margin-top: 30px;
}
}
/*
プライバシーポリシー
----------------------------------------------------------- */
.privacy h1 {
    background-image: url(../privacy/img/ttl_bk.png);
    background-size: cover;
    width: 100%;
    height: 300px;
    text-align: left;
    font-size: 2.5rem;
    font-family: 'Roboto';
    letter-spacing: 5px;
    padding: 100px 0 0 60px;
    color: #fff;
}
.privacy h1 span {
    display: block;
    font-size: 20px;
    font-weight: normal;
    line-height: 1.8;
}
.privacy {
    background-color: #fff;
}
.privacy p {
    margin-bottom: 30px;
}
.privacy .txtind {
    padding-left: 50px;
}
.privacy p.textright {
    text-align: right;
}
@media screen and (max-width:640px) {
.privacy p {
    margin-bottom: 20px;
}
.privacy .txtind {
    padding: 0 20px;
}
}
/*
サイトマップ
----------------------------------------------------------- */
.sitemap h1 {
    background-image: url(../sitemap/img/ttl_bk.png);
    background-size: cover;
    width: 100%;
    height: 300px;
    text-align: left;
    font-size: 2.5rem;
    font-family: 'Roboto';
    letter-spacing: 5px;
    padding: 100px 0 0 60px;
    color: #fff;
}
.sitemap h1 span {
    display: block;
    font-size: 20px;
    font-weight: normal;
    line-height: 1.8;
}
.sitemap {
    background-color: #fff;
}
.sitemap ul {
    width: 50%;
    padding: 0 90px;
    float: left;
}
.sitemap ul li {
    width: 100%;
    margin: 0 25px;
    border-top: #e9e9e9 1px solid;
    padding: 20px 0;
    float: left;
    line-height: 2.0;
}
.sitemap ul li:nth-child(3n) {
    border-bottom: #e9e9e9 1px solid;
}
.sitemap ul li a {
    font-weight: bold;
    color: #333;
}
.sitemap ul li a:hover {
    font-weight: bold;
    color: #0065b0;
}
.sitemap ul li span {
    display: block;
    padding-left: 55px;
    position: relative;
}
.sitemap ul li span:before {
    content: "▶";
    display: block;
    position: absolute;
    top: 0;
    left: 30px;
    color: #0096b4;
}
.sitemap ul li span a {
    font-weight: normal;
}
.sitemap ul li span a:hover {
    font-weight: normal;
    color: #0065b0;
}
.sitemap .inner:after {
    content: "";
    display: block;
    clear: both;
}
@media screen and (max-width:999px) {
.sitemap ul {
    width: 50%;
    padding: 0 5%;
    float: left;
}
.sitemap ul li {
    margin: 0;
}
}
@media screen and (max-width:640px) {
.sitemap ul {
    width: 100%;
}
.sitemap ul li {
    padding: 20px 0 20px 10%;
}
.sitemap ul li:nth-child(3) {
    border-bottom: none;
}
}
/*
 ページトップへ
----------------------------------------------------------- */
.totop {
    display: block;
    width: 100%;
    height: 50px;
    position: relative;
    text-align: center;
    z-index: 0;
}
.totop img {
    margin-top: 18px;
}
.totop:before {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -1;
    left: 0;
    transition: 0.5s;
    background: linear-gradient(to left, #0e9cb8, #001eaa);
}
.totop:after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    z-index: -2;
    left: 0;
    background: linear-gradient(to left, #6ec7da, #0e9cb8);
}
.totop:hover:before {
    opacity: 0;
}
.totop a {
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
/*
 foot
----------------------------------------------------------- */
#foot {
    background-image: url(../img/foot_bk.jpg);
    background-size: cover;
    width: 100%;
    height: 230px;
}
#foot .inner {
    max-width: 1000px;
	width: 100%;
    margin: 0 auto;
    padding: 25px 0 0;
    border-bottom: #fff 1px solid;
}
#foot .inner .footnavi {
    width: auto;
    float: left;
}
#foot .inner .footnavi ul {
    margin-top: 20px;
}
#foot .inner .footnavi ul li {
    float: left;
    margin-right: 30px;
    padding-left: 20px;
    position: relative;
}
#foot .inner .footnavi ul li:before {
    content: "▶";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    color: #FFF;
}
#foot .inner .footnavi ul li a {
    color: #fff;
    text-decoration: none;
}
#foot .inner .footnavi ul li a:hover {
    color: #0e9cb8;
    text-decoration: none;
}
#foot .inner .footicon {
    width: auto;
    float: right;
    text-align: right;
}
#foot .inner .footicon ul li {
    float: left;
    margin-right: 20px;
    vertical-align: middle;
}
#foot .inner:after {
    content: "";
    display: block;
    clear: both;
}
#foot .copy {
    color: #fff;
    text-align: center;
    padding: 50px 0 0;
}
@media screen and (max-width:999px) {
#foot {
    height: 25vw;
}
#foot .inner {
	width: 90%;
    margin: 0 5%;
    padding: 20px 0 0;
}
#foot .copy {
    padding: 30px 0 0;
}
}
@media screen and (max-width:640px) {
#foot {
    height: 40vw;
}
#foot .inner {
	width: 90%;
    margin: 0 5%;
    padding: 0;
}
#foot .inner .footnavi ul li {
    float: left;
    margin-right: 10px;
    padding-left: 20px;
	margin-bottom: 10px;
    position: relative;
}
#foot .copy {
    padding: 10px 5% 0;
}
#foot .inner .footicon {
   display: none;
}
}
/*
 スライドショー
----------------------------------------------------------- */
.main_imgBox {
    height: auto;
    padding-top: 40%;
    overflow: hidden;
    position: relative;
}
.main_img {
    z-index: 10;
    opacity: 0;
    width: 100%;
    height: auto;
    padding-top: 40%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-animation: anime 36s 0s infinite;
    animation: anime 36s 0s infinite;
}
@media screen and (max-width:640px) {
.main_imgBox {
    height: auto;
    padding-top: 106%;
    overflow: hidden;
    position: relative;
}
.main_img {
    z-index: 10;
    opacity: 0;
    width: 100%;
    height: auto;
    padding-top: 106%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
    -webkit-animation: anime 36s 0s infinite;
    animation: anime 36s 0s infinite;
}
}
.main_img:nth-of-type(2) {
    -webkit-animation-delay: 6s;
    animation-delay: 6s;
}
.main_img:nth-of-type(3) {
    -webkit-animation-delay: 12s;
    animation-delay: 12s;
}
.main_img:nth-of-type(4) {
    -webkit-animation-delay: 18s;
    animation-delay: 18s;
}
.main_img:nth-of-type(5) {
    -webkit-animation-delay: 24s;
    animation-delay: 24s;
}
.main_img:nth-of-type(6) {
    -webkit-animation-delay: 30s;
    animation-delay: 30s;
}

.s-right-text, .s-right-sub, .s-right2-text, .s-right2-sub, .s-right-img, .s-right3-text, .s-right4-text, .s-right3-sub, .s-right4-sub {
    position: absolute;
    width: 100%;
    left: 0;
    text-align: center;
    color: white;
}
.s-right-img {
    top: 50%;
    margin-top: -170px;
}
.s-right-text {
    top: 130px;
    left: 47%;
    font-size: 40px;
    font-weight: bold;
    width: 50%;
	letter-spacing: 0.05em;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}
.s-right2-text {
    top: 33%;
    font-size: 4.0vw;
    font-weight: bold;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}
.s-right3-text {
    top: 40%;
    font-size: 4.0vw;
    font-weight: bold;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}
.s-right4-text {
    top: 180px;
    left: 0;
    font-size: 40px;
    font-weight: bold;
    width: 50%;
	letter-spacing: 0.05em;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
	line-height: 1.1;
}
.s-right-sub {
    top: 50%;
    font-size: 1.5vw;
    font-weight: bold;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
    letter-spacing: 0.15em;
}
.s-right2-sub {
    bottom: 2.5%;
    font-size: 0.7vw;
    font-weight: bold;
	width: 20%;
	left: 1%;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
}
.s-right3-sub {
    top: 50%;
	width: 50%;
	left: 1%;
    font-size: 18px;
    font-weight: bold;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
    letter-spacing: 0.15em;
}
.s-right4-sub {
    top: 56%;
	width: 50%;
	left: 48%;
    font-size: 20px;
    font-weight: bold;
    text-shadow: 2px 2px 4px rgba(0,0,0,0.3);
    letter-spacing: 0.15em;
}
@media screen and (max-width:1099px) {
.s-right-img img {
    width: 400px;
	top: 50%;
    margin-top: 75px;
}
.s-right-text {
    top: 26%;
    left: 48%;
    width: 50%;
}
.s-right2-text {
    top: 33%;
}
.s-right-sub {
    top: 50%;
}
.s-right2-sub {
	width: 25%;
}
}

/*
 スライドショーリクルート
----------------------------------------------------------- */
.main_imgBox02 {
    height: auto;
    padding-top: 30%;
    overflow: hidden;
    position: relative;
}
.main_img02 {
    z-index: 10;
    width: 100%;
    height: auto;
    padding-top: 30%;
    background-position: center center;
    background-repeat: no-repeat;
    background-size: cover;
    position: absolute;
    left: 0;
    top: 0;
	background-image: url(../recruit/img/p02_pc.jpg);
}
.main_img02:nth-of-type(2) {
	background-image: url(../recruit/img/p01_pc.jpg);
}

.s-text {
    position: absolute;
    width: 100%;
    left: 0;
    text-align: center;
    color: white;
    z-index: 50;
}
.s-text {
    top: 42%;
    font-size: 3.5vw;
    font-weight: bold;
    text-shadow: 1px 3px 2px rgba(0,0,0,0.3);
}
@media screen and (max-width:640px) {
.s-text {
    top: 32%;
    font-size: 1.8rem;
    font-weight: bold;
    text-shadow: 1px 3px 2px rgba(0,0,0,0.3);
}
}
@media screen and (max-width:999px) {
.privacy h1,.development h1,.information h1,.recruit h1,.link h1,.contact h1,.privacy h1,.sitemap h1 {
    height: 150px;
    font-size: 2.0rem;
    letter-spacing: 3px;
    padding: 40px 0 0 30px;
}
.privacy h1 span,.development h1 span,.information h1 span,.recruit h1 span,.link h1 span,.contact h1 span,.privacy h1 span,.sitemap h1 span {
    font-size: 1.0rem;
}
}
@media screen and (max-width:640px) {
.privacy h1,.development h1,.information h1,.recruit h1,.link h1,.contact h1,.privacy h1,.sitemap h1 {
    height: 100px;
    font-size: 1.5rem;
    letter-spacing: 2px;
    padding: 25px 0 0 0;
	text-align: center;
}
.privacy h1 span,.development h1 span,.information h1 span,.recruit h1 span,.link h1 span,.contact h1 span,.privacy h1 span,.sitemap h1 span {
    font-size: 0.8rem;
}
}
#js-slider img{
	width: 100%;
    height:auto;
	margin-bottom: 0;
}
@media print{
	#js-slider img{
	max-width: 100%;
    height:40%;
	margin: 0 auto;
}
}
.boxroad{
  position: fixed;
  top: 0;
  left: 0;
  width: 100vw;
  height: 100vh;
  z-index: 9999;
  -webkit-transition: all 1.2s ease; /* 1.2秒でフェードアウト */
          transition: all 1.2s ease;
  color: #0d8db7; /* ローディングアニメーションカラー */
  background-color: #fff; /* 背景カラー */
}
.boxroad.loaded{
  opacity:0;
  visibility:hidden;
  pointer-events:none;
}
/* ローディングアニメーション */
.spinner {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  -webkit-transform-origin: center;
          transform-origin: center;
  width: 120px;
  height: 120px;
}
 
/* Loading テキスト */
.spinner span {
  position: absolute;
  top: 50%;
  left: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  font-size: 12px;
}
.spinner.type {
  width:20px;
    height:20px;
    border-radius:50%;
    animation:spinner5_1 1.2s infinite linear forwards;
}
.spinner.type span {
  display:none;
}
