@charset "utf-8";


/*------------------------------------------------------------------
	Universal Selector
------------------------------------------------------------------*/
* {
    font-style: normal;
    margin: 0;
    padding: 0;
    text-align: left;
	box-sizing: border-box;
}

/*------------------------------------------------------------------
	Base Settings
------------------------------------------------------------------*/
html {
    overflow-y: scroll;
}


body {
	position: relative;
  font-family: 'Noto Sans JP', "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    color: #333;
    font-size: 16px;
    line-height: 1.5;
}
table {
    border-collapse: collapse;
    border-spacing: 0;
}
caption, th {
    text-align: left;
}
h1, h2, h3, h4, h5, h6 {
    font-size: 100%;
    margin: 0;
    padding: 0;
}
li {
    list-style-type: none;
}
p{
	line-height:1.8;

}
img{
    height: auto;
    max-width: 100% ;
	vertical-align:bottom;
}
h1,h2,h3,h4,h5,h6{
	font-weight: normal;
}

h2.hstyle01 {
  text-align: center;
}

h2.hstyle01:after {
  margin: 15px auto 0;
}
h2.hstyle01:after {
  display: block;
  width: 30px;
  height: 2px;
  margin-top: 15px;
  content: '';
  background-color: #7AE2DE
}

/*------------------------------------------------------------------
	Base Link Color Setting
------------------------------------------------------------------*/

a {
    color: #333;
    text-decoration: none;
}

a:hover {

    text-decoration: underline;
}
a:active {
    text-decoration: underline;
}
a img {
    border: medium none;
}

a:hover .fil,.fil2 a:hover{
	opacity: 0.7;
	filter: alpha(opacity=70);
}

/* マージン・インデント
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ▽ */
.m1b { margin-bottom: 1px !important; }
.m2b { margin-bottom: 2px !important; }
.m3b { margin-bottom: 3px !important; }
.m4b { margin-bottom: 4px !important; }
.m5b { margin-bottom: 5px !important; }
.m6b { margin-bottom: 6px !important; }
.m7b { margin-bottom: 7px !important; }
.m8b { margin-bottom: 8px !important; }
.m9b { margin-bottom: 9px !important; }
.m10b { margin-bottom: 10px !important; }
.m13b { margin-bottom: 13px !important; }
.m15b { margin-bottom: 15px !important; }
.m20b { margin-bottom: 20px !important; }
.m25b { margin-bottom: 25px !important; }
.m30b { margin-bottom: 30px !important; }
.m35b { margin-bottom: 35px !important; }
.m40b { margin-bottom: 40px !important; }
.m45b { margin-bottom: 45px !important; }
.m50b { margin-bottom: 50px !important; }
.m60b { margin-bottom: 60px !important; }
.m80b { margin-bottom: 80px !important; }

.m5t { margin-top: 5px !important; }
.m10t { margin-top: 10px !important; }
.m20t { margin-top: 20px !important; }
.m30t { margin-top: 30px !important; }
.m40t { margin-top: 40px !important; }
.m50t { margin-top: 50px !important; }
.m70t { margin-top: 70px !important; }
.m80t { margin-top: 80px !important; }
.m90t { margin-top: 90px !important; }
.m100t { margin-top: 100px !important; }

/*sp時変更*/
.m10b-s { margin-bottom: 10px !important; }
.m20b-s { margin-bottom: 20px !important; }
.m30b-s { margin-bottom: 30px !important; }
.m40b-s { margin-bottom: 40px !important; }
.m50b-s { margin-bottom: 50px !important; }
.m60b-s { margin-bottom: 60px !important; }
.m70b-s { margin-bottom: 70px !important; }
.m80b-s { margin-bottom: 80px !important; }
.m01{margin-bottom: 100px;}
.p01-s { padding-top:50px;padding-bottom: 50px; }
.p02-s { padding-left:1%;padding-right:1%; }


/* 位置クラス
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ▽ */
.clear { clear: both !important; }
.cen { text-align: center !important; }
.cen-pc{text-align:center !important;}
.left { text-align: left !important; }
.right { text-align: right !important; }
/* 投稿の画像配置 */
.f-left{float:left;}
.f-right{float:right;}
.f-left-pc {float: left;}
.f-right-pc {float: right;}
.alignright { display: block; margin: 0 0 10px auto; }/* 配置位置 左 */
.alignleft { display: block; margin: 0 auto 10px 0; }/* 配置位置 右 */
.aligncenter { display: block; margin: 0 auto 10px; }/* 配置位置 中央 */

.pc-dnon{display: none;}
.pc-dnon2{display: none;}

