@charset "UTF-8";
/* CSS Document */
body{
	color: #1c2c43;
	margin: 0 auto;
	padding: 0px;
	line-height: 1;
	letter-spacing: 0.05em;
	overflow-x: hidden;
	font-family: 'Noto Sans JP', sans-serif;
	background: #FAFAFA;
}

*{
	list-style: none;
	margin: 0px;
	padding: 0px;
}

html{
	overflow-x: hidden;
}

p{
	line-height: 1.8em;
}

th{
	text-align: left;
}

a{
	outline: none;
}

::placeholder {
	color: #ddd;
	font-size: 12px;
}

address{
	font-style: inherit;
}

.clear{
	clear: both;
}

.left{
	float: left;
}

.right{
	float: right;
}

.block{
	overflow: hidden;
}

fit{
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

just{
	text-align: justify;
	text-justify: inter-ideograph;
}

.min{
	font-family: 'Noto Serif JP', serif;
}

img{
	border: none;
	height: auto;
	line-height: 1em;
	margin: 0px;
	padding: 0px;
	vertical-align: bottom;
}

img.centered {
	display: block;
	margin-left: auto;
	margin-right: auto;
}

img.alignright {
	padding: 4px;
	margin: 0 0 2px 10px;
	display: inline;
}

img.alignleft {
	padding: 4px;
	margin: 0 10px 2px 0;
	display: inline;
}

.alignright {
	float: right;
}

.alignleft {
	float: left;
}

a,
a img{
	transition: 0.3s;
}

a[href^="tel:"] {
	pointer-events: none;
	color:#666;
	text-decoration: underline;
}

input[type="submit"] {
	-webkit-appearance: none;
	border-radius: 0;
}

.sp{
	display: none;
}

.openbtn{
  display: none;
}

.slide {
  width: 100%;
  overflow: hidden;
}

.slide-image {
  background-position: center;
  background-repeat: no-repeat;
  background-size: cover;
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  opacity: 0;
  animation: slider-1 24s linear infinite;
}

.slide-image img{
	height: 700px !important;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.slide-image:nth-child(1) {
  animation-delay: -2s;
}

.slide-image:nth-child(2) {
  animation-delay: 6s;
}

.slide-image:nth-child(3) {
  animation-delay: 14s;
}

@keyframes slider-1 {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  4.16% {
    opacity: 1;
  }
  33.33% {
    opacity: 1;
  }
  41.66% {
    opacity: 0;
    transform: scale(1.1);
  }
    100% {
  opacity: 0;
  }
}

/*==================================================
スライダーのためのcss
===================================*/
.slider {/*横幅94%で左右に余白を持たせて中央寄せ*/
   width:100%;
   padding: 0px 7%;
    margin:0 auto;
}

.slider img {
    width:100%;/*スライダー内の画像を横幅100%に*/
    height:auto;
}

/*slickのJSで書かれるタグ内、スライド左右の余白調整*/

.slider .slick-slide {
    margin:0 10px;
}

/*矢印の設定*/

/*戻る、次へ矢印の位置*/
.slick-prev, 
.slick-next {
    position: absolute;/*絶対配置にする*/
    top: 42%;
    cursor: pointer;/*マウスカーソルを指マークに*/
    background-size: 75px 29px;
    width: 75px;
    height: 29px;
}

.slick-prev{
	background-image: url(../image/top/left.png);
}

.slick-next{
	background-image: url(../image/top/right.png);
}

.slick-prev {/*戻る矢印の位置と形状*/
    left: 0;
}

.slick-next {/*次へ矢印の位置と形状*/
    right: 0;
}

/*ドットナビゲーションの設定*/

.slick-dots {
    text-align:center;
	margin:20px 0 0 0;
}

.slick-dots li {
    display:inline-block;
	margin:0 5px;
}

.slick-dots button {
    color: transparent;
    outline: none;
    width:8px;/*ドットボタンのサイズ*/
    height:8px;/*ドットボタンのサイズ*/
    display:block;
    border-radius:50%;
    background:#ccc;/*ドットボタンの色*/
}

.slick-dots .slick-active button{
    background:#333;/*ドットボタンの現在地表示の色*/
}

/* 投稿者情報
-----------------------------------------*/
section.profile {
	width: 100%;
	border: 5px solid #f5f5f5;
	margin: 30px 0 10px;
	padding: 35px;
	box-sizing: border-box;
	background-color: #fff;
}

section.profile h1 {
	font-size: 20px;
	border-bottom: 1px dotted #666666;
	margin: 0 0 25px;
	padding: 0 0 10px;
}

section.profile .inner {
	display: -webkit-flex;
	display: -moz-flex;
	display: -ms-flex;
	display: -o-flex;
	display: flex;
	justify-content: space-between;
	margin: 0;
	padding: 0;
}

section.profile .inner .left-side {
	width: 90px;
	margin-left: 10px;
	padding-top: 20px;
}

section.profile .inner .right-side {
	width: calc(100% - 125px);
}

section.profile .inner .right-side .authorName {
	font-size: 18px;
	font-weight: bold;
	margin: 0 0 5px;
}

section.profile .inner .right-side .authorProfile {
	font-size: 14px;
	line-height: 1.6;
	margin: 0;
}

section.profile .inner .right-side .authorLink{
	text-align: right;
	font-size: 14px;
	padding-top: 20px;
}

section.profile .inner .right-side .authorLink a{
	color:#333;
}

section.profile .inner .right-side .authorLink a:hover{
	text-decoration: none;
}

section.profile .inner .right-side .authorLink a i{
	font-size: 10px;
	margin-right: 5px;
}

/*----------------------------contents----------------------------*/

header{
	position: fixed;
	top: 20px;
	left: 0px;
	right: 0px;
	width: 94%;
	margin: 0 auto;
	z-index: 10;
	border-radius: 5px;
	background-color: #fff;
	box-shadow: 0px 0px 28px 0px rgb(43 68 93 / 10%);
}

header #globalheader{
	box-sizing: border-box;
	height: 90px;
	width: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
}

header h1{
	padding-left: 30px;
}

header h1 img{
	vertical-align: top;
}

.navigation li{
	display: inline-block;
	margin-right: 30px;
	font-size: 14px;
	font-weight: bold;
}

.navigation li:nth-child(-n+5) a{
	position: relative;
	padding-top: 10px;
	padding-bottom: 10px;
}

.navigation li:nth-child(-n+5) a::after{
	position: absolute;
	bottom: 0;
	left: 0;
	content: '';
	width: 0;
	height: 1px;
	background-color: #294C7A;
	transition: .3s;
}

.navigation li:nth-child(-n+5) a:hover::after{
	width: 100%;
}

.navigation li a{
	color:#333333;
	text-decoration: none;
	display: inline-block;
	transition: .3s;
}

.navigation li:last-child a{
	color: #fff;
	background: #0084cf;
	border: 2px solid #0084cf;
	border-radius: 20px;
	padding: 12px 25px;
	transition: .3s;
}

.navigation li a:hover{
	color:#294C7A;
}

.navigation li:last-child a:hover{
	color:#0084cf;
	background-color: #fff;
}

#main{
	display: block;
	position: relative;
	/*background-image: url(../image/common/bg.png);
	background-repeat: no-repeat;
	background-position: right top;*/
}

#main .contents{
	position: relative;
	z-index: 1;
}

#main.top{
	background-image: none;
}

#tringle{
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 400px 400px 0;
	border-color: transparent #294c7a transparent transparent;
	position: absolute;
	top: 0px;
	right: 0px;
}

.inner-img{
	height: 250px;
	background-position: center center;
	background-size: cover;
}

#inner-txts{
	text-align: left;
	box-sizing: border-box;
	padding: 50px 0px 30px;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
}

h3#temp-ttl{
	text-align: center;
	font-size: 40px;
	position: relative;
	font-weight: bold;
	line-height: 1.4em;
}

p#temp-txt{
	text-align: center;
	padding-top: 30px;
	line-height: 2em;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	padding-bottom: 50px;
}

#inner-ttl-box h2{
	font-size: 38px;
	line-height: 1.2em;
	font-weight: bold;
	position: relative;
	padding-bottom: 10px;
	letter-spacing: 0.1em;
}

#inner-ttl-box p{
	font-weight: bold;
	font-size: 16px;
	line-height: 1.2em;
	letter-spacing: 0.1em;
	text-transform: uppercase;
	font-family: 'Poppins', sans-serif;
}

#introduction-cont{
	position: relative;
	text-align: center;
	/*display: flex;
	flex-wrap: wrap;*/
}

#introduction-cont h2{
	letter-spacing: 0.1em;
	font-weight: 700;
	font-size: 40px;
	line-height: 2em;
	/*width: 45%;*/
}

#introduction-cont p{
	font-size: 16px;
	line-height: 2em;
	margin-top: 25px;
	/*padding-left: 25px;
	width: 55%;*/
	box-sizing: border-box;
}

#reason-box{
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	position: relative;
	display: flex;
	-ms-flex-align: start;
	-webkit-box-align: start;
	align-items: flex-start;
}

#reason-cont{
	background: linear-gradient(to right, #0073bb 0%, #6ac1e6 100%);
}

#reason-box h2.subttl{
	width: auto;
	max-width: inherit;
	min-width: 400px;
	margin: 0px;
}

#reason-cont ul{
	padding: 100px 0px 100px;
}

#reason-cont ul li{
	display: block;
	width: 100%;
	border-bottom: 1px solid #fff;
	padding-bottom: 20px;
	margin-bottom: 20px;
	box-sizing: border-box;
	color: #fff;
}

#reason-cont ul li h3{
	font-size: 28px;
	line-height: 1.4em;
}

#reason-cont ul li p{
	line-height: 1.6em;
	padding-top: 10px;
	font-size: 14px;
}

p#pan{
	text-align: left;
	padding: 0px 0px 10px;
	font-size: 12px;
	color: #fff;
	line-height: 1.4em;
	font-weight: 400;
	box-sizing: border-box;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	position: relative;
}

p#pan i.fa-chevron-right{
	margin: 3px 7px 0px;
	vertical-align: top;
	font-size: 10px;
	color:#fff;
}

p#pan a{
	color: #fff;
	text-decoration: none;
}

#footer-contact{
	box-shadow: 0px 0px 10px 0px rgba(205,205,205,0.6);
	padding: 40px 0px;
	text-align: center;
	background-color: #fff;
	border-radius: 10px;
	max-width: 1200px;
	width: 90%;
	margin: -200px auto 0;
	position: relative;
}

#footer-contact p#fc-ttl{
	font-size: 28px;
	line-height: 1.6em;
	font-weight: bold;
}

#footer-contact p#fc-txt{
	font-size: 16px;
	line-height: 1.6em;
	padding-top: 15px;
	padding-bottom: 30px;
}

#footer-contact a{
	font-size: 18px;
	font-weight: bold;
	display: block;
	width: 300px;
	line-height: 70px;
	height: 70px;
	border: 2px solid #ff8000;
	background-color: #ff8000;
	margin: 0 auto;
	border-radius: 35px;
	color:#fff;
	text-decoration: none;
}

#footer-contact a:hover{
	background-color: #fff;
	color:#ff8000;
}

#footer-contact a i{
	margin-right: 15px;
}

footer{
	background-color: #1e1e1e;
	background-color: #333;
	padding: 100px 0px 25px;
	color:#fff;
	letter-spacing: 0.05em;
}

footer #globalfooter{
	overflow: hidden;
	max-width: 1280px;
	margin: 0 auto;
	position: relative;
	width: 90%;
	border-bottom: 1px solid #000;
	padding-bottom: 50px;
	margin-bottom: 50px;
}

footer p#footerread{
	font-size: 22px;
	font-weight: bold;
	padding: 0px 0px 20px 0;
	line-height: 1.4em;
	text-align: center;
	border-top: 1px solid #666;
	padding-top: 50px;
	margin-top: 50px;
}

footer p#footerread span{
	display: block;
	color: #ddd;
	font-size: 14px;
	line-height: 1.2em;
	padding-bottom: 3px;
}

footer #logo-f{
	text-align: center;
}

footer #globalfooter ul{
	display: flex;
	justify-content: space-between;
}

footer #globalfooter ul li{
	vertical-align: top;
}

footer #globalfooter ul li h4{
	font-size: 15px;
	font-weight: bold;
}

footer #globalfooter ul li h4 a{
	text-decoration: none;
	color:#fff;
}

footer #globalfooter ul li h4.ftr-ttl{
	padding-top: 25px;
}

footer #globalfooter ul li p{
	font-size: 12px;
	line-height: 1.2em;
	margin-top: 20px;
	padding-left: 15px;
	position: relative;
}

footer #globalfooter ul li p:before{
	position: absolute;
	left: 0px;
	top: 0px;
	content: "-";
}

footer #globalfooter ul li p a{
	color:#fff;
	text-decoration: none;
}

footer #globalfooter ul li p:before:hover a,
footer #globalfooter ul li p:hover a{
	color:#ff8000;
}

footer small{
	font-size: 10px;
	padding-top: 30px;
	display: block;
	text-align: center;
}

p#readtxt{
	text-align: center;
	font-size: 14px;
	line-height: 2em;
	letter-spacing: 0.1em;
	padding-top: 25px;
}

.promise-c{
	position: relative;
}

#works-box.inner-works{
	padding: 0;
}

#form-box{
	margin-top: 55px;
}

#form-main{
	padding-bottom: 50px;
}

#form-box #caution{
	margin-left: 10%;
	margin-right: 10%;
	display: flex;
	align-items: center;
	padding-bottom: 50px;
}

#form-box #caution p#ttl{
	width: 100px;
	line-height: 30px;
	font-size: 14px;
	color:#fff;
	background-color: #444;
	text-align: center;
	margin: 0px 50px;
}

#form-box #caution p#txt{
	font-size: 14px;
	line-height: 1.8em;
}

#form-box #contents ul,
#form-entry ul{
	border: 1px solid #444;
	margin-bottom: 40px;
	font-size:0;
	display: none;
}

#form-box #contents ul li,
#form-entry ul li{
	width: 32.9%;
	display: inline-block;
	text-align: center;
	font-size: 16px;
	padding: 15px 0px;
	position: relative;
}

#form-box #contents ul li:first-child,
#form-entry ul li:first-child{
	background-color: #444;
	color:#fff;
}

#form-box #contents ul li:nth-child(2):after,
#form-entry ul li:nth-child(2):after{
	content: '';
	border: solid 24px transparent;
	position: absolute;
	top: -1px;
	left: -2px;
	border-left: solid 20px #444;
}

#form-box #contents ul li:nth-child(3):before,
#form-entry ul li:nth-child(3):before{
	content: '';
	border: solid 24px transparent;
	position: absolute;
	top: -1px;
	left: 1px;
	border-left: solid 20px #444;
}

