@charset "UTF-8";

html {
	min-width: 1200px;
}

body {
	width: 100%;
	min-width: 1200px;
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size: 18px;
	line-height: 1.6;
	word-break: break-all;
	line-break: strict;
	overflow-wrap: break-word;
	color: #26282A;
	letter-spacing: 0.1em;
	font-feature-settings: "palt";
	background: #fff;
	text-align: justify;
}

img {
	max-width: 100%;
	margin: 0;
	padding: 0;
	border: medium none;
	vertical-align: top;
	image-rendering: -webkit-optimize-contrast;
}

table {
	font-size: inherit;
}

table, th, td {
	margin: 0;
	padding: 0;
}

ul, ol {
	list-style-type: none;
	margin: 0;
	padding: 0;
}

textarea, input, select {
	font-family: "Noto Sans JP", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;
	font-size: 16px;
	line-height: 1.5;
    outline: 0 none;
}

input::-moz-focus-inner, button::-moz-focus-inner {
	border: 0 none;
}

a {
	color: #26282A;
	cursor: pointer;
	outline: medium none;
	text-decoration: none;
}

a:link {
	color: #26282A;
	outline: medium none;
	text-decoration: none;
}

a:hover {
	color: #2380EB;
	outline: medium none;
	text-decoration: none;
}

h1, h2, h3, h4, h5 ,h6 {
	font-size: 100%;
	font-weight: 700;
}

h1 {
	font-size: 5.0em;
}

h2 {
	font-size: 3.0em;
	margin: 0 0 60px 0;
	line-height: 1.5;
	letter-spacing: 0.05em;
}

h3 {
	font-size: 1.4em;
}

h4 {
	font-size: 2.5em;
	line-height: 2.0;
}

h5 {
	font-size: 2.0em;
}

h6 {
	font-size: 1.3em;
	margin: 0 0 30px 0;
}

ul.c-indList li {
	padding-left: 1em;
	text-indent: -1em;
}


.sp_only {
	display: none;
}

.pc_only {
	display: block;
}



.link_normal {
	text-align: center;
}

.link_normal a {
	padding: 12px 40px 12px 22px;
	display: inline-block;
	border-radius: 30px;
	color: #fff;
	background-color: #006FFF;
	position: relative;
}

@media all and (-ms-high-contrast: none) {
	.link_normal a { padding: 12px 30px 9px 12px; }
}

.link_normal a::after {
	content: '';
	width: 6px;
	height: 6px;
	border: 0;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	position: absolute;
	top: 50%;
	right: 20px;
	margin-top: -5px;
	transform: rotate(45deg);
}

.link_normal a:hover {
	opacity: 0.6;
}

.color0 {
	color: #00AEFF;
}

.color1 {
	color: #006FFF;
}

.color2 {
	color: #004BB1;
}

.color3 {
	color: #26282A;
}

.color4 {
	color: #cdd6dd;
}

.color5 {
	color: #ffffff;
}


* {
	margin: 0;
	padding: 0;
	box-sizing: border-box;
}

.clearfix::after {
	clear: both;
	content: " ";
	display: block;
	font-size: 0;
	height: 0;
	visibility: hidden;
}

.img_max {
	width: 100%;
}

.img_min {
	max-width: 100%;
}

.hover:hover {
	opacity: 0.7;
}

/*--- jquery UI ---*/
.ui-dialog-titlebar {
	display: none!important;
}



/*--- layout ---*/
.l-header {
	width: 100%;
	padding: 50px 50px 0 50px;
	position: fixed;
	z-index: 9;
}
.l-header__inner {
	position: relative;
	display: flex;
	gap: 0;
	flex-flow: wrap;
	align-items: center;
}
.l-header__inner > div:first-child {
	width: 400px;
}
.l-header__inner > div:last-child {
	width: calc(100% - 400px);
}
.l-header__logo img {
	width: 400px;
}
.l-header__gmenu {
	text-align: right;
}
.l-header__gmenu ul {
	width: 100%;
}
.l-header__gmenu ul li {
	margin: 0 20px 0 0;
	display: inline-block;
	line-height: 1;
}
.l-header__gmenu ul li a {
	display: block;
	font-weight: 700;
}
.l-header__gmenu ul li a:hover {
	color: #004BB1!important;
}
.l-header__gmenu ul li a:link {
	color: #26282A;
}
.l-header__gmenu ul li a:visited {
	color: #26282A;
}
.l-header__gmenu ul li:last-child {
	display: none;
}

.l-footer {
	padding: 80px 0;
	background-color: #26282A;
	color: #fff;
	position: relative;
}
.l-footer__inner {
	padding: 0 50px;
	gap: 50px;
}
.l-footer__inner > div:first-child {
	width: 30%;
	padding: 0;
}
.l-footer__inner > div:last-child {
	width: calc(70% - 50px);
	padding: 30px 0 0 0;
}
.l-footer__inner > div:first-child img {
	max-width: 300px;
}
.l-footer__inner a,
.l-footer__inner a:link {
	color: #CDD6DD;
}
.l-footer__inner a:hover {
	opacity: 0.6;
}
.l-footer__name {
	margin: 0 0 15px 0;
}
.l-footer__name h5 {
	font-size: 1.5em;
}
.l-footer__name p {
	color: #8CACC5;
}
.l-footer__inner ul {
	margin: 0 0 70px 0;
	font-size: 1.1em;
	gap: 25px;
}

.l-footer2 {
	padding: 15px 0;
	background-color: #3B4043;
	color: #fff;
	text-align: right;
	position: relative;
}
.l-footer2__inner {
	padding: 0 50px;
	display: flex;
	gap: 20px;
	flex-flow: wrap;
	line-height: 1;
}
.l-footer2__inner > div:first-child {
	width: 30%;
	text-align: left;
	padding: 0;
}
.l-footer2__inner > div:last-child {
	width: calc(70% - 20px);
}
.l-footer2__inner ul {
	width: 100%;
	display: flex;
	gap: 20px;
	flex-flow: wrap;
	justify-content: flex-end;
}
.l-footer2__inner ul li img {
	height: 20px;
}

.l-contents {
	width: 100%;
	margin: 0 auto 300px auto;
}





