:root{
	--color-kon:#0B48A0 ;
	--color-blue:#04A5E1;
	--color-light-blue:#cff1fe;
	--color-green:#48CA70;
	--light-gray:#E3E3E3;
	--bright-gray:#eeeeee
}

@media (max-width:960px) {
	html {
	  scroll-padding-top: 3.4em;
	}
}

.dp-header{
	background:url(../img/bg-key.jpg) top right / cover no-repeat;
	padding-top:2.8em;
	padding-bottom:2.8em;
}
@media (max-width:960px) {
	.dp-header{
		padding:.6em;
		margin-bottom:1.2em;
	}
}
.dp-header-wrap{
	display:flex;
	justify-content:space-between;
	gap:.8em;
	max-width:1254px;
	width:100%;
	background:url(../img/bg-header.svg) left / cover no-repeat , rgba(255, 255, 255, .8);
	border-radius:.8em;
	margin-left:auto;
	margin-right:auto;
	padding:2.6em 2.8em;
}

@media (max-width:1260px) {
	.dp-header{
		padding:1em;
	}
}

@media (max-width:960px) {
	.dp-header-wrap{
		flex-flow:column;
		padding:1.6em;
	}
}
.dp-header-wrap-main{
	width:56%;
}
@media (max-width: 960px) {
	.dp-header-wrap-main{
		width:100%;
	}
}
.dp-header-wrap-youtube{
	width:42%;
	margin-top:4.2em;
}
@media (max-width: 960px) {
	.dp-header-wrap-youtube{
		width:100%;
		margin-top:2.4em;
	}
}

.dp-header-wrap-main-tags{
	display:flex;
	gap:.8em;
	margin-bottom:1.25em;
}
.dp-header-wrap-main-tags-item{
	background:#04A5E1;
	border-radius:.4em;
	color:#FFF;
	font-weight:bold;
	font-size:1.2rem;
	padding:.6em .8em;
	letter-spacing:normal;
}
@media (max-width: 960px) {
	.dp-header-wrap-main-tags-item{
		font-size:.8rem;
	}
}
.dp-header-wrap-main-title{
	color:#0C3544;
	font-size:2.4rem;
	font-weight:bold;
	letter-spacing:.1em;
	margin-bottom:.5em;
	line-height:1.2;
}
@media (max-width: 960px) {
	.dp-header-wrap-main-title{
		color:#0C3544;
		font-size:1.4rem;
		margin-bottom:.8em;
	}
}
.dp-header-wrap-main-text{
	font-size:1.1rem;
}
@media (max-width: 960px) {
	.dp-header-wrap-main-text{
		font-size:1rem;
	}
}
.dp-header-wrap-main-text-tel{
	display:flex;
	gap:.2em;
	align-items:center;
	color:var(--color-kon);
	font-size:2rem;
	font-weight:bold;
	margin-top:.8em;
	margin-bottom:.9em;
}
@media (max-width: 960px) {
	.dp-header-wrap-main-text-tel{
		flex-flow:column;
	}
}
/*
.dp-header-wrap-main-text-tel:before{
	content:"";
	display:inline-block;
	width:40px;
	height:26px;
	background:url(../img/ico-freedial.svg) center / cover no-repeat;
}
*/
.dp-header-wrap-main-text-tel-num{
	letter-spacing:.05em;
	display:block;
	display:flex;
	align-items:center;
}
.dp-header-wrap-main-text-tel-num::before{
	content:"";
	display:inline-block;
	margin-right:.2em;
	width:40px;
	height:26px;
	margin-top:.05em;
	background:url(../img/ico-freedial.svg) left center / cover no-repeat;
}
.pagelink{
	width:98%;
	display:flex;
	gap:.4em;
	justify-content:space-between;
}

