/* reset */
html {
	overflow: hidden;
	overflow-y: scroll
}
h1, h2, h3, h4, h5, h6 {
	line-height: 1.4;
	margin-top: 0;
	margin-bottom: 0
}
figure {
	margin: 0;
	padding: 0
}
p, li, dl, table {
	line-break: strict;
	word-break: break-strict;
	word-wrap: break-word;
	line-height: 1.5;
	margin-top: 0;
	margin-bottom: 0
}
small {
	font-size: 12px
}
tr {
	word-break: break-all
}
img {
	max-width: 100%;
	height: auto;
	vertical-align: bottom
}
ul {
	list-style-type: none;
	margin: 0;
	padding: 0
}
dd {
	margin-left: 0
}
textarea {
	overflow: auto;
	vertical-align: top;
	resize: vertical
}
select option {
	padding: 0px 5px
}
form label {
	cursor: pointer
}
input:placeholder {
color:#999
}
input:-ms-input-placeholder {
color:#999
}
html {
	line-height: 1.15;
	-ms-text-size-adjust: 100%;
	-webkit-text-size-adjust: 100%
}
article, aside, footer, header, nav, section {
	display: block
}
h1 {
	font-size: 2em;
	margin: 0.67em 0
}
figcaption, figure, main {
	display: block
}
figure {
	margin: 1em 40px
}
hr {
	box-sizing: content-box;
	height: 0;
	overflow: visible
}
pre {
	font-family: monospace, monospace;
	font-size: 1em
}
a {
	background-color: transparent;
	-webkit-text-decoration-skip: objects
}
abbr[title] {
	border-bottom: none;
	text-decoration: underline;
	text-decoration: underline dotted
}
b, strong {
	font-weight: inherit
}
b, strong {
	font-weight: bolder
}
code, kbd, samp {
	font-family: monospace, monospace;
	font-size: 1em
}
dfn {
	font-style: italic
}
mark {
	background-color: #ff0;
	color: #000
}
small {
	font-size: 80%
}
sub, sup {
	font-size: 75%;
	line-height: 0;
	position: relative;
	vertical-align: baseline
}
sub {
	bottom: -0.25em
}
sup {
	top: -0.5em
}
audio, video {
	display: inline-block
}
audio:not([controls]) {
	display: none;
	height: 0
}
img {
	border-style: none
}
svg:not(:root) {
	overflow: hidden
}
button, input, optgroup, select, textarea {
	margin: 0
}
button, input {
	overflow: visible
}
button, select {
	text-transform: none
}
button, html [type="button"], [type="reset"], [type="submit"] {
-webkit-appearance:button
}
button::-moz-focus-inner, [type="button"]::-moz-focus-inner, [type="reset"]::-moz-focus-inner, [type="submit"]::-moz-focus-inner {
border-style:none;
padding:0
}
button:-moz-focusring, [type="button"]:-moz-focusring, [type="reset"]:-moz-focusring, [type="submit"]:-moz-focusring {
outline:1px dotted ButtonText
}
legend {
	box-sizing: border-box;
	color: inherit;
	display: table;
	max-width: 100%;
	padding: 0;
	white-space: normal
}
progress {
	display: inline-block;
	vertical-align: baseline
}
textarea {
	overflow: auto
}
[type="checkbox"], [type="radio"] {
box-sizing:border-box;
padding:0
}
[type="number"]::-webkit-inner-spin-button, [type="number"]::-webkit-outer-spin-button {
height:auto
}
[type="search"] {
-webkit-appearance:textfield;
outline-offset:-2px
}
[type="search"]::-webkit-search-cancel-button, [type="search"]::-webkit-search-decoration {
-webkit-appearance:none
}
::-webkit-file-upload-button {
-webkit-appearance:button;
font:inherit
}
details, menu {
	display: block
}
summary {
	display: list-item
}
canvas {
	display: inline-block
}
template {
	display: none
}
[hidden] {
display:none
}
body {
	margin: 0;
	padding: 0;
	text-align: center;
	font-size: 16px;
	color: #000;
	line-height: 1.75;
	letter-spacing: .07em;
	font-family: "Noto Sans JP", sans-serif;
	-webkit-text-size-adjust: none;
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased
}
@media screen and (max-width: 640px) {
body {
	line-height: 1.4
}
}
a, a:link, a:visited, a img {
	color: #000;
	text-decoration: none;
	transition: all 0.4s ease
}
a:hover {
	color: #003a5d
}
a:hover img {
	opacity: 0.6;
	filter: alpha(opacity=60)
}
/* header */
#header {
	width: 100%;
	height: 110px;
	position: fixed;
	z-index: 9999;
	top: 0;
	left: 0
}
#header .logo {
	width:160px;
	height:160px;
	position: absolute;
	top:0px;
	left:0px;
	z-index: 100;
	transition: all 0.4s ease
}
#header .logo img {
	width: 100%
}
#header nav {
	width: 100%;
	text-align: right
}
#header nav ul {
	transition: all 0.4s ease;
	padding:25px 15px 0 0;
	width: calc(100% - 150px);
}
#header nav li {
	display: inline-block;
	margin: 0 1%
}
#header nav li a {
	position: relative;
	display: block;
	text-align: center;
	font-size:16px;
}
#header nav li a:after {
	position: absolute;
	height: 3px;
	border-radius: 1px;
	bottom: -10px;
	left: 0;
	right: 0;
	display: block;
	content: "";
	background: #26ad6f;
	opacity: 0;
	transition: all 0.4s ease
}
#header nav li a:hover:after {
	opacity: 100;
	bottom: 0
}
#header.smallhead {
	background: rgba(255,255,255,0.8);
	border-bottom: 1px solid #f0f5fa;
	height: 79px
}
#header.smallhead .logo{
	top:0px;
	width:79px;
	height:79px;
}
#header.smallhead nav ul {
	padding: 25px 15px 0 0
}
#header div.navCont {
	display:flex;
}
#header div.navCont .btn1{
    right: 0;
    top: 0;
    position: absolute;
	padding:0;
	margin:0;
	width:150px;
	margin-left: auto
}
#header div.navCont .btn1 a{
	padding:0;
	height:80px;
	line-height:80px;
	background:#26ad6f;
	font-size:16px;
	color:#FFF;
	border:0;
}
#header div.navCont .btn1 a span:before,
#header div.navCont .btn1 a span:after{
	color:#FFF;
}
@media screen and (max-width:1055px) {
#header .logo {
	width: 80px;
	top:0px;
	left:0px
}
#header nav li {
	margin: 0 .7%
}
}
@media screen and (max-width:930px) {
#header.smallhead {
	border:0;
	background:none;
}
#header{
	height: 70px
}
#header nav {
	text-align:center;
}
@keyframes ripple {
0% {
box-shadow:0 0 0 0 rgba(255,255,255,0.07), 0 0 0 10px rgba(255,255,255,0.07), 0 0 0 20px rgba(255,255,255,0.07), 0 0 0 40px rgba(255,255,255,0.07)
}
100% {
box-shadow:0 0 0 10px rgba(255,255,255,0.07), 0 0 0 20px rgba(255,255,255,0.07), 0 0 0 30px rgba(255,255,255,0.07), 0 0 0 42px rgba(255,255,255,0)
}
}
.nav-open {
	position: absolute;
	right: 10px;
	top: 10px;
	display: block;
	width: 50px;
	height: 50px;
	background: #26ad6f;
	border-radius: 25px;
	cursor: pointer;
	z-index: 9999
}
.nav-open i {
	display: block;
	width: 20px;
	height: 3px;
	background: #FFF;
	border-radius: 2px;
	margin-left: 15px
}
.nav-open i:nth-child(1) {
	margin-top: 16px
}
.nav-open i:nth-child(2) {
	margin-top: 4px;
	opacity: 1
}
.nav-open i:nth-child(3) {
	margin-top: 4px
}
}
#nav:checked+.nav-open {
	transform: rotate(45deg);
	position: fixed
}
#nav:checked+.nav-open i {
	transition: transform 0.2s ease
}
#nav:checked+.nav-open i:nth-child(1) {
	transform: translateY(6px) rotate(180deg)
}
#nav:checked+.nav-open i:nth-child(2) {
	opacity: 0
}
#nav:checked+.nav-open i:nth-child(3) {
	transform: translateY(-6px) rotate(90deg);
	margin-top: 2px
}
#nav:checked ~ .navCont {
	overflow-y: scroll;
	display: block;
	z-index: 9990;
	opacity: 1;
	position: fixed;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%
}
#nav:checked ~ .navCont ul {
	transition: none;
	transform: translateY(-50%);
	top: 50%;
	padding: 0 0 40px
}
#nav:checked ~ .navCont li {
	margin: 0;
	opacity: 1
}
#nav:checked ~ .navCont li a {
	line-height: 1.2
}
#nav:checked ~ .navCont li br {
	display: block
}
.no-scroll {
	height: 100%;
	overflow: hidden
}
.hidden {
	display: none
}
@media screen and (max-width:930px) {
#header nav .navCont {
	z-index: -1;
	background: #ddf5e2;
	opacity: 0;
	transition: all 0.4s ease;
	display:none;
}
#header nav .navCont ul {
	position:relative;
	transform: translateY(-100%);
	width: 100%;
	margin-bottom:10px;
}
#header nav .navCont li {
	width: 100%;
	padding-top:10px;
	opacity: 0
}
#header nav .navCont li.btn1 {
	margin-top:10px;
}
#header nav .navCont li a {
	font-size:18px;
	color: #000;
	font-weight: bold
}
#header nav .navCont li a:after {
	display: none
}
#header nav .navCont li a:active {
	transform: scale(0.9)
}
#header div.navCont .btn1{
	position: relative;

}
#header div.navCont .btn1 a {
    padding:0;
    height: auto;
    line-height:1.2;
    background:none;
    font-size: 18px;
}
#header div.navCont .btn1 a span:before,
#header div.navCont .btn1 a span:after{
	color: #000
}
}
/* メインビジュアル */
.main{
	background:url(../images/common/topbg.webp) no-repeat left top;
	background-size:50%;
}
#topMain {
	width: 100%;
	height: 620px;
	margin: 0;
	position: relative;
	text-align: left;
	z-index: 100;
