@charset "utf-8";
/*== view ==*/
.pc_view {display:block;}
.sp_view{display: none;}
.none{display: none;}

/*== wrap ==*/
.wrap{
	position: relative;
	width: 1100px;
	margin: 0 auto;
	box-sizing: border-box;
	z-index: 1;
}

/*== margin ==*/
.mat5{margin-top: 5px;}
.mat10{margin-top: 10px;}
.mat15{margin-top: 15px;}
.mat20{margin-top: 20px;}
.mat25{margin-top: 25px;}
.mat30{margin-top: 30px;}
.mat40{margin-top: 40px;}
.mat45{margin-top: 45px;}
.mat50{margin-top: 50px;}
.mat60{margin-top: 60px;}
.mat70{margin-top: 70px;}
.mat80{margin-top: 80px;}

.mab5{margin-bottom: 5px;}
.mab10{margin-bottom: 10px;}
.mab15{margin-bottom: 15px;}
.mab20{margin-bottom: 20px;}
.mab25{margin-bottom: 25px;}
.mab30{margin-bottom: 30px;}
.mab40{margin-bottom: 40px;}
.mab45{margin-bottom: 45px;}
.mab50{margin-bottom: 50px;}
.mab60{margin-bottom: 60px;}
.mab70{margin-bottom: 70px;}
.mab80{margin-bottom: 80px;}

/*== text-align ==*/
.AL_left{text-align: left;}
.AL_right{text-align: right;}
.AL_center{text-align: center!important;}

/*== position ==*/
.centering{
	display: block;
	margin-left: auto;
	margin-right: auto;
}

/*== section ==*/
.section{
	padding: 45px 0;
}

/*== bold ==*/
.bold{
	font-weight: 700;
}

/*== layout box ==*/
.box {
	position: relative;
	box-sizing: border-box;
	float: left;
	margin: 0;
	padding: 0;
}
.box_wrap{
	overflow: hidden;
}
/* layout box - unit */
.box.pc1unit { width: 8.33%; }
.box.pc2unit { width: 16.66%; }
.box.pc2_5unit { width: 20%; }
.box.pc3unit { width: 25%; }
.box.pc3_5unit { width: 29.16%; }
.box.pc4unit { width: 33.32%; }
.box.pc5unit { width: 41.65%; }
.box.pc5_5unit { width: 45.82%; }
.box.pc6unit { width: 50%; }
.box.pc6_5unit { width: 54.16%; }
.box.pc7unit { width: 58.33%; }
.box.pc8unit { width: 66.66%; }
.box.pc9unit { width: 74.99%; }
.box.pc10unit { width: 83.32%; }
.box.pc11unit { width: 91.65%; }
.box.pc12unit { width: 100%; }

/* layout box - padding */
.box.pad10 { padding: 0 5px; }
.box.pad20 { padding: 0 10px; }
.box.pad30 { padding: 0 15px; }
.box.pad40 { padding: 0 20px; }
.box.pad50 { padding: 0 25px; }
.box.pad60 { padding: 0 30px; }
.box.pad70 { padding: 0 35px; }
.box.pad80 { padding: 0 40px; }

