@charset "utf-8";

/* 共通
------------------------------------------------------------*/
@import url('https://fonts.googleapis.com/css2?family=Audiowide&display=swap');
.inner_fv {
    position:relative;
    padding: clamp(30px, calc(80/1440*100vw), 80px) 0 0;
    background-color: var(--color-white);
    background-image:
        linear-gradient(to right, rgba(35,35,65,0.08) 1px, transparent 1px),
        linear-gradient(to bottom, rgba(35,35,65,0.08) 1px, transparent 1px);
    background-size: 18px 18px;
    text-align:center;
}
.inner_fv .icon {
    display:block;
    width:clamp(90px, calc(158/1440*100vw), 158px);
    height:auto;
    margin:0 auto clamp(20px, calc(50/1440*100vw), 50px);
    animation: badge-rotate 22s linear infinite;
}
@keyframes badge-rotate{
    from{transform:rotate(360deg);}
    to{transform:rotate(0deg);}
}
.inner_title {
	background: url("../images/bg_graycircle.svg") no-repeat;
	background-position: center bottom;
	background-size: 100%;
	padding-bottom: clamp(100px, calc(280/1920*100vw), 280px);
	margin-bottom: -1px;
}
.inner_title p {
	font-family: "Audiowide";
	font-size: clamp(28px, calc(60/1440*100vw), 60px);
	color: var(--color-dark);
	line-height: 1.0;
	margin-bottom: clamp(5px, calc(10/1440*100vw), 10px);
	opacity: 0;
	transform: translateY(30px);
	animation: fvFadeUp 1s ease forwards;
}
.inner_title h2,.inner_title div {
	color: var(--color-dark);
	font-size: clamp(20px, calc(36/1440*100vw), 36px);
	opacity: 0;
	transform: translateY(30px);
	animation: fvFadeUp 1s ease forwards;
}
@keyframes fvFadeUp {
  to {
    opacity: 1;
    transform: translateY(0);
  }
}
.inner_title::before {
	animation: scroll 2s infinite;
	animation-delay: 1s;
	background-color: #232341;
	bottom: clamp(1px, calc(140/1920*100vw), 140px);
	content: "";
	height: clamp(40px, calc(100/1920*100vw), 100px);
	left: 0;
	margin: auto;
	position: absolute;
	right: 0;
	width: 2px;
	z-index: 999;
}
/* 線のアニメーション */
@keyframes scroll {
  0% {
    transform: scale(1, 0);
    transform-origin: 0 0;
  }
  50% {
    transform: scale(1, 1);
    transform-origin: 0 0;
  }
  51% {
    transform: scale(1, 1);
    transform-origin: 0 100%;
  }
  100% {
    transform: scale(1, 0);
    transform-origin: 0 100%;
  }
}
.inner_box {
	max-width: 1200px;
	width: 90%;
	margin: auto;
	padding: clamp(80px, calc(200/1440*100vw), 200px) 0;
}
.fst_con .inner_box {padding: clamp(30px, calc(80/1440*100vw), 80px) 0 clamp(80px, calc(200/1440*100vw), 200px) 0;}
.titleR {
	display: flex;
	align-items: flex-end;
	margin-bottom: clamp(50px, calc(100/1440*100vw), 100px);
}
.titleR h3 {margin-left: 20px;}
.titleB p,.titleR p {
	font-family: "Audiowide";
	font-size: clamp(28px, calc(60/1440*100vw), 60px);
	color: var(--color-dark);
	line-height: 1.0;
}
.titleB h3,.titleR h3 {
	display: inline-block;
	color: #ffffff;
	font-weight: bold;
	background: var(--color-blue);
	font-size: clamp(16px, calc(22/1440*100vw), 22px);
	line-height: 1.0;
	padding: 5px 15px;
	border-radius: 30px;
}
.titleB p {margin-bottom: clamp(5px, calc(20/1440*100vw), 20px);}
.wave-navy .titleR p {color: #fff;}


/* 会社紹介
------------------------------------------------------------*/
.greeting, .outline {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.greeting .conL, .outline .conL {
	width: clamp(150px, calc(300/1300*100vw), 300px); 
}
.greeting .conR, .outline .conR {
	width: clamp(450px, calc(800/1300*100vw), 800px); 
}
.greeting .name {
	padding-top: clamp(50px, calc(100/1440*100vw), 100px);
	padding-bottom: 15px;
	border-bottom: 2px solid var(--color-blue);
}
.greeting .name dt {
	font-size: clamp(18px, calc(20/1440*100vw), 20px);
	color: var(--color-dark);
	line-height: 1.0;
}
.greeting .name dd {
	font-weight: bold;
	font-size: clamp(22px, calc(32/1440*100vw), 32px);
	color: var(--color-dark);
}
.greeting .name dd span {
	font-size: clamp(12px, calc(18/1440*100vw), 18px);
	font-weight: normal;
	padding-left: 10px;
}
.greeting .conR {
	background: #ffffff;
	border-radius: 10px;
	padding: clamp(30px, calc(80/1440*100vw), 80px) clamp(20px, calc(50/1440*100vw), 50px);
}
.greeting .conR p {font-size: clamp(14px, calc(16/1440*100vw), 16px);}
.outline {margin-bottom: clamp(60px,calc(100/1440*100vw),100px);}
.outline .conR dl {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	line-height: 1.5;
	border-bottom: 1px solid #c0c0c8;
	padding: clamp(15px,calc(30/1440*100vw),30px) 0;
}
.outline .conR dl:first-child {border-top: 1px solid #c0c0c8;}
.outline .conR dl dt {
	font-size: clamp(14px,calc(20/1440*100vw),20px);
	font-weight: bold;
	width: clamp(80px, calc(190/1440*100vw), 190px);
	padding-left: clamp(10px, calc(30/1440*100vw), 30px);
}
.outline .conR dl dd {
	font-size: clamp(14px,calc(18/1440*100vw),18px);
	width: clamp(300px, calc(710/1440*100vw), 710px);
}
.map {
	width: 100%;
	height: clamp(250px,calc(400/1440*100vw),400px);
}
.map iframe{width:100%;height: 100%;}
/* サービス紹介
------------------------------------------------------------*/
.flow {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	padding-top: 50px;
	gap: clamp(60px,calc(130/1440*100vw),130px) 0;
}
.flow li {
	width: 31%;
	background: #fff;
	border-top: 5px solid var(--color-dark);
	position: relative;
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
	padding: clamp(60px, calc(80/1440*100vw), 80px) clamp(15px, calc(30/1440*100vw), 30px) clamp(30px, calc(50/1440*100vw), 50px);
}
.flow li span {
	position: absolute;
	top: clamp(-45px, calc(-45/1440*100vw), -32px);
	right: 0;
	font-family: "Audiowide";
	font-size: clamp(35px, calc(50/1440*100vw), 50px);
	color: var(--color-dark);
	line-height: 1.0;
}
.flow li img {
	position: absolute;
	top: -50px;
	left: 50%;
	transform: translateX(-50%);
}
.flow li h4 {
	text-align: center;
	color: var(--color-blue);
	font-size: clamp(18px, calc(22/1440*100vw), 22px);
	line-height: 1.0;
	margin-bottom: 20px;
}
.plan {
	display: flex;
	flex-wrap: wrap;
}
.plan > li {
	width: calc(100%/3);
	background: #fff;
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
	position: relative;
	padding: clamp(80px, calc(100/1440*100vw), 100px) clamp(15px, calc(30/1440*100vw), 30px) clamp(30px, calc(100/1440*100vw), 100px);
}
.plan > li .plantitle {
	position: absolute;
	width: 85%;
	left: 50%;
	top: -20px;
	transform: translateX(-50%);
	border-radius: 10px;
	text-align: center;
	background: #0085c2;
	padding: 15px 0;
}
.plan > li:first-child .plantitle {background: #3cb4e1;}
.plan > li:last-child .plantitle {background: #004b8b;}
.plan > li .plantitle h4 {
	color: #fff;
	line-height: 1.0;
	font-weight: bold;
	font-size: clamp(18px, calc(26/1440*100vw), 26px);
	margin-bottom: 10px;
}
.plan > li .plantitle p {
	color: #fff;
	line-height: 1.0;
	font-weight: bold;
	font-size: clamp(14px, calc(18/1440*100vw), 18px);
	opacity: 0.5;
}
.plan > li:last-child img {
	position: absolute;
	top: -55px;
	right: 7.5%;
	z-index: 50;
	width: clamp(50px, calc(69/1440*100vw), 69px);
}
.plan > li > p {
	text-align: center;
	font-weight: bold;
	font-size: clamp(16px, calc(20/1440*100vw), 20px);
	color: #0085c2;
	border-bottom: solid 1px;
	border-color: #0085c2;
	padding-bottom: clamp(20px, calc(30/1440*100vw), 30px);
	margin-bottom: clamp(15px, calc(20/1440*100vw), 20px);
	line-height: 1.5;
}
.plan > li:first-child > p {
	color: #3cb4e1;
	border-color: #3cb4e1;
}
.plan > li:last-child > p {
	color: #004b8b;
	border-color: #004b8b;
}
.plan .detail li {
	position: relative;
	padding-left: clamp(18px, calc(25/1440*100vw), 25px);
	margin-bottom: 20px;
	line-height: 1.5;
	font-size: clamp(14px, calc(18/1440*100vw), 18px);
}
.plan .detail li::before {
	content: "";
	position: absolute;
	top: 0.7em;
	left: 0;
	width: clamp(14px, calc(18/1440*100vw), 18px);
	height: clamp(14px, calc(18/1440*100vw), 18px);
	background: #0085c2;
	border-radius: 50%;
	transform: translateY(-50%);
}
.plan > li:first-child .detail li::before {background: #3cb4e1;}
.plan > li:last-child .detail li::before {background: #004b8b;}
.option {padding-bottom: clamp(80px, calc(200/1440*100vw), 200px);}
.optiontitle {margin-bottom: clamp(50px, calc(100/1440*100vw), 100px);}
.optiontitle p {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	margin-bottom: 20px;
}
.optiontitle p::before,
.optiontitle p::after {
	content: "";
	flex: 1;
	height: 2px;
	background: #e6e6e9;
}
.optiontitle p span {
	flex-shrink: 0;
	color: #e6e6e9;
	font-family: "Audiowide";
	font-size: clamp(28px, calc(60/1440*100vw), 60px);
	line-height: 1.0;
	padding: 0 clamp(15px, calc(30/1440*100vw), 30px);
}
.optiontitle h3 {
	color: #ffffff;
	font-weight: bold;
	background: var(--color-blue);
	font-size: clamp(16px, calc(22/1440*100vw), 22px);
	line-height: 1.0;
	padding: 5px 15px;
	border-radius: 30px;
	display: block;
	width: fit-content;
	margin: 10px auto 0;
}
.option ul {
	max-width: 1200px;
	width: 90%;
	margin: 0 auto clamp(80px, calc(100/1440*100vw), 100px);
	gap: clamp(60px, calc(80/1440*100vw), 80px) 0;
	display: flex;
	flex-direction: column;
}
.option ul li {
	background: #fff;
	border-radius: 10px;
	box-shadow: 0px 0px 5px 0px rgba(0, 0, 0, 0.3);
	position: relative;
	padding: clamp(30px, calc(50/1440*100vw), 50px);
}
.option ul li dl dt {
	font-weight: bold;
	color: var(--color-dark);
	font-size: clamp(18px, calc(22/1440*100vw), 22px);
	border-bottom: 1px solid var(--color-blue);
	padding-bottom: clamp(10px, calc(20/1440*100vw), 20px);
	margin-bottom: clamp(10px, calc(20/1440*100vw), 20px);
}
.option ul li dl dt span {font-size: clamp(14px, calc(18/1440*100vw), 18px);}
.option ul li img {
	position: absolute;
	top: clamp(-50px, calc(-50/1440*100vw), -30px);
	width: clamp(180px, calc(300/1440*100vw), 300px);
}
.option ul li:first-child img {left: clamp(-50px, calc(-50/1440*100vw), -30px);}
.option ul li:last-child img {right: clamp(-50px, calc(-50/1440*100vw), -30px);}
.option ul li:first-child {padding-left: clamp(180px, calc(300/1440*100vw), 300px);}
.option ul li:last-child {padding-right: clamp(180px, calc(300/1440*100vw), 300px);}
.photograph {
	width: 100%;
	background-color: #eeeff3;
	background-image: url("../images/photograph_bg.webp");
	background-repeat: no-repeat;
	background-position: max(0px, calc(100vw - 750px)) top;
	background-size: auto 100%;
}
.photograph .inner {padding: clamp(60px, calc(80/1440*100vw), 80px) 35% clamp(60px, calc(80/1440*100vw), 80px) 10%;}
.photograph h3 {
	display: flex;
	align-items: center;
	justify-content: center;
	text-align: center;
	margin-bottom: clamp(20px,calc(30/1440*100vw),30px);
}
.photograph h3::before,
.photograph h3::after {
	content: "";
	flex: 1;
	height: 2px;
	background: #fff;
}
.photograph h3 span {
	flex-shrink: 0;
	color: var(--color-dark);
	font-size: clamp(20px, calc(28/1440*100vw), 28px);
	line-height: 1.0;
	padding: 10px 30px;
	background: #fff;
	border-radius: 50px;
}
.photograph p {
	color: var(--color-dark);
	font-size: clamp(14px, calc(18/1440*100vw), 18px);
	line-height: 1.8;
	margin-bottom: 30px;
}
.photograph div {
	text-align: center;
	font-weight: bold;
	color: var(--color-dark);
	font-size: clamp(16px, calc(22/1440*100vw), 22px);
}
.faq {
	border-left: 2px solid var(--color-blue);
	max-width: 1100px;
	width: 100%;
	margin: auto;
	padding: clamp(20px, calc(50/1200*100vw), 50px) clamp(20px, calc(50/1200*100vw), 50px) clamp(20px, calc(50/1200*100vw), 50px) ;
}
.accordion {
	max-width: 1000px;
	width: 100%;
	margin: 0 auto clamp(20px, calc(30/1200*100vw), 30px);
	background-color: #fff;
	border-radius: 10px;
}
.accordion summary {
	display: flex;
	justify-content: flex-start;
	align-items: center;
	position: relative;
	padding: 15px 20px;
	cursor: pointer;
}
.accordion summary span, .accordion div span {
	font-family: "Audiowide";
	font-size: clamp(20px, calc(30/1440*100vw), 30px);
	color: var(--color-blue);
	line-height: 1.0;
	padding-right: 10px;
}
.accordion summary p {
	color: var(--color-dark);
	font-weight: bold;
	font-size: clamp(16px, calc(22/1200*100vw), 22px);
	line-height: 1.5;
	padding-right: 5px;
}
.accordion summary::-webkit-details-marker {display: none;}
.accordion summary::after {
	width: 20px;
	height: 20px;
	margin-left: auto;
	background-image:url("../images/plus.webp");
	background-size: cover;
	content: '';
	transition: transform .3s;
	display: block;
	flex-shrink: 0;
}
.accordion[open] summary::after {
	transform: rotate(180deg);
	background-image: url("../images/minus.webp");
}
.accordion div {
	transform: translateY(-10px);
	opacity: 0;
	transition: transform .5s, opacity .5s;
	border-top: 1px solid var(--color-blue);
	margin: 0 20px;
	padding: 10px 0 30px;
	display: flex;
	align-items: flex-start;
	justify-content: flex-start;
}
.accordion[open] div {
	transform: none;
	opacity: 1;
}
.accordion div p {
	font-size: clamp(14px, calc(18/1200*100vw), 18px);
	line-height: 1.5;
}

/* 実績紹介
------------------------------------------------------------*/
.achievement {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	gap: clamp(60px, calc(80/1440*100vw), 80px) 0;
}
.achievement li {
	width: 48%;
	background: #fff;
	border-top: 5px solid var(--color-dark);
	position: relative;
	padding: clamp(20px, calc(30/1440*100vw), 30px);
	line-height: 1.5;
}
.achievement li > span {
	position: absolute;
	font-family: "Audiowide";
	font-size: clamp(25px, calc(40/1440*100vw), 40px);
	color: var(--color-dark);
	top: clamp(-36px, calc(-36/1440*100vw), -24px);
	left: 0;
	line-height: 1.0;
}
/*.request {text-align: center;}
.request p {
	display: inline-block;
	background: var(--color-blue);
	color: #fff;
	font-weight: bold;
	border-radius: 50px;
	padding: 5px 20px;
	line-height: 1.0;
	font-size: clamp(14px, calc(18/1440*100vw), 18px); 
}*/
.bbg {
	border-bottom: 2px solid #e6e6e9;
	padding-bottom: 20px;
	margin-bottom: 20px;
}
.copy {
	text-align: center;
	font-weight: bold;
	font-size: clamp(16px, calc(20/1440*100vw), 20px);
}
.copy span {
	color: var(--color-blue);
	font-size: clamp(18px, calc(24/1440*100vw), 24px);
}

/* コラム
------------------------------------------------------------*/
.column_li {
    width:100%;
	display: flex;
    flex-wrap: wrap;
	gap: 50px 2.75%;
	margin-bottom: clamp(60px, calc(100/1440*100vw), 100px);
}
.category{width:100%;display:flex;} 
.category h3{background: var(--color-navy);color:#FFF;width:20%;display:flex;align-items: center;justify-content: center;} 
.category ul{width:80%;display:flex;flex-wrap:wrap; gap:0.35%;row-gap:2px; border:1px solid  var(--color-navy);}
.category li{width:33.1%; text-align: center;}
.category a{background:#FFF;display:block;}
.category a:hover{background:var(--color-blue);color:var(--color-white);}
.column_li a {
	display: block;
	width: 31.5%;
	position: relative;
	background: #fff;
	border-radius: 10px;
	padding: clamp(20px, calc(30/1440*100vw), 30px);
	line-height: 1.5;
	transition: transform .3s;
}
.column_li a:hover {
	opacity: 1.0;
}
.column_li a::after {
	content: "";
	width: clamp(30px, calc(50/1440*100vw), 50px);
	height: clamp(30px, calc(50/1440*100vw), 50px);
	background: url("../images/arrow.webp") no-repeat;
	background-size: cover;
	position: absolute;
    left:50%;
	transform: translateX(-50%);
	bottom: clamp(-25px, calc(-25/1440*100vw), -15px);
	transition: transform .3s;
}
.column_li a:hover::after {transform: translateX(-50%) rotate(360deg);}
.column_li a::before {
	content: "";
	position: absolute;
	left: 0;
	bottom: 0;
	width: 100%;
	height: 4px;
	background: var(--color-blue);
	transform: scaleX(0);
	transform-origin: left;
	transition: transform .3s ease;
}
.column_li a:hover::before {transform: scaleX(1);}
.column_li a span,.column_detail .day {
	color: #fff;
	background: var(--color-blue);
	padding: 0 10px;
	border-radius: 30px;
}
.column_li a img {
	font-size: clamp(16px, calc(20/1440*100vw), 20px);
	font-weight: bold;
	color: var(--color-text);
	padding-top: 15px;
}
.column_li a p {
	font-size: clamp(16px, calc(20/1440*100vw), 20px);
	font-weight: bold;
	color: var(--color-text);
	padding-top: 15px;
}
.pager {
	display: flex;
	gap: clamp(10px, calc(15/1440*100vw), 15px);
	justify-content: center;
}
.pager a,.pager span {
	display: block;
	color: #fff;
	font-weight: bold;
	font-size: clamp(16px, calc(20/1440*100vw), 20px);
	background: var(--color-text);
	text-align: center;
	line-height: 1.0;
	padding: clamp(10px, calc(15/1440*100vw), 15px) clamp(15px, calc(20/1440*100vw), 20px);
	border-radius: 5px;
}
.pager span{
    color:var(--color-text);
    border:1px solid  var(--color-navy);
    background:none;
	padding: clamp(10px, calc(15/1440*100vw), 15px) clamp(15px, calc(20/1440*100vw), 20px);
}
.column_title {
	text-align: center;
	line-height: 1.8;
	font-weight: bold;
	color: var(--color-dark);
	font-size: clamp(18px, calc(24/1440*100vw), 24px);
	margin-bottom: clamp(30px, calc(50/1440*100vw), 50px);
}
.column_detail {
	background: #fff;
	border-radius: 10px;
	padding: clamp(30px, calc(50/1440*100vw), 50px);
}
.column_detail .content {
	margin-bottom: clamp(50px, calc(100/1440*100vw), 100px);
	line-height: 2;
	font-size: clamp(16px, calc(18/1440*100vw), 18px);
}
.column_detail .flex-center{align-items: center;gap:clamp(10px,calc(20/1440*100vw),20px);}
.column_detail .flex-center a{text-decoration: none;}
.column_detail a.btn {
	display: inline-block;
	max-width: 300px;
	width: 80%;
	background: var(--color-text);
	border-radius: 10px;
	text-align: center;
	color: #fff;
	font-weight: bold;
	font-size: clamp(16px, calc(20/1440*100vw), 20px);
	position: relative;
	text-shadow: 0 2px 0 var(--color-dark);
	padding: 10px 20px;

}
.column_detail a.btn::after {
    position:absolute;
    right:5%;
	top: 50%;
	transform: translateY(-50%) rotate(90deg);
    content:"";
    display:block;
    width:clamp(10px, calc(14/1440*100vw), 14px);
    aspect-ratio:21.47/12.23;
    background:url("../images/arrow.svg") no-repeat center / contain;
}
.column_detail a.btn:visited {color: #fff;}
.column_detail h2 {
	position: relative;
	text-align: center;
	margin-bottom: 80px;
	font-size: clamp(18px, calc(24/1440*100vw), 24px);
	color: var(--color-dark);
	font-weight: bold;
}
.column_detail h2:before {
    content: '';
    display: inline-block;
    position: absolute;
    bottom: -15px;
    left: 50%;
    transform: translateX(-50%);
    width: 100px;
    height: 4px;
    background-color: var(--color-yellow);
}
.column_detail h3 {
	margin-bottom: 30px;
	font-size: clamp(16px, calc(22/1440*100vw), 22px);
	color: var(--color-dark);
	line-height: 1;
    display: flex;
    align-items: center;
    padding: .5em .7em;
    background-color: #f2f2f2;
	font-weight: bold;
}
.column_detail h3::before {
    display: inline-block;
    width: 5px;
    height: 1.5em;
    margin-right: .5em;
    background-color: var(--color-blue);
    content: '';
}
.column_detail h4 {
	margin-bottom: 30px;
	font-size: clamp(14px, calc(18/1440*100vw), 18px);
	color: var(--color-blue);
	font-weight: bold;
}
.column_detail p {
	margin-bottom: 30px;
	font-size: clamp(14px, calc(18/1440*100vw), 18px);
}
.column_detail strong {
	background: linear-gradient(transparent 50%, var(--color-yellow) 0%);
	font-weight: bold;
	color: var(--color-dark);
}
.column_detail ul {margin-bottom: 30px;}
.column_detail ul li {
	position: relative;
	padding-left: 18px;
	font-size: clamp(14px, calc(18/1440*100vw), 18px);
	line-height: 1.0;
	margin-bottom: 15px;
}
.column_detail ul li:last-child {margin-bottom: 0;}
.column_detail ul li::before {
  content: '';
  display: inline-block;
  position: absolute;
  top: 4px;
  left: 0;
  width: 10px;
  height: 10px;
  background-color: var(--color-blue);
  border-radius: 5px;
}
.column_detail ol {margin-bottom: 30px;}
.column_detail ol li {
	font-size: clamp(14px, calc(18/1440*100vw), 18px);
	line-height: 1.0;
	margin-bottom: 15px;
	margin-left: 1em;
	padding-left: 0.5em;
}
.column_detail ol li:last-child {margin-bottom: 0;}
.column_detail ol li::marker {
  font-weight: bold;
  color: var(--color-blue);
}
.column_detail a {
	text-decoration: underline;
	color: var(--color-blue);
	font-weight: bold;
}
.column_detail a:hover {text-decoration: none;}
.column_detail a:visited {color: var(--color-dark);}
/*目次*/
.wp-block-aioseo-table-of-contents {border:1px solid #dfdfd1;padding:clamp(15px,calc(30/1280*100vw),30px);margin-bottom: clamp(50px,calc(90/1280*100vw),90px);}
.wp-block-aioseo-table-of-contents ul {counter-reset: section;}
.wp-block-aioseo-table-of-contents > ul a{display:block;margin-bottom:10px !important;}
.wp-block-aioseo-table-of-contents ul > li::before {display:none;}
.wp-block-aioseo-table-of-contents > ul > li {counter-increment: section;padding:0;margin:0 !important;}
.wp-block-aioseo-table-of-contents > ul > li > a::before { content: counter(section) ". ";font-weight: bold;}
/* 第2階層（子リスト）にも番号を付ける */
.wp-block-aioseo-table-of-contents ul ul { counter-reset: subsection;}
.wp-block-aioseo-table-of-contents ul ul > li { counter-increment: subsection;padding:0;margin:0 !important;}
.wp-block-aioseo-table-of-contents ul ul > li > a::before { content: counter(section) "-" counter(subsection) ". "; font-weight: normal; color: #555;}
@media only screen and (max-width:1024px){
	.photograph {
		background-image: url("../images/photograph_bgSP.webp");
		background-position: center bottom;
		background-size: 100% auto;
	}
	.photograph .inner {padding: clamp(60px, calc(80/1440*100vw), 80px) 5% 40% 5%;}
}
@media only screen and (max-width:768px){
	.titleB {text-align: center;}
	.titleR {
		flex-direction: column;
		align-items: center;
	}
	.titleR h3 {margin: 5px 0 0 0;}
	.greeting .conL, .outline .conL, .greeting .conR, .outline .conR {width: 100%;}
	.greeting .name {margin-bottom: 30px;}
	.greeting .name dt, .greeting .name dd {text-align: center;}
	.greeting .conR p {line-height: 1.8;}
	.outline .conL {margin-bottom: 50px;}
	.outline .conR dl dt {width: 100px;}
	.outline .conR dl dd {width: calc(100% - 100px);}
	.flow li {width: 100%;}
	.flow li img {
		width: 80px;
		height: 80px;
		top: -40px;
	}
	.plan {gap: 60px 0;}
	.plan > li {width: 100%;}
	.option ul li img {
		position:static;
		display: block;
		margin: -50px auto 10px;
	}
	.option ul li:first-child {padding-left: 30px;}
	.option ul li:last-child {padding-right: 30px;}
	.option ul li dl dt {text-align: center;}
	.faq {
		border-left: none;
		padding: 0;
	}
	.achievement li {width: 100%;}
    /*コラム*/
    .category {display:block;}
    .category h3{width:100%;}
    .category ul{width:100%;gap:0.6%;row-gap:2px;}
    .category li{width:49.7%;}
    .column_li{gap:3%; row-gap:40px;}
    .column_li a{width:48.5%;}    
}
/* 450px以下から------------------------------------------------------------*/
@media only screen and (max-width:450px){
    .column_li a{width:100%;} 
    .column_li a img{display:block;margin:auto;}
}