background:url(../images/top/topimg.webp) 80% 80px no-repeat;
	background-size: 73%
}
#topMain h1 {
	padding: 16% 0 0 10%;
	margin: 0;
	display: block;
	font-size: 43px;
	color:#000;
	letter-spacing: .15em;
	line-height: 1.75;
	font-weight:bold;
	font-family: "Noto Sans JP", sans-serif;
	text-shadow: 0px 0px 50px #FFF;
}
@media screen and (max-width: 820px) {
#topMain h1 {
	font-size: 30px;
}
}
#topMain h1 span {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 22px;
	letter-spacing: .04em;
	display: block;
	color: #000;
	margin: 20px 0 80px
}
@media screen and (max-width: 820px) {
#topMain h1 span {
	font-size: 26px;
}
}
#topMain p {
	font-size: 20px;
	padding-left: 10%
}
#topMain p span {
	font-size: 30px;
	display: block
}
@media screen and (max-width: 820px) {
#topMain p span {
	font-size: 26px;
}
}
#topMain:before {
	content: "";
	position: absolute;
	height: 120px;
	bottom: -60px;
	left: 9%;
	border-left: 2px solid #26ad6f;
	box-sizing: border-box
}
#topMain:after {
	content: "";
	position: absolute;
	height: 20px;
	bottom: -60px;
	left: 9%;
	margin-left: 10px;
	border-left: 3px solid #26ad6f;
	-webkit-transform: skewX(-45deg);
	-moz-transform: skewX(-45deg);
	transform: skewX(-45deg);
	box-sizing: border-box
}
.effect-fadein {
	opacity: 0;
	transform: translate(0, 30px);
	transition: all 500ms
}
.effect-fadein.effect-scroll {
	opacity: 1;
	transform: translate(0, 0)
}
/* ABOUT */
#topConcept {
	clear: both;
	padding:20px 7.5% 0px;
	text-align: left;
}
#topConcept dl{
	display:flex;
	gap:10%;
}
#topConcept dl dt{
	width:44%;
}
#topConcept dl dt imd{
	width:100%;
	height:auto;
}
#topConcept dl dd{
	width:46%;
}
#topConcept dl dd h3{
	margin-top:146px;
	font-size:24px;
	margin-bottom:60px;
}
#topics{
	width:37.5%;
	padding:40px 60px;
	box-sizing:border-box;
	background:#bbf4f9;
	float:right;
	margin-top:-95px;
	z-index:101;
	position:relative;
}
#topics dl{
}
#topics dl dt{
	text-align:left;
	font-weight:bold;
	color:#279fd2;
	margin-bottom:20px;
}
#topics dl dd{
	text-align:left;
	color:#000;
}
@media screen and (max-width: 820px) {
#topConcept {
	width: 90%;
	padding: 60px 5%
}
}
@media screen and (max-width: 640px) {
#topConcept {
	padding: 40px 5%
}
}
#topConcept h2 {
	font-family: "Noto Sans JP", sans-serif;
	font-size: 70px;
	letter-spacing: .07em;
	display: block;
	color: #26ad6f;
	margin-bottom: 40px;
	text-align:center;
}
#topConcept h2::after{
	content:"";
	height:4px;
	width:80px;
	background:#000;
	display:block;
	margin:10px auto;
}
@media screen and (max-width: 640px) {
#topConcept h2 {
	font-size: 50px;
	margin-bottom: 20px
}
#topConcept h2::after {
    width:60px;
}
#topConcept dl {
	display:block;
}
#topConcept dl dt {
    width: 100%;
	height:200px;
	overflow:hidden;
}
#topConcept dl dt img{
    width: 100%;
    max-width: none;
}
#topConcept dl dd {
    width:100%;
}
#topConcept dl dd h3 {
    margin-top:20px;
    font-size:18px;
    margin-bottom:20px;
}
#topConcept dl dd h3 br{
	display:none;
}
#topConcept dl dd p{
	font-size:14px;
	margin-bottom:0px;
}
}
#topConcept .btn1 {
	margin: 60px 0 0;
	padding: 0;
}
/* Features */
#Features{
	padding: 100px 7.5%;
	background:url(../images/common/topbg.webp) no-repeat center 300px;
	background-size:100% auto;
}
#Features ul{
	display:flex;
	gap:3.5%;
}
#Features ul li{
	width:31%;
	text-align:left;
	margin-bottom:40px;
}
#Features ul li p.img{
	margin-bottom:20px;
}
#Features ul li p.img img{
	width:100%;
	height:auto;
}
#Features ul li h3{
	font-size:22px;
	margin-bottom:20px;
}
#Features .btn1 a{
	float:left;
}
@media screen and (max-width: 640px) {
#Features {
    padding:40px 7.5% ;
    background: url(../images/common/topbg.webp);
    background-size: 100% auto;
}
#Features ul {
    display:block;
}
#Features ul li {
    width:100%;
    margin-bottom: 40px;
}
#Features ul li p.img {
    margin-bottom: 10px;
}
#Features ul li h3 {
    font-size: 18px;
	margin-bottom:10px;
}
#Features ul li p.text {
    font-size: 14px;
}
#Features .btn1 a{
	float:none;
}
}
/* NEWS */
#topNews{
	padding: 100px 8.5% 100px 16.5%;
	background:url(../images/top/newsbg01.webp) no-repeat left top,url(../images/top/newsbg02.webp) no-repeat right 235px;
	background-size:29% 732px,50% 614px;
}
#topNews dl{
	display:flex;
	gap:20%;
}
#topNews dl dt{
	width:34%;
	text-align:left;
}
#topNews dl dt h2{
	font-size: 70px;
	letter-spacing: .07em;
	display: block;
	color: #2679ad;
	margin-bottom: 25px;
}
#topNews dl dt h2::after{
	content:"";
	height:4px;
	width:80px;
	background:#FFF;
	display:block;
	margin-top:10px;
}
#topNews dl dt ul{
	margin-bottom:40px;
}
#topNews dl dt ul li{
	border-bottom:2px solid #279fd2;
}
#topNews dl dt ul li a{
	display:block;
	padding:35px 0;
}
#topNews dl dt ul li a span{
	display:block;
	color:#279fd2;
	margin-bottom:10px;
	font-size:14px;
	font-weight:bold;
}
#topNews dl dt .btn1 a{
	color:#279fd2;
	border:2px solid #279fd2;
}
#topNews dl dt .btn1 a span:before,
#topNews dl dt .btn1 a span:after{
	color: #279fd2
}
#topNews dl dd{
	width:46%;
}
#topNews dl dd img{
	width:100%;
	height:100%;
}
@media screen and (max-width: 640px) {
#topNews{
	padding:40px 7.5%;
	background:url(../images/top/newsbg01.webp) no-repeat left top;
	background-size:50% 100%;
}
#topNews dl{
	display:block;
}
#topNews dl dt{
	width:100%;
	text-align:left;
}
#topNews dl dd{
	display:none;
}
#topNews dl dt h2{
	font-size: 50px;
	margin-bottom:0px;
	text-align:center;
}
#topNews dl dt h2::after{
	width:40px;
	background:#000;
	margin:10px auto 0;
}
#topNews dl dt ul li a{
	padding:20px 0;
}
#topNews dl dt ul li a p{
    font-size: 14px;
}
}

