@charset "UTF-8";
@import url(http://fonts.googleapis.com/earlyaccess/notosansjapanese.css);
html {
	font-family: -apple-system, BlinkMacSystemFont, 'Helvetica Neue', Meiryo, 'ヒラギノ角ゴ Pro', 'Hiragino Kaku Gothic Pro', sans-serif;
	font-size:100%;
	font-weight:200;
	line-height: 2.4em;
}
a {
	text-decoration:none;
}
.cfx:after {
	display: block;
	clear: both;
	content: "";
}
.yellow {
	color:#f1d302;
}
.red {
	color:#cc2929;
}
.small {
	font-size:80%;
}
.float {
	animation: float_5650 2s linear infinite;
	transform-origin: 50% 50%;
}
@keyframes float_5650 {
	0% {transform: translateY(0)}
	25% { transform: translateY(-7px)}
	50% { transform: translateY(-14px)}
	75% { transform: translateY(-7px)}
	100% { transform: translateY(0)}
}

/*header*/

header {
	width:100%;
	margin:0;
	padding:20px 0;
	border-top: 5px solid #cc0000;
}

/*mainvisual*/

#mv {
	border-top:2px solid #cc0000;
	background-image:url("../images/mvBg.jpg");
	background-repeat:no-repeat;
	background-size:cover;
	background-position: center top;
	text-align: center;
	color:#fff;
	text-shadow: 0px 0px 8px #555;
}
#mv .mvInner {
	background-color:rgba(0,0,0,.5);
	padding:80px 0 73px;
}
#mv h1 {
	font-size: 3em;
	font-weight: 400;
	line-height: 1.4em;
}
#mv h2 {
	font-size: 2em;
	font-weight: 400;
	vertical-align: middle;
}
#mv h2 img {
	vertical-align: middle;
	-webkit-filter: drop-shadow( 0px 0px 8px #555);
}

#att{
	background:#cc0000;
	color:#fff;
	padding:20px;
}
#att p{
	margin:0;
}

/*cv*/

#cv01,
#cv03 {
	text-align: center;
	background-image:url("../images/cvBg.png");
	padding:60px 0;
}
#cv02 {
	background-color:#eee;
	text-align: center;
	padding:60px 0;
}
#cv01 p:first-child,
#cv02 p:first-child,
#cv03 p:first-child {
	font-size:2em;
	font-style: italic;
	font-weight: 500;
	background-image:url("../images/cvArrow.png");
	background-repeat: no-repeat;
	background-position:bottom center;
	margin:0 0 26px;
	padding-bottom:39px;
	letter-spacing: 0.1em;
}
#cv01 p .red,
#cv02 p .red,
#cv03 p .red {
	font-size:1.5em;
}
#cv01 p .red span,
#cv02 p .red span,
#cv03 p .red span {
	font-size:0.75em;
}
#cv01 a img,
#cv02 a img,
#cv03 a img {
	box-shadow: 0 0 10px #999;
	border-radius: 15px;
	margin-bottom:26px;
	transition:all 0.3s;
}

/*lifeStage*/

#lifeStage {
	text-align: center;
}
#lifeStage h3 {
	color:#fff;
	background-color:#235789;
	font-size: 2em;
	font-weight:400;
	margin:0 0 52px;
	padding:52px 0;
}
#lifeStage p + p {
	font-size:2em;
	font-weight:400;
	line-height: 1.2em;
}
#lifeStage div {
	border:1px solid #235789;
	padding:26px;
}
#lifeStage div + p {
	font-size:3em;
	font-weight: 700;
}

/*question*/