/*--- component ---*/
.c-navi {
	position: fixed;
	right: 0;
	top: 0;
	width: 80px;
	height: 80px;
	cursor: pointer;
	z-index: 10;
	padding: 29px 25px;
	background: #004BB1;
	display: none;
}
.c-navi div {
	position: relative;
}
.c-navi span {
	display: block;
	position: absolute;
	height: 3px;
	width: 100%;
	background: #fff;
	left: 0;
	-webkit-transition: .35s ease-in-out;
	-moz-transition: .35s ease-in-out;
	transition: .35s ease-in-out;
}
.c-navi span:nth-child(1) {
	top: 0;
}
.c-navi span:nth-child(2) {
	top: 9px;
}
.c-navi span:nth-child(3) {
	width: 64%;
	top: 18px;
}
.c-navi.open span:nth-child(1) {
	width: 100%;
	top: 11px;
	-webkit-transform: rotate(315deg);
	-moz-transform: rotate(315deg);
	transform: rotate(315deg);
	background: #F9F9F9;
}
.c-navi.open span:nth-child(2) {
	width: 0;
	left: 50%;
}
.c-navi.open span:nth-child(3) {
	width: 100%;
	top: 11px;
	-webkit-transform: rotate(-315deg);
	-moz-transform: rotate(-315deg);
	transform: rotate(-315deg);
	background: #F9F9F9;
}

.c-overlay {
	width: 100%;
	background-color: #000000;
	content: "";
	cursor: pointer;
	display: block;
	height: 100%;
	opacity: 0.8;
	position: fixed;
	left: 0;
	top: 0;
	z-index: 8;
	
	display: none;
}

.c-inner {
	width: 1200px;
	margin: 0 auto;
}

.c-center {
	text-align: center!important;
}

.c-right {
	text-align: right!important;
}

.c-left {
	text-align: justify!important;
}

.c-link01 {
	width: fit-content;
	margin-left: 20px;
	padding: 0 25px 2px 15px;
	position: relative;
	font-weight: 700;
	font-size: 1.2em;
	color: #2A2B2D;
	border-bottom: 1px solid #203C6B;
}
.c-link01::before {
	content: "";
	width: 15px;
	display: block;
	height: 1px;
	background: #203C6B;
	rotate: 40deg;
	position: absolute;
	right: -2px;
	bottom: 4px;
}
.c-link01::after {
	content: "";
	width: 30px;
	display: block;
	height: 1px;
	background: #203C6B;
	rotate: 60deg;
	position: absolute;
	left: -22px;
	bottom: 12px;
}
.c-link01:hover a {
	color: #004BB1;
}

.c-flex {
	width: 100%;
	display: flex;
	flex-flow: wrap;
}


.c-contact__head,
.c-contact__head2 {
	margin-bottom: 100px;
	text-align: center;
}
.c-contact__head h2,
.c-contact__head2 h2 {
	margin-bottom: 10px;
}
.c-contact__head p,
.c-contact__head2 p {
	color: #004B86;
}

