@charset "UTF-8";

/*!
Theme Name: Simplicity2 child
Template:   simplicity2
Version:    20161002
*/

@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);

#body {
	margin:0px 0 0 0!important;
	font-size: 16px;
	letter-spacing: 0.14em;
	line-height: 1.8;
	font-family: 'Noto Sans JP', sans-serif;
	color: #000;
	min-width: 100%;
	padding-top:75px;
}

html {
	margin: 0!important;
}

p {
	margin: 0;
}

hr {
	border: none;
}

footer {
	font-size: 14px;
}

/* a {
color: #e5ba00;
} */

h2.main-title {

	/* 	width: 180px; */
}

h2.main-title {
	margin: 0;
	text-align:center;
	position: relative;
	display: inline-block;
	padding:0 20px 10px 35px;
	font-size: 18px;
	line-height: 1.5;
}

h2.main-title::before,
h2.main-title::after {
	content: '';
	position: absolute;
	top: 0;
	width: 10px;
	height: 100%;
	border-top: 3px solid #2589d0;
	border-bottom: 3px solid #2589d0;
}
h2.main-title::before {
	left: 0;
	border-left: 3px solid #2589d0;
}
h2.main-title::after {
	right: 0;
	border-right: 3px solid #2589d0;
}

h4 {
	margin-bottom: 20px;
	padding: 0 0 0 20px;
	background-image:linear-gradient(#0099ff 50%, #002B5B 50%);
	background-repeat: no-repeat;
	background-size: 0.5rem 100%;
	font-weight: bold;
	font-size: 18px;
	color: #002B5B;
}


hr.hr-10 {
	border: none;
	padding: 10px 0;
	margin: 0;
}

.text-center {
	text-align: center;
}

#bbp-new-topic a{
	/* 	color:#1f3b59; */
}

#footer{
	background-color:#002B5B;
	color:#fff;
}

#footer .footer-logo-list {
	padding: 0;
	margin: 3rem auto;
	display: flex;
	justify-content: center;
	gap: 20px;
	list-style: none;
}

#footer .footer-logo-list img {
	width: 220px;
	height: auto;
}

#footer-navi {
	margin-bottom: 30px;
}

#footer-navi ul {
	text-align: center;
}
#footer-navi ul li a {
	color: #fff;
	font-family: 'Noto Sans JP', sans-serif;
}

#footer-navi ul li a:hover {
	opacity: 0.5;
}

#navi ul li a {
	color: #000;
	font-family: 'Noto Sans JP', sans-serif;
	font-size:16px;
}

#navi ul li a:hover {
	opacity: 0.5;
	background: none!important;
}

.privacy dt {
	width: 100%;
}

.privacy dd {
	width: 100%;
	margin: 0 0 20px 0;
}

.map a {
	color: #555;
}

.map a:hover {
	color: #fed61f;
}

#sidebar,
.top-sns-follows {
	display: none;
}

.c-head span {
	color: #E23E57;
	font-size: 11px;
	display: inline-block;
	margin: 0 0 0 5px;
}

input[type="text"], input[type="password"], input[type="datetime"], input[type="datetime-local"], input[type="date"], input[type="month"], input[type="time"], input[type="week"], input[type="number"], input[type="email"], input[type="url"], input[type="search"], input[type="tel"], input[type="color"], select, textarea, .field {
	color: #323232;
	border-radius: 0px;
	vertical-align: middle;
	box-shadow: none;
	border: 0;
	width: 100%;
	background-color: #e8ebee;
	border: none;
	margin: 4px 0 20px 0;
	font-size: 14px;
}
.wpcf7 input[name="your-time"] {
	width: 120px;
}

input:focus, textarea {
	outline: 0;
}

input[type="text"]:focus, input[type="password"]:focus, input[type="email"]:focus, input[type="search"]:focus, input[type="url"]:focus, input[type="tel"]:focus, textarea:focus {
	border: none;
	background: #e8ebee;
	box-shadow: none;
}

textarea {
	resize: none;
}

/* input, textarea {
-webkit-appearance: none;
} */

#main {
	border: none;
	padding: 0;
	width: 100%;
	background: none;
}

div#header-in, div#body-in, div#footer-in {
	width: 100%!important;
}

header {
	position: relative;
	width: 100%;
	z-index: 99;
	position:fixed;
	background:#fff;
	height:90px;
	box-shadow: 0px 0px 5px 0px;
}

input[type="submit"], input[type="reset"], input[type="button"] {
	text-decoration: none;
	display: block;
	border: none;
	margin: 10px auto 0 auto;
	background: #0099ff url(/images/fi_icon01.png) no-repeat;
	background-size: 12px;
	background-position: right 10px center;
	padding: 10px 70px;
	font-size: 16px;
	color: #fff;
	border-radius: 5px;
	font-weight: normal;
	transition: .4s;
}

input[type="submit"]:hover {
	background-color: #002B5B;
	transition: .4s;
}

.alignleft {
	margin-left: 0!important;
	margin-right: 0!important;
	width: 270px!important;
	display: inline-block;
	vertical-align: middle;
}

.header-right {
	display: inline-block;
	/*     width: 720px; */
	padding: 0 0 0 20px;
	vertical-align: middle;
}

h1 {
	margin: 0;
}

.subpage-ttl2 {
	background: #fed61f;
	color: #fff;
	font-weight: bold;
	padding: 10px;
	margin: 0 0 20px 0;
	font-size:130%;
}

.ttl {
	position: relative;
	background: #E5F4FF;
	margin: 30px 0;
	padding: 20px 40px 20px;
	font-size: 20px;
	text-align: center;
}

.ttl:before {
	top: 0;
	left: 0;
}

.ttl:after {
	top: 0;
	right: 0;
	transform: rotate(180deg);
}
.ttl:before, 
.ttl:after {
	border: 2px solid #2589d0;
	border-width: 4px 0 4px 4px;
	box-sizing: border-box;
	content: '';
	display: block;
	margin: auto;
	position: absolute;
	width: .5em;
	height: 100%;
}

.sub-ttl {
	background: #CCEAFF;
	margin-bottom: 30px;
	padding: 10px;
	text-align: center;
	font-size: 24px;
	border-left: 3px solid #002B5B;
	border-right: 3px solid #002B5B;
}


.font-bold {
	font-weight: bold;
}

#navi ul {
	background: none;
	border: none;
	/* margin: 5px 0 0 0;*/
	margin: 0px;
	display:flex;
	align-items:center;
}

#navi ul a {
	/*   color: #fff!important;*/
}

.main-content {
	padding: 50px 0 0 0;
}

.head {
	text-align: center;
	color: #0099ff;
	margin: 20px 0 40px;
	font-size: 16px;
	font-weight: bold;
}

.head span {
	margin-bottom: 10px;
	display: block;
	color: #002b5b;
	font-family: "Anton", sans-serif;
	font-weight: 400;
	font-style: normal;
	font-size: 58px;
	letter-spacing: .05em;
	line-height: 1;
}