#question {
	background-image:url("../images/questionBg_2.jpg");
	background-repeat:no-repeat;
	background-size:cover;
	background-position: center top;
	text-align: center;
}
#question .questionArrow {
	background-image:url("../images/questionArrow.png");
	width:128px;
	height:52px;
	margin:0 auto;
}
#question .questionInner {
	background-image:url("../images/questionMan.png");
	background-repeat:no-repeat;
	background-position: center center;
}
#question .questionContent,
#contact .contactInner .contactPoint {
	position:relative;
	background-color:rgba(255,255,255,0.85);
	box-shadow: 0 0 10px #999;
	border-radius: 15px;
	width:293px;
	margin-bottom:52px;
	letter-spacing: -0.05em;
}
#question .questionContent img,
#contact .contactInner .contactPoint img {
	position: absolute;
	top:-21px;
	left:-21px;
}
#question .questionContent p {
	text-align: left;
	font-size:1.5em;
	line-height: 1.4em;
	padding-left:10px;
}
#question .questionContent p .red {
	font-size:1.2em;
	font-weight:600;
	display:block;
}
#question .questionContent:nth-child(2n-1),
#contact .contactInner .contactPoint:nth-child(2n-1){
	float:left;
}
#question .questionContent:nth-child(2n),
#contact .contactInner .contactPoint:nth-child(2n){
	float:right;
}
#question .questionContent:nth-child(3),
#contact .contactInner .contactPoint:nth-child(3) {
	clear:both;
	margin-bottom:0;
}
#question .questionContent:nth-child(4),
#contact  .contactInner .contactPoint:nth-child(4) {
	margin-bottom:0;
}

/*soudanBar*/
#soudanBar {
	background-color:#cc0000;
	text-align: center;
}
#soudanBar h3 {
	margin:0;
	padding:78px 0;
}
#soudanBar h3 .small {
	font-size: 50%;
}

/*soudan*/

#soudan {
	background-image:url("../images/soudanBg.png");
	background-repeat:no-repeat;
	background-size:cover;
	background-position: center top;
	text-align: center;
}
#soudan .soudanPoint {
	width:378px;
	background-color:rgba(0, 0, 0, 0.7);
	border-radius: 15px;
	color:#fff;
	margin:104px 0;
	padding:39px 39px 52px;
	position:relative;
}
#soudan .soudanPoint img {
	position: absolute;
	top:-45px;
	left:-25px;
}
#soudan .soudanPoint p {
	line-height:1.6em;
	text-align: left;
}
#soudan .soudanPoint p span {
	font-size:2em;
	display: block;
	margin-bottom:26px;
}
#soudan #advice {
	background-image:url("../images/soudanAdvice.png");
	background-repeat:no-repeat;
	background-position: right bottom;
}
#soudan #free {
	background-image:url("../images/soudanFree.png");
	background-repeat:no-repeat;
	background-position: bottom right;
}
#soudan .soudanArrow {
	background-image:url("../images/soudanArrow.png");
	display:block;
	height:52px;
	background-repeat:no-repeat;
	background-position: center center;
	clear:both;
}

/*contact*/

#contact {
	text-align: center;
}
#contact h3 {
	font-size: 3em;
	font-weight: 300;
	background-image:url("../images/contactTitle.png");
	background-repeat:no-repeat;
	background-position: center bottom;
	margin:0 0 26px;
	padding:78px 0;
}
#contact p.att{
	margin:0 0 40px;
	padding:0;
}
#contact > p {
}
#contact .contactInner {
	padding:30px 0!important;
	background-image:url("../images/contactKen.png");
	background-repeat:no-repeat;
	background-position: center center;
}
#contact .contactPoint p {
	line-height: 1.6em;
	margin:39px 0;
}
#contact .contactPoint p .red {
	font-size:1.5em;
	display: block;
	margin-bottom:26px;
}
#contact .contactPoint p .red span{
	font-size:0.8em;
	display:block;
}

/*flow*/

#flow {
	background-color:#eee;
	text-align: center;
	padding-bottom:78px;
}
#flow h3 {
	font-size: 3em;
	font-weight: 300;
	background-image:url("../images/flowTitle.png");
	background-repeat:no-repeat;
	background-position: center bottom;
	margin:0 0 26px;
	padding:78px 0;
}
#flow .flowInner .flowStep {
	width:250px;
	float:left;
	background-color:#fff;
	box-shadow: 0 0 10px #999;
	border-radius: 15px;
	margin:26px 26px 0 0;
	padding:26px;
	position:relative;
}
#flow .flowInner .flowStep:last-child {
	margin-right:0;
}
#flow .flowInner .flowStep .red {
	font-size:1.2em;
	font-weight:600;
	text-align:left;
	margin-bottom:39px;
}
#flow .flowInner .flowStep .red sup {
	font-size:10px;
}
#flow .flowInner .flowStep img:first-child {
	float:left;
	margin:14px 10px 0 -26px;
}
#flow .flowInner .flowStep p:last-child {
	text-align:left;
	line-height:1.4em;
}
#flow > p:last-child {
	clear:both;
	padding-top:20px;
}

