@charset "UTF-8";
/*
フッターに必要なリセットCSS
*/
.wrapper div, .wrapper span, .wrapper object, .wrapper iframe,
.wrapper h1, .wrapper h2, .wrapper h3, .wrapper h4, .wrapper h5, .wrapper h6, .wrapper p, .wrapper blockquote,
.wrapper a, .wrapper abbr, .wrapper address, .wrapper cite, .wrapper code,
.wrapper del, .wrapper dfn, .wrapper em, .wrapper img, .wrapper ins, .wrapper kbd, .wrapper q, .wrapper samp,
.wrapper small, .wrapper strong, .wrapper sub, .wrapper sup, .wrapper var,
.wrapper b, .wrapper i,
.wrapper dl, .wrapper dt, .wrapper dd, .wrapper ol, .wrapper ul, .wrapper li,
.wrapper fieldset, .wrapper form, .wrapper label, .wrapper legend,
.wrapper table, .wrapper caption, .wrapper tbody, .wrapper tfoot, .wrapper thead, .wrapper tr, .wrapper th, .wrapper td,
.wrapper article, .wrapper aside, .wrapper footer, .wrapper header, .wrapper hgroup, .wrapper menu, .wrapper nav, .wrapper section, .wrapper summary
{
    margin:0;
    padding:0;
    border:0;
    outline:0;
}
.wrapper ul {
    list-style:none;
}
.wrapper table {
    border-collapse:collapse;
    border-spacing:0;
}

/*
フッターのCSS
*/

.wrapper a{
	transition:0.1s linear all;
	/* color:#231815;
	text-decoration:none; */
}
/* a.under{
	text-decoration:underline;
} */
/* a:hover{ text-decoration:underline; } */
/* a.under:hover{
	text-decoration:none;
} */
.wrapper li{ list-style-type:none; }
.wrapper p,
.wrapper th,
.wrapper td,
.wrapper li,
.wrapper dt,
.wrapper dd,
.wrapper h1,
.wrapper h2,
.wrapper h3,
.wrapper h4,
.wrapper h5,
.wrapper h6{ line-height: 1.8em; }
.wrapper img{ border:none !important; max-width:100%; height:auto;}
.wrapper input,
.wrapper textarea{
	font-family: 'Noto Sans JP', "游ゴシック体", YuGothic, "Yu Gothic M", "游ゴシック Medium", "Yu Gothic Medium", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN W3", HiraKakuProN-W3, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "ヒラギノ角ゴ Pro", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", "Helvetica Neue", HelveticaNeue, Helvetica, Arial, "Segoe UI", sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol", "Noto Color Emoji";
}
.wrapper table tbody {
    -webkit-text-size-adjust: 100%;
  } 
.wrapper .gre{
	font-family: 'BIZ UDPGothic';
	font-size:110%;
	margin:0 !important;
	padding:0 !important;
}
.wrapper .effect-fade{
	opacity:0;
	transform:translate(0,60px);
	transition:all 1000ms;
}
.wrapper .effect-fade.effect-scroll {
	opacity:1;
	transform:translate(0, 0);
}
.wrapper .lefteffect{
	transform:translateX(-15%);
	opacity:0;
	transition:opacity 1000ms,transform 1000ms;
}
.wrapper .righteffect{
	transform:translateX(15%);
	opacity:0;
	transition:opacity 1000ms,transform 1000ms;
}
.wrapper .fadein{
	opacity:1;
	transform:translateX(0);
}

/* 文字装飾 */
.regular{ font-weight:400; }
.medium{ font-weight:500; }
.semibold{ font-weight:600; }
.bold{ font-weight:700; }
.black{ font-weight:900; }

.left{ text-align:left; }
.center{ text-align:center; }
.right{ text-align:right; }
.italic{ font-style:italic; }