#form-box #contents ul li:nth-child(3):after,
#form-entry ul li:nth-child(3):after{
	content: '';
	border: solid 24px transparent;
	position: absolute;
	top: -1px;
	left: -1px;
	border-left: solid 20px #fff;
}

#form-box #contents #form,
#form-entry #form{
	text-align: left;
	width: 100%;
}

#form-box #contents #form th,
#form-entry #form th{
	width: 27%;
	position: relative;
	border-bottom: 1px dotted #e8e8e8;
	padding: 20px 60px 20px 20px;
	box-sizing: border-box;
	font-size: 16px;
	font-weight: 400;
	letter-spacing: 0em;
	vertical-align: top;
}

#form-box #contents #form th span,
#form-entry #form th span{
	display: inline-block;
	background: #57c7c6;
	border-radius: 3px;
	color: #fff;
	font-size: 13px;
	padding: 0px 10px;
	position: absolute;
	right: 0;
	top: 25px;
	line-height: 28px;
}

#form-box #contents #form td,
#form-entry #form td{
	width: 73%;
	padding: 15px 44px 15px 20px;
	box-sizing: border-box;
	border-bottom: 1px dotted #e8e8e8;
	font-size: 16px;
}

#form-box #contents #form td input,
#form-entry #form td input{
	background-color: #fffeee;
	box-shadow: none;
	border: solid 1px #ccc;
	border-radius: 0;
	margin: 0;
	width: 100%;
	max-width: 100%;
	height: 40px;
	padding-left: 10px;
	box-sizing: border-box;
}

#form-box #contents #form td .mwform-radio-field input,
#form-entry #form td .mwform-radio-field input{
	width: auto;
	height: auto;
	padding-left: 0px;
}

#form-box #contents #form td .mwform-radio-field span.mwform-radio-field-text,
#form-entry #form td .mwform-radio-field span.mwform-radio-field-text{
	margin-left: 5px;
}

#form-box #contents #form td textarea,
#form-entry #form td textarea{
	background-color: #fffeee;
	box-shadow: none;
	border: solid 1px #ccc;
	border-radius: 0;
	margin: 0;
	width: 100%;
	max-width: 100%;
	height: 200px;
	padding: 10px;
	box-sizing: border-box;
}

.mw_wp_form .vertical-item{
	margin-top: 10px;
}

.mw_wp_form .vertical-item + .vertical-item{
	margin-top: 15px !important;
}

.mw_wp_form .vertical-item:last-child{
	margin-bottom: 5px;
}

#form-box #contents #form th b,
#form-entry #form th b{
	font-size: 10px;
	font-weight: 400;
	margin-left: 5px;
}

#form-box #contents p#form-pp,
#form-entry p#form-pp{
	text-align: center;
	font-size: 14px;
	padding-top: 20px;
}

#form-box #contents p#form-pp a,
#form-entry p#form-pp a{
	color:#13202f;
}

#form-box #contents p#form-pp a:hover,
#form-entry p#form-pp a:hover{
	color:#13202f;
	text-decoration: none;
}

#submit{
	text-align: center;
	padding-top: 25px;
}

#submit input{
	display: inline-block;
	margin: 0px 10px;
	padding: 20px 100px;
	background-color: #333;
	color:#fff;
	border: 1px solid #333;
	cursor: pointer;
	font-size: 16px;
}

#submit input:hover{
	color:#333;
	background-color: #fff;
}

#mainimg{
	overflow: hidden;
	position: relative;
	/*background-color: #0D8DD6;*/
	background: -webkit-linear-gradient(right top, #2445a2 0%, #0086d1 50%, #409ad6 80%, #6db2e1 100%);
	background: -moz-linear-gradient(right top, #2445a2 0%, #0086d1 50%, #409ad6 80%, #6db2e1 100%);
	background: -o-linear-gradient(right top, #2445a2 0%, #0086d1 50%, #409ad6 80%, #6db2e1 100%);
	background: -ms-linear-gradient(right top, #2445a2 0%, #0086d1 50%, #409ad6 80%, #6db2e1 100%);
	background: linear-gradient(to right top, #2445a2 0%, #0086d1 50%, #409ad6 80%, #6db2e1 100%);
}

#mainimg #cont{
	text-align: center;
	position: relative;
	z-index: 1;
	color:#fff;
	padding-top: 250px;
	padding-bottom: 120px;
}

#mainimg #cont h2{
	font-size: 54px;
	line-height: 1.8em;
	padding-bottom: 15px;
	font-weight: 900;
	
}

#mainimg #cont h2 span{
	background-color: #fff;
	color:#0084cf;
	padding: 0px 7px 0 10px;
}

#mainimg #cont h2 i{
	font-size: 16px;
	position: relative;
	top: -22px;
}

#mainimg #cont p{
	line-height: 1.6em;
	font-size: 16px;
	padding-bottom: 30px;
	font-weight: bold;
}

.top-links{
	width: 90%;
	max-width: 1200px;
	margin: 0px auto 80px;
	position: relative;
}

.top-links.bottom0{
	margin-bottom: 0px;
}

.top-links a{
	width: 300px;
	color:#0084cf;
	text-decoration: none;
	line-height: 50px;
	font-size: 14px;
	text-align: center;
	border-radius: 30px;
	position: relative;
	display: block;
	border: 1px solid #0084cf;
	margin: 50px auto 0;
}

#works-box .top-links{
	margin-bottom: 20px;
}

#works-box .top-links a{
	margin-top: 20px;
}

.top-links a i{
	color:#0084cf;
	position: absolute;
	left: 10px;
	top: 8px;
	font-size: 34px;
}

.top-links a:hover{
	border: 1px solid #0084cf;
	background-color: #0084cf;
	color:#fff;
}

.top-btns a.btn:hover i{
	color:#fff;
}

#pricelink{
	color: #fff;
	background-color: #41525D;
	padding-top: 1px;
	padding-bottom: 25px;
}

#pricelink h3.temp-ttl:before{
	border-top: 2px solid #fff;
	color: #fff;
}

#pricelink h3.temp-ttl{
	max-width: 1200px;
	width: 90%;
	margin: 75px auto 30px;
}

h3.temp-ttl{
	font-size: 16px;
	margin: 0 auto 30px;
	text-align: left;
}

h3.temp-ttl span{
	display: inline-block;
	font-size: 38px;
	letter-spacing: 0.05em;
	font-family: 'Poppins', sans-serif;
	text-transform: uppercase;
	margin-right: 20px;
}

h3.temp-ttl:before{
	content: attr(data-number);
	display: inline-block;
	margin-right: 20px;
	color: #000;
	vertical-align: top;
	font-size: 16px;
	font-family: 'Poppins', sans-serif;
	border-top: 2px solid #000;
	margin-top: 7px;
	padding-top: 5px;
	font-weight: bold;
}

h2.subttl{
	line-height: 1.4em;
	font-size: 16px;
	letter-spacing: 0.1em;
	padding-top: 100px;
	text-align: center;
	position: relative;
	width: 90%;
	max-width: 1200px;
	margin: 0px auto 40px;
}

.innerbox h2.subttl{
	padding-top: 0px;
}

.page-template h2.subttl,
.innerbox h3.hp-ttl,
.innerbox #service-line ul,
.innerbox ul#first-list,
.innerbox #works-box ul{
	width: 100%;
	max-width: 100%;
}

.top-links h2.subttl,
.top-links h3.temp-ttl{
	width: 100%;
	max-width: 100%;
}

h2.subttl:before{
	/*background: linear-gradient(to right, #0073bb 0%, #6ac1e6 100%);*/
	background-color: #0084cf;
	content: "";
	width: 35px;
	height: 2px;
	position: absolute;
	bottom: -30px;
	left: 0px;
	right: 0px;
	margin: 0 auto;
}

h2.subttl span{
	position: relative;
	font-family: 'Poppins', sans-serif;
	font-size: 80px;
	line-height: 1em;
	display: block;
	margin-bottom: 15px;
}

h2#innerttl{
	padding-top: 0px;
}

.subttlline{
	width: 25px;
	height: 1px;
	background-color: #0084cf;
	margin: 25px auto;
}

#concept h2{
	font-size: 16px;
	letter-spacing: 0.1em;
	line-height: 2em;
	padding-top: 25px;
	text-align: center;
}

#concept p{
	line-height: 1.8em;
	font-size: 14px;
	text-align: center;
}

#top-detail{
	padding-bottom: 25px;
}

#top-detail #cont-l{
	background-image: url(../image/top/method.jpg);
	background-position: center bottom;
}

#top-detail #cont-r{
	background-image: url(../image/top/support.jpg);
	background-position: center center;
}

#top-detail .td-cont{
	height: 380px;
	display: inline-block;
	background-size: cover;
	width: 49.9%;
	position: relative;
}

#top-detail #cont-l .txts{
	bottom: -50px;
	right: 50px;
}

#top-detail #cont-r .txts{
	bottom: -50px;
	left: 50px;
}

#top-detail .td-cont .txts{
	max-width: 530px;
	width: 80%;
	background: #fff;
	padding: 35px 50px;
	box-shadow: 0px 0px 10px 0px rgba(205,205,205,0.6);
	text-align: center;
	border-radius: 3px;
	box-sizing: border-box;
	position: absolute;
}

#top-detail .td-cont:first-child{
	margin-right: 0.1%;
}

.td-cont span{
	text-transform: uppercase;
	display: block;
	text-align: center;
	margin: 0 auto;
	font-size: 14px;
	color:#0a5799;
	font-weight: bold;
	font-family: 'Poppins', sans-serif;
}

.td-cont h3{
	font-size: 24px;
	line-height: 1.4em;
	padding-top: 10px;
	padding-bottom: 15px;
}

.td-cont p{
	line-height: 1.8em;
	width: 100%;
	text-align: left;
}

#works-box li{
	display: block;
	margin: 0px 0% 35px;
	text-align: left;
	width: 31%;
	vertical-align: top;
	box-sizing: border-box;
}

.others-single#works-box li{
	width: 100%;
}

#works-box li:nth-child(3n+2){
	margin-left: 3.5%;
	margin-right: 3.5%;
}

.others-single#works-box li:nth-child(3n+2){
	margin-left: 0px;
	margin-right: 0px;
}

.others-single#works-box li{
	margin-bottom: 25px;
}

#works-box li a{
	display: block;
	text-decoration: none;
}

#service-line.company-headline ul li figure{
	height: 225px;
	overflow: hidden;
}

#works-box li .img img{
	box-shadow: 0px 10px 10px rgb(0 0 0 / 15%);
	height: 225px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

#works-box li .img img,
#service-line.company-headline ul li figure img{
	transition: .3s all;
}

#service-line.company-headline ul li:hover a,
#service-line.company-headline ul li:hover div span{
	color: #497cc0;
}

figure.hover-parent {
	width: 100%;
	height: 225px;
	position: relative;
	overflow: hidden;
	margin-bottom: 0px;
}

figcaption.hover-mask {
	width: 100%;
	height: 225px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	background: rgba(0,0,0,0.7);
	opacity: 0;
	color: #fff;
	display: flex;
	align-items: center;
	text-align: center;
}

figcaption.hover-mask p{
	text-align: center;
	width: 100%;
}

figcaption.hover-mask p b{
	display: block;
	font-size: 18px;
	font-weight: bold;
	padding-bottom: 20px;
	text-align: center;
}

figcaption.hover-mask p span{
	display: block;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
}

figure.hover-parent:hover .hover-mask {
	opacity: 1;
	transition:all 0.6s ease;
}

#works-box li p.name{
	padding: 20px 0px 0px 0px;
	font-size: 15px;
	line-height: 1.4em;
	text-align: center;
	font-weight: bold;
	color:#152342;
	position: relative;
}

#works-box li p.name:before{
	position: absolute;
	content: "";
	border: 1px solid #0084cf;
	height: 25px;
	left: 50%;
	position: absolute;
	top: 0;
	transform: translateY(-50%);
}

#works-box li p.industry{
	line-height: 1em;
	font-size: 14px;
	color:#152342;
	position: relative;
	padding-left: 20px;
}

#works-box li p.industry:before{
	content: "";
	position: absolute;
	width: 15px;
	height: 1px;
	background-color: #ccc;
	left: 0px;
	top: 6px;
}

#works-box li p.cate{
	font-size: 12px;
	margin-top: 25px;
	padding: 7px;
	line-height: 1em;
	color:#0a5799;
	display: inline-block;
	border: 1px solid #0a5799;
	border-radius: 3px;
	position: relative;
}

#works-box li p.cate i{
	font-size: 18px;
	top: 3px;
	left: 0px;
	position: absolute;
}

#works-box li img,
.about-cont .img img{
	width: 100%;
}

#service-line ul li img{
	width: 70px;
	display: block;
	position: absolute;
	bottom: 20px;
	right: 20px;
	opacity: .1;
}

#service-line.company-headline ul li img{
	width: 100%;
	opacity: 1;
}

#service-line.company-headline ul li img,
#works-box li img{
	height: 225px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

#service-line.service-line-inner{
	background-image: none;
	padding-bottom: 0;
}

#service-line.service-page,
#plan-cont.service-page{
	padding-top: 0;
}

.separator{
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 9rem 0 0 100vw;
	border-color: #fff transparent transparent #F6F6F6;
}

#price-cont ul,
#plan-list ul,
#service-line ul,
ul#first-list,
ul#value-list,
#works-box ul,
ul#newsrelease,
ul#banner-list,
.promise-c{
	text-align: left;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
}

/*ul#first-list{
	text-align: center;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-bottom: 100px;
}*/

ul#first-list li{
	width: 23%;
	margin: 0px 2% 20px 0px;
	text-align: center;
}

ul#first-list li:nth-child(4),
ul#first-list li:nth-child(8){
	margin-right: 0px;
}

ul#first-list li a{
	display: block;
	padding: 30px 0px 20px;
	font-weight: bold;
	font-size: 16px;
	line-height: 1.6em;
	border-radius: 25px;
	width: 100%;
	background-color: #fff;
}

ul#first-list li a:hover{
	box-shadow: 0 10px 30px rgba(0,0,0,.1);
}

ul#first-list li a p{
	width: 85%;
	display: block;
	border-radius: 30px;
	background-color: #ff8000;
	font-size: 14px;
	box-sizing: border-box;
	font-weight: bold;
	color:#fff;
	padding: 10px 0px 10px 30px;
	margin: 25px auto 0;
	text-decoration: none;
	position: relative;
	text-align: left;
	border: 1px solid #ff8000;
	transition: .3s;
}

ul#first-list li a:hover p{
	background-color: #fff;
	color:#ff8000;
}

ul#first-list li a p i{
	position: absolute;
	right: 15px;
	top: 10px;
	font-size: 24px;
}

