@charset "utf-8";
/* BASE ------------------------------------------------------------------------ */

::selection {
	background: rgba(0, 0, 0, 0.2);
}
/*Firefox*/
::-moz-selection {
	background: rgba(0, 0, 0, 0.2);
}


html{
	font-size: 16px;
}

h1{
	font-size: 2rem;
	font-weight: bold;
	position: relative;
}

h2{
	font-size: 1.75rem;
	font-weight: bold;
	margin-bottom: 1.5vw;
}

h3{
	font-size: 1.5rem;
	font-weight: bold;
	text-align: center;
}

h4{
	font-size: 1.5rem;
	font-weight: bold;
	margin-bottom: 1.25vw;
	text-align: center;
}

section{
	background: #FFF;
	position: relative;
	z-index: 2;
}

.col{
	max-width: 1200px;
	min-width: 960px;
	margin: auto;
	padding: 60px 20px;
	text-align: center;
	position: relative;
	z-index: 2;
}

.colFix{
	display: flex;
	justify-content: space-around;
}

.colFix .colIn{
	width: 70%;
	padding: 60px 0px;
}
.colFix .colIn:last-of-type{
	width: 30%;
}




.colIn{
	padding: 20px 0px;
}

.colIn:last-of-type{
	padding: 20px 0px 0px;
}




.coldb{
	display: flex;
	justify-content: space-between;
}

.coldb > div:first-of-type {
	width: 390px;
}

.coldb > div:last-of-type {
	width: 750px;
}


.colIn.colHalf{
	display: flex;
	justify-content: space-between;
}

.colIn.colHalf > div {
	width: calc(100% / 2 - 5px);
}










.flex-Reverse{ flex-direction: row-reverse; }
.flex-al-c{ align-items: center; }

@font-face {
	font-family: 'icomoon';
	src:  url('../fonts/icomoon.eot?yjwti6');
	src:  url('../fonts/icomoon.eot?yjwti6#iefix') format('embedded-opentype'),
				url('../fonts/icomoon.ttf?yjwti6') format('truetype'),
				url('../fonts/icomoon.woff?yjwti6') format('woff'),
				url('../fonts/icomoon.svg?yjwti6#icomoon') format('svg');
	font-weight: normal;
	font-style: normal;
}

a{
	-webkit-transition: -webkit-all 0.2s linear;
	 -moz-transition:    -moz-all 0.2s linear;
		-ms-transition:     -ms-all 0.2s linear;
		 -o-transition:      -o-all 0.2s linear;
				transition:         all 0.2s linear;
}




.balloon{
	position: relative;
	display: inline-block;
	background: #FFF;
	border-radius: 40px;
	padding: 10px 70px;
	margin: auto auto 1.5vw auto;
}

.balloon::after{
	content: "";
	position: absolute;
	right: 0;
	bottom: -12px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #FFF transparent transparent transparent;
	border-width: 12px 10px 0 10px;
}

.balloon.lightBlue{         background:   #c8dcec; }
.balloon.lightBlue::after { border-color: #c8dcec transparent transparent transparent; }

.balloon.pink{         background:   #fbcbcd; }
.balloon.pink::after { border-color: #fbcbcd transparent transparent transparent; }

.balloon.red{
	background-color: #d81c24;
	color: #FFF;
}
.balloon.red::after {
	border-color: #d81c24 transparent transparent transparent;
}




strong{
	font-size: 1em;
	font-family: inherit;
	font-weight: bold;
	color: #d81c24;
	margin: 0 4px;
	background: linear-gradient(rgba(255,255,255,0) 80%,rgba(255, 191, 0, 0.5) 0);
}

/*
strong::after{
	content: "";
	background: rgba(255, 191, 0, 0.8);
	height: 5px;
	width: 100%;
	position: absolute;
	bottom: 1px;
	left: 0;
	right: 0;
	z-index: -1;
}
*/




.mincho{ font-family: リュウミン M-KL, "游明朝", 'Sawarabi Mincho'; }

.fontL{
	font-size: 2.75rem;
	margin-left: 0.5rem;
	margin-right: 0.5rem;
}

.notice{ font-size: 0.75rem; }

.colorPink{ color: #d45082; }
.colorOrange{ color: #ec6900; }
.colorBlue{ color: #044194; }
.colorRed{ color: #d81c24; }

.bgBlue{ background-color: #044194; color: #FFF; }

.btBlue{
	border-top: 1px solid #044194;
	margin-top: 2.5vw;
	padding-top: 2.5vw;
}

.bgBlue.balloon::after { border-color: #044194 transparent transparent transparent; }

.imgBorder{ border: 8px solid #ececec; }

.ta-c{ text-align: center; }


.mb-0 { margin-bottom:  0px !important; }
.mb-01{ margin-bottom:  1px !important; }
.mb-08{ margin-bottom:  8px; }
.mb-10{ margin-bottom: 10px; }
.mb-20{ margin-bottom: 20px; }
.mb-30{ margin-bottom: 30px; }
.mb-40{ margin-bottom: 40px; }

.mt-10{ margin-top: 10px; }
.mt-20{ margin-top: 20px; }
.mt-30{ margin-top: 30px; }
.mt-40{ margin-top: 40px; }
.mt-50{ margin-top: 50px; }
.mt-60{ margin-top: 60px; }
.mt-70{ margin-top: 70px; }
.mt-80{ margin-top: 80px; }




/* LINK ------------------------------------------------------------------------ */
p.ctaLink a {
	display: inline-block;
	font-size: 1.75rem;
	cursor: pointer;
	border-radius: 60px;
	text-align: center;
	position: relative;
	text-decoration: none;
	padding: 5px 60px;
	z-index: 1;
	color: #FFF;
	box-shadow: 0 0 0 4px #4caf50;
	-webkit-transition: color 0.3s , background-color 0.3s;
	   -moz-transition: color 0.3s , background-color 0.3s;
	        transition: color 0.3s , background-color 0.3s;
}

p.ctaLink a small {
	display: block;
}

p.ctaLink a:after {
	content: "";
	pointer-events: none;
	position: absolute;
	width: 100%;
	height: 100%;
	border-radius: 60px;
	-webkit-box-sizing: content-box;
	-moz-box-sizing: content-box;
	box-sizing: content-box;
	top: -2px;
	left: -2px;
	padding: 2px;
	z-index: -1;
	background-color: #4caf50;
	-webkit-transition: -webkit-transform 0.2s, opacity 0.3s;
	-moz-transition: -moz-transform 0.2s, opacity 0.3s;
	transition: transform 0.2s, opacity 0.3s;
}

p.ctaLink a:before {
	speak: none;
	font-size: 48px;
	line-height: 90px;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	display: block;
	-webkit-font-smoothing: antialiased;
}

p.ctaLink a:hover {
	color: #4caf50;
}

p.ctaLink a:hover:after {
	-webkit-transform: scale(1.2);
	   -moz-transform: scale(1.2);
	    -ms-transform: scale(1.2);
	        transform: scale(1.2);
	opacity: 0;
}






















p.ctaLink.btnRed a {
	box-shadow: 0 0 0 4px #d92027;
}

p.ctaLink.btnRed a:after {
	background-color: #d92027;
}

p.ctaLink.btnRed a:hover {
	color: #d92027;
}





/* EFFECT ---------------------------------------------------------------------- */
.effectPom{
	-webkit-animation: title3 400ms;
	animation: title3 400ms
}

@-webkit-keyframes title3 {
	50% { -webkit-transform: scale(1.25); }
}

@keyframes title3 {
	50% { transform: scale(1.25); }
}


.effectTon{
	opacity: 1 !important;
	-webkit-animation: effectTon 2000ms infinite;
					animation: effectTon 2000ms infinite;
	position: relative;
}

@-webkit-keyframes effectTon {
	  0% { bottom:  0px; }
	 80% { bottom:  5px; }
	100% { bottom:  0px; }
}

@keyframes effectTon {
	 0% { bottom:  0px; }
	 80% { bottom:  5px; }
	100% { bottom:  0px; }
}


.effectSlideInLeft{
	opacity: 1 !important;
	-webkit-animation: SlideInLeft 400ms;
					animation: SlideInLeft 400ms;
	position: relative;
	-webkit-transition: -webkit-all 0.5s linear;
	   -moz-transition:    -moz-all 0.5s linear;
	    -ms-transition:     -ms-all 0.5s linear;
	     -o-transition:      -o-all 0.5s linear;
	        transition:         all 0.5s linear;
}

@-webkit-keyframes SlideInLeft {
	0% { left: -56px; }
	100% { left: 0; }
}

@keyframes SlideInLeft {
	0% { left: -56px; }
	100% { left: 0; }
}


.effectSlideInRight{
	opacity: 1 !important;
	-webkit-animation: SlideInRight 400ms;
					animation: SlideInRight 400ms;
	position: relative;
	-webkit-transition: -webkit-all 0.5s linear;
	   -moz-transition:    -moz-all 0.5s linear;
	    -ms-transition:     -ms-all 0.5s linear;
	     -o-transition:      -o-all 0.5s linear;
	        transition:         all 0.5s linear;
}

@-webkit-keyframes SlideInRight {
	0% { right: -56px; }
	100% { right: 0; }
}

@keyframes SlideInRight {
	0% { right: -56px; }
	100% { right: 0; }
}


.effectSlideInBottom{
	opacity: 1 !important;
	-webkit-animation: SlideInBottom 400ms;
					animation: SlideInBottom 400ms;
	position: relative;
	-webkit-transition: -webkit-all 0.5s linear;
	   -moz-transition:    -moz-all 0.5s linear;
	    -ms-transition:     -ms-all 0.5s linear;
	     -o-transition:      -o-all 0.5s linear;
	        transition:         all 0.5s linear;
}

@-webkit-keyframes SlideInBottom {
	0% { bottom: -56px; }
	100% { bottom: 0; }
}

@keyframes SlideInBottom {
	0% { bottom: -56px; }
	100% { bottom: 0; }
}


.effectfadeIn{
	opacity: 1 !important;
	-webkit-animation: effectfadeIn 400ms;
					animation: effectfadeIn 400ms;
	position: relative;
	-webkit-transition: -webkit-all 0.5s linear;
	   -moz-transition:    -moz-all 0.5s linear;
	    -ms-transition:     -ms-all 0.5s linear;
	     -o-transition:      -o-all 0.5s linear;
	        transition:         all 0.5s linear;
}

@-webkit-keyframes effectfadeIn {
	0% { opacity: 0; }
	100% { opacity: 1; }
}

@keyframes effectfadeIn {
	0% { opacity: 0; }
	100% { opacity: 1; }
}



.effectRotate{
	animation: effectRotate 10s linear infinite;
}

@-webkit-keyframes effectfadeIn {
	100% { transform: rotate(360deg); }
}

@keyframes effectRotate {
	100% { transform: rotate(360deg); }
}





/* header ---------------------------------------------------------------------- */
header {
	background: #FFF;
	box-shadow: 0px -14px 15px 10px #2e2e2e;
	position: fixed;
	z-index: 2;
	top: 0px;
	left: 0;
	right: 0;
}

header .col{
	display: flex;
	align-items: center;
	justify-content: space-between;
	padding: 0.75vw 20px;
}


header .col h1 img{
	width: 100%;
}

header .col h1{
	display: flex;
	align-items: center;
	justify-content: start;
}

/* header .col h1::before {
	font-family: 'icomoon' !important;
	content: "\e900";
	font-size: 2.5rem;
	margin-right: 8px;
	display: inline-block;
	speak: none;
	font-style: normal;
	font-weight: normal;
	font-variant: normal;
	text-transform: none;
	line-height: 1;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
} */


header .col ul {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

header .col ul li {
	margin: 0 10px 0 0;
}

header .col ul li.btn-link {
	margin: 0;
}

header .col ul li.btn-link  p.ctaLink a{
	font-size: 0.75rem;
	box-shadow: 0 0 0 2px #4caf50;
}





/* header.clone-nav ------------------------------------------------------------ */
header.clone-nav{
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 2000;
	width: 100%;
	padding: 0;
	transition: .3s;
	transform: translateY(-100%);
	display: flex;
	align-items: center;
	justify-content: space-between;
	height: auto;
	box-shadow: none;
}

header.clone-nav.is-show{
	transform: translateY(0);
	box-shadow: 0px -22px 20px 20px rgba( 0, 0, 0, 0.5);
}

header.clone-nav .col{
	max-width: 100%;
	min-width: 100%;
	padding: 10px;
}

header.clone-nav .col h1 img {
	width: 70%;
}

header.clone-nav .col h1::before {
	font-size: 1.75rem;
}


header .col ul {
	justify-content: flex-end;
}

header.clone-nav .col ul li.btn-free {
	width: 50%;
}

header.clone-nav .col ul li.btn-free img {
	width: 100%;
}

header.clone-nav .col ul li.btn-link br {
	display: none;
}

header.clone-nav .col ul li.btn-link p.ctaLink a {
	padding: 6px 25px;
}



/* #sec_topImg ----------------------------------------------------------------- */

#sec_topImg{
	background: #333;
	position: fixed;
	width: 100%;
	top: 0;
	background: url(../img/sec_topimg_01.jpg) no-repeat;
	background-position: center;
	z-index: 1;
}

#sec_topImg .col{
	height: 100vh;
}


#sec_topImg .col .topTitle {
	position: fixed;
	width: calc(100%);
	left: auto;
	right: 0;
	top: 13vh;
	transform: skewY(-5deg);
	overflow:hidden;
}

#sec_topImg .col .topTitle h2 {
	background: #ec6900;
	/* background: #093680; */
	font-size: 1.75rem;
	margin-bottom: 0;
	color: #FFF;
	margin: 0;
	padding-right: 30%;
	padding-top: 1vw;
	padding-bottom: 1vw;
}

#sec_topImg .col .topTitle h2.color {
	background: #de4148;
}

#sec_topImg .col .topTitle h1 {
	padding-top:    1.75vw;
	padding-bottom: 2.25vw;
	background: #FFF;
	color: #093680;
	font-size: 2.75rem;
	padding-right: 30%;
	line-height: 2rem;
}

#sec_topImg .col .topTitle h1 span {
	font-size: 1.75rem;
	line-height: 1.5rem;
}

#sec_topImg .col .topTitle h1 span.colorRed {
	font-size: 1.25em;
	line-height: 1.25em;
}


#sec_topImg dl.sec_topImg_02{
	position: absolute;
	left: 10%;
	bottom: 12vw;
}


#sec_topImg dl.sec_topImg_02 dt{
	font-weight: bold;
	margin-bottom: 0.25rem;
}

#sec_topImg dl.sec_topImg_02 dd{
	padding: 25px 30px;
	background: #FFF;
	border: 4px solid #ececec;
}

#sec_topImg p.sec_topimg_03{
	position: absolute;
	right: 0vw;
	bottom: -146px;
	height: 90vh;
	max-height: 1000px;
}