.row slick section a{
	color:#88000!important;
}

.main-btn,
.contact-btn {
	text-align: center;
}

.main-btn a,
.contact-btn a {
	text-decoration: none;
	color: #002b5b !important;
	display: inline-block;
	background: #fff;
	padding: 8px 70px;
	font-size: 16px;
	font-weight: bold;
	margin: 30px 0 0 0;
	border: 2px solid #002b5b;
	border-radius: 5px;
	transition: all .3s;
}



.contact-btn a {
	padding: 16px 120px;
	font-size: 18px;
	color: #fff !important;
	background: #0099ff!important;
	border: none;
}

.main-btn a:hover,
.contact-btn a:hover {
	color: #fff !important;
	background: #002b5b;
	border:2px solid #002b5b;
	text-decoration: none;
	transition: all .3s;
}

.contact-btn a:hover {
	padding: 8px 110px;
	border:none;
}

.news-contents {
	overflow: hidden;
	padding: 80px 0 64px 0;
}

.news-contents.reverse:before {
	margin: 6% -10% 0;
	-webkit-transform-origin: right center;
	-ms-transform-origin: right center;
	transform-origin: right center;
	-webkit-transform: rotate(-3deg);
	-ms-transform: rotate(-3deg);
	transform: rotate(-3deg);
}


.news-list {
	padding: 0;
	margin: 0;
}

.news-list li {
	list-style: none;
	padding:16px 0;
	border-bottom: 1px solid #002B5B;
}

.news-list li a {
	display: block;
	text-decoration: none;
	color: #000;
	transition: all .3s;
}

.news-list li a:hover {
	opacity: .6;
	transition: all .3s;
}

.news-list .category {
	display: inline-block;
	padding: 0 10px;
	font-size: 12px;
	margin: 0 10px;
	width:80px;
	text-align:center;
	border: none;
	background: #0099ff;
	border-radius: 3px;
}

.news-list .category a {
	color: #fff;
}

.main-bg {
	background: url(/wp-content/uploads/2026/03/menu_bg4.jpg) no-repeat;
	background-size: cover;
	background-position: center;
	padding: 74px 0 50px;
}

.main-bg2 {
	background: url(/images/hv_bg02.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.main-img {
	margin-bottom: 3rem;
	width: 50%;
}

.main-menu-list {
	text-align: center;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 30px;
}

.main-menu-list div a {
	text-decoration: none;
	color: #fff;
	font-size: 20px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	border: solid 3px #fff;
	width: 100%;
	aspect-ratio: 1 / 1;
	text-align: center;
	background: #4CB7FF;
	transition: all 0.3s;
	padding: 10px;
}

.main-menu-list div a:hover {
	color: #fff !important;
	opacity: .6;
	transition:all 0.3s;
}
.main-menu-list div a span {
	display: block;
	font-size: 14px;
	margin-top: 5px;
}

#main,
.entry-content {
	margin-bottom: 0!important;
}

h1.entry-title {
	margin: 0 !important;
	background: #002B5B;
	color: #fff;
	padding: 30px 0 30px;
	text-align: center;
	margin-bottom: 10px;
}

h2.sub-width01 {
	padding: 0.4em 0.5em;/*文字の上下 左右の余白*/
	color: #494949;/*文字色*/
	background: #f8f9fa;/*背景色*/
	border-left: solid 5px #7db4e6;/*左線*/
	border-bottom: solid 3px #d7d7d7;/*下線*/
	width:100%;
}



.subpage-text {
	padding: 50px 0;
}

.text p {
	margin: 0 0 14px 0;
}

img {
	width: 100%;
	height: auto;
}

.text-right {
	text-align: right;
	font-size: 16px;
	margin: 20px 0 0 0!important;
}

.hannari {
	font-family: "Sawarabi Mincho";
}

.subpage-ttl {
	color: #002B5B;
	font-weight: bold;
	border-bottom: solid 3px #002B5B;
	padding: 0 0 10px 0;
	margin-top:30px;
	margin-bottom:30px;
	font-size:140%;
	line-height:35px;
}

.photoarea{
	display:flex;
}

.photoarea .photoarea-child{
	width:49%;
	padding:5px;
}

.photoarea .photoarea-child p{
	text-align:right;
	padding-right:10px;
}

.photoarea .photoarea-child2{
	width:49%;
	padding:5px;
}

.photoarea .photoarea-child3{
	width:49%;
	padding:5px;
}

.photoarea .photoarea-child2 p{
	text-align:center;
}

.photoarea img{
	width:auto;
	text-align:left;
}

#service-01{
	padding-top: 70px;
	margin-top: -70px;
}

#service-02{
	padding-top: 70px;
	margin-top: -70px;
}

.subpage-ttl1 {
	color: #1f3b59;
	font-weight: bold;
	border-bottom: solid 3px #1f3b59;
	padding: 0 0 10px 0;
	margin-bottom:30px;
	font-size:150%;
	line-height:35px;
}

.no-border{
	border:0;
}

.sub-nav{
	list-style: none;
	text-align:center;
}

.sub-nav a{
	display: inline-block;
	border-radius: 3px;
	padding: 10px 30px;
	background: #1f3b59;
	/* width: 80px; */
	text-align: center;
	margin: 5px 3px;
	font-size: 16px;
	color:#ffffff;
	width:250px;
}

.sub-nav a:hover{
	display: inline-block;
	border-radius: 3px;
	border:solid 1px #1f3b59;
	padding: 9px 29px;
	background: #ffffff;
	text-align: center;
	margin: 5px 3px;
	font-size: 16px;
	color:#1f3b59;
	text-decoration:none;
}

.subpage-ttl0 {
	text-align: center;
	color: #1f3b59;
	font-size: 22px;
	font-weight: bold;
	font-family: serif;
}

.subpage-list {
	text-align: center;
	margin:40px 0;
	padding:0;
	font-size: 16px;
	font-weight:bold;
}

.subpage-lead {
	margin: 0 0 40px;
	padding:0;
	font-size: 16px;
	font-weight:bold;
	line-height: 2;
}

.organizationlist{
	background-color: rgba(237,125,49,0.5);
	color:rgba(0,0,0,0.8);
	padding:40px 15px 10px;
	line-height:1.8;
}

.organizationlist ul{
	margin-bottom:0;
	padding-left:25px;
}

.organizationlisttitle{
	background-color: #1f3b59;
	padding:5px 28px;
	text-align: center;
	width: 305px;
	margin: auto;
	color:#ffffff;
	top: 20px;
	position: relative;
	font-size:18px;
}

.supportlist{
	background-color: rgba(237,125,49,0.5);
	color:rgba(75,75,75);
	padding:45px 15px 10px;
	line-height:1.8;
}

.supportlist p{
	margin-bottom:0;
}

.supportlisttitle{
	background-color: #1f3b59;
	padding:5px 20px;
	text-align:left;
	width: 300px;
	color:#ffffff;
	top: 34px;
	position: relative;
	font-size:18px;
}