/* FAQ */
#topFaq {
	width: 85%;
	padding: 100px 7.5%;
	overflow: hidden;
	text-align: left;
	background:#d7f9bb;
}
#topFaq h2 {
	display: block;
	font-size:16px;
	letter-spacing: .1em;
	margin-bottom: 20px;
	font-weight: normal;
	color: #000;
	text-align:center;
}
#topFaq h2 span {
	font-size: 60px;
	font-weight:bold;
	letter-spacing: .07em;
	display: block;
	color: #26ad6f
}
.topFaqIn {
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	align-items: flex-start;
	padding-bottom: 40px
}
.topFaqIn dl {
	-webkit-flex-basis: 47%;
	flex-basis: 47%;
	text-align: left;
	padding-top: 40px
}
.topFaqIn dl.effect-fadein:nth-child(even) {
	transition: all 800ms 400ms
}
.topFaqIn dt, .topFaqIn dd {
	padding-left: 2em;
	position: relative;
	margin-bottom: 10px
}
.guide .topFaqIn dt,.guide .topFaqIn dd {
	padding-left:0;
}
.guide .topFaqIn dt{
	color:#26ad6f;
    padding-bottom: 10px;
    font-size: 22px;
    border-bottom: 1px solid #26ad6f;
}
.topFaqIn dt:before, .topFaqIn dd:before {
	font-family: 'Alatsi', sans-serif;
	font-size: 24px;
	content: "Q";
	position: absolute;
	top: 0;
	left: 0;
	color: #26ad6f;
	line-height: 1.3
}
.guide .topFaqIn dt:before,.guide .topFaqIn dd:before {
	display:none;
}
.topFaqIn dt {
	font-weight: bold
}
.topFaqIn dd:before {
	content: "A";
	left: 2px;
	color: #2a84c3;
	font-weight: bold
}
@media screen and (max-width: 820px) {
#topFaq {
	width: 90%;
	padding: 60px 5%
}
#topFaq h2 span {
	font-size: 30px;
}
}
@media screen and (max-width: 640px) {
#topFaq {
	padding: 40px 5%
}
#topFaq h2 {
	font-size: 26px;
	margin-bottom: 30px
}
#topFaq h2 span {
	font-size: 20px;
}
.topFaqIn {
	-webkit-flex-flow: column nowrap;
	flex-flow: column nowrap
}
.topFaqIn dt, .topFaqIn dd {
	font-size:14px;
}
}