/* テキスト
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ ▽ */
.bold { font-weight: bold !important; }
.txtRed { color: #df1834 !important; }
.txtBlue { color: #1D4194 !important; }
.txtPink { color: #F246A4 !important; }
.txtGold { color: #8b6c2e !important; }
.txtGray { color: #666666 !important; }
.txtWhite { color: #FFFFFF !important; }
.txtgreen { color: #79a035 !important; }
.txtorenge{color:#fd851b}
.txtBlack{color: #333 !important;}
.txtBlown{color: #603a40 !important}

.txt10 { font-size: 77% !important; }
.txt11 { font-size: 92% !important; }
.txt13 { font-size: 109% !important; }
.txt14 { font-size: 117% !important; }
.txt15 { font-size: 125% !important; }
.txt17 { font-size: 142% !important; }
.txt18 { font-size: 150% !important; }
.txt20 { font-size: 167% !important; }

.lh01{line-height:1 !important;}
.lh02{line-height:2  !important;}
.f-min{
	font-family: "Times New Roman", "游明朝", YuMincho, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN","HG明朝E", "メイリオ", Meiryo, serif;
}
.oh{overflow:hidden;}
.blk{
	display:block;
}
.underline{
	text-decoration: underline;
}
.img100 {
    height: auto;
    width: 100%;
}
.br01{
	border-radius: 20px;
}
table{
	width:100%;
}
td,th{
	padding:10px;
	font-weight: normal;
}
table th,table td{
border:solid 1px #ccc;
}

/*------------------------------------------------------------------
	全体レイアウト
------------------------------------------------------------------*/
/*ーーーーーーーーーー
.header
ーーーーーーーーーーー*/
#head_wrap {
  top: -86px;
  position: relative;
  width: 100%;
  margin: 86px auto 0;
  line-height: 1;
  z-index: 999;
  height: 0px;
  text-decoration: none;
	background: #fff;
}

#head_wrap a {
  text-decoration: none;
}

#head_wrap .inner {
  width: 100%;
  margin: 0 auto;
  position: relative;
}

#head_wrap .inner:after {
  content: "";
  clear: both;
  display: block;
}

#head_wrap .logo {
	padding: 15px;

}

#global-nav {
  position: absolute;
  right: 0;
  top: 0;
}

#global-nav ul {
  list-style: none;
  display:flex;
align-items: center;
}

#global-nav ul li {
	text-align: center;
}
#global-nav ul li a {
	position: relative;
	display: block;
  padding:35px;
  transition: all .6s ease 0s;
  box-sizing: border-box;
	text-align: center;
}
#global-nav ul li:last-child a{
background: #329797;
	color: #fff;
}
#global-nav ul li a::after {
position: absolute;
left: 0;
content: '';
width: 100%;
height: 2px;
background: #329797;
bottom: 0px;
transform: scale(0, 1);
transform-origin: center top; /*変形（アンダーラインの伸長）の原点がaタグ（各メニュー）の右端*/
transition: transform 0.3s;   /*変形の時間*/
}
#global-nav ul li:last-child a:hover{
	background: #6bbaba;
}
#global-nav ul li a:hover::after {
transform: scale(1, 1); /*ホバー後、x軸方向に1（相対値）伸長*/
}
#global-nav ul li:last-child a::after{
	content: none;
}
/* Fixed */
#head_wrap.fixed {
  margin-top: 0;
  top: 0;
  position: fixed;
  height: 86px;
  transition: top 0.65s ease-in;
  -webkit-transition: top 0.65s ease-in;
  -moz-transition: top 0.65s ease-in;
  z-index: 9999;
}



/* Toggle Button */
#nav-toggle {
  display: none;
  position: absolute;
  right: 12px;
  top: 14px;
  width: 34px;
  height: 36px;
  cursor: pointer;
  z-index: 101;
}

#nav-toggle div {
  position: relative;
}

/*----------footer --------------*/
footer{
	background: #aedcdc;
}
footer .wid01{
	padding: 20px 0;
}
footer ul{
	padding: 30px 10px;
}
footer ul li{
	margin-bottom: 25px;
}
footer ul li dl{
	display: flex;
	flex-wrap: wrap;
}
footer ul li dl dt{
	width: 100px
}
footer .copy{
	background: #fff;
	padding: 10px;
}
/*-------------------common-----------------*/
.container {
        max-width: 970px;
    margin-left: auto;
    margin-right: auto;
    }