.contact_box {
	margin: 0 0 50px 0;
}
.contact_box .left {
	width: 46%;
	float: left;
}
.contact_box .right {
	width: 46%;
	float: right;
	text-align: left;
}
.contact_box ul li {
	margin: 0 0 20px 0;
}
.contact_box ::placeholder {
	color: #707070!important;
}
.contact_box input[type=text],
.contact_box input[type=email],
.contact_box input[type=url],
.contact_box input[type=tel],
.contact_box textarea,
.contact_box select {
	width: 100%;
	padding: 10px 15px;
	border: 1px #ddd solid;
}
.contact_box textarea {
	height: 233px;
}
.contact_box input[type="radio"], .contact_box input[type="checkbox"] {
	display: none;
}
.contact_box label {
	width: calc(50% - 20px);
	font-weight: normal!important;
	font-size: 0.85em;
}
.contact_box input[type="radio"] + label:hover, .contact_box input[type="checkbox"] + label:hover {
	cursor: pointer;
	color: #006FFF!important;
}
.contact_box input[type="radio"] + label:not(:last-of-type), .contact_box input[type="checkbox"] + label:not(:last-of-type) {
	margin-right: 10px;
}
.contact_box input[type="radio"] + label, .contact_box input[type="checkbox"] + label {
	margin-bottom: 10px;
	padding-left: 33px;
	position:relative;
	display: inline-block;
}
.contact_box input[type="radio"] + label::before, .contact_box input[type="checkbox"] + label::before {
	content: "";
	display: block;
	position: absolute;
	top: 2px;
	left: 0;
	width: 18px;
	height: 18px;
	border: 2px solid #ddd;
}
.contact_box input[type="radio"] + label::before, .contact_box input[type="radio"]:checked + label::after {
	/*border-radius: 50%;*/
}
.contact_box input[type="radio"]:checked + label, .contact_box input[type="checkbox"]:checked + label{
}
.contact_box input[type="radio"]:checked + label::before, .contact_box input[type="checkbox"]:checked + label::before{
	border: 2px solid #ddd;
}
.contact_box input[type="radio"]:checked + label::after, .contact_box input[type="checkbox"]:checked + label::after{
	content: "";
	display: block;
	position: absolute;
	top: 7px;
	left: 5px;
	width: 12px;
	height: 12px;
	background: #006FFF;
}
.contact_box .vertical input[type="radio"]+label, .contact_box .vertical input[type="checkbox"]+label {
	display: block;
}
.contact_box select::-ms-expand {
	display: none;
}
.contact_box select {
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	line-height: 1.1em;
	background: url(../img/icon_selectarrow.png) right 10px center no-repeat;
	background-color: rgba(0, 0, 0, 0);
	background-size: auto;
	background-size: 12px auto;
	background-color: #fff;
}
.contact_box ::placeholder { color: #ccc; }
.contact_box :-ms-input-placeholder { color: #ccc; }
.contact_box ::-ms-input-placeholder { color: #ccc; }
.concat_type {
	margin: 0 0 15px 0;
}
.c-contact .c-link01 {
	margin: 0 auto;
	padding: 0 45px 2px 35px;
}
.c-contact .err {
	border: 2px solid #DC143C!important;
}

.c-contactLink {
	width: 54px;
	position: fixed;
	right: 0;
	top:50%;
	transform: translateY(-50%);
	z-index: 5;
}

.c-scroll {
	width: 80px;
	position: absolute;
	left: 10px;
	top: calc(100% - 190px);
}



/*--- utility ---*/
.u-hover:hover {
	opacity: 0.6;
	cursor: pointer;
	transition: all 0.5s 0s ease-in-out;
}

.u-left {
	text-align: left;
}
.u-center {
	text-align: center;
}
.u-right {
	text-align: right;
}



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

.c-topcontents {
	margin: 0 0 180px 0;
}
.c-topcontents .c-inner {
	position: relative;
	height: 850px;
}
.c-topcontents .c-inner div {
	padding: 380px 0 0 50px;
}
.c-topcontents .c-inner div p {
	font-weight: 700;
	font-size: 2.4em;
}


.c-section:not(:last-child) {
	margin-bottom: 200px;
}
.c-section .c-inner.p_tm {
	padding-top: 120px;
	padding-bottom: 120px;
}
.c-section .c-inner.p_tm2 {
	padding-top: 200px;
	padding-bottom: 200px;
}
.c-section .c-inner.p_tm3 {
	padding-top: 200px;
	padding-bottom: 300px;
}
.c-section .c-inner.p_tm4 {
	padding-top: 200px;
	padding-bottom: 300px;
}


.c-section .sub_section:nth-of-type(n+2) {
	margin-top: 150px;
}

.c-section .sub_section_head {
	margin-top: 0!important;
}

.sub_section2:nth-child(n+2) {
	margin-top: 60px;
}

.sub_section p:not(:last-child) {
	margin: 0 0 15px 0;
}

.sub_section .sub_caption {
	font-size: 2.5em;
	line-height: 1.1;
	font-weight: 700;
}

.sub_section .sub_intro {
	margin: 30px 0;
	font-size: 1.3em;
	font-weight: 700;
}

.c-section_head {
	margin: 0 0 150px 0;
}

h3 + h4 {
	margin: 75px 0 0 0;
}


dl.c-type01 dt {
	width: 170px;
	padding: 20px 5px 20px 5px;
	float: left;
	clear: both;
}

dl.c-type01 dd {
	margin-left: 170px;
	padding: 20px 5px 20px 5px;
	border-bottom: 1px #CDD6DD solid;
}

dl.c-type02 dt {
	width: 170px;
	padding: 15px 5px 15px 5px;
	float: left;
	clear: both;
}

dl.c-type02 dd {
	margin-left: 170px;
	padding: 15px 5px 15px 5px;
}

dl.c-type02 dt:nth-of-type(n+2), dl.c-type02 dd:nth-of-type(n+2) {
	border-top: 1px #CDD6DD solid;
}

dl.c-type02 {
	border-bottom: 1px #CDD6DD solid;
}

dl.c-type03 dt {
	width: 35%;
	padding: 15px 5px 15px 5px;
	float: left;
	clear: both;
	border-top: 1px #fff solid;
}

dl.c-type03 dd {
	margin-left: 35%;
	padding: 15px 5px 15px 5px;
	border-top: 1px #fff solid;
	border-left: 1px #fff solid;
}

dl.c-type03 {
	text-align: center;
	border-bottom: 1px #fff solid;
}

dl.c-type04 dt {
	width: 50%;
	padding: 15px 5px 15px 5px;
	float: left;
	clear: both;
	border-top: 1px #203C6B solid;
}

dl.c-type04 dd {
	margin-left: 50%;
	padding: 15px 5px 15px 5px;
	border-top: 1px #203C6B solid;
	border-left: 1px #203C6B solid;
}

dl.c-type04 {
	text-align: center;
	border-bottom: 1px #203C6B solid;
}


.c-sec_box {
	width: 100%;
}

.c-sec_box .left {
	width: 30%;
	float: left;
}

.c-sec_box .right {
	width: 65%;
	float: right;
}

.c-sec_box .left2 {
	width: 48%;
	float: left;
}

.c-sec_box .right2 {
	width: 48%;
	float: right;
}

.c-sec_box .left3 {
	width: 60%;
	float: left;
}

.c-sec_box .right3 {
	width: 35%;
	float: right;
}



/* ------ home ------ */
.p-home {}

/*
.p-home__message {
	margin-bottom: 50px;
	padding: 460px 140px;
	background: url(../../img/main.png) no-repeat 480px -120px;
	text-align: center;
}
*/

.p-home__message {
	margin-bottom: 50px;
	padding: 460px 140px;
	position: relative;
}

.p-home__messag__bg01 {
	width: 950px;
	height: 1280px;
	left: 480px;
	top: -120px;
	position: absolute;
	background: url(../../img/bg_main.jpg) no-repeat 0 0;
	background-size: auto 100%;
	clip-path: polygon(950px 50%, 0 0, 0 1280px);
	z-index: -1;
	animation: slide 30s 1 linear;
}
.p-home__messag__bg02 {
	width: 950px;
	height: 1280px;
	left: 570px;
	top: -120px;
	position: absolute;
	background-color: #47ACC3;
	clip-path: polygon(950px 50%, 0 0, 0 1280px);
	z-index: -2;
}

@keyframes slide {
	from {
		background-position: -300px 0;
	}
	to {
		background-position: 0 0;
	}
}


.p-home__message img {
	max-width: 100%;
}
.p-home__body {
	margin-bottom: 300px;
}
.p-home__body p {
	line-height: 2;
	color: #2A2B2D;
}

.p-home__sec01 {
	margin-bottom: 245px;
	padding-right: 50%;
	background: url(../../img/sec_01b.png) no-repeat right top;
	min-height: 600px;
	position: relative;
}
.p-home__sec01::after {
	content: '';
	position: absolute;
	bottom: 0;
	right: 0;
	height: 0;
	border-bottom: 290px solid #F0F3F5;
	border-left: 460px solid transparent;
}
.p-home__sec01::before {
	content: '';
	position: absolute;
	bottom: -290px;
	right: 0;
	height: 0;
	border-top: 290px solid #F0F3F5;
	border-left: 460px solid transparent;
}
.p-home__sec01 p {
	margin-bottom: 60px;
}

.p-home__sec02__head {
	margin-bottom: 130px;
}
.p-home__sec02__head img {
	width: 305px;
}
.p-home__sec02__head p {
	margin-top: 30px;
	color: #004B86;
}
.p-home__sec02__body {
	padding: 60px;
	min-height: 600px;
	position: relative;
}

.p-home__sec02__body.c-sec02__01::before {
	content: '';
	position: absolute;
	width: 100%;
	bottom: 0;
	right: 0;
	height: 800px;
	background: url(../../img/sec_02b.png) no-repeat right bottom;
	background-size: cover;
	z-index: -1;
}
.p-home__sec02__body.c-sec02__01::after {
	content: '';
	position: absolute;
	width: 1153px;
	bottom: -600px;
	left: 0;
	height: 1297px;
	background: url(../../img/sec_02d.png) no-repeat 600px top;
	z-index: -2;
}

.p-home__sec02__body.c-sec02__02::before {
	content: '';
	position: absolute;
	width: 100%;
	bottom: 0;
	right: 0;
	height: 600px;
	background: url(../../img/sec_02e.png) no-repeat right bottom;
	background-size: cover;
	z-index: -1;
}
.p-home__sec02__body.c-sec02__02::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: initial;
	right: 0;
	height: 0;
	border-bottom: 125px solid #fff;
	border-right: none;
	border-left: 200px solid transparent;
}

.p-home__sec02__body::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: 0;
	height: 0;
	border-bottom: 125px solid #fff;
	border-right: 200px solid transparent;
}
.p-home__sec02__body > div {
	width: 60%;
	padding: 30px;
	background-color: rgba(255, 255, 255, 0.75);
}
.p-home__sec02__body h3 {
	margin-bottom: 30px;
}
.p-home__sec02__body p {
  margin-bottom: 60px;
}
.p-home__sec02__body .c-link01 {
	margin: 0 0 0 auto;
}

.p-home__sec02__body:last-child {
	background: url(../../img/sec_02c.png) no-repeat right top;
	position: relative;
}
.p-home__sec02__body:last-child::after {
	content: '';
	position: absolute;
	bottom: 0;
	left: initial;
	right: 0;
	height: 0;
	border-bottom: 125px solid #fff;
	border-right: none;
	border-left: 200px solid transparent;
}


.p-service .l-contents {
	padding-top: 280px;
}
.p-service__message {
	margin-bottom: 130px;
	text-align: center;
}

.p-service__message + .p-service__body {
	text-align: center;
	display: flex;
	flex-flow: wrap;
	gap: 130px 0;
}
.p-service__message + .p-service__body > div {
	width: 100%;
}
.p-service__body h2 {
	font-size: 1.8em;
	margin-bottom: 15px;
}
.p-service__body h3 {
	font-size: 1.25em;
	font-weight: 400;
}

.p-service__sec01 ul {
	margin-top: 60px;
	gap: 30px;
}
.p-service__sec01 ul li {
	width: calc(50% - 15px);
	padding: 70px 20px 25px 20px;
	background: #004B86;
	background: linear-gradient(180deg,rgba(0, 75, 134, 1) 0%, rgba(0, 208, 255, 1) 100%);
	color: #fff;
	border-radius: 5px;
}
.p-service__sec01 ul li p:first-child {
	margin-bottom: 30px;
	font-size: 4.4em;
	font-weight: 700;
	line-height: 1;
}
.p-service__sec01 ul li p:first-child span {
	font-size: 0.4em;
}

.p-service__sec02 p:last-child {
	margin-top: 60px;
}

.p-service__sec03 ul {
	padding: 0 40px;
	gap: 60px 120px;
}
.p-service__sec03 ul li {
	width: calc(100% / 3 - 80px);
	padding: 0 0 30px 0;
	color: #2A2B2D;
	position: relative;
}
.p-service__sec03 ul li h3 {
	margin-bottom: 30px;
	font-size: 2.0em;
	font-weight: 400;
	color: #0097CB;
	line-height: 1;
}
.p-service__sec03 ul li h3 span {
	margin-left: 5px;
	font-size: 1.6em;
}
.p-service__sec03 ul li p:first-of-type {
	margin-bottom: 20px;
	padding-bottom: 20px;
	border-bottom: 1px #00BDE3 solid;
	font-weight: 700;
	font-size: 1.25em;
}
.p-service__sec03 ul li a:hover {
	color: initial;
	opacity: 0.6;
}
.p-service__sec03 ul li::after {
	content: '';
	width: 10px;
	height: 10px;
	border: 0;
	border-bottom: solid 2px #004B86;
	border-right: solid 2px #004B86;
	transform: rotate(45deg);
	position: absolute;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
}


.p-fase {
	gap: 100px 0;
}
.p-fase > div {
	width: 100%;
}
.p-fase__head {
	text-align: left;
}
.p-fase__head p:first-child {
	margin-bottom: 15px;
	padding: 8px 10px 10px 10px;
	background-color: #A2D5E1;
	color: #fff;
	font-size: 1.8em;
	line-height: 1;
	display: inline-block;
}
.p-service__fase1 h2 img {
	width: 300px;
}

.p-service__fase1 > div:nth-child(2) h3 {
	margin-bottom: 30px;
	color: #004B86;
	font-size: 1.4em;
	position: relative;
}
.p-service__fase1 > div:nth-child(2) h3::before {
	content: '';
	position: absolute;
	width: 100%;
	top: -15px;
	right: 0;
	left: 0;
	height: 94px;
	background: url(../../service/img/fase1_bg1.png) no-repeat center top;
	z-index: -1;
}
.p-service__fase1 > div:nth-child(2) ul {
	gap: 30px 30px;
}
.p-service__fase1 > div:nth-child(2) ul li {
	width: calc(100% / 3 - 20px);
	padding: 35px 10px 30px 10px;
	color: #fff;
	background: #A9CAE3;
background: linear-gradient(180deg,rgba(169, 202, 227, 1) 0%, rgba(141, 227, 248, 1) 55%, rgba(255, 255, 255, 1) 88%, rgba(255, 255, 255, 1) 100%);
	border-radius: 5px;
	box-shadow: rgba(60, 64, 67, 0.1) 0px 1px 3px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
	display: flex;
	flex-flow: wrap;
	gap: 25px 0;
}
.p-service__fase1 > div:nth-child(2) ul li > p {
	width: 100%;
	font-size: 1.2em;
}
.p-service__fase1 > div:nth-child(2) ul li p:last-child {
	color: #707070;
}
.p-service__fase1 > div:nth-child(2) h4 {
	margin-top: 30px;
	color: #707070;
	font-size: 1.4em;
	font-weight: 400;
	position: relative;
}
.p-service__fase1 > div:nth-child(2) h4::before {
	content: '';
	position: absolute;
	width: 100%;
	top: -35px;
	right: 0;
	left: 0;
	height: 94px;
	background: url(../../service/img/fase1_bg2.png) no-repeat center top;
	z-index: -1;
}

.p-service__fase1 > div:nth-child(2) ul li p:nth-child(2) {
	line-height: 1;
	position: relative;
}
.p-service__fase1 > div:nth-child(2) ul li p:nth-child(2)::after {
	content: '';
	padding-left: 5px;
	border-right: 1px #fff solid;
	position: absolute;
	height: 55px;
	margin: auto;
	top: 0;
	bottom: 0;
	right: 132px;
}
.p-service__fase1 > div:nth-child(2) ul li p:nth-child(2)::before {
	content: '';
	height: 10px;
	border-right: solid 1px #fff;
	transform: rotate(45deg);
	position: absolute;
	right: 129px;
	bottom: -18px;
	margin: auto;
}
.p-service__fase1 > div:nth-child(2) ul li > p img {
	width: 100%;
}

.p-service__fase1 > div:nth-child(3) h2 {
	margin-bottom: 95px;
}
.p-service__fase1 > div:nth-child(3) ul {
	gap: 30px 30px;
}
.p-service__fase1 > div:nth-child(3) ul li {
	width: calc(100% / 3 - 20px);
	padding: 25px 10px 25px 10px;
	color: #2A2B2D;
	background: #fff;
	border-radius: 5px;
	box-shadow: rgba(60, 64, 67, 0.1) 0px 1px 3px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
	display: flex;
	flex-flow: wrap;
	gap: 25px 0;
}
.p-service__fase1 > div:nth-child(3) ul li img {
	max-width: 200px;
}
.p-service__fase1 > div:nth-child(3) ul li > p {
	width: 100%;
}
.p-service__fase1 > div:nth-child(3) ul li > p:nth-child(2) {
	font-size: 1.2em;
	color: #004B86;
	font-weight: 700;
}

.p-service__fase1 > div:nth-child(4) div:first-child {
	margin-bottom: 90px;
}
.p-service__fase1 > div:nth-child(4) ul {
	margin-top: 35px;
	gap: 30px 30px;
}
.p-service__fase1 > div:nth-child(4) ul li {
	width: calc(100% / 2 - 15px);
	padding: 20px 20px 20px 20px;
	color: #2A2B2D;
	background: #fff;
	text-align: left;
	border-radius: 5px;
	box-shadow: rgba(60, 64, 67, 0.1) 0px 1px 3px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
	display: flex;
	flex-flow: wrap;
	gap: 25px 0;
}
.p-service__fase1 > div:nth-child(4) ul li > p {
	width: 100%;
}
.p-service__fase1 > div:nth-child(4) ul li p:nth-child(2) {
	font-size: 1.2em;
	color: #004B86;
	text-align: center;
}
.p-service__fase1 > div:nth-child(4) ul li p:nth-child(4) {
	position: relative;
}
.p-service__fase1 > div:nth-child(4) ul li p:nth-child(4)::after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 0 10px 15px;
	border-color: transparent transparent transparent #004B86;
	position: absolute;
	top: -7px;
	left: 0;
	right: 0;
	margin: auto;
	transform: rotate(90deg);
}
.p-service__fase1 > div:nth-child(4) ul li p img {
	max-width: 178px;
}