#sec_topImg p.sec_topimg_03 img{
	height: 100%;
}


#sec_topImg p.moreLink{
	position: fixed;
	bottom: 4vh;
	left: 0;
	right: 0;
	margin: auto;
}

#sec_topImg p.moreLink a{
	color: #FFF;
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
	width: 4vw;
	height: 4vw;
	background: rgba(9, 54, 128, 0.6);
	border-radius: 500px;
	border: 3px solid #093680;
	margin: auto;
	text-decoration: none;
	font-size: 0.75rem;
	line-height: 0.8rem;
}

#sec_topImg p.moreLink a i{
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 1.5rem;
}

#sec_topImg p.moreLink a i::after{
	content: "\f078";
}


/* .sec_cta -------------------------------------------------------------------- */
section.sec_cta{
	background: url(../img/bg_cta.jpg) no-repeat;
	background-position: center;
	background-size: cover;
	position: relative;
	z-index: 1;
}

section.sec_cta::after{
	position: absolute;
	content: "";
	width: 100%;
	height: 100%;
	background-image: url(../img/bg.png);
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 1;
	background-attachment: fixed;
}

section.sec_cta h2{
	color: #FFF;
}

section.sec_cta h3 span{
	font-size: 1.5rem;
	background: #d92027;
	margin-right: 0.5vw;
	letter-spacing: 0.75rem;
	padding-left: 0.8rem;
	color: #FFF;
	border-radius: 3px;
}

section.sec_cta .colIn{
	background-color: #FFF;
	border-radius: 8px;
	padding: 2.5vw 5vw;
}

section.sec_cta .colIn ul{
	border-bottom: 1px solid #4caf50;
	margin-bottom: 1.5vw;
	padding-bottom: 1.5vw;
	display: flex;
	justify-content: center;
}

section.sec_cta .colIn ul li{
	width: 45%;
	margin: 0 0.5vw;
}

section.sec_cta .colIn ul li h4 {
	background: #F44336;
	color: #FFF;
	border-radius: 100px;
	margin-bottom: 0.75vw;
}

section.sec_cta .colIn ul li img {
	width: 100%;
	display: block;
	margin-bottom: 0.75vw;
}

section.sec_cta .colIn ul li h3 {
	font-size: 1rem;
	border-radius: 0px;
	padding: 0;
}




section.sec_cta .colIn p.ctaLink a small{
	display: block;
}





/* .sec_cta.verb --------------------------------------------------------------- */
section.sec_cta.verb{
	z-index: 9;
	background: none;
	-webkit-background-size: 15px 15px;
	-moz-background-size: 15px 15px;
	background-size: 15px 15px;
	background-color: #4caf50;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%, color-stop(.25, #3c9e3f), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, #3c9e3f), color-stop(.75, #3c9e3f), color-stop(.75, transparent), to(transparent));
	background-image: -webkit-linear-gradient(-45deg, #3c9e3f 25%, transparent 25%, transparent 50%, #3c9e3f 50%, #3c9e3f 75%, transparent 75%, transparent);
	background-image: -moz-linear-gradient(-45deg, #3c9e3f 25%, transparent 25%, transparent 50%, #3c9e3f 50%, #3c9e3f 75%, transparent 75%, transparent);
	background-image: -ms-linear-gradient(-45deg, #3c9e3f 25%, transparent 25%, transparent 50%, #3c9e3f 50%, #3c9e3f 75%, transparent 75%, transparent);
	background-image: -o-linear-gradient(-45deg, #3c9e3f 25%, transparent 25%, transparent 50%, #3c9e3f 50%, #3c9e3f 75%, transparent 75%, transparent);
	background-image: linear-gradient(-45deg, #3c9e3f 25%, transparent 25%, transparent 50%, #3c9e3f 50%, #3c9e3f 75%, transparent 75%, transparent);
}

section.sec_cta.verb .colIn {
	background-color: transparent;
	border-radius: 0;
	padding: 0;
}

section.sec_cta.verb .col {
	display: flex;
	justify-content: flex-end;
	padding: 30px 20px;
}

section.sec_cta.verb .colIn:first-of-type {
	width: 300px;
	position: absolute;
	bottom: 0;
	left: 0;
	overflow: hidden;
	z-index: 2;
}

section.sec_cta.verb .colIn:last-of-type {
	width: calc(100% - 210px);
}

section.sec_cta.verb .colIn:last-of-type .ctaTitle {
	position: relative;
	padding: 0 210px 0 70px;
}

section.sec_cta.verb .colIn:last-of-type .ctaTitle img {
	position: absolute;
	bottom: -50px;
	right: -30px;
	top: -80px;
	margin: auto;
}





section.sec_cta.verb .colIn:last-of-type ul {
	background-color: #FFF;
	border-radius: 8px;
	display: flex;
	flex-direction: column;
	margin-bottom: 0;
	padding-bottom: 0;
	position: relative;
}

section.sec_cta.verb .colIn:last-of-type ul::before {
	content: "+";
	position: absolute;
	top: -1.5rem;
	left: 0;
	right: 0;
	margin: auto;
	width: 3rem;
	height: 3rem;
	background: #cb5245;
	border-radius: 3rem;
	display: flex;
	align-items: center;
	justify-content: center;
	font-size: 2rem;
	font-weight: bold;
	color: #FFF;
	z-index: 1;
}

section.sec_cta.verb .colIn:last-of-type ul li {
	width: 100%;
	margin: 0 0 0 0;
	position: relative;
}

section.sec_cta.verb .colIn:last-of-type ul li:first-of-type {
	background-color: #f9e3e1;
	padding: 25px 110px 15px 300px;
	border-radius: 7px 7px 0 0;
}

section.sec_cta.verb .colIn:last-of-type ul li:first-of-type img {
	width: auto;
	position: absolute;
	bottom: -35px;
	margin: 0;
	left: 80px;
}

section.sec_cta.verb .colIn:last-of-type ul li:first-of-type h3 {
	font-size: 1.5rem;
	line-height: 1.25;
	margin-top: 0.3vw;
	color: #C00;
}

section.sec_cta.verb .colIn:last-of-type ul li:first-of-type span {
	position: relative;
}

section.sec_cta.verb .colIn:last-of-type ul li:last-of-type {
	padding: 20px;
}

section.sec_cta.verb .colIn:last-of-type ul li:last-of-type p {
	background: #FFF;
}

section.sec_cta.verb .colIn:last-of-type ul li:last-of-type p a {
	position: relative;
	z-index: 9;
	border-radius: 6px;
	padding: 5px 10px;
	color: #FFF;
	text-decoration: none;
	font-size: 1.5rem;
	display: flex;
	justify-content: center;
	align-items: center;
	transition: all 0.2s linear;
	background: #cb5245;
	background: -moz-linear-gradient(top, #cb5245 0%, #92221c 100%);
	background: -webkit-linear-gradient(top, #cb5245 0%,#92221c 100%);
	background: linear-gradient(to bottom, #cb5245 0%,#92221c 100%);
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#cb5245', endColorstr='#92221c',GradientType=0 );
}

section.sec_cta.verb .colIn:last-of-type ul li:last-of-type p a small {
	display: flex;
	height: 3rem;
	width: 3rem;
	background: #FFF;
	color: #cb5245;
	justify-content: center;
	align-items: center;
	margin-right: 15px;
	font-weight: bold;
	border-radius: 3rem;
}



section.sec_cta.verb::after {
	display: none;
}




section.sec_cta.verb .colIn:last-of-type ul li:last-of-type p a:hover {
	opacity: 0.7;
}






/* .sec_line ---------------------------------------------------------------- */
section.sec_line {
    /*border:1px solid #396;*/
    padding: 0;
}

section.sec_line .col {
    /*border:1px solid #36f;*/
    padding: 0;
    }






/* .sec_topInfo ---------------------------------------------------------------- */
section .sec_topInfo{
	margin: 0px auto 10px;
	background: #fbe7e7;
	padding-bottom: 20px!important;
	padding-top: 20px;
	width: 100%;
	max-width: inherit;
	min-width: auto;
}

section .sec_topInfo h2{
	font-size: 1.25rem!important;
	border-bottom: 1px dotted #d81c24;
	margin-bottom: 0.5rem!important;
	padding-bottom: 0.25rem!important;
}













/* #sec_01 --------------------------------------------------------------------- */
#sec_01{
	position: relative;
	margin-top: calc(100vh - 146px);
}

#sec_01 .col{
	padding-top: 20px;
	padding-bottom: 10px;
	position: relative;
}

#sec_01 h3{
	color: #616d62;
	font-size: 2rem;
}

#sec_01 h2{
	font-size: 2.75rem;
	margin-bottom: 0vw;
}




/* #sec_02 --------------------------------------------------------------------- */
#sec_02{
	background: #cfe3ff;
	position: relative;
}

#sec_02::before ,
#sec_02::after {
	content: "";
	position: absolute;
	right: 0;
	top: 0px;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	z-index: 1;
}

#sec_02::before{
	border-color: #4a8ae2 transparent transparent transparent;
	border-width: 60px 45vw 0 45vw;
}

#sec_02::after {
	border-color: #FFF transparent transparent transparent;
	border-width: 50px 45vw 0 45vw;
}