.container1{
	clear:both;
    margin-left: auto;
    margin-right: auto;
    max-width: 1200px;
}
.container2{
	clear:both;
    margin-left: auto;
    margin-right: auto;
    max-width:1100px;
}
.container3{
	clear:both;
    margin-left: auto;
    margin-right: auto;
    max-width:800px;
}
/* タイトル装飾 */
.hstyle01{
	font-weight: bold;
	font-size:200%;
	padding:30px 0;
}
.hstyle02{
	font-size:170%;
	font-weight: bold;
}
.hstyle03{
	position: relative;
	text-align: center;
	font-weight: bold;
	font-size:160%;
}
.hstyle03::after{
	content: " ";
	width: 60px;
	height: 2px;
	background: #329797;
	position: absolute;
	left:50%;
	bottom:-10px;
	margin-left: -30px;
}
/* 枠装飾 */
.link01 a{
	display: inline-block;
	padding: 10px 40px;
	background: #fff;
	color: #329797;
	border-radius: 30px;
	border: solid 2px #329797;
	text-align:center;
	font-size:115%;
	text-decoration: none;
	transition: 0.5s;
}
.link01 a:hover{
	 background:#329797;
	color: #fff;
}

.boxstyle01{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.boxstyle01.rev{
	flex-direction: row-reverse;
}
.boxstyle01.center{
	align-items: center;
}
.wid01{
	width:48%;
}
.wid02{
	width:50%;
}
.ulstyle01{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

/*-------------------top-----------------*/
.top-main{
	position: relative
}
.top-main::before{
	background: url("images/top/topimage_bg.png") no-repeat center top;
	background-size:cover;
	content: " ";
	width: 100%;
	height: 85%;
	top:10%;
	left: 0;
	position: absolute;
}
#topimage{
	position: relative;
	background: url("images/top/topimage.jpg") no-repeat center center;
	background-size:cover;
	padding: 20% 5%;
	margin-bottom: 100px;
	width: 90%;
	margin-left: 10%;
}
#topimage h2{
	font-size:2.5vw;
	text-shadow: 0 0 3px #fff, 0 0 5px #fff;
	font-weight: bold;
}
#s01{
	position: relative;
}
#s01::before{
	content: " ";
	background: url("images/top/vision.png") no-repeat center top;
	background-size:100%;
	width: 30%;
	height: 220px;
	position: absolute;
	top:0;
	left: 0;
	z-index: 1;
}
#s01 .container1{
	position: relative;
	z-index: 2;
}
#s01 h2{
	position: absolute;
	left: 0;
	top:0;
}
#s01 .boxstyle01 .text{
	width: 55%;
	padding-top: 30px;
}
#s01 .boxstyle01 figure{
	width: 40%;
	padding-top:12%;
}
#s01 .boxstyle01 figure img{
	box-shadow: 3px 3px 7px #aaa;
}
#s02{
	position: relative;
	padding: 100px 0;
	background: url("images/top/top_bg1.png") no-repeat center top;
	background-size:100%;
	margin-bottom:5%;
}
#s02::after{
	background: url("images/top/top_bg2.png") no-repeat center bottom;
	background-size:100%;
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 100%;
	max-height: 2000px;
	content: " ";
	z-index: 1;
}
#s02 h2{
	background: url("images/top/service.png") no-repeat center center;
}
#s02 section {
	min-height: 400px;
}
#s02 section h3{
	padding-top:50px;
}
.s02-ad{
	position: relative;	
	z-index: 2;
}
.s02-ad .container1{
	position: relative;
	z-index: 2;
}
.s02-ad::before{
	content: " ";
	background: #eee;
	position: absolute;
	right:0;
	bottom:-25%;
	width: 60%;
	height: 150px;
}
.s02-ad1{
	margin-bottom: 150px;
}
.s02-ad1 .img-s01::before{
	content: " ";
	position: absolute;
	right:0;
	top:20%;
	width: 18%;
	height: 400px;
	background: url("images/top/ad02.jpg") no-repeat center center;
	background-size:cover;
}
.s02-ad1 .img-s01::after{
	content: " ";
	position: absolute;
	right:20%;
	top:0;
	width: 18%;
	height: 400px;
	background: url("images/top/ad01.jpg") no-repeat center center;
	background-size:cover;
}
.s02-ad2{
	margin-bottom: 150px;
}
.s02-ad2 .wid01{
	margin-left: 50%;
}
.s02-ad2 .img-s01::before{
	content: " ";
	position: absolute;
	left:0;
	top:20%;
	width: 18%;
	height: 400px;
	background: url("images/top/webcon01.jpg") no-repeat center center;
	background-size:cover;
}
.s02-ad2 .img-s01::after{
	content: " ";
	position: absolute;
	left:20%;
	top:0%;
	width: 18%;
	height: 400px;
	background: url("images/top/webcon02.jpg") no-repeat center center;
	background-size:cover;
}
.s02-ad2::before{
	right:inherit;
	left: 0;
	bottom:-25%;
	width: 60%;
	height: 150px;
}
.s02-ad3{
	margin-bottom: 150px;
}
.s02-ad3 .img-s01::before{
	content: " ";
	position: absolute;
	right:0;
	top:20%;
	width: 18%;
	height: 400px;
	background: url("images/top/desital02.jpg") no-repeat center center;
	background-size:cover;
}
.s02-ad3 .img-s01::after{
	content: " ";
	position: absolute;
	right:20%;
	top:0;
	width: 18%;
	height: 400px;
	background: url("images/top/desital01.jpg") no-repeat center center;
	background-size:cover;
}