.p-service__fase1 > div:nth-child(5) ul {
	margin-top: 35px;
	gap: 30px 30px;
}
.p-service__fase1 > div:nth-child(5) ul li {
	width: calc(100% / 3 - 20px);
	padding: 20px 20px 20px 20px;
	color: #2A2B2D;
	background: #fff;
	text-align: left;
	border-radius: 5px;
	box-shadow: rgba(60, 64, 67, 0.1) 0px 1px 3px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
	display: flex;
	flex-flow: wrap;
	gap: 20px 0;
}
.p-service__fase1 > div:nth-child(5) ul li > p {
	width: 100%;
}
.p-service__fase1 > div:nth-child(5) ul li p:nth-child(2) {
	font-size: 1.2em;
	color: #004B86;
	text-align: center;
}
.p-service__fase1 > div:nth-child(5) ul li img {
	max-width: 178px;
}

.p-service__fase2 {
	background: url(../../service/img/fase_bg.png) no-repeat center top;
}
.p-service__fase2 h4 {
	margin-bottom: 25px;
	font-size: 1.6em;
	color: #004B86;
}
.p-service__fase2 h5 {
	margin-bottom: 25px!important;
	font-size: 1.4em!important;
	color: #2A2B2D!important;
}
.p-service__fase2 > div:nth-child(2) p:nth-child(3) {
	margin: 35px auto 35px auto;
}
.p-service__fase2 > div:nth-child(2) p:nth-child(3) img {
	max-width: 556px;
	width: 100%;
}
.p-service__fase2 > div:nth-child(3) ul {
	margin-top: 35px;
	gap: 30px 30px;
}
.p-service__fase2 > div:nth-child(3) ul li {
	width: calc(100% / 2 - 15px);
	padding: 20px 20px 20px 20px;
	color: #2A2B2D;
	background: #fff;
	text-align: left;
	border-radius: 5px;
	box-shadow: rgba(60, 64, 67, 0.1) 0px 1px 3px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
	display: flex;
	flex-flow: wrap;
	gap: 20px 0;
}
.p-service__fase2 > div:nth-child(3) ul li > p {
	width: 100%;
}
.p-service__fase2 > div:nth-child(3) ul li p:first-child {
	width: auto;
	margin: -20px 0 0 -20px;
	padding: 8px 10px 10px 10px;
	background-color: #A2D5E1;
	line-height: 1;
	display: inline-block;
	color: #fff;
}
.p-service__fase2 > div:nth-child(3) ul li p:nth-child(2) {
	text-align: center;
}

