
/* CSS Document */

/* font
--------------------------------------------------------------*/
@font-face {font-family: 'Noto Sans Japanese'; font-style: normal; font-weight: 400; src: url("../font/NotoSansJP-Regular.otf");}
@font-face {font-family: 'Noto Sans Japanese'; font-style: normal; font-weight: 500; src: url("../font/NotoSansJP-Medium.otf");}
@font-face {font-family: 'Noto Sans Japanese'; font-style: normal; font-weight: 600; src: url("../font/NotoSansJP-Bold.otf");}

html, body {
	/* Set box model to prevent any user added margins or paddings from altering the widths or heights. */
	margin: 0;
	padding: 0;
	-webkit-box-sizing: border-box;
	   -moz-box-sizing: border-box;
	        box-sizing: border-box;
}
body {
  font-family:'Roboto','Noto Sans JP', "游ゴシック体", "Yu Gothic", "Hiragino Kaku Gothic Pro", "Meiryo", sans-serif;
}
section{
	width: 1020px;
	margin:0 auto;
}
ul,li,dl,dt,dd {
	margin: 0;
	padding: 0;
}

/* For modern browsers */
.clearfix:before,
.clearfix:after {
 content: " ";
 display: table;
}
 
.clearfix:after {
 clear: both;
}
 
/* For IE 6/7 only */
.clearfix {
 *zoom: 1;
}


a{
	color: #4cb5fc;
	-webkit-transition-property:color;  
	-webkit-transition-duration:0.2s;  
	-webkit-transition-timing-function:linear; 
    -webkit-backface-visibility: hidden; /* 追加 */
	backface-visibility: hidden; /* 追加 */
	text-decoration: none;
	}
a:hover{
	color: #4cb5fc;
	}


img{
	-webkit-transition-property:opacity;  
    -webkit-transition-duration:0.2s;  
    -webkit-transition-timing-function:linear; 
    -webkit-backface-visibility: hidden; /* 追加 */
    backface-visibility: hidden; /* 追加 */
	border:0;
	vertical-align:bottom;
	max-width:100%;
	max-height:100%;
	height:auto;
}

#headerwrap,footer,section,aside,article,nav,div,ul,li,dl,dt,dd,p,span,img,h1,h2,h3,h4,h5,a{box-sizing: border-box;}


table{border-collapse:collapse;}
th{border-collapse:collapse;}
td{border-collapse:collapse;}