#sec_02 .col{
	padding-top: 100px;
}

#sec_02 h1{
	margin-bottom: 1.75vw;
}

#sec_02 h3{
	background: #FFF;
	color: #4a8ae2;
	font-size: 1.5rem;
	width: 80px;
	height: 80px;
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0 auto 20px;
	border-radius: 40px;
	line-height: 1.2;
	padding: 0;
}

#sec_02 h3::after{
	bottom: -7px;
}


#sec_02 h2{
	color: #044194;
}




/* #sec_03 --------------------------------------------------------------------- */
#sec_03 h1{
	padding-bottom: 0.75vw;
}


#sec_03 h1::after{
	content: "";
	width: 15%;
	background: #000;
	height: 3px;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
}

#sec_03 .col .point{
	display: flex;
	margin-bottom: 1vw;
	width: 960px;
	margin: 0 auto 1vw;
}

#sec_03 .col .point:last-of-type{
	margin: 0 auto 0;
}

#sec_03 .col .point .num{
	width: 15%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #FFF;
}

#sec_03 .col .point .num p{
	font-size: 3rem;
	display: flex;
	flex-direction: column;
	line-height: 1;
}

#sec_03 .col .point .num p span{
	font-size: 1rem;
}

#sec_03 .col .point .txt{
	width: 85%;
	padding: 20px;
}

#sec_03 .col .point .txt h2{
	margin-bottom: 0.25vw;
}



#sec_03 .col .point:nth-of-type(1){ background: rgba(0, 168, 155, 0.1); }
#sec_03 .col .point:nth-of-type(2){ background: rgba(143, 195, 32, 0.1); }
#sec_03 .col .point:nth-of-type(3){ background: rgba(0, 130, 190, 0.1); }
#sec_03 .col .point:nth-of-type(4){ background: rgba(212, 80, 130, 0.1); }

#sec_03 .col .point:nth-of-type(1) .num{ background: #00a89b; }
#sec_03 .col .point:nth-of-type(2) .num{ background: #8fc320; }
#sec_03 .col .point:nth-of-type(3) .num{ background: #0082be; }
#sec_03 .col .point:nth-of-type(4) .num{ background: #d45082; }

#sec_03 .col .point:nth-of-type(1) .txt h2{ color: #00a89b; }
#sec_03 .col .point:nth-of-type(2) .txt h2{ color: #8fc320; }
#sec_03 .col .point:nth-of-type(3) .txt h2{ color: #0082be; }
#sec_03 .col .point:nth-of-type(4) .txt h2{ color: #d45082; }



#sec_03 h3{
	color: #616d62;
	font-size: 2rem;
}

h2 em{
	font-style: normal;
	font-size: 1.25em;
	position: relative;
}

h2 em::after{
	content: "";
	width: 10px;
	height: 10px;
	border-radius: 5px;
	background: #ec6900;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
}


#sec_03 .colIn:last-of-type {
	position: relative;
}

#sec_03 .colIn:last-of-type::after {
	content: "";
	height: 10vw;
	width: 50vw;
	-webkit-filter: blur(6px);
	-ms-filter: blur(6px);
	filter: blur(60px);
	background: #ec6900;
	display: block;
	position: absolute;
	margin: 0px auto 0;
	left: 0;
	right: 0;
	opacity: 0.2;
	border-radius: 50%;
	bottom: 50px;
	z-index: -1;
}



/* #sec_04 --------------------------------------------------------------------- */
#sec_04{
	background-color: #9acff9;
	position: relative;
}

#sec_04::after {
	content: "";
	position: absolute;
	right: 0;
	top: 0;
	left: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #FFF transparent transparent transparent;
	border-width: 20px 40px 0 40px;
}

#sec_04 h3 span {
	font-size: 1.5rem;
	background: #d92027;
	margin-right: 0.5vw;
	letter-spacing: 0.75rem;
	padding-left: 0.75rem;
	color: #FFF;
	border-radius: 3px;
}

#sec_04 .colIn {
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
}

#sec_04 h4 {
	width: calc(100% / 4.15);
	background: #FFF;
	display: flex;
	align-items: center;
	justify-content: center;
	position: relative;
	overflow: hidden;
	padding: 40px 10px;
}

#sec_04 .colIn h4::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1rem;
	color: #FFF;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 60px 60px 0 0;
	border-color: #00a89b transparent transparent transparent;
}

#sec_04 .colIn h4::after {
	content: "1";
	position: absolute;
	top: 2px;
	left: 1px;
	font-size: 1.25rem;
	color: #FFF;
	height: 2rem;
	width: 2rem;
}

#sec_04 .colIn h4:nth-of-type(1)::after { content: "1"; }
#sec_04 .colIn h4:nth-of-type(2)::after { content: "2"; }
#sec_04 .colIn h4:nth-of-type(3)::after { content: "3"; }
#sec_04 .colIn h4:nth-of-type(4)::after { content: "4"; }

#sec_04 .colIn h4:nth-of-type(1)::before { border-color: #00a89b transparent transparent transparent; }
#sec_04 .colIn h4:nth-of-type(2)::before { border-color: #8fc320 transparent transparent transparent; }
#sec_04 .colIn h4:nth-of-type(3)::before { border-color: #0082be transparent transparent transparent; }
#sec_04 .colIn h4:nth-of-type(4)::before { border-color: #d45082 transparent transparent transparent; }



#sec_04 .colIn h4:nth-of-type(1) span{ background: #00a89b; }
#sec_04 .colIn h4:nth-of-type(2) span{ background: #8fc320; }
#sec_04 .colIn h4:nth-of-type(3) span{ background: #0082be; }
#sec_04 .colIn h4:nth-of-type(4) span{ background: #d45082; }




#sec_04 h4 p {
	font-size: 1em;
}




/* #sec_05 --------------------------------------------------------------------- */
#sec_05 .col {
	padding: 0;
	max-width: 100%;
	min-width: 100%;
	border-bottom: 1px solid #e7e3e4;
}

#sec_05 .col:last-of-type {
	border-bottom: none;
}

#sec_05 .colIn{
	max-width: 1120px;
	min-width: 960px;
	margin: auto;
	padding: 40px 20px 60px;
	text-align: center;
	border-left: 1px solid #e7e3e4;
	border-right: 1px solid #e7e3e4;
	position: relative;
}

#sec_05 .colIn .num{
	position: absolute;
	top: 0;
	left: 0;
}

#sec_05 .colIn .num p{
	font-size: 3rem;
	line-height: 1;
	position: relative;
	z-index: 99;
	padding: 10px 0px 0px 13px;
	color: #FFF;
}

#sec_05 .colIn .num p::after{
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	font-size: 1rem;
	color: #FFF;
	display: flex;
	align-items: center;
	justify-content: center;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 170px 170px 0 0;
	border-color: #00a89b transparent transparent transparent;
	z-index: -99;
}

#sec_05 .col:nth-of-type(1) .colIn .num p::after{ border-color: #00a89b transparent transparent transparent; }
#sec_05 .col:nth-of-type(2) .colIn .num p::after{ border-color: #8fc320 transparent transparent transparent; }
#sec_05 .col:nth-of-type(3) .colIn .num p::after{ border-color: #0082be transparent transparent transparent; }
#sec_05 .col:nth-of-type(4) .colIn .num p::after{ border-color: #d45082 transparent transparent transparent; }


#sec_05 .colIn .num p span{
	display: block;
	font-size: 1rem;
}


#sec_05 .colIn .imgWrapp{
	position: relative;
	margin: 3vw 0 1vw 0;
}

#sec_05 .colIn .imgWrapp span{
	position: absolute;
	bottom: 186px;
	left: 120px;
	width: 106px;
	height: 106px;
}

#sec_05 .colIn .imgWrapp.sec_05-04 span{
	bottom: 170px;
}

#sec_05 .colIn .imgWrapp span .imgInner{
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}




/* #sec_06 --------------------------------------------------------------------- */
#sec_06 .col h2 {
	color: #177fc8;
}

#sec_06 .col .colIn ul {
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}

#sec_06 .col .colIn ul li {
	border: 1px solid #000;
	box-shadow: 0px 5px 16px -5px #999;
	margin: 0 1.5vw 3vw;
}




/* #sec_07 --------------------------------------------------------------------- */
#sec_07 {
	background: #BBDEFB;
}


#sec_07 .colIn {
	padding: 40px;
	background: #FFF;
	border-radius: 10px;
}


#sec_07 .colIn dl {
}



#sec_07 .colIn dl dt{
	display: flex;
	align-items: center;
	box-shadow: 0 0 0 2px #177fc8 inset;
	border-radius: 4px;
	cursor: pointer;
	color: #177fc8;
	position: relative;
	overflow: hidden;
	margin-bottom: 1.25vw;
}

#sec_07 .colIn dl dt::before{
	content: "\f063";
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 1.5rem;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 10px;
	height: 1.5rem;
	z-index: 1;
	-webkit-transition: -webkit-all 0.2s linear;
	   -moz-transition:    -moz-all 0.2s linear;
	    -ms-transition:     -ms-all 0.2s linear;
	     -o-transition:      -o-all 0.2s linear;
	        transition:         all 0.2s linear;
}

#sec_07 .colIn dl dt.active::before,
#sec_07 .colIn dl dt:hover::before{
	color: #FFF;
}

#sec_07 .colIn dl dt.active::before{
	transform: rotate(180deg);
}

#sec_07 .colIn dl dt::after{
	content: "";
	width: 0%;
	position: absolute;
	top:0;
	bottom: 0;
	left: 0;
	right: auto;
	background: rgba(23, 127, 200, 0.7);
	-webkit-transition: -webkit-all 0.2s linear;
	   -moz-transition:    -moz-all 0.2s linear;
	    -ms-transition:     -ms-all 0.2s linear;
	     -o-transition:      -o-all 0.2s linear;
	        transition:         all 0.2s linear;
	transform: skew(-15deg);
}