/*footer*/

footer {
	border-top:2px solid #cc0000;
	padding:26px 0;
}
footer img {
	float:left;
}
footer address {
	float:right;
	font-style:normal;
	margin-top:20px;
}

@media screen and ( min-width:1040px ){
.tab {
	display:none;
}
.sp {
	display:none;
}
.padding {
	padding:0 15px;
}
header div {
	width:1040px;
	margin:0 auto;
}
#mv {
	height:558px;
	/*background-attachment: fixed;*/
}
#cv01 a img:hover,
#cv02 a img:hover,
#cv03 a img:hover {
	box-shadow: 0 0 3px #333;
}
#lifeStage div {
	width:1040px;
	margin:0 auto;
}
/*#question,
#soudan {
	background-attachment: fixed;
}*/
#question .questionInner,
#contact .contactInner {
	width:936px;
	min-height:389px;
	margin:0 auto;
	padding:78px 0 104px;
}
#soudan .soudanInner {
	width:960px;
	margin:0 auto;
}
#soudan .soudanPoint:first-child {
	float:left;
}
#soudan .soudanPoint:last-child {
	float:right;
}
#flow .flowInner {
	width:960px;
	margin:0 auto;
}
footer div {
	width:1040px;
	margin:0 auto;
}
}
@media screen and ( max-width:1039px) and (min-width:600px){


.tab {
	display:block;
}
.sp {
	display:none;
}
.padding {
	padding:0 15px;
}
#wrap {
	width:100%;
}
#mv {
	height:auto;
	padding:0;
}
#cv01 a img,
#cv02 a img,
#cv03 a img {
	width:90%;
	height:auto;
}
#lifeStage h3 {
	line-height:1.5em;
}
#lifeStage h3 + img {
	width:94%;
}
#lifeStage div {
	width:88%;
	margin:0 3%;
	padding:3%;
}
#lifeStage div img {
	width:94%;
}
#question .questionInner,
#contact .contactInner {
	width:90%;
	margin:0 auto;
	padding:78px 5% 104px;
}
#question .questionContent,
#contact .contactInner .contactPoint {
	width:45%;
	margin-bottom:52px;
}
#soudanBar h3 img {
	width:94%;
}
#soudan .soudanInner {
	padding-top:78px;
}
#soudan .soudanPoint {
	width:80%;
	padding:39px 5% 52px;
}
#soudan .soudanPoint:first-child {
	margin:0 auto 78px;
}
#soudan .soudanPoint:last-child {
	margin:0 auto 78px;
}
#contact > img {
	display:block;
	margin:0 auto;
}
#contact .contactInner {
	background-image:none;
}
#flow .flowInner .flowStep {
	width:80%;
	float:none;
	margin:26px 7% 0;
	padding:26px;
}

}

@media screen and ( max-width:599px){

#att{
	font-size:14px;
	line-height:2em;
}
#contact p.att{
	font-size:14px;
	line-height:2em;
	padding:0 2%;
}

.pc,.tab{
	display:none;
}
 {
	display:none;
}
.sp {
	display:block;
	margin:0 auto;
}
header{
	padding:0;
}
header div{
	padding:0 10px 15px;
}
header div img{
	width:100px;
	height:auto;
}
#mv {
	height:auto;
	padding:0 0 52px;
	background-image:url("../images/sp/sp_mv_bg.jpg");
	background-size:auto 100%;
	padding:0;
}
#mv .mvInner {
	padding:50px 0 10px;
}
#mv h1,
#mv h2,
#mv p {
	margin:0;
	padding:0;
}
#mv h1 img {
	width:50%;
	margin-bottom:5px;
}
#mv h2 img {
	width:60%;
	margin-bottom:26px;
}
#mv .float {
	width:20px;
}
#cv01,#cv03{
	padding:30px 0;
}
#cv01 p:first-child,
#cv02 p:first-child,
#cv03 p:first-child {
	font-size:1em;
	margin-bottom:10px;
}
#cv01 a img,
#cv02 a img,
#cv03 a img {
	width:90%;
	height:auto;
}
#cv01 a + p,
#cv02 a + p,
#cv03 a + p{
	font-size:14px;
	line-height:1.6em;
	margin-bottom:0;
	text-align:left;
	padding:0 5px;
}