.s02-ad4{
	margin-bottom: 150px;
}
.s02-ad4 .img-s01::before{
	content: " ";
	position: absolute;
	left:0;
	top:20%;
	width: 18%;
	height: 400px;
	background: url("images/top/picture01.jpg") no-repeat center center;
	background-size:cover;
}
.s02-ad4 .wid01{
	margin-left: 50%;
}
.s02-ad4 .img-s01::after{
	content: " ";
	position: absolute;
	left:20%;
	top:0%;
	width: 18%;
	height: 400px;
	background: url("images/top/picture02.jpg") no-repeat center center;
	background-size:cover;
}
.s02-ad4::before{
	right:inherit;
	left: 0;
	bottom:-25%;
	width: 60%;
	height: 150px;
}


.s02-ad5{
	margin-bottom: 150px;
}
.s02-ad5 .img-s01::before{
	content: " ";
	position: absolute;
	right:0;
	top:20%;
	width: 18%;
	height: 400px;
	background: url("images/top/tutor01.jpg") no-repeat center center;
	background-size:cover;
}
.s02-ad5 .img-s01::after{
	content: " ";
	position: absolute;
	right:20%;
	top:0;
	width: 18%;
	height: 400px;
	background: url("images/top/tutor02.jpg") no-repeat center center;
	background-size:cover;
}

/*------------------下層ページ------------------*/
.submain{
	position: relative;
}

.submain::before{
	content: " ";
	position: absolute;
	left: 0;
	top:0;
	width: 100%;
	height: 400px;
	background:#62b9cc url("images/common/subimage_bg.png") no-repeat left top;
	z-index: 1;
}


/*-------service---------*/
#subimage{
	position: relative;
	z-index: 2;
}
#subimage h2{
	padding:80px 0;
}
#service #subimage h2{
	background: url("images/service/service.png") no-repeat center center;
}
#service01{
	background: url("images/service/service_bg1.png") no-repeat center top;
	background-size:100%;
	padding-bottom: 200px;
}