ul#newsrelease{
	display: flex;
	flex-wrap: wrap;
	padding-top: 20px;
}

ul#newsrelease.inner{
	padding-top: 0px;
	width: 100%;
	display: block;
}

ul#value-list{
	padding-top: 30px;
	padding-bottom: 50px;
}

ul#banner-list{
	padding: 100px 3% 0px;
}

ul#banner-list,
ul#value-list,
#works-box ul,
ul.list-three,
ul#first-list{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-moz-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}

ul#banner-list li,
ul.concept-list li{
	display: inline-block;
	margin: 0px 1% 20px;
	text-align: left;
	width: 31%;
	vertical-align: top;
	box-sizing: border-box;
}

ul#value-list li{
	display: inline-block;
	margin: 0px 1% 25px;
	padding: 30px 25px 20px;
	text-align: left;
	width: 31%;
	background-color: #fff;
	vertical-align: top;
	box-sizing: border-box;
	border-radius: 3px;
}

ul#value-list li i{
	display: block;
	font-size: 38px;
	line-height: 1.2em;
	text-align: center;
	margin-bottom: 20px;
}

ul#value-list li h3{
	text-align: center;
	font-size: 18px;
	line-height: 1.6em;
	padding: 25px 0 15px;
}

ul#value-list li img,
ul#first-list li img{
	display: block;
	width: 150px;
	margin: 0 auto;
}

ul#first-list li img{
	margin-bottom: 20px;
}

ul#value-list li p{
	text-align: left;
	font-size: 14px;
	line-height: 1.8em;
	margin-left: 10px;
	margin-right: 10px;
}

#service-line ul li{
	display: inline-block;
	margin: 0px 1% 10px 0px;
	text-align: left;
	width: 32.6%;
	box-sizing: border-box;
	vertical-align: top;
	position: relative;
	transition: .3s;
	border: 1px solid #e5e7ea;
}

#service-line.company-headline ul li{
	border: none;
	padding: 0px;
	outline: none;
	outline-offset: 0px;
	width: 32%;
}

#service-line.company-headline ul li:hover{
	background-color: transparent;
	outline: none;
	outline-offset: 0px;
}

#service-line ul li:nth-child(3n+3),
#price-cont.inner ul li:nth-child(3n+3){
	margin-right: 0px;
}

ul#first-list li a,
#plan-cont.inner ul li a{
	color:#13202f;
	text-decoration: none;
	display: block;
}

#service-line ul li a{
	color:#13202f;
	background-color: #fff;
	text-decoration: none;
	display: block;
	height: 100%;
	box-sizing: border-box;
	padding: 20px;
}

#service-line ul li a:hover{
	background-color: #f3f9fe;
}

#service-line.company-headline ul li a{
	padding: 0px;
	margin-bottom: 50px;
}

#service-line.company-headline ul li a:hover{
	background-color: inherit;
}

#service-line.company-headline ul li img{
	position: static;
}

#service-line ul li a figure{
	margin-bottom: 0px;
}

#plan-cont ul li:hover a p,
#plan-cont ul li:hover a span,
#plan-cont ul li:hover a span i{
	color:#294C7A;
}

.plan-list li figure{
	overflow: hidden;
}

.plan-list li figure img{
	transition: .5s all;
}

.plan-list li a:hover figure img{
	transform:scale(1.1,1.1);
	transition: .5s all;
}

#service-line ul li div{
	padding: 0px;
}

#service-line.company-headline ul li div{
	padding-left: 0px;
}

#price-cont.inner ul,
#service-line ul{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-moz-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}

#service-line ul li h3{
	font-size: 18px;
	line-height: 1.4em;
	padding: 5px 0px 15px;
}

#service-line.company-headline ul li h3{
	padding: 25px 0px 15px;
	text-align: left;
}

#service-line.company-headline ul li div span{
	right: auto;
}

#service-line.company-headline ul li p{
	padding: 0px 0px 10px;
}

#plan-cont ul li p{
	font-size: 14px;
	line-height: 1.6em;
	padding: 20px 0px;
}

#service-line ul li p{
	font-size: 14px;
	line-height: 1.8em;
	padding: 0 0 15px;
}

#plan-cont ul li div span{
	color:#333;
	font-size: 14px;
	font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
	display: block;
	text-align: left;
	margin-top: 10px;
	padding-left: 20px;
	position: relative;
	transition: .3s;
}

#service-line ul li div span{
	color:#0084cf;
	text-decoration: underline;
	font-size: 14px;
	font-weight: bold;
	font-family: 'Noto Sans JP', sans-serif;
	display: block;
	text-align: left;
	transition: .3s;
}

#plan-cont ul li div span i{
	position: absolute;
	top: 2px;
	left: 1px;
	font-size: 10px;
	display: block;
	transition: .3s;
}

#service-line ul li div span i{
	display: inline-block;
	margin-left: 3px;
	transition: .3s;
	font-size: 10px;
	font-weight: bold;
}

ul#newsrelease li{
	vertical-align: top;
	width: 32%;
	position: relative;
	margin: 0px 2% 20px 0px;
	box-sizing: border-box;
	background-color:#fff;
	transition: .3s;
}

ul#newsrelease li:nth-child(3),
ul#newsrelease li:nth-child(6){
	margin-right: 0px;
}

ul#newsrelease li a{
	display: block;
	padding: 35px 30px 30px;
	color:#333;
	height: 100%;
	box-sizing: border-box;
	text-decoration: none;
}

ul#newsrelease li p.cate{
	min-width: 120px;
	line-height: 20px;
	display: inline-block;
	color:#fff;
	font-size: 13px;
	margin-right: 10px;
	text-decoration: none;
	border-radius: 3px;
	text-align: center;
}

ul#newsrelease li p.cate.tec{
	background-color: #1ba2e6;
}

ul#newsrelease li p.cate.news{
	background-color: #2cbcd9;
}

ul#newsrelease li p.cate.solution{
	background-color: #3d70bb;
}

ul#newsrelease li h3{
	font-size: 16px;
	font-weight: bold;
	line-height: 1.6em;
	transition: .3s;
	padding-top: 10px;
}

ul#newsrelease li a:hover{
	border-color: transparent;
	box-shadow: 0px 3px 18px 2px rgba(27, 162, 230, 0.3);
}

ul#newsrelease li .day{
	color:#999;
	font-size: 13px;
	line-height: 1em;
	display: inline-block;
}

#company-box{
	overflow: hidden;
}

#company-box #img{
	float: left;
	width: 40%;
}

#company-box #img img{
	width: 100%;
	height: auto;
}

#company-box #cont{
	width: 60%;
	float: right;
	padding-left: 5%;
	box-sizing: border-box;
}

#company-box #cont h3{
	font-size: 26px;
	line-height: 1.6em;
	padding-bottom: 20px;
}

#company-box #cont p{
	vertical-align: top;
	box-sizing: border-box;
	line-height: 1.8em;
	font-size: 16px;
}

#company-box #cont b{
	display: block;
	font-weight: 400;
	line-height: 2.2em;
	font-size: 16px;
	text-align: right;
	padding-top: 20px;
}

.width7,
.width10{
	width: 90%;
	max-width: 1200px;
	margin: 0 auto;
	box-sizing: border-box;
}

h3.sublinettl{
	border-bottom: solid 1px #e8e8e8;
	position: relative;
	font-size: 22px;
	line-height: 1em;
	margin-bottom: 10px;
	font-weight: bold;
	padding: 12px 0px 12px 20px;
}

h3.sublinettl:after{
	content: '';
	width: 5px;
	height: 70%;
	background: #0a0a0a;
	border-radius: 4px;
	display: block;
	position: absolute;
	top: 15%;
	left: 0;
}

.companytable th{
	font-size: 16px;
	letter-spacing: 0.05em;
	font-weight: bold;
	vertical-align: top;
	line-height: 2em;
	width: 150px;
	padding: 20px 0px 20px 5px;
	border-bottom: 1px solid #000;
}

.companytable td{
	font-size: 16px;
	letter-spacing: 0.05em;
	vertical-align: top;
	line-height: 2em;
	padding: 20px 0px 20px 20px;
	border-bottom: 1px solid #e8e8e8;
}

.companytable td p{
	padding-bottom: 30px;
}

.companytable td p:last-child{
	padding-bottom: 0px;
}

.companytable td p span{
	display: block;
	font-weight: bold;
}

.companytable tr:last-child th,
.companytable tr:last-child td{
	border: none;
}

#thought{
	max-width: 1000px;
	width: 90%;
	margin: 0 auto;
	text-align: center;
}

#thought #logo{
	text-align: center;
	padding: 45px 0px 50px;
}

#thought h3{
	font-size: 24px;
	padding: 0px 0px 30px;
	line-height: 1.6em;
	font-weight: 400;
}

#thought h3 b{
	display: block;
	margin-bottom: 10px;
}

#thought p#txt{
	text-align: left;
	line-height: 1.8em;
	padding-top: 20px;
}

ul.slider li h3{
	font-size: 18px;
	line-height: 1.6em;
	color:#fff;
	padding-top: 15px;
}

ul.slider li p{
	padding: 5px 0px 10px;
	font-size: 14px;
	line-height: 1.6em;
	color:#fff;
}

ul.slider li b{
	color:#ABB3BF;
	font-size: 14px;
	display: block;
	font-weight: 400;
}

#slider-height{
	background-color: #294C7A;
	height: 300px;
	margin-top: -270px;
}

.about-cont{
	overflow: hidden;
	width: 100%;
	margin: 0 auto;
	padding: 75px 0px;
	display: flex;
	justify-content: space-between;
	border-bottom: 1px dotted #acacac;
}

.about-cont:first-child{
	padding-top: 0px;
}

.about-cont .img{
	width: 25%;
}

.about-cont .txt{
	width: 70%;
}

.about-cont .txt h4{
	font-size: 22px;
	line-height: 1.4em;
	padding-bottom: 10px;
}

.about-cont .txt p{
	font-size: 14px;
	line-height: 1.8em;
}

.about-cont .txt .top-links{
	display: block;
	margin: 0px;
	width: auto;
	max-width: 0;
}

.about-cont .txt .top-links a{
	margin: 20px 0px 0px 0px;
}

ul#top-point{
	text-align: center;
	border-bottom: 1px solid #ddd;
	border-left: 1px solid #ddd;
}

ul#top-point li{
	text-align: left;
	width: 33%;
	display: inline-block;
	box-sizing: border-box;
	padding: 20px;
}

ul#top-point li:nth-child(2){
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
}

ul#top-point li span{
	display: inline-block;
	font-weight: bold;
	font-size: 12px;
	padding: 8px;
	background-color: #294C7A;
	color: #fff;
}

ul#top-point li p{
	line-height: 1.4em;
	padding-top: 5px;
}

.tab-area{
	text-align: center;
	padding: 35px 0px;
}

.tab-area .tab{
	display: inline-block;
	margin-right: 5px;
}

.tab-area .tab a{
	color:#13202f;
	text-decoration: none;
	font-weight: bold;
	display: block;
	padding: 10px 15px;
	border-radius: 5px;
	text-decoration: none;
	
}

.tab-area .tab.active a{
	color:#fff;
	background-color: #333;
}

.inner-works .content {
	display: none;
}

.inner-works .content.show {
	display: block;
}

#about-word{
	position: relative;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
}

h3#about-ttl{
	text-align: left;
	font-size: 60px;
	line-height: 1.4em;
	padding: 75px 7% 75px 0px;
	position: absolute;
	color:#294C7A;
}

h3#about-ttl span{
	display: inline-block;
	margin: 0px 15px;
}

p#about-txt{
	border: 1px solid #e0e2e9;
	line-height: 1.8em;
	font-size: 16px;
	padding: 100px;
	box-sizing: border-box;
	color:#294C7A;
	font-weight: bold;
	margin-left: 450px;
	background-color: #fff;
}

ul.box-list li{
	vertical-align: top;
	margin: 0px 1.5%;
	border: 1px solid #ddd;
	padding: 25px;
	width: 30%;
}

ul.box-list li h3{
	line-height: 1.4em;
	font-size: 24px;
}

ul.box-list li p{
	line-height: 1.6em;
	font-size: 14px;
}

p#resolution{
	font-weight: 700;
	padding: 25px 10px;
	box-sizing: border-box;
	font-size: 24px;
	border-radius: 8px;
	letter-spacing: 0.05em;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #fff;
	background: -webkit-gradient(linear, left bottom, left top, from(#196FDD), to(#3990FF));
	background: linear-gradient(to top, #196FDD, #3990FF);
}

.problem{
	padding: 0px;
	margin-bottom: 140px;
	position: relative;
	text-align: center;
}

.problem:before{
	background-image: url(../image/service/arrow.jpg);
	background-size: 120px 100px;
	margin: 0 auto;
	width: 120px;
	height: 100px;
	content: "";
	position: absolute;
	bottom: -120px;
	left: 0px;
	right: 0px;
}

.problem-bottom{
	padding-bottom: 30px;
}

.problem h3{
	font-size: 24px;
	letter-spacing: 0.05em;
	line-height: 1.4em;
	margin: auto;
	padding-top: 75px;
	padding-bottom: 15px;	
	display: inline-block;
	justify-content: center;
	align-items: center;
	text-align: center;
	color:#000;
	position: relative;
	padding: 75px 30px 15px 35px;
}

.problem h3:before{
	transform: rotate(160deg);
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 7px 35px 7px;
	border-color: transparent transparent #f0ff49 transparent;
	position: absolute;
	bottom: 10px;
	left: 0px;
}

.problem h3:after{
	transform: rotate(-160deg);
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 7px 35px 7px;
	border-color: transparent transparent #f0ff49 transparent;
	position: absolute;
	bottom: 10px;
	right: 0px;
}

.problem ul{
	text-align: center;
	box-sizing: border-box;
	padding-top: 25px;
}

.problem ul li{
	width: 220px;
	display: inline-block;
	line-height: 1.4em;
	padding: 0px 0px 200px;
	font-size: 16px;
	position: relative;
	box-sizing: border-box;
	vertical-align: top;
	margin: 0px 15px;
}

.problem ul li:nth-child(odd){
	background-image: url(../image/service/hmn1.png);
	background-size: 175px 175px;
	background-repeat: no-repeat;
	background-position: center bottom;
}

.problem ul li:nth-child(even){
	background-image: url(../image/service/hmn2.png);
	background-size: 175px 175px;
	background-repeat: no-repeat;
	background-position: center bottom;
	margin-top: 40px;
}

.speach-balloons-square-ld p{
	position: relative;
	box-sizing: border-box;
	width: 100%;
	padding: 20px 20px;
	font-size: 15px;
	background-color: #f4f6f8;
	border-radius: 15px;
	text-align: left;
}

.speach-balloons-square-ld p::after{
	content: '';
	position: absolute;
	display: block;
	width: 0;
	height: 0;
	right: 40px;
	bottom: -15px;
	border-right: 22px solid #f4f6f8;
	border-top: 22px solid transparent;
	border-bottom: 22px solid transparent;
	transform: rotate( 55deg);
}

/*.temp-problem{
	padding: 100px 0px 75px;
	text-align: center;
	background-image: url(../image/service/template-problem.jpg);
	background-position: center center;
	background-size: cover;
	background-attachment: fixed;
	color:#fff;
}*/

.temp-problem .temp-ttl span{
	color:#fff;
}

.temp-problem .problem-bottom{
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
}

.temp-problem .problem-cont{
	background-color:rgba(255,255,255,0.9);
	padding: 75px;
	overflow: hidden;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	color:#000;
	box-sizing: border-box;
	position: relative;
}

.temp-problem .problem-cont .txt{
	padding-right: 450px;
	box-sizing: border-box;
	text-align: left;
}

.temp-problem .problem-cont .txt h4{
	font-size: 24px;
	line-height: 1.6em;
	border-bottom: 1px solid #ccc;
	padding-bottom: 20px;
}

.temp-problem .problem-cont .txt p{
	padding-top: 20px;
	padding-bottom: 20px;
	line-height: 1.8em;
	font-size: 14px;
}

#mainimg #cont a{
	width: 350px;
	display: block;
	border-radius: 50px;
	background-color: #ff8000;
	font-size: 20px;
	box-sizing: border-box;
	font-weight: bold;
	color:#fff;
	padding: 25px 0px 25px 35px;
	text-decoration: none;
	position: relative;
	text-align: left;
	margin: 0 auto;
	border: 1px solid #ff8000;
}

#mainimg #cont a i{
	position: absolute;
	right: 20px;
	top: 23px;
	font-size: 24px;
}