#sec_07 .colIn dl dt.active::after,
#sec_07 .colIn dl dt:hover::after{
	width: 111%;
	right: 0;
}

#sec_07 .colIn dl dt h4 {
	position: relative;
	z-index: 99;
	margin-bottom: 0;
	-webkit-transition: -webkit-all 0.2s linear;
	   -moz-transition:    -moz-all 0.2s linear;
	    -ms-transition:     -ms-all 0.2s linear;
	     -o-transition:      -o-all 0.2s linear;
	        transition:         all 0.2s linear;
}

#sec_07 .colIn dl dt.active h4,
#sec_07 .colIn dl dt:hover h4 {
	color: #FFF;
}

#sec_07 .colIn dl dt span {
	font-size: 1.5rem;
	font-weight: bold;
	width: 2em;
	background: #177fc8;
	color: #fff;
	margin-right: 10px;
	height: 2em;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
	z-index: 99;
}

#sec_07 .colIn dl dd {
	margin-bottom: 2.5vw;
	padding-left: 3em;
	position: relative;
	margin-top: 1.25vw;
	display:none;
}

#sec_07 .colIn dl:last-of-type dd {
	margin-bottom: 0;
}

#sec_07 .colIn dl dd h4 {
	margin-left: 10px;
	text-align: left;
	color: #ec407a;
	margin-bottom: 0.5vw;
}

#sec_07 .colIn dl dd span {
	font-size: 1.5rem;
	font-weight: bold;
	width: 2em;
	background: #ec407a;
	color: #fff;
	margin-right: 10px;
	height: 2em;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
	position: absolute;
	left: 0;
}

#sec_07 .colIn dl dd p {
	text-align: left;
	margin-left: 10px;
}




/* #sec_08 --------------------------------------------------------------------- */
#sec_08 p{
	margin-bottom: 0.5vw;
}

#sec_08 .coldb ,
#sec_09 .coldb {
	align-items: center;
}

table{
	width: 100%;
}

table tr{
	margin-bottom: 0.5vw;
	display: table;
	width: 100%;
}

table th{
	width: 30%;
	vertical-align: middle;
	background-color: #177fc8;
	color: #FFF;
	padding: 8px;
	position: relative;
}

table th::after{
	content: "";
	position: absolute;
	top: 0;
	right: -12px;
	bottom: 0;
	width: 0px;
	height: 0px;
	margin: auto;
	border-style: solid;
	border-color: #177fc8 transparent transparent transparent;
	border-width: 12px 10px 0 10px;
	transform: rotate(-90deg);
}

table td{
	width: 70%;
	vertical-align: middle;
	padding: 8px;
	background-color: #e5eaec;
}




/* #sec_09 --------------------------------------------------------------------- */
#sec_09 {
	border-top: 2px solid #ececec;
}

#sec_09 .coldb > div:first-of-type {
	width: 300px;
}

#sec_09 .coldb > div:last-of-type {
	width: 792px;
}


#sec_09 .coldb .colFirst h5 {
	background-color: #544741;
	color: #FFF;
	padding: 10px 0;
	margin-bottom: 0.25vw;
}

#sec_09 .coldb .colFirst ul {
	position: relative;
}

#sec_09 .coldb .colFirst ul::before {
	content: "";
	height: 3.5rem;
	width: 3.5rem;
	background-color: #544741;
	position: absolute;
	border-radius: 50px;
	top: 0;
	bottom: 0;
	margin: auto;
	right: -62px;
	box-shadow: 0px 10px 7px -7px #b7b0ad;
}

#sec_09 .coldb .colFirst ul::after {
	content: "\f063";
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 1.5rem;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: -46px;
	height: 1.5rem;
	z-index: 1;
	color: #FFF;
	transform: rotate(-90deg);
}


#sec_09 .coldb .colFirst ul li {
	border-bottom: 1px solid #544741;
	padding: 5px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

#sec_09 .coldb .colFirst ul li i {
	position: relative;
	display: inline-block;
	width: 20px;
	height: 20px;
	margin-right: 10px;
}

#sec_09 .coldb .colFirst ul li i::before ,
#sec_09 .coldb .colFirst ul li i::after {
	content: "";
	width: 20px;
	height: 3px;
	display: block;
	background: #d81c24;
	border-radius: 3px;
	position: absolute;
	transform: rotate(45deg);
	top: 0;
	bottom: 0;
	margin: auto;
}

#sec_09 .coldb .colFirst ul li i::before{
	transform: rotate(-45deg);
}




#sec_09 .coldb .colSecond h5{
	background-color: #ec6900;
	color: #FFF;
	padding: 10px 0;
	margin-bottom: 0.25vw;
}

#sec_09 .coldb .colSecond dl{
	border-top: 1px solid #544741;
	border-bottom: 1px solid #544741;
	padding: 10px 10px 10px 7.5rem;
	position: relative;
	display: flex;
	flex-direction: row;
	flex-wrap: wrap;
}

#sec_09 .coldb .colSecond dl dt{
	border-right: 1px dotted #544741;
	position: absolute;
	left: 0;
	top: 10px;
	bottom: 10px;
	margin: auto;
	display: flex;
	align-items: center;
	padding-right: 10px;
	font-weight: bold;
}

#sec_09 .coldb .colSecond dl dd::after{
	content: "/";
	margin-right: 8px;
	margin-left: 8px;
}

#sec_09 .coldb .colSecond dl dd:last-of-type{
	margin-left: 10px;
}

#sec_09 .coldb .colSecond dl dd:last-of-type::after,
#sec_09 .coldb .colSecond dl dd:nth-last-of-type(2)::after{
	display: none;
}




/* #sec_10 --------------------------------------------------------------------- */
#sec_10{
	background-color: #f9f6f3;
}

#sec_10 .colIn.coltri{
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#sec_10 .colIn.coltri > div{
	width: calc(100% / 3 - 20px);
	border: 1px solid #e7e3e4;
	box-shadow: 0px 2px 10px -6px #2e2e2e;
	position: relative;
	display: flex;
	flex-wrap: wrap;
	padding: 15px 10px 20px 10px;
	margin-bottom: 2vw;
	background: #FFF;
}

#sec_10 .colIn.coltri > div h4{
	font-size: 2rem;
	margin: 0;
	position: absolute;
	background: #ec6900;
	top: -3px;
	left: 6px;
	padding: 6px;
	line-height: 1;
	width: 16%;
	color: #FFF;
	border-radius: 0px 0px 4px 4px;
	box-shadow: 0px 2px 0px 0px rgba(46, 46, 46, 0.2);
}

#sec_10 .colIn.coltri > div h4 span{
	font-size: 0.5rem;
	display: block;
}

#sec_10 .colIn.coltri > div h3{
	width: 82%;
	margin-left: 18%;
}

#sec_10 .colIn.coltri > div p{
	width: 100%;
}




/* #sec_11 --------------------------------------------------------------------- */
#sec_11{
	text-align: center;
	padding-top: 4.5vw;
	padding-bottom: 4.5vw;

	/* Permalink - use to edit and share this gradient: http://colorzilla.com/gradient-editor/#044194+0,021e4f+100 */
	background: #044194; /* Old browsers */
	background: -moz-linear-gradient(-45deg, #044194 0%, #021e4f 100%); /* FF3.6-15 */
	background: -webkit-linear-gradient(-45deg, #044194 0%,#021e4f 100%); /* Chrome10-25,Safari5.1-6 */
	background: linear-gradient(135deg, #044194 0%,#021e4f 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
	filter: progid:DXImageTransform.Microsoft.gradient( startColorstr='#044194', endColorstr='#021e4f',GradientType=1 ); /* IE6-9 fallback on horizontal gradient */
}

#sec_11 .col{
	margin-top: 2vw;
	background: #FFF;
	padding: 0px 0px 60px;
	border-radius: 20px;
	overflow: hidden;
	color: #000;
	width: 1160px;
}

#sec_11 .col h4{
	color: #044194;
	background: rgba(4, 65, 148, 0.2);
	padding: 30px 20px;
	position: relative;
	margin-top: 4vw;
}

#sec_11 .col h4:first-of-type{
	margin-top: 0;
}

#sec_11 .col h4::after{
	content: "";
	height: 4px;
	width: 33%;
	background: rgba(4, 65, 148, 1);
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
	position: absolute;
}


#sec_11 .swiper-container{
	margin-bottom: 0;
}

#sec_11 .swiper-container .swiper-slide {
	background: #FFF;
}


#sec_11 .colIn ul{
	display: flex;
	width: 960px;
	flex-wrap: wrap;
	justify-content: space-between;
	margin: auto;
}

#sec_11 .colIn ul li{
	width: calc(100% / 3 - 10px);
	border: 1px solid #e7e3e4;
	margin: 0 0 1vw;
	padding: 15px;
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
}

#sec_11 .colIn ul li i{
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: 1.5rem;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	margin-right: 0.5vw;
	border: 2px solid #98897d;
	width: 1.5rem;
	height: 1.5rem;
	border-radius: 2rem;
	position: relative;
	box-shadow: 1px 2px 0px 0px #e7e3e4;
}

#sec_11 .colIn ul li i::after{
	content: "\f128";
	color: #d81c24;
	transform: rotate(10deg);
	display: inherit;
	position: absolute;
	left: 0;
	right: 0;
	top: -9px;
	bottom: 0;
	margin: auto;
	font-size: 2rem;
	text-shadow: 1px 1px 0px #FFF, 1px 1px 0px #FFF;
}



#sec_11 .colIn .coldb{
	width: 960px;
	margin: auto;
}

#sec_11 .colIn .coldb .colFirst{
	width: 320px;
}

#sec_11 .colIn .coldb .colSecond{
	width: 620px;
	text-align: left;
}





#sec_11 .slideItem{
	border: 6px solid #e7e3e4;
	border-radius: 8px;
	position: relative;
	overflow: hidden;
}

#sec_11 .slideItem.seminarAccept{
	border: 6px solid #de4148;
}

#sec_11 .slideItem::before{
	content: "終 了";
	color: #2e2e2e;
	position: absolute;
	left: -100px;
	top: -38px;
	background: #e7e3e4;
	transform: rotate(-45deg);
	padding: 50px 0px 20px;
	text-align: center;
	width: 220px;
}

#sec_11 .slideItem.seminarAccept::before{
	content: "受付中";
	background: #de4148;
	color: #FFF;
}





#sec_11 .slideItem .itemTitle{
	display: flex;
	align-items: center;
	justify-content: space-around;
}

#sec_11 .slideItem .itemTitle figure{
	width: 20%;
}

#sec_11 .slideItem .itemTitle figure img{
	width: 100%;
	border-radius: 100px;
	overflow: hidden;
	border: 1px solid #e7e3e4;
	box-shadow: 0px 5px 10px -6px #2e2e2e;
	position: relative;
}


#sec_11 .slideItem .itemTitle{
	padding: 10px;
}

#sec_11 .slideItem .itemTitle .itemTitleTxt{
	width: 75%;
	font-size: 0.75rem;
}

#sec_11 .slideItem .itemTitle .itemTitleTxt h3{
	font-size: 1rem;
}

#sec_11 .slideItem .itemTitle .itemTitleTxt h2{
	font-size: 1.5rem;
	margin: 0;
}