/* layout box_wrap - fill */
.box_wrap.fill10 {
	margin-left: -5px;
	margin-right: -5px;
}
.box_wrap.fill20 {
	margin-left: -10px;
	margin-right: -10px;
}
.box_wrap.fill30 {
	margin-left: -15px;
	margin-right: -15px;
}
.box_wrap.fill40 {
	margin-left: -20px;
	margin-right: -20px;
}
.box_wrap.fill50 {
	margin-left: -25px;
	margin-right: -25px;
}
.box_wrap.fill60 {
	margin-left: -30px;
	margin-right: -30px;
}
.box_wrap.fill70 {
	margin-left: -35px;
	margin-right: -35px;
}
.box_wrap.fill80 {
	margin-left: -40px;
	margin-right: -40px;
}
/*========================================================
					text
========================================================*/
p.txt{
	line-height: 2;
	text-align: justify;
    text-justify: inter-ideograph;
}
p.kome{
	font-size: 14px;
	line-height: 1.5;
	padding-left: 15px;
	text-indent: -13px;
}
/*========================================================
					header
========================================================*/
header .logo a{
	transition: all .3s ease;
}
header .logo a:hover{
	opacity: 0.7;
}
header .header_left{
	float: left;
	width: 300px;
	padding: 51px 0 35px;
}
header .header_right{
	float: right;
	width: 700px;
	padding: 22px 0;
}
header .header_right .btn_contact{
	float: right;
	position: relative;
	overflow: hidden;
	transition: all .1s ease;
	background: url(../images/icon_mail.png) no-repeat center left 36px, -moz-linear-gradient(45deg, #ff6155, #ff7b22);
	background: url(../images/icon_mail.png) no-repeat center left 36px, -webkit-linear-gradient(45deg, #ff6155, #ff7b22);
	background: url(../images/icon_mail.png) no-repeat center left 36px, linear-gradient(45deg, #ff6155, #ff7b22);
}
/*========================================================
	 				footer
========================================================*/
footer {
	background: #194C89;
	color: #fff;
	overflow: hidden;
	box-shadow: 0px 1px #194C89;
}
footer .footer_left{
	float: left;
	width: 300px;
	padding: 40px 0 35px;
}
footer .footer_right{
	float: right;
	width: 700px;
	padding: 22px 0;
}
footer .copyright{
	text-align: right;
	font-size: 14px;
	padding: 28px 0;
}
/*========================================================
	 				pagetop
========================================================*/
#pagetop{
	position: fixed;
	right: 40px;
	bottom: 40px;
	width: 58px;
	height: 58px;
	background: url("../images/btn_pagetop.png") no-repeat center;
	background-size: 60px 60px;
	z-index: 777;
	cursor: pointer;
	box-shadow: 0px 0 8px rgba(0,0,0,0.2);
	border-radius: 60px;
}
/*========================================================
	 					midashi
========================================================*/
/* h4 */
h4{
	position: relative;
	font-size: 26px;
	font-weight: 700;
	letter-spacing: 3px;
	margin-bottom: 15px;
}
h4 .small{
	font-size: 16px;
	vertical-align: 3px;
}
h4.after_dots{
	text-align: center;
	padding-bottom: 40px;
    background: url(../images/icon_dots.png) no-repeat center bottom 15px;
	margin-bottom: 0;
}
h4.after_dots.left{
	text-align: left;
	padding-bottom: 40px;
    background: url(../images/icon_dots.png) no-repeat left bottom 15px;
	margin-bottom: 0;
}
h4.check{
	width: 210px;
	padding-left: 50px;
	margin: 0 auto 25px;
	background: url("../images/icon_check.png") no-repeat left center;
}
h4.check span{
	font-size: 35px;
}
/* block ttl */
.ttl_area {
	text-align: center;
	margin-bottom: 35px;
}
.ttl_area .midashi_italic{
	font-size: 50px;
	font-weight: 700;
	transform: skewX(-10deg);
	letter-spacing: 3px;
	margin-bottom: 20px;
}
.ttl_area p{
	font-size: 16px;
	font-weight: 700;
	color: #38bfff;
	transform: skewX(-10deg);
}

/* midashi */
.midashi_question{
	font-size: 32px;
    font-weight: 700;
    text-align: center;
    color: #1b9be2;
    width: 265px;
	margin: 0 auto 20px;
    padding-left: 39px;
    background: url(../images/icon_question.png) no-repeat center left;
    background-size: 34px auto;
    line-height: 1.4;
}
.midashi_large{
	position: relative;
	font-size: 42px;
	font-weight: 700;
    letter-spacing: 3px;
    text-align: center;
	margin: 45px auto 40px;
	width: 580px;
}
.midashi_large::after{
    content: "";
    position: absolute;
    width: 100%;
    height: 18px;
    background: rgba(255,219,67,0.7);
    bottom: -10px;
    left: 0;
    z-index: -1;
}
.midashi_large.hac{
	color: #136ea0;
}
.midashi_large.yuugu{
	color: #1ea276;
}
.midashi_fukidashi{
	position: relative;
	text-align: center;
	font-size: 32px;
	color: #fff;
	background: #38bfff;
	background-size: cover,auto;
	font-weight: 700;
	letter-spacing: 3px;
	padding: 16px 15px 18px;
	margin-bottom: 45px;
}
.midashi_fukidashi::after{
    content: "";
    position: absolute;
    bottom: -12px;
    left: 50%;
    margin-left: -17px;
    width: 0px;
    height: 0px;
    border-style: solid;
    border-width: 15px 17px 0 17px;
    border-color: #38bfff transparent transparent transparent;
}

/*========================================================
	 					btn
========================================================*/
.btn_contact{
    display: block;
    position: relative;
    font-size: 24px;
    text-align: center;
	background: url("../images/icon_mail.png") no-repeat center left, -moz-linear-gradient(45deg, #ff6155, #ff7b22);
	background: url("../images/icon_mail.png") no-repeat center left, -webkit-linear-gradient(45deg, #ff6155, #ff7b22);
	background: url("../images/icon_mail.png") no-repeat center left, linear-gradient(45deg, #ff6155, #ff7b22);
    box-sizing: border-box;
    padding: 27px 0;
    border-radius: 80px;
    color: #fff;
    letter-spacing: 0.5px;
    font-weight: 700;
    line-height: 1;
    margin: 0 auto;
    width: 260px;
	height: 80px;
    box-shadow: 0px 0 5px rgba(0,0,0,0.2);
    background-size: 20px 20px, auto;
	text-indent: 40px;
	overflow: hidden;
}
.btn_contact.long{
	width: 360px;
	background: url("../images/icon_mail.png") no-repeat center left 40px, -moz-linear-gradient(45deg, #ff6155, #ff7b22);
	background: url("../images/icon_mail.png") no-repeat center left 40px, -webkit-linear-gradient(45deg, #ff6155, #ff7b22);
	background: url("../images/icon_mail.png") no-repeat center left 40px, linear-gradient(45deg, #ff6155, #ff7b22);
}
.btn_contact::before{
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,0.15);
    content: '';
    -webkit-transition: -webkit-transform 0.4s;
    -moz-transition: -moz-transform 0.4s;
    transition: transform 0.4s;
    transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,130deg) translate3d(0,215%,0);
    -webkit-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,140deg) translate3d(0,215%,0);
    -moz-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,140deg) translate3d(0,215%,0);
}
.btn_contact:hover::before{
    transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,130deg) translate3d(0,-215%,0);
    -webkit-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,140deg) translate3d(0,-215%,0);
    -moz-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,140deg) translate3d(0,-215%,0);
}
.btn_contact:hover{
	box-shadow: 0px 0 8px rgba(0,0,0,0.2);
}

.btn_normal{
    display: block;
    position: relative;
    font-size: 24px;
    text-align: center;
	background: -moz-linear-gradient(60deg, #38bfff, #5ac5a1);
	background: -webkit-linear-gradient(60deg, #38bfff, #5ac5a1);
	background: linear-gradient(60deg, #38bfff, #5ac5a1);
    box-sizing: border-box;
    padding: 27px 0;
    border-radius: 80px;
    color: #fff;
    letter-spacing: 0.5px;
    font-weight: 700;
    line-height: 1;
    margin: 0 auto;
    width: 360px;
	height: 80px;
    box-shadow: 0px 0 5px rgba(0,0,0,0.2);
	overflow: hidden;
}
.btn_normal::before{
	position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background: rgba(255,255,255,0.15);
    content: '';
    -webkit-transition: -webkit-transform 0.4s;
    -moz-transition: -moz-transform 0.4s;
    transition: transform 0.4s;
    transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,130deg) translate3d(0,215%,0);
    -webkit-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,140deg) translate3d(0,215%,0);
    -moz-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,140deg) translate3d(0,215%,0);
}
.btn_normal:hover::before{
    transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,130deg) translate3d(0,-215%,0);
    -webkit-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,140deg) translate3d(0,-215%,0);
    -moz-transform: scale3d(1.9,1.4,1) rotate3d(0,0,1,140deg) translate3d(0,-215%,0);
}

/*========================================================
 INview
========================================================*/
/*==========fadein==========*/
.fadein{
    opacity: 0;
	transition: opacity 1s ease;	
}
.fadeIn{
	opacity: 1;
}
.fadein_bottom{
    opacity: 0;
    -webkit-transform: translate3d(0, 50px, 0);
    transform: translate3d(0, 50px, 0);
	transition: all .7s ease;
}
.fadeInFromBottom{
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}
.fadein_left{
    opacity: 0;
    -webkit-transform: translate(-30px, 0);
    transform: translate(-30px, 0);
	transition: all .7s ease;
}
.fadeInFromLeft{
    opacity: 1;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}