#service01 ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#service01 ul li{
	width: 30%;
	margin-bottom: 60px;
}
#service01 ul li img{
	box-shadow: 3px 3px 8px #aaa;
}
#service01 ul li h3{
	font-weight: bold;
	font-size:120%;
	margin-bottom: 10px;
}
.service_bg1{
	background: url("images/service/service_bg2.png") no-repeat left 500px;
	
}
#service02{
	background: url("images/service/price.png") no-repeat left 30px;
	background-size:21%;
	position: relative;
	margin-bottom: 150px;
}
#service02::before{
	content: " ";
	width: 65%;
	height: 100%;
	background: #f1f5f8;
	position: absolute;
	right:0;
	top:0;
	z-index: 1;
}
#service02 .container1{
	position: relative;
	z-index: 2;
}
#service02 h2{
	position: absolute;
	left: 18%;
	top:30px;
}
#service02::after{
	content: " ";
	width: 17%;
	height: 2px;
	background: #329797;
	position: absolute;
	left:0;
	top:84px;
	z-index: 2;
}
#service02 .price{
	margin-left: 35%;
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	padding:4% 1%;
}
#service02 .price ul{
	width: 48%;
}
#service02 .price ul li{
	padding: 20px;
	border-bottom: solid 2px #fff;
	font-size:110%;
}
#service02 .price ul li dt{
	font-weight: bold;
}
#service03{
	background: url("images/service/service_bg3.png") no-repeat right bottom;
	padding-bottom: 100px;
	margin-bottom: 100px;
}
#service03 h2{
	background: url("images/service/flow.png") no-repeat center center;
	margin-bottom: 80px;
}
#service03 ul{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}
#service03 ul li{
	width: 15%;
	position: relative;
}
#service03 ul li::before{
	content: " ";
	background: url("images/service/flow_list01.png") no-repeat;
	width: 83px;
	height: 18px;
	position: absolute;
	top:30px;
	right:-55px;
}
#service03 ul li:last-of-type::before{
	content: none;
}
#service03 ul li .no{
	margin: 0 auto 25px;
	padding-top: 20px;
	width: 90px;
	height: 90px;
	border-radius: 50%;
	text-align: center;
	background: #329797;
	color: #fff;
	font-size:170%;
}
#service03 ul li .ttl{
	text-align: center;
	font-size:110%;
}
.service_bg2{
	background: url("images/service/service_bg4.png") no-repeat right 300px;
	background-size:100%;
	
}
#service04{
	background: url("images/service/content.png") no-repeat right top;
	background-size:38%;
	position: relative;
	margin-bottom: 150px;
}
#service04::before{
	content: " ";
	width: 65%;
	height: 100%;
	background: #f1f5f8;
	position: absolute;
	left:0;
	top:5%;
	z-index: 1;
}
#service04 .container1{
	position: relative;
	z-index: 2;
}
#service04 h2{
	position: absolute;
	right: 18%;
	top:0;
}
#service04::after{
	content: " ";
	width: 17%;
	height: 2px;
	background: #329797;
	position: absolute;
	right:0;
	top:51px;
	z-index: 2;
}
#service04 ul{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	width: 65%;
	padding: 8% 0 3%;
}
#service04 ul li{
	width: 22%;
	text-align: center;
	margin-bottom: 30px;
	font-weight: bold;
	font-size:110%;
}
#service04 ul li figure{
	text-align: center;
	height: 160px;
}
#service05 {
	margin-bottom: 150px;
}
#service05 h2{
	background: url("images/service/tutor.png") no-repeat center center;
	margin-bottom: 80px;
}
#service05 .ulstyle01 li{
	width: 31.3%;
	margin: 1%;
	font-weight: bold;
	font-size:120%;
}
#service05 .ulstyle01 li figure{
	margin-bottom: 20px;
}
/*-----------about--------------*/
#about #subimage h2{
	background: url("images/about/about.png") no-repeat center center;
}
#about01{
	margin-bottom:150px;
}
#about01 ul li{
	border-bottom:solid 1px #dcdcdc;
	padding: 30px 20px;
	font-size:115%;
}
#about01 ul li dl{
	display: flex;
	flex-wrap: wrap;
}
#about01 ul li dl dt{
	width: 30%;
	font-weight: bold;
}
#about01 ul li dl dd{
	width: 70%;
}
/*----------------contact--------------------*/
#contact #subimage h2{
	background: url("images/contact/contact.png") no-repeat center center;
}
#contact01{
	margin-bottom: 100px;
}
#contact01 ul{
	max-width: 700px;
	margin: 0 auto;
}
#contact01 ul li{
	padding: 20px;
}
#contact01 ul li dl{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
#contact01 ul li dl dt{
	width: 30%;
	font-weight: bold;
	font-size:115%;
	padding-top: 10px;
}
#contact01 ul li dl dd{
	width: 70%;
}
input[type=text],input[type=email],textarea{
	width:100%;
	font-size:100%;
	background: #eeeeee;
	padding: 15px;
	border:none;
	border-radius: 5px;
}
textarea{
	height:300px;
}

select {
  /* 初期化 */
  appearance: none;
  -moz-appearance: none;
  -webkit-appearance: none;
  color: #aaa;
  font-size:90%;
  padding:15px;
  width: 100%;
  position: relative;
  background: #fff url("images/list04.png") no-repeat right 10px center / 16px auto;
	border:solid 5px #d62c2c;
}
/* チェックボックス01 */
input[type=checkbox] {
    display: none;
}
.checkbox01 {
    box-sizing: border-box;
    cursor: pointer;
    display: inline-block;
    padding:5px 0 0 50px;
    position: relative;
    width: auto;
}
.checkbox01::before {
    background: #fff;
    border: 4px solid #d62c2c;
    content: '';
    display: block;
    height: 16px;
    left: 5px;
    margin-top: -8px;
    position: absolute;
    top: 50%;
    width: 16px;
}
.checkbox01::after {
    border-right: 3px solid #d62c2c;
    border-bottom: 3px solid #d62c2c;
    content: '';
    display: block;
    height: 13px;
    left: 13px;
    margin-top: -6px;
    opacity: 0;
    position: absolute;
    top: 50%;
    transform: rotate(45deg);
    width: 5px;
}
input[type=checkbox]:checked + .checkbox01::after {
    opacity: 1;
}

/*IE用*/
select::-ms-expand {
    display: block;
}
input::placeholder,textarea::placeholder {
  color: #aaa;
}

.btn01{
	display: inline-block;
	padding: 10px 40px;
	background: #fff;
	color: #329797;
	border-radius: 30px;
	border: solid 2px #329797;
	text-align:center;
	font-size:115%;
	text-decoration: none;
	transition: 0.5s;
}
.btn01:hover{
	 background:#329797;
	color: #fff;
}
.contactbtn{
	display: flex;
	justify-content: center;
}
.contactbtn div{
	padding: 10px;
}

.stats {
  background: url("images/top/stats-bg.jpg") no-repeat center center;
  background-size: cover
}

.stats i.icon {
  font-size: 50px;
  display: inline-block;
  margin-right: 10px;
  vertical-align: 10px;
  color: #fff
}