.organizationend p{
	text-align: center;
	font-size:18px;
	font-weight: bold;
	line-height: 1.8;
}


.c-head{
	font-size:16px;
	font-weight:bold;
}

.wpcf7-select{
	margin-bottom:30px;
}


dl {
	margin: 0;
}

dt {
	display: inline-block;
	width: 50%;
	vertical-align: top;
}

dd {
	margin-bottom: 5px;
	display: inline-block;
	width: 100%;
	margin: 0 0 5px 0;
}

.table01 {
	margin: 0 0 30px 0;
}

.sub-width01 img {
	margin-bottom: 12px;
}

.sub-width01 dt{
	width:20%!important;
}

.sub-width01 dd{
	width:75%!important;
}

.sub-width01 h2 {
	font-weight: bold;
	font-size: 24px;
	background-color: #fff;
	color: #1f3b59;
	padding: 10px 30px 10px 30px;
	margin: 15px 0;
	width: 100%;
	text-align: center;
	border-bottom: 2px solid #d7a700;
}

.sub-width01 h2::after {
	content: none;
}

.sub-width01 h2::before {
	content: none;
}

.sub-width01 > .row > .box-shadow {
	box-shadow: 0 2.5rem 2rem -2rem hsl(200deg 50% 20% / 10%);
}

.sub-box {
	background: #fed61f;
	color: #fff;
	padding: 20px 40px;
	border-radius: 10px;
	margin: 20px 0 0 0;
}

.icon-sns img {
	width: 24px;
}

dl dd a {
	color: #fed61f;
}

#mobile-menu a {
	color: #fff;
}

.subpage .news-list {
	padding: 50px 0;
	display: block;
}

html {
	margin-top: 0!important;
}

.single-post header {
	/*    background: #1f3b59;*/
	margin:0;
}

.single-post h1.entry-title {
	font-size: 20px;
	color:#000000;
	font-weight:bold;
	margin-bottom:40px;
}

.post-meta .category a {
	color: #fed61f;
	text-decoration: none;
	font-size: 12px;
}

#the-content {
	font-size: 14px;
	line-height: 24px;
}

#the-content p {
	margin: 0 0 14px 0;
}

#sns-group, #under-entry-body {
	display: none;
}

article header {
	background: none!important;
}

#mobile-menu,
.post-author{
	display: none;
}

.post-meta {
	font-size: 12px;
	display:none;
}

hr.hr-20 {
	border: none;
	padding: 10px 0;
	margin: 10px 0;
}

/* Company */

/*-------2019.2.26齋藤追加-------*/
.nav-phone a:before{
	font-family: "Font Awesome 5 Free";
	content: '\f095';
	font-weight: 900;
	color: #fff;
	margin: 0 5px;
}

.company .lead-ttl {
	font-size: 32px;
	text-align: center;
	margin: 2rem 0 1.2rem;
	font-weight: bold;
	color: #707070;
	font-family: "Hiragino Mincho ProN", YuMincho, serif;
	font-style: italic;
	background: linear-gradient(180deg, #0099FF 0%, #99D6FF 90%);
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
}


.company .lead-txt {
	font-family: "Hiragino Mincho ProN", YuMincho, serif;
	/*     font-style: italic; */
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	color: #444;
}
.company section.rinen {
	margin: 0 calc(50% - 50vw);
	width: 100vw;
	background: url(/wp-content/uploads/2026/04/company_bg1.jpg) no-repeat;
	background-size: cover;
	background-position: center;
}

.company section.rinen img {
	border-radius: 10px;
}

.company table {
	width: 100%;
	border-spacing: 10px;
	border-collapse: separate;
}

.company table th, 
.company table td {
	padding: 20px;
}

.company table th {
	color: #002b5b;
	border-top: none;
	border-bottom: 1px solid #002b5b;
}
.company table td {
	border-bottom: 1px solid #c1c1c1;
}

.company .message .signature{
	margin-bottom: 50px !important;
}

.company .message .signature span {
	font-size: 24px;
	font-weight: bold;
}

.company .message img {
	width: 50%;
}

.company .map {
	position: relative;
	width: 100%;
	padding-top: 56.25%;
	/* 16:9のアスペクト比 */
	height: 0;
}

.company .map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}

/*-------2019.5.10齋藤追加-------*/

#container{
	overflow: hidden;
}


.representative {
	font-size: 18px;
	text-align: right;
}

.recruit-img {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.recruit-img img {
	width: 310px;
	height: auto;
}

@media screen and (max-width: 968px){
	#responsive-menu-container {
		width: 75%;
		left: 0;
		transition: transform 0.5s;
		text-align: left;
		background: #1F3B5A !important;
	}
	#responsive-menu-container #responsive-menu-wrapper {
		background: #1F3B5A !important;
	}

	#responsive-menu-container #responsive-menu-title {
		background-color: #1F3B5A !important;
		color: #ffffff;
		font-size: 15px;
		text-align: left;
	}

	#responsive-menu-container #responsive-menu > li.responsive-menu-item:first-child > a {
		border-top: 1px solid #1F3B5A !important;
	}

	#responsive-menu-container #responsive-menu li.responsive-menu-item a {
		line-height: 40px;
		border-bottom: 1px solid #333 !important;
		color: #ffffff;
		background-color: #1F3B5A !important;
		height: 40px;
	}

	#responsive-menu-container #responsive-menu li.responsive-menu-item a .responsive-menu-subarrow {
		right: 0;
		height: 40px;
		line-height: 40px;
		width: 40px;
		color: #ffffff;
		border-left: 1px solid #1F3B5A !important;
		background-color: #1F3B5A !important;
	}
	.responsive-menu-inner, .responsive-menu-inner::before, .responsive-menu-inner::after {
		background-color: #1F3B5A!important;
	}
}

/*-----//2019.2.26齋藤追加-------*/
/*===============================================
●PC/タブレット
===============================================*/
@media screen and (min-width: 769px) {
	.sp-display {
		display: none;
	}

	.contents-width {
		width: 960px;
		margin: 0 auto;
		height: 100%;
	}

	#h-top {
		width: 100%;
		margin: 7px auto;
		display: flex;
		justify-content: space-between;
		align-items: center;
	}

	#site-title h1 {
		margin: 0;
		padding-left: 20px;
	}

	.site-title-img {
		max-width: 100%;
		width: auto;
		height: 90px;
	}

	h2.main-title {
		margin-bottom: 2rem;
		font-size: 32px;
	}

	.col-xs-6 {
		display: inline-block;
		width: 30%;
		margin: 0 0;
		vertical-align: top;
	}

	.news-contents .head {
		display: inline-block;
		vertical-align: top;
		font-size: 16px;
		margin: 0 0 30px 0;
	}

	.news-list {
		display: block;
		/*        width: 79%;*/
		vertical-align: top;
	}

	.table01 {
		display: table;
	}

	.img01 {
		display: table-cell;
		vertical-align: top;
		width: 30%;
	}

	.text01 {
		display: table-cell;
		vertical-align: top;
		padding: 0 0 0 3%;
	}

	.single-post #body {
		width: 960px;
		margin: 0 auto;
	}

	.wid70 {
		width: 70%;
		margin: 0 auto 20px auto;
	}


	.photoarea .photoarea-child img{
		height:220px;
		width:100%;
	}

	.photoarea .photoarea-child2 img{
		height:220px;
		width:100%;
	}

	.photoarea .photoarea-child3 img{
		height:220px;
		width:100%;
	}


}