.white{ color:#fff; }
.green{ color:#009358; }
.green2{ color:#008e3c; }
.green3{ color:#04a559; }
.green4{ color:#3baf4a; }
.green5{ color:#006932; }
.orange{ color:#ff6c00; }
.orange2{ color:#e79501; }
.orange3{ color:#ec6600; }
.orange4{ color:#c88c0e; }
.red{ color:red; }
.blue{ color:#0082d2; }
.darkred{ color:#b83f4f; }
.pink{ color:#e73262; }
.purple{ color:#7774b5; }
.purple2{ color:#714f9c; }
.aqua{ color:#00866f; }
.aqua2{ color:#0097e0; }
.aqua3{ color:#006150; }
.navy{ color:#0e0d6a; }
.yellow{ color:#c88c0e; }

/* 背景 */
.bg_lightgreen{ background:#eff4e9; }
.bg_lightgreen2{ background:#00be12; }
.bg_green{ background:#009358; }
.bg_green2{ background:#00814d; }
.bg_green3{ background:#008e3c; }
.bg_green4{ background:#04a559; }
.bg_green5{ background:#aed4b0; }
.bg_green6{ background:#dceddd; }
.bg_green7{ background:#006932; }
.bg_green8{ background:#adc8ad; }
.bg_green9{ background:#d2e1d2; }
.bg_green10{ background:#9bd4be; }
.bg_green11{ background:#daece5; }
.bg_green12{ background:#eaf6f1; }
.bg_orange{ background:#ff9000; }
.bg_orange2{ background:#ff6c00; }
.bg_orange3{ background:#ec6600; }
.bg_orange4{ background:#c88c0e; }
.bg_orange5{ background:#fce4cd; }
.bg_orange6{ background:#f5a667; }
.bg_orange7{ background:#ffba87; }
.bg_orange8{ background:#ffe6d4; }
.bg_red{ background:red; }
.bg_white{ background:white; }
.bg_gray{ background:#f6f6f6; }
.bg_gray2{ background:#e1e1e1; }
.bg_lightgray{ background:#ececec; }
.bg_lightgray2{ background:#f6f6f6; }
.bg_navy{ background:#0e0d6a; }
.bg_ins{ background: linear-gradient(135deg,  #405de6 0%,#5851db 11%,#833ab4 22%,#c13584 33%,#e1306c 44%,#fd1d1d 55%,#f56040 66%,#f77737 77%,#fcaf45 88%,#ffdc80 100%); }
.bg_blue{ background:#0082d2; }
.bg_blue2{ background:#d2ddf1; }
.bg_blue3{ background:#a3bde2; }
.bg_pink{ background:#e73262; }
.bg_pink2{ background:#fdeaee; }
.bg_pink3{ background:#f7c3cf; }
.bg_darkred{ background:#b83f4f; }
.bg_darkred2{ background:#f2dad7; }
.bg_darkred3{ background:#e4b3b0; }
.bg_purple{ background:#7774b5; }
.bg_purple2{ background:#7a5ba3; }
.bg_purple3{ background:#cdbfe8; }
.bg_purple4{ background:#dad2e9; }
.bg_aqua{ background:#00866f; }
.bg_aqua2{ background:#0097e0; }
.bg_aqua3{ background:#d3eaf8; }
.bg_aqua4{ background:#add4ec; }
.bg_aqua5{ background:#d5edea; }
.bg_aqua6{ background:#a2d7d0; }
.bg_aqua7{ background:#006150; }
.bg_aqua8{ background:#a0c4bf; }
.bg_aqua9{ background:#c5dad7; }
.bg_lightyellow{ background:#fffde9; }
.bg_yellow{ background:#fffac1; }
.bg_yellow2{ background:#c88c0e; }
.bg_yellow3{ background:#e8cc9b; }
.bg_yellow4{ background:#feefd4; }

/* 文字サイズ */
.size10{ font-size:10px; }
.size11{ font-size:11px; }
.size12{ font-size:12px; }
.size14{ font-size:14px; }
.size16{ font-size:16px; }
.size18{ font-size:18px; }
.size21{ font-size:21px; }
.size24{ font-size:24px; }
.size27{ font-size:27px; }
.size30{ font-size:30px; }
.size32{ font-size:32px; }
.size36{ font-size:36px; }
.size42{ font-size:42px; }
.size48{ font-size:48px; }
.size60{ font-size:60px; }

.size1 .size10{ font-size:12px; }
.size1 .size11{ font-size:13px; }
.size1 .size12{ font-size:14px; }
.size1,.size1 .size14{ font-size:16px; }
.size1 .size16{ font-size:18px; }
.size1 .size18{ font-size:20px; }
.size1 .size21{ font-size:23px; }
.size1 .size24{ font-size:26px; }
.size1 .size27{ font-size:29px; }
.size1 .size30{ font-size:32px; }
.size1 .size32{ font-size:34px; }
.size1 .size36{ font-size:38px; }
.size1 .size42{ font-size:44px; }
.size1 .size48{ font-size:50px; }
.size1 .size60{ font-size:62px; }

/*-----------------------------------------
wrapper
-----------------------------------------*/
.wrapper{
	width:100%;
	height:auto;
	overflow:hidden;
}
/* h1, */
.wrapper header .header_inner{
	width:96%;
	max-width:1200px;
	margin:0 auto;	
}
.wrapper section .section_inner,
.wrapper footer .footer_inner{
	width:96%;
	max-width:1200px;
	margin:0 auto;
	overflow:hidden;
}
.wrapper main{
	padding-top:130px;
}
.wrapper section{
	width:100%;
	margin:80px auto;
}

/*-----------------------------------------
footer
-----------------------------------------*/
footer{
	border-bottom:40px solid #009358 !important;
}
footer .footer_inner{
	padding:60px 0;
	overflow:hidden;
}
footer .footer_inner .footer_left{
	float:left;
	width:33%;
}
footer .footer_inner .footer_left .footer_logo{
	max-width:265px;
}
footer .footer_inner .footer_left .footer_logo a:hover{
	opacity:0.8;
}
footer .footer_inner .footer_left .name{
	margin:15px 0 5px;
}
footer .footer_inner .footer_left .freecall{
	margin-top:20px;
	max-width:340px;
	border-radius:10px;
	overflow:hidden;
}
footer .footer_inner .footer_left .freecall .inner{
	padding:20px 25px;
	overflow:hidden;
}
footer .footer_inner .footer_left .freecall .inner .left_logo{
	float:left;
	width:60px;
	margin-top:5px;
}
footer .footer_inner .footer_left .freecall .inner .right_text{
	float:right;
	width:calc(100% - 70px);
}
footer .footer_inner .footer_left .freecall .inner .right_text .size32{
	line-height:1;
}
footer .footer_inner .footer_right{
	float:right;
	width:66%;
	overflow:hidden;
}
footer .footer_inner .footer_right table{
	width:100%;
	table-layout:fixed;
}
footer .footer_inner .footer_right table tr td{
	border-left:1px solid #cacaca;
	vertical-align:top;
}
footer .footer_inner .footer_right table tr td ul{
	padding-left:20px;
}
footer .footer_inner .footer_right ul li{
	position:relative;
	line-height:2em;
	margin-left:22px;
}
footer .footer_inner .footer_right ul li.size18{
	margin-left:0;
}
footer .footer_inner .footer_right ul li.size18:before{
	content:"●";
	color:#009358;
	margin-right:5px;
}
footer .footer_inner .footer_right ul li.margin{
	margin-top:1.5em;
}
footer .footer_inner .footer_right ul li a{
	color:#009358;
}
footer .footer_inner .copyright{
	clear:both;
	padding:20px 0;
}
.fix_icon{
	position:fixed;
	right:50px;
	bottom:50px;
	display:none;
	z-index:1049;
}
.fix_icon ul{
	width:60px;
}
.fix_icon ul li{
	position:relative;
}
.fix_icon ul li a{
	display:block;
	width:60px;
	height:60px;
	line-height:60px;
	border-radius:30px;
	margin-bottom:10px;
	position:relative;
	left:0;
	transition:0.3s ease all;
	overflow:hidden;
}
.fix_icon ul li a:hover{
	left:-180px;
	width:240px;
}
.fix_icon ul li .inner{
	width:240px;	
}
.fix_icon ul li .left_icon{
	float:left;
	width:60px;
}
.fix_icon ul li .left_icon img{
	padding:15px;
}
.fix_icon ul li .right_text{
	float:right;
	width:180px;
}
.fix_icon ul li:nth-child(1) .right_text p{
	line-height:60px;
}
.fix_icon ul li:nth-child(2) a{
	line-height:1.5em;
	letter-spacing:1px;
	padding-top:12px;
	/* height:48px; */ /* この指定が原因で楕円になっていたため削除 */
}
.fix_icon ul li:nth-child(2) .right_text p{
	letter-spacing:2px;
}
.fix_icon ul li:nth-child(2) a:hover{
	background:#ff9000;
	text-decoration:none;
	width:60px;
	left:inherit;
}

.wrapper .tab,
.wrapper .sp,
.wrapper .spbr,
.wrapper .spbr2{ display: none; }

@media screen and (max-width: 1024px) {
	.wrapper .br1{ display:none; }
	footer .footer_inner .footer_left{
		float:none;
		width:100%;
		margin-top:40px;
		text-align:center;
	}
	footer .footer_inner .footer_right{
		float:none;
		width:100%;
	}
	footer .footer_inner .footer_right table tr td:last-child{
		border-right:1px solid #cacaca;
	}
	footer .footer_inner .footer_left .footer_logo{
		margin:0 auto;
	}
	footer .footer_inner .footer_left .freecall{
		margin:20px auto 0;
	}
}
@media screen and (max-width: 896px) {
	.wrapper .sp{ display:block; }
	
	.size16{ font-size:14px; }
	.size18{ font-size:16px; }
	.size21{ font-size:18px; }
	.size24{ font-size:21px; }
	.size27{ font-size:21px; }
	.size30{ font-size:24px; }
	.size32{ font-size:24px; }
	.size36{ font-size:27px; }
	.size42{ font-size:30px; }
	.size48{ font-size:36px; }
	.size60{ font-size:48px; }

	.size1 .size16{ font-size:16px; }
	.size1 .size18{ font-size:18px; }
	.size1 .size21{ font-size:20px; }
	.size1 .size24{ font-size:23px; }
	.size1 .size27{ font-size:23px; }
	.size1 .size30{ font-size:26px; }
	.size1 .size32{ font-size:26px; }
	.size1 .size36{ font-size:29px; }
	.size1 .size42{ font-size:32px; }
	.size1 .size48{ font-size:38px; }
	.size1 .size60{ font-size:50px; }
	

	.wrapper .sp .spmenu {
		width:80%;
		position:fixed;
		z-index:5000;
		left:-80%;
		top:0;
		display:block;
		background-color:rgba(255,255,255,1);
		overflow: auto;
		box-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
		height:100%;
	}
	.wrapper .sp .spmenu li {
		width: 100%;
		border-bottom: 1px dotted #aaa;
	}
	.wrapper .sp .spmenu li.sub {
		width: 100%;
		border-bottom: 1px dotted #fff;
	}
	.wrapper .sp .spmenu li.top a{
		padding:20px 0;
		text-align:center;
		background:white;
	}
	.wrapper .sp .spmenu li.top a img{
		width:75%;
	}
	.wrapper .sp .spmenu li:last-child {
		border-bottom: none;
	}
	.wrapper .sp .spmenu li a {
		display: block;
		padding: 10px 0 10px 30px;
		position:relative;
	}
	.wrapper .sp .spmenu li.sub{
		display:none;
	}	
	.wrapper .sp .spmenu li.sub a {
		padding-left:45px;
	}
	.wrapper .sp .spmenu li a:hover {
		text-decoration: none;
	}
	.wrapper .sp .spmenu .btn{
		width:80%;
		margin:20px auto;
	}
	.wrapper .sp .spmenu .btn a{
		display:block;
		border-radius:24px;
		line-height:48px;
	}
	.wrapper header{
		height:60px;
	}
	.wrapper header .header_inner .header_logo{
		width:27%;
		margin-top:12px;
	}
	.wrapper header .header_inner .header_right,
	.wrapper header .header_inner nav{
		display:none;
	}

	.wrapper main{
		padding-top:60px;
	}
	.wrapper section{
		margin:60px 0;
	}

	footer .footer_inner .footer_right{
		display:none;
	}
	footer .footer_inner .footer_left{
		margin-top:0;
	}
	footer .footer_inner .footer_left .freecall .inner .right_text .size32{
		font-size:32px;
	}
	.spscroll{
		white-space:nowrap;
		overflow:auto;
	}
}
@media screen and (max-width: 640px) {
	.wrapper .spbr2{ display:inline; }
	
	.size18{ font-size:14px; }
	.size21{ font-size:16px; }
	.size24{ font-size:18px; }
	.size27{ font-size:18px; }
	.size30{ font-size:21px; }
	.size32{ font-size:21px; }
	.size36{ font-size:24px; }
	.size42{ font-size:24px; }
	.size48{ font-size:30px; }
	.size60{ font-size:36px; }

	.size1 .size18{ font-size:16px; }
	.size1 .size21{ font-size:18px; }
	.size1 .size24{ font-size:20px; }
	.size1 .size27{ font-size:20px; }
	.size1 .size30{ font-size:23px; }
	.size1 .size32{ font-size:23px; }
	.size1 .size36{ font-size:26px; }
	.size1 .size42{ font-size:26px; }
	.size1 .size48{ font-size:32px; }
	.size1 .size60{ font-size:38px; }
	
	.fix_icon{
		right:20px;
		bottom:20px;
	}
}