.stats .stats-wrapper {
  display: inline-block
}

.stats p.stats-number {
  font-family: Montserrat, Georgia, "Times New Roman", serif;
  font-size: 48px;
  color: #fff
}

.stats p.stats-text {
  font-size: 15px;
  font-weight: 500;
  line-height: .7;
  padding: 0;
  text-transform: uppercase;
  color: #fff
}

.stats .stats-container {
  text-align: center;
  border-right: solid 1px rgba(255, 255, 255, 0.25)
}

.stats .stats-container:last-of-type {
  border-right: none
}

.stats .stats-number {
  text-align: left
}

.service {
  padding: 50px 30px;
  padding-right: 55%;
  color: #fff;
  line-height: 2;
}

.service.ad {
  background: #a3dee1 url("images/top/recruit2.png") no-repeat right top;
  background-size: 50%;
}

.service.desi {
  background: #a3dee1 url("images/top/desital.png") no-repeat right top;
  background-size: 50%;
}

.service.webco {
  background: #a3dee1 url("images/top/recruit1.png") no-repeat left top;
  background-size: 50%;
  padding-left: 55%;
  padding-right: 30px;
}

.service.online {
  background: #a3dee1 url("images/top/online.png") no-repeat left top;
  background-size: 50%;
  padding-left: 55%;
  padding-right: 30px;
}

.service.recruit1 {
  background: #a3dee1 url("images/top/recruit1.png") no-repeat left top;
  background-size: 50%;
  padding-left: 55%;
  padding-right: 30px;
}
.service.recruit2 {
  background: #a3dee1 url("images/top/recruit2.png") no-repeat right top;
  background-size: 50%;
}
/*●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
↑pcサイズ
----------------------------------
↓タブレットサイズ
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●*/
@media screen and (max-width: 1299px){
	.container1,.container2,.container3{
		padding-left: 3%;
		padding-right: 3%;
	}
#global-nav ul li {
	font-size:100%;
	}
#global-nav ul li:last-child{
	margin-left: 0;
}
#global-nav ul li:last-child a{
	font-size:110%;
	}
}


@media screen and (min-width: 640px) and (max-width: 1199px) {
	.tb-dnon{
		display:none;
	}
	.pc-dnon2{
		display:block;
	}
	.hstyle01{
		font-size:150%;
	}
	#head_wrap .logo{
		width: 30%;
	}
	.top-main::before{
		height: 95%;
	}
	.s02-ad .img-s01::after,.s02-ad .img-s01::before{
		width: 23%;
		height: 70% !important;
	}
	.s02-ad::before{
		bottom:0;
	}
	#s02 section{
		margin-bottom: 8%;
	}
	#service02::after,#service04::after{
		width: 10%;
	}
	#service02 h2{
		left: 11%;
	}
	#service04 h2{
		right: 11%;
	}
	#service04 ul li{
		width: 50%;
	}
	
}

/*●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●
↑タブレットサイズ
----------------------------------
↓spサイズ
●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●●*/

@media screen and (max-width: 640px) {
	
/*----------共通------------*/	
body{
	font-size:14px;

}
.sp-dnon {
    display: none;
}
.pc-dnon,.pc-dnon2{
    display:  block;
}
.db-sp{
	display:block;
}
.sp-blk{
		display: block;
		margin: 0 auto !important;
}


/*margin padding変更*/
.m10b-s { margin-bottom: 5px !important; }
.m20b-s { margin-bottom: 10px !important; }
.m30b-s { margin-bottom: 15px !important; }
.m40b-s { margin-bottom: 20px !important; }
.m50b-s { margin-bottom: 25px !important; }
.m60b-s { margin-bottom: 30px !important; }
.m70b-s { margin-bottom: 35px !important; }
.m80b-s { margin-bottom: 35px !important; }
	.m01{margin-bottom: 50px !important;}
.p01-s { padding-top:5%;padding-bottom: 5%; }
.p02-s { padding-left:3%;padding-right:3%; }
	
.f-left-pc, .f-right-pc,#m-right,#m-left{
    float: none;
}
.wid01,.wid02{
		width: 100%;
	}
	.br01{
		border-radius: 10px;
	}
	.cen-pc{text-align: left !important;}
  #global-nav ul {
    display: block;
    margin-right: 0px;
  }
    #global-nav ul li {
    border-right: none;
  }
    #head_wrap {
    top: 0;
    position: fixed;
    margin-top: 0;
    width: 100%;
	height: 58px;
    padding: 0;
	background: #fff;
    /* Fixed reset */
  }
  #head_wrap .inner {
    width: 100%;
    padding: 0;
  }
  #head_wrap .fixed {
    padding-top: 0;
    background: transparent;
  }