#sec_11 .slideItem .itemDetail{
	background: #f1f1f1;
	padding: 10px;
}

#sec_11 .slideItem .itemDetail dl{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}

#sec_11 .slideItem .itemDetail dl dt{
	width: 5rem;
	background: #544741;
	border-radius: 4px;
	color: #FFF;
	padding: 6px 0;
	box-shadow: 0px 2px 0px 0px #c1c1c1;
	margin-bottom: 0.5vw;
	font-size: 0.8rem;
}

#sec_11 .slideItem .itemDetail dl dd{
	width: calc(100% - 5.5rem);
	display: flex;
	align-items: center;
	padding-left: 10px;
	margin-bottom: 0.5vw;
}

#sec_11 .slideItem .itemDetail dl dd span{
	font-size: 0.75em;
	margin-right: 10px;
}


#sec_11 .slideItem .itemBtn p.ctaLink{
	padding: 20px 0;
}

#sec_11 .slideItem .itemBtn p.ctaLink a{
	font-size: 1rem;
	box-shadow: 0 0 0 2px #de4148;
}

#sec_11 .slideItem .itemBtn p.ctaLink a:after {
	background-color: #de4148;
}

#sec_11 .slideItem .itemBtn p.ctaLink a:hover {
	color: #de4148;
}


#sec_11 .slideItem .itemBtn p.ctaLink span {
	display: inline-block;
	font-size: 1rem;
	border-radius: 60px;
	text-align: center;
	position: relative;
	text-decoration: none;
	padding: 5px 60px;
	z-index: 1;
	color: #2e2e2e;
	box-shadow: 0 0 0 2px #f1f1f1;
	background: #f1f1f1;
}




/* #sec_12 --------------------------------------------------------------------- */
#sec_12{
	text-align: center;
	padding-top: 4.5vw;
	padding-bottom: 4.5vw;
	background-color: #f9f6f3;
}

#sec_12 .col{
	margin-top: 2vw;
	background: #FFF;
	padding: 30px 0px 30px;
	border-radius: 20px;
	overflow: hidden;
	color: #000;
	width: 1160px;
}

#sec_12 .col .colIn:last-of-type {
	padding: 20px 0px 20px;
}

#sec_12 .swiper-container {
	overflow: inherit;
}

#sec_12 .swiper-slide{
	box-shadow: 0px 3px 6px -3px rgba(0, 0, 0, 0.6);
}

#sec_12 .col .slideItem{
	border: 1px solid #cecece;
	padding: 20px 10px;
	overflow: hidden;
}

#sec_12 .swiper-button-next {
	background-image: url(../img/arrow-right.png);
}

#sec_12 .swiper-button-prev {
	background-image: url(../img/arrow-left.png);
}

#sec_12 .col .slideItem .itemTitleTxt h2{
	color: #ec6900;
	font-size: 1.25rem;
	margin-bottom: 1.15vw;
}


#sec_12 .col .slideItem .itemDetail figure{
	width: calc(100% + 20px);
	margin-left: -10px;
}

#sec_12 .col .slideItem .itemDetail figure img{
	width: 100%;
}

#sec_12 .col .slideItem .itemDetail dl{
	margin-top: 1vw;
	display: flex;
	flex-wrap: wrap;
}

#sec_12 .col .slideItem .itemDetail dl dt{
	background: #ec6900;
	width: 4rem;
	color: #FFF;
	font-size: 0.8rem;
	font-weight: bold;
	display: flex;
	align-items: center;
	justify-content: center;
	margin-bottom: 1px;
}

#sec_12 .col .slideItem .itemDetail dl dd{
	width: calc(100% - 4rem);
	background: #e4e4e4;
	font-size: 0.8rem;
	display: flex;
	align-items: center;
	justify-content: flex-start;
	padding: 6px 8px;
	margin-bottom: 1px;
	text-align: left;
}




/* #sec_13 --------------------------------------------------------------------- */
#sec_13 .colIn .tableWrap{
	display: flex;
	border-left: 1px solid #bdbdbd;

	border-top: 1px solid #bdbdbd;
	border-bottom: 1px solid #bdbdbd;
	border-radius: 4px 4px 0 0;
}

#sec_13 .colIn .tableWrap .tbHead{
	width: calc( 100% / 3 - 5rem);
	border-right: 1px solid #bdbdbd;
}

#sec_13 .colIn .tableWrap .tbLow{
	width: calc( 100% / 3 + 5rem);
	border-right: 1px solid #bdbdbd;
	position: relative;
}

#sec_13 .colIn .tableWrap .tbLow .itemTitle{
}


#sec_13 .colIn .tableWrap ul{
	padding: 15px;
}

#sec_13 .colIn .tableWrap ul li{
	border-bottom: 1px solid #bdbdbd;
	padding: 10px 0;
	display: flex;
	align-items: center;
	justify-content: center;
}

#sec_13 .colIn .tableWrap ul li span{
	display: none;
}

#sec_13 .colIn .tableWrap ul li:last-of-type{
	border-bottom: 0;
	padding-bottom: 0;
}

#sec_13 .colIn .tableWrap ul li:nth-of-type(2){
	height: calc( 3rem + 20px );
}

#sec_13 .colIn .tableWrap h3{
	padding: 15px 15px 5px;
	background-color: #a5e0a7;
	color: #FFF;
}


#sec_13 .colIn .tableWrap .tbLow:last-of-type h3{
	background: #4caf50;
	padding-top: 30px;
	margin-top: -16px;
	border: 1px solid #bdbdbd;
	width: calc( 100% + 2px);
	margin-left: -1px;
	border-bottom: 0;
	border-radius: 4px 4px 0 0;
}

#sec_13 .colIn .tableWrap .tbLow.itemInvest ul li{
	color: #d81c24;
	font-weight: bold;
}

#sec_13 .colIn .tableWrap .tbLow.itemInvest ul li.bgAttention{
	background-color: #fdeef0;
}




/* footer ---------------------------------------------------------------------- */
footer{
	background: #ececec;
	border-top: 4px solid #c3c3c3;
	position: relative;
	z-index: 218;
}

footer > div.fotterlogo{
	text-align: center;
	padding: 2vw 0;
}

footer > div.fotterlogo a{
	display: inline-block;
	-webkit-transition: -webkit-all 0.2s linear;
	   -moz-transition:    -moz-all 0.2s linear;
	    -ms-transition:     -ms-all 0.2s linear;
	     -o-transition:      -o-all 0.2s linear;
	        transition:         all 0.2s linear;
}

footer > div.fotterlogo a:hover{
	opacity: 0.7;
}

footer > div.copy{
	font-size: 0.5rem;
	text-align: center;
	padding: 0.5vw 0;
	background: #dededd;
}





/* pageTopLink ----------------------------------------------------------------- */
p.pageTopLink{
	position: fixed;
	/*
	bottom: 10px;
	*/
	bottom: 140px;
	right: -130px;
	margin: auto;
	z-index: 1986;
}

p.pageTopLink a{
	color: #FFF;
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
	width: 4rem;
	height: 4rem;
	background: rgba(0, 0, 0, 0.7);
	border-radius: 10px;
	border: 1px solid #2e2e2e;
	margin: auto;
	text-decoration: none;
	font-size: 0.75rem;
	line-height: 0.8rem;
	text-align: center;
	-webkit-transition: -webkit-all 0.2s linear;
	   -moz-transition:    -moz-all 0.2s linear;
	    -ms-transition:     -ms-all 0.2s linear;
	     -o-transition:      -o-all 0.2s linear;
	        transition:         all 0.2s linear;
}

p.pageTopLink a:hover{
	color: #2e2e2e;
	background: rgba(0, 0, 0, 0);
	border: 1px solid rgba(0, 0, 0, 0.8);
}

p.pageTopLink a i{
	display: inline-block;
	font: normal normal normal 14px/1 FontAwesome;
	font-size: inherit;
	text-rendering: auto;
	-webkit-font-smoothing: antialiased;
	-moz-osx-font-smoothing: grayscale;
	font-size: 1.5rem;
	line-height: 0.75rem;
	margin-bottom: 0.3rem;
}

p.pageTopLink a i::after{
	content: "\f106";
}




/* .fixMenu -------------------------------------------------------------------- */
.fixMenu {
	position: fixed;
	right: -130px;
	top: 5vw;
	z-index: 0218;
	width: 121px;
}

.fixMenu a p{
	-webkit-transition: -webkit-all 0.2s linear;
	   -moz-transition:    -moz-all 0.2s linear;
	    -ms-transition:     -ms-all 0.2s linear;
	     -o-transition:      -o-all 0.2s linear;
	        transition:         all 0.2s linear;
}

.fixMenu a:hover p{
	opacity: 0.7;
}

.fixMenu .request{
	margin-bottom: 10px;
}




/* .seminarPageLink -------------------------------------------------------------------- */
div.seminarPageLink{
	position: fixed;
	bottom: 10px;
	right: -345px;
	margin: auto;
	z-index: 1986;
}

div.seminarPageLink.close{
	display: none;
}

div.seminarPageLink ul{
	display: flex;
	align-items: center;
	justify-content: center;
}

div.seminarPageLink ul li:last-of-type{
	margin-left: 1rem;
}


div.seminarPageLink a {
	text-decoration: none;
	transition: all 0.2s linear;
}

div.seminarPageLink a img:hover {
	opacity: 0.7;
}

div.seminarPageLink i.close {
	background: rgba(255,255,255,0.8);
	padding: 2px;
	cursor: pointer;
	position: absolute;
	top: 0;
	left: 0;
}


div.seminarPageLink i.close:hover{
	color: #fff;
    background: rgba(90,90,90,0.8);
}






/* defaultStyle ---------------------------------------------------------------- */
header{ top: -100px; }
#sec_topImg{
	opacity: 0;
}
#sec_01{
	margin-top:100vh;
	box-shadow: 0px 8px 30px 10px #2e2e2e;
}


.sec_topimg_03{
	opacity:0;
	bottom:-20px;
}
#sec_topImg .col .topTitle{
	right:2000px;
	top:35vh;
}
.sec_topImg_02{
	opacity:0;
	bottom:160px;
}

.pub_300x250{
	position: absolute;
	height: 0;
	width: 0;
	overflow: hidden;
}






/* #secCTA --------------------------------------------------------------------- */
header.guide-comp {
	z-index: 10;
	top: 0;
	position: initial;
}

header.guide-comp .col {
	justify-content: center;
}