@media screen and (max-width: 1110px) {
	header {
		height: 75px;
	}
}



/*===============================================
●スマホ
===============================================*/
@media screen and (max-width: 768px) {
	.pc-display {
		display: none;
	}

	.contents-width {
		width: 94%;
		margin: 0 auto;
		height: 100%;
	}

	#site-title {
		position: absolute;
		top: 50% !important;
		left: 10px!important;
		transform: translateY(-50%)!important;
		-webkit-transform: translateY(-50%)!important;
		-ms-transform: translateY(-50%)!important;
	}
	#site-title h1 {
		margin: 0;
	}

	#site-title img {
		width:220px;
	}

	.sub-ttl {
		margin-bottom: 20px;
		font-size: 20px;
	}

	.site-title-img {
		max-width: 100%;
		width: auto;
		height: 75px;
	}

	div#main {
		padding: 0;
	}

	.single-post #body {
		width: 94%;
		margin: 0 auto;
	}

	nav {
		margin: -41px 0 0 0;
	}

	#navi-in {
		margin: 0;
		background: #555;
	}

	#navi ul li a {
		padding: 15px;
	}

	#navi ul li {
		border-bottom: solid 1px #7b7b7b;
	}

	#header .alignleft {
		padding: 0;
		margin: 0;
	}

	.main-content {
		padding: 30px 0 0 0;
	}

	.col-xs-6 {
		margin: 0 0 10px 0;
	}

	.news-contents.reverse:before {
		/*margin: 17% -10% 0;*/
		display: none;
	}

	.news-contents {
		/*padding: 120px 0 50px 0;*/
		padding: 20px 0 50px 0;
	}

	.main-bg {
		padding: 54px 0 30px;
	}

	.main-img {
		width: 100%;
	}
	.main-menu-list {
		grid-template-columns: repeat(2, 1fr);
		gap: 10px;
	}

	.main-menu-list div a {
		font-size: 14px;
	}

	.main-menu-list div a span {
		font-size: 10px;
	}

	.main-menu-list div a:hover {
		color: #1f3b59;
	}


	/* 	.main-menu-list div a {
	width: 100%;
	padding: 50px 0;
}

	.main-menu-list li {
	margin: 1% 1% 2% 1%;
	width: 46%;
} */

	.main-menu-list .menu-list-item a {
		min-height: 167px;
	}

	.main-menu-list .menu-list-item a {
		font-size: 16px;
	}

	.menu-menu-container {
		display: none;
	}

	#footer-navi ul {
		text-align: center;
	}

	#copyright h2 {
		margin: 0 auto 10px auto;
	}

	#copyright.credit {
		font-family: 'Noto Serif JP', "Times New Roman", "YuMincho", "Hiragino Mincho ProN", "Yu Mincho", "MS PMincho", serif;
		font-size: 12px;
	}

	.img01 {
		margin: 0 0 10px 0;
	}

	.sub-width01 img {
		width: 100%;
	}

	.sub-box {
		padding: 20px;
	}

	dt, dd {
		width: 100%;
	}



	dd:last-child {
		border-bottom: none;
	}

	.head span {
		font-size: 38px;
	}

	.news-list li a {
		display: block;
		margin: 5px 0 0 0;
	}

	/* 	.news-list li {
	margin: 0 0 10px 0;
	padding: 0 0 10px 0;
} */


	h1.entry-title {
		font-size: 24px;
		padding: 50px 20px;
	}

	.ttl {
		margin: 30px 0;
		padding: 10px 20px;
		font-size: 18px;
		text-align: center;
	}

	.ttl:before, .ttl:after {
		border-width: 3px 0 3px 3px;
	}

	.subpage-text {
		padding: 20px 0;
	}

	.subpage .news-list {
		padding: 20px 0 50px 0;
	}

	.wid70 {
		margin: 0 auto 10px auto;
	}

	#header{
		background-color: rgba(51,51,51,0);
		height:75px;
	}

	.makesteplist{
		margin:10px 20px;
	}

	.photoarea .photoarea-child img{
		height:138px;
		width:100%;
	}

	.photoarea .photoarea-child2 img{
		height:138px;
		width:100%;
	}

	.photoarea .photoarea-child3 img{
		height:138px;
		width:100%;
	}

	.photoarea .photoarea-child p{
		text-align:right;
		padding-right:0;
	}


	.recruit-img {
		display: block;
	}

	.recruit-img img {
		width: 100%;
		height: auto;
		margin-bottom:20px;
	}
	.contact-btn a {
		width: 100%;
		padding: 16px 20px;
		font-size: 18px;
	}

	.company .lead-ttl {
		font-size: 23px;
	}

	.company .lead-txt {
		text-align: left;
		font-size: 16px;
	}

	.company table th, .company table td {
		padding: 10px;
		display: block;
	}

	.company table th {
		border-bottom: 1px solid #c1c1c1;
	}

	.company table td {
		border: none;
	}

	.company .message img {
		width: 100%;
	}




}


.kakko {
	position: relative;
	line-height: 1.4;
	padding:0.25em 1em;
	display: inline-block;
	margin:30px 0;
	font-size:16px;
	line-height:1.8;
}

.kakko:before, .kakko:after {
	content:'';
	width: 20px;
	height: 30px;
	position: absolute;
	display: inline-block;
}

.kakko:before {
	border-left: solid 1px #888;
	border-top: solid 1px #888;
	top:0;
	left: 0;
}

.kakko:after {
	border-right: solid 1px #888;
	border-bottom: solid 1px #888;
	bottom:0;
	right: 0;
}

/* section.inner {
padding-bottom: 100px;
} */

.responsive-menu-inner,
.responsive-menu-inner::before,
.responsive-menu-inner::after{
	background-color:#222!important;
}

.tenpo ul{
	width: 100%;
	list-style: none outside;
}

.tenpo ul li{
	padding: 0;
	float: left;
	width: 50%;
}

.model table {
	font-size:16px;
	width:100%;
}

.model1 table {
	font-size:16px;
	width:100%;
}


.model table th{
	width:33%;
	padding:8px 5px;
	border:solid 1px #111111;
}

.model1 table th{
	width:40%;
	padding:8px 5px;
	border:solid 1px #111111;
	text-align:center;
}

.model table td{
	width:33%;
	padding:8px 5px;
	border:solid 1px #111111;
	text-align:right;
}

.total{
	border-top:double #111111;
}

.total1{
	border-bottom:double #111111;
}

