@charset "UTF-8";
/*-----------------------------------
base
-----------------------------------*/
html {
    overflow-y: auto;
    -webkit-text-size-adjust: 100%;
    -ms-text-size-adjust: 100%;
    font-size: 62.5%;
	overflow-x: hidden;
}
body {
	font-family:"Noto Sans JP", "メイリオ", sans-serif;
	font-size: 21px;
    font-size: 2.1em;
	color: #000;
    line-height: 1.8em;
	letter-spacing:0.05rem;
	font-weight:400;
	background: #fff6f6;
	margin:0 ;
	width: 100%;
	overflow: hidden;
	box-sizing: border-box;
	border-left: 10px solid #000;
	border-right: 10px solid #000;
}
.zenmaru{
	font-family:'Zen Maru Gothic', "メイリオ", sans-serif;
}
.fw700{
	font-weight: 700;
}
.fw500{
	font-weight: 700;
}
h2,h3,h4{
	font-weight:700;
}
img {
    max-width: 100%;
    height: auto;
}
a, a:link, a:visited {
    color: #000;
	text-decoration:none;
    cursor: pointer;
}
a:hover {
	color:#3b3b3b;
	text-decoration:none;
}
.left{
	float: left;
}
.right{
	float: right;
}
.sp{
		display: none;
	}
@media screen and (max-width: 980px) {
	
	.tab{
		display: block;
	}
}
@media screen and (max-width: 740px) {
	body {
		font-size: 14px;
		font-size: 1.4rem;
		border-left: 2px solid #000;
		border-right: none;
	}
	.over{
		/*overflow:hidden !important;*/
		height:100% !important;
	}
	.sp{
		display: block;
	}
	.pc{
		display: none;
	}
}
/*-----------------------------------
clearfix
-----------------------------------*/
.clearfix:after {
    content: ".";
    display: block;
    height: 0;
    clear: both;
    visibility: hidden;
}
.clearfix {
    display: inline-block;
}
* html .clearfix {
    height: 1%;
}
.clearfix {
    display: block;
}
/*-----------------------------------
header
----------------------------------*/
header{
	width: 100%;
	height: 140px;
	padding: 20px 2.5%;
	top:0;
	z-index: 996;
}
header .hd_logo{
	width: 20%;
  	max-width: 200px;
	min-width: 165px;
}
header .hd_mark{
	width: 80px;
  	margin-left: 20px;
}
@media screen and (max-width: 740px) {
	header{
		height: 70px;
		padding: 5px 2.5%;
	}
}
/*-----------------------------------
menu_btn
----------------------------------*/
.menu_btn_wrap {
	width: 90px;
	height: 90px;
	cursor: pointer;
	position: fixed;
	top: 20px;
	right: 40px;
	z-index: 999;
}
.menu_btn_wrap .menu_txt{
	position: absolute;
	bottom: -5px;
	font-size: 16px;
	left: 0;
	right: 0;
	margin: 0 auto;
	text-align: right;
}
.menu_btn,
.menu_btn:before,
.menu_btn:after{
	height: 4px;
	position: absolute;
	transition: all 0.3s;
	background: #000;
}
.menu_btn {
	width: 40px;
	display: block;	
	top: 45px;
	right: 0;
	cursor: pointer;
	box-sizing: border-box;
	z-index: 999;
}
.menu_btn:before {
	width: 60px;
	content: '';
	top: -12px;
	right: 0;
}
.menu_btn:after {
	width: 30px;
	content: '';
	bottom: -12px;
	right: 0;
}
.menu_btn.active {
	background:none;
}
.menu_btn.active:before {
	width: 100%;
	transform:rotate(-135deg);
	top:0;
	right:0;
}
.menu_btn.active:after {
	width: 100%;
	transform:rotate(135deg);
	bottom:0;
	right:0;
}
@media screen and (max-width: 740px) {
	.menu_btn_wrap {
	  width: 90px;
	  height: 90px;
	  top: 0;
	  right: 15px;
	  z-index: 999;
	}
	.menu_btn {
	  width: 40px;
	  top: 30px;
	}
	.menu_btn_wrap .menu_txt {
		font-size: 14px;
		bottom: 15px;
	}
	.menu_btn::before {
	  width: 50px;
	}
	.menu_btn::after {
	  width: 30px;
	  content: '';
	  bottom: -12px;
	  right: 0;
	}
}
/*-----------------------------------

	nav_sp

-----------------------------------*/
#nav_sp{
	width: 100%;
	height: 100vh;
	overflow-y: scroll;
	position: fixed;
	top: 0;
	transition: all 0.35s ease;
	padding:40px 2.5% 160px;
	z-index: 998;
	box-sizing: border-box;
	display: none;
	background: #fff1cc;
}
#nav_sp.toggle{
	right: 0 !important;
	display: block;
}
#nav_sp .dspflex{
	align-items:flex-start;
}
#nav_sp .dspflex .box{
	width: 48%;
	margin-top: 30px;
}
#nav_sp .menu_title{
	width: 60%;
	max-width: 500px;
}
#nav_sp .bg_bk{
	padding: 10px 2.5%;
}
#nav_sp ul{
	margin: 0 auto;
	border: solid 4px #000;
}
#nav_sp ul li{
	box-sizing: border-box;
	border-top: solid 2px #000;
}
#nav_sp ul li:nth-child(1){
	border-top: none;
}
#nav_sp ul li a{
	display: block;
	padding: 10px 2.5%;
	position: relative;
	background: #fff;
}
#nav_sp ul li a:before {
  content: url("../img/common/icon_link_bd_arrow_bk.svg");
  width: 20px;
  top: 10px;
  right: 2%;
  position: absolute;
  transition: all .4s;
  display: block;
}
@media screen and (max-width: 740px) {
	#nav_sp{
		width: 100%;
		height: 100%;
		position: fixed;
		overflow-y: scroll;
		right: -100%;
		transition: all 0.35s ease;
		padding: 20px 2.5% 60px;
		display: inline-block;
		box-sizing: border-box;
	}
	#nav_sp .dspflex .box{
		margin-top: 20px;
	}
	#nav_sp ul {
		border: solid 2px #000;
	}
	#nav_sp ul li a::before {
		width: 10px;
	}
}