#secCTA{
	z-index: 9;
	text-align: center;
	padding: 70px 0 100px;
	background: none;
	-webkit-background-size: 15px 15px;
	-moz-background-size: 15px 15px;
	background-size: 15px 15px;
	background-color: #4caf50;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%, color-stop(.25, #3c9e3f), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, #3c9e3f), color-stop(.75, #3c9e3f), color-stop(.75, transparent), to(transparent));
	background-image: -webkit-linear-gradient(-45deg, #3c9e3f 25%, transparent 25%, transparent 50%, #3c9e3f 50%, #3c9e3f 75%, transparent 75%, transparent);
	background-image: -moz-linear-gradient(-45deg, #3c9e3f 25%, transparent 25%, transparent 50%, #3c9e3f 50%, #3c9e3f 75%, transparent 75%, transparent);
	background-image: -ms-linear-gradient(-45deg, #3c9e3f 25%, transparent 25%, transparent 50%, #3c9e3f 50%, #3c9e3f 75%, transparent 75%, transparent);
	background-image: -o-linear-gradient(-45deg, #3c9e3f 25%, transparent 25%, transparent 50%, #3c9e3f 50%, #3c9e3f 75%, transparent 75%, transparent);
	background-image: linear-gradient(-45deg, #3c9e3f 25%, transparent 25%, transparent 50%, #3c9e3f 50%, #3c9e3f 75%, transparent 75%, transparent);
	/* 
	-webkit-background-size: 15px 15px;
	-moz-background-size: 15px 15px;
	background-size: 20px 20px;
	background-color: #ffc041;
	background-image: -webkit-gradient(linear, 0 0, 100% 100%, color-stop(.25, #ffaa00), color-stop(.25, transparent), color-stop(.5, transparent), color-stop(.5, #ffaa00), color-stop(.75, #ffaa00), color-stop(.75, transparent), to(transparent));
	background-image: -webkit-linear-gradient(-45deg, #ffaa00 25%, transparent 25%, transparent 50%, #ffaa00 50%, #ffaa00 75%, transparent 75%, transparent);
	background-image: -moz-linear-gradient(-45deg, #ffaa00 25%, transparent 25%, transparent 50%, #ffaa00 50%, #ffaa00 75%, transparent 75%, transparent);
	background-image: -ms-linear-gradient(-45deg, #ffaa00 25%, transparent 25%, transparent 50%, #ffaa00 50%, #ffaa00 75%, transparent 75%, transparent);
	background-image: -o-linear-gradient(-45deg, #ffaa00 25%, transparent 25%, transparent 50%, #ffaa00 50%, #ffaa00 75%, transparent 75%, transparent);
	background-image: linear-gradient(-45deg, #ffaa00 25%, transparent 25%, transparent 50%, #ffaa00 50%, #ffaa00 75%, transparent 75%, transparent); */
}


#secCTA > h3:first-of-type {
	color: #2e2e2e;
}

#secCTA > h3 {
	color: #2e2e2e;
	text-shadow: 0px 0px 20px #FFF, 0px 0px 10px #3c9e3f, 0px 0px 5px #3c9e3f;
}

#secCTA > h3 strong {
	color: #d9232b;
}

#secCTA > p {
	color: #2e2e2e;
	text-shadow: 0px 0px 20px #FFF, 0px 0px 10px #3c9e3f, 0px 0px 5px #3c9e3f;
	margin-top: 12px;
}


#secCTA .col{
	margin-top: 2vw;
	background: #FFF;
	padding: 40px 0px 0px;
	border-radius: 20px;
	overflow: hidden;
	color: #000;
	width: 1160px;
}


#secCTA .col form{
	margin: auto;
	width: 900px!important;
}


#secCTA .col form.mktoForm .mktoFormCol {
	position: relative;
	float: none;
	min-height: inherit;
}

#secCTA .col form.mktoForm .mktoField {
	line-height: inherit;
	float: none;
}

#secCTA .col form.mktoForm .mktoFieldWrap {
	float: none;
	display: flex;
	align-items: center;
	justify-content: center;
}



#secCTA .col form.mktoForm .mktoRadioList, .mktoForm .mktoCheckboxList {
	float: none;
	padding: 0;
}

#secCTA .col form.mktoForm div.mktoLogicalField {
	border: 1px solid transparent;
}

#secCTA .col form.mktoForm label.mktoLabel {
	width: 14.5em!important;
}


#secCTA .col form.mktoForm .mktoRadioList,
#secCTA .col form.mktoForm .mktoCheckboxList {
	float: none;
	padding: 0;
}

#secCTA .col form.mktoForm .mktoOffset {
	display: none;
}

#secCTA .col form.mktoForm .mktoLabel {
	float: none;
	line-height: inherit;
	padding-top: 0;
}

#secCTA .col form.mktoForm .mktoGutter {
	float: none;
	height: 0;
	display: none;
}

#secCTA .col form.mktoForm .mktoAsterix {
	padding: 0 0 0 0;
	float: none;
}

#secCTA .col form.mktoForm select.mktoField {
	background: none;
	padding: 0;
	text-indent: 0;
}

#secCTA .col form.mktoForm input[type=text],
#secCTA .col form.mktoForm input[type=url],
#secCTA .col form.mktoForm input[type=email],
#secCTA .col form.mktoForm input[type=tel],
#secCTA .col form.mktoForm input[type=number],
#secCTA .col form.mktoForm input[type=date],
#secCTA .col form.mktoForm select.mktoField,
#secCTA .col form.mktoForm textarea.mktoField {
	-webkit-appearance: none;
	line-height: 1.5em;
	color: #000;
	background-color: #fff;
	border: 1px solid #aeb0b6;
	padding: 0.5em 0.5em;
	min-height: 1.9em;
	line-height: inherit;
	border-radius: 5px;
	box-shadow: none;
	border: 1px solid rgba(204, 0, 0, 1);
	background: #fdefef;
	color: #c00;
}

#secCTA .col form.mktoForm input.mktoField.mktoInvalid,
#secCTA .col form.mktoForm select.mktoField.mktoInvalid,
#secCTA .col form.mktoForm textarea.mktoField.mktoInvalid,
#secCTA .col form.mktoForm div.mktoLogicalField.mktoInvalid {
	border: 1px solid rgba(204, 0, 0, 1);
	background: #fdefef;
	color: #c00;
}

#secCTA .col form.mktoForm input.mktoField.mktoValid,
#secCTA .col form.mktoForm select.mktoField.mktoValid,
#secCTA .col form.mktoForm textarea.mktoField.mktoValid {
	color: #000;
	background-color: #fff;
	border: 1px solid #aeb0b6;
}




#secCTA .col form.mktoForm input[type=checkbox] + label:before,
#secCTA .col form.mktoForm input[type=radio] + label:before {
	background-color: #fff;
	box-shadow: none;
}

#secCTA .col form.mktoForm fieldset {
	border: 1px solid #aeb0b6;
	padding: 0!important;
	margin: 30px 0 30px!important;
}




#secCTA .col form.mktoForm fieldset legend {
	margin: auto;
	padding: 0 0.5em;
	font-size: 1.75em;
	font-family: リュウミン M-KL, "游明朝", 'Sawarabi Mincho';
}

#secCTA .col form.mktoForm .mktoFormRow fieldset .mktoFormRow {
	padding: 15px;
	display: flex;
	align-items: center;
	justify-content: start;
	flex-direction: column;
	background: #f9f6f0;
}

#secCTA .col form.mktoForm .mktoFormRow:nth-of-type(4) fieldset .mktoFieldWrap {
	justify-content: center;
}


#secCTA .col form.mktoForm .mktoFormRow fieldset .mktoFormRow:nth-of-type(2n+1) {
	background: #fff;
}




#secCTA .col form.mktoForm .mktoRequiredField .mktoLabel {
	display: flex;
	align-items: center;
	justify-content: stretch;
}

#secCTA .col form.mktoForm .mktoRequiredField .mktoAsterix {
	display: inline-block;
	font-size: 0;
	position: relative;
	width: 2.5rem;
	height: 1.5rem;
	margin-right: 10px;
}

#secCTA .col form.mktoForm .mktoRequiredField .mktoAsterix::after {
	content: "必 須";
	position: absolute;
	left: 0;
	top: 0;
	bottom: 0;
	right: 0;
	background: #d81c24;
	color: #FFF;
	z-index: 9;
	font-size: 0.75rem;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 4px;
	box-shadow: 0px 1px 0px 0px #aeb0b6;
}

#secCTA .col form.mktoForm .mktoRequiredField .mktoAsterix.clear::after {
	content: "完 了";
	background: #4caf50;
}


#secCTA .col form.mktoForm fieldset .mktoFormCol {
	width: 100%;
	margin-bottom: 0!important;
}

#secCTA .col form.mktoForm fieldset .mktoFieldWrap {
	justify-content: start;
}

#secCTA .col form.mktoForm input[type=checkbox],
#secCTA .col form.mktoForm input[type=radio] {
	display: none;
}


#secCTA .col form.mktoForm .mktoRadioList > label,
#secCTA .col form.mktoForm .mktoCheckboxList > label {
	margin: 0;
	cursor: pointer;
}

#secCTA .col form.mktoForm .mktoRadioList > label{
	width: 4.5em;
	padding-left: 1.5em;
	margin-right: 1em;
	position: relative;
}


#secCTA .col form.mktoForm .mktoRadioList {
	float: none;
	padding: 0;
	display: flex;
	align-items: center;
	justify-content: start;
}

#secCTA .col form.mktoForm input[type=radio] + label:before {
	content: "";
	position: absolute;
	width: 15px;
	height: 15px;
	margin-left: -1.5em;
	font-size: 13px;
	border: 1px solid #d81c24;
	box-shadow: none;
	background-color: #fff;
	top: 0;
	bottom: 0;
	left: 0;
	right: auto;
	margin: auto;
}

#secCTA .col form.mktoForm input[type=radio] + label::after {
	content: "";
	position: absolute;
	width: 9px;
	height: 9px;
	border: 1px solid #d81c24;
	background-color: #d81c24;
	top: 0;
	bottom: 0;
	left: 3px;
	right: auto;
	margin: auto;
	border-radius: 20px;
	transform: scale(0);
	transition: all 0.2s linear;
}

#secCTA .col form.mktoForm .mktoValid input[type=radio] + label:before {
	border: 1px solid #aeb0b6;
}

#secCTA .col form.mktoForm input[type=radio]:checked + label:before {
	background-image: none;
	border: 1px solid #aeb0b6;
}

#secCTA .col form.mktoForm input[type=radio]:checked + label::after {
	transform: scale(1);
}


#secCTA .col form.mktoForm .mktoButtonWrap.mktoGlow {
	margin: 30px auto 0!important;
	display: block;
}


#secCTA .col .mktoButtonRow {
	display: block;
	position: relative;
	text-align: center!important;
}

#secCTA .col form.mktoForm .mktoButtonWrap.mktoGlow {
	margin: 10px auto 30px!important;
	display: block;
	text-align: center;
}

#secCTA .col form.mktoForm .mktoButtonWrap.mktoGlow .mktoButton {
	color: #fff;
	padding: 0.4em 1em;
	font-size: 1em;
	background-image: none;
	background-color: #d81c24;
	box-shadow: none;
	border: 1px solid #a21117;
	font-size: 1.5em;
	border-radius: 100px;
	box-shadow: 0px 10px 15px -10px #222;
	transition: all 0.2s linear;
}

#secCTA .col form.mktoForm .mktoButtonWrap.mktoGlow .mktoButton:hover {
	background-color: #a21117;
}

#secCTA .col form.mktoForm label[for=ppolicy] {
	width: auto!important;
}

#secCTA .col form.mktoForm .mktoCheckboxList {
	width: auto!important;
}


#secCTA .col form.mktoForm #nameSei ,
#secCTA .col form.mktoForm #kanaSei ,
#secCTA .col form.mktoForm #addrCity ,
#secCTA .col form.mktoForm #addrBanchi ,
#secCTA .col form.mktoForm #Email ,
#secCTA .col form.mktoForm #Phone ,
#secCTA .col form.mktoForm #getFrom ,
#secCTA .col form.mktoForm #message {
	width: calc(100% - 14.5em)!important;
}


