@charset "utf-8";

.idx                       {padding:1em 0;}
/* ----------------------------------------------- title */
.idx_ttl                   {font-size:100%;line-height:150%;padding:2em 0;text-align:center;}
.idx_ttl span              {display:inline-block;}
.idx_ttl span i            {display:block;color:#33cccc;font-family: "Times New Roman", Times, "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "游明朝", YuMincho, "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;}
_:-ms-fullscreen, :root .idx_ttl span i {background: none;}
.idx_message .idx_ttl span i,.idx_brand .idx_ttl span i {
	font-size:140%;
}
.idx_ttl span .en          {font-size:90%!important;color:#a4d8d8;letter-spacing:2px;margin-bottom:5px;text-transform:uppercase;position:relative;}
.idx_ttl span .en:after {
	content:"";
	border-bottom:1px solid #a4d8d8;
	height:1px;
	position:absolute;
	left:0;
	right:0;
	margin:0 auto 5px auto;
	width:50px;
	display:block;}

.idx_message .idx_ttl span .en:after,.idx_brand .idx_ttl span .en:after {
	content:"";
	border-bottom:1px solid #a4d8d8;
	height:1px;
	position:absolute;
	left:0;
	right:0;
	margin:0 0 5px 0;
	width:50px;
	display:block;}


.idx_message {
	padding:90px 0;}

.idx_brand {
	padding:90px 0;
	background-color:#fafafa;}

.idx_brand .left_box {
	position:relative;}

.idx_brand .logo {
	position:absolute;
	top:20px;
	right:55px;
	max-width:40%;}

.detail_link {
	display:block;
	margin:1em 0 0 0;
	}

.detail_link a {
	color:#33cccc;}

.left_box p+p {
	margin-top:30px;}

.idx_ttl span .ja          {font-size:150%;line-height:1;margin-top:15px;}
@media screen and (min-width: 768px){
	.idx_ttl                   {font-size:120%;}
	.idx_service .idx_ttl span .ja          {margin:80px 0 60px 0;}
	.idx_message .right_box {width:40%;
    margin-left: 5%;}
	.idx_message .right_box img, .idx_brand .right_box img {
	    max-width: 100%!important;
		margin-left:0!important;}
	.idx_corporate {padding:90px 0;}
}
@media screen and (min-width: 768.0px) and (max-width: 768.9px){
	.idx_message .right_box {width:100%;
    margin-left: 0}
}
/* ----------------------------------------------- button */
.idx_btns                  {text-align:center;margin:1em 0.5em;}
.idx_btn                   {display:inline-block;color:#fff;padding:0.6em 0;width:100%;max-width:300px;background:linear-gradient(to right, #4596d8 0%, #09cedf 100%);text-decoration:none;position:relative;transition:0.3s;}
.idx_btn:hover             {opacity:0.7;}
.idx_btn:before,
.idx_btn:after             {content:"";position:absolute;display:block;background:#fff;}
.idx_btn:before            {width:3em;height:1px;right:1em;top:calc(50% + 3px);}
.idx_btn:after             {width:1.5em;height:1px;transform:rotate(45deg);right:13px;top:calc(50% - 5px);}
.idx_btn i                 {font-size:112%;font-weight:bold;font-family:"Noto Sans JP";position:relative;}

/* ============================================================== mv */
.idx_mv                    {background-image:url("../img/mv_bg_sp.jpg");background-size:cover;background-repeat:no-repeat;background-position:50% 50%;position:relative;}
.idx_mv:before             {background:rgba(0,32,64,0.2);top:0;left:0;width:100%;height:100%;content:"";display:block;position:absolute;}
.idx_mv .wfx               {display:flex;align-items:center;height:100%;min-height:calc(100vh - 44px);position:relative;z-index:3;}
.idx_mv .wfx div           {font-size:120%;font-weight:bold;color:#fff;width:100%;text-align:center;}
.idx_mv .wfx span          {display:block;}
.idx_mv .wfx span i        {display:inline-block;}
_:-ms-fullscreen, :root .idx_mv .wfx div  {padding-top:calc(50vh - 4em);}
@media screen and (min-width: 768px){
	.idx_mv                    {background-image:url("../img/mv_bg.jpg");}
	.idx_mv .wfx div           {font-size:330%;}
}

/* ============================================================== Vision */
.idx_service               {background:#ffffff;}
.idx_service_lst           {display:flex;flex-wrap:wrap;justify-content:center;}
.idx_service_lst li        {width:40%;max-width:180px;margin:0 1em 2em;}
.idx_service_box           {display:flex;flex-direction:column;text-align:center;}
.idx_service_box span:nth-of-type(1)          {margin-bottom:0.3em;}
.idx_service_box span:nth-of-type(1) i        {display:inline-block;font-size:87.5%;font-weight:900;color:#09cedf;background:linear-gradient(to right, #4596d8 0%, #09cedf 100%);-webkit-background-clip:text;-webkit-text-fill-color:rgba(255,255,255,0.0);font-family:"Noto Sans JP";}
.idx_service_box span:nth-of-type(2)          {display:block;max-width:152px;margin:0 auto;}
_:-ms-fullscreen, :root .idx_service_box span:nth-of-type(2)   {width:100%;}
_:-ms-fullscreen, :root .idx_service_box span:nth-of-type(1) i {background:none;display:block;}
@media screen and (min-width: 768px){
	.idx_service               {padding:4em 0 6em;}
	.idx_service_lst           {margin-bottom:4em;}
	.idx_service_lst li        {margin:0 2em 3em;}
	.idx_service_box span:nth-of-type(1) i        {font-size:100%;}
	.idx_service p {line-height:2;max-width: 470px;margin-left: auto;margin-right: auto;}
	.idx_service p+p {margin-top:20px;}
}



/* ============================================================== FEATURE */
.idx_feature {
	padding:90px 0;}
.idx_feature .feature_box {
	margin-left: auto;
	margin-right: auto;}
.idx_feature .feature_box .content {
	text-align: center;
	display: inline-block;
	width: 31%;
	margin-right: 20px;
	vertical-align: top;}
.idx_feature .feature_box .content:nth-child(3) {
	margin-right: 0;}
.idx_feature .feature_box .content .image_box img {
	width: 100%;}
.idx_feature .feature_box .content .text_box {
	margin: 10px auto;
	padding: 10px;}
.idx_feature .feature_box .content .text_box .title {
	color: #33cccc;
    font-weight: 600;
    font-size: 16px;
    margin: 5px auto 15px auto;}
.idx_feature .feature_box .content .text_box p.txt {
	text-align: left;
	margin-bottom: 12px;}

@media screen and (max-width:900px){
.idx_feature .feature_box .content {
	display: block;
	width: 96%;
	margin-left: auto;
	margin-right: auto;}
.idx_feature .feature_box .content:nth-child(3) {
    margin-right: auto;}
.idx_feature .feature_box .content .text_box {
    padding: 10px 0;}
.idx_feature .feature_box .content .text_box .title {
	text-align: left;
    font-size: 15px;
    margin: 0px auto 15px auto;}
}



/* ============================================================== ENVIRONMENT */
.idx_ebvironment {
	padding:90px 0;
    background-color: #fafafa;}
.idx_ebvironment .ebvironment_box .content {
	text-align: center;
	display: inline-block;
	width: 48%;
	margin-right: 20px;
	vertical-align: top;
	background-color: #fff;}
.idx_ebvironment .ebvironment_box .content:nth-child(2) {
	margin-right: 0;}
.idx_ebvironment .ebvironment_box .content .image_box img {
	width: 100%;}
.idx_ebvironment .ebvironment_box .content .text_box {
	margin: 10px 10px 0px 10px;
	padding: 10px;
	min-height: 200px;}
.idx_ebvironment .ebvironment_box .content .text_box .title {
	color: #33cccc;
    font-weight: 600;
    font-size: 16px;
    margin: 5px auto 15px auto;
    min-height: 40px;}
.idx_ebvironment .ebvironment_box .content .text_box p.txt {
	text-align: left;
	margin-bottom: 12px;}

@media screen and (max-width:900px){
.idx_ebvironment .ebvironment_box .content {
	display: block;
	width: 96%;
	margin-left: auto;
	margin-right: auto;}
.idx_ebvironment .ebvironment_box .content .text_box .title {
    font-size: 15px;
    margin: 0px auto 15px auto;
    min-height: auto;
	text-align: left;}
.idx_ebvironment .ebvironment_box .content:nth-child(2) {
	margin-top: 20px;
    margin-right: auto;}
.idx_ebvironment .ebvironment_box .content .text_box {
    padding: 10px 0;
    min-height: auto;}
}




/* ============================================================== POLICY */
.idx_policy {
	padding:90px 0;
    background-color: #fafafa;}
.idx_policy .image_box {
	width: 400px;
    margin: 0 auto;}
.idx_policy .image_box img {
	width: 100%;}
.idx_policy .text_box {
	padding: 30px;
    background-color: #33cccc;
	color: #fff;
	font-weight: 600;
    width: 66%;
    margin: 25px auto 0 auto;}

@media screen and (max-width:900px){
.idx_policy .image_box {
	width: 86%;}
.idx_policy .text_box {
	padding: 15px;
    width: 86%;}
}


/* ============================================================== Message / Brand */

.idx_message .idx_ttl,.idx_brand .idx_ttl {
	padding:0 0 1em 0;
	text-align:left;}

.idx_message .right_box,.idx_brand .right_box {
	overflow:hidden;}

.idx_message .right_box img,.idx_brand .right_box img {
	max-width:145%;
	margin-left:-30%;
	}

.left_box {
	display:inline-block;
	vertical-align:top;
	width:54%;
	padding:0 30px 0 0;}

.right_box {
	display:inline-block;
	vertical-align:top;
	width:45%;}


@media screen and (min-width: 1400px){
.left_box p,.right_box p {
	line-height:2.0;}
}

@media screen and (min-width: 1100px) and (max-width:1399px){

.right_box {
	overflow:hidden;
	width:54%;}

.right_box img {
	max-width:125%;
	margin-left:-22%;}

.left_box {
	width:45%;}
}



@media screen and (min-width: 900px) and (max-width:1100px){

.right_box {
	overflow:hidden;
    width: 35%!important;
	margin-left: 1%!important;}

.right_box img {
	max-width:170%;
	margin-left:-47%;}

.left_box {
	width:calc(100% - 400px);
	padding:0 20px;}

.idx_ttl {
	padding:1em 0;}

}

@media screen and (min-width: 769px) and (max-width:899px){

.right_box {
	overflow:hidden;
    width: 35%!important;
	margin-left: 1%!important;}

.left_box {
	width:calc(100% - 400px);
	padding:0 20px;}

.right_box img {
	max-width:220%;
	margin-left:-70%;}

.right_box {
    width: 38%;
	margin-left: 2%;}
}

@media screen and (max-width:768px){

.idx_service p {
	padding:0 10px 10px 10px;}
.right_box,.left_box {
	display:block;
	width:100%;}

.left_box {
	padding:0 10px 30px 10px;}
.idx_brand .right_box {
	padding:0 10px 30px 10px;}


}

.privacy h3 {
	margin:30px 0 10px 0;
    color: #33cccc;
  position: relative;
  width: 100%;
  padding: 10px 0;
  border-bottom: 1px solid #33cccc;
    font-weight: 600;
	font-size: 17px;
	}
.privacy h3:before {
    content: "";
    position: absolute;
    left: 0;
    bottom: -1px;
    width: 150px;
    height: inherit;
    border-bottom: 1px solid #10666b;
}

.privacy h4 {
    color: #33cccc;
	margin:30px 0 10px 0;
	font-size: 15px;
    font-weight: 600;
	}
.privacy h4::before {
    content: "●";
    color: #33cccc;
	margin-right: 5px;
	}

.privacy p {
	margin-bottom: 15px;
	}

.privacy .indent-left {
    margin-left: 1.5em;
	}
.privacy .indent-box {
    margin-bottom: 20px;
	}
.privacy .indent-left .indent-box.type01 li {
    padding-left: 1.25em;
    text-indent: -1.25em;
	}
.privacy .indent-box ul li {
    padding-left: 1em;
    text-indent: -1em;
	}

.privacy a {
	text-decoration: underline;
	color: #000;
	}
.privacy .forsp a {
	text-decoration: none;
	}
.privacy a:hover {
	text-decoration: none;
	}




/* ============================================================== break */
.break                     {min-height:35vh;background-image:url("../img/break_bg_sp.jpg");position:relative;}
.break:after               {background:rgba(32,160,196,0.3);top:0;left:0;width:100%;height:100%;content:"";display:block;position:absolute;}
@media screen and (min-width: 768px){
	.break                     {min-height:50vh;background-image:url("../img/break_bg.jpg");}
}

/* ============================================================== corporate */

.idx_corporate table {
	margin:30px 0;
	width:100%;
	border-collapse:separate;
	border-spacing:20px;}

.idx_corporate table th,.idx_corporate table td {
	padding:25px;}

.idx_corporate table th {
	background-color:#33cccc;
	color:#ffffff;}

.idx_corporate table td {
	background-color:#f2f2f2;}

.banner_area {
	text-align: right;
    padding-right: 15px;}



@media screen and (max-width:768px){

.idx_corporate table td,.idx_corporate table th {
	display:block;
	width:100%;
	padding:20px 10px;}

.idx_corporate table {
	margin-top:0;}

#corporate {
	padding-top: 40px;
	margin-top: -40px;}
}

@media screen and (max-width:767px){
.banner_area {
	text-align: center;
    padding-right: 0;}
}

/* ============================================================== cv */
.idx_cv                    {padding:1em;background-image:url("../img/cv_bg_sp.jpg");backgrond-repeat:no-repeat;background-size:cover;background-position:50% 50%;position:relative;}
.idx_cv:after              {background:rgba(32,160,196,0.3);top:0;left:0;width:100%;height:100%;content:"";display:block;position:absolute;}
.idx_cv .wfx               {color:#fff;display:flex;flex-direction:column;position:relative;z-index:3;}
.idx_cv_txt,
.idx_cv_lnk                {background:linear-gradient(to right, #4596d8 0%, #09cedf 100%);}
.idx_cv_txt                {font-weight:900;font-family:"Noto Sans JP";display:flex;align-items:center;margin-bottom:1em;}
.idx_cv_ttl                {font-size:100%;flex:1;padding-left:2em;}
.idx_cv_ttl i              {display:block;width:100%;text-align:center;}
.idx_cv_ttl i:nth-of-type(1){font-size:75%;}
.idx_cv_ttl i:nth-of-type(2){font-size:200%;}
.idx_cv_fig                {padding-top:10px;width:40%;max-width:176px;}
.idx_cv_fig img            {vertical-align:bottom;}
.idx_cv_lnk                {padding:1em 0;text-align:center;}
.idx_cv_lnk_ttl i          {display:block;}
.idx_cv_lnk_ttl i:nth-of-type(1)          {font-size:160%;letter-spacing:0.1em;font-family:'arial black';}
.idx_cv_lnk_btn            {margin:1em 1em 0;}
.idx_cv_lnk_btn a          {color:#fff;display:block;max-width:360px;width:100%;margin:0 auto;padding:0.6em 0;border:2px solid #fff;font-weight:bold;text-align:center;text-decoration:none;position:relative;}
.idx_cv_lnk_btn a:after    {width:8px;height:8px;top:calc(50% - 0.3em);right:0.7em;border-right:2px solid #fff;border-bottom:2px solid #fff;transform:rotate(-45deg);content:"";display:block;position:absolute;}
@media screen and (min-width: 768px){
	.idx_cv                    {padding:4em 1em;background-image:url("../img/cv_bg.jpg");}
	.idx_cv .wfx               {flex-direction:row;justify-content:space-between;}
	.idx_cv_txt,
	.idx_cv_lnk                {margin-bottom:0;width:calc((100% - 1em) / 2);}
	.idx_cv_lnk                {position:relative;display:flex;align-items:center;padding:0;}
	.idx_cv_lnk_wrap           {width:100%;}
	.idx_cv_lnk_ttl            {margin-bottom:1.5em;}
	.idx_cv_lnk_ttl i:nth-of-type(1)          {font-size:180%;}
	.idx_cv_lnk_btn a          {font-size:110%;letter-spacing:0.1em;padding:0.8em 0;transition:0.3s;}
	.idx_cv_lnk_btn a:hover    {background:rgba(255,255,255,0.2);}
	.forsp {display:none;}
}
@media screen and (min-width: 1000px){
	.idx_cv                    {padding:8em 1em;}
	.idx_cv_ttl                {font-size:120%;}
}









/* 768px以上の時にforsp(スマホ用)を非表示 */
@media screen and (min-width:768px){.forsp {display: none!important;}}

/* 767px以下の時にforpc(ＰＣ用)を非表示 */
@media screen and (max-width:767px){.forpc {display: none!important;}}