.p-service__fase2 > div:nth-child(3) ul li p:nth-child(3) {
	font-size: 1.2em;
	color: #47ACC3;
	text-align: center;
}

.p-service__fase2 > div:nth-child(3) ul li p:nth-child(4),
.p-service__fase2 > div:nth-child(3) ul li p:nth-child(6) {
	padding-left: 95px;
	background: url(../../service/img/fase2-bg01.png) no-repeat left top;
	min-height: 76px;
	display: flex;
	align-items: center;
}
.p-service__fase2 > div:nth-child(3) ul li p:nth-child(6) {
	background: url(../../service/img/fase2-bg02.png) no-repeat left top;
}

.p-service__fase2 > div:nth-child(3) ul li p:nth-child(5) {
	position: relative;
}
.p-service__fase2 > div:nth-child(3) ul li p:nth-child(5)::after {
	content: '';
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 0 10px 15px;
	border-color: transparent transparent transparent #47ACC3;
	position: absolute;
	top: -7px;
	left: 0;
	right: 0;
	margin: auto;
	transform: rotate(90deg);
}
.p-service__fase2 > div:nth-child(3) ul li img {
	max-width: 128px;
}

.p-service__fase3 {
	background: url(../../service/img/fase_bg.png) no-repeat center top;
}
.p-service__fase3 h4 {
	margin-bottom: 10px;
	font-size: 1.4em;
	color: #004B86;
}
.p-service__fase3 > div:nth-child(2) {
	padding-left: 350px;
	text-align: left;
	background: url(../../service/img/fase3_bg1.png) no-repeat left bottom;
	gap: 50px 0;
}
.p-service__fase3 > div:nth-child(2) div ul {
	gap: 30px 30px;
}
.p-service__fase3 > div:nth-child(2) div ul li {
	width: calc(100% / 2 - 15px);
	padding: 20px 20px 20px 20px;
	color: #2A2B2D;
	background: #fff;
	text-align: left;
	border-radius: 5px;
	box-shadow: rgba(60, 64, 67, 0.1) 0px 1px 3px 0px, rgba(60, 64, 67, 0.15) 0px 2px 6px 2px;
	display: flex;
	flex-flow: wrap;
	gap: 20px 0;
}
.p-service__fase3 > div:nth-child(2) div ul li > p {
	width: 100%;
}
.p-service__fase3 > div:nth-child(2) div ul li p:first-child {
	color: #47ACC3;
	font-size: 1.2em;
}