#secCTA .col form.mktoForm #age ~ .mktoClear::after {
	content: "歳";
	display: block;
	font-size: 0.75rem;
	width: 1rem;
	height: 1rem;
	color: #2e2e2e;
	position: relative;
	z-index: 9;
	margin-left: 0.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}



#secCTA .col form input#ppolicy {
	display: contents;
}

#secCTA .col form.mktoForm div.mktoLogicalField label[for="ppolicy"] {
	width: 25px;
	height: 25px;
	min-width: 25px !important;
	border: 1px solid #aeb0b6;
	box-shadow: 0px 2px 11px -4px #2e2e2e;
	background: #FFF;
	margin: 10px;
	position: relative;
}

#secCTA .col form.mktoForm input[type=checkbox] + label:before{
	content: "";
	width: 15px;
	height: 22px;
	border: 6px solid rgba(204, 0, 0, 1);
	border-left: 0;
	border-top: 0;
	background: none;
	transition: all 0.2s linear;
	opacity: 0;
	transform: scale(1.5) rotate(225deg);
	position: absolute;
	top: 0;
	bottom: 10px;
	margin: auto;
	right: 5px;
	box-shadow: 4px 0px 2px -2px rgba(0,0,0,0.5 );
}

#secCTA .col form.mktoForm input[type=checkbox]:checked + label:before {
	border: 6px solid rgba(204, 0, 0, 1);
	border-left: 0;
	border-top: 0;
	transform: scale(1) rotate(45deg);
	opacity: 1;
}

#secCTA .col .fromNotice {
	background: #ffe9ea;
	margin-top: 40px;
	padding: 40px 0;
}

#secCTA .col .fromNotice h4 {
	color: #d81c24;
}


#secCTA .col .fromInput p ,
#secCTA .col .fromComp p {
	margin-bottom: 10px;
}

#secCTA .col .fromInput p:last-of-type ,
#secCTA .col .fromComp p:last-of-type {
	margin-bottom: 0px;
}





div.floatBNR {
position: fixed;
bottom:0;
right:0;
text-align: right;
z-index: 100;
/*width: 100%;*/
}





























































































/* #page-doctor ---------------------------------------------------------------- */
/* #page-doctor ASSET ---------------------------------------------------------- */
#page-doctor h4.bgOrange {
	color: #ec6900;
	background: rgba(236, 105, 0, 0.2);
}

#page-doctor h4.bgOrange::after{
	background: #ec6900;
}

#page-doctor p{
	line-height: 1.8rem;
}


/* #page-doctor header --------------------------------------------------------- */
#page-doctor header .col{
	line-height: 3;
}


/*キャッチ*/
#sec_topImg .col .topTitle h1 span {
	font-size:0.5em;
}
#sec_topImg .col .topTitle h1 span.doctor {
	font-size: 1.0em;
	line-height: 1.0em;
}

#sec_topImg .col .topTitle h1 span>span {
	color:#396;
	font-size: 1.0em;
}
#sec_topImg .col .topTitle h1 span>span:nth-child(2) {
	color:#396;
	font-family: "ＭＳ Ｐ明朝", "MS PMincho","ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "serif";
	font-size: 1.35em;

	border-bottom:10px solid #ff9;
}




/* #page-doctor #sec_02 -------------------------------------------------------- */
#page-doctor #sec_02 h3{
	line-height: 1.8;
}


/* #page-doctor #sec_01 -------------------------------------------------------- */
#page-doctor #sec_01{
	margin-top: 0px!important;
	box-shadow: none;
}

#page-doctor #sec_01 .col {
	padding: 60px 20px;
}

/* #page-doctor #doc_sec_01 ---------------------------------------------------- */
#page-doctor #doc_sec_01{
	position: relative;
	margin-top: calc(100vh - 146px);
}

#page-doctor #doc_sec_01 h1{
	padding-bottom: 0.75vw;
}

#page-doctor #doc_sec_01 h1::after{
	content: "";
	width: 15%;
	background: #000;
	height: 3px;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
	bottom: 0;
}

#page-doctor #doc_sec_01 .col .point{
	display: flex;
	margin-bottom: 1vw;
	width: 960px;
	margin: 0 auto 1vw;
}

#page-doctor #doc_sec_01 .col .point:last-of-type{
	margin: 0 auto 0;
}

#page-doctor #doc_sec_01 .col .point .num{
	width: 15%;
	display: flex;
	align-items: center;
	justify-content: center;
	color: #FFF;
}

#page-doctor #doc_sec_01 .col .point .num p{
	font-size: 3rem;
	display: flex;
	flex-direction: column;
	line-height: 1;
}

#page-doctor #doc_sec_01 .col .point .num p span{
	font-size: 1rem;
}

#page-doctor #doc_sec_01 .col .point .txt{
	width: 85%;
	padding: 20px;
}

#page-doctor #doc_sec_01 .col .point .txt h2{
	margin-bottom: 0vw;
}


#page-doctor #doc_sec_01 .col .point:nth-of-type(1){ background: rgba(0, 168, 155, 0.1); }
#page-doctor #doc_sec_01 .col .point:nth-of-type(2){ background: rgba(143, 195, 32, 0.1); }
#page-doctor #doc_sec_01 .col .point:nth-of-type(3){ background: rgba(0, 130, 190, 0.1); }
#page-doctor #doc_sec_01 .col .point:nth-of-type(4){ background: rgba(212, 80, 130, 0.1); }

#page-doctor #doc_sec_01 .col .point:nth-of-type(1) .num{ background: #00a89b; }
#page-doctor #doc_sec_01 .col .point:nth-of-type(2) .num{ background: #8fc320; }
#page-doctor #doc_sec_01 .col .point:nth-of-type(3) .num{ background: #0082be; }
#page-doctor #doc_sec_01 .col .point:nth-of-type(4) .num{ background: #d45082; }

#page-doctor #doc_sec_01 .col .point:nth-of-type(1) .txt h2{ color: #00a89b; }
#page-doctor #doc_sec_01 .col .point:nth-of-type(2) .txt h2{ color: #8fc320; }
#page-doctor #doc_sec_01 .col .point:nth-of-type(3) .txt h2{ color: #0082be; }
#page-doctor #doc_sec_01 .col .point:nth-of-type(4) .txt h2{ color: #d45082; }

#page-doctor #doc_sec_01 .col .point:nth-of-type(1) .txt h3{ color: #00a89b; }
#page-doctor #doc_sec_01 .col .point:nth-of-type(2) .txt h3{ color: #8fc320; }
#page-doctor #doc_sec_01 .col .point:nth-of-type(3) .txt h3{ color: #0082be; }
#page-doctor #doc_sec_01 .col .point:nth-of-type(4) .txt h3{ color: #d45082; }


#page-doctor #doc_sec_01 h3{
	font-size: 1.25rem;
	margin-bottom: 0.25vw;
}

#page-doctor #doc_sec_01 h2 em{
	font-style: normal;
	font-size: 1.25em;
	position: relative;
}

#page-doctor #doc_sec_01 h2 em::after{
	content: "";
	width: 10px;
	height: 10px;
	border-radius: 5px;
	background: #ec6900;
	position: absolute;
	left: 0;
	right: 0;
	margin: auto;
}

#page-doctor #doc_sec_01 .colIn:last-of-type {
	position: relative;
}

#page-doctor #doc_sec_01 .colIn:last-of-type::after {
	content: "";
	height: 10vw;
	width: 50vw;
	-webkit-filter: blur(6px);
	-ms-filter: blur(6px);
	filter: blur(60px);
	background: #ec6900;
	display: block;
	position: absolute;
	margin: 0px auto 0;
	left: 0;
	right: 0;
	opacity: 0.2;
	border-radius: 50%;
	bottom: 3px;
	z-index: -1;
}



/* #page-doctor.ver02 ---------------------------------------------------------- */

#page-doctor.ver02 #sec_topImg {
	background: url(../img/sec_topimg_01_02.jpg) no-repeat;
	background-position: top right;
	background-size: cover;
}

#page-doctor.ver02 #sec_topImg dl.sec_topImg_02 {
	left: auto;
	bottom: 12vw;
	right: 0;
}




#page-doctor.ver02 #sec_topImg .col .docTitle {
	width:  40vw;
	height: 40vw;
	max-width: 600px;
	max-height: 600px;
	position: absolute;
	top: -50px;
	bottom: 0;
	margin: auto;
	left: 5vw;
	padding: 14px;
	display: flex;
	flex-flow: column;
	align-items: center;
	justify-content: center;
	-webkit-transition: -webkit-all 0.1s linear;
	   -moz-transition:    -moz-all 0.1s linear;
	    -ms-transition:     -ms-all 0.1s linear;
	     -o-transition:      -o-all 0.1s linear;
	        transition:         all 0.1s linear;
}

#page-doctor.ver02 #sec_topImg .col .docTitle::after {
	content: "";
	width: 100%;
	height: 100%;
	display: block;
	background: rgba(0, 168, 155, 0.9);
	border-radius: 45vw;
	border: 9px dashed rgba(255, 255, 255, 0.8);
	box-shadow: 0px 0px 0px 8px rgba(0, 168, 155, 0.9);
	position: absolute;
	z-index: -1;
	animation: effectRotate 20s linear infinite;
	left: 0;
	top: 0;
	margin: auto;
}

#page-doctor.ver02 #sec_topImg .col .docTitle div {
	content: "";
	width: 100%;
	height: 100%;
	border-radius: 50vw;
	overflow: hidden;
	background: rgba(255, 255, 255, 0.8);
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	overflow: hidden;
}

#page-doctor.ver02 #sec_topImg .col .docTitle h2 {
	margin-bottom: 1vw;
	font-size: 2.8vw;
}

#page-doctor.ver02 #sec_topImg .col .docTitle h1 {
	display: flex;
	flex-direction: column;
	margin-bottom: 0;
	font-size: 3.25vw;
}

#page-doctor.ver02 #sec_topImg .col .docTitle h1 span {
	font-size: 1em;
}

#page-doctor.ver02 #sec_topImg .col .docTitle h1 span:last-of-type {
	font-size: 1.85em;
}

@media screen and (min-width:1600px) {
	#page-doctor.ver02 #sec_topImg .col .docTitle h2 {
		font-size: 2.5vw;
	}

	#page-doctor.ver02 #sec_topImg .col .docTitle h1 {
		font-size: 2.8vw;
	}
}




/* Animation ---------- */
#page-doctor.ver02 #sec_topImg .col .docTitle {
	transform: scale(3);
	opacity: 0;
}

#page-doctor.ver02.s01 #sec_topImg .col .docTitle {
	transform: scale(1);
	opacity: 1;
}


#page-doctor.ver02 #sec_topImg .col .docTitle h2 {
	transform: translateY(30px);
	opacity: 0;
	transition: all 0.4s linear;
}

#page-doctor.ver02.s02 #sec_topImg .col .docTitle h2 {
	transform: translateY(0);
	opacity: 1;
}


#page-doctor.ver02 #sec_topImg .col .docTitle h1 span:nth-of-type(1) {
	transform: translateX(-30px);
	opacity: 0;
	transition: all 0.2s linear;
}

#page-doctor.ver02.s03 #sec_topImg .col .docTitle h1 span:nth-of-type(1) {
	transform: translateY(0);
	opacity: 1;
}