/*-----------------------------------

	cta

-----------------------------------*/
.cta{
	background: #ffd1b7;
}
.cta:before{
	content: "";
	background: url("../img/common/deco_cta_top.png");
	width: 100%;
	display: block;
	height: 30px;
	top: -30px;
	position: absolute;

}
.cta .box{
	background: url("../img/common/bg_cta.svg");
	background-size: 95% 85%;
	background-position: center 200px;
	background-repeat: no-repeat;
	padding-bottom: 80px;
}
.cta h2{
	width: 100%;
	max-width:830px ;
	background: url("../img/common/deco_cta_text_01.svg"),url("../img/common/deco_cta_text_02.svg");
	background-position: top left, top right;
	background-size: 30%;
	background-repeat: no-repeat;
}
.cta .img{
	margin-top: -80px;
	width: 100%;
	max-width:790px ;
}
.cta_balloon{
	background: #fff;
	text-align: center;
	padding: 5px 2.5%;
	margin: 0 auto;
	border-radius: 10px;
	position: relative;
	display: inline-block;
}
.cta_balloon span{
	position: relative;
	padding: 0 30px;
}
.cta_balloon span:before,
.cta_balloon span:after{
	content: url("../img/common/icon_slash_g.svg");
	width: 20px;
	position: absolute;
	top: 8px;
}
.cta_balloon span:before{
	left: 0;
}
.cta_balloon span:after{
	right: 0;
	transform: scaleX(-1);
}
.cta_balloon:after{
    border: solid transparent;
    content:'';
    height:0;
    width:0;
    pointer-events:none;
    position:absolute;
    border-color: rgba(255, 255, 255, 0);
    border-top-width:20px;
    border-bottom-width:20px;
    border-left-width:10px;
    border-right-width:10px;
    margin-left: -10px;
    border-top-color:#fff;
    top:100%;
    left:50%;
}
.cta_nav{
	width: 80%;
	margin: 0 auto;
		padding: 10px;
}
.cta_nav ul{
	margin: 0 auto;
	border: solid 4px #ffd1b7;
}
.cta_nav ul li{
	box-sizing: border-box;
	border-top: solid 2px #ffd1b7;
}
.cta_nav ul li:nth-child(1),
.cta_nav ul li:nth-child(3){
	border-right:solid 2px #ffd1b7;
}
.cta_nav ul li:nth-child(1),
.cta_nav ul li:nth-child(2){
	border-top: none;
}
.cta_nav ul li a{
	display: block;
	padding: 10px 2.5%;
	position: relative;
}
.cta_nav ul li a:before {
  content: url("../img/common/icon_link_bd_arrow_o.svg");
  width: 20px;
  top: 10px;
  right: 2%;
  position: absolute;
  transition: all .4s;
  display: block;
}
@media screen and (max-width:960px){
	.cta .box{
		background: none;
		padding-bottom: 60px;
	}
}
@media screen and (max-width:740px){
	.cta{
		width: 100%!important;
	}
	.cta .img{
		margin-top: -10%;
		width: 100%;
		max-width:790px ;
	}
	.cta .box {
		padding-bottom: 40px;
	}
	.cta_nav ul {
	  border: solid 2px #ffd1b7;
	}
	.cta_nav ul li a::before {
	  width: 10px;
	  top: 10px;
	  right: 2%;
	}
	.cta_balloon span::before, .cta_balloon span::after {
	  width: 15px;
	  top: 0px;
	}
}
/*-----------------------------------

	bkbox

-----------------------------------*/
.bkbox .bk_title {
  display: inline-block;
  top: -25px;
}
.bk_title span{
  padding: 8px 5%;
}
.bkbox .bk_txt{
  padding:50px 5% 20px;
}
.bkbox .bk_txt ul li{
	list-style: disc;
	margin:5px 0 5px 2%;
}
@media screen and (max-width: 740px) {
	.bkbox .bk_txt {
	  padding: 20px 5% 20px;
	}

}
/*-----------------------------------
pointbox
----------------------------------*/
.pointbox li{
	padding: 30px 5% 20px;
}
.pointbox li .num{
	margin-right: 10px;
}
.pointbox li .point_text:before{
	width: 150px;
	content: url("../img/common/illust_point_text.svg");
	display: block;
	position: absolute;
	left: -60px;
	top: -40px;
	margin: 0 auto;
	z-index: 1;
}
.pointbox li .img{
	width: 38%;
}
.pointbox li .txt{
	width: 57%;
}
@media screen and (max-width: 740px) {
	.pointbox li {
	  padding: 10px 5% 20px;
	}
	.pointbox li .point_text::before {
		width: 80px;
		left: -20px;
		top: -20px;
	}
}
/*-----------------------------------

	pagetop

-----------------------------------*/
#pagetop{
  position: fixed;
  right: 20px;
  bottom: 50px;
  cursor: pointer;
  z-index: 999;
  background: #fff;
  border: solid 4px #f09eb5;
  border-radius: 50%;
  transition: 0.3s;
  height: 100px;
  width: 100px;
  text-align: center;
  box-sizing: border-box;
  padding-top: 40px;
  font-size: 18px;
  line-height: 2.0rem;
}
#pagetop:before{
	content: url("../img/common/icon_arrow_top_p.svg");
	width: 40px;
	display: inline-block;
	position: absolute;
	top: 10px;
	left: 0;
	right: 0;
	margin: 0 auto;
}
#pagetop:hover{
	bottom:65px!important;
}
@media screen and (max-width: 740px) {
	#pagetop{
		display:none !important;
	}
}
/*-----------------------------------
footer
----------------------------------*/
footer{
	padding-bottom:180px;
}
footer .ft_security{
	padding: 20px 2.5%;
}
footer .ft_security .img{
	width: 10%;
}
footer .ft_security .txt{
	width: 88%;
}
footer .ft_logo{
	width: 60%;
	max-width: 410px;
	margin-left:auto;
	margin-right:auto;
}
footer .ft_nav{
	border-bottom: solid 1px #dedede;
}
footer .ft_nav ul{
	justify-content:flex-start;
}
footer .ft_nav ul li{
	width: 25%;
	margin-top: 20px;
}
footer .ft_nav ul li a{
	position: relative;
	padding-left: 30px;
}
footer .ft_nav ul li a:before{
	content: url("../img/common/icon_link_arrow_bk.svg");
	width: 20px;
	top: 0;
	left: 0;
	position: absolute;
	transition: all .4s;
	display: block;
}
footer .ft_subnav li{
	float: left;
	margin-right: 20px;
}
@media screen and (max-width: 740px) {
	footer{
		padding-bottom: 100px!important;
	}
	footer .ft_security{
		width: 95%;
		padding: 20px 2.5%;
	}
	footer .ft_security .img,
	footer .ft_security .txt{
		float: none!important;
	}
	footer .ft_security .img{
		width: 15%;
		max-width: 100px;
    margin: 0 auto;
	}
	footer .ft_security .txt{
		width: 100%;
		float: none!important;
	}
	footer .ft_security .txt .zenmaru{
		margin-top: 20px;
	}
	footer .ft_nav {
		border-bottom: solid 2px #ffd1b7;
	  	padding-bottom: 0;
	}
	footer .ft_nav ul li {
		width: 50%;
		margin-top: 0;
		border-top: solid 1px #ffd1b7;
		box-sizing: border-box;
	}
	footer .ft_nav ul li:nth-child(2n) {
		  border-left: solid 1px #ffd1b7;
		}
	footer ul li a {
		padding: 15px 0;
		display: block;
	}
	footer .ft_nav ul li a::before {
	  display: none;
	}
	.ft_subnav,
	.ft_copy {
		text-align: center;
		float: none!important;
	}
	.ft_subnav {
		width: 100%;
	}
	footer .ft_subnav li {
	  float: none;
	  margin: 0 2%;
	  display: inline-block;
	}
}


