@charset "utf-8";
html, body, div, span, applet, object, iframe, h1, h2, h3, h4, h5, h6, p, blockquote, pre, a, abbr, acronym, address, big, cite, code, del, dfn, em, img, ins, kbd, q, s, samp, small, strike, strong, sub, sup, tt, var, b, u, i, center, dl, dt, dd, ol, ul, li, fieldset, form, label, legend, table, caption, tbody, tfoot, thead, tr, th, td, article, aside, canvas, details, embed, figure, figcaption, footer, header, hgroup, menu, nav, output, ruby, section, summary, time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
	box-sizing: border-box;word-break: break-all;
}

article, aside, details, figcaption, figure, footer, header, hgroup, menu, nav, section {
	display: block;
}

body {
	line-height: 1;
	/* -webkit-text-size-adjust: 100%; */
}

ol, ul {
	list-style: none;
}

blockquote, q {
	quotes: none;
}

blockquote:before, blockquote:after, q:before, q:after {
	content: '';
	content: none;
}

table {
	border-collapse: collapse;
	border-spacing: 0;
}

img {
	vertical-align: middle;
}

body {
	-webkit-font-feature-settings: 'palt';
	font-feature-settings: 'palt';
	text-rendering: optimizeLegibility;
	font-variant-ligatures: no-common-ligatures;
	-webkit-font-smoothing: subpixel-antialiased;
	-moz-osx-font-smoothing: unset;
}

@media only screen and(-webkit-min-device-pixel-ratio: 2), (min-resolution: 2dppx) {
	body {
		-webkit-font-smoothing: antialiased;
		-moz-osx-font-smoothing: grayscale;
	}
}

*, *::after, *::before {
	box-sizing: border-box;
	-webkit-overflow-scrolling: touch;
}

.clearfix:after {
	content: "";
	clear: both;
	display: block;
}

a {
	color: inherit;
	text-decoration: none;-webkit-tap-highlight-color:transparent;
}

a:hover {
	opacity: 0.8;
}

/*common*/
html {font-size: 18px;}
img {vertical-align: middle;}
body {color: #4d4d4d;font-family: 'Noto Sans JP', sans-serif;font-weight:500;letter-spacing:0.07em;}

.outer {width:100%;padding: 0 10px;}
.w700 {max-width: 720px;margin: 0 auto;padding: 0 10px;}
.w800 {max-width: 820px;margin: 0 auto;padding: 0 10px;}
.w900 {max-width: 920px;margin: 0 auto;padding: 0 10px;}
.w1100 {max-width: 1120px;margin: 0 auto;padding: 0 10px;}
a {transition: opacity 0.2s;will-change: contents;}
a:hover {opacity: 0.8;}
.spview {display: none;}
.pcview {display: block;}

@media screen and (max-width:750px) {
html {font-size: 3.7vw;}
.outer {padding: 0 6vw;}
.w700 {width: 100%;padding: 0 4vw;}
.w800 {width: 100%;padding: 0 4vw;}
.w900 {width: 100%;padding: 0 4vw;}
.w1100 {width: 100%;padding: 0 4vw;}
.spview {display: block;}
.pcview {display: none;}
}


/*header*/
header{position:fixed;top:0;left:0;width: 100%;background:rgba(255,255,255,0.95);height:90px;display:flex;align-items:center;justify-content:space-between;z-index:15;padding:0 2em;box-shadow:0 1px 5px rgba(0,0,0,0.1);}
header h1{flex-shrink:0;}
header h1 img{width:100%;height:50px;}
header h1 span{display:none;}

@media screen and (max-width:750px) {
header{height:60px;padding:0 14px;justify-content:space-between;}
header h1{position:relative;z-index:99;}
header h1 img{height:35px;width:auto;}
header nav{display:none;}

}

.headerbtn{position:absolute;top:50%;right:2em;z-index:25;transform: translateY(-50%);}
#openbtn{border:none;outline:none;padding:0;margin:0;background:none;-webkit-appearance:none;appearance:none;border-radius:none;z-index:1;
-webkit-tap-highlight-color: rgba(0,0,0,0);font-family:inherit;cursor:pointer;box-sizing:content-box;height:60px;width:65px;}
#openbtn span{position:absolute;right:0;transform:rotate(0deg);transform-origin:center center;transition:0.2s;display:block;height:3px;border-radius:10px;background:#0268CC;}
#openbtn span:nth-of-type(1){top:10px;width:65px;}
#openbtn span:nth-of-type(2){top:30px;width:50px;}
#openbtn span:nth-of-type(3){top:50px;width:35px;}