@media (max-width: 960px) {
	.pagelink{
		width:100%;
		gap:1.2em;
	}
}
@media (max-width: 767px) {
	.pagelink{
		gap:1.6em;
		flex-flow:column;
	}
}
.pagelink-box{
	width:calc(50% - .4em * 2 );
	border:1px solid var(--color-kon);
	border-radius:.4em;
	padding:.6em 1em;
	display:block;
	background:#FFF;
	box-shadow: 0 0 10px 1px #c5c8d8;
	transition:.6s box-shadow !important;
	text-decoration: none !important;
	color:#111;
}
@media (max-width: 960px) {
	.pagelink-box{
		width:100%;
	}
}
.pagelink-box:hover{
	box-shadow: 0 0 10px 2px #babdd1;
}
.pagelink-box-title{
	display:flex;
	align-items:center;
	justify-content:center;
	font-size:1.3rem;
	padding:0 0 .6em;
	color:var(--color-kon);
	position:relative;
}
@media (max-width: 960px) {
	.pagelink-box-title{
		padding:.2em 0 .6em;
		font-size:1.15rem;
	}
}
.pagelink-box-title::before{
	content:"";
	display:block;
	width:1rem;
	height:1rem;
	background:url(../img/ico-under.svg) center / cover no-repeat;
}
.pagelink-box-title::after{
	content:"";
	display:block;
	width:100%;
	height:1px;
	position:absolute;
	bottom:0;
	background:var(--color-kon);
	border-bottom:solid 2px var(--color-kon);
	margin: 0 ;
}
.pagelink-box-text{
	font-size:1rem;
	padding:.6em 1.2em 0;
}
@media (max-width: 960px) {
	.pagelink-box-text{
		font-size:.9rem;
	}
}
.youtube{
  width: 100%;
  aspect-ratio: 16 / 9;
}
.youtube iframe {
  width: 100%;
  height: 100%;
}

.contact{
	max-width:470px;
	width:100%;
	font-size:.9rem;
	position:fixed;
	bottom:0;
	left:4em;
	z-index:calc(infinity);
}
@media (max-width:960px){
	.contact{
		max-width:180px;
		width:100%;
	    bottom: 6.5em;
	    left: 1em;
	    z-index:1;
	}
}
.contact-wrap{
	box-shadow: 0 0 12px 1px #cecece;
	border-radius:.8em .8em 0 0;
	overflow:hidden;
	background: #F5F5F5;
}
@media (max-width:960px){
	.contact-wrap{
		background: #F5F5F5;
		border-radius:.8em;
		margin-top:3.4em;
	}
}

@media (max-width:960px){
	.contact.open{
		display:flex;
		align-items:center;
		justify-content: center;
		left:0;
		top:0;
		max-width:initial;
		width:100vw;
		height:100vh;
		background-color: rgba(77, 111, 138, 0.8);
		border-radius:0;
	}
	.contact-wrap{
		width:calc(100% - .8em * 2);
		box-shadow: 0 0 12px 1px #6e6e6e;
	}
}
.contact-open{
	display:flex;
	justify-content: center;
	align-items:center;
	background:#48CA70;
	border-radius:.8em;
	width:22em;
	padding-top:1em;
	padding-bottom:1em;
	padding-right:1em;
	margin-bottom:4em;
	box-shadow: 0 0 12px 1px #cecece;
	cursor:pointer;
}
@media (hover: hover){
	.contact-open{
		transition:background-color .4s , box-shadow .4s ;
	}
	.contact-open:hover{
		background:#6fd58d;
		box-shadow: 0 0 18px 1px #cecece;
	}
}