/*
  #mobile-head {
    background: rgba(255, 255, 255,1);
    width: 100%;
    height: 56px;
    z-index: 999;
    position: relative;
  }
*/
  #head_wrap.fixed .logo,
  #head_wrap .logo {
    position: absolute;
    left: 10px;
    top: 10px;
    color: #333;
    font-size: 26px;
	 padding: 0;
  }
	#head_wrap .logo img{
		height: 38px;
		width: auto;
		max-width: inherit;
	}
  #global-nav {
  position: fixed;
  top: 0;
  right: 0;
  z-index: 8;
  width: 100%;
  height: 100vh;
  opacity: 0;
  background-color:rgba(255,255,255,0.9);
  transition: all 0.3s ease-in-out;
  visibility: hidden;
  }
  #global-nav ul {
    list-style: none;
    position: static;
    right: 0;
    bottom: 0;
    font-size: 14px;
    margin-top: 20%;
  }
  #global-nav ul li {
    float: none;
    position: static;
  }
  #head_wrap #global-nav ul li a,
  #head_wrap.fixed #global-nav ul li a {
    width: 100%;
    display: block;
    padding:7%;
  }
#head_wrap #global-nav ul li:last-child a {
		background: none;
	color: #333;
	}
  #nav-toggle {
    display: block;
  }
  /* #nav-toggle 切り替えアニメーション */
  #nav-toggle span {
    display: block;
    position: absolute;
    height: 4px;
    width: 100%;
    background: #666;
    left: 0;
    -webkit-transition: .35s ease-in-out;
    -moz-transition: .35s ease-in-out;
    transition: .35s ease-in-out;
  }
  #nav-toggle span:nth-child(1) {
    top: 0;
  }
  #nav-toggle span:nth-child(2) {
    top: 11px;
  }
  #nav-toggle span:nth-child(3) {
    top: 22px;
  }
  .open #nav-toggle span:nth-child(1) {
    top: 11px;
    -webkit-transform: rotate(315deg);
    -moz-transform: rotate(315deg);
    transform: rotate(315deg);
  }
  .open #nav-toggle span:nth-child(2) {
    width: 0;
    left: 50%;
  }
  .open #nav-toggle span:nth-child(3) {
    top: 11px;
    -webkit-transform: rotate(-315deg);
    -moz-transform: rotate(-315deg);
    transform: rotate(-315deg);
  }
  /* #global-nav スライドアニメーション */
  .open #global-nav {
  right: 0;
  opacity: 1;
  -moz-transform: translateX(0);
  -webkit-transform: translateX(0);
  transform: translateX(0);
  visibility: visible;
  }
	
	footer ul{
		padding: 3%;
	}
	footer .wid01{
		padding-bottom: 0;
	}
/*----------全体------------*/
	#main{
		margin-top: 56px;
	}
	.hstyle01{
		font-size:150%;
	}
	.hstyle02{
		font-size:130%;
	}
	.link01 a{
		font-size:120%;
	}
/*----------------top------------------*/
	#topimage{
		margin-bottom: 10%;
	padding: 30% 3% 10%;
	}
	#topimage h2{
		font-size:5vw;
	}
	#s01 h2{
		padding: 10px;
	}
	#s01 .boxstyle01 figure{
		width: 100%;
	}
	#s01 .boxstyle01 .text{
		width: 100%;
	}
	#s01::before{
		width: 50%;
	}
	#s01 .boxstyle01 .text{
		padding-top:17%;
	}
	#s01 .boxstyle01 figure{
		padding:10% 5% 0;
	}
	#s02{
		padding: 10% 0 0;
		background-size:300%;
		background-position: right top;
	}
	#s02 h2{
		background-size:80%;
		margin-bottom: 10px !important;
	}
	.s02-ad1{
		background: url("images/top/top_sbg1.png") no-repeat left bottom;
		background-size:50%;
	}
	.s02-ad2{
		background: url("images/top/top_sbg2.png") no-repeat right bottom;
		background-size:35%;
	}
	.s02-ad3{
		background: url("images/top/top_sbg3.png") no-repeat left bottom;
		background-size:30%;
	}
	.s02-ad4{
		background: url("images/top/top_sbg4.png") no-repeat right bottom;
		background-size:35%;
	}
	.s02-ad5{
		background: url("images/top/top_sbg4.png") no-repeat right bottom;
		background-size:35%;
	}
	#s02::after{
		content: none;
	}
	.img-s01{
		position: relative;
		width: 100%;
		height: 300px;
		display: block;
		margin-top: 5%;
	}
	.s02-ad1 .img-s01::after,.s02-ad3 .img-s01::after,.s02-ad5 .img-s01::after{
		width: 43%;
		height: 200px;
		right:48%;
		
	}
	.s02-ad1 .img-s01::before,.s02-ad3 .img-s01::before,.s02-ad5 .img-s01::before{
		width: 43%;
		height: 200px;
		right:0%;		
	}
	.s02-ad2 .img-s01::after,.s02-ad4 .img-s01::after{
		width: 43%;
		height: 200px;
		left:48%;
		
	}
	.s02-ad2 .img-s01::before,.s02-ad4 .img-s01::before{
		width: 43%;
		height: 200px;
		left:0%;		
	}
	.s02-ad::before{
		bottom:0;
	}
	#s02 section h3{
		padding-top: 0;
	}
	#s02 section{
		margin-bottom: 50px;
		min-height: inherit;
	}
	.s02-ad2 .wid01,.s02-ad4 .wid01{
		margin-left: 0;
	}