@media screen and (max-width: 820px) {
#topMain {
	height: 500px;
	max-height: 500px
}
#topMain h1 span {
	font-size: 20px;
}
#topConcept h2 {
	padding-right: 34%
}
#topConcept p {
	padding-right: 34%
}
#topFaq {
	background-size: 200px
}
#topics {
    width: 70%;
    padding: 20px;
}
#topics dl dt {
    font-size:14px;
    margin-bottom: 10px;
}
#topics dl dd {
    font-size:14px;
}
#topics dl dd br{
    display:none;
}
}
@media screen and (max-width: 640px) {
#topMain {
    background: url(../images/top/topimg.webp) center 240px no-repeat;
    background-size: 88%;
}
#topMain h1 {
	padding:100px 0 0 25px;
	font-size: 26px;
}
}
@media screen and (max-width: 640px) {
#topMain h1 span {
	font-size: 18px;
	margin: 0
}
#topMain p {
	font-size: 18px;
	padding-left: 25px
}
#topMain p span {
	font-size: 20px;
}
#topMain:before {
	bottom: -30px
}
#topMain:after {
	bottom: -30px
}
#topConcept {
	background: url(../images/top/main.webp) 95% 10px no-repeat;
	background-size: 29%
}
#topConcept h2 {
	padding-right: 0
}
#topConcept p {
	padding-right: 0
}
#topConcept .btn1 {
	margin: 30px 0 0
}
#topFaq h2 {
	margin-bottom: 0
}
.topFaqIn {
	padding-bottom: 30px
}
.topFaqIn dl {
	padding-top: 30px
}
.topFaqIn dl.effect-fadein:nth-child(even) {
	transition-delay: 0s
}
}
.grecaptcha-badge {
	bottom: 100px !important
}
#footer {
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	text-align: left;
	align-items: stretch;
	background: #26ad6f
}
.footL {
	flex-basis:30%;
	padding: 80px 2% 40px 7.5%
}
.footL .footLogo {
	width: 100%;
	max-width: 140px;
	margin-bottom: 20px;
	margin-left: 33px;
}
.footL p span{
	font-size: 20px;
	display:block;
}
.footL p {
	color: #fff;
	margin-bottom: 20px
}
.footL .btn1 {
	margin-bottom: 10px
}
.footL .btn1 a {
	font-size: 18px;
	padding: 15px 20px
}
.footR {
	-webkit-flex-basis: 65%;
	flex-basis: 60%;
	padding: 80px 0 40px;
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	align-items: flex-start
}
.footR ul {
	flex-basis: 30%
}
.footR ul:last-child{
	flex-basis:70%
}
.footR li {
	margin-bottom: 15px
}
.footR li a {
	color: #fff;
	position: relative
}
.footR li a::after {
	position: absolute;
	bottom: -2px;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #86bc42;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform .4s
}
.footR li a:hover::after {
	transform: scale(1, 1)
}
.copy {
	line-height: 1;
	font-size: 12px !important;
	margin-top:0px
}
@media screen and (max-width: 820px) {
.footL {
	-webkit-flex-basis: 45%;
	flex-basis: 45%;
	padding: 40px 2% 30px 5%
}
.footL .footLogo {
	max-width: 190px
}
.footR {
	-webkit-flex-basis: 45%;
	flex-basis: 45%;
	-webkit-flex-flow: column nowrap;
	flex-flow: column nowrap;
	padding: 40px 0 20px
}
.footR li a {
	font-size: 12px;
}

}
@media screen and (max-width: 640px) {
#footer {
	-webkit-flex-flow: column nowrap;
	flex-flow: column nowrap
}
.footL .footLogo {
    max-width: 120px;
	margin: 0 auto 10px;
}
.footL p {
	font-size:14px;
}
.footL p span {
    font-size:14px;
}
.footR {
	-webkit-flex-flow: column nowrap;
	flex-flow: column nowrap
}
.footL {
	width: 90%;
	padding:40px 5% 0;
	text-align: center
}
.footR {
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	padding:0 5% 40px ;
}
.footR ul {
	flex-basis: 100%;
	border-top: 1px solid #FFF;
    padding-top: 10px;
}
.footR ul:nth-of-type(3) {
	-webkit-flex-basis: 100%;
	flex-basis: 100%;
	display: -webkit-flex;
	display: flex;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap
}
.footR ul:nth-of-type(3) li {
	-webkit-flex-basis: 50%;
	flex-basis: 50%
}
.footR ul:last-child {
    flex-basis: 100%;
    border-top: 1px solid #FFF;
    padding-top: 10px;
    margin-top: 10px;
}
.footR li a {
	font-size: 12px;
	line-height: 1.3
}
.footR li a::before{
	content:"";
	display:inline-block;
	width:10px;
	height:10px;
	background:#bbf4f9;
	margin-right:10px;
}
.footR li {
    margin-bottom:5px;
}
.copy {
	margin-top: 20px
}
}
#pageTop {
	bottom: 0;
	right: 0;
	display: block;
	position: fixed
}
#pageTop a {
	width: 100px;
	height: 100px;
	display: block;
	color: #fff;
	background: rgba(39,159,210,0.2);
	position: relative;
	overflow: hidden;
	z-index: 999
}
#pageTop a:hover {
	background: rgba(113,153,198,0.4)
}
#pageTop a:hover:after {
	margin-top: -8px
}
#pageTop a:after {
	content: '';
	width: 14px;
	height: 14px;
	border: 0;
	border-top: solid 2px #279fd2;
	border-right: solid 2px #279fd2;
	position: absolute;
	top: 50%;
	left: 50%;
	margin-top: -5px;
	margin-left: -8px;
	transform: rotate(-45deg);
	transition: all 0.4s ease
}
@media screen and (max-width: 640px) {
#pageTop a {
	width: 60px;
	height: 60px
}
}
.title {
	background: #ddf5e2;
	width: 85%;
	padding: 100px 7.5%;
	overflow: hidden;
	text-align: left;
	padding-top: 150px
}
@media screen and (max-width: 820px) {
.title {
	width: 90%;
	padding: 60px 5%
}
}
@media screen and (max-width: 640px) {
.title {
	padding: 40px 5%
}
}
.title h1, .title p {
	text-align: left;
	font-size: 40px;
	letter-spacing: .1em;
	font-weight:bold;
}
@media screen and (max-width: 820px) {
.title h1, .title p {
	font-size: 30px;
}
}
.title h1 span, .title p span {
	text-transform: uppercase;
	font-size: 20px;
	letter-spacing: .07em;
	display: block;
	color: #26ad6f;
	margin-top: 20px
}
.title2 {
	font-size: 18px;
	font-weight: normal;
	margin-bottom: 30px
}
.title2 span {
	font-size: 30px;
	letter-spacing: .07em;
	display: block;
	color: #279fd2;
	font-weight:bold;
}
@media screen and (max-width: 820px) {
.title2 span {
	font-size: 26px;
}
}
.title3 {
	font-size: 18px;
	font-weight: normal;
	margin-bottom: 30px
}
.title3 span {
	font-size: 18px;
	display: block;
	color: #279fd2;
	margin-bottom:10px;
	font-weight:bold;
}
.title4 {
	font-size: 26px;
	font-weight:bold;
	color: #2a84c3;
	text-align:center;
	margin-bottom: 30px
}
@media screen and (max-width: 820px) {
.title {
	padding-top: 100px
}
}
@media screen and (max-width: 640px) {
.title {
	padding-top: 80px
}
.title h1 {
	margin: 0
}
.title h1 span {
	margin-top: 0
}
.title2 {
	margin-bottom: 20px
}
.title3 {
	margin-bottom: 20px
}
.title3 span {
	margin-bottom: 5px
}
.title4 {
	margin-bottom: 20px
}
}
.btn1,.mfp_element_button{
	width: 100%;
	display: inline-block
}
.btn1 a,.btn1 button,.btn1 button:hover{
	width: 150px;
	padding:20px 0;
	text-align: center;
	color: #26ad6f;
	background:#FFF;
	line-height: 1.3;
	white-space: nowrap;
	font-weight: bold;
	text-decoration: none;
	display: inline-block;
	position: relative;
	overflow: hidden;
	border:2px solid #26ad6f;
	cursor: pointer;
}
.btn1 a:hover:after,.btn1 button:hover:after{
	-webkit-transform: translate(0) scale(1);
	transform: translate(0) scale(1)
}
.btn1 span {
	position: relative;
	display: inline-block;
	color: transparent;
	font-size: 16px;
}
.btn1 span:after,
.btn1 span:before{
	content: attr(data-txt);
	position: absolute;
	top: 0;
	left: 0;
	white-space: nowrap;
	transition: opacity 0.65s cubic-bezier(0.14, 1, 0.34, 1) 0s, -webkit-transform 0.65s cubic-bezier(0.14, 1, 0.34, 1) 0s;
	transition: transform 0.65s cubic-bezier(0.14, 1, 0.34, 1) 0s, opacity 0.65s cubic-bezier(0.14, 1, 0.34, 1) 0s;
	transition: transform 0.65s cubic-bezier(0.14, 1, 0.34, 1) 0s, opacity 0.65s cubic-bezier(0.14, 1, 0.34, 1) 0s, -webkit-transform 0.65s cubic-bezier(0.14, 1, 0.34, 1) 0s
}
.btn1 span:before{
	opacity: 1;
	-webkit-transform: translate(0);
	transform: translate(0);
	color: #26ad6f;
}
.btn1 span:after{
	opacity: 0;
	-webkit-transform: translateY(2em);
	transform: translateY(2em);
	color: #26ad6f
}
.btn1 a:hover span:before,.btn1 button:hover span:before{
	opacity: 0;
	-webkit-transform: translateY(-2em);
	transform: translateY(-2em)
}
.btn1 a:hover span:after,.btn1 button:hover span:after{
	opacity: 1;
	-webkit-transform: translate(0);
	transform: translate(0)
}
@media screen and (max-width: 640px) {
.btn1{
	text-align: center
}
.btn1 a{
	margin: 0 auto
}
}
.breadcrumb {
	margin: 0 0 40px !important;
	padding: 0;
	text-align: left
}
.breadcrumb li {
	display: inline
}
.breadcrumb li:after {
	content: '>';
	padding: 0 0.4em;
	color: #7199c6;
	height:120%;
}
.breadcrumb li:last-child:after {
	content: ''
}
.breadcrumb li a {
	color: #26ad6f;
	text-decoration: none
}
.breadcrumb li a:hover {
	color: #f8af62
}
.about {
	padding:50px 7.5%;
	overflow: hidden;
	text-align: left;
}
@media screen and (max-width: 820px) {
.about {
	width: 90%;
	padding: 60px 5%
}
}
@media screen and (max-width: 640px) {
.about {
	padding: 40px 5%
}
}
.aboutIn {
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	padding-bottom: 100px
}
.aboutIn3{
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	padding-bottom: 100px
}
@media screen and (max-width: 640px) {
.aboutIn {
	-webkit-flex-flow: column nowrap;
	flex-flow: column nowrap
}
.aboutIn3 {
	-webkit-flex-flow: column nowrap;
	flex-flow: column nowrap
}

}
.aboutTxt {
	-webkit-flex-basis: 45%;
	flex-basis: 45%;
	padding-left: 5%
}
.aboutPic {
	-webkit-flex-basis: 50%;
	flex-basis: 50%;
	border-radius: 20px 20px 20px 20px / 17px 17px 17px 17px;
	overflow: hidden
}
.aboutIn3 .aboutTxt{
	order: 1;
	padding-left:0
}
.aboutTxt p{
	margin-bottom:20px;
}
.aboutIn3 .aboutPic{
	order: 2;
	padding-left: 0%
}
.aboutIn2, .faciIn2 {
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	align-items: flex-start
}
@media screen and (max-width: 640px) {
.aboutIn3 .aboutTxt{
	order: 2;
}
.aboutIn3 .aboutPic{
	order: 1;
}
.aboutIn2, .faciIn2 {
	-webkit-flex-flow: column nowrap;
	flex-flow: column nowrap
}
}
.aboutIn2 dl, .faciIn2 dl {
	width: 100%;
	-webkit-flex-basis: 60%;
	flex-basis: 60%;
	border-top: 1px solid #ddd
}
.aboutIn2 dt, .faciIn2 dt {
	width: 10em;
	float: left;
	padding: 30px 0;
	font-weight: bold
}
.aboutIn2 dd, .faciIn2 dd {
	border-bottom: 1px solid #ddd;
	padding: 30px 0 30px 10em
}
.facility {
	width: 85%;
	padding: 100px 7.5%;
	overflow: hidden;
	text-align: left;
	padding-top: 50px;
	padding-bottom: 0
}
@media screen and (max-width: 820px) {
.facility {
	width: 90%;
	padding: 60px 5%
}
}
@media screen and (max-width: 640px) {
.facility {
	padding: 40px 5%
}
}
.faciIn {
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	padding-bottom: 100px
}
@media screen and (max-width: 640px) {
.faciIn {
	-webkit-flex-flow: column nowrap;
	flex-flow: column nowrap
}
}
.faciTxt {
	-webkit-flex-basis: 45%;
	flex-basis: 45%;
	padding-right: 5%
}
.faciPic {
	-webkit-flex-basis: 50%;
	flex-basis: 50%;
	border-radius: 20px 20px 20px 20px / 17px 17px 17px 17px;
	overflow: hidden
}
.txtBig {
	font-size: 30px;
	margin-bottom: 30px
}
@media screen and (max-width: 820px) {
.txtBig {
	font-size: 26px;
}
}
.faciIn2 {
	padding-bottom: 100px
}
.faciIn2L {
	-webkit-flex-basis: 35%;
	flex-basis: 35%;
	text-align: center
}
.faciIn2L p {
	margin-bottom: 30px
}
.faciPic2 {
	border-radius: 20px 20px 20px 20px / 17px 17px 17px 17px;
	overflow: hidden
}
.faciTxt2 {
	width: 100%;
	-webkit-flex-basis: 60%;
	flex-basis: 60%;
	padding-right: 5%
}
.faq {
	padding:0 7.5% 100px;
	text-align: left;
}
.guide {
	padding:100px 7.5% 100px;
	text-align: left;
}
@media screen and (max-width: 820px) {
.faq,.guide {
	width: 90%;
	padding: 60px 5%
}
}
@media screen and (max-width: 640px) {
.faq,.guide  {
	padding: 40px 5% 100px;
	background-size: auto 200px;
	background-position:bottom center;
}
}
.faq .topFaqIn,
.guide .topFaqIn {
	padding-bottom: 100px
}
.recruit {
	width: 85%;
	padding: 100px 7.5%;
	overflow: hidden;
	text-align: left;
	padding-top: 50px
}
@media screen and (max-width: 820px) {
.recruit {
	width: 90%;
	padding: 60px 5%
}
}
@media screen and (max-width: 640px) {
.recruit {
	padding: 40px 5%
}
}
.recruit .aboutIn2 {
	padding-top: 100px
}
.recrIn {
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	padding-top: 100px;
	padding-bottom: 100px
}
@media screen and (max-width: 640px) {
.recrIn {
	-webkit-flex-flow: column nowrap;
	flex-flow: column nowrap
}
}
.recrPic {
	-webkit-flex-basis: 35%;
	flex-basis: 35%;
	border-radius: 20px 20px 20px 20px / 17px 17px 17px 17px;
	overflow: hidden
}
.recrTxt {
	-webkit-flex-basis: 60%;
	flex-basis: 60%;
	padding-left: 5%
}
.contact {
	width: 85%;
	padding: 100px 7.5%;
	overflow: hidden;
	text-align: left;
	padding-top: 10px;
	text-align: center
}
.contact p,.contact .title3{
	text-align: left;
}
@media screen and (max-width: 820px) {
.contact {
	width: 90%;
	padding: 60px 5%
}
}
@media screen and (max-width: 640px) {
.contact {
	padding: 40px 5%
}
}
.contact .txtBig {
	margin-bottom: 0
}
.contact .contaForm {
	margin-top: 60px
}
.contaForm {
	width: 85%;
	padding: 60px 7.5%;
	background: #f0f5fa;
	border-radius: 20px 20px 20px 20px / 17px 17px 17px 17px;
	overflow: hidden;
	max-width: 600px;
	margin: 0 auto;
	text-align: left
}
.contaForm p {
	margin: 0 auto 20px
}
.contaForm p label {
	font-size: 20px;
}
.contaForm dl {
	max-width: 600px;
	margin: 0 auto
}
.contaForm dt {
	float: none;
	padding: .75em 0 0;
	font-weight: bold
}
.contaForm dt span {
	display: inline-block;
	background: #f15753;
	color: #fff;
	padding: 0 6px;
	border-radius: 4px;
	font-size: 12px;
	margin-left: 10px
}
.contaForm dd {
	padding: .5em 0 .75em;
	border-bottom: none
}
.contaForm input, .contaForm textarea{
	width: 92%;
	font-size: 20px;
	border: none;
	padding: 3%;
	border-radius: 10px
}
.contaForm select {
	width: 98%;
	font-size: 20px;
	border: none;
	padding: 3%;
	border-radius: 10px;
	appearance: none;
}