@media (max-width:960px){
	.contact-open{
		gap:.4em;
		width:14em;
		margin-bottom:6em;
		padding-top:.28em;
		padding-bottom:.28em;
		padding-right:.6em;
		box-shadow: 0 0 5px 1px #758ba2;
	}
}
.contact-open::before{
	content:"";
	display:block;
	width:2.4em;
	height:2.4em;
	background:url(../img/ico-tel.svg) left center / cover no-repeat;
	margin-left:1.2em;
	margin-right:.4em;
}
@media (max-width:960px){
	.contact-open::before{
		margin-left:.8em;
		margin-right:.2em;
		width:3em;
		height:3em;
		background:url(../img/ico-tel.svg) left center / contain no-repeat;
	}
}
.contact-open::after{
	content:"";
	display:block;
	margin-left:.6em;
	width: 0;
	height: 0;
	border-left: .6em solid transparent;
	border-right: .6em solid transparent;
	border-top: .6em solid #FFF;
	cursor:pointer;
}
@media (max-width:960px){
	.contact-open::after{
		margin-left:.2em;
	}
}
.contact-open-title{
	font-size:1.4rem;
	font-weight:bold;
	color:#FFF;
	padding:.6em 0;
}
@media (max-width:960px){
	.contact-open-title{
		font-size:1rem;
		width:100px;
		line-height:1.2;
	}
}
.contact-header{
	display:flex;
	justify-content: center;
	align-items:center;
	background:#48CA70;
	padding-top:.24em;
	padding-bottom:.24em;
	padding-right:.8em;
}
@media (max-width:767px) {
	.contact-header{
		padding-right:2em;
	}
}
.close-mark{
	display: block;
	position: absolute;
	right:1em;
	width: 1.8em;
	height: 1.8em;
	border-radius: 50%;
	background: #fff;
	margin-left:1.4em;
	cursor:pointer;
}
@media (max-width:960px){
	.close-mark{
		right:2.2em;
		width: 2.2em;
		height: 2.2em;
	}
}
.close-mark::before,.close-mark::after {
  content: "";
  position: absolute;
  top: 50%;
  left: 50%;
  width: 2px; /* 棒の幅（太さ） */
  height: 14px; /* 棒の高さ */
  background: #2d994e; /* バツ印の色 */
}


@media (max-width:960px){
	.close-mark::before,.close-mark::after {
		width: 3px; /* 棒の幅（太さ） */
		height: 16px; /* 棒の高さ */
	
	}
}

.close-mark::before {
  transform: translate(-50%,-50%) rotate(45deg);
}
 
.close-mark::after {
  transform: translate(-50%,-50%) rotate(-45deg);
}

.contact-header:before{
	content:"";
	display:block;
	width:3em;
	height:3em;
	background:url(../img/ico-tel.svg) left center / cover no-repeat;
	margin-left:-.2em;
	margin-right:.6em;
}
@media (max-width:960px){
	.contact-header:before{
		width:2.2em;
		height:2.2em;
	}
}
.contact-header-title{
	font-size:1.7rem;
	font-weight:bold;
	color:#FFF;
	padding:.6em 0;
}
@media (max-width:960px){
	.contact-header-title{
		font-size:1.2rem;
	}
}
.contact-question-title{
	font-size:1rem;
	color:var(--color-kon);
	text-align:center;
	margin-top:1.2em;
	margin-bottom:1.2em;
	line-height:1.5;
}
@media (max-width:960px){
	.contact-question-body{
		height:45vh;
		overflow:auto;
	}
}
.contact-question-body-form-btn{
	display:flex;
	justify-content: space-between;
	margin-top:1.6em;
	margin-bottom:1.2em;
}
@media (max-width:960px){
	.contact-question-body-form-btn{
		margin-bottom:1.5em;
	}
}
.change-content{
	background:#F5F5F5;
	padding-left:2em;
	padding-right:2em;
}
@media (max-width:960px){
	.change-content{
		border-radius:0 0 .8em .8em;
		padding-left:1em;
		padding-right:1em;
	}
}
.contact-message{
	margin-top:2em;
	padding:.8em;
	line-height:1.3;
}
@media (max-width:960px){
	.contact-message{
		margin-top:1em;
	}
	.contact-message-text{
		font-weight:bold;
		text-align:center;
		padding:.4em;
	}
}
.contact-content-title{
	font-size:.95rem;
	font-weight:normal;
	border-left:var(--color-kon) solid .2em;
	border-left:var(--light-gray) solid .2em;
	color:var(--color-kon);
	padding:.4em .6em;
	line-height:1.3;
	margin-bottom:.2em;
}
@media (max-width:960px){
	.contact-content-title{
		margin-top:.4em;
		padding:.3em;
	}
}
.contact-content-text{
	line-height:1.5;
	margin-bottom:.8em;
	padding:0 .8em;
}
@media (max-width:960px){
	.contact-content-text{
		margin-bottom:.6em;
		padding:0;
	}
}
.contact-content-text:last-child{
	margin-bottom:0;
}