.font_gold{color: #C4B171 !important;}
.font_red{color: #FB0324 !important;}
.font_darkred{color: #8A0404 !important;}
.font_orange{color: #E66700;}

.mar0px{margin:0px !important;}
.mar5px{margin-bottom:5px !important;}
.mar10px{margin-bottom:10px !important;}
.mar15px{margin-bottom:15px !important;}
.mar20px{margin-bottom:20px !important;}
.mar25px{margin-bottom:25px !important;}
.mar30px{margin-bottom:30px !important;}
.mar35px{margin-bottom:35px !important;}
.mar40px{margin-bottom:40px !important;}
.mar45px{margin-bottom:45px !important;}
.mar50px{margin-bottom:50px !important;}
.mar60px{margin-bottom:60px !important;}
.mar70px{margin-bottom:70px !important;}
.mar80px{margin-bottom:80px !important;}
.mar90px{margin-bottom:90px !important;}
.mar100px{margin-bottom:100px !important;}
.mar110px{margin-bottom:110px !important;}
.mar120px{margin-bottom:120px !important;}
.mar130px{margin-bottom:130px !important;}
.mar140px{margin-bottom:140px !important;}
.mar150px{margin-bottom:150px !important;}



.pad0px{padding-bottom:0px !important;}
.pad10px{padding-bottom:10px !important;}
.pad20px{padding-bottom:20px !important;}
.pad30px{padding-bottom:30px !important;}
.pad40px{padding-bottom:40px !important;}
.pad50px{padding-bottom:50px !important;}


a{
	-webkit-transition-property:color;  
    -webkit-transition-duration:0.2s;  
    -webkit-transition-timing-function:linear; 
}


.sponly{display:none !important;}


/* li_disc */
ul.li_disc {
	padding-left: 0 !important;
}
ul.li_disc li {
    position: relative;
	list-style: none !important;
    padding-left: 20px;
}
ul.li_disc li:before {
    content: "・";
    position: absolute;
    left: 0;
}
/* li_kome */
ul.li_kome {
	padding-left: 0 !important;
}
ul.li_kome li {
    position: relative;
	list-style: none !important;
    padding-left: 20px;
}
ul.li_kome li:before {
    content: "※";
    position: absolute;
    left: 0;
}
/* li_circle */
ul.li_circle {
	padding-left: 0 !important;
}
ul.li_circle li {
    position: relative;
	list-style: none !important;
    padding-left: 20px;
}
ul.li_circle li:before {
    content: "●";
    position: absolute;
    left: 0;
}


/* ボタン共通 */
/* btn_blue */
.btn_defa {
	width: 340px;
	margin: 0 auto;
}
.btn_defa a {
	font-size: 15px;
	line-height: 20px;
	font-weight: 700;
	padding: 13px 10px;
	text-align:center;
	background: #69B076;
	border: solid 1px #69B076;
	color: #fff;
	text-decoration:none;
	position:relative;
	display: block;
	-webkit-transition-property:background;
	-webkit-transition-duration:0.2s;
	-webkit-transition-timing-function:linear;
}
.btn_defa a:hover {
	opacity:1;
	color: #69B076;
	background: #fff;
}

/* btn_box */
.btn_box {
	margin: 0 auto;
}
.btn_box a {
	font-size: 15px;
	line-height: 20px;
	padding: 13px 10px;
	text-align:center;
	background: #fff;
	border: solid 1px #B8B8B8;
	border-radius: 5px;
	color: #000000;
	text-decoration:none;
	position:relative;
	display: block;
	-webkit-transition-property:background;
	-webkit-transition-duration:0.2s;
	-webkit-transition-timing-function:linear;
}
.btn_box a:hover {
	opacity:1;
	background: #F4F4F4;
}

.btn_box a.active {
	background: #69B076;
	color: #fff;
	border: none;
}
.btn_box a.active:hover {
	background: #599F66;
}
/* btn_border */
.btn_border {
	width: 340px;
	margin: 0 auto;
}
.btn_border a {
	font-size: 15px;
	line-height: 20px;
	padding: 17px 10px;
	text-align:center;
	background: #fff;
	border: solid 1px #BBBBBB;
	color: #000000;
	text-decoration:none;
	position:relative;
	display: block;
	-webkit-transition-property:background;
	-webkit-transition-duration:0.2s;
	-webkit-transition-timing-function:linear;
}
.btn_border a:hover {
	opacity:1;
	background: #F4F4F4;
}
.btn_border a:after {
	content:"";
	background:url("../images/common/arrow_right_gray.svg")no-repeat;
	background-size: cover !important;
	position:absolute;
	width:22px;
	height:22px;
	top:50%;
	margin-top:-11px;
	right: 15px;
}

/* green */
.btn_border.green a:after {
    background: url("../images/common/arrow_right_green.svg")no-repeat;
}
.btn_border.bottom a:after {
	transform: rotateZ(90deg);
}
/* green_left */
.btn_border.green_left a:after {
	background:url("../images/common/arrow_left_green.svg")no-repeat;
	right: auto;
	left: 15px;
}

/* btn_white */
.btn_white {
	width: 340px;
	margin: 0 auto;
}
.btn_white a {
	font-size: 15px;
	line-height: 20px;
	padding: 17px 10px;
	text-align:center;
	background: #fff;
	color: #000000;
	text-decoration:none;
	position:relative;
	display: block;
	-webkit-transition-property:background;
	-webkit-transition-duration:0.2s;
	-webkit-transition-timing-function:linear;
}
.btn_white a:hover {
	opacity:1;
	background: #EBEBEB;
}
.btn_white a:after {
	content:"";
	background:url("../images/common/arrow_right_gray.svg")no-repeat;
	background-size: cover !important;
	position:absolute;
	width:22px;
	height:22px;
	top:50%;
	margin-top:-11px;
	right: 15px;
}

/* btn_white orange */
.btn_white.orange a {
	background-color: #E66700;
	color: #fff;
}
.btn_white.orange a:hover {
	opacity:1;
	background: #E05600;
}
.btn_white.orange a:after {
	background:url("../images/common/arrow_right_white.svg")no-repeat;
}

/* btn_green */
.btn_green {
	width: 340px;
	margin: 0 auto;
}
.btn_green a {
	font-size: 18px;
	line-height: 20px;
	padding: 17px 10px;
	text-align:center;
	background: #69B076;
	font-weight: 600;
	border-radius: 5px;
	border: solid 1px #69B076;
	color: #fff;
	text-decoration:none;
	position:relative;
	display: block;
	-webkit-transition-property:background;
	-webkit-transition-duration:0.2s;
	-webkit-transition-timing-function:linear;
}
.btn_green a:hover {
	opacity:1;
	background: #fff;
	color: #69B076;
}


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

/* 共通 */
.container {
	padding: 50px 0px;
}

p {
	font-size: 15px;
	line-height: 28px;
    margin: 15px 0px;
}


/* col2area */
.col2area {
    letter-spacing: -.4em;
}
.col2area .box {
	display: inline-block;
	width: 48.5%;
	margin-bottom: 20px;
	vertical-align: top;
    letter-spacing: normal;
}
.col2area .box:not(:nth-child(2n)) {
	margin-right: 3%;
}

/* col3area */
.col3area {
    letter-spacing: -.4em;
}
.col3area .box {
	display: inline-block;
	width: 31%;
	margin-bottom: 20px;
	vertical-align: top;
    letter-spacing: normal;
}
.col3area .box:not(:nth-child(3n)) {
	margin-right: 3.5%;
}

/* col4area */
.col4area {
    letter-spacing: -.4em;
}
.col4area .box {
	display: inline-block;
	width: 22%;
	margin-bottom: 20px;
	vertical-align: top;
    letter-spacing: normal;
}
.col4area .box:not(:nth-child(4n)) {
	margin-right: 4%;
}

/* col5area */
.col5area {
    letter-spacing: -.4em;
}
.col5area .box {
	display: inline-block;
	width: 19%;
	margin-bottom: 20px;
	vertical-align: top;
    letter-spacing: normal;
}
.col5area .box:not(:nth-child(5n)) {
	margin-right: 1.25%;
}







/*=========================================================================================== 
right_navi ここから */
#right_navi {
    position: fixed;
    right: -1px;
    z-index: 99;
    top: 120px;
	overflow:visible;
}
_::-webkit-full-page-media, _:future, :root #right_navi {
	right: 17px;
}
.text_left {
	text-align: left !important;
}
@-moz-document url-prefix() {
	#right_navi {
		right: 17px;
	}
}
#right_navi .btn {
	text-align: center;
}
#right_navi .btn a {
    background: #69B076;
    display: block;
    padding: 40px 10px 10px 10px;
	color: #fff;
	text-decoration: none;
    font-size: 14px;
	position: relative;
    line-height: 18px;
	border: solid 1px #69B076;
	border-top-left-radius: 4px;
	-webkit-border-top-left-radius: 4px;
	-moz-border-radius-topleft: 4px;
	border-bottom-left-radius: 4px;
	-webkit-border-bottom-left-radius: 4px;
	-moz-border-radius-bottomleft: 4px;
	-webkit-transition-property:background;
	-webkit-transition-duration:0.2s;
	-webkit-transition-timing-function:linear;
  -webkit-writing-mode: vertical-rl;
  -ms-writing-mode: tb-rl;
  -o-writing-mode: vertical-rl;
  writing-mode: vertical-rl;
}
#right_navi .btn a:before {
    content: "";
    background: url("../images/common/icon_book_white.svg")no-repeat center;
    background-size: cover !important;
    position: absolute;
    width: 27px;
    height: 21px;
    left: 50%;
    margin-left: -13px;
    top: 10px;
}
#right_navi .btn:nth-child(2) a {
	margin-top: 10px;
	background-color: #E66700;
	border: solid 1px #E66700;
    padding-top: 45px;
}
#right_navi .btn:nth-child(2) a:before {
    background: url("../images/common/icon_memo_white.svg")no-repeat center;
    width: 23px;
    height: 25px;
    margin-left: -8px;
}
/*#right_navi .btn a:hover:before {
    background: url("../images/common/icon_book_green.png")no-repeat center;
}
#right_navi .btn:nth-child(2) a:hover:before {
    background: url("../images/common/icon_memo_orange.png")no-repeat center;
}*/
#right_navi .btn a:hover {
	background-color: #5AA267;
}
#right_navi .btn:nth-child(2) a:hover {
	background-color: #E05600;
}