@media only screen and (max-width: 750px) {
.headerbtn{right:14px;}
#openbtn{height:41px;width:41px;}
#openbtn span{right:0;}
#openbtn span:nth-of-type(1){top:7px;width:34px;}
#openbtn span:nth-of-type(2){top:19px;width:26px;}
#openbtn span:nth-of-type(3){top:31px;width:18px;}
}



/*pulldown navi*/
#navi{display:block;position:fixed;top:0;width:400px;z-index:15;background:rgba(229,239,249, 0.95);right:-405px;height:100vh;box-shadow: -5px 2px 3px 0px rgba(0,0,0,0.1);transition:0.3s;}
#pulldown_navi{height:100%;overflow-y:auto;padding:90px 1em 200px;font-size:1.25em;font-weight:600;}
#pulldown_navi li{padding:1em 0.5em;border-bottom:1px dotted #aaa;}
#pulldown_navi li a:hover{text-decoration:underline;}

@media only screen and (max-width: 750px) {
#navi{display:none;position:absolute;width:100%;background:rgba(255, 255, 255, 0.97);left:0;right:unset;box-shadow:unset;transition:unset;z-index:14;}
#pulldown_navi{padding:60px 0 20vw;font-size:4.5vw;}
#pulldown_navi li{padding:0 4vw 0;border:none;}
#pulldown_navi li:first-child{box-shadow: 0 5px 5px -5px rgba(0,0,0,0.15) inset;padding-top:1vw;}
#pulldown_navi li a{display:inline-block;padding:5vw 2vw;border-bottom:1px dotted #aaa;width:100%;}
#pulldown_navi li a:hover{text-decoration:none;}
}