/*-----------------------------------
btn
-----------------------------------*/
.common_btn:after,
.taiken_btn:before{
	position: absolute;
}
.common_btn{
	width: 90%;
	max-width: 640px;
	text-align: center;
	color: #fff!important;
	display: block;
	margin: 30px auto 20px;
	padding: 25px 2.5%;
	transition: all .4s;
	position: relative;
	border-radius: 60px;
	box-sizing: border-box;
}
.common_btn:after{
	content: url("../img/common/icon_link_arrow_w.svg");
	width: 35px;
	  right: 3%;
	  top: 28%;
	transition: all .4s;
}
.common_btn:hover:after{
	right: 2%;
}
.link_btn{
	background: #000;
}
.link_btn:hover{
	background: #161616;
}
.line_btn{
	color: #fff;
	background: #39c519;
	box-shadow: 0px 2px 0px 7px rgb(39, 145, 15);
	box-sizing: border-box;
}
.line_btn:hover{
	background: #31b113;
}
.line_btn:before{
	content: url("../img/common/icon_line_w.svg");
	width: 54px;
	left: 5%;
	top: 20px;
	position: absolute;
}
.mail_btn{
	width: 50%;
	color: #fff;
	background: #7a7a7a;
	box-shadow: 0px 2px 0px 7px rgb(255, 255, 255);
	box-sizing: border-box;
}
.mail_btn:hover{
	background: #535353;
}
.mail_btn:before{
	content: url("../img/common/icon_mail_w.svg");
	width: 50px;
	left: 5%;
	top: 20px;
	position: absolute;
}
@media screen and (max-width: 960px) {
.mail_btn{
		width: 70%;
	}
}
@media screen and (max-width: 740px) {
	 .common_btn {
		width: 80%;
		margin: 30px auto 0;
		padding: 15px 2.5%;
	  }
	.common_btn::after {
		width: 18px;
		top: 32%;
		right: 5%;
	}
	.line_btn {
	  box-shadow: 0px 2px 0px 4px rgb(39, 145, 15);
	}
	.line_btn::before {
		width: 35px;
		left: 5%;
		top: 15px;
	}
	.mail_btn{
		width: 70%;
		box-shadow: 0px 2px 0px 4px rgb(255, 255, 255);
	}
	.mail_btn::before {
		width: 30px;
		left: 7%;
		top: 17px;
	}
	.cv_two a{
		padding: 5px 2.5%;
		border-radius: 80px;
	}
}
/*-----------------------------------
fix
-----------------------------------*/
#fix{
	position: fixed;
	bottom: 0;
	left: 0;
	right: 0;
	z-index: 996;
	padding: 20px 0;
}
#fix a{
	width: 100%;
	margin: 0;
	padding: 15px 0;
}
#fix .dspflex_48p li {
  width: 49%;
}
#fix a.line_btn::before {
  width: 45px;
  top: 10px;
}
#fix a.mail_btn::before {
 width: 40px;
  top: 15px;
}
#fix a.common_btn::after {
  width: 30px;
}
@media screen and (max-width: 740px) {
	#fix {
	  padding: 10px 3%;
	}
	#fix a {
		font-size: 1.4rem;
  		line-height: 1.4rem;
		box-shadow: none;
		padding:10px 0 10px 10%;
	}
	#fix .common_btn::after {
		display: none;
	 }
	#fix a.line_btn::before {
		width: 20px;
		top: 15px;
		left: 9%;
	}
	#fix a.mail_btn::before {
	 width: 20px;
	  top: 15px;
	}
	
}
/*-----------------------------------
font-size
-----------------------------------*/
.fz16{
	font-size: 1.6rem;
	line-height: 2.4rem;
}
.fz18{
	font-size: 1.8rem;
	line-height: 3.0rem;
}
.fz24{
	font-size: 2.4rem;
	line-height: 3.0rem;
}
.fz32{
	font-size: 3.2rem;
	line-height: 3.6rem;
}
.fz36{
	font-size: 3.6rem;
	line-height: 4.2rem;
}
.fz42{
	font-size: 4.2rem;
	line-height: 4.8rem;
}
.fz46{
	font-size: 4.6rem;
	line-height: 4.8rem;
}
.fz48{
	font-size: 4.8rem;
	line-height: 5.2rem;
}
.fz60{
	font-size: 6.0rem;
	line-height: 1rem;
}
.fz82{
	font-size: 8.2rem;
	line-height: 1;
}