.error-box{
	font-weight:bold;
	color:#c22f10;;
	background:#fee9e0;
	margin-top:1.6em;
	margin-bottom:1.1em;
	border-radius:.4em;
	text-align:center;
	padding:.6em 0;
}

.btn-back,.btn-next{
	border: none;
	background: #E3E3E3;
	margin: 0;
	font: inherit;
	color: inherit;
	cursor: pointer;
	outline: none;
}
.btn-back{
	margin-left:.8em;
	padding:.8em .8em .8em 1.2em;
}
.btn-next{
	margin-right:.8em;
	padding:.8em  1.2em .8em .8em;
}
.contact-question-body-form-wrap{
	line-height:1.5;
	padding:1em;
}
.contact-question-body-form-wrap-list{
	padding-top:.4em;
	padding-bottom:.4em;
}
.contact-question-body-form-wrap-list-content input{
	margin-right:.4em;
}
.toppage-index{
	display:flex;
	align-items:center;
	gap:.4em;
	padding:.8em .4em;
	color:var(--color-kon);
	border-top:solid 3px var(--color-kon);
	border-bottom:solid 3px var(--color-kon);
	line-height:1.3;
}
.toppage-index::before{
	content:"";
	display:inline-block;
	width:14px;
	height:12px;
	background:url(../img/ico-wave.svg) left center / cover no-repeat;
}

@media (max-width:960px){
	.toppage-index{
		font-size:1.4rem;
	}
}

.kanpa{
	max-width:930px;
	width:100%;
	margin:0 auto 2.8em
}
.kanpa-link-img{
	width:100%;
}

@media (max-width:960px){
	.kanpa{
		margin:0 0 1.6em;
		padding:0 1em;
	}
}

@media (max-width:767px) {
	.t-tel-link{
		font-size:.72em;
	}
}
@media (max-width:450px) {
	.t-tel-link{
		font-size:.65em;
	}
}
.faq-header{
	font-size:1.1rem;
	text-align:center;
	padding:1.2em 0;
	border-radius:.4em;
}
@media (max-width: 767px) {
	.faq-header{
		font-size:1rem;
		padding:.5em .8em 0em;
	}
}
.faq-header p{
	color:var(--color-kon);
	font-weight:bold;
	line-height:1.4 !important;
}

.faq-que{
	display:flex;
	align-items: center;
	font-size:1.25rem;
	font-weight:bold;
	color:var(--color-blue);
	background:#F6F6F6;
	padding:.6em 1.6em .6em .6em ;
	border-radius:.4em;
	position:relative;
	line-height:1.3;
	margin-top:1.2em;
	margin-bottom:1.2em;
	cursor:pointer
}
@media (max-width: 767px) {
	.faq-que{
		font-size:1rem;
		padding:.6em 2.4em .6em .6em ;
	}
}
.faq-que::before{
	content:"Q";
	display:inline-block;
	background:#FFF;
	border-radius:.4em;
	display:flex;
	align-items: center;
	justify-content: center;
	width:2em;
	height:2em;
	margin-right:.4em;
}
.faq-que-text{
	display:inline-block;
	width:90%;
}
.faq-ans{
	padding:0 1.2em .4em;
	margin-top:-.6em;
	line-height:1.6;
	font-size:1rem;
}
.ico-plus,
.ico-minus{
	display:inline-block;
	width:1.1em;
	height:1.1em;
	position:absolute;
	right:.6em;
}