@media all and (-ms-high-contrast: none) {
	#right_navi .btn a {
    	height: 142px;
	}
	#right_navi .btn:last-child a {
    	height: 202px;
	}
}

#foot_fix {
	display: none;
}
/* right_navi ここまで
=========================================================================================== */






/*-------------ハンバーガーメニュー--------------*/
/*ハンバーガーボタン*/
#nav-tgl {
display: none;
}
.nav-tgl-btn {
cursor: pointer;
position: fixed;
top: 0;
right: 0;
margin: 0;
	position: absolute;
}

.nav-tgl-btn b {
    color: #69B076;
    padding-top: 35px;
    display: block;
    font-size: 11px;
}
#nav-tgl:checked + .nav-tgl-btn b {
    color: #fff;
}
.open {
z-index: 9999;
    width: 40px;
    height: 40px;
transition: background .6s, transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
	
	
    margin: 30px 0px 0 0;
}
.open::before,
.open::after {
content: "";
}
.open span,
.open::before,
.open::after {
content: "";
position: absolute;
top: calc(50% - 1px);
right: 30%;
width: 66%;
border-bottom: 4px solid #69B076;
transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.open::before {
transform: translateY(-8px);
}
.open::after {
transform: translateY(8px);
}
.close {
z-index: 1;
width: 100%;
height: 100%;
pointer-events: none;
transition: background .6s;
}
#nav-tgl:checked + .open {
/*background: #02255D;*/
transform: translateX(-300px);
}
#nav-tgl:checked + .open span {
transform: scaleX(0);
}
#nav-tgl:checked + .open::before {
transform: rotate(45deg);
	border-color: #fff;
}
#nav-tgl:checked + .open::after {
transform: rotate(-45deg);
	border-color: #fff;
}
#nav-tgl:checked ~ .close {
pointer-events: auto;
background: rgba(0,0,0,.3);
}
.content-wrapper {
transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
/* メニューデザイン */
.drower-menu {
	display: none;
	z-index: 999;
	position: fixed;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
	top: 0;
	right: 0;
    width: 300px;
	height: 100%;
	margin: 0;
	padding: 0 0 10px;
	box-sizing: border-box;
	background: #F9F9F9;
	transform: translateX(100%);
    transition: transform .6s cubic-bezier(0.215, 0.61, 0.355, 1);
}
.drower-menu-list {
	padding: 20px;
}
.drower-menu ul.menu_area {
	margin: 0 0 10px 0px;
	padding-bottom: 10px;
}
.drower-menu ul li {
	list-style: none;
}
.drower-menu ul li.title {
    background-color: #EDEDED;
    font-size: 15px;
    padding: 5px;
}
.drower-menu ul li a {
	display: block;
    color: #333;
	text-decoration: inherit;
	transition: background .6s;
	font-size: 14px;
	line-height: 26px;
    padding: 5px 10px;
	position: relative;
}
.drower-menu ul li a:hover {
	background: #69B076;
	color: #fff;
}
.drower-menu ul li ul {
	margin: 6px 0px;
	margin-left: 20px;
}
.drower-menu li a.sp_slide:before {
    content: "";
    background: url(../new_images/common/icon_triangle_brown.png)no-repeat;
    background-size: cover !important;
    position: absolute;
    width: 8px;
    height: 6px;
    top: 50%;
    margin-top: -3px;
    right: 9px;
    transform: rotateZ(90deg);
}
.drower-menu li a.sp_slide:hover:before {
    background: url(../new_images/common/icon_triangle_white.png)no-repeat;
}
.drower-menu li a.sp_slide.active:before {
    transform: rotateZ(-90deg);
}
.drower-menu li a.sp_slide.active {
	border-bottom: solid 1px #69B076;
}
#nav-tgl:checked ~ .drower-menu {
	transform: none;
}
.drower-menu .btn_defa {
	margin-bottom: 10px;
}
.drower-menu .btn_defa a {
	padding: 6px 0;
}
.drower-menu .tel {
	margin: 0 auto;
}
.drower-menu .tel a {
	text-align: center;
	display: block;
	font-size: 18px;
	position: relative;
    color: #333;
	padding: 10px 0px;
}
.drower-menu .tel a span {
	position: relative;
	padding-left: 30px;
	font-weight: 600;
	
	font-family: 'Oswald', sans-serif;
    font-size: 25px;
}
.drower-menu .tel a span:before {
	content:"";
	background:url("../images/common/icon_tel.svg")no-repeat;
	background-size: cover;
	position:absolute;
	width:13px;
	height:22px;
	top:50%;
	margin-top:-11px;
	left: 10px;
}
.drower-menu .tel p {
	margin-top: 0;
}
.drower-menu .tel a:hover {
	color: #69B076;
}