footer{background:#0268CC;color:#fff;padding:60px 0px 20px;}
footer .copy{font-size:0.7em;text-align: center;}
footer .company{text-align: center;margin-bottom:50px;line-height: 1;}
footer .company a{background:#fff;color:#0268CC;padding:0.7em 2em;display: inline-block;font-weight: 800;font-size: 1.25em;border-radius: 100px;}
@media only screen and (max-width: 750px) {
footer{padding:8vw 0px 4vw;}
footer .company{margin-bottom:6vw;}
footer .company a{padding:0.7em 2em;font-size: 1.1em;line-height: 1.3;}
}


.front_head{margin-top:90px;position: relative;}
.front_head img{width: 100%;height:60vh;object-fit: cover;}
.front_head .msg{position: absolute;top:50%;left:50%;transform: translate(-50%,-50%);background:rgba(255, 255, 255, 0.9);width: max-content;padding:1em 2.5em;}
.front_head .msg p{text-align: center;font-size: 2em;line-height: 1.7;font-family: 'Zen Maru Gothic', sans-serif;font-weight: 700;color:#D1121C;}
.front_head .msg p.strong{font-size: 2.3em;}
@media screen and (max-width:750px) {
.front_head{margin-top:60px;}
.front_head img{height:70vh;}
.front_head .msg{padding:1em 0em;width: 100%;}
.front_head .msg p{font-size: 1.2em;}
.front_head .msg p.strong{font-size: 1.7em;}
}

.title{margin-bottom:-0.4em;}
.blue{color:#0268CC;}
.bold{font-weight: 700;}

.section{padding:80px 0;}
.section.bg{background:#CCE0F4;}
.section h2{margin:-170px 0 40px;padding-top:170px;font-size:1.7em;text-align: center;color:#0268CC;font-weight: 700;}
.section p{line-height: 1.8;text-align: justify;}
.section p+p{margin-top:1em;}
.section p.right{text-align: right;}

.section .flex_box1{display:flex;align-items: self-start;justify-content: space-between;}
.section .flex_box1+.flex_box1{margin-top:50px;}
.section .flex_box1 .img{flex-shrink: 0;margin-right:50px;width: 40%;max-height: 400px;}
.section .flex_box1 .img img{width: 100%;max-height:400px;object-fit: cover;}
.section .flex_box1 .txt{ flex:1;margin-top:-0.5em;}

.section .flex_box1 h3{line-height: 1.8;color:#0268CC;font-weight: 600;font-size:1.2em;border-bottom: 3px double #CCE0F4;margin-bottom:0.5em;}
.section .flex_box1.reverse{flex-direction: row-reverse;}
.section .flex_box1.reverse .img{margin-right:0;margin-left:50px;}

.section table{width:100%;font-size:0.8em;line-height: 1.8;margin:40px auto 0;border-collapse: separate;border-spacing: 1px;}
.section table th{width:200px;padding:0.8em 0;background:#fff;vertical-align: middle;}
.section table td{padding:0.8em 2em;background:#fff;}
.section table a{text-decoration: underline;color:#0268CC;}
.section table+.flex_box1{margin-top:40px;}
.subtable{padding:0.5em 1.5em!important;}
.subtable table{margin:0;font-size:1em;line-height: 1.5!important;}
.subtable table p{line-height: 1;margin-bottom: 0.4em;color:#D1121C;font-size: 1.05em;font-weight: 600;}
.subtable table td img{width:180px;}
.subtable table td:has(>img){width:180px;padding-right:20px;}
.subtable table td{padding:1em 0.5em;width: unset;vertical-align: middle;}
.subtable table tr:not(:first-child) td{border-top:1px dotted #aaa;}

.section ul:not(.icon){margin:0.7em 0;}
.section ul:not(.icon) li{line-height: 1.8;text-align: justify;text-indent: -1.2em;padding-left: 1.2em;}
.section ul:not(.icon) li::before{content:"●";margin-right:0.2em;color:#0268CC;}
.section .cta{text-align: center;margin-top:40px;line-height: 1;}
.section .cta a{background:#0268CC;color:#fff;padding:0.8em 2.5em 0.9em;display: inline-block;font-weight: 600;font-size: 1.2em;border-radius: 100px;}

.section.message .img{width:250px;height:250px;margin:0 auto 30px;border-radius: 50%;overflow: hidden;}
.section.message .img img{width:100%;height:100%;object-fit: cover;}

.section.voice .voice_box{border:2px solid #CCE0F4;border-radius: 10px;padding:30px;box-shadow: 0 0 8px rgba(0,0,0,0.15);display: flex;align-items: center;justify-content: space-between;}
.section.voice .voice_box:not(:last-of-type){margin-bottom:40px;}
.section.voice .voice_box .profile{margin-right: 50px;}
.section.voice .voice_box .txt{flex:1;font-size: 0.9em;}
.section.voice .voice_box p.img{width:130px;height:130px;border-radius: 50%;overflow: hidden;}
.section.voice .voice_box p.img img{width:100%;height:100%;object-fit: cover;}
.section.voice .voice_box p.name{font-size: 0.85em;font-weight: 600;line-height: 1.5;text-align: center;margin-top:0.7em;}
.section.voice .voice_box p.career{margin-top:0;font-size: 0.75em;line-height: 1.5;text-align: center;}

.section.sns .icon{display: flex;align-items: center;justify-content: center;}
.section.sns .icon li{font-size: 1.7em;margin:0 0.4em;color: #01488E;}

.section.benefit .flex_box1 p+p{margin-top: 0.5em!important;}
.section.benefit .flex_box1{margin-bottom: 1.5em;}
.section.benefit .flex_box1+p{margin-bottom: 0.5em;font-weight: 700;}
.section .flex_benefit{display:flex;align-items: self-start;justify-content: center;gap:10px;}

.section .benefit_item{width: calc((100% - 20px) /3);}
.section .benefit_item .img{width: 100%;border:1px solid #CCE0F4;padding:5px;}
.section .benefit_item .img img{width: 100%;}
.section .benefit_item h3{text-align: center;color: #0268CC;margin-bottom: 0.5em;font-weight: 600;}
.section .benefit_item p{text-align: center;line-height: 1.6;font-size: 0.8em;}



@media screen and (max-width:750px) {
.section{padding:10vw 0;}
.section h2{margin:-20vw 0 1em;padding-top:20vw;font-size:1.45em;}

.section .flex_box1{display:block;}
.section .flex_box1+.flex_box1{margin-top:6vw;}
.section .flex_box1 .img{margin-right:0;width: 100%;max-height: unset;}
.section .flex_box1 .img img{height:100%;}
.section .flex_box1 .txt{margin-top:1em;}

.section .flex_box1 h3{font-size:1.2em;margin-bottom:0.7em;}
.section .flex_box1.reverse .img{margin-left:0;}

.section table{font-size:0.85em;margin:1.5em auto 0;line-height: 1.7;}
.section table th{width:30%;padding:0.5em 0;}
.section table td{padding:0.5em 1em;}
.section table+.flex_box1{margin-top:5vw;}

.subtable{padding:0em 1em!important;}
.subtable table{font-size:0.9em;display: block!important;padding:0!important;margin-top:0;}
.subtable table p{font-size: 1em;}
.subtable table td img{width:70%;}
.subtable table td:has(>img){width:100%;padding-right:0;padding-bottom:0em;}
.subtable table td{padding:1em 0em;width: 100%;display: block!important}
.subtable table tr:not(:first-child) td{border:none;}
.subtable table tr:not(:last-child) td:last-child{border-bottom:1px dotted #aaa;}

.section .cta{margin-top:6vw;}
.section .cta a{padding:0.7em 2em 0.8em;font-size: 1.1em;}

.section.message .img{width:45vw;height:45vw;margin:0 auto 4vw;}

.section.voice .voice_box{padding:5vw 5vw 4vw;display: block;box-shadow: 0 0 4px rgba(0,0,0,0.15);}
.section.voice .voice_box:not(:last-of-type){margin-bottom:4vw;}
.section.voice .voice_box .profile{margin-right: 0;}
.section.voice .voice_box .txt{margin-top:0.8em;font-size: 0.85em;}
.section.voice .voice_box .txt p{line-height: 1.7;}
.section.voice .voice_box p.img{width:25vw;height:25vw;margin:0 auto;}
.section.voice .voice_box p.career{margin-top:0.2em;}

.section .flex_benefit{display:block;}
.section .benefit_item{width: 85%;margin:0 auto 4vw;}
.section .benefit_item .img{width: 100%;padding:1vw;}
.section .benefit_item .img+div{flex:1;margin-left:1em;}
.section .benefit_item h3{text-align: left;}
.section .benefit_item p{text-align: justify;}

.section.benefit .flex_box1+p{text-align: center;}
}




.benefit_bottom_box{margin-top:50px;border:2px solid #CC0268;border-radius: 10px;padding:15px 30px 30px 25px;display: flex;align-items: center;justify-content: space-between;background:#FCF2F7;}
.benefit_bottom_box .img{width:200px;flex-shrink: 0;margin-right: 30px;}
.benefit_bottom_box .img img{width:100%;}
.benefit_bottom_box h3{font-size:1.25em;font-weight:800;color:#CC0268;margin-top:20px;}
.benefit_bottom_box h3 span{background-image: radial-gradient(circle at center, #CC0268 20%, transparent 25%); /* 点の色とサイズ調整 */
  background-position: top right; /* 点の位置 */
  background-repeat: repeat-x; /* 横方向に繰り返し */
  background-size: 1.06em 0.3em; /* 点の間隔とサイズ調整 */
  padding-top: .3em; /* 縦方向の位置調整 */}
.benefit_bottom_box p{font-size:0.9em;line-height: 1.8;margin-top:0.8em;}
.benefit_bottom_box p span{color:#CC0268;font-weight: 600;}
.benefit_bottom_box p+p{margin-top:0.4em;}

@media screen and (max-width:750px) {
.benefit_bottom_box{margin-top:7vw;padding:4vw;display: block;}
.benefit_bottom_box .img{width:65%;margin: 0 auto;}
.benefit_bottom_box h3{margin-top:1vw;line-height: 2;text-align: center;}
.benefit_bottom_box p{line-height: 1.7;margin-top:0.2em;}
.benefit_bottom_box h3 span{  padding-top: .2em}
}





.movie{margin-top:60px;position: relative;height:400px;padding-top:45%;}
.movie iframe{width:80%;height:100%;position: absolute;top:0;left:10%;}
@media screen and (max-width:750px) {
.movie{margin-top:7vw;padding-top:0;height:50vw;}
.movie iframe{width:100%;left:0%;}
}




.demoTxt {
opacity:0;
}
.demoTxt span {
opacity: 0;transform: scale(3);display: inline-block;
-webkit-transition: .6s ease-in-out;
transition: .6s ease-in-out;
}




.require{margin-top:30px;text-align: center!important;background:#fff;color:#0268CC;padding:0.5em 2.5em 0.5em;font-weight: 600;border-radius: 6px;line-height: 1;font-size: 0.95em;border:1px solid #67A4E0;position: relative;cursor: pointer;transition: background 0.2s,color 0.2s,transform 0.2s;}
.require:hover{background:#0268CC;color:#fff;}
.require span{position: absolute;right:1.5em;top:0.5em;transition:transform 0.2s;}
.require_box{display: none;}
.require_box table{margin-top:10px;border:1px solid #67A4E0;}
.require_box table th{vertical-align: middle;}
.require_box+p{margin-top:30px;}

@media screen and (max-width:750px) {
.require{margin-top:5vw;}
.require_box table{margin-top:3vw;}
.require_box+p{margin-top:5vw;}
}

.movie{margin-top:60px;padding:0 50px;}

@media screen and (max-width:750px) {
.movie{margin-top:7vw;padding:0;}
}















































































































