#mainimg #cont a:hover{
	background-color: #fff;
	color:#ff8000;
}

.temp-problem .problem-cont .txt a{
	width: 200px;
	display: block;
	border-radius: 3px;
	background-color: #333;
	color:#fff;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	padding: 15px 0px;
	text-decoration: none;
	border: 1px solid #333;
}

.temp-problem .problem-cont .txt a:hover{
	background-color: inherit;
	color:#333;
}

.temp-problem .problem-cont .img{
	width: 420px;
	height: 336px;
	position: absolute;
	top: 0px;
	bottom: 0px;
	right: 50px;
	margin: auto;
}

.temp-contact{
	padding: 100px 50px;
	text-align: center;
	background-image: url(../image/plan/bg.jpg);
	background-position: center center;
	background-size: cover;
	color:#fff;
	position: relative;
}

.temp-contact:before{
	content: "";
	/*background-color: #0084cf;*/
	width: 100%;
	height: 100%;
	background-color: rgba(0,0,0,0.8);
	z-index: 1;
	position: absolute;
	top: 0px;
	left: 0px;
}

.temp-contact-top{
	margin-top: 75px;
}

.temp-contact p#tc-ttl{
	font-size: 24px;
	line-height: 1.6em;
	font-weight: bold;
	position: relative;
	z-index: 1;
}

.temp-contact p#tc-txt{
	font-size: 16px;
	line-height: 2em;
	padding: 35px 0px 50px;
	position: relative;
	z-index: 1;
}

.temp-contact a{
	width: 380px;
	background-color: #0084cf;
	border: 2px solid #0084cf;
	color:#fff;
	font-weight: bold;
	text-decoration: none;
	font-size: 16px;
	text-align: center;
	display: block;
	margin: 0 auto;
	padding: 30px 0px;
	border-radius: 40px;
	position: relative;
	z-index: 1;
}

.temp-contact a i{
	position: absolute;
	right: 20px;
	top: 25px;
	font-size: 24px;
}

.temp-contact a:hover{
	background-color: #fff;
	color:#0084cf;
}

ul.flow-list{
	margin: 0 auto;
}

ul#recruit-flow{
	width: 100%;
	margin-bottom: 0px;
}

ul.flow-list li{
	display: block;
	vertical-align: top;
	position: relative;
	padding: 20px 25px 20px 100px;
	box-sizing: border-box;
	box-shadow: 0px 1px 5px 0px rgb(0 0 0 / 25%);
	margin-bottom: 50px;
}

ul.flow-list li:before{
	content: "";
	position: absolute;
	left: 50%;
	bottom: -28px;
	margin-left: -5px;
	width: 10px;
	height: 10px;
	z-index: 5;
	border-top: 2px solid #178fbc;
	border-right: 2px solid #178fbc;
	-webkit-transform: rotate(135deg);
	-ms-transform: rotate(135deg);
	-o-transform: rotate(135deg);
	transform: rotate(135deg);
}

ul.flow-list li:last-child{
	border: none;
}

ul.flow-list li:last-child:before{
	content: none;
}

ul.flow-list li p.num{
	position: absolute;
	top: 0px;
	bottom: 0px;
	left: 0px;
	margin: auto;
	height: 50px;
	box-sizing: border-box;
	text-align: center;
	font-family: 'Poppins', sans-serif;
	font-size: 18px;
	line-height: 1.4em;
	width: 100px;
	color:#3a86b9;
}

ul.flow-list li .cont{
	border-left: 2px solid #3a86b9;
	padding: 5px 0px 5px 20px;
}

ul.flow-list li h4{
	padding: 0px 0px 10px 0px;
	font-size: 20px;
	font-weight: bold;
	line-height: 1.4em;
}

ul.flow-list li p.txt{
	text-align: left;
	font-size: 14px;
	line-height: 1.6em;
}

ul.flow-list li a{
	position: absolute;
	top: 0px;
	bottom: 0px;
	margin: auto;
	right: 50px;
	width: 200px;
	line-height: 46px;
	height: 46px;
	display: block;
	border-radius: 25px;
	background-color: #0084cf;
	color:#fff;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	text-decoration: none;
	border: 1px solid #0084cf;
}

ul.flow-list li a i{
	margin-right: 5px;
}

ul.flow-list li a:hover,
a#search-btn:hover,
a#topback-btn:hover{
	background-color: #fff;
	color:#0084cf;
}

ul.plan-list{
	width: 90%;
	max-width: 1200px;
	padding-bottom: 50px;
	margin: 0 auto;
	box-sizing: border-box;
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-moz-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}

ul.concept-list{
	width: 100%;
	padding-bottom: 0px;
}

ul.conpcet-list li .cont p{
	padding-bottom: 0px;
}

#plan-cont{
	padding-bottom: 50px;
}

.plan-list li{
	display: inline-block;
	width: 31.2%;
	margin: 0px 1% 70px;
	text-align: left;
	vertical-align: top;
	overflow: hidden;
	position: relative;
	background-color: #fff;
	border-bottom: 1px solid #dedede;
	padding-bottom: 20px;
}

.plan-list li figure{
	width: 100%;
	height: 210px;
}

.plan-list li figure img{
	width: 100%;
	height: 210px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.plan-list li h3{
	font-size: 18px;
	text-align: center;
	padding: 15px 10px;
	box-sizing: border-box;
	background-color: #294C7A;
	position: relative;
	color:#fff;
}

ul.plan-list li{
	display: inline-block;
	margin: 0px 1.5% 50px;
	text-align: center;
	width: 31%;
	vertical-align: top;
	overflow: hidden;
	position: relative;
	background-color: #fff;
	box-shadow: 0 2px 16px rgb(0 0 0 / 10%);
}

ul.plan-list li:nth-child(2),
ul.plan-list li:nth-child(5){
	margin-left: .3%;
	margin-right: .3%;
}

ul.plan-list li figure{
	width: 100%;
}

ul.plan-list li figure img{
	width: 100%;
	height: 210px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

ul.plan-list li .cont{
	width: 100%;
	box-sizing: border-box;
}

ul.plan-list li .cont h4{
	font-size: 18px;
	padding: 25px 0px 15px;
	line-height: 1.5em;
	font-weight: bold;
	box-sizing: border-box;
}

ul.concept-list li .cont h4{
	font-size: 18px;
	padding: 0px 0px 15px;
	line-height: 1.5em;
	font-weight: bold;
	box-sizing: border-box;
	text-align: center;
}

ul.plan-list li .cont p{
	font-size: 14px;
	line-height: 1.8em;
	padding: 0px 25px 25px;
	text-align: left;
}

ul.concept-list li .cont p{
	font-size: 14px;
	line-height: 1.8em;
	padding: 0px 0px 25px;
	text-align: left;
}

ul.plan-list li div{
	text-align: left;
	padding: 0px 20px;
}

ul#recruit-list{
	max-width: 1200px;
	width: 100%;
	padding-bottom: 0px;
	text-align: center;
	margin: -100px auto 0;
	position: relative;
}

ul#recruit-list li{
	background-color: #fff;
	width: 28%;
	text-align: center;
	border-radius: 10px;
	margin: 0px 2% 25px;
	padding: 40px 40px 0px;
	vertical-align: top;
	display: inline-block;
	box-sizing: border-box;
}

ul#recruit-list li .icon{
	width: 96px;
	height: 96px;
	line-height: 96px;
	text-align: center;
	margin: -85px auto 0;
	font-size: 34px;
	color: #ccc;
	border-radius: 48px;
	background-color: #fff;
}

ul#recruit-list li h3{
	font-size: 20px;
	line-height: 1.4em;
	padding: 10px 0px 20px;
}

ul#recruit-list li h3 span{
	display: block;
	font-size: 12px;
	padding-bottom: 5px;
}

ul#recruit-list li p{
	text-align: left;
	font-size: 14px;
	line-height: 1.6em;
}

.aboutbox{
	background-image: url(../image/about/bg.png);
	background-repeat: no-repeat;
	background-position: right -100px center;
	padding: 75px 0px;
}

.width7.aboutbox{
	padding-right: 0px;
}

p.descri-txt{
	line-height: 1.8em;
	font-size: 14px;
}

h3.descri-ttl,
h4.descri-ttl{
	padding-top: 40px;
	margin-bottom: 40px;
	font-size: 20px;
	font-weight: bold;
	font-family: 'Noto Sans JP', sans-serif;
}

h3.term-mainttl{
	margin: 35px 0 0 0;
	padding: 25px 15px;
	box-sizing: border-box;
	font-family: 'Noto Sans JP', sans-serif;
	font-size: 24px;
	font-weight: bold;
	background-color: #eee;
}

.bottom100{
	padding-bottom: 100px;
}

#width-min{
	max-width: 1100px;
	margin-left: auto;
	margin-right: auto;
	padding-top: 25px;
}

ol.num-list{
	margin: 10px 0 0;
	counter-reset: item;
}

ol.num-list li{
	display: block;
	position: relative;
	padding-left: 30px;
	margin-top: 5px;
	line-height: 1.6em;
	font-size: 14px;
}

ol.num-list li ol.num-list li{
	padding-left: 35px;
}

ol.num-list li ol.num-list li ol.num-list li:before{
	display: none;
}

ol.num-list li ol.num-list li ol.num-list li{
	padding-left: 0px;
}

ol.num-list li:before{
	/*counter-increment: ol 1;
	content: '(' counter(ol) ')';*/
	content: counters(item,"-") ". ";
	counter-increment: item;
	position: absolute;
	top: 0px;
	left: 0px;
}

.privacy-txt{
	background-color: #f5f5f5;
	display: block;
	padding: 20px 25px;
	margin-top: 20px;
}

.privacy-txt h4{
	font-size: 18px;
	line-height: 1.2em;
	padding-bottom: 10px;
}

.privacy-txt p{
	font-size: 14px;
	line-height: 1.8em;
	letter-spacing: 0.05em;
}

p#enactment{
	text-align: right;
}

p#enactment span{
	display: block;
	padding-top: 15px;
}

#recruit-img{
	max-width: 1200px;
	width: 100%;
	margin: 0 auto;
}

#recruit-img img{
	height: 350px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

dl.faq-list{
	margin: 0 auto 20px;
	box-sizing: border-box;
	border-radius: 8px;
	background-color: #f8f8f8;
}

dl.faq-list dt{
	cursor: pointer;
	font-weight: bold;
	font-size: 16px;
	position: relative;
	transition: .1s;
	border-radius: 8px;
	padding: 20px 0px 20px 50px;
	background-color: #f8f8f8;
}

dl.faq-list dt.active{
	border-radius: 8px 8px 0px 0px;
	background-color: #0084cf;
}

dl.faq-list dt:before{
	position: absolute;
	top: 25px;
	right: 20px;
	content: '\f107';
	color: #3a86b9;
	font-size: 18px;
	font-family: "Font Awesome 5 Free";
}

dl.faq-list dt.active:before{
	content: '\f106';
	color:#fff;
}

dl.faq-list dt span{
	position: absolute;
	top: 20px;
	left: 25px;
	font-family: 'Poppins', sans-serif;
	color:#0084cf;
}

dl.faq-list dt.active,
dl.faq-list dt.active span{
	color:#fff;
}

dl.faq-list dd{
	position: relative;
	display: none;
	font-weight: 400;
	font-size: 16px;
	padding: 20px 30px 20px 50px;
}

dl.faq-list dd span{
	position: absolute;
	top: 20px;
	left: 25px;
	font-family: 'Poppins', sans-serif;
	font-weight: bold;
	color: #0084cf;
	width: 34px;
	height: 34px;
	line-height: 34px;
}

#inner-ttl-box{
	min-height: 270px;
	position: relative;
	box-sizing: border-box;
	overflow: hidden;
	margin: 0px;
	/*background-color: #0084cf;*/
	background: -webkit-linear-gradient(right top, #2445a2 0%, #0086d1 50%, #409ad6 80%, #6db2e1 100%);
	background: -moz-linear-gradient(right top, #2445a2 0%, #0086d1 50%, #409ad6 80%, #6db2e1 100%);
	background: -o-linear-gradient(right top, #2445a2 0%, #0086d1 50%, #409ad6 80%, #6db2e1 100%);
	background: -ms-linear-gradient(right top, #2445a2 0%, #0086d1 50%, #409ad6 80%, #6db2e1 100%);
	background: linear-gradient(to right top, #2445a2 0%, #0086d1 50%, #409ad6 80%, #6db2e1 100%);
}

#inner-ttl-box-sub{
	padding-top: 150px;
}

#inner-ttl-box #inner-txts{
	position: relative;
	color:#fff;
	max-width: inherit;
	width: 90%;
	padding: 200px 0px 100px;
	margin: 0 auto;
	box-sizing: border-box;
	text-align: center;
}

h3#partnerttl{
	text-align: center;
	font-size: 38px;
	padding: 50px 0px 40px 0px;
	margin-bottom: 30px;
	position: relative;
}

h3#partnerttl:before{
	content: "";
	position: absolute;
	bottom: 0px;
	left: 0px;
	right: 0px;
	width: 60px;
	height: 2px;
	background-color: #294C7A;
	margin: auto;
}