.contaForm textarea {
	height: 6.5em
}
.contaForm .formBtn input {
	display: block;
	text-align: center;
	background: #f66e42;
	color: #fff;
	line-height: 80px;
	font-size: 20px;
	font-weight: bold;
	margin: 30px auto 0;
	padding: 0;
	max-width: 320px;
	border-radius: 50px
}
.contaForm .formBtn input:hover {
	opacity: 0.6;
	filter: alpha(opacity=60)
}

.contaForm .shise input {
	width: auto
}
.ttlNews {
	margin: 0;
	background: #ddf5e2;
	padding: 140px 5% 80px;
	font-size: 20px;
	color: #003a5d;
	font-weight: bold
}
.ttlNews span {
	text-transform: uppercase;
	font-size: 72px;
	padding-bottom: 10px
}
@media screen and (max-width: 820px) {
.ttlNews span {
	font-size: 50px;
}
}
@media screen and (max-width: 640px) {
.ttlNews span {
	font-size: 32px;
}
}
.entry {
	width: 85%;
	padding: 100px 7.5%;
	overflow: hidden;
	text-align: left;
	padding-top: 50px;
	margin: auto;
	max-width: 1000px
}
@media screen and (max-width: 820px) {
.entry {
	width: 90%;
	padding: 60px 5%
}
}
@media screen and (max-width: 640px) {
.entry {
	padding: 40px 5%
}
}
.entry p {
	padding: 15px 0
}
.entry time {
	display: block
}
.entry h2 {
	color: #f66e42;
	margin: -60px 0 30px;
	padding-top: 120px;
	font-size: 26px;
}
@media screen and (max-width: 640px) {
.entry h2 {
	margin: -90px 0 20px
}
}
.entry h2 a {
	color: #ff7937
}
.entry figure {
	margin-left: 0;
	margin-right: 0
}
.entry h3 {
	color: #ff7937;
	margin: 40px 0 20px
}
@media screen and (max-width: 640px) {
.entry h3 {
	margin: 20px 0 10px
}
}
.entry p a {
	text-decoration: underline
}
.entry ul {
	list-style: circle
}
.entry ul li {
	font-size: 20px;
}
.entry ul li a {
	color: #f66e42;
	position: relative
}
.entry ul li a::after {
	position: absolute;
	bottom: -2px;
	left: 0;
	content: '';
	width: 100%;
	height: 2px;
	background: #f66e42;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform .4s
}
.entry ul li a:hover::after {
	transform: scale(1, 1)
}
.entry ul, .entry ol {
	margin-left: 40px;
	margin-bottom: 40px
}
.entry ul li, .entry ol li {
	line-height: 1.3;
	margin-bottom: 20px
}
.entry .wp-block-table.is-style-stripes {
	margin-left: 0;
	margin-right: 0
}
.entry .wp-block-table td, .entry .wp-block-table th {
	word-break: keep-all
}
.entry .wp-block-media-text {
	margin-bottom: 20px
}
.entry .wp-block-embed__wrapper {
	position: relative;
	width: 100%;
	height: 0;
	padding-top: 56.25%
}
.entry .wp-block-embed__wrapper iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100% !important;
	height: 100% !important
}
#news h1 {
	font-size: 30px;
	color: #1268ab;
	margin: 10px 0 40px
}
@media screen and (max-width: 820px) {
#news h1 {
	font-size: 26px;
}
}
#news #pager {
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	width: 100%;
	max-width: 920px;
	margin: 0 auto 4em
}
@media screen and (max-width: 640px) {
#news #pager {
	-webkit-flex-flow: column nowrap;
	flex-flow: column nowrap
}
}
#news li {
	flex-basis: 47.5%;
	-webkit-flex-basis: 47.5%;
	text-align: left
}
#news li a {
	color: #fff;
	line-height: 1.3;
	font-weight: bold;
	text-align: center;
	background: #2b4056;
	display: block;
	position: relative;
	padding: 1em 2em;
	margin: 0 2px;
	border-radius: 3em
}
#news li a:after {
	content: '';
	width: 10px;
	height: 10px;
	position: absolute;
	top: 50%;
	left: 20px;
	border-top: solid 2px #fff;
	border-right: solid 2px #fff;
	-ms-transform: rotate(-135deg);
	-webkit-transform: rotate(-135deg);
	transform: rotate(-135deg);
	margin-top: -6px
}
#news li:hover {
	opacity: 0.6;
	filter: alpha(opacity=60)
}
#news li:nth-child(even) a:after {
	right: 20px;
	left: auto;
	-ms-transform: rotate(45deg);
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg)
}
.category {
	width: 85%;
	padding: 100px 7.5%;
	overflow: hidden;
	text-align: left;
	margin: auto;
	max-width: 900px
}
@media screen and (max-width: 820px) {
.category {
	width: 90%;
	padding: 60px 5%
}
}
@media screen and (max-width: 640px) {
.category {
	padding: 40px 5%
}
}
.category article {
	padding-bottom: 30px;
	margin-bottom: 30px
}
.category article a {
	width: 100%;
	display: -webkit-flex;
	display: flex;
	justify-content: space-between;
	align-items: center;
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap;
	position: relative;
	text-decoration: none;
	overflow: hidden;
	text-align: left;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden
}
@media screen and (max-width: 640px) {
.category article a {
	-webkit-flex-flow: column nowrap;
	flex-flow: column nowrap
}
}
.category article a .blogTn {
	width: 100%;
	-webkit-flex-basis: 38%;
	flex-basis: 38%;
	position: relative;
	padding-top: 25%;
	overflow: hidden;
	border-radius: 8px
}
.category article a .blogTn img {
	position: absolute;
	width: 100%;
	top: 50%;
	left: 50%;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	transition: all 0.4s ease
}
.category article a:hover .blogTn img {
	-webkit-transform: scale(1.1) translate(-45.5%, -45.5%);
	-ms-transform: scale(1.1) translate(-45.5%, -45.5%);
	transform: scale(1.1) translate(-45.5%, -45.5%);
	opacity: 1;
	filter: alpha(opacity=100)
}
.category article a .cateTxt {
	width: 90%;
	-webkit-flex-basis: 52%;
	flex-basis: 52%;
	padding: 0 5%
}
.category article a:hover {
	color: #f66e42
}
.category article a:hover:after {
	right: 15px
}
.category article a:after {
	content: '';
	width: 14px;
	height: 14px;
	border: 0;
	border-top: solid 4px #f66e42;
	border-right: solid 4px #f66e42;
	position: absolute;
	top: 50%;
	right: 5px;
	margin-top: -5px;
	transform: rotate(45deg);
	transition: all 0.4s ease
}
@media screen and (max-width: 640px) {
.pageabout #topConcept {
	padding-top: 20px
}
.about {
	padding-top: 0
}
.aboutIn,
.aboutIn3{
	padding-bottom: 40px
}
.aboutTxt {
	padding-left: 0
}
.aboutPic {
	margin-bottom: 20px
}
.aboutIn2 dt, .faciIn2 dt {
	width: auto;
	float: none;
	padding: 20px 0 0
}
.aboutIn2 dd, .faciIn2 dd {
	padding: 10px 0 20px
}
.facility {
	padding-top: 20px;
	padding-bottom: 0
}
.faciIn {
	padding-bottom: 40px;
	flex-direction: column-reverse
}
.faciTxt {
	padding-right: 0;
	padding-top: 30px
}
.txtBig {
	margin-bottom: 20px
}
.faciIn2 {
	padding-bottom: 40px
}
.faciIn2L p {
	margin-bottom: 20px
}
.price {
	width: 90%;
	padding: 40px 5%;
	margin-bottom: 40px
}
.price dt {
	width: auto;
	float: none;
	padding: 20px 0 0
}
.price dd {
	padding: 10px 0 20px
}
.faciTxt2 {
	padding-right: 0;
	padding-bottom: 30px
}
.faq {
	padding-top: 20px;
	padding-bottom: 150px
}
.faq .topFaqIn {
	padding-bottom: 40px
}
.faq .title4 {
	margin-bottom: 0;
	text-align:left;
}
.recruit {
	padding-top: 20px
}
.recruit .aboutIn2 {
	padding-top: 40px
}
.recrIn {
	padding-top: 40px;
	padding-bottom: 40px
}
.recrPic {
	margin-bottom: 20px
}
.recrTxt {
	padding-left: 0%
}
.contact {
	padding-top: 20px
}
.contact .title4 {
	text-align: left
}
.contact .contaForm {
	margin-top: 30px
}
.contaForm {
	width: 90%;
	padding: 40px 5%
}
.entry {
	padding-top: 20px
}
.entry .wp-block-media-text .wp-block-media-text__content {
	padding: 15px 0 0
}
#news h1 {
	margin: 10px 0 20px
}
.category article a {
	-webkit-flex-flow: row wrap;
	flex-flow: row wrap
}
.category article a h2 {
	font-size: 20px;
}
.category article a:hover:after {
	right: 5px
}
}
@media (max-width: 640px) {
p, li, dl, table {
	line-height: 1.5
}
.btn1 a {
	font-size: 14px;
}
}
#topBlog {
	padding:0 7.5% 100px;
	text-align: left;
}
@media screen and (max-width: 820px) {
#topBlog {
	width: 90%;
	padding: 60px 5%
}
}
@media screen and (max-width: 640px) {
#topBlog {
	padding: 40px 5%
}
}
#topBlog h2 {
	display: block;
	font-size: 20px;
	letter-spacing: .1em;
	margin-bottom: 20px;
	font-weight: normal;
	color: #7199c6
}
#topBlog h2 span {
	font-family: 'Alatsi', sans-serif;
	font-size: 40px;
	letter-spacing: .07em;
	display: block;
	color: #72bc45
}
@media screen and (max-width: 820px) {
#topBlog h2 span {
	font-size: 30px;
}
}
@media screen and (max-width: 640px) {
#topBlog h2 {
	font-size: 26px;
	margin-bottom: 30px
}
#topBlog h2 span {
	font-size: 20px;
}
}
.topBlogIn {
	padding:0 7.5% 100px;
	text-align: left;
	display: flex;
    justify-content: space-between;
    align-items: center;
    -webkit-flex-flow: row wrap;
    flex-flow: row wrap;
    align-items: flex-start;
    padding-top: 20px;
}
.topBlogIn article {
	width: 100%;
	-webkit-flex-basis: 48%;
	flex-basis: 48%;
	margin-bottom: 40px
}
.topBlogIn:after {
	content: "";
	display: block;
	width: 22%;
	height: 0
}
.topBlogIn .effect-fadein:nth-child(even) {
	transition: all 800ms 400ms
}
.topBlogIn article a {
	width: 100%;
	overflow: hidden;
	display: block;
	text-align: left;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden
}
.topBlogIn article a .blogTn {
	width: 35%;
	float: left;
	overflow: hidden;
	border-radius: 8px;
	margin-right: 3%
}
.topBlogIn article a:hover h3 {
	color: #f66e42
}
.topBlogIn article time {
	font-size: 12px;
	display: block;
	padding: 3% 0 5px 0;
	margin-left: 35%;
	color: #7199c6
}
.topBlogIn article h3 {
	font-size: 18px;
	font-weight: normal;
	transition: all 0.4s ease;
	margin-left: 35%
}
@media screen and (max-width: 640px) {
.topBlogIn {
	-webkit-flex-flow: column nowrap;
	flex-flow: column nowrap
}
.topBlogIn article {
	flex-basis: 100%;
}
.topBlogIn article h3 {
    font-size: 16px;
}
}
.guide dl{
	margin-bottom:100px;
}
.guide h3.title4{
	width:100%;
}
.guide iframe{
	border-radius:20px;
}
.form_list {
	color: #3d3d3d;
	margin: 30px auto;
}
@media (max-width:767px) {
.form_list+.section_title {
	margin-top: 10px
}
}
.form_list+.button {
	margin-top: 60px
}
@media (max-width:767px) {
.form_list+.button {
	margin-top: 45px
}
}
.form_item+.form_item {
	margin-top: 20px
}
.form_item.is-magin30 {
	margin-top: 30px
}
.form_item dl {
	display: flex;
	flex-wrap: wrap
}
.form_item dl.is-align {
	align-items: center
}
.confirm .form_item dl {
	margin-top: 30px
}
@media (max-width:767px) {
.confirm .form_item dl {
	margin-top: 18px
}
}
.form_item span {
	border-radius: 4px;
	color: #fff;
	display: inline-block;
	height: 20px;
	margin-right: 12px;
	padding: 4px 3px 2px;
	position: relative;
	text-align: center;
	top: -2px;
	width: 36px;
	font-size: 12px;
	line-height: 12px;
}
@media (max-width:767px) {
.form_item span {
	border-radius: 2px;
	height: 14px;
	margin-right: 8px;
	padding: 2px 0;
	top: 0;
	width: 26px;
	font-size: 10px;
	line-height: 10px;
}
}
.form_item span.is-normal {
	background: #8894aa
}
.form_item span.is-required {
	background: #e34343
}
.form_item span.is-confirm {
	color: #202020;
	width: auto;
	font-size: 12px;
	line-height: 12px;
}
.form_item div.is-side, .form_item~dd {
	width: calc(100% - 260px);
	font-size: 15px;
	line-height: 15px;
}
@media (max-width:767px) {
.form_item div, .form_item~dd {
	width: 100%;
	font-size: 13px;
	line-height: 19.5px;
}
}
.form_item div.is-side, .form_item~dd.is-side {
	display: flex
}
@media (max-width:767px) {
.form_item div.is-side, .form_item~dd.is-side {
	justify-content: space-between
}
.form_item div.is-side{
width: 100%;
}
}
.form_item div.is-side dd, .form_item~dd.is-side dd {
	margin: 0 10px 0 0;
	width:auto;
}
@media (max-width:767px) {
.form_item div.is-side dd, .form_item~dd.is-side dd {
	margin: 12px 0 0;
	width: 48%
}
.form_item div.is-side2 dd {
    width:100%!important;
}
}
.form_item dt {
	justify-content: flex-start;
	display: flex;
	padding-top: 12px;
	width: 260px;
	font-size: 16px;
	line-height: 16px;
}
@media (max-width:767px) {
.form_item dt {
	padding-top: 0;
	font-size: 14px;
	line-height: 14px;
}
}
.form_item dt.is-padding0 {
	padding-top: 0
}
.confirm .form_item dt {
	color: #494cc5;
	padding-top: 0;
	font-size: 14px;
	line-height: 21px;
}
@media (max-width:767px) {
.confirm .form_item dt {
	font-size: 13px;
	line-height: 19.5px;
}
}
.form_item dd {
	width: 100%;
	text-align:left;
}
@media (max-width:767px) {
.form_item dd {
	margin-top: 12px
}
}
.form_item dd:nth-child(n+2) {
	margin-top: 16px
}
@media (max-width:767px) {
.form_item dd:nth-child(n+2) {
	margin-top: 12px
}
}
.confirm .form_item dd {
	margin: 0;
	width: calc(100% - 236px);
	font-size: 14px;
	line-height: 21px;
}
@media (max-width:767px) {
.confirm .form_item dd {
	width: 100%;
	font-size: 13px;
	line-height: 19.5px;
}
}
.form input[type=radio] {
	cursor: pointer;
	display: none
}
.form input[type=radio]+label {
	display: block;
	padding-left: 28px;
	position: relative
}
.form input[type=radio]+label:before, .form input[type=radio]+label:after {
	border-radius: 50px;
	content: "";
	position: absolute
}
.form input[type=radio]+label:before {
	background: #494cc5;
	display: none;
	left: 3px;
	height: 10px;
	top: 3px;
	width: 10px;
	z-index: 3
}
.form input[type=radio]+label:after {
	background: #d7f1ee;
	left: 0;
	height: 16px;
	top: 0;
	width: 16px;
	z-index: 2
}
.form input[type=radio]:checked+label:before {
	display: block
}
.form textarea {
	border: 1px solid #494cc5;
	border-radius: 5px;
	height: 150px;
	max-width: 600px;
	resize: none;
	padding: 10px 13px;
	width: 100%;
	-webkit-appearance: none
}
@media (max-width:767px) {
.form textarea {
	height: 100px;
	font-size:16px;
}
}
.form textarea:focus {
	outline: 1px solid #494cc5
}
.form textarea::placeholder {
color:#b5b5b5
}
.form input[type=text], .form input[type=email] {
	border: 1px solid #494cc5;
	border-radius: 4px;
	height: 40px;
	padding: 10px 13px;
	width: 100%;
	-webkit-appearance: none;
	font-size:16px;
}
.form input[type=text]:focus, .form input[type=email]:focus {
	outline: 1px solid #494cc5
}
.form input[type=text]::placeholder, .form input[type=email]::placeholder {
color:#b5b5b5
}
.form input[type=text]:-webkit-autofill, .form input[type=email]:-webkit-autofill {
box-shadow:0 0 0 1000px #fff inset
}
.form input[type=text].is-small, .form input[type=email].is-small {
	max-width: 200px
}
.form input[type=text].is-medium, .form input[type=email].is-medium {
	max-width: 250px
}
.form input[type=text].is-large, .form input[type=email].is-large {
	max-width: 410px
}
@media (max-width:767px) {
.form input[type=text].is-small, .form input[type=text].is-medium, .form input[type=text].is-large, .form input[type=email].is-small, .form input[type=email].is-medium, .form input[type=email].is-large {
	max-width: inherit
}
}
.form select {
	max-width: 410px;
	border: 1px solid #494cc5;
	border-radius: 4px;
	height: 40px;
	padding: 10px 13px;
	width: 100%;
	color: #333
}
.form select:focus {
	outline: 1px solid #494cc5
}
@media (max-width:767px) {
.form select {
	max-width: 100%
}
}
.form_error {
	color: #e34343;
	margin-top: 12px;
	font-size: 14px;
	line-height: 14px;
}
@media (max-width:767px) {
.form_error {
	margin-top: 10px;
	font-size: 13px;
	line-height: 13px;
}
}
.complete {
	text-align: center
}
@media (max-width:767px) {
.complete {
	text-align: left
}
}
.complete p {
	margin-top: 16px;
	font-size: 16px;
	line-height: 30.4px;
}
@media (max-width:767px) {
.complete p {
	margin-top: 10px;
	text-align: left;
	font-size: 14px;
	line-height: 26.6px;
}
}
.complete p.is-green {
	margin-top: 20px;
	color: #494cc5;
	font-size: 18px;
	line-height: 32.4px;
}
@media (max-width:767px) {
.complete p.is-green {
	font-size: 16px;
	line-height: 28.8px;
}
}
.complete p.is-red {
	color: #e5495c;
	margin-top: 50px;
	font-size: 14px;
	line-height: 25.2px;
}
@media (max-width:767px) {
.complete p.is-red {
	margin-top: 36px;
	font-size: 13px;
	line-height: 23.4px;
}
}