.model1 table .cel2{
	text-align:center;
	width:40%;
	padding:8px 5px;
	border:solid 1px #111111;
}

.model1 table .cel3{
	text-align:right;
	width:20%;
	padding:8px 3px;
	border:solid 1px #111111;
}

.agreement p{
	margin-bottom:50px;
}

.agreement p span{
	float:right;
	width:285px;
}

.houshin{
	border:solid 1px #111111;
	padding:5px 10px;
}

.article th,
.article td{
	padding: .8rem;

}

.article th{
	text-align:center;
}

/* 中沢追加 */

/* 共通 */

.hr100{
	margin-top:100px;
}

.bg-mainblue{
	background:#1A2B56;
}
.bg-w {
	background: #fff;
}

.bg-blue {
	background: #E5F4FF;
}
.bg-pink{
	background:#FFCCCC;
}

.bg-green{
	background:	#00738A;
}

.bg-yellow{
	background:#FFFFCC;
}





.bg-l-blue1{
	background:#9DC7E0;
}

.bg-l-blue2{
	background:rgba(205, 227, 240,0.5);
}

.fc-blue{
	color:#1f3b59;
}
.fc-white{
	color:#fff;
}

.fs-12{
	font-size:12px;
}

.fc-report-blue{
	color:#368BCB;
}

.color-red {
	color: #C1121F;
}



.mb-100{
	margin-bottom:100px;
}



.align-c{
	align-items:center;
}

.subpage-subttl {
	padding: 0px 15px;
	color: #000000;
	border-left: solid 5px #1f3b59;
	font-size: 18px;
	margin-bottom:10px;
}


.guide-maintitle{
	padding: 1rem 2rem;
	color: #fff;
	/*   background: #ae3846; */
	/* 	background:#9e3d3e; */
	background:rgba(158, 61, 62,0.6);
	-webkit-box-shadow: 5px 5px 0 #331214;
	box-shadow: 5px 5px 0 #331214;
	font-size:22px;
}


.button a{
	text-decoration:none;
	font-size:18px;
}

/* 会社概要 */

dd {
	border-bottom: dotted 1px #bbb;
	margin: 0 0 10px 0;
	padding: 0 0 10px 0;
}


#footer a:hover{
	color: #5ab9ff;
}

.test-list{
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	list-style:none;
	padding:0;
}

.test-list li{
	width:calc(20% - 10px);

}

/* .table-wrap{
overflow-x: scroll;
} */

.table-wrap table{
	width:100%;
	white-space: nowrap;

}

/* .table-wrap table td{
border:solid 1px;
text-align:center;
padding:10px;
border:solid 2px #fff;
} */


.original-box-shadow {
	align-items: center;
	justify-content: center;
	color: #ff;
	border-radius: 3px;
	box-shadow: 0px 10px 10px -6px rgba(0, 0, 0, 0.3);
}

.original-box-shadow ul{
	list-style:none;
}

/* 沿革 */
.cp_timeline02 {
	position: relative;
	margin: 3em auto;
	overflow: auto;
	display:inline-block;
}
.cp_timeline02:before {
	position: absolute;
	left: 47px;
	width: 5px;
	height: 100%;
	content: '';
	background: #1A2B56;
}
.cp_timeline02 h2 {
	position: relative;
	clear: both;
	max-width: 6em;
	padding: 0.5em 0.1em;
	text-align: center;
	background: #1A2B56;
	border-radius: 8px;
	font-size: 1.2em;
	color: #fff;
	width: 100px;
	height: 100px;
	border-radius: 50px;
	display: flex;
	align-items: center;
	justify-content: center;
}
.cp_timeline02 ul {
	margin: 0;
	padding: 0 0 0 8em;
	list-style: none;
}
.cp_timeline02 li {
	position: relative;
	margin-bottom: 1em;
	padding: 1em;
	background: #f0f9ff;
	border: solid 1px #1A2B56;
	width:100%;
	text-align:left;
}
.float-left:before {
	position: absolute;
	top: 12px;
	left: -14px;
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 15px 10px 0;
	border-color: transparent #FFF8E1 transparent transparent;
	z-index: 0;
}
.float-left:after {
	position: absolute;
	top: 12px;
	left: -16px;
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 15px 10px 0;
	border-color: transparent #FFCA28 transparent transparent;
	z-index: -1;
}


.float-left:before {
	right: -14px;
	left: auto;
	border-width: 10px 0 10px 15px;
	border-color: transparent transparent transparent #f0f9ff;
}
.float-left:after {
	position: absolute;
	right: -16px;
	left: auto;
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 0 10px 15px;
	border-color: transparent transparent transparent #1A2B56;
	z-index: -1;
}

.cp_timeline02 li .flag {
	padding: 0;
	margin: 0;
	font-weight: bold;
}
.cp_timeline02 li .desc {
	font-size: 0.7em;
	line-height: 1.5em;
}
.cp_timeline02 li .time {
	font-size: 1em;
	color: #1A2B56;
	font-weight: bold;
}


.cp_timeline02 li:before{
	position: absolute;
	top: 12px;
	left: -14px;
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 15px 10px 0;
	border-color: transparent #f0f9ff transparent transparent;
	z-index: 1;
}

.cp_timeline02 li:after{
	position: absolute;
	top: 12px;
	left: -16px;
	content: '';
	display: inline-block;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 15px 10px 0;
	border-color: transparent #1A2B56 transparent transparent;
	z-index: 0;
}



@media only screen and (max-width: 767px) {
	.cp_timeline02:before {
		left: 0;
	}
	.cp_timeline02 ul {
		z-index: 1;
		padding: 0 0 0 1.5em;
	}
	.cp_timeline02 li {
		width: 100%!important;
	}
	.cp_timeline02 li:nth-child(even),
	.cp_timeline02 li:nth-child(odd) {
		float: none;
	}
	.cp_timeline02 li:nth-child(odd):before {
		right: auto;
		left: -14px;
		border-width: 10px 15px 10px 0;
		border-color: transparent #f0f9ff transparent transparent;
	}
	.cp_timeline02 li:nth-child(odd)::after {
		right: auto;
		left: -16px;
		border-width: 10px 15px 10px 0;
		border-color: transparent #1A2B56 transparent transparent;
	}
	.cp_timeline02 ul {
		max-width: initial;
	}
	.cp_timeline02 li.mb-50{
		margin-bottom:50px;
	}
	.cp_timeline02 li:nth-child(even) {
		margin-top: initial;
	}
	.cp_timeline02 h2 {
		margin:0 auto 1em;
	}

}

/* お知らせ */

.news-list h2{
	font-size:20px;
	width:100%;
}
/* .news-list li{
margin-bottom:25px;
} */
.news-list li a{
	margin-top:0;
}

.meta {
	background: rgba(214,231,245,0.5);
	font-size: 14px;
	padding:5px 10px;
	margin-bottom:10px;
}
.post-cat a{
	padding: 2px 8px;
	border-radius: 20px;
}

.news-list .meta a{
	display:inline-block;
}