p#partnerttl{
	text-align: center;
	line-height: 1.8em;
}

#partnerbox{
	padding: 75px 0px;
}

h4.recruit-ttl{
	text-align: left;
	font-size: 28px;
	line-height: 1.4em;
	padding-bottom: 15px;
	padding-top: 50px;
	margin-bottom: 40px;
	border-bottom: 1px solid #e5eaf1;
}

h4.recruit-topttl{
	padding-top: 0;
}

#partnerbg{
	margin-top: 50px;
}

#partnerbg img{
	height: 450px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

#partnerbox-main{
	margin: 0 auto;
	padding: 0px 55px 55px;
	box-sizing: border-box;
}

.recruitcont h6{
	font-size: 20px;
	line-height: 1.4em;
	padding: 45px 0px 15px;
}

.recruitcont p{
	font-size: 16px;
	line-height: 1.6em;
}

.recruitcont{
	margin-bottom: 35px;
	position: relative;
	overflow: hidden;
	background-color: #fff;
	border: 2px solid #e5eaf1;
	padding: 50px;
}

.recruitcont h5{
	font-size: 20px;
	line-height: 1.4em;
	font-weight: bold;
	line-height: 30px;
}

.recruitcont h5 span{
	display: inline-block;
	background-color: #FFA500;
	font-size: 12px;
	line-height: 30px;
	padding: 0px 20px;
	color:#fff;
	font-family: 'Poppins', sans-serif;
	margin-right: 15px;
	vertical-align: top;
}

.recruitcont p{
	padding-top: 25px;
}

ul#recruitoccupation{
	display:-webkit-box;
	display:-moz-box;
	display:-ms-flexbox;
	display:-webkit-flex;
	display:-moz-flex;
	display:flex;
	-webkit-box-lines:multiple;
	-moz-box-lines:multiple;
	-webkit-flex-wrap:wrap;
	-moz-flex-wrap:wrap;
	-ms-flex-wrap:wrap;
	flex-wrap:wrap;
}

ul#recruitoccupation li{
	display: inline-block;
	margin: 0px 4% 35px 0px;
	text-align: left;
	width: 48%;
	background-color: #f2f5f7;
	vertical-align: top;
	padding: 50px;
	box-sizing: border-box;
}

ul#recruitoccupation li:nth-child(even){
	margin-right: 0px;
}

ul#recruitoccupation li h5{
	font-size: 20px;
	line-height: 1.4em;
	padding-bottom: 15px;
}

ul#recruitoccupation li h5 i{
	margin-right: 15px;
	display: inline-block;
	background-color: #fff;
	padding: 15px;
	text-align: center;
	border-radius: 25px;
}

ul#recruitoccupation li p{
	line-height: 1.6em;
}

ul#recruit-flow li:last-child{
	margin-right: 0px;
}

#recruit-cont{
	background: #F6F6F6;
	padding: 50px 35px;
	margin: 70px auto 0px;
	box-sizing: border-box;
}

#recruit-cont p#ttl{
	text-align: center;
	font-size: 24px;
	line-height: 1.2em;
	padding-bottom: 30px;
	font-weight: bold;
}

#recruit-cont ul{
	padding: 0px 0px 0px 1.5%;
}

#recruit-cont ul li{
	display: inline-block;
	width: 31.4%;
	margin-right: 1.5%;
	margin-bottom: 25px;
}

#recruit-cont ul li a{
	display: block;
	line-height: 80px;
	background-color: #fff;
	width: 100%;
	color:#000;
	text-decoration: none;
	font-weight: bold;
	box-sizing: border-box;
	padding-left: 30px;
	font-size: 16px;
	position: relative;
	box-shadow: 0px 0px 10px 0px rgba(205,205,205,0.6);
}

#recruit-cont ul li a i{
	position: absolute;
	right: 20px;
	top: 0px;
	bottom: 0px;
	margin: auto;
	height: 14px;
	color:#333;
	font-size: 14px;
	transition: .3s;
}

#recruit-cont ul li:hover a i{
	right: 15px;
	transition: .3s;
}

#subsidy-main,
#recruit-main{
	max-width: 1200px;
	width: 90%;
	display: flex;
	justify-content: space-between;
	position: relative;
	margin: 70px auto 0;
}

#subsidy-main #box,
#recruit-main #box{
	width: 850px;
	box-shadow: 0 20px 40px rgb(0 95 144 / 5%);
	background-color: #fff;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 55px 55px;
}

#recruit-main #box h3{
	font-size: 40px;
	line-height: 1.4em;
	font-family: 'Noto Sans JP', sans-serif;
}

#recruit-main #box h3 span{
	font-size: 18px;
	display: block;
	line-height: 1.4em;
	margin-bottom: 3px;
}

ul.schedule-list{
	justify-content: space-between;
	display: flex;
}

ul.schedule-list li{
	width: 32%;
	box-sizing: border-box;
	margin-bottom: 10px;
	text-align: center;
	border: 1px solid #0084cf;
}

ul.schedule-list li .price{
	color:#fff;
	background-color: #0084cf;
	line-height: 1.6em;
	font-size: 14px;
	font-weight: bold;
	padding: 15px 0px;
}

ul.schedule-list li .price span{
	font-size: 22px;
	font-family: 'Poppins', 'Noto Sans JP', sans-serif;
}

#subsidy-main #box h3{
	font-size: 34px;
	line-height: 1.6em;
}

#subsidy-main #box p.subsidy-txt{
	font-size: 16px;
	line-height: 1.8em;
	margin-top: 10px;
}

#subsidy-main #box h4.subsidy-ttl{
	position: relative;
	font-size: 24px;
	line-height: 1.6em;
	margin-top: 50px;
	padding-bottom: 10px;
	margin-bottom: 15px;
	border-bottom: 1px solid #ddd;
}

#subsidy-main #box h4.subsidy-ttl span{
	font-size: 12px;
	line-height: 1em;
	font-weight: 400;
	text-transform: uppercase;
	font-family: 'Poppins', sans-serif;
	color:#0084cf;
	position: absolute;
	right: 0px;
	bottom: 10px;
}

h3#shokibo{
	margin-top: 75px;
}

p.subsidy-read,
p.subsidy-subtxt{
	font-size: 14px;
	line-height: 1.8em;
}

p.subsidy-subtxt{
	margin-bottom: 5px;
	position: relative;
}

p.subsidy-exp{
	padding-left: 165px;
}

p.subsidy-exp.red{
	color:#f00;
}

p.subsidy-subtxt span{
	background-color: #f4f6f8;
	padding: 10px 0px;
	width: 150px;
	margin-right: 15px;
	position: absolute;
	left: 0px;
	top: 0px;
	display: block;
	text-align: center;
}

p.subsidy-read{
	margin-bottom: 20px;
}

.subsidy-about{
	background-color: #f4f6f8;
	padding: 35px;
	margin-bottom: 20px;
}

.subsidy-about h5{
	font-size: 24px;
	padding-bottom: 15px;
	margin-bottom: 15px;
	border-bottom: 1px dotted #999;
	line-height: 1.4em;
}

.subsidy-about h5 span{
	display: block;
	font-size: 16px;
	font-weight: 400;
	padding-top: 10px;
	line-height: 1.6em;
}

.subsidy-about h5 span b{
	color:#f00;
	display: block;
	line-height: 1.6em;
	font-weight: 400;
}

.subsidy-about p{
	font-size: 20px;
	line-height: 1.4em;
}

.subsidy-about p span{
	color: #f00;
	font-size: 44px;
	font-weight: bold;
	line-height: 1em;
}

.subsidy-about p b{
	font-size: 20px;
	line-height: 1em;
	color: #f00;
}

.subsidy-about p b.stng{
	margin-right: 25px;
}

p.frame{
	color:#0084cf;
	font-size: 18px;
	line-height: 1.2em;
	padding-top: 20px;
	padding-bottom: 15px;
	font-weight: bold;
}

.schedule{
	text-align: left;
	line-height: 1.4em;
	font-size: 20px;
	color:#f00;
	font-weight: bold;
}

.subsidy_tbl{
	border: 1px solid #ddd;
}

.subsidy_bottom{
	margin-bottom: 25px;
}

.subsidy_tbl td{
	padding: 15px 15px;
	font-size: 14px;
	line-height: 1.6em;
}

.subsidy_tbl tr:first-child td:first-child{
	width: 250px;
}

.subsidy_tbl_period tr:first-child td:first-child{
	width: auto;
}

.subsidy_tbl tr:first-child td{
	background-color: #f4f6f8;
}

.subsidy_tbl_sec tr:first-child td{
	background-color: #fff;
}

p#plus{
	text-align: center;
	font-size: 16px;
	font-weight: bold;
	padding: 10px 0px;
}

#subsidy-main #chs,
#recruit-main #chs{
	width: 320px;
	margin-left: 30px;
	position: sticky;
	top: 120px;
	right: 0;
}

#subsidy-main #chs #chs-bx,
#recruit-main #chs #chs-bx,
#works-single #ws-side #chs-bx{
	box-shadow: 0 20px 40px rgb(0 95 144 / 5%);
	background-color: #fff;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 45px 25px 20px;
	
}

ul.recruit-cont li h4{
	font-size: 16px;
	font-weight: bold;
	position: relative;
	margin-bottom: 15px;
	padding-left: 22px;
	font-family: 'Noto Sans JP', sans-serif;
}

ul.recruit-cont li h4:before{
	content: "";
	position: absolute;
	left: 0px;
	top: 1px;
	width: 15px;
	height: 15px;
	border-radius: 3px;
	background-color: #ff7a59;
}

ul.recruit-cont li p{
	line-height: 1.8em;
	padding-bottom: 45px;
	font-family: 'Noto Sans JP', sans-serif;
}

#recruit-wrapper #recruit-cont{
	margin-top: 30px;
}

#works-single #ws-side #chs-bx h4,
#recruit-main #chs h4,
#subsidy-main #chs h4{
	margin-bottom: 25px;
	padding-bottom: 15px;
	border-bottom: 2px solid #f1f3f5;
	font-size: 16px;
	text-align: left;
}

#recruit-main #chs h4 i,
#subsidy-main #chs h4 i,
#works-single #ws-side #chs-bx h4 i{
	margin-right: 5px;
	color:#ff7a59;
}

#recruit-main #chs ul li,
#subsidy-main #chs ul li{
	margin-bottom: 20px;
}

#recruit-main #chs ul li a,
#subsidy-main #chs ul li a{
	display: block;
	padding: 0px 0px 0px 20px;
	color:#333;
	font-size: 14px;
	text-decoration: none;
	position: relative;
	transition: .3s;
}

#recruit-main #chs ul li a:before,
#subsidy-main #chs ul li a:before{
	content: "・";
	position: absolute;
	left: 0px;
	top: -3px;
	color:#ff7a59;
	font-size: 20px;
}

#recruit-main #chs ul li a:hover,
#subsidy-main #chs ul li a:hover{
	color:#ff7a59;
}

.blog-cont{
	position: relative;
	margin: 0 auto;
	min-height: 500px;
	max-width: 1200px;
	width: 90%;
}

#blog-single{
	max-width: 100%;
	width: 100%;
}

.blog-cont #cont{
	width: 100%;
	box-sizing: border-box;
	padding: 50px 350px 50px 5px;
}

#blog-single ul,
#blog-single ol{
	padding-left: 25px;
}

#blog-single ul.sol-list li{
	list-style: none;
	border-bottom: 1px solid #ddd;
	margin-bottom: 0px;
}

#blog-single ul.sol-list li br{
	display: none;
}

#blog-single ul.sol-list li a{
	display: block;
	font-size: 14px;
	color:#000;
	font-weight: bold;
	line-height: 1.6em;
	text-decoration: none;
	padding: 20px 0px 17px;
}

#blog-single ul li{
	list-style-position: inside;
	list-style-type: disc;
}

#blog-single ol li{
	list-style-position: inside;
	list-style-type: decimal;
}

#blog-single #cont h2{
	font-size: 32px;
	line-height: 1.6em;
}

#blog-single #cont h2#sol-ttl{
	padding-bottom: 30px;
}

#blog-single #cont #txt{
	line-height: 1.8em;
}

#blog-single #cont #content ol,
#blog-single #cont #content ul{
	padding-top: 3px;
}

#blog-single #cont #content table{
	border: 1px solid #eee;
	margin-top: 10px;
}

#blog-single #cont #content table td{
	border: 1px solid #eee;
	padding: 15px 15px 12px 15px;
	line-height: 1.4em;
	box-sizing: border-box;
}

#blog-single #cont #content table tr:last-child td{
	border: none;
}

#blog-single #cont #img{
	padding: 0px 0px 20px;
}

#blog-single #cont #img img{
	width: 100%;
	height: 400px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
	object-position: center top;
}

#blog-single #cont #content img{
	width: 100%;
	max-width: 100%;
	height: auto;
	margin-top: 5px;
	margin-bottom: 5px;
}

#blog-single #cont #content a{
	color:#333;
}

#blog-single #cont #content a:hover{
	text-decoration: none;
}

.search-form{
	margin-top: 20px;
	position: relative;
}

.search-form input[type=text] {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	background: #F6F6F6;
	width: 100%;
	box-sizing: border-box;
	padding: 13px 50px 13px 16px;
	font-size: 16px;
	line-height: 1.4em;
}

.search-form button {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	border: none;
	width: 44px;
	text-indent: -9999px;
	overflow: hidden;
	background-image: url( ../image/blog/icon-search.svg);
	background-position: center center;
	background-repeat: no-repeat;
	background-size: 24px 24px;
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
}

#blog-single #cont #content p{
	line-height: 2.2em;
}

#blog-single #cont #content h2{
	margin: 60px 0 30px;
	padding: 20px 0;
	color: #333;
	font-size: 28px;
	text-align: left;
	font-weight: bold;
	position: relative;
}

#blog-single #cont #content h2:before{
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 1.5px;
	background-color: #d4d4d4;
}

#blog-single #cont #content h2:after{
	content: '';
	position: absolute;
	left: 0;
	bottom: 0;
	width: 15%;
	height: 3px;
	background-color: #0b1118;
}

#blog-single #cont #content h3{
	font-size: 24px;
	font-weight: 400;
	border-left: 3px solid #333;
	padding: 5px 0px 5px 20px;
	margin: 50px 0 25px;
	position: relative;
	font-weight: bold;
	line-height: 1.4em;
}