.fz120{
	font-size: 120px;
	line-height: 1;
}

@media screen and (max-width: 740px) {
	.fz16{
		font-size: 1.2rem;
		line-height: 2.1rem;
	}
	.fz18,
	.fz20,
	.fz24{
		font-size: 1.4rem;
		line-height: 2.8rem;
	}
	.fz32,
	.fz36{
		font-size: 1.8rem;
		line-height: 3.0rem;
	}
	.fz42,
	.fz46,
	.fz48{
		font-size: 2.4rem;
		line-height: 2.8rem;
	}
	.fz60,
	.fz82,
	.fz120{
		font-size: 4.0rem;
		line-height: 1;
	}
}
/*-----------------------------------
width
-----------------------------------*/
.mx900,.mx780,.mx740,.mx640{
	width: 100%;
	margin: 0 auto;
}
.mx900{
	max-width: 900px;
}
.mx780{
	max-width: 780px;
}
.mx740{
	max-width: 740px;
}
.mx640{
	max-width: 640px;
}
.mga{
	margin: 0 auto;
}
.mgt10{
	margin-top: 10px;
}
.mgt15{
	margin-top: 15px;
}
.mgt20{
	margin-top: 20px;
}
.mgt30{
	margin-top: 30px;
}
.mgt40{
	margin-top: 40px;
}
.mgt60{
	margin-top: 60px;
}
.mgt80{
	margin-top: 80px;
}
.pdt20{
	padding-top: 20px;
}
.pdt40{
	padding-top: 40px;
}
.pdt60{
	padding-top: 60px;
}
.pdt80{
	padding-top: 80px;
}
.pdb20{
	padding-bottom: 20px;
}
.pdb40{
	padding-bottom: 40px;
}
.pdb60{
	padding-bottom: 60px;
}
.pdb80{
	padding-bottom: 80px;
}
.pdtb20{
	padding-top: 20px;
	padding-bottom: 20px;
}
.pdtb40{
	padding-top: 40px;
	padding-bottom: 40px;
}
.pdlr25p{
	padding-left: 2.5%;
	padding-right: 2.5%;
	box-sizing: border-box;
}
.bds4{
	border: solid 4px #000;
}
.bdbs1{
	padding-bottom: 10px;
	border-bottom: solid 1px #000;
}
.bdbs1_g{
	border-bottom: solid 2px #15b3a5;
}
@media screen and (max-width: 960px) {
	.mx900{
		width: 97%;
	}
	.mx780,.mx740{
		width: 96%;
	}
	.mx640{
		width: 93%;
	}
}
@media screen and (max-width: 740px) {
	
	.mgt20 {
	  margin-top: 10px;
	}
	.mgt30 {
	  margin-top: 15px;
	}
	.mgt40{
		margin-top: 20px;
	}
	.mgt60{
		margin-top: 40px;
	}
	.mgt80 {
	  margin-top: 60px;
	}
	.pdt20{
		padding-top: 10px;
	}
	.pdt40{
		padding-top: 20px;
	}
	.pdt60{
		padding-top: 40px;
	}
	.pdt80{
		padding-top: 60px;
	}
	.pdb20{
		padding-bottom: 10px;
	}
	.pdb40{
		padding-bottom: 20px;
	}
	.pdb60{
		padding-bottom: 40px;
	}
	.pdb80{
		padding-bottom: 60px;
	}
	.pdtb40{
		padding-top: 40px;
		padding-bottom: 40px;
	}
	.pdtb20{
		padding-top: 20px;
		padding-bottom: 20px;
	}
	.pdb40{
		padding-bottom: 30px;
	}
	.pdtb40{
		padding-top: 30px;
		padding-bottom: 30px;
	}
	.bds4{
		border: solid 2px #000;
	}
}
/*-----------------------------------
radius
-----------------------------------*/
.dspbk{
	display: block;
}
.dspflex{
	display: flex;
	align-items: center;
	flex-wrap: wrap;
	justify-content: space-between;
}
.dspflex_50p li{
	width: 50%;
}
.dspflex_49p li{
	width: 49%;
}
.dspflex_48p li{
	width: 48%;
}
.dspflex_48p_sp li{
	width: 48%;
}
.rot_5{
	transform:rotate(5deg);
}
.rot__5{
	transform:rotate(-5deg);
}
.txt_w{
	color: #fff;
}
.txt_r{
	color: #eb5151;
}
.txt_g{
	color: #15b3a5;
}
.txt_p{
	color: #f09eb5;
}
.txt_dp{
	color: #f25e88;
}
.txt_line_g{
	color: #2aab0c;
}
.txt_v{
	color: #a88ec5;
}
.txt_b{
	color: #578dc9;
}
.txt_o{
	color: #f1752a;
}
.txt_v{
	color: #a255b7;
}
.txt_gy{
	color: #9e9e9e;
}
.txt_al{
	text-align: left;
}
.txt_ar{
	text-align: right;
}
.txt_ac{
	text-align: center;
}
@media screen and (max-width: 740px) {
	.dspflex_48p_sp li{
		width: 100%;
	}
}
/*-----------------------------------
bg
-----------------------------------*/
.bg_bk{
	background:#000;
}
.bg_w{
	background:#fff;
}
.bg_r{
	background: #eb5151;
}
.bg_gry{
	background:#8a8a8a;/*グレー色*/
}
.bg_oy{
	background: rgb(255,209,183);
	background: linear-gradient(90deg, rgba(255,209,183,1) 0%, rgba(255,209,183,1) 50%, rgba(255,241,204,1) 50%, rgba(255,241,204,1) 100%);
}
.bg_oy{
	background: rgb(255,231,218);
	background: linear-gradient(90deg, rgba(255,231,218,1) 0%, rgba(255,231,218,1) 50%, rgba(255,241,204,1) 50%, rgba(255,241,204,1) 100%);
}
.bg_stripe_g{
	background:url("../img/common/bg_stripe_g.png");
}
.bg_stripe_r{
	background:url("../img/common/bg_stripe_r.png");
}
.bg_ly{
	background:#fffde6;/*薄黄色色*/
}
.bg_lo{
	background:#fff3e7;/*薄オレンジ色*/
}
.bg_o{
	background:#e98810;/*オレンジ色*/
}
.bg_do{
	background: #fba840;
}
.bg_lp{
	background:#fdf2f4;/*薄ピンク色*/
}
.bg_lb{
	background:#e3f7f9;/*薄水色*/
}
.bg_lv{
	background:#fff6ff;/*薄紫*/
}
.bg_lg{
	background:#e6f2f1;/*薄緑*/
}
.bg_dp{
	background:#f8e5e5;
}
.bsbb{
	box-sizing: border-box;
}
.bdr10{
	border-radius: 10px; 
}
.bdr50{
	border-radius: 50%; 
}
/*-----------------------------------
position
-----------------------------------*/
.ps_r{
	position: relative;
}
.ps_a{
	position: absolute;
}
.ps_mga{
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
}
/*-----------------------------------
icon_title
-----------------------------------*/
.icon_title{
	position: relative;
	padding-left: 80px;
}
.icon_title:before{
	width: 50px;
	position: absolute;
	left: 15px;
}