.more{
	margin-top:5px;
}

.more a{
	/* 	border-bottom:1px solid; */
	font-size:16px;
}

.post-date{
	padding-right:10px;
	color:#000;
}

/* フッター */

h2.footer-logo{
	width:320px;
	margin: 0 auto;
}

#page-top {
	bottom: 80px;
}

#page-top a {
	border: 1px solid #fff;
	padding: 15px 20px;
	background:#1A2B56;
}

#copyright {
	padding: 60px 0;

}

#body {
	padding-top: 90px;
}

.test-list{
	font-size:12px;
}


/* メニュー調整 */

.menu-cognitrax{
	text-align:center;
}

/* ヘッダー調整 */


article header {
	display: none;
}



@media screen and (max-width: 1110px){
	#body {
		padding-top: 75px;
	}
}

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

	/* ヘッダー */
	header {
		height:70px;
	}

	#body {
		padding-top: 70px;
	}

	.guide-maintitle{
		width: 95%;
		margin: 0 auto;
		font-size:17px;
	}


	/* トップページ */

	.test-list li{
		width:calc(50% - 10px);
	}
	.cognitrax-logo{
		width:50%;
	}
	#site-title{
		position: absolute;
		top: 8px;
		left: 15px;
	}

	#page-top a {
		padding: 10px 15px;
	}

	/*  概要*/
	.sticker-box {
		padding: 55px 20px;
	}

	/* お知らせ */

	.more{
		text-align:center;
	}
	.more a{
		border-bottom:none;
		background: gray;
		padding: 10px 60px;
		border-radius: 10px;
		color: #fff!important;
		margin-top: 10px!important;
	}
	/* フッター */

	h2.footer-logo{
		width:85%;
		margin:0 auto;
	}
	#footer .footer-logo-list {
		flex-direction: column;
	}
	#site-title {
		position: absolute;
		top: 50% !important;
		left: 10px!important;
		transform: translateY(-50%)!important;
		-webkit-transform: translateY(-50%)!important;
		-ms-transform: translateY(-50%)!important;
	}
}

#nav-in {
	width: 100% !important;
}



.js-fadeBottom {
	opacity: 0;
	visibility: hidden;
	transform: translateY(80px);
	transition: opacity 1s,visibility 1s, transform 1s;
}
.js-fadeBottom.inview {
	opacity: 1;
	visibility: visible;
	transform: translateY(0px);
}


.js-fadeTop {
	opacity: 0;
	visibility: hidden;
	transform: translateY(-80px);
	transition: opacity 1s,visibility 1s, transform 1s;
}
.js-fadeTop.inview {
	opacity: 1;
	visibility: visible;
	transform: translateY(0px);
}


.js-fadeLeft {
	opacity: 0;
	visibility: hidden;
	transform: translateX(80px);
	transition: opacity 1s,visibility 1s, transform 1s;
}
.js-fadeLeft.inview {
	opacity: 1;
	visibility: visible;
	transform: translateX(0px);
}

.js-fadeRight {
	opacity: 0;
	visibility: hidden;
	transform: translateX(-80px);
	transition: opacity 1s,visibility 1s, transform 1s;
}
.js-fadeRight.inview {
	opacity: 1;
	visibility: visible;
	transform: translateX(0px);
}

div#n2-ss-19 .n2-style-2a0a200d6a6e1fade27fb9c90af83812-dot.n2-active, div#n2-ss-19 .n2-style-2a0a200d6a6e1fade27fb9c90af83812-dot:HOVER {
	background: #002b5b !important;
}

/*  */
span.subpage_ttl {
	display: block;
	font-size: 0.6em;
	margin-top: 10px;
}


.timeline {
	padding-left: 0;
	list-style: none;
}
.timeline > li {
	margin-bottom: 60px;
}

/* for Desktop */

.timeline > li {
	overflow: hidden;
	margin: 0;
	position: relative;
	display: flex;
	align-items: center;
}
.timeline-date {
	width: 130px;
	font-weight: bold;
	color: #002b5b;
}
.timeline-content {
	width: calc(100% - 130px);
	/* float: left; */
	border-left: 2px #d3d3d3 solid;
	padding: 10px 10px 10px 30px;
}
.timeline-content:before {
	content: '';
	width: 12px;
	height: 12px;
	background: #0099ff;
	position: absolute;
	top: 50%;
	left: 125px;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
	-ms-transform: translateY(-50%);
	border-radius: 100%;
}

.timeline-content p {
	background: #fff;
	padding: 10px;
}


@media screen and (max-width: 600px){
	.timeline > li {
		overflow: hidden;
		margin: 0;
		position: relative;
		display: flex;
		align-items: center;
		flex-direction: column;
		justify-content: flex-start;
		align-items: flex-start;
		padding-left: 10px;
		margin-bottom: 20px;
	}

	.timeline-content {
		width: 100%;
		/* float: left; */
		border-left: 2px #d3d3d3 solid;
		padding: 10px 10px 10px 20px;
	}

	.timeline-content:before {
		content: '';
		width: 12px;
		height: 12px;
		background: #0099ff;
		position: absolute;
		top: 40px;
		left: 6px;
		transform: translateY(-50%);
		-webkit-transform: translateY(-50%);
		-ms-transform: translateY(-50%);
		border-radius: 100%;
	}

	.timeline-date {
		width: 100%;
		/* float: left; */
		margin-bottom: 15px;
		/* margin-top: 20px; */
		background: #fff;
		text-align: center;
	}

	.timeline-content p {
		padding: 0;
		background: none;
	}
}

.wp-pagenavi {
	text-align: center;
}
.wp-pagenavi a, 
.wp-pagenavi span {
	color: #666;
}
.wp-pagenavi a {
	transition: .4s;
}
.wp-pagenavi a:hover, 
.wp-pagenavi span.current {
	color: #fff !important;
	border: none!important;
	background: #002B5B!important;
	transition: .4s;
}


.recruit .table-wrap {
	padding: 40px;
	margin-bottom: 80px;
}
.recruit .table {
	width: 100%;
}

.recruit .table-wrap table th, 
.recruit .table-wrap table td {
	padding: 20px;	
}

.recruit .table-wrap table th {
	color:#002B5B;
}

.recruit table{
	border-collapse: collapse;
	border-top: 1px solid #002B5B;
	border-bottom: 1px solid #002B5B;
}
.recruit td,th{
	border: none;
	border-left: 1px solid #002B5B;
	border-top: 1px solid #002B5B;
}
.recruit td:first-child,th:first-child{
	border-left:none;
}
.recruit tr:first-child td,tr:first-child th{
	border-top:none;
}
@media screen and (max-width: 768px){
	.recruit .table-wrap {
		margin-bottom: 40px;
		padding: 20px;
	}
	.recruit .table-wrap table {

		white-space: initial;
	}
	.recruit .table-wrap table {
		border: none;
	}
	.recruit .table-wrap table th, 
	.recruit .table-wrap table td {
		padding: 12px;
		display: block;
		border: none;
	}
	.recruit .table-wrap table th {
		border-top: 1px solid #c1c1c1;
	}

	.recruit .table-wrap table td {
		padding-top: 0;
	}
	.recruit .table-wrap table bottom{
		border-bottom: 1px solid #c1c1c1;
	}
}