.ico-plus{
	background:url(../img/ico-plus.svg) left center / cover no-repeat;
}
.ico-minus{
	background:url(../img/ico-minus.svg) left center / cover no-repeat;
}

.information-top-title{
	display:flex;
	align-items:center;
	gap:.4em;
	background:var(--color-kon);
	font-size: min(4.5vw, 1.1rem);
	color:#FFF;
	margin:1.6em 0 .8em;
	padding:.8em;
}
.information-top-title::before{
	content:"";
	display:block;
	width:1.1em;
	height:1.1em;
	background:url(../img/ico-info.svg) left center / cover no-repeat;
}
.information-outline{
	margin-top:.2em;
	font-size:.9rem;
	line-height:1.3;
}
.dpinfo{
	display:flex;
	gap:1.6em;
	justify-content:space-between;
	padding:.8em .8em .7em ;
	border-bottom:solid  1px var(--light-gray);
}
@media (max-width:767px){
	.dpinfo{
		flex-flow:column;
		gap:.2em;
	}
}
.dpinfo-date{
	font-weight:bold;
	color:#717171;
	font-size:.85em;
	letter-spacing:.1em;
	line-height:1.4;
	white-space: nowrap;
}
.dpinfo-content{
	line-height:1.4;
	margin-top:-.15em;
	width:100%;
}
.dpinfo-content a[target="_blank"]::after{
	top:0;
	content:none;
}
@media (max-width:767px){
	.dpinfo-date{
		width:100%;
	}
	.dpinfo-content{
		width:100%;
	}
}
.information-more-link{
	margin-top:1em;
	text-align: right;
}
.information-more-link a{
	position: relative;
	display: inline-block;
	padding: 0 1.2em;
	border-radius: 8px;
	font-size: .9rem;
	font-weight:bold;
	color: var(--color-kon);
	text-decoration: none;
	transition: .4s all;
	letter-spacing:.08em;
}
.information-more-link a::before {
	content: '';
	position: absolute;
	top:0;
	bottom: 0;
	right:0;
	width: 1em;
	height: 1em;
	margin: auto;
	border-radius: 20px;
	background-color:var(--color-kon);
	transition: .4s all;
}
.information-more-link a::after {
	content: '';
	position: absolute;
	top:0;
	bottom:0;
	right: .21em;
	width: 0;
	height: 0;
	margin: auto;
	border-top: 3px solid transparent;
	border-right: 0 solid transparent;
	border-left: 5px solid #ffffff;
	border-bottom: 3px solid transparent;
	box-sizing: border-box;
}
.information-more-link a:hover{
	color:var(--color-green);
}
.information-more-link a:hover::before{
	background-color:var(--color-green);
}
.info-link{
	text-decoration:none !important;
}


/* CONTACT */
.check{
	border:solid 1px var(--color-kon);
	margin-bottom:1.6em;
}
.check-title{
	display:flex;
	justify-content:center;
	align-items:center;
	color:#FFF;
	font-size:1.2rem;
	font-weight:bold;
	text-align:center;
	background:var(--color-kon);
	padding:1em;
}
.check-title::before{
	content:"";
	display:block;
	width:1.1em;
	height:1.1em;
	background:url(../img/ico-check.png) left center / cover no-repeat;
	margin-right:.2em;
}
.check-list{
	padding:1.2em;
}
.check-list-title{
	font-size:1.05rem;
	font-weight:bold;
	padding-bottom:.4em;
	padding-left:.2em;
	border-bottom:solid var(--color-kon) 1px !important;
	line-height:1.3;
}
.check-list-content{
	padding:.8em;
	border-radius:.4em;
	margin-bottom:1em;
	line-height:1.3;
}
.check-list-content:last-child{
	margin-bottom:0;
}
@media (max-width:960px){
	.check-title{
		font-size:1rem;
	}
	.check-list-title{
		font-size:.95rem;
	}
	.check-list-content{
		font-size:.85rem;
	}
}
.t-pdd2em{
	padding:1.6em;
}
.t-pdt1{
	padding-top:1em;
}
.t-pdb1{
	padding-bottom:1em;
}
.t-pdl1{
	padding-left:1em;
}
change-content
.t-pdr1{
	padding-right:1em;
}
.t-pdr2{
	padding-right:2em;
}
.t-pdt2{
	padding-top:2em;
}
.t-pdd1{
	padding:1em;
}
.t-mg2em{
	margin:2em;
}
.t-mgt1{
	margin-top:1em;
}
.t-mgt2{
	margin-top:2em;
}
.t-mgb05{
	margin-bottom:.5em;
}
.t-mgb1{
	margin-bottom:1em;
}
.t-mgb2{
	margin-bottom:2em;
}
.t-mgl2{
	margin-left:2em;
}
.t-mgr2{
	margin-right:2em;
}