@media screen and (max-width:740px){
	.icon_title {
	  padding-left: 50px;
	}
	.icon_title:before{
		width: 25px;
	}
}
/*-----------------------------------
disclist
-----------------------------------*/
.disclist{
	margin-left: 30px;
}
.disclist li{
	list-style: disc;
}
/*-----------------------------------
slide
----------------------------------*/
.slider {
  width: 700px;
  margin: 30px auto 0;
}
.slider .slick-list {
  padding: 0 30% 0 0!important;
}
.slider .slick-slide {
	margin: 0 10px;
	padding: 20px;
}
.slider .slick-slide figcaption {
  margin: 10px 0 0;
}
.banner_slider .slick-slide {
	margin: 0 10px;
	padding: 0;
}
.bk_slider .bk_title {
	text-align: center;
	padding: 10px 2.5%;
	box-sizing: border-box;
	}
.bk_slider .bk_txt{
  padding:20px 5%;
}
.bk_slider .bk_txt dl dt{
	width: 30%;
	float: left;
	padding: 10px 0;
	line-height: 2.8rem;
}
.bk_slider .bk_txt dl dd{
	border-bottom: dotted 2px #d9d9d9;
	padding:10px 0 10px 30% ;
	line-height: 2.8rem;
}
.bk_slider .bk_txt ul li{
	list-style: disc;
	margin:5px 0 5px 20px;
}
@media screen and (max-width:740px){
  .slider {
    width: 100%;
	margin-top: 30px;
  }
	.slider .slick-slide {
		padding: 10px;
	}
	.banner_slider li {
	  margin: 0px 5px;
	}
	.bk_slider .bk_txt {
		font-size: 1.3rem;
		padding: 0;
	}
  .bk_slider .bk_txt ul li{
		padding: 0;
		line-height: 1.8rem;
	}
	.bk_slider .bk_txt dl dt {
	  width: 100%;
	  float: none;
	  padding: 5px 0 0;
	  line-height:1.8rem;
	}
	.bk_slider .bk_txt dl dd {
	  padding: 0 0 5px;
	  line-height:1.8rem;
	}
	.bk_slider .bk_txt dl dd .fz32{
		font-size: 1.6rem;
		line-height: 2.1rem;
	}
}