.p-service__fase3 > div:nth-child(3) ul {
	margin-top: 35px;
	padding: 0 100px;
	gap: 30px 30px;
}
.p-service__fase3 > div:nth-child(3) ul li {
	width: calc(100% / 3 - 20px);
	color: #2A2B2D;
	text-align: left;
	display: flex;
	flex-flow: wrap;
	gap: 20px 0;
}
.p-service__fase3 > div:nth-child(3) ul li > p {
	width: 100%;
}

.p-service__banner ul {
	gap: 16px;
}
.p-service__banner ul li {
	width: calc(50% - 8px);
}
.p-service__banner ul li:first-child {
	background: url(../../service/img/b_001.png) no-repeat right center;
	background-size: cover;
}
.p-service__banner ul li:last-child {
	background: url(../../service/img/b_002.png) no-repeat right center;
	background-size: cover;
	color: #fff;
}
.p-service__banner ul li a {
	width: 100%;
	display: block;
	padding: 100px 20px;
	color: #26282A;
	font-size: 1.8em;
}
.p-service__banner ul li:last-child a {
	color: #fff;
}




/* ------ company ------ */
.p-company {
	/*background: url(../../common/img/bg_line.png) no-repeat left 300px;*/
}
.p-company .c-topcontents {
	background: url(../../company/img/bg_main01.jpg) no-repeat center top;
	background-size: cover;
}
.p-company h2 {
	margin-bottom: 10px;
}
.p-company__message {
	gap: 25px 10px;
	align-items: flex-end;
}
.p-company__message > div:first-child {
	width: 600px;
	order: 2;
}
.p-company__message > div:first-child p:not(:last-child) {
	margin-bottom: 0.8em;
}
.p-company__message > div:last-child {
	width: calc(100% - 600px - 10px);
	order: 1;
}



/* ------ seminor ------ */
.p-seminor__message {
	margin-bottom: 200px;
	padding: 460px 150px;
	background: url(../../seminor/img/main.jpg) no-repeat center top;
	background-size: cover;
	color: #2A2B2D;
}
.p-seminor__message img {
	max-width: 100%;
}
.p-seminor__message p {
	margin-top: 100px;
	font-size: 1.25em;
}

.p-seminor .sec01 .sub_section2 p:not(:last-child) {
	margin: 0 0 15px 0;
}

.p-seminor .link_normal {
	margin-top: 20px;
}
.p-seminor .link_normal a {
	padding: 6px 40px 6px 22px;
	border-radius: 6px;
	background-color: #777;
}

.p-seminor .sec01 h6 {
	padding: 5px 10px;
	display: inline-block;
	background-color: #006FFF;
	color: #fff;
	font-weight: 700;
}

.p-seminor .sec03 ul {
	margin-top: 20px;
}

.p-seminor .sec04 h6 {
	margin: 0 0 20px 0;
	color: #004BB1;
}

.p-seminor .sec05 {
	margin-top: -2px;
	position: relative;
	color: #fff;
}
.p-seminor .sec05::before {
    content: '';
    position: absolute;
    top: 0;
    bottom: 0;
    left: 0;
    right: 0;
    background-color: #006FFF;
    transform: skewY(-4deg);
	z-index: -1;
}

.p-seminor .sec05 .c-sec_box .left3 {
	font-weight: 700;
	font-size: 1.25em;
}

.p-seminor .sec05 .c-sec_box .right3 {
	padding: 40px;
	background-color: #203C6B;
}

.p-seminor .sec05 .c-sec_box .right3 p span {
	margin: 0 0 5px 0;
	display: block;
	font-size: 1.25em;
	font-weight: 700;
}