#blog-single #cont #content h4{
	font-size: 20px;
	color: #333;
	font-weight: 600;
	border: 1px solid #333;
	padding: 20px 25px;
	margin: 20px 0 25px;
	line-height: 1.6em;
}

#blog-single #cont #content blockquote{
	background: #efefef;
	color: #333;
	font-size: 16px;
	padding: 20px 30px 20px 60px;
	margin-bottom: 40px;
	position: relative;
}

#blog-single #cont #content blockquote:before {
	content: "";
	position: absolute;
	top: 15px;
	left: 20px;
	display: block;
	width: 34px;
	height: 32px;
	background-image: url(../image/blog/icon_quo.png);
	background-size: 34px 32px;
}

#blog-single #cont p#day{
	font-size: 16px;
	line-height: 1.4em;
	text-align: right;
	padding-top: 30px;
	padding-bottom: 30px;
}

#ez-toc-container{
	padding: 45px 50px;
	background-color: #f8f8f5;
	margin-top: 50px;
}

#ez-toc-container p.ez-toc-title{
	position: relative;
	line-height: 1.2em;
	font-family: 'Poppins', sans-serif;
	color:#333;
	font-size: 28px;
	font-weight: bold;
	padding-left: 0px;
}

#ez-toc-container p.ez-toc-title:before{
	font-family: "Font Awesome 5 Free";
	font-weight: 900;
	content: "\f0ea";
	margin-right: 10px;
}

#ez-toc-container nav{
	padding: 0px 30px;
}

#ez-toc-container nav ul.ez-toc-list{
	padding-left: 0px;
}

#ez-toc-container nav ul.ez-toc-list .ez-toc-heading-level-1{
	border-bottom: 1px solid #e3e3e3;
	padding: 20px 0 20px 15px;
}

#ez-toc-container nav ul.ez-toc-list .ez-toc-page-1 a.ez-toc-link{
	font-weight: 400;
}

#ez-toc-container nav ul.ez-toc-list .ez-toc-page-1 .ez-toc-list-level-2 a.ez-toc-link{
	font-weight: 400;
	font-size: 14px;
	color:#004296;
}

#ez-toc-container ul li.ez-toc-heading-level-1{
	list-style-position: inside;
	list-style-type: none;
	position: relative;
	padding-left: 15px;
}

#ez-toc-container ul li.ez-toc-heading-level-2{
	list-style-position: inside;
	list-style-type: none;
	margin-top: 25px;
	position: relative;
	padding-left: 15px;
}

#ez-toc-container ul li.ez-toc-heading-level-3{
	list-style-position: inside;
	list-style-type: none;
	margin-top: 15px;
	position: relative;
	padding-left: 15px;
}

#ez-toc-container ul li.ez-toc-heading-level-1:before,
#ez-toc-container ul li.ez-toc-heading-level-2:before,
#ez-toc-container ul li.ez-toc-heading-level-3:before{
	content: "▽";
	position: absolute;
	left: 0px;
	font-size: 10px;
	color: #333;
	margin-right: 3px;
	margin-top: 3px;
}

#ez-toc-container ul li a{
	color:#333;
	text-decoration: none;
}

#ez-toc-container ul li a:hover{
	opacity: .7;
}

.blog-cont #side{
	position: absolute;
	top: 70px;
	right: 0px;
	width: 300px;
	padding: 30px;
	box-sizing: border-box;
	background-color: #fff;
}

.blog-cont#blog-single #side{
	padding: 0px;
}

.blog-cont #side ul.cate-list{
	padding-left: 0px;
}

.blog-cont #side ul.cate-list li{
	list-style: none;
	position: relative;
}

.blog-cont #side h3{
	border-bottom: 2px solid #294C7A;
	text-align: left;
	font-weight: bold;
	font-size: 18px;
	padding: 0px 0px 7px 0px;
}

.blog-cont #side h3:nth-child(n+2){
	margin-top: 50px;
}

ul#newsrelease.innerblog{
	max-width: 100%;
	width: 100%;
}

.blog-cont ul#newsrelease li{
	width: 100%;
	margin: 0px 0px 20px;
}

.blog-cont ul#newsrelease li:nth-child(even){
	margin-right: 0px;
}

.blog-cont ul#newsrelease li h3{
	font-size: 18px;
}

.cate-list li a{
	color:#333;
	padding: 20px 0px;
	display: block;
	text-decoration: none;
	font-size: 14px;
	border-bottom: 1px solid #ccc;
	transition: .3s;
}

.cate-list li a:hover{
	padding-left: 5px;
}

#sidebanner{
	position: fixed;
	right: 0;
	bottom: 20px;
	cursor: pointer;
	transition: .3s;
	/*デフォルトで非表示にする*/
	opacity: 0;
	visibility: hidden;
	z-index: 3;
}

#sidebanner.active{
	opacity: 1;
	visibility: visible;
}

.sidenews{
	margin-top: 20px;
}

.sidenews a{
	display: block;
	margin-bottom: 10px;
	color:#333;
	position: relative;
	text-decoration: none;
}

.sidenews a .img{
	width: 70px;
	vertical-align: top;
	position: absolute;
	top: 0px;
	left: 0px;
}

.sidenews a .img img{
	width: 100%;
	height: 70px !important;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.sidenews a .cont{
	padding-left: 80px;
	vertical-align: top;
	box-sizing: border-box;
	display: block;
	min-height: 70px;
}

.sidenews a .cont p{
	color: #666;
	font-size: 11px;
}

.sidenews a .cont p i{
	margin-right: 3px;
}

.sidenews a .cont h4{
	font-size: 13px;
	font-weight: bold;
	line-height: 1.4em;
}

#works-single{
	text-align: left;
	box-sizing: border-box;
	display: flex;
	justify-content: space-between;
	max-width: 1200px;
	width: 90%;
	position: relative;
	margin: 70px auto 0;
}

#works-single #ws-cont{
	box-sizing: border-box;
	width: 850px;
	box-shadow: 0 20px 40px rgb(0 95 144 / 5%);
	background-color: #fff;
	border-radius: 10px;
	box-sizing: border-box;
	padding: 55px 55px;
}

#works-single #ws-side{
	width: 320px;
	margin-left: 30px;
	position: sticky;
	top: 120px;
	right: 0;
}

h3#works-ttl{
	font-size: 28px;
	line-height: 1.2em;
	margin-bottom: 20px;
}

h3#works-ttl span{
	padding-top: 10px;
	font-weight: 400;
	color:#666;
	font-size: 14px;
	display: block;
	line-height: 1.2em;
}

#works-singlebox{
	width: 100%;
	margin: 75px auto 50px;
	box-sizing: border-box;
}

#works-singlebox th{
	padding: 20px 0px 20px 20px;
	width: 200px;
	vertical-align: top;
	background-color: #f3f9fe;
}

#works-singlebox td{
	border-bottom: 1px solid #f3f9fe;
	padding: 20px 0px 20px 20px;
	vertical-align: top;
}

#works-singlebox td span{
	display: inline-block;
	border-radius: 5px;
	border: 1px solid #ccc;
	padding: 8px 15px;
	font-size: 14px;
	background-color: #fff;
	margin: 0px 8px 8px 0px;
}

#works-singlebox td a{
	color:#0a5799;
	text-decoration: none;
}

#works-singlebox td a:hover{
	text-decoration: underline;
}

#works-singlebox td a:hover{
	text-decoration: none;
}

#works-singlebox tr:last-child th,
#works-singlebox tr:last-child td{
	border-bottom: 0px;
}

#works-contact{
	max-width: 900px;
	width: 90%;
	margin: 80px auto;
	padding: 50px;
	box-sizing: border-box;
	border: 1px solid #ccc;
	text-align: center;
}

#works-contact h4{
	font-size: 24px;
	line-height: 1.2em;
}

#works-contact p{
	font-size: 16px;
	line-height: 1.8em;
	padding: 25px 0px 45px;
}

.top-btns{
	max-width: 1200px;
	width: 90%;
	margin: 30px auto 0;
	background-color: #294C7A;
	background: linear-gradient(90deg, #2666a4, #3b88d2);
	color:#fff;
	padding: 50px;
	box-sizing: border-box;
	border-radius: 10px;
	position: relative;
}

.top-btns p{
	text-align: left;
	line-height: 1.2em;
	font-size: 28px;
	font-weight: bold;
	font-family: 'Poppins', sans-serif;
}

.top-btns p span{
	display: block;
	line-height: 1.2em;
	padding-top: 10px;
	font-size: 16px;
	font-weight: 400;
	font-family: 'Noto Sans JP', sans-serif;
}

.top-works a.top-btns{
	margin-top: 20px;
}

#works-contact a{
	display: block;
	margin: 0 auto;
	position: relative;
	text-align: center;
	width: 400px;
	padding: 30px 0;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	background: #294C7A;
	border: 2px solid #294C7A;
	border-radius: 45px;
	position: relative;
}

.others-single#works-box ul{
	max-width: 100%;
	width: 100%;
}

.others-single#works-box li .img,
.others-single#works-box ul .img img{
	height: 175px;
}

a#thns-link{
	display: block;
	text-align: center;
	width: 300px;
	line-height: 62px;
	margin: 0 auto 50px;
	height: 62px;
	margin: auto;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	background: #294C7A;
	border: 1px solid #294C7A;
	border-radius: 5px;
	position: relative;
}

.others-single a.btn{
	display: block;
	text-align: center;
	width: 100%;
	line-height: 62px;
	height: 62px;
	margin: auto;
	font-size: 16px;
	font-weight: bold;
	color: #fff;
	text-decoration: none;
	background: #0084cf;
	border: 1px solid #0084cf;
	border-radius: 35px;
	position: relative;
}

.others-single a.btn:hover{
	background: #fff;
	color:#0084cf;
}

.others-single a.btn i{
	color:#fff;
	position: absolute;
	right: 25px;
	top: 24px;
	font-size: 14px;
}

#works-contact a i{
	color:#fff;
	position: absolute;
	right: 25px;
	top: 31px;
	font-size: 14px;
}

#works-contact a:hover,
a:hover.btn,
a#thns-link:hover{
	background: #0084cf;
	color:#fff;
}

a.btn:hover i,
#works-contact a:hover i{
	color:#fff;
}

.top-works{
	background-color: #F2F2F2;
	padding-bottom: 1px;
	margin-top: 80px;
}

.top-works.inner-works{
	padding-bottom: 100px;
}

#works-alllayout{
	width: 100%;
	margin: 0px auto;
	box-sizing: border-box;
	text-align: center;
}

a#works-btn{
	max-width: 900px;
	width: 90%;
	margin: 0px auto;
	box-sizing: border-box;
	text-align: center;
}

h4#works-others{
	font-size: 16px;
	line-height: 1.4em;
	padding-bottom: 10px;
	box-sizing: border-box;
	width: 100%;
	letter-spacing: 0em;
}

.top-works.others ul{
	width: 920px !important;
}

.top-works.others a.btn{
	margin: 30px auto 50px;
}

#svalue{
	position: relative;
	background-color: #41525D;
	margin-top: 100px;
}

#svalue h2.subttl,
#svalue h2.subttl span{
	color:#fff;
}

#svalue h2.subttl:before{
	background: #fff;
}

#svalue #svalue-left{
	position: absolute;
	z-index: -1;
	width: 258px;
	height: 258px;
	margin: auto;
	left: 0px;
	right: 0px;
	top: 150px;
	padding-right: 1020px;
}

#svalue #svalue-right{
	position: absolute;
	z-index: -1;
	width: 258px;
	height: 258px;
	margin: auto;
	left: 0px;
	right: 0px;
	bottom: 30px;
	padding-left: 1020px;
}

.mw_wp_form .error{
	font-size: 14px !important;
	color: #B70000 !important;
	display: block;
	font-weight: 900;
	padding: 7px 0px 7px 15px;
	margin-top: 5px;
	position: relative;
	text-align: left;
	box-sizing: border-box;
}

.mw_wp_form .error:before{
	font-family: "Font Awesome 5 Free";
	content: "\f05e";
	position: absolute;
	left: 0px;
	font-size: 14px;
}

#thns-ttl{
	padding: 0px 0px 20px;
	text-align: center;
	font-size: 22px;
	font-weight: bold;
	letter-spacing: 0.1em;
}

#thns-txt{
	text-align: center;
	line-height: 1.8em;
	font-size: 16px;
	padding-bottom: 20px;
}

p#search-ttl{
	font-size: 24px;
	line-height: 1.4em;
	font-weight: bold;
}

p#search-txt{
	font-size: 18px;
	line-height: 1.8em;
	padding-top: 20px;
	padding-bottom: 30px;
}

a#search-btn{
	width: 200px;
	display: block;
	border-radius: 3px;
	background-color: #215e9e;
	color:#fff;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	padding: 15px 0px;
	text-decoration: none;
	border: 1px solid #215e9e;
}

p#error-ttl{
	text-align: center;
	font-size: 32px;
	padding-top: 50px;
	font-weight: bold;
	line-height: 1.4em;
	padding-bottom: 25px;
}

p#error-txt{
	text-align: center;
	margin-top: 35px;
	font-size: 18px;
	font-weight: bold;
	letter-spacing: 1px;
	line-height: 2em;
	padding-bottom: 50px;
}

a#topback-btn{
	width: 200px;
	display: block;
	margin: 0 auto 100px;
	border-radius: 3px;
	background-color: #215e9e;
	color:#fff;
	font-size: 14px;
	font-weight: bold;
	text-align: center;
	padding: 15px 0px;
	text-decoration: none;
	border: 1px solid #215e9e;
}

/*.works-bg{
	background-image: url(../image/works/bg.jpg);
}

.company-bg{
	background-image: url(../image/company/bg.jpg);
}

#inner-ttl-box.service-bg{
	background-image: url(../image/service/bg.jpg);
	background-position: center bottom;
}

.plan-bg{
	background-image: url(../image/plan/bg.jpg);
}

.blog-bg{
	background-image: url(../image/blog/bg.jpg);
}

.about-bg{
	background-image: url(../image/about/bg.jpg);
}

.contact-bg{
	background-image: url(../image/contact/bg.jpg);
}

.sitemap-bg{
	background-image: url(../image/sitemap/bg.jpg);
}

.term-bg{
	background-image: url(../image/term/bg.jpg);
}

.recruit-bg{
	background-image: url(../image/recruit/bg.jpg);
}

.privacy-bg{
	background-image: url(../image/privacy/bg.jpg);
}

/*========= レイアウトのためのCSS ===============*/

.wrapper{
	overflow: hidden;
}

.flex{
	display:flex;
	flex-wrap: wrap;
}

.box{
	width: 220px;
	padding: 20px;
    margin: 0 20px 20px 20px;
	background: #666;
	color: #fff;
	box-sizing:border-box;
}

.bgextend,
.lineTrigger{
	box-sizing:border-box;
}