/*lifeStage*/

#lifeStage h3 {
	line-height:1.5em;
	margin-bottom:20px;
	padding:30px 0;
	font-size:1.4em;
}
#lifeStage h3 br.tab{
	display:block;
}
#lifeStage h3 + img + img {
	width:94%;
}
#lifeStage p.padding{
	line-height:1.8em;
	text-align:left;
	padding:0 5px;
}
#lifeStage p + p {
	font-size:1.6em;
	line-height: 1.4em;
}
#lifeStage p + p span.red{
	display:block;
}
#lifeStage p + p span.red + br{
	display:none;
}
#lifeStage div {
	width:88%;
	margin:0 3%;
	padding:3%;
}
#lifeStage div img {
	width:94%;
}

#question .questionInner,
#contact .contactInner {
	margin:0 auto;
	padding:30px 10% 20px  !important;
}
#question .questionContent{
	height:auto !important;
}
#question #question04{
	margin:0;
}
#question .questionContent p .red{
	font-size:1em;
}
#question .questionContent,
#contact .contactInner .contactPoint {
	width:90%;
	margin-bottom:52px;
	padding:5%;
	float:none!important;
	height:auto !important;
}
#contact .contactInner #contact02.contactPoint p .red{
	letter-spacing:-1px;
	font-size:21px;
}
#question .questionContent:nth-child(3),
#contact .contactInner .contactPoint:nth-child(3) {
	clear:both;
	margin-bottom:52px;
}
#question .questionContent:nth-child(4),
#contact  .contactInner .contactPoint:nth-child(4) {
	margin-bottom:52px;
}

#soudanBar h3 {
	padding:30px 0;
}
#soudanBar h3 img {
	width:94%;
}
#soudan .soudanInner {
	padding:80px 10% 50px;
}
#soudan .soudanPoint {
	width:100%;
	height:auto !important;
	box-sizing:border-box;
	padding:40px 5% 50px;
}
#soudan .soudanPoint p span{
	font-size:1.4em;
}
#soudan .soudanPoint:first-child {
	margin:0 auto 78px;
}
#soudan .soudanPoint:last-child {
	margin:0 auto;
}

#cv02{
	padding:30px 0;
}

#contact h3,#flow h3{
	background:none;
}
#contact > img {
	display:block;
	margin:0 auto;
}
#contact > img.sp{
	max-width:180px;
	height:auto;
}
#contact .contactInner {
	background-image:none;
	padding:80px 10% 50px;
}
#contact h3,
#flow h3{
	line-height:1.2em;
	padding:30px 0 0;
	margin:0;
	font-size:1.6em;
}
#contact .contactInner .contactPoint{
	margin-bottom:30px;
	padding:20px 5%;
}
#contact .contactInner .contactPoint#contact04{
	margin:0;
}
#contact .contactPoint p{
	margin:0;
}
#contact .contactPoint p .red {
	font-size: 1.4em;
	margin-bottom: 20px;
}
#contact > p {
    text-align: left;
    padding: 0 5px;
}

#flow{
	padding-bottom:30px;
}
#flow .flowInner .flowStep {
	width:auto;
	float:none;
	margin:26px 5% 0;
	padding:10px 20px;
}
#flow .flowInner .flowStep:last-child {
	margin-right:5%;
}
#flow p.padding{
	line-height:1.8em;
	margin:0;
	text-align:left;
	padding:15px 5px 0;
}

footer{
	text-align:center;
	padding:15px 10px;
	font-size:12px;
}
footer img{
	float:none;
	display:block;
	width:auto;
	margin:0 auto;
}

footer address {
	float:none;
	font-style: normal;
	margin-top: 0;
}

}