.p-seminor .sec05 .c-sec_box .right3 p:nth-child(n+2) {
	margin: 30px 0 0 0;
}

.p-seminor .sec05 ul {
	margin-bottom: 20px;
}

.p-seminor .c-info {
	padding: 20px;
	border: 6px #ddd solid;
	background-color: #fff;
	color: #666;
}




/* ------------------------------------------ */
/* --------------- SP setting --------------- */
/* ------------------------------------------ */

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

html{
	min-width: 240px;
}

body {
	min-width: 240px;
	font-size: 14px;
	background: none;
}

.sp_only {
	display: block;
}
.pc_only {
	display: none;
}

.c-inner {
	width: 100%;
	padding: 0 15px;
}

h1 {
	font-size: 3.0em;
}
h2 {
	font-size: 2.0em;
	margin: 0 0 30px 0;
}
h3 {
	font-size: 1.2em;
	margin-bottom: 25px;
}
h4 {
	font-size: 1.5em;
}
h2 + h4 {
	margin: 30px 0 0 0;
}
h3 + h4 {
	margin: 30px 0 0 0;
}
h5 {
	font-size: 1.2em;
}
h6 {
	font-size: 1.1em;
}


.l-header {
	padding: 10px;
}
.l-header__inner > div:last-child {
	width: 100%;
	top: 50px;
	z-index: 10;
}
.l-header__logo img {
	width: auto;
	height: 40px;
}

.l-header__gmenu {
	width: 100%;
	margin: 0;
	display: none;
	float: none;
	background: none;
	position: fixed;
	border-bottom: none;
	top: 50px;
	right: 0;
}
.l-header__gmenu ul {
	display: block;
}
.l-header__gmenu ul li {
	width: 100%;
	margin-left: 0;
	padding: 0;
	border-bottom: 1px #ccc solid;
	text-align: left;
	background: none;
}
.l-header__gmenu ul li:first-child{
	padding: 0;
	border-left: none;
}
.l-header__gmenu ul li a {
	padding: 15px 10px 15px 26px;
	background-color: #fff;
	display: block;
	font-size: 16px;
	position: relative;
	height: auto;
}
.l-header__gmenu ul li a::before{
	content: '';
	width: 6px;
	height: 6px;
	border: 0px;
	border-top: solid 2px #004BB1;
	border-right: solid 2px #004BB1;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	position: absolute;
	top: 50%;
	left: 10px;
	margin-top: -4px;
}
.l-header__gmenu ul li:last-child {
	display: block;
}

.l-footer {
	padding: 0;
}
.l-footer ul {
	display: none;
}
.l-footer__inner {
	padding: 50px 20px;
}
.l-footer__inner > div:first-child,
.l-footer__inner > div:last-child {
	width: 100%;
	padding: 0;
	text-align: center;
}
.l-footer__inner > div:first-child img {
	max-width: 200px;
}
.l-footer__name h5 {
	font-size: 1.5em;
}
.l-footer__name p {
	font-size: 1.0em;
}
.l-footer2 {
	padding: 20px 10px;
}
.l-footer2__inner > div:first-child,
.l-footer2__inner > div:last-child {
	width: 100%;
}
.l-footer2__inner ul {
	justify-content: center;
}
.l-footer2__inner > div:first-child {
	font-size: 0.8em;
	text-align: center;
}

.l-contents {
	margin: 0 auto 150px auto;
}


.c-navi {
	width: 50px;
	height: 50px;
	padding: 13px 15px;
	display: block;
}

.c-overlay {
	display: block;
}

.c-inner {
	width: 100%;
	padding: 0 20px;
}

.c-contactLink {
	display: none;
}


.c-section:not(:last-child) {
	margin: 0 0 120px 0;
}

.c-section_head {
	margin: 0 0 80px 0;
	text-align: center;
}

.c-section_head h2 br, .c-section_head h4 br {
	display: none;
}

.c-section_head h2 span, .c-section_head h4 span {
	display: block;
}


.c-section .sub_section:nth-of-type(n+2) {
	margin-top: 100px;
}

.c-section .sub_section2:nth-child(n+2) {
	margin-top: 35px;
}


.head_title {
	padding: 80px 0 0 0;
	text-align: center;
}

.head_title .sub_title {
	font-size: 1.2em;
}

.c-section .c-inner.p_tm {
	padding-top: 80px;
	padding-bottom: 80px;
}

.c-section .c-inner.p_tm2 {
	padding-top: 80px;
	padding-bottom: 80px;
}

.c-section .c-inner.p_tm3 {
	padding-top: 80px;
	padding-bottom: 200px;
}

.c-section .c-inner.p_tm4 {
	padding-top: 80px;
	padding-bottom: 160px;
}

.c-contact__head, .c-contact__head2 {
	margin-bottom: 40px;
}



.c-contact,
.c-contact2 {
	background: none;
}
.contact_box .left, .contact_box .right {
	width: 100%;
	float: none;
}
.contact_box textarea {
	height: 150px;
}
.concat_type {
	margin-bottom: 25px;
}
.contact_box input[type="radio"] + label, .contact_box input[type="checkbox"] + label {
	display: block;
}
.contact_box label {
	width: 90%;
}

.c-scroll {
	display: none;
}

.c-topcontents {
	margin: 0 0 100px 0;
	position: relative;
	z-index: -1;
}

.c-topcontents .c-inner {
	height: 1000px;
}

.c-flex > * {
	width: 100%!important;
}


dl.c-type01 dt {
	width: 120px;
	padding: 15px 5px 15px 5px;
}

dl.c-type01 dd {
	margin-left: 120px;
	padding: 15px 5px 15px 5px;
}



/*
.p-home__message {
	padding: 200px 60px;
	background: url(../../img/bg_main01_202506.png) no-repeat center -220px;
}
*/
.p-home__message {
	margin-bottom: 0;
	padding: 0;
	background: none;
}

.p-home__messag__bg01,
.p-home__messag__bg02 {
	display: none;
}