/*==================================================
アニメーション設定
===================================*/

/* アニメーションの回数を決めるCSS*/

.count2{  
	animation-iteration-count: 2;/*この数字を必要回数分に変更*/
}

.countinfinite{  
	animation-iteration-count: infinite;/*無限ループ*/
}

/* アニメーションスタートの遅延時間を決めるCSS*/

.delay-time05{  
	animation-delay: 0.5s;
}

.delay-time1{  
	animation-delay: 1s;
}

.delay-time15{  
	animation-delay: 1.5s;
}

.delay-time2{  
	animation-delay: 2s;
}

.delay-time25{  
	animation-delay: 2.5s;
}

/* アニメーション自体が変化する時間を決めるCSS*/

.change-time05{  
	animation-duration: 0.5s;
}

.change-time1{  
	animation-duration: 1s;
}

.change-time15{  
	animation-duration: 1.5s;
}

.change-time2{  
	animation-duration: 2s;
}

.change-time25{  
	animation-duration: 2.5s;
}

#pagenavi{
	text-align: center;
	padding-top: 20px;
}

.wp-pagenavi a, .wp-pagenavi span{
	display: inline-block;
	border: none !important;
	color:#333;
	text-decoration: none !important;
	font-size: 14px;
	padding: 0px !important;
	margin: 0px 10px !important;
	width: 38px;
	line-height: 38px;
}

.wp-pagenavi span.current{
	width: 38px;
	line-height: 38px;
	border-radius: 19px;
	background-color: #333;
	color:#fff;
	font-weight: 400;
}

.wp-pagenavi a.nextpostslink,
.wp-pagenavi a.previouspostslink{
	background-color: #ddd;
}

.hamburger,
nav.globalMenuSp{
	display: none;
}

.wp-pagenavi span.pages{
	display: none !important;
}

#sitemap-wrap h3.sitemap-ttl{
	font-size: 20px;
	font-weight: bold;
	margin-bottom: 15px;
	padding-left: 1%;
}

#sitemap-wrap h3.sitemap-ttl span{
	display: inline-block;
	margin: 0px 0px 0px 10px;
	font-size: 14px;
}

#sitemap-wrap ul{
	margin-bottom: 40px;
	padding-bottom: 40px;
	border-bottom: 1px solid #e8e8e8;
}

#sitemap-wrap ul:last-child{
	border: none;
	padding-bottom: 0;
	margin-bottom: 0;
}

#sitemap-wrap ul li{
	display: inline-block;
	width: 23%;
	margin: 0 1% 20px 1%;
}

#sitemap-wrap ul li a{
	color:#333;
	text-decoration: none;
	display: block;
	border: 1px solid #333;
	border-radius: 3px;
	font-size: 14px;
	text-align: center;
	font-weight: bold;
	padding: 20px 0px;
	width: 100%;
}

#sitemap-wrap ul li a:hover{
	background-color: #333;
	color:#fff;
}

#faq-list-wrap{
	padding-bottom: 85px;
}

.plan-tbl,
.support-tbl{
	text-align: left;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
}

.support-tbl thead th{
	background-color: #497cc0;
	color:#fff;
	width: 25%;
	padding: 20px 15px;
	margin: 0;
	text-align: center;
	font-weight: 700;
}

.plan-tbl thead th,
.plan-tbl thead td {
	width: 25%;
	padding: 20px 15px;
	margin: 0;
	text-align: center;
	font-weight: 700;
}

.plan-tbl thead th.plan01,
.plan-tbl thead th.plan03{
	background-color: #458ee5;
	color:#fff;
}

.plan-tbl thead th.plan02{
	background-color: #497cc0;
	color:#fff;
}

.plan-tbl tbody th{
	width: 25%;
	padding: 20px 15px;
	margin: 0;
	text-align: center;
	border-bottom: 1px solid #000;
	position: relative;
	line-height: 1.4em;
	font-size: 14px;
}

.support-tbl tbody td{
	width: 25%;
	padding: 20px 15px;
	margin: 0;
	text-align: center;
	position: relative;
	line-height: 1.4em;
	font-size: 16px;
}

.support-tbl tbody tr:nth-child(even) td{
	background-color: #f8f9fc;
}

.support-tbl tbody td span.promiss{
	font-size: 12px;
	display: block;
	line-height: 1.4em;
	padding-top: 10px;
}

.support-tbl tbody td span.promiss b{
	font-size: 14px;
	font-weight: bold;
	color:#c01518;
}

.support-tbl tbody td span.marker{
	background:linear-gradient(transparent 70%, #FFFF00 0%);
}

.plan-tbl tbody td{
	width: 25%;
	padding: 20px 15px;
	margin: 0;
	text-align: center;
	background: #f8f9fc;
	border-bottom: 1px solid #000;
	position: relative;
	line-height: 1.4em;
	font-size: 14px;
}

.plan-tbl tbody td.price{
	font-size: 18px;
}

.plan-tbl tbody td:nth-of-type(even){
	background: #f2f3f8;
	border-bottom: 1px solid #000;
}

.plan-atn{
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	font-size: 14px;
	line-height: 1.8em;
	padding: 25px 0px 50px;
}

.plan-atn-top{
	padding-bottom: 0px;
}

p#support-price{
	position: relative;
	display: block;
	margin: 0px auto 35px;
	padding: 15px 30px;
	box-sizing: border-box;
	text-align: center;
	max-width: 1200px;
	width: 90%;
	font-weight: bold;
	font-size: 18px;
	background: #e0edff;
}

p#support-price:before {
	content: "";
	position: absolute;
	top: 100%;
	left: 50%;
	margin-left: -15px;
	border: 15px solid transparent;
	border-top: 15px solid #e0edff;
}

p#support-price span{
	font-size: 26px;
	color: #c01518;
}

#pagetop{
	text-align: center;
	
}

#pagetop a{
	background-color: #333;
	padding: 20px 0px;
	font-size: 14px;
	display: block;
	color:#fff;
	text-decoration: none;
}

#pagetop a:hover{
	background-color: #444;
}

#pagetop i{
	margin-right: 5px;
}

#service-link-wrap{
	background-color: #F7F9FA;
	padding: 45px 0px 30px;
}

ul#service-link{
	max-width: 1200px;
	margin: 0 auto;
	width: 90%;
}

ul#service-link li{
	display: inline-block;
	width: 32%;
	margin-bottom: 15px;
	margin-right: 2%;
	text-align: center;
}

ul#service-link li a{
	display: block;
	text-align: left;
	padding: 20px 0px 20px 50px;
	position: relative;
	font-weight: bold;
	background-color: #fff;
	border: 1px solid #0084cf;
	color:#0084cf;
	text-decoration: none;
	border-radius: 35px;
	font-size: 16px;
}

ul#service-link li a i{
	position: absolute;
	right: 20px;
	top: 16px;
	font-size: 24px;
	color: #d8effc;
}

ul#service-link li a:hover{
	background-color: #0084cf;
	color:#fff;
}

ul#service-link li:nth-child(3n+3){
	margin-right: 0px;
}

ul.strengths-list{
	overflow: hidden;
	padding-top: 20px;
	padding-bottom: 50px;
}

ul.strengths-list .strengths-main{
	position: relative;
	overflow: hidden;
	min-height: 350px;
	display: flex;
	justify-content: center;
	align-items: center;
}

ul.strengths-list figure{
	position: absolute;
	top: 0px;
	left: 0px;
	width: 500px;
	z-index: 1;
}

ul.strengths-list figure img{
	width: 100%;
	height: 350px !important;
	border-radius: 10px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

ul.concept-list li figure img{
	width: 100%;
	height: 200px !important;
	border-radius: 5px;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

ul.strengths-list .cont{
	padding: 0px 0px 0px 550px;
	box-sizing: border-box;
}

ul.strengths-list .cont h4{
	font-weight: bold;
	line-height: 1.4em;
	font-size: 22px;
	position: relative;
	padding-left: 100px;
}

ul.strengths-list li .cont h4:before{
	-webkit-text-stroke: 1px #0084cf;
	-webkit-text-fill-color: transparent;
	font-family: 'Poppins', sans-serif;
	font-size: 60px;
	font-style: normal;
	font-weight: 500;
	position: absolute;
	top: 15px;
	left: 0px;
}

ul.strengths-list li:nth-child(1) .cont h4:before{
	content: "01";
}

ul.strengths-list li:nth-child(2) .cont h4:before{
	content: "02";
}

ul.strengths-list li:nth-child(3) .cont h4:before{
	content: "03";
}

ul.strengths-list .cont p{
	padding-top: 20px;
	font-size: 14px;
	line-height: 1.8em;
}

ul.strengths-list li{
	padding-bottom: 50px;
	position: relative;
	min-height: 200px;
	box-sizing: border-box;
}

ul.strengths-list li:nth-child(even) figure{
	left: auto;
	right: 0px;
}

ul.strengths-list li:nth-child(even) .cont{
	padding: 0px 550px 0px 0px;
}

ul.strengths-list li:last-child{
	margin-bottom: 0px;
}

ul.strengths-list li:before{
	position: absolute;
	font-size: 14px;
	top: -10px;
	left: 20px;
	z-index: 2;
	padding: 5px 10px;
	background-color: #f2f9fd;
	border-radius: 30px;
	font-family: 'Poppins', sans-serif;
	font-weight: 900;
	line-height: 1em;
	color:#3a86b9;
}

#strength-main{
	background-size: cover;
}

p#blogback{
	text-align: center;
	padding-top: 20px;
}

p#blogback a{
	font-size: 16px;
    display: block;
    width: 275px;
    line-height: 55px;
    height: 55px;
    border: 1px solid #294C7A;
    margin: 0 auto;
    border-radius: 30px;
    color: #294C7A;
    text-decoration: none;
    position: relative;
}

p#blogback a i{
	position: absolute;
	right: 20px;
	top: 20px;
}

p#blogback a:hover{
	background-color: #294C7A;
	color:#fff;
}

#blog-single ul, #blog-single ol{
	padding-top: 0px;
	padding-left: 0px;
}

#blog-single ul li, #blog-single ol li{
	margin-bottom: 15px;
}

#blog-single ul li::marker, #blog-single ol li::marker{
	margin-right: 10px;
}

#plan-single{
	width: 100%;
}

.page-id-56 ul.strengths-list{
	padding-bottom: 0px;
}

#partner{
	text-align: left;
	margin: 0 auto;
}

#partner li{
	display: inline-block;
	width: 31%;
	margin: 0 1% 20px;
	line-height: 80px;
	text-align: center;
	height: 80px;
	background-color: #fff;
	border: solid 1px #dbdbdb;
}

#partner li img{
	width: auto;
	vertical-align: top;
	height: 38px !important;
	margin-top: 23px;
}

#strength-cont{
	max-width: 1000px;
	width: 90%;
	margin: 0 auto;
	text-align: center;
	padding-bottom: 100px;
}

#strength-cont h4{
	padding-top: 75px;
	padding-bottom: 30px;
	font-size: 28px;
	line-height: 1.6em;
}

.about-cont{
	padding-bottom: 1px;
	display: flex;
	padding: 4% 2%;
}

#price-cont{
	padding-bottom: 1px;
}

.about-cont #img{
	width: 40%;
}

.about-cont #cont{
	width: 60%;
}

#price-cont p.price-subttl{
	max-width: 1200px;
	width: 90%;
	margin: 0 auto 20px;
	text-align: left;
	font-weight: bold;
	font-size: 20px;
	line-height: 1.4em;
}

.read-t{
	text-align: left;
	box-sizing: border-box;
	margin: 0 auto 70px;
	background-color: #fff;
	font-size: 14px;
}

.read-t-last{
	margin-bottom: 0px;
}

.read-t span{
	display: block;
	font-size: 16px;
	line-height: 1em;
	font-weight: bold;
	padding-bottom: 10px;
}

.read-t p{
	position: relative;
	margin-bottom: 5px;
	padding-left: 15px;
	line-height: 1.4em;
}

.read-t p:before{
	content: "・";
	position: absolute;
	left: 0px;
}

#price-cont ul.list{
	box-sizing: border-box;
	max-width: 1200px;
	margin: 0 auto;
	width: 90%;
	display: flex;
}

#price-cont ul.list li{
	display: inline-block;
	vertical-align: top;
	width: 32%;
	margin: 0px 0px 3%;
	box-sizing: border-box;
	background-color: #54646E;
	padding: 1.2rem;
	text-align: center;
	border-radius: 5px;
}

#price-cont ul.list li:nth-child(even){
	margin-left: 2%;
	margin-right: 2%;
}

#price-cont ul.list li h3{
	font-size: 22px;
	padding: 20px 0 30px;
	line-height: 1.6em;
}

#price-cont ul.list li h3 span{
	display: block;
	width: 125px;
	font-size: 14px;
	line-height: 25px;
	padding: 0px;
	text-align: center;
	margin: 0 auto 10px;
	background-color: #fff;
	color:#54646E;
}

#price-cont ul.list li .dsc{
	width: 100%;
	position: relative;
	border-radius: 5px;
	background-color: #fff;
	color:#000;
	padding: 30px 25px;
	box-sizing: border-box;
}

#price-cont ul.list li .dsc p.read{
	font-size: 20px;
	line-height: 1.6em;
	font-weight: bold;
	text-align: center;
	padding-bottom: 20px;
}

#price-cont ul.list li .dsc p.read span{
	color:#0084cf;
}

#price-cont ul.list li .dsc p.price{
	background-color: #F2F2F2;
	border-radius: 5px;
	text-align: center;
	font-size: 18px;
	padding: 25px 0px;
	font-weight: bold;
}

#price-cont ul.list li .dsc p.price span{
	color:#0084cf;
	display: inline-block;
	font-size: 54px;
	line-height: 54px;
	font-family: 'Poppins', sans-serif;
}

#price-cont ul.list li .dsc li{
	width: 100%;
	margin: 0px;
	vertical-align: top;
	display: inline-block;
	box-sizing: border-box;
	padding: 10px 0;
	background-color: inherit;
	font-size: 18px;
	line-height: 1.2em;
	font-weight: bold;
	font-family: 'Poppins', 'Noto Sans JP', sans-serif;
}

#price-cont ul.list li .dsc li span{
	font-size: 14px;
	font-weight: 400;
	display: block;
	line-height: 1.2em;
	margin-bottom: 3px;
}

#price-cont ul.list li p.cc{
	margin-top: 25px;
	font-size: 13px;
	line-height: 1.6em;
	text-align: left;
}

p.price-subttl span{
	background: linear-gradient(50deg, #1785e7, #0a5799);
	display: inline-block;
	padding: 5px 15px;
	font-size: 14px;
	color:#fff;
}

.inner-price{
	padding-top: 70px;
}

#price-cont.inner{
	background-color: #F2F2F2;
	padding: 50px 0px 50px;
}