.accordion_box {
	display: none;
}


/* サイト内検索sp */
.search_wrap input[type="text"] {
    padding: 7px 4px;
    width: calc(100% - 40px);
    box-sizing: border-box;
}
.search_wrap input[type="submit"] {
	background-size: 60% !important;
	border-radius: 2px;
	background-color: #69B076;
	border: solid 1px #69B076;
    padding: 7px 4px;
	width: 34px;
	height: 34px;
    box-sizing: border-box;
	-webkit-transition-property:background;
	-webkit-transition-duration:0.2s;
	-webkit-transition-timing-function:linear;
}
.search_wrap input[type="submit"]:hover {
	cursor: pointer;
	background-color: #fff;
}

/* サイト内検索PC */
.drower-menu2 {
	z-index: 999;
	position: fixed;
	overflow: auto;
	-webkit-overflow-scrolling: touch;
	overflow-scrolling: touch;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	margin: 0;
	padding: 0 0 10px;
	box-sizing: border-box;
	background: #F5F3EE;
	transform: translateX(100%);
	transition: transform 0s cubic-bezier(0.215, 0.61, 0.355, 1);
}
#nav-tgl:checked ~ .drower-menu2 {
	transform: none;
	padding: 0;
}
.drower-menu2 .drower-menu-list {
  display: table;
  width: 100%;
	height: 100vh;
	max-width: 500px;
	margin: 0 auto;
}
.drower-menu2 .search_wrap {
    margin-top: 10px;
    display: table-cell;
    text-align: center;
    vertical-align: middle;
}