.t-bg-w{
	background:#FFF;
}

.t-radius{
	border-radius:.4em ;
}
.t-list-content{
	list-style-type: none;
	text-indent:-1em;
	margin-left:1em;
	line-height:1.3;
}
.t-list-style-none{
	list-style-type: none;
}
.t-hidden{
	visibility:hidden;
}
.t-none{
	display:none;
}

.t-pc-none{
	display:none;
}
@media (max-width:960px){
	.t-sp-none{
		display:none;
	}
	.t-pc-none{
		display:inline;
	}
}
.t-btn-style{
	display:flex;
	align-items: center;
	background:#E3E3E3;
	font-weight:bold;
	color:var(--color-kon);
	border-radius:.4em;
	position:relative;
}
.t-btn-style-before{
	padding-right:.32em;
}
.t-btn-style-next{
	padding-left:.32em;
}
.t-btn-style-before::before{
	content:"";
	display:inline-block;
	width:.8em;
	height:.8em;
	background:url(../img/arrow-lt.svg) no-repeat;
	position:absolute;
	left:.8em;
}
.t-btn-style-next::after{
	content:"";
	display:inline-block;
	width:.8em;
	height:.8em;
	background:url(../img/arrow-gt.svg) no-repeat;
	position:absolute;
	right:.8em;
}

@keyframes fadeIn {
  from {
    opacity: 0; /* 初期状態は透明 */
  }
  to {
    opacity: 1; /* 完全に表示された状態 */
  }
}
.t-toggle-fade{
	animation: fadeIn .5s ease-in-out; 
}
.t-f-mini{
	font-size:1rem;
}
.t-f-black{
	color:#000;
}
.t-f-weight-normal{
	font-weight:normal;
}c
.t-f-weight-bold{
	font-weight:bold;
}
.t-maker{
	background: linear-gradient(transparent 65%, #FFFAB1 0%);
}
.t-link-noline{
	text-decoration:none !important;
}
.t-color-kon{
	color:var(--color-kon);
}
.t-uarrow{
	display: inline-block;
	vertical-align: middle;
	color: #333;
	line-height: 1;
	width: 1em;
	height: 1em;
	border: 0.1em solid currentColor;
	border-left: 0;
	border-bottom: 0;
	box-sizing: border-box;
	transform: translateY(-25%) rotate(135deg);
}
@media (max-width:767px){
	.t-ryaku{
		display:inline-block;
		width: 180px;
	    white-space: nowrap;
	    overflow: hidden;
	    text-overflow: ellipsis;
	}
}

.t-have-scroll{
	color:var(--color-kon);
	background:var(--color-light-blue);
	margin-bottom:.8em;
	border-radius:.4em;
	text-align:center;
	padding:.2em;
}

.is-pc{
	color:#000;
	text-decoration:none !important;
	pointer-events: none;
}

.sampleimg img{
	width:100%;
	height:auto
}