/*-----------------------------------
accordion_list
----------------------------------*/
.accordion_list{
	box-sizing: border-box;
}
.accordion_list dt {
	padding: 30px 2.5% 20px;
	cursor: pointer;
}
.accordion_list dd{
	display: none;
	padding: 0 2.5% 15px;
}
.accordion_list .accordion_title{
	width: 90%;
	float: left;
	position: relative;
	box-sizing: border-box;
}
.accordion_list .accordion_title::before {
	width: 6%;
	max-width: 40px;
	position: absolute;
	left: 0;
}
.accordion_list .accordion_icon{
	content: url("../img/common/icon_link_arrow_bk.svg");
	width: 40px;
	height: 40px;
	float: right;
	transform: rotate(90deg);
	transition: all .4s;
}
.accordion_list .accordion_icon.active{
	transform: rotate(-90deg)!important;
}
.accordion_list_p{
	border: solid 3px #f1b4b4;
}
.accordion_list_g{
	border: solid 3px #15b3a5;
}
.accordion_list_g .accordion_icon{
	content: url("../img/common/icon_link_arrow_g.svg")!important;
}
.accordion_list_yg{
	border: 3px solid #93d219;
}
.accordion_list_yg .accordion_icon{
	content: url("../img/common/icon_link_arrow_yg.svg")!important;
}

.accordion_img dt {
  padding: 10px 2.5%;
}
.accordion_img dt .img{
	width: 10%;
	float: left;
}
.accordion_img .accordion_title {
  width: 80%;
  float: left;
  padding:15px 0 0 2%;
}
.accordion_img .accordion_icon{
	margin-top: 15px;
}
@media screen and (max-width:740px){
	.accordion_list dt {
		padding: 10px 2.5%;
	}
	.accordion_list .accordion_icon{
		width: 20px;
		height: 20px;
		margin-top: 5px;
	}
	.accordion_list{
		border-width: 2px!important;
	}
	.accordion_img .accordion_title {
	  padding: 4px 0 0 2%;
	}
	.accordion_img .accordion_icon {
	  margin-top: 8px;
	}
}

/*-----------------------------------
flash
-----------------------------------*/
.flash{
  animation: flash 2.0s linear infinite;
}
@keyframes flash {
  0%,100% {
    opacity: 1;
  }

  50% {
    opacity: 0.1;
  }
}