.open.pconly {
    border: solid 2px #2F2F2F;
    background-color: #2F2F2F;
    background-size: 20px 20px !important;
    padding: 0;
    width: 44px;
	height: 44px;
    box-sizing: border-box;
}
.open.pconly:hover {
	background-color: #fff;
}
.open.pconly span, .open.pconly::before, .open.pconly::after {
	display: none;
}




/* スクロールヒント */
.scroll-hint table {
      min-width: 850px;
}
.slide_hint_text {
	text-align: right;
	margin-bottom:10px;
	font-size:14px;
    	font-weight: 700;
	margin-top: 10px;
}


/******************************************************************************************/

/* for TB & SP CSS   */

/******************************************************************************************/

/******************/
/* for Tablet    */
/* 769px-1024px    */
/******************/
@media only screen and (max-width: 1020px) {	
	section{width:90% !important;}
	
	
	
}



/******************/
/* for SP-TB      */
/* -768px    */
/* only #headerwrap    */
/******************/
@media only screen and (max-width: 768px) {
	.sponly{display:block !important;}
	.pconly{display:none !important;}
	section{width:90% !important;}
	
	/* col2area */
	.col2area .box {
		display: block;
		width: 100%;
	}
	.col2area .box:not(:nth-child(2n)) {
		margin-right: 0%;
	}

	/* col3area */
	.col3area {
	}
	.col3area .box {
		display: block;
		width: 100%;
    	margin-bottom: 20px;
	}
	.col3area .box:not(:nth-child(3n)) {
		margin-right: 0%;
	}
	
	/* col4area */
	.col4area {
	}
	.col4area .box {
		width: 49%;
    	margin-bottom: 20px;
		margin-right: 2%;
	}
	.col4area .box:not(:nth-child(4n)) {
		margin-right: 2%;
	}
	.col4area .box:nth-child(2n) {
		margin-right: 0;
	}
	
	/* col5area */
	.col5area {
	}
	.col5area .box {
		width: 49%;
    	margin-bottom: 20px;
		margin-right: 2%;
	}
	.col5area .box:not(:nth-child(5n)) {
		margin-right: 2%;
	}
	.col5area .box:nth-child(2n) {
		margin-right: 0;
	}
	
	
	/* sp_col2 */
	.sp_col2 .box {
		width: 49% !important;
		margin-right: 2% !important;
		display: inline-block !important;
	}
	.sp_col2 .box:nth-child(2n) {
		margin-right: 0 !important;
	}
	
	/* sp_clear */
	.sp_clear .box {
		display: block !important;
		width: 100% !important;
	}
	
	/*-------------ボタン--------------*/
	.btn_defa {
    	width: 100%;
	}
	.btn_defa a:after {
    	right: -14px;
	}
	.btn_defa a {
		padding: 15px 0;
		font-size: 14px;
		line-height: 26px;
	}
	/* btn_border */
	.btn_border {
    	width: 100%;
	}
	.btn_border a:after {
	}
	.btn_border a {
		padding: 15px 0;
		font-size: 14px;
		line-height: 26px;
	}
		
	
	/************ foot_fix ************/
	#right_navi {
		display: none;
	}
	.JS .ShowRWD {
		margin-bottom: 45px;
	}
	#foot_fix {
		position: fixed;
		bottom: 0px;
		width: 100%;
		display: block;
		z-index: 10;
	}
	#foot_fix .btn {
		display: table;
		width: 100%;
		text-align: center;
	}
	#foot_fix .btn a:first-child {
		width: 20%;
	}
	#foot_fix .btn a {
		display: table-cell;
		width: 40%;
		background-color: #69B076;
		color: #fff;
		padding: 10px 5px;
		text-decoration: none;
		-webkit-transition-property:background-color;
		-webkit-transition-duration:0.2s;
		-webkit-transition-timing-function:linear;
		line-height: 1;
	}
	#foot_fix .btn a span b {
		font-size: 13px;
	}
	#foot_fix .btn a span {
		position: relative;
		font-size: 12px;
	}
	#foot_fix .btn a span:before {
		content: "";
		background: url("../../image/new/common/icon_memo.png")no-repeat center;
		background-size: cover !important;
		position: absolute;
		width: 11px;
		height: 15px;
		top: 50%;
		margin-top: -7.5px;
		left: 0;
	}
	#foot_fix .btn a:last-child {
		background-color: #E66700;
	}
	#foot_fix .btn a:hover {
		background-color: #5AA267;
	}
	#foot_fix .btn a:last-child:hover {
		background-color: #E05600;
	}
	
	#foot_fix .btn a:last-child span:before {
		background: url("../../image/new/common/icon_mail.png")no-repeat center;
		width: 15px;
		height: 11px;
		margin-top: -5.5px;
	}
	#foot_fix .btn a:hover span:before {
		background: url("../../image/new/common/icon_memo_on.png")no-repeat center;
	}
	#foot_fix .btn a:last-child:hover span:before {
		background: url("../../image/new/common/icon_mail_on.png")no-repeat center;
	}
	#foot_fix .btn a:not(:first-child) {
		border-left: 2px #fff solid;
	}
	
	#foot_fix .btn a img {
		height: 25px;
		width: auto;
		margin-bottom: 5px;
	}
	

	
	/* spメニュー */
	.drower-menu {
		display: block;
	}
	.scroll-prevent {
	position: fixed;
	z-index: -1;
	width: 100%;
	height: 100%;
	}
	#nav-tgl:checked ~ .content-wrapper {
	transform: translateX(-300px);
	}

.open {
    margin: 40px 0px 0 0;
}
	
}