.tab-wrap {
	padding: 40px;
	border-radius: 10px;
	background-color: #fff;
}
ul.tab {
	position: relative;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 15px 30px;
	list-style: none;
	margin: 0 auto;
	padding: 0 0 30px 0;
	border-bottom: 1px solid #ccc;
}

/* タブのリンク */
ul.tab li a {
	position: relative;
	display: block;
	padding: 15px 5px;
	text-decoration: none;
	color: #ccc;
	transition: 0.3s;
	text-align: center;
	white-space: nowrap;
}


/* ホバー時の色 */
.tab li a:hover {
	color: #0099ff;
}

/* アクティブなタブ */
ul.tab li.active a {
	color: #0099ff;
	font-weight: bold;
}

/* 下線アニメーション */
ul.tab li a::after {
	content: "";
	position: absolute;
	bottom: 0;
	left: 0;
	transform: scaleX(0);
	transform-origin: left;
	width: 100%;
	height: 3px;
	background-color: #0099ff;
	transition: transform 0.4s ease;
	z-index: 9;
}

/* ホバーまたはアクティブ時に下線を表示 */
ul.tab li a:hover::after,
ul.tab li.active a::after {
	opacity: 1;
	transform: scaleX(1);
}

.tab-wrap .note {
    margin-top: 10px;
	font-size: 12px;
    color: #555;
}

/* =========================
タブの内容エリア
=========================*/
.tab_area {
	display: none;
	opacity: 0;
	margin: 0 auto;
	padding: 20px 0px;
	text-align: center;
}

/* 表示中のタブエリア */
.tab_area.is-active {
	display: block;
	animation-name: displayAnime;
	animation-duration: 1.0s;
	animation-fill-mode: forwards;
}

.tab_area ul {
	padding-left: 0;
	list-style-type: none;
}

.tab_area ul li {
	padding: 20px;
	text-align: left;
}

.tab_area ul li:nth-child(even) {
	background-color: #f5f5f5;
}

.tab_area p {
	margin: 0 0 1rem 0;
	font-size: 14px;
}

.tab_area p.seminar-ttl {
	display: flex;
	justify-content: space-between;
	font-size: 16px;
	font-weight: bold;
}
.tab_area p.seminar-ttl span {
	padding: .5px 10px;
	height: 30px;
	color: #ED1C24;
	text-align: center;
	font-size: 14px;
	font-weight: bold;
	border: 2px solid #ED1C24;
	background-color: #fff;
}

.tab_area .img-wrap {

	display: flex;
	justify-content: flex-start;
	gap: 10px;
}
.tab_area .img-wrap img {
	margin: 0;
	width: 150px;
	height: auto;
}

/* フェードインアニメーション */
@keyframes displayAnime {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}


/* .tab_area p:last-child {
margin: 0;
} */


@media only screen and (max-width: 767px) {
	.tab-wrap {
		padding: 20px;
	}
	.tab_area p.seminar-ttl {
		flex-direction: column-reverse;
	}
	.tab_area p.seminar-ttl span {
		margin: 10px 0;
	}
}




/* --- スマホ表示用（横スクロール対応） --- */
@media only screen and (max-width: 425px) {
	ul.tab {
		width: 100%;
		justify-content: flex-start;
		flex-wrap: nowrap;
		overflow-x: scroll;
		overflow-y: hidden;
		-webkit-overflow-scrolling: touch;
	}
	.tab li:not(:last-child) {
		padding-right: 20px;
	}
}


.voice-list {
	margin-top: 30px;
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 60px 20px;
}

.voice-list li {
	position: relative;
	padding: 30px 20px 20px;
	list-style-type: none;
	background: #E5F4FF;
	border-radius: 10px;
}

.voice-list li img {
	width: 60px;
	height: 60px;
	position: absolute;
	top: 0;
	left: 50%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
}

.voice-list li p{
	margin-bottom: 10px;
}

.voice-list li span {
	display: block;
	font-size: 14px;
	color: #777;
}

@media only screen and (max-width: 767px) {
	.voice-list {
		grid-template-columns: 1fr; 
	}

}


.work-care-balance .about img {
	width: 150px;
	height: auto;
}

.work-care-balance .about .txt {
	padding: 20px;
	background: #f7f7f7;
	border-radius: 20px;
}

.service table {
	width: 100%;
}

.service table th, 
.service td {
	padding: 20px;
	border: 1px solid #002B5B;
}

.service table th {
	color: #002B5B;
	text-align: center;
	background: #E5F4FF;
}

.work-care-balance .features .num {
	margin-bottom: 10px;
	font-family: "Anton", sans-serif;
	font-size: 20px;
	color: #c1c1c1;
}


@media only screen and (max-width: 767px) {
	.work-care-balance .features .num {
		text-align: center;
	}
}
.qa-1 {
	width: 100%;
	margin-bottom: 20px;
	/*     border: 1px solid #d6dde3; */
	border-radius: 5px;
	background: #fff;
}

.qa-1 summary {
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	padding: 1em 2em 1em 3em;
	color: #333333;
	font-weight: 600;
	cursor: pointer;
}

.qa-1 summary::before,
.qa-1 p::before {
	position: absolute;
	left: 1em;
	font-weight: 600;
	font-size: 1.3em;
}

.qa-1 summary::before {
	color: #0099ff;
	content: "Q";
}

.qa-1 summary::after {
	transform: translateY(-25%) rotate(45deg);
	width: 7px;
	height: 7px;
	margin-left: 10px;
	border-bottom: 3px solid #333333b3;
	border-right: 3px solid #333333b3;
	content: '';
	transition: transform .5s;
}

.qa-1[open] summary::after {
	transform: rotate(225deg);
}

.qa-1 p {
	position: relative;
	transform: translateY(-10px);
	opacity: 0;
	margin: 0;
	padding: .3em 3em 1.5em;
	color: #333;
	transition: transform .5s, opacity .5s;
}

.qa-1[open] p {
	transform: none;
	opacity: 1;
}

.qa-1 p::before {
	color: #E23E57;
	line-height: 1.2;
	content: "A";
}

.contact-box {
	background: #f6fbff;
	padding: 20px;
	border-radius: 10px;
}

.flow12 {
	margin: 0;
	padding: 0;
}
.flow12 > li {
	list-style-type: none;
	position: relative;
	padding-bottom: 50px;
	display: flex;
	align-items: center;
}
.flow12 > li:nth-of-type(even)::after {
	content: "";
	position: absolute;
	left: 25px;
	top: 0;
	width: 0;
	height: 100%;
	border-left: 4px dotted #d4d4d4;
}
.flow12 > li:nth-of-type(odd)::before {
	content: "";
	position: absolute;
	left: 50px;
	top: -40px;
	width: 20%;
	height: 40px;
}
.flow12 > li:nth-of-type(odd)::after {
	content: "";
	position: absolute;
	left: 25px;
	top: 50px;
	width: 20%;
	height: calc(100% - 50px);
	border-left: 4px dotted #d4d4d4;
}
.flow12 > li:first-of-type::before, .flow12 > li:last-of-type::after {
	content: unset;
}