#price-cont.inner.plan{
	padding-top: 0px;
}

#price-cont.inner ul li{
	display: inline-block;
	margin: 0px 2% 30px 0px;
	text-align: left;
	width: 32%;
	box-sizing: border-box;
	/*background-color: #F6F6F6;*/
	vertical-align: top;
	position: relative;
	transition: .3s;
	border-radius: 0px 50px 0px 0px;
	background-color: #fff;
	outline: 2px solid #fff;
	outline-offset: -2px;
}

#price-cont.inner ul li:hover{
	outline: 2px solid #3a86b9;
}

#price-cont.inner ul li figure img{
	width: 30px;
}

#price-cont.inner ul li a{
	color:#333;
	text-decoration: none;
	padding: 40px 40px 90px 40px;
	width: 100%;
	display: block;
	box-sizing: border-box;
}

#price-cont.inner ul li h3{
	position: absolute;
	font-size: 18px;
	left: 87px;
	top: 45px;
}

#price-cont.inner ul li p{
	font-size: 14px;
	line-height: 1.6em;
}

#price-cont.inner ul li a span{
	font-size: 14px;
	display: block;
	position: absolute;
	bottom: 25px;
	left: 40px;
	border: 1px solid #3a86b9;
	color:#3a86b9;
	transition: .3s;
	padding: 5px 15px;
}

#price-cont.inner ul li:hover a span{
	color:#fff;
	background-color: #3a86b9;
}

#price-cont.inner ul li a b{
	font-weight: 400;
}

#price-cont.inner ul li a i{
	font-size: 10px;
	vertical-align: top;
	margin: 3px 0px 0px 5px;
}

#thoughtimg{
	background-image: url(../image/thought/thoughtimg.jpg);
	background-position: center center;
	background-size: cover;
	height: 300px;
}

ul.list-three{
	padding-bottom: 100px;
}

ul.list-three-inner{
	width: 100%;
	margin: 0 auto;
	padding-top: 20px;
	padding-bottom: 0px;
	justify-content: space-between;
}

ul.list-three li{
	width: 30%;
	position: relative;
	text-align: left;
	margin-bottom: 35px;
}

ul.list-three li:nth-child(4),
ul.list-three li:nth-child(5),
ul.list-three li:last-child{
	margin-bottom: 0px;
}

ul.list-three li:nth-child(3n+2){
	margin-left: 2%;
	margin-right: 2%;
}

ul.list-three li figure{
	margin: 0 auto;
	width: 200px;
	height: 200px;
	border-radius: 100px;
	overflow: hidden;
	position: relative;
	background-color: #fff;
}

ul.list-three li figure img{
	width: 100px;
	height: 100px;
	position: absolute;
	top: 0px;
	left: 0px;
	right: 0px;
	bottom: 0px;
	margin: auto;
	display: block;
}

ul.list-three li p.num{
	position: absolute;
	font-family: 'Poppins', sans-serif;
	color:#0084cf;
	display: block;
	font-weight: bold;
	font-size: 28px;
	top: -25px;
	left: 20px;
}

ul.list-three li h3{
	font-size: 22px;
	padding-top: 25px;
	text-align: center;
}

ul.list-three li h3 span{
	color:#0084cf;
}

ul.list-three li p.txt{
	padding: 20px 0px 0px;
	font-size: 14px;
	line-height: 1.8em;
}

#pricelink .read-t{
	background-color: inherit;
	max-width: 1200px;
	width: 90%;
	margin-left: auto;
	margin-right: auto;
	margin-bottom: 0px;
	padding-bottom: 30px;
}

#solution-inner{
	padding-bottom: 50px;
}

ul#production-list{
	max-width: 1200px;
	width: 90%;
	margin: 0 auto 20px;
	padding-top: 100px;
	display: flex;
	justify-content: space-between;
}

ul#production-list li{
	position: relative;
	margin-bottom: 0;
	vertical-align: top;
	width: 31%;
}

ul#production-list li:nth-child(2){
	margin-top: 50px;
}

ul#production-list li .cont{
	background-color: #fff;
	padding: 50px 25px 80px;
	border-radius: 10px;
	position: relative;
}

ul#production-list li:first-child .cont:before{
	content: "01";
	position: absolute;
	top: -25px;
	left: 0px;
	right: 0px;
	margin: 0 auto;
	color:#0084cf;
	font-family: 'Poppins', sans-serif;
	font-size: 50px;
	line-height: 50px;
	text-align: center;
	opacity: .4;
	font-weight: bold;
}

ul#production-list li:nth-child(2) .cont:before{
	content: "02";
	position: absolute;
	top: -25px;
	left: 0px;
	right: 0px;
	margin: 0 auto;
	color:#0084cf;
	font-family: 'Poppins', sans-serif;
	font-size: 50px;
	line-height: 50px;
	text-align: center;
	opacity: .4;
	font-weight: bold;
}

ul#production-list li:last-child .cont:before{
	content: "03";
	position: absolute;
	top: -25px;
	left: 0px;
	right: 0px;
	margin: 0 auto;
	color:#0084cf;
	font-family: 'Poppins', sans-serif;
	font-size: 50px;
	line-height: 50px;
	text-align: center;
	opacity: .4;
	font-weight: bold;
}

ul#production-list li figure{
	margin-top: -60px;
	padding: 0px 50px;
	position: relative;
	z-index: 1;
}

ul#production-list li figure img{
	width: 100%;
}

ul#production-list li .cont h3{
	font-weight: bold;
	line-height: 1.6em;
	font-size: 18px;
	text-align: center;
	color: #0084cf;
	position: relative;
	padding-bottom: 30px;
}

ul#production-list li .cont h3:before{
	width: 20px;
	height: 2px;
	background-color: #0084cf;
	position: absolute;
	bottom: 20px;
	left: 0px;
	right: 0px;
	margin: 0 auto;
	content: "";
}

ul#production-list li .cont p.txt{
	font-size: 14px;
	line-height: 1.8em;
}

#service-list ul{
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
}

#service-list ul li{
	position: relative;
	display: flex;
	flex-wrap: wrap;
	width: 23%;
	box-sizing: border-box;
	margin: 0px 1% 2%;
	justify-content: center;
	align-items: center;
	padding: 5px;
	background: linear-gradient(50deg, #1785e7, #0a5799);
}

#service-list ul li:before{
	content: "→";
	position: absolute;
	bottom: 10px;
	right: 15px;
	color:#0084cf;
}

#service-list ul li a{
	background-color: #fff;
	color:#0084cf;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	text-decoration: none;
	align-items: stretch;
	display: flex;
	border: 1px solid #eee;
	padding: 25px 20px 25px 10px;
	text-align: center;
}

#service-list ul li a:hover{
	box-shadow: 0px 0px 7px #aac5e4;
}

#service-list ul li a span{
	font-weight: bold;
	display: block;
	font-size: 16px;
	width: 33%;
	text-align: center;
	font-family: 'Poppins', sans-serif;
}

#service-list ul li a span img{
	margin-top: 2px;
}

#service-list ul li a p{
	width: 67%;
	display: flex;
	align-items: center;
	font-weight: bold;
	font-size: 16px;
	line-height: 1.4em;
	text-align: left;
}

#template-catchy{
	/*display: flex;
	-o-flex-flow: row wrap;
	flex-flow: row wrap;
	-o-justify-content: space-between;
	-ms-justify-content: space-between;
	-moz-justify-content: space-between;
	justify-content: space-between;
	align-items: flex-end;*/
	text-align: center;
}

#template-catchy h3{
	font-size: 30px;
	font-weight: bold;
	line-height: 1.6em;
	padding: 100px 5% 0;
	box-sizing: border-box;
}

#template-catchy p{
	padding-top: 20px;
	font-size: 14px;
	line-height: 1.8em;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	box-sizing: border-box;
}

p#hp-example{
	text-align: center;
	font-weight: bold;
	margin-bottom: 25px;
	font-size: 26px;
	line-height: 1.4em;
	display: flex;
	justify-content: center;
	align-items: center;
}

p#hp-example::before,
p#hp-example::after {
	content: '';
	width: 100px;
	height: 1px;
	background-color: #000;
}

p#hp-example::before {
	margin-right: 20px;
}

p#hp-example::after {
	margin-left: 20px;
}

ul#hp-works{
	display: flex;
	flex-wrap: wrap;
	padding-bottom: 25px;
}

ul#hp-works li{
	width: 32%;
	margin-right: 2%;
	margin-bottom: 30px;
}

ul#hp-works li img{
	box-shadow: 0px 0px 28px 0px rgb(43 68 93 / 10%);
}

ul#hp-works li p{
	font-weight: bold;
	line-height: 1.4em;
	text-align: center;
	padding-top: 30px;
}

ul#hp-works li:nth-child(3n){
	margin-right: 0px;
}

h3#descri-ttl{
	position: relative;
	font-size: 34px;
	line-height: 1.4em;
	border-bottom: 2px solid #f5f5f5;
	padding-bottom: 20px;
}

h3#descri-ttl span{
	color:#0084cf;
}

h3#descri-ttl:before {
	position: absolute;
	left: 0;
	bottom: -2px;
	width: 20%;
	height: 2px;
	content: '';
	background: #0084cf;
}

h3#descri-ttl br{
	display: none;
}

#point-box .txt p span,
h3#point-ttl span{
	background: linear-gradient(transparent 70%, yellow 0%);
}

#descri-box .txt p span{
	font-weight: bold;
}

#descri-box{
	padding-top: 40px;
	display: flex;
	justify-content: space-between;
}

#descri-box .txt{
	width: 57%;
}

#descri-box .txt h4{
	font-size: 20px;
	line-height: 1.8em;
}

#descri-box .txt h4 span{
	color:#0084cf;
}

#descri-box .txt p{
	font-size: 14px;
	line-height: 1.8em;
	padding-top: 25px;
}

#descri-box figure.pc{
	width: 40%;
}

p#price-txt{
	background-color: #f9f9f9;
	padding: 50px;
	box-sizing: border-box;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
}

h3#point-ttl{
	text-align: center;
	font-size: 38px;
	line-height: 1.4em;
	padding-top: 35px;
	box-sizing: border-box;
}

h3#point-ttl br{
	display: none;
}

#point-box{
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto;
	padding-top: 20px;
}

#point-box .cont{
	position: relative;
	width: 49%;
	border-bottom: 1px solid #eee;
	margin-bottom: 15px;
	background-color: #fff;
	border-radius: 10px;
	padding: 40px 30px;
	box-sizing: border-box;
}

#point-box .cont h4{
	font-weight: bold;
	font-size: 18px;
	line-height: 1.4em;
	position: relative;
	padding-left: 25px;
}

#point-box .cont h4:before{
	content: "・";
	position: absolute;
	left: 0px;
	top: 0px;
	font-size: 24px;
	color:#0084cf;
}

#point-box .cont h4 span{
	color:#0084cf;
}

#point-box .cont p{
	position: relative;
	font-size: 14px;
	line-height: 1.8em;
	padding: 10px 0px 0;
}

#point-box .cont p span{
	background:linear-gradient(transparent 70%, yellow 0%);
	font-weight: bold;
}

#fixed-rht{
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 1;
}

#fixed-rht a{
	color:#fff;
	width: 160px;
	height: 160px;
	text-align: center;
	text-decoration: none;
	display: block;
	border-radius: 80px;
	box-sizing: border-box;
	padding-top: 35px;
	/*background: linear-gradient(-45deg, #23d5ab, #0a5799, #23a6d5, #23d5ab);
	animation: gradient 10s ease infinite;*/
	background-color: #f36803;
	background-size: 400% 400%;
}

#fixed-rht a:hover{
	background-color: #fc964b;
}

@keyframes gradient {
0% {
	background-position: 0% 50%
}
50% {
	background-position: 100% 50%
}
100% {
	background-position: 0% 50%
}
}

#fixed-rht a div{
	font-size: 32px;
	display: block;
}

#fixed-rht a span{
	line-height: 1.2em;
	font-size: 15px;
	font-weight: bold;
	display: block;
	padding: 10px 0px 5px;
}

#fixed-rht a p{
	line-height: 1.4em;
	font-size: 20px;
	padding-top: 5px;
	font-weight: bold;
	display: block;
}

#innermain{
	padding-bottom: 100px;
}

.innerbox{
	box-shadow: 0 20px 40px rgb(0 95 144 / 5%);
	background-color: #fff;
	border-radius: 10px;
	max-width: 1200px;
	width: 90%;
	margin: 70px auto 0;
	box-sizing: border-box;
	padding: 75px 70px;
}

.innerbox.wd{
	padding: 60px 70px 50px;
}

#abt-wry h3{
	text-align: center;
	position: relative;
	font-size: 28px;
	max-width: 550px;
	width: 90%;
	margin: 0 auto 20px;
}

#abt-wry h3:before{
	transform: rotate(160deg);
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 40px 10px;
	border-color: transparent transparent #f0ff49 transparent;
	position: absolute;
	bottom: 0px;
	left: 0px;
	z-index: 1;
}

#abt-wry h3:after{
	transform: rotate(-160deg);
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 0 10px 40px 10px;
	border-color: transparent transparent #f0ff49 transparent;
	position: absolute;
	bottom: 0px;
	right: 0px;
	z-index: 1;
}

h3.hp-ttl{
	position: relative;
	font-weight: bold;
	font-size: 24px;
	letter-spacing: 0.1em;
	box-sizing: border-box;
	color:#0084cf;
	border-left: 5px solid #0084cf;
	background-color: #f2f7fc;
	text-align: left;
	max-width: 1200px;
	width: 90%;
	margin: 0 auto 25px;
	padding: 15px 20px;
}

h3.hp-ttl.hp-before{
	margin-top: 30px;
}

h3.hp-after{
	margin-top: 50px;
}

#works-box ul{
	padding-top: 20px;
}

#works-box.inner-works ul{
	padding-top: 0px;
}

/* ---- reset ---- */ canvas{ display: block; vertical-align: bottom; } /* ---- particles.js container ---- */ #particles-js{ position:absolute; width: 100%; } /* ---- stats.js ---- */ .count-particles{ background: #000022; position: absolute; top: 48px; left: 0; width: 80px; color: #13E8E9; font-size: .8em; text-align: left; text-indent: 4px; line-height: 14px; padding-bottom: 2px; font-family: Helvetica, Arial, sans-serif; font-weight: bold; } .js-count-particles{ font-size: 1.1em; } #stats, .count-particles{ -webkit-user-select: none; margin-top: 5px; margin-left: 5px; } #stats{ border-radius: 3px 3px 0 0; overflow: hidden; } .count-particles{ border-radius: 0 0 3px 3px; }