.p-home__body {
	margin-bottom: 150px;
}
.p-home__sec01 {
	margin-bottom: 145px;
	padding: 50px 25px;
	min-height: initial;
	background-size: contain;
	background-position: left bottom;
}
.p-home__sec01::after {
	border-bottom: 80px solid #F0F3F5;
	border-left: 150px solid transparent;
}
.p-home__sec01::before {
	bottom: -80px;
	border-top: 80px solid #F0F3F5;
	border-left: 150px solid transparent;
}

.p-home__sec02__head img {
	width: 200px;
}
.p-home__sec02__head {
	margin-bottom: 50px;
}
.p-home__sec02__body {
	padding: 30px;
	min-height: auto;
}
.p-home__sec02__body p {
	margin-bottom: 30px;
}
.p-home__sec02__body.c-sec02__01::before {
	height: 600px;
}
.p-home__sec02__body.c-sec02__02::before {
	height: 500px;
}
.p-home__sec02__body,
.p-home__sec02__body:last-child {
	padding: 30px 30px 60px 30px;
	min-height: initial;
	background-size: cover;
	background-position: right bottom;
}
.p-home__sec02__body > div {
	width: 100%;
	padding: 20px;
}
.p-home__sec02__body::after {
	border-bottom: 65px solid #fff;
	border-right: 100px solid transparent;
}
.p-home__sec02__body:last-child::after {
	border-bottom: 65px solid #fff;
	border-left: 100px solid transparent;
}
.p-home__sec02__body.c-sec02__01::after {
	background: none;
	width: auto;
}
.p-home__sec02__body.c-sec02__02::after {
	border-bottom: 65px solid #fff;
	border-left: 100px solid transparent;
}

.p-service .l-contents {
	padding-top: 0;
}
.p-service__message {
	margin-bottom: 0;
	padding: 0;
}
.p-service__sec01 ul {
	gap: 16px;
}
.p-service__sec01 ul li {
	width: calc(50% - 8px)!important;
	padding: 40px 10px 15px 10px;
}
.p-service__sec01 ul li p:last-child {
	text-align: left;
}

.p-fase {
	gap: 60px 0;
}
.p-service__body h3 {
	font-size: 1.15em;
	margin-bottom: 0;
}
.p-service__body h2 span,
.p-service__body h3 span,
.p-service__body h4 span,
.p-service__body h5 span {
	display: block;
}
.p-service__fase1 > div:nth-child(3) h2 {
	margin-bottom: 35px;
}
.p-service__fase1 > div:nth-child(4) div:first-child {
	margin-bottom: 35px;
}
.p-service__fase2 {
	background: none;
}
.p-service__fase3 {
	background: none;
}

.p-service__fase1 > div:nth-child(2) ul,
.p-service__fase3 > div:nth-child(3) ul,
.p-service__fase3 > div:nth-child(4) ul {
	padding: 0 30px;
}
.p-service__fase1 > div:nth-child(2) ul,
.p-service__fase1 > div:nth-child(3) ul,
.p-service__fase1 > div:nth-child(4) ul,
.p-service__fase1 > div:nth-child(5) ul,
.p-service__fase2 > div:nth-child(4) ul,
.p-service__fase3 > div:nth-child(3) ul,
.p-service__fase3 > div:nth-child(4) ul {
	gap: 16px;
}
.p-service__fase1 > div:nth-child(3) ul li,
.p-service__fase3 > div:nth-child(4) ul li {
	width: calc(50% - 8px)!important;
}
.p-service__fase1 > div:nth-child(2) ul li {
	padding: 15px 10px 15px 10px;
}
.p-service__fase1 > div:nth-child(2) ul li br {
	display: none;
}
.p-service__fase1 > div:nth-child(3) ul li > p:last-child {
	text-align: left;
}
.p-service__fase1 > div:nth-child(3) ul li > p:last-child br {
	display: none;
}

.p-service__fase1 > div:nth-child(4) div:first-child {
	max-width: 70%;
}
.p-service__fase1 > div:nth-child(5) ul li {
	justify-content: flex-end;
	position: relative;
}
.p-service__fase1 > div:nth-child(5) ul li > p {
	width: calc(100% - 130px);
	text-align: left!important;
}
.p-service__fase1 > div:nth-child(5) ul li > p:first-child {
	width: 130px;
	position: absolute;
	left: 0;
	top: 0;
}

.p-service__fase1 h2 img {
	width: 200px;
}

.p-service__fase1 ul li img,
.p-service__fase2 ul li img,
.p-service__fase3 ul li img {
	max-width: 128px!important;
}
.p-service__fase1 > div:nth-child(2) ul li > p img {
	max-width: 200px!important;
}

.p-service__fase3 {
	gap: 50px 0!important;
}
.p-service__fase3 > div:nth-child(2) {
	padding-left: 150px;
}
.p-service__fase3 > div:nth-child(3) ul {
	border-bottom: 1px #eee solid;
}
.p-service__fase3 > div:nth-child(3) ul li {
	border-top: 1px #eee solid;
}
.p-service__fase3 > div:nth-child(3) ul li > p:first-child {
	width: 150px;
}
.p-service__fase3 > div:nth-child(3) ul li > p:last-child {
	width: calc(100% - 150px);
	display: flex;
	align-items: center;
}

.p-service__banner ul li a {
	padding: 50px 20px;
}


.p-company .c-topcontents {
	background: url(../../company/img/bg_main01_sp.jpg) no-repeat center top;
	background-size: 100% auto;
	background-position: center top;
}
.p-company .c-topcontents .c-inner {
	height: 600px;
}
.p-company .c-topcontents .c-inner div {
  padding: 350px 0 0 50px;
}
.p-company .c-topcontents .c-inner div h1 {
	font-size: 2.0em;
}
.p-company .c-topcontents .c-inner div p {
	font-size: 1.5em;
}

.p-company__message {
	padding-left: 0;
}


.p-seminor__message {
	margin-bottom: 0;
	padding: 0;
	background: none;
}
.p-seminor__message p {
	display: none;
}

.p-seminor .c-sec_box .left3 {
	width: 100%;
	margin-bottom: 50px;
}
.p-seminor .c-sec_box .right3 {
	width: 100%;
}

.p-seminor .c-topcontents {
	margin-bottom: 0;
	background: none;
}

.p-seminor__message div:first-child {
	display: none;
}
.p-seminor__message div:last-child {
	display: block;
}




}