.flow12 > li:last-child {
	padding: 0;
}
.flow12 > li dl {
	display: inline-block;
	vertical-align: top;
	width: calc(100% - 70px);
}
.flow12 > li .icon12 {
	display: inline-block;
	margin: 0;
	width: 50px;
	height: auto;
	margin-right: 20px;
	text-align: center;
	font-weight: bold;
	vertical-align: middle;
	font-size: 20px;
	line-height: 50px;
	background: #0099ff;
	color: #fff;
	border-radius: 100vh;
	position: relative;
	z-index: 1;
}
.flow12 > li dt {
	display: block;
	margin: 0;
	padding: 1rem;
	font-size: 16px;
	font-weight: bold;
	line-height: 1.5;
	letter-spacing: .1em;
	width: 100%;
	background: #f5f5f5;
	border-radius: 5px;
}
.flow12 > li dd {
	max-width: 550px;
	margin: 0;
	font-weight: normal;
	line-height: 2;
	letter-spacing: .1em;
}


@media screen and (min-width: 960px) {
	.flow12 > li {
		align-items: flex-start;
	}
	.flow12 > li:nth-of-type(even) {
		margin-left: 20%;
		padding-top: 20px;
	}
	.flow12 > li:nth-of-type(odd)::after {
		left: 50px;
		border-bottom: 4px dotted #d4d4d4;
	}
	.flow12 > li:nth-of-type(odd)::before {
		border-top: 4px dotted #d4d4d4;
		border-left: 4px dotted #d4d4d4;
	}
	.flow12 > li:nth-of-type(even)::after {
		left: 50px;
		height: calc(100% - 40px);
	}
	.flow12 > li .icon12{
		width: 60px;
		line-height: 60px;
	}
	.flow12 > li dl {
		width: calc(100% - 130px);
	}

	.flow12 > li dt {
		font-size: 18px;
	}
}


.ful .fli__l {
	position: relative;
	font-weight: bold;
}

.ful .fli__l.req {
	padding-left: 65px;
}

.ful .fli__l.req::after {
	display: block;
	content: "必須";
	position: absolute;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
	width: 50px;
	padding-top: 2px;
	color: #fff;
	font-size: 16px;
	text-align: center;
	line-height: 22px;
	background: #dc143c;
	border-radius: 5px;
}

.ful .fli__r {
	margin-top: 20px;
	width: 100%;
}

.ful .fli__r .box {
	position: relative;
	height: 300px;
	padding: 10px 15px;
	border: 1px solid #7c7c7c;
	overflow-y: scroll;
	background: #fff;
} 

.ful .fli__r .box p {
	font-size: 14px;
}

.ful .fli__r .box .box__inner {
	height: 100%;
}

.ful .fli__r .box h3 {
	margin: 10px 0;
	color: #002B5B;
	font-size: 16px;
}


.ful .fli__r input, .ful .fli__r textarea, .ful .fli__r select {
	display: block;
	width: 100%;
	padding: 10px;
	border: 1px solid #7c7c7c;
	font-size: 1.6rem;
}

.ful .fli__r textarea:focus {
	border-color: #2742b6 !important;
}

.ful .fli__r select {
	position: relative;
	-moz-appearance: menulist;
	-webkit-appearance: menulist;
}

.care-insurance .about .txt {
	text-align: center;
}
.care-insurance .service-about {
	display: flex;
}
.care-insurance .service-about table {
	margin-right: 20px;
	width: 50%;
}

.care-insurance .service-about table th, 
.care-insurance .service-about table td {
	padding: 10px;
}

.care-insurance .service-about img {
	width: 100%;
}

.care-insurance .box {
	padding: 40px;
	background: #fff;
	border-radius: 20px;
}

.care-insurance .features-list {
	padding: 0;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 20px;
}

.care-insurance .features-list li{
	display: flex;
	flex-direction: column;
	height: 100%;
}

.care-insurance .features-list .ttl {
	margin: 20px 0;
	padding: 10px;
	font-size: 18px;
	min-height: 80px; /* ← タイトル高さ固定（重要） */
	display: flex;
	align-items: center;
	justify-content: center;
}

.care-insurance .features-list img {
	aspect-ratio: 3 / 2;
	object-fit: cover;
}

.care-insurance .service-content .img-list {
	margin-bottom: 20px;
	display: flex;
}

.care-insurance .service-content-list {
	padding: 0;
}

.care-insurance .service-content-list ul {
	margin-left: 0;
	padding-left: 1.5rem;
}


.care-insurance .service-content-list ul li::marker {
	color:#0099ff;
}

.care-insurance .service-content-list > li {
	margin-bottom: 50px;
	display: flex;
	list-style-type: none;
}

.care-insurance .service-content-list li.reverse {
	flex-direction: row-reverse;
}

.care-insurance .service-content-list li strong {
	margin-bottom: 10px;
	display: block;
	font-size: 18px;
	color: #0099ff;
}


.care-insurance .service-content-list li .img {
	width: 40%;
}

.care-insurance .service-content-list li img {
	aspect-ratio: 3 / 2;
	object-fit: cover;
}

.care-insurance .service-content-list li .txt {
	padding: 0 30px 30px 0;
	width: 60%;
}

.care-insurance .service-content-list li.reverse .txt {
	padding: 0 0 30px 30px;
}

@media screen and (max-width: 767px) {
	.care-insurance .about .txt {
		text-align :left;
	}
	.care-insurance ul.disc {
		padding-left: 1.5rem;
	}
	.care-insurance .box {
		padding: 20px;
	}
	.care-insurance .service-about {
		flex-direction: column;
	}
	.care-insurance .service-about table {
		width: 100%;
		border-bottom: 1px solid #002B5B;
	}
	.care-insurance .service-about table th, 
	.care-insurance .service-about table td {
		display: block;
		text-align: center;
	}
	.care-insurance .service-about table td {
		border-top: none;
		border-bottom: none;
	}
	.care-insurance .features-list {
		grid-template-columns: 1fr;
		    gap: 30px;
	}
	.care-insurance .service-content .img-list {
		flex-direction: column;
	}
	.care-insurance .service-content-list > li {
		        flex-direction: column-reverse;
	}
	.care-insurance .service-content-list li .img {
		margin-bottom: 20px;
		width: 100%;
	}
	.care-insurance .service-content-list li .txt {
		padding: 0;
		width: 100%;
	}
	.care-insurance .service-content-list li.reverse {
		        flex-direction: column-reverse;
	}
	.care-insurance .service-content-list li.reverse .txt {
		padding: 0;
	}
	
}