/*---------------下層ページ-------------------*/
	#subimage{
		padding-top:5%;
	}
	#subimage h2{
		padding: 8% 0;
	}
	.submain::before{
		height: 160px;
		background-size:50%;
	}
	#service #subimage h2{
		background-size:80%;
	}
	#service01 ul li{
		width: 100%;
		margin-bottom: 30px;
	}
	#service01 ul li figure{
		padding: 1%;
	}
	#service01{
		background: url("images/service/service_bg3.png") no-repeat;
		background-position: right 98%;
		background-size:20%;
		padding-bottom: 15%;
	}
	#service02{
		background-size:55%;
		background-position: left top;
		margin-bottom: 15%;
	}
	#service02 .container1{
		padding: 0 !important;
	}
	#service02 h2{
		position: static;
		padding: 15px 60px;
	}
	#service02::before{
		content: none;
	}
	#service02::after{
		top:30px;
		width: 50px;
	}
	#service02 .price{
		margin-left: 10%;
	background: #f1f5f8;
		padding: 5%;
	}
	#service02 .price ul li{
		padding: 10px;
	}
	#service02 .price ul{
		width: 100%;
	}
	#service03 h2{
		background-size:60%;
		margin-bottom: 15px;
	}
	#service03 ul li{
		width: 28%;
		margin-bottom: 30px;
	}
	#service03 ul li::before{
		width: 30px;
		right:-30px;
		background-size:150%;
		background-position: center right;
	}
	#service03 ul li:nth-of-type(3)::before{
		content: none;
	}
	#service03 ul li .no{
		margin-bottom: 10px;
	}
	#service03{
		padding-bottom: 5%;
		margin-bottom: 10%;
	}
	#service04{
		background-size:100%;
		margin-bottom: 15%;
	}
	#service04 .container1{
		padding: 0 !important;
	}
	#service04 h2{
		position: static;
		padding: 15px 60px;
		text-align: right;
	}
	#service04::after{
		top:30px;
		width: 50px;
	}
	#service04::before{
		content: none;
	}
	#service04 ul{
		width: 90%;
	background: #f1f5f8;
		padding: 5%;
		align-items:baseline;
	}
	#service04 ul li{
		width: 48%;
	}
	#service04 ul li figure{
		height: inherit;
		margin-bottom: 10px;
	}
	#service05{
		margin-bottom: 10%;
	}
	#service05 h2{
		background-size:70%;
		margin-bottom:10px;
	}
	#service05 .ulstyle01 li{
		width: 100%;
		margin-bottom: 8%;
	}
	#service05 .ulstyle01 li figure{
		margin-bottom: 10px;
	}
	#about #subimage h2{
		background-size:70%;
	}
	#about #subimage .cen-pc{
		padding:0 3% 3%;
	}
	#about01{
		margin-bottom: 15%;
	}
	#about01 ul li{
		padding: 5% 3%;
	}
	#about01 ul li dl dt,#about01 ul li dl dd{
		width: 100%;
	}
	#about01 ul li dl dt{
		margin-bottom: 10px;
	}
	#contact #subimage h2{
		background-size:80%;
	}
	#contact #subimage .cen-pc{
		padding:0 3% 3%;
	}
	#contact01{
		margin-bottom: 15%;
	}
	#contact01 ul li{
		padding: 15px 0;
	}
	.contactbtn .btn01{
	padding: 10px 20px;
}
.stats .stats-container {
    width: 210px;
    margin: 0 auto 100px;
    text-align: left;
    border-right: none
  }
  .stats .stats-container:last-child {
    margin-bottom: 0
  }
  .service {
    padding: 30px 10px;
    padding-top: 70%;
    line-height: 1.8;
    background-size: 100% !important;
  }
  .service.webco {
    padding: 30px 10px;
    padding-top: 70%;
  }
  .service.online {
    padding: 30px 10px;
    padding-top: 70%;
  }
  .service.recruit1 {
    padding: 30px 10px;
    padding-top: 70%;
  }
}