#page-doctor.ver02 #sec_topImg .col .docTitle h1 span:nth-of-type(2) {
	transform: translateX(30px);
	opacity: 0;
	transition: all 0.2s linear;
}

#page-doctor.ver02.s03 #sec_topImg .col .docTitle h1 span:nth-of-type(2) {
	transform: translateY(0);
	transition-delay: 0.5s;
	opacity: 1;
}


#page-doctor.ver02 #sec_topImg .col .docTitle h1 span:nth-of-type(3) {
	transform: scale(5);
	opacity: 0;
	letter-spacing: 0px;
	transition: all 0.2s linear;
}

#page-doctor.ver02.s04 #sec_topImg .col .docTitle h1 span:nth-of-type(3) {
	transform: scale(1);
	opacity: 1;
	letter-spacing: 9px;
}




#page-doctor.ver02 h1{
	margin-bottom: 0.75vw;
}

#page-doctor.ver02 #doc_sec_01 .colIn:last-of-type::after {
	top: 0;
	bottom: 0;
	margin: auto;
}



#page-doctor.ver02 .col .point {
	flex-direction: column;
	border-radius: 10px;
	overflow: hidden;
	border: 1px solid rgba(46, 46, 46, 0.2);
}

#page-doctor.ver02 .col .point .num {
	width: 100%!important;
	padding: 15px 0;
}

#page-doctor.ver02 .col .point .num p {
	align-items: center;
	flex-direction: row!important;
	position: relative;
	margin-right: 8px;
}

#page-doctor.ver02 .col .point .num p span {
	margin-right: 4px;
}

#page-doctor.ver02 .col .point .num h2 {
	margin: 0;
}

#page-doctor.ver02 .col .point .txt {
	width: 100%!important;
}









#page-doctor.ver02 #sec_03 .colIn:last-of-type::after {
	bottom: 0;
	margin: auto;
	top: 0;
}


#page-doctor.ver02 header .col ul li.btn-link p.ctaLink a {
	padding: 5px 30px;
}

#page-doctor.ver02 header .col ul li.btn-link p.ctaLink a br {
	display: none;
}

#page-doctor.ver02 header h1 {
	margin-bottom: 0;
}

#page-doctor.ver02 #sec_04 dl {
	display: flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	background: #FFF;
	padding: 10px;
	border-radius: 1000px;
	width: auto;
	margin: auto;
}

#page-doctor.ver02 #sec_04 dt ,
#page-doctor.ver02 #sec_04 dd {
	height: 250px;
	width: 250px;
	display: flex;
	align-items: center;
	justify-content: center;
	border-radius: 200px;
	position: relative;
}

#page-doctor.ver02 #sec_04 dt{
	margin-right: 35px;
	background-color: #c8dcec;
}

#page-doctor.ver02 #sec_04 dt::before{
	content: "";
	position: absolute;
	z-index: 2000;
	width: 20px;
	height: 20px;
	top: 0;
	bottom: 0;
	margin: auto;
	right: -18px;
	border-right: 2px solid #c8dcec;
	border-bottom: 2px solid #c8dcec;
	transform: rotate(-45deg);
}

#page-doctor.ver02 #sec_04 dt::after{
	content: "";
	position: absolute;
	z-index: 2000;
	width: 20px;
	height: 2px;
	top: 0;
	bottom: 0;
	margin: auto;
	left: 250px;
	background: #c8dcec;
}


#page-doctor.ver02 #sec_04 dd {
	width: 330px;
	border-radius: 0;
}

#page-doctor.ver02 #sec_04 dd span.notice {
	display: block;
	font-size: 1em;
	color: #716e68;
}

#page-doctor.ver02 #sec_04 .col{
	padding-bottom: 0;
	flex-direction: row-reverse;
}

#page-doctor.ver02 #sec_04 .col:not(:first-of-type){
	padding-top: 0;
}

#page-doctor.ver02 #sec_04 .col:last-of-type{
	padding-top: 40px;
	padding-bottom: 60px;
}



#page-doctor.ver02 #sec_04 .sec-graph{
	background-color: #FFF;
	padding: 70px 80px!important;
	border-radius: 10px;
	margin-top: 60px;
}

#page-doctor.ver02 #sec_04 .sec-graph .chart div canvas#sample{
	height: 400px;
}

#page-doctor.ver02 #sec_04 .sec-graph .chart{
	position: relative;
}

#page-doctor.ver02 #sec_04 .sec-graph .toolTip p{
	position: absolute;
	width: 120px;
	height: 120px;
	bottom: 0;
	background: #333;
	border-radius: 100px;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	line-height: 1;
	font-size: 0.75rem;
	filter: drop-shadow(0 0 4px rgba(0, 0, 0, 0.4));
}

#page-doctor.ver02 #sec_04 .sec-graph .toolTip p::after{
	content: "";
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 18px 15px 0 15px;
	border-color: #FFF transparent transparent transparent;
	position: absolute;
	bottom: -8px;
	left: 0;
	right: 0;
	margin: auto;
}

#page-doctor.ver02 #sec_04 .sec-graph .toolTip p span{
	font-size: 2.25rem;
	font-weight: bold;
	line-height: 1.2;
	color: #FFF;
}



#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(1),
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(3),
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(5){
	background: #aed9fa;
}

#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(1)::after,
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(3)::after,
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(5)::after{
	border-color: #aed9fa transparent transparent transparent;
}


#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(2),
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(4),
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(6){
	background: #e04a51;
}

#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(2)::after,
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(4)::after,
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(6)::after{
	border-color: #e04a51 transparent transparent transparent;
}

#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(1){ bottom: 19%; left: 7%; }
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(2){ bottom: 26%; left: 19.5%; }
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(3){ bottom: 22%; left: 38.5%; }
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(4){ bottom: 59%; left: 51%; }
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(5){ bottom: 27%; left: 69.5%; }
#page-doctor.ver02 #sec_04 .sec-graph .toolTip p:nth-of-type(6){ bottom: 94%; left: 82.1%; }



#page-doctor.ver02 #sec_04 .sec-graph .toolTip p{
	transform: translateY(30px);
	opacity: 0;
	-webkit-transition: -webkit-all 0.2s linear;
	   -moz-transition:    -moz-all 0.2s linear;
	    -ms-transition:     -ms-all 0.2s linear;
	     -o-transition:      -o-all 0.2s linear;
	        transition:         all 0.2s linear;
}

#page-doctor.ver02 #sec_04 .sec-graph .toolTip.s01 p{
	transform: translateY(0);
	opacity: 1;
}

#page-doctor.ver02 #sec_04 .sec-graph .toolTip.s01 p:nth-of-type(1){ transition-delay: 0s; }
#page-doctor.ver02 #sec_04 .sec-graph .toolTip.s01 p:nth-of-type(2){ transition-delay: 0.1s; }
#page-doctor.ver02 #sec_04 .sec-graph .toolTip.s01 p:nth-of-type(3){ transition-delay: 0.3s; }
#page-doctor.ver02 #sec_04 .sec-graph .toolTip.s01 p:nth-of-type(4){ transition-delay: 0.4s; }
#page-doctor.ver02 #sec_04 .sec-graph .toolTip.s01 p:nth-of-type(5){ transition-delay: 0.6s; }
#page-doctor.ver02 #sec_04 .sec-graph .toolTip.s01 p:nth-of-type(6){ transition-delay: 0.7s; }


#page-doctor.ver02 #sec_04 .colHalf div.point .num h2{
	font-size: 1.25rem;
}






#page-doctor.ver02 #sec_04 .colHalf div.point,
#page-doctor.ver02 #sec_merit .colHalf div.point{
	border: 1px solid #8a8a8b;
	border-radius: 8px;
	box-shadow: 0px 5px 10px -5px rgba(0, 0, 0, 0.6);
	overflow: hidden;
	background-color: #FFF;
}

#page-doctor.ver02 #sec_04 .colHalf div.point .num,
#page-doctor.ver02 #sec_merit .colHalf div.point .num{
	display: flex;
	align-items: stretch;
	justify-content: stretch;
	padding: 0;
}

#page-doctor.ver02 #sec_04 .colHalf div.point .num p,
#page-doctor.ver02 #sec_merit .colHalf div.point .num p{
	width: 15%;
	display: flex;
	align-items: center;
	flex-direction: column;
	font-size: 2rem;
	background-color: rgba(200, 220, 236, 0.6);
	padding: 10px 20px;
	margin: 0;
}

#page-doctor.ver02 #sec_04 .colHalf div.point .num h2,
#page-doctor.ver02 #sec_merit .colHalf div.point .num h2{
	margin-bottom: 0;
	width: 85%;
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: rgba(200, 220, 236, 0.3);
}

#page-doctor.ver02 #sec_04 .colHalf div.point .txt,
#page-doctor.ver02 #sec_merit .colHalf div.point .txt{
	padding: 25px 20px;
}

#page-doctor.ver02 #sec_04 .colHalf div.point .txt ul,
#page-doctor.ver02 #sec_merit .colHalf div.point .txt ul{
	counter-reset : item ;
	list-style : none ;
}

#page-doctor.ver02 #sec_04 .colHalf div.point .txt ul li,
#page-doctor.ver02 #sec_merit .colHalf div.point .txt ul li{
	text-align: left;
	padding-left: 36px;
	position: relative;
	margin-bottom: 10px;
}

#page-doctor.ver02 #sec_04 .colHalf div.point .txt ul li:last-of-type,
#page-doctor.ver02 #sec_merit .colHalf div.point .txt ul li:last-of-type{
	margin-bottom: 0px;
}

#page-doctor.ver02 #sec_04 .colHalf div.point .txt ul li::after,
#page-doctor.ver02 #sec_merit .colHalf div.point .txt ul li::after{
	content: "";
	position: absolute;
	width: 30px;
	height: 30px;
	border: 2px solid rgba(200, 220, 236, 0.2);
	background-color: rgba(200, 220, 236, 1);
	top: 4px;
	left: 0;
	margin: auto;
	border-radius: 25px;
}

#page-doctor.ver02 #sec_04 .colHalf div.point .txt ul li::before,
#page-doctor.ver02 #sec_merit .colHalf div.point .txt ul li::before{
	counter-increment: item 1;
	content: counter(item) " ";
	font-size: 1.5rem;
	position: absolute;
	z-index: 1;
	left: 8px;
	top: 0px;
	transform: rotate(5deg);
}




#page-doctor.ver02 #sec_04 .colHalf div.point .num h2{
	width: 100%;
	padding: 10px;
}

#page-doctor.ver02 #sec_04 .colHalf div.point .txt h3{
	font-size: 1.25rem;
}




#page-doctor.ver02 #sec_03 .colIn:first-of-type{
	display: flex;
	align-items: stretch;
}

#page-doctor.ver02 #sec_03 .colIn:first-of-type .point{
	width: calc(100% / 4 - 10px);
	margin-bottom: 0;
}

#page-doctor.ver02 #sec_03 .colIn:first-of-type .point .num {
	width: auto!important;
	padding: 15px 0;
}

#page-doctor.ver02 #sec_03 .colIn:first-of-type .point h2 {
	margin-bottom: 0;
	display: flex;
	align-items: center;
	justify-content: center;
	height: 100%;
	font-size: 1.25rem;
	padding: 10px;
}
