@charset "utf-8";
/* --------------------------------------------------
	reset
-------------------------------------------------- */
* { margin: 0; padding: 0; box-sizing: border-box;}

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,
form, 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%;
	vertical-align: baseline;
}

img{ vertical-align: bottom;}
ul{ list-style: none;}
ul li{ list-style-type: none;}
figure { margin: 0;}


/* =============================================================================
   Forms
   ========================================================================== */
form { margin: 0;}
fieldset { border: 1px solid #c0c0c0; margin: 0 2px; padding: 0.35em 0.625em 0.75em;}
legend { border: 0;}
button,
input,
select,
textarea { font-size: 100%; margin: 0; vertical-align: baseline;}
button,
input { line-height: normal;}
button,
input[type="button"], 
input[type="reset"], 
input[type="submit"] { cursor: pointer; -webkit-appearance: button; }
input[type="checkbox"],
input[type="radio"] { box-sizing: border-box; padding: 0;}
input[type="search"] {
  -webkit-appearance: textfield;
  -moz-box-sizing: content-box;
  -webkit-box-sizing: content-box;
  box-sizing: content-box;
}
input[type="search"]::-webkit-search-decoration { -webkit-appearance: none;}

button::-moz-focus-inner,
input::-moz-focus-inner { border: 0; padding: 0; }
textarea { overflow: auto; vertical-align: top;}
input[type="search"]:focus { outline: none;}

table {
    border-collapse: collapse;
    border-spacing: 0;
}

@media (max-width: 481px) {
}



/*		font-style
-------------------------------------------------- */
body { width: 100%;
	background: #f9f8f3;
	font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;
/*	font-family: "Yu Gothic", "游ゴシック", YuGothic, "游ゴシック体", "ヒラギノ角ゴ Pro W3", "メイリオ", sans-serif;*/
	font-size: 16px;
	*font-size:small;
	*font:x-small;
	line-height: 1.6;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
}
input, textarea {font-family: "Noto Sans JP","Hiragino Kaku Gothic Pro","ヒラギノ角ゴ Pro W3","メイリオ","Meiryo","ＭＳ Ｐゴシック",sans-serif;}
.min {font-family: "游明朝", "Yu Mincho", "YuMincho", serif;}

body.fixed { position: fixed;}

::selection{ background: #feffaf; color: #000;}
::-moz-selection{ background: #feffaf; color: #000;}


a { color:#002159; text-decoration: underline;}
a:link   { color:#002159;}
a:visited{ color:#002159;}
a:hover  { color:#002159;}
a:active { color:#002159;}

em{ font-style: normal;}


/*		utility
-------------------------------------------------- */
.cf{ clear: both;}
.cf:after{ content: ''; display: block; clear: both;}

@media (max-width: 641px) {
}


#contact ul li label.error {
	position: absolute; top: -30px; left: -10px;
	padding: 5px 8px;
	background: #d00; border-radius: 5px;
	color: #fff; font-size: 12px;
	opacity: 0;
	animation: .5s showError linear forwards .2s;
}
#contact ul li label.error:before{ content: ''; display: block; width: 8px; height: 8px; background: #d00;
	transform: rotate(45deg);
	position: absolute; bottom: -4px; left: 20px;
}
@keyframes showError{
	100%{ opacity: 1;}
}


#hd { position: relative; width: 100%; z-index: 100;}
#hd.on { background: #ebe8e2;}
#hd .inner-hd { position: relative; width: 94%; max-width: 1310px; margin: 0 auto; padding: 20px 0;}
#hd h1 { position: absolute; left: 0; top: 28px; width: 372px; line-height: 1;}
#hd h1 img { width: 100%;}
#hd .hd-nav { padding-left: 400px;}
#hd .hd-nav ul { font-size: 0; text-align: right;}
#hd .hd-nav ul li { position: relative; display: inline-block; font-size: 18px; margin: 0 14px;}
#hd .hd-nav ul li:first-child { margin-left: 0px;}
#hd .hd-nav ul li span,
#hd .hd-nav ul li a { color: #000; font-weight: 600; text-decoration: none;}
#hd .hd-nav ul li span { color: #999;}
#hd .hd-nav ul li a:hover { text-decoration: underline;}
#hd .hd-nav ul li.btn { margin-right: 0;}
#hd .hd-nav ul li.btn:after { content: ''; display: block; width: 160px; height: 42px; background: url('../img/bg-ptn-2.gif'); border-radius: 50px; opacity: 0.5; z-index: 1;
 position: absolute; left: 0; bottom: 0; transform: translate(6px,6px);
}
#hd .hd-nav ul li.btn a { position: relative; display: block; width: 160px; height: 42px; padding: 7px 0 0; background: #f85294; border-radius: 50px; z-index: 2;
 color: #fff; font-size: 17px; font-weight: 700; text-align: center;
}
#hd .hd-nav ul li.btn a:hover { text-decoration: none; background: #f7619c;}
@media (max-width: 1401px) {
	#hd h1 { width: 320px;}
	#hd .hd-nav { padding-left: 350px;}
	#hd .hd-nav ul li { margin: 0 10px; font-size: 15px;}
}
@media (max-width: 1201px) {
	#hd h1 { width: 260px; top: 26px;}
	#hd .hd-nav { padding-left: 280px;}
	#hd .hd-nav ul li { margin: 0 8px; font-size: 14px;}
	#hd .hd-nav ul li.btn:after { width: 120px; height: 32px; transform: translate(4px,4px);}
	#hd .hd-nav ul li.btn a { width: 120px; height: 32px; padding: 2px 0 0; font-size: 16px;}
}
@media (max-width: 1001px) {
	#hd h1 { position: relative; left: auto; top: auto;}
	#hd .hd-nav { display: none;}
}
@media (max-width: 481px) {
	#hd .inner-hd { padding: 12px 0;}
}


.sp-menu { display: none; position: absolute; right: 20px; top: 12px; width: 36px; height: 40px; z-index: 101;	}
.sp-menu div { position: relative; width: 100%; height: 100%;}
.sp-menu div span { display: block; width: 100%; height: 3px; background: #000;opacity: 1; position: absolute; left: 0;}
.sp-menu div span:nth-of-type(1){ top: 7px;}
.sp-menu div span:nth-of-type(2){ top: 18px;}
.sp-menu div span:nth-of-type(3){ top: 30px;}
.sp-menu.active div span:nth-of-type(1){ transform: translateY(11px) rotate(-315deg);}
.sp-menu.active div span:nth-of-type(2){ opacity: 0;}
.sp-menu.active div span:nth-of-type(3){ transform: translateY(-11px) rotate(315deg)}


.sp-nav { display: none; position: fixed; left: 0; top: -400px; width: 100%; background: #ebe8e2; z-index: 99; transition: 0.4s linear; opacity: 0;}
.sp-nav.open { top: 0px; opacity: 1;}
.sp-nav div { padding: 60px 25px 40px;}
.sp-nav ul li { position: relative; padding: 5px; border-top: dotted 2px #5594bd;}
.sp-nav ul li span,
.sp-nav ul li a { position: relative; display: block; padding: 5px 10px; color: #000; font-weight: 700; text-decoration: none;}
.sp-nav ul li span { color: #999;}
.sp-nav ul li a:after { content: ''; display: block; width: 8px; height: 8px; border-top: solid 2px #5594bd; border-right: solid 2px #5594bd;
 position: absolute; right: 18px; top: 50%; transform: translateY(-50%) rotate(45deg);
}
.sp-nav ul li.btn { padding-top: 20px; font-size: 18px;}
.sp-nav ul li.btn:after { content: ''; display: block; width: 70%; max-width: 420px; height: 44px; margin: 0 auto;
 background: url('../img/bg-ptn-2.gif'); border-radius: 50px; opacity: 0.5;
 position: absolute; left: 50%; bottom: 0; transform: translate(-49%,0);}
.sp-nav ul li.btn a { position: relative; width: 70%; max-width: 420px; margin: 0 auto; padding: 8px 0; background: #f85294; border-radius: 50px; z-index: 2;
 color: #fff; letter-spacing: 0.05rem; text-align: center;
}
.sp-nav ul li.btn a:after { content: none;}
@media (max-width: 1001px) {
	.sp-menu { display: block;}
	.sp-nav { display: block;}
}
@media (max-width: 481px) {
	.sp-menu { right: 15px; top: 6px; width: 26px; height: 30px;}
	.sp-menu div span { height: 2px;}
	.sp-menu div span:nth-of-type(1){ top: 7px;}
	.sp-menu div span:nth-of-type(2){ top: 15px;}
	.sp-menu div span:nth-of-type(3){ top: 23px;}
	.sp-menu.active div span:nth-of-type(1){ transform: translateY(8px) rotate(-315deg);}
	.sp-menu.active div span:nth-of-type(3){ transform: translateY(-8px) rotate(315deg)}

	.sp-nav div { padding: 60px 15px 30px;}
	.sp-nav ul li{ font-size: 14px;}
	.sp-nav ul li span,
	.sp-nav ul li a { padding: 4px 6px;}
	.sp-nav ul li a:after { right: 8px;}
	.sp-nav ul li.btn { font-size: 16px;}
}

.pagetop { position: fixed; right: 4%; bottom: 50px; width: 64px;}
.pagetop a { display: block; border-radius: 50%; overflow: hidden;}
.pagetop a img { width: 100%;}
#ft { padding: 20px 0;}
#ft p { color: #636363; font-size: 12px; text-align: center;}
@media (max-width: 481px) {
	.pagetop { bottom: 40px; width: 42px;}
	#ft p { font-size: 10px;}
}


.stl.mb { margin-bottom: 30px;}
.stl h2 { color: #5594bd; font-size: 36px; line-height: 1; text-align: center; }
.stl h2 span { font-size: 42px;}
.stl h2 img { display: block; width: 30%; max-width: 178px; margin: 12px auto 0;}
@media (max-width: 641px) {
	.stl h2 { font-size: 24px;}
	.stl h2 span { font-size: 32px;}
}
@media (max-width: 481px) {
	.stl.mb { margin-bottom: 20px;}
	.stl h2 { font-size: 18px;}
	.stl h2 span { font-size: 24px;}
}


.cnv { background: url('../img/bg-ptn-1.gif');}
.cnv .inner { padding: 50px 0 60px;}
.cnv h3 { margin-bottom: 20px; color: #f85294; font-size: 36px; line-height: 1; text-align: center;}
.cnv p { margin-bottom: 10px; font-size: 22px; font-weight: 700; text-align: center;}
.cnv p.mb { margin-bottom: 25px;}
.cnv .btn { position: relative; width: 60%; max-width: 440px; margin: 0 auto;}
.cnv .btn:before { content: ''; width: 100%; height: 100%; background: url('../img/bg-ptn-2.gif'); border-radius: 50px;
 opacity: 0.5; position: absolute; right: -4px; bottom: -4px; z-index: 1;
}
.cnv .btn a { position: relative; transform: translate(-4px,-4px); display: block; padding: 10px 0; background: #f85294; border-radius: 50px;
 color: #fff; font-size: 30px; font-weight: 700; text-align: center; text-decoration: none; z-index: 2;
}
.cnv .btn a:hover { background: #f7619c;}
.cnv dl { width: 90%; max-width: 340px; margin: 0 auto 20px;}
.cnv dl dt { font-size: 18px;}
.cnv dl dd { font-size: 18px;}
@media (max-width: 481px) {
	.cnv { background-size: 7px;}
	.cnv .inner { padding: 30px 0;}
	.cnv h3 { margin-bottom: 18px; font-size: 24px;}
	.cnv p { font-size: 15px;}
	.cnv .btn:before { right: -2px; bottom: -2px;}
	.cnv .btn a { transform: translate(-3px,-3px); padding: 7px 0; font-size: 18px;}
	.cnv dl { max-width: 280px;}
	.cnv dl dt { font-size: 14px;}
	.cnv dl dd { font-size: 14px;}
}


.kv .inner-kv{ width: 100%; max-width: 1310px; margin: 0 auto;}
.kv h2 img { width: 100%;}
.kv h2 img.sp { display: none;}
.kv p { display: none; text-align: center;}
@media (max-width: 641px) {
	.kv h2 { margin-bottom: 20px;}
	.kv h2 img.pc { display: none;}
	.kv h2 img.sp { display: block;}
	.kv p { display: block; font-size: 4.0vw; font-weight: 600;}
}
@media (max-width: 481px) {
	.kv h2 { margin-bottom: 12px;}
	.kv p { font-size: 16px;}
}

.lead { background: url('../img/bg-1.png') repeat-y 50% 0;}
.lead .inner { width: 90%; max-width: 960px; margin: 0 auto; padding: 0 0 70px;}
.lead h3 { margin-bottom: 30px; font-size: 40px; font-weight: 700; text-align: center;}
.lead h3 br { display: none;}
.lead h3 span { display: block;}
.lead p.txt { margin-bottom: 80px; font-weight: 700; text-align: center;}
.lead p.txt br { display: none;}
.lead .board { position: relative; width: 100%; max-width: 820px; margin: 0 auto 35px;}
.lead .board:after { content: ''; display: block; width: 100%; height: 100%; background: url('../img/bg-ptn-2.gif'); border-radius: 8px; opacity: 0.4;
 position: absolute; right: -5px; bottom: -5px;
}
.lead .board h4 { position: absolute; left: 0; top: -40px; width: 100%; text-align: center; z-index: 2;}
.lead .board h4 img { width: 52%; max-width: 370px;}
.lead .board ul { position: relative; padding: 50px 40px 20px; background: #ebe8e2; border-radius: 8px; z-index: 1; transform: translate(-5px,-5px);}
.lead .board ul li { padding: 10px 0;}
.lead .board ul li dl { display: table; width: 100%;}
.lead .board ul li dl dt,
.lead .board ul li dl dd { display: table-cell; vertical-align: middle;}
.lead .board ul li dl dt { width: 130px; text-align: center;}
.lead .board ul li dl dd { width: auto; padding-left: 20px; font-size: 30px; font-weight: 700; line-height: 1.4;}
.lead .board ul li dl dt span { display: block; width: 100%; padding: 2px 0; background: #fff; border: solid 3px #5594bd; border-radius: 50px;
 color: #5594bd; font-size: 23px; font-weight: 700;
}
.lead .board ul li dl dd br { display: none;}
.lead .board ul li dl dd em { font-size: 42px;}
.lead .memo { width: 100%; max-width: 820px; margin: 0 auto;}
.lead .memo p { font-size: 18px; font-weight: 600; line-height: 2;}
@media (max-width: 1201px) {
	.lead .board ul li dl dd { font-size: 26px;}
	.lead .board ul li dl dt span { font-size: 20px;}
	.lead .board ul li dl dd em { font-size: 36px;}
}
@media (max-width: 1001px) {
	.lead .board ul li dl dd { font-size: 24px;}
	.lead .board ul li dl dd em { font-size: 32px;}
}
@media (max-width: 801px) {
	.lead h3 { font-size: 32px;}
	.lead p.txt br { display: block;}
	.lead .board ul li dl { max-width: 450px; margin: 0 auto;}
	.lead .board ul li dl dt,
	.lead .board ul li dl dd { vertical-align: top;}
	.lead .board ul li dl dd br { display: block;}
}
@media (max-width: 641px) {
	.lead { background: url('../img/bg-1-sp.png') no-repeat 50% 0 / 100% auto;}
	.lead .inner { padding: 60px 0;}
	.lead h3 br { display: block;}
}
@media (max-width: 481px) {
	.lead .inner { padding: 40px 0 30px;}
	.lead h3 { margin-bottom: 15px; font-size: 21px;}
	.lead p.txt { margin-bottom: 40px; font-size: 13px;}
	.lead .board { margin: 0 auto 20px;}
	.lead .board:after { right: -2px; bottom: -2px;}
	.lead .board h4 { top: -20px;}
	.lead .board ul { padding: 30px 15px 10px; transform: translate(-3px,-3px);}
	.lead .board ul li { padding: 4px 0;}
	.lead .board ul li dl dt { width: 80px; padding-top: 3px;}
	.lead .board ul li dl dd { width: auto; padding-left: 12px; font-size: 17px;}
	.lead .board ul li dl dt span { padding: 0px; border-width: 2px; font-size: 14px;}
	.lead .board ul li dl dd em { font-size: 24px;}
	.lead .memo { padding: 6px;}
	.lead .memo p { font-size: 13px; font-weight: 400; line-height: 1.8;}
}


.sct1 {  background: url('../img/bg-2.png') repeat-y 50% 0;}
.sct1 .inner-sct { padding: 60px 0px 100px;}
.sct1 #feature { margin-bottom: 60px; padding-top: 20px;}
.sct1 #course { margin-bottom: 50px; padding-top: 20px;}
.sct1 #instruct { padding-top: 20px;}
.sct1 ul.feature { width: 90%; max-width: 1080px; margin: 0 auto; font-size: 0; text-align: center;}
.sct1 ul.feature li { position: relative; display: inline-block; width: 50%; vertical-align: top;}
.sct1 ul.feature li:nth-child(1),
.sct1 ul.feature li:nth-child(2) { margin-bottom: 30px;}
.sct1 ul.feature li:before { content: ''; display: block; width: 150px; height: 150px; background: #d2e0e9; border-radius: 50%;
 position: absolute; left: 50%; top: 0; transform: translate(-45%,5px);
}
.sct1 ul.feature li dl { position: relative; width: 94%; max-width: 480px; margin: 0 auto; padding-top: 75px;}
.sct1 ul.feature li dl dt {  position: absolute; width: 100%; top: 0; left: 0;}
.sct1 ul.feature li dl dt span { display: block; width: 150px; height: 150px; margin: 0 auto; background: #fff; border-radius: 50%;}
.sct1 ul.feature li dl dt span img { position: absolute; left: 50%; top: 50%; transform: translate(-50%,-50%); width: 90px;}
.sct1 ul.feature li dl dd { min-height: 300px; padding: 70px 40px 0; background: #fff; border-radius: 10px; box-shadow: 9px 9px 0 #d2e0e9;
 font-size: 18px; font-weight: 600; line-height: 1.8; text-align: justify;
}
.sct1 ul.feature li dl dd span { display: block; margin-bottom: 20px; font-size: 28px; font-weight: 700; text-align: center;}

.sct1 .course-box { width: 90%; max-width: 920px; margin: 0 auto 25px; padding: 25px 40px; background: #fff; border-radius: 10px; box-shadow: 9px 9px 0 #d2e0e9;}
.sct1 .course-box:last-child { margin: 0 auto;}
.sct1 .course-box .row-table { display: table; width: 100%;}
.sct1 .course-box .tit ,
.sct1 .course-box .txt { display: table-cell; vertical-align: middle;}
.sct1 .course-box .tit { width: 240px; border-right: dotted 2px #5594bd;}
.sct1 .course-box .txt { width: auto; border-left: dotted 2px #5594bd; padding-left: 30px;}
.sct1 .course-box .tit p { font-size: 26px; font-weight: 700;}
.sct1 .course-box .txt ul li { position: relative; padding-left: 25px; font-size: 22px;}
.sct1 .course-box .txt ul li:before { content: ''; display: block; width: 15px; height: 15px; background: #5594bd; border-radius: 50%;
 position: absolute; left: 0; top: 11px;
}
.sct1 .box { width: 92%; max-width: 920px; margin: 0 auto 25px; padding: 25px 40px; background: #fff; border-radius: 10px; box-shadow: 9px 9px 0 #d2e0e9;}
@media (max-width: 1201px) {
	.sct1 ul.feature li dl dd { font-size: 16px;}
	.sct1 ul.feature li dl dd span { font-size: 24px;}
}
@media (max-width: 1001px) {
	.sct1 ul.feature li dl dd { padding: 70px 25px 0;}
	.sct1 ul.feature li dl dd span { font-size: 20px;}

	.sct1 .course-box .tit { width: 200px;}
	.sct1 .course-box .tit p { font-size: 24px;}
	.sct1 .course-box .txt ul li { font-size: 20px;}
}
@media (max-width: 801px) {
	.sct1 ul.feature li:before { width: 120px; height: 120px;}
	.sct1 ul.feature li dl { padding-top: 55px;}
	.sct1 ul.feature li dl dt span { width: 120px; height: 120px;}
	.sct1 ul.feature li dl dt span img { width: 72px;}
	.sct1 ul.feature li dl dd { min-height: 260px; padding: 58px 20px 0; font-size: 15px;}
	.sct1 ul.feature li dl dd span { margin-bottom: 12px;}

	.sct1 .course-box { padding: 15px 30px;}
	.sct1 .course-box .tit ,
	.sct1 .course-box .txt { display: block;}
	.sct1 .course-box .tit { width: 100%; border-right: none; border-bottom: dotted 1px #5594bd; padding-bottom: 10px;}
	.sct1 .course-box .txt { width: 100%; border-left:  none; border-top: dotted 1px #5594bd; padding-left: 10px;}
	.sct1 .course-box .tit p br { display: none;}
	.sct1 .course-box .txt ul { padding-top: 10px;}
	.sct1 .course-box .txt ul li { padding: 4px; padding-left: 20px;}
	.sct1 .course-box .txt ul li:before { width: 12px; height: 12px; top: 15px;}
}
@media (max-width: 641px) {
	.sct1 {  background: url('../img/bg-2-sp.png') repeat-y 50% 0 / 100% auto;}
	.sct1 #feature .stl{ margin-bottom: 20px;}
	.sct1 ul.feature li { display: block; width: 100%;}
	.sct1 ul.feature li:nth-child(3) { margin-bottom: 30px;}
	.sct1 ul.feature li dl dd { min-height: auto; padding: 58px 30px 20px; box-shadow: 4px 4px 0 #d2e0e9;}
	.sct1 .course-box { box-shadow: 4px 4px 0 #d2e0e9;}
	.sct1 .course-box .tit p { font-size: 20px;}
	.sct1 .course-box .txt ul li { font-size: 18px;}
	.sct1 .course-box .txt ul li:before { width: 10px; height: 10px; top: 12px;}
	.sct1 .box { width: 92%; max-width: 920px; margin: 0 auto 25px; padding: 25px 40px; box-shadow: 4px 4px 0 #d2e0e9;}
}
@media (max-width: 481px) {
	.sct1 .inner-sct { padding: 20px 0px;}
	.sct1 #feature { margin-bottom: 40px;}
	.sct1 #course { margin-bottom: 30px;}
	.sct1 ul.feature li:before { width: 100px; height: 100px; transform: translate(-44%,2px);}
	.sct1 ul.feature li:nth-child(1),
	.sct1 ul.feature li:nth-child(2),
	.sct1 ul.feature li:nth-child(3) { margin-bottom: 24px;}
	.sct1 ul.feature li dl { padding-top: 40px;}
	.sct1 ul.feature li dl dt span { width: 100px; height: 100px;}
	.sct1 ul.feature li dl dt span img { width: 60px;}
	.sct1 ul.feature li dl dd { padding: 55px 16px 15px; font-size: 14px; font-weight: 400;}
	.sct1 ul.feature li dl dd span { margin-bottom: 6px; font-size: 18px;}
	.sct1 .course-box { margin: 0 auto 20px; padding: 10px 20px;}
	.sct1 .course-box .tit { padding-bottom: 6px;}
	.sct1 .course-box .tit p { font-size: 18px;}
	.sct1 .course-box .txt ul { padding-top: 6px;}
	.sct1 .course-box .txt ul li { padding: 2px; padding-left: 16px; font-size: 15px;}
	.sct1 .course-box .txt ul li:before { width: 8px; height: 8px; top: 10px;}
}


.sct2 .inner-sct { padding: 50px 0px 30px; background: url('../img/bg-3.png') repeat-y 50% 0;}

.sct2 #gaiyou { margin-bottom: 50px; padding-top: 20px;}
.sct2 #sche { margin-bottom: 50px; padding-top: 20px;}
.sct2 #flow { margin-bottom: 50px; padding-top: 20px;}
.sct2 #access { padding-top: 20px;}
.sct2 .box { width: 90%; max-width: 920px; margin: 0 auto; padding: 0px 40px; background: #fff; border-radius: 10px; box-shadow: 9px 9px 0 #d2e0e9;}
.sct2 .box .row-flex { display: flex; padding: 25px 0; border-bottom: dotted 2px #5594bd;}
.sct2 .box .row-flex.noborder { border-bottom: none;}
.sct2 .box .row-flex .tit { width: 20%; padding-left: 10px;}
.sct2 .box .row-flex .txt { width: 80%; padding: 0 10px;}
.sct2 .box .row-flex .tit p { font-size: 23px; font-weight: 700;}

.sct2 .box .row-flex .txt p { font-weight: 600; letter-spacing: 0.05rem;}
.sct2 .box .row-flex .txt p.fs20 { font-size: 20px;}
.sct2 .box .row-flex .txt p span { display: block; font-size: 23px; font-weight: 700;}
.sct2 .box .row-flex .txt p span.mb { margin-bottom: 6px;}
.sct2 .box .row-flex .txt dl { width: 100%;}
.sct2 .box .row-flex .txt dl.num dt { font-size: 23px; font-weight: 700;}
.sct2 .box .row-flex .txt dl.num dd span { display: block; position: relative; width: 100%; max-width: 430px; padding-left: 1.2em;}
.sct2 .box .row-flex .txt dl.num dd span:before{ content: '※'; position: absolute; left: 0; top: 0;}
.sct2 .box .row-flex .txt dl.detail { display: table; width: 100%;}
.sct2 .box .row-flex .txt dl.detail dt,
.sct2 .box .row-flex .txt dl.detail dd { display: table-cell; vertical-align: top;}
.sct2 .box .row-flex .txt dl.detail dt { width: 85px; font-size: 18px; font-weight: 600;}
.sct2 .box .row-flex .txt dl.detail dd { width: auto; font-size: 16px; font-weight: 600;}

.sct2 .box .row-flex .txt ul li { margin-bottom: 4px; font-size: 22px; font-weight: 600;}
.sct2 .box .row-flex .txt ul li:last-child { margin-bottom: 0px;}
.sct2 .box .note { padding: 30px 0;}
.sct2 .box .note p { font-size: 20px; font-weight: 600; line-height: 1.72; text-align: center;}
.sct2 #flow p { margin-bottom: 30px; font-size: 20px; font-weight: 600; text-align: center;}
.sct2 #flow figure { width: 88%; max-width: 1084px; margin: 0 auto;}
.sct2 #flow figure img { width: 100%; margin: 0 auto 10px;}
.sct2 #flow figure img.sp { display: none;}
.sct2 #flow figure figcaption { font-size: 14px;}
@media (max-width: 1001px) {
	.sct2 .box .row-flex .tit p { font-size: 21px;}
}
@media (max-width: 801px) {
	.sct2 .box .row-flex { display: block; padding: 15px 0}
	.sct2 .box .row-flex .tit { width: 100%; padding-bottom: 8px;}
	.sct2 .box .row-flex .txt { width: 100%;}
	.sct2 .box .row-flex .txt p { font-size: 15px;}
	.sct2 .box .row-flex .txt p span { font-size: 18px;}
	.sct2 .box .row-flex .txt p.fs20 { font-size: 16px;}
	.sct2 .box .row-flex .txt ul li { font-size: 18px;}
	.sct2 #flow p span { display: block;}
}
@media (max-width: 641px) {
	.sct2 .box { padding: 0px 25px; box-shadow: 4px 4px 0 #d2e0e9;}
	.sct2 .box .note p span { display: block;}
	.sct2 #flow figure img.pc { display: none;}
	.sct2 #flow figure img.sp { display: block;}
}
@media (max-width: 481px) {
	.sct2 .inner-sct { padding: 20px 0px; background: url('../img/bg-3-sp.png') repeat-y 50% 0 / 100% auto;}

	.sct2 #gaiyou { margin-bottom: 20px;}
	.sct2 #sche { margin-bottom: 20px;}
	.sct2 #flow { margin-bottom: 10px;}

	.sct2 .box { padding: 0px 14px;}
	.sct2 .box .row-flex { padding: 12px 0}
	.sct2 .box .row-flex .tit { padding-left: 6px; padding-bottom: 4px;}
	.sct2 .box .row-flex .txt { padding: 0; padding-left: 6px;}
	.sct2 .box .row-flex .tit p { font-size: 16px;}
	.sct2 .box .row-flex .txt p { font-size: 12px; font-weight: 400;}
	.sct2 .box .row-flex .txt p span { font-size: 14px;}
	.sct2 .box .row-flex .txt p.fs20 { font-size: 14px;}
	.sct2 .box .row-flex .txt ul li { font-size: 13px; font-weight: 400;}
	.sct2 .box .row-flex .txt ul li span { display: block; font-weight: 600;}
	.sct2 .box .row-flex .txt ul li span.mb { margin-bottom: 6px;}
	.sct2 .box .row-flex .txt dl.num dt,
	.sct2 .box .row-flex .txt dl.num dd { width: 100%;}
	.sct2 .box .row-flex .txt dl.num dt { font-size: 15px;}
	.sct2 .box .row-flex .txt dl.num dd { font-size: 12px;}
	.sct2 .box .row-flex .txt dl.detail dt { width: 62px; font-size: 13px; font-weight: 400;}
	.sct2 .box .row-flex .txt dl.detail dd { font-size: 12px; font-weight: 400;}
	.sct2 .box .note { padding: 15px 0;}
	.sct2 .box .note p { font-size: 13.5px;}
	.sct2 #flow p { font-size: 14px;}
	.sct2 #flow figure figcaption { font-size: 12px;}
}

.sct2 .map { width: 100%; border-top: solid 1px #e2decd;}
.sct2 .map .mapView{ width: 100%; height: 450px;}
.sct2 .map .mapView iframe { width: 100%; height: 100%;}
@media (max-width: 641px) {
	.sct2 .map .mapView{ height: 320px;}
}
@media (max-width: 481px) {
	.sct2 .map .mapView{ height: 240px;}
}