@charset "utf-8";
/* PC/スマホ共通表示 */

.-----PC_MOBILE_COMMON_CSS_START----- {}

* {
	margin: 0px;
	padding: 0px;
	list-style-type: none;
	-webkit-text-size-adjust: 100%;
	max-height: 999999px;
	font-style: normal;
}
body {
	font-family: 'Roboto',"ナウ-GM","メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Osaka, sans-serif;
	font-size: 14px;
	line-height: 170%;
	color: #333;
}
img {
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
}
table {
	border-collapse: collapse;
}
a:link,
a:visited {
	text-decoration: none;
	color: #11ae82;
}
a:hover,
a:active {
	text-decoration: underline;
	color: #FF6600;
}
.clear {
	clear: both;	
}

.mobile_nowrap {
	display: inline;
}
.pc_nowrap {
	display: none;
}
.mobile_only {
	display:none;
}
.pc_only {
	display: block;
}
a.false {
	pointer-events: none;
}


.fadeAction {
	box-sizing:border-box;
}
.fade_ttl .lead {
	white-space: nowrap;
}

.fadeIn {
	transition: 1s;
	opacity: 0;
	position: absolute;
	top: -1px;
	left: 0px;
	white-space: nowrap;
}
.fadeIn.on {
	opacity:1.0;
	top: 0;
}


.fadeInTop {
	transition: 1s;
	opacity: 0;
	position: absolute;
	bottom: 50px;
	left: 0px;
}
.fadeInTop.on {
	opacity:1.0;
	bottom: 0;
}

.fadeInBottom {
	transition: 1s;
	opacity: 0;
	position: absolute;
	top: 50px;
	left: 0px;
}
.fadeInBottom.on {
	opacity:1.0;
	top: 0;
}

.fadeInRight {
	transition: 1s;
	opacity: 0;
	position: absolute;
	top: 0px;
	left: 50px;
}
.fadeInRight.on {
	opacity:1.0;
	left: 0;
}

.fadeInLeft {
	transition: 1s;
	opacity: 0;
	position: absolute;
	top: 0px;
	right: 50px;
}
.fadeInLeft.on {
	opacity:1.0;
	right: 0;
}

.alignleft {
	float: left;
	margin-right: 1.5em !important;
	margin-bottom: 1em !important;
}
.alignright {
	float: right;
	margin-left: 1.5em !important;
	margin-bottom: 1em !important;
}
.aligncenter {
	display:block;
	margin-left:auto !important;
	margin-right:auto !important;
	margin-bottom: 1em !important;
}

.pagination {
	
}
.pagination ul {
	width: 100%;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}
.pagination li {
	height: 30px;
	width: 30px;
	margin: 0px;
}
.pagination li a {
	font-size:13px;
	box-sizing: border-box;
	height: 28px;
	width: 28px;
	border: 1px solid #FFF;
	display: block;
	text-align: center;
	line-height: 28px;
	text-decoration: none;
	color: #8c8c8c;
}
.pagination li a:hover {
	background-color: #8c8c8c;
	color:#FFF;
}
.pagination li span {
	font-size:13px;
	box-sizing: border-box;
	height: 28px;
	width: 28px;
	border: 1px solid #FFF;
	display: block;
	text-align: center;
	line-height: 28px;
	text-decoration: none;
	font-weight: bold;
	color: #FFF;
	background-color: #8c8c8c;
}

#wrapper {
	width: 100%;
	min-width:980px;
}
#header {
	width: 100%;
	min-width:980px;
	height: 85px;
	position: fixed;
	z-index: 100;
	top:0px;
	left:0px;
}
#header .wrapper {
	box-sizing: border-box;
	width: 100%;
	height: 85px;
	position: absolute;
	z-index: 1;
	background-color: rgba(255,255,255,0.9);
	top:-50px;
	left:0px;
	transition:1s;
	opacity:0;
	box-shadow: 0px 0px 4px 1px rgba(0,0,0,0.2);
}
#header.on  .wrapper {
	top:0px;
	left:0px;
	opacity:1;
}
#header .wrapper h1 {
	position: absolute;
	left: 66px;
	top: 7px;
	z-index: 2;
	font-size:11px;
	line-height:100%;
}
#header .logo {
	position: absolute;
	left: 65px;
	top: 27px;
	z-index: 2;
}
#header .logo a {
	display: block;
	text-indent: -9999em;
	height: 40px;
	width: 313px;
	background-image: url(/img/header_logo.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
}






#header #g_nav_open_btn {
	display: none;
}
#g_nav {
	width: calc(100% - 380px);
	box-sizing: border-box;
	display: block;
	position: absolute;
	z-index: 1;
	right: 0px;
	top: 15px;
}
#g_nav ul {
	box-sizing: border-box;
	width: 100%;
	padding-right: 30px;
	min-height: 60px;
	display: flex;
	justify-content: flex-end;
	flex-wrap: wrap;
	align-items: flex-end;
	align-content: flex-end;
}
#g_nav ul li {

}
#g_nav ul li a {
	box-sizing: border-box;
	display: block;
	transition: 0.4s;
	font-size: 13px;
	letter-spacing:2px;
	color: #555;
	text-decoration: none;
	line-height: 30px;
	border-radius: 5px;
	padding-right: 20px;
	padding-left: 20px;
}
#g_nav ul li:nth-of-type(1) a,
#g_nav ul li:nth-of-type(2) a,
#g_nav ul li:nth-of-type(6) a {
	font-weight: 300;
	font-size: 14px;
	color: #333;
}
#g_nav ul li a:hover {
	color: #11ae82;
}
#g_nav .mobile {
	display:none;
}
#g_nav .line {
	display:none;
}


#sub_menu {
	position: fixed;
	z-index: 99;
	right: 0px;
	bottom: 0px;
}
#sub_menu ul {
	width:44px;
	padding-right:40px;
	padding-bottom:40px;
	right: -40px;
	bottom: 0px;
	transition:1s;
	opacity:0;
	position:absolute;
}
#sub_menu.on ul {
	right: 0px;
	bottom: 0px;
	opacity:1;
}
#sub_menu ul li a {
	display: block;
	width: 44px;
	height: 44px;
	background-repeat: no-repeat;
	background-position: center center;
	overflow: hidden;
	position: relative;
	text-indent: -9999px;
	transition:0.4s;
	border-radius:22px;
	margin-bottom:1px;
}
#sub_menu ul li a:hover {
	/*background-color:rgba(255,255,255,0.4);*/
}
#sub_menu ul li:nth-child(1) a {
	background-image: url(/img/sub_menu_01_g2.svg);
	/* background-size:auto 29px;*/
}
#sub_menu ul li:nth-child(2) a {
	background-image: url(/img/sub_menu_02_g2.svg);
	/* background-size:auto 24px;*/
}
#sub_menu ul li:nth-child(3) a {
	background-image: url(/img/sub_menu_03_g2.svg);
	/* background-size:auto 33px;*/
}
#sub_menu ul li:nth-child(4) a {
	background-image: url(/img/sub_menu_04_g2.svg);
	/* background-size:auto 32px;*/
}
#sub_menu ul li:nth-child(5) a {
	background-image: url(/img/sub_menu_05_g2.svg);
	/* background-size:auto 32px;*/
}


.main_contents {
	box-sizing: border-box;
	width: 100%;
	position: relative;
}

#page_top {
	display:none;
}
#footer {
	width: 100%;
	background-color: #FFFFFF;
	position: relative;
	z-index: 1;
}
#footer .wrapper {
	text-align:center;
	padding-top:55px;
	padding-bottom:15px;
}
#footer .wrapper .catch {
	background-image: url(/img/footer_catch.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size: contain;
	height: 75px;
	width: 340px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
	text-indent: -9999px;
	overflow: hidden;
	position: relative;
}
#footer .wrapper .tel a {
	background-image: url(/img/footer_tel.svg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:contain;
	height: 35px;
	width: 353px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 20px;
	text-indent: -9999px;
	display: block;
	overflow: hidden;
	position: relative;
	
}
#footer .wrapper .time {
	font-size:15px;
	margin-bottom:55px;
}
#footer .wrapper .menu_01 {
	width:690px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:10px;
}
#footer .wrapper .menu_01 ul {
	box-sizing:border-box;
	width: 100%;
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	border-top-width: 2px;
	border-left-width: 2px;
	border-top-style: solid;
	border-left-style: solid;
	border-top-color: #f5f5f5;
	border-left-color: #f5f5f5;
	background-color:#FFF;
}
#footer .wrapper .menu_01 ul li {
	box-sizing:border-box;
	width: 25%;
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	border-bottom-width: 2px;
	border-right-width: 2px;
	border-bottom-style: solid;
	border-right-style: solid;
	border-bottom-color: #f5f5f5;
	border-right-color: #f5f5f5;
}
#footer .wrapper .menu_01 ul li a {
	font-size: 12px;
	line-height: 14px;
	width: 100%;
	height: 37px;
	color: #333;
	text-decoration: none;
	text-align: center;
	display: flex;
	justify-content: center;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
	transition:0.4s;
}
#footer .wrapper .menu_01 ul li a:hover {
	background-color:#f5f5f5;
}

#footer .wrapper .menu_02 {
	width:690px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:40px;
}
#footer .wrapper .menu_02 ul {
	box-sizing:border-box;
	width: 100%;
	display: flex;
	justify-content:center;
	flex-wrap: wrap;
}
#footer .wrapper .menu_02 ul li a {
	white-space: nowrap;
	display: inline-block;
	padding-left: 2em;
	padding-right: 2em;
	color: #333;
	text-decoration: none;
	font-size:11.5px;
	transition:0.4s;
}
#footer .wrapper .menu_02 ul li a:hover {
	color:#11ae82;
}
#footer .wrapper .menu_02 ul li a:hover:before {
	color:#11ae82;
}
#footer .wrapper .menu_02 ul li a:before {
	content:"＞";
	display:inline-block;
	padding-right:3px;
	color:#B1B1B1;
}

#footer .wrapper .logo {

	margin-bottom:11px;
	line-height:0;
}
#footer .wrapper address {
	font-size:12px;
	line-height:120%;
	display: block;
	margin-bottom:12px;
}
#footer .wrapper .copyright {
	display: block;
	line-height:120%;
	font-size:11px;

}


#main_image {
	width: 100%;
	height:900px;
	padding-top:900px;
}
#main_image #main_01 {
	width: 100%;
	height: 650px;
	background-repeat: no-repeat;
	background-position: center center;
	position: fixed;
	left: 0px;
	top: 115px;
	z-index: 0;
	background-attachment: fixed;
	display:flex;
	justify-content:center;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
}
#main_image #main_01 #movie_box_1 {
	width: 100%;
	height: 900px;
	display:none;
}
#main_image #main_01 .catch {
	display: block;
	text-indent: -9999;
	background-image: url(/img/main_01_catch.png);
	height: 141px;
	width: 443px;
	overflow: hidden;
	position: relative;
}

#main_image #main_02 {
	width: 100%;
	height: 900px;
	position: relative;
	display:flex;
	justify-content:center;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
}
#main_image #main_02 .bg {
	width: 100%;
	height: 900px;
	background-image: url(/img/main_02.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	position: absolute;
	top:0px;
	left:0px;
	opacity:0.93;
}
#main_image #main_02 .text {
	display: block;
	text-indent: -9999;
	background-image: url(/img/main_02_text.png);
	height: 580px;
	width: 359px;
	overflow: hidden;
	position: relative;
	background-repeat: no-repeat;
	background-position: center center;
}

#top_contents {
	width: 100%;
	background-color:#FFF;
}
#top_contents .content {
	width: 100%;
	padding-top:125px;
}
#top_contents .content .ttl_01 {
	color: #11AE82;
	text-align: center;
	font-size: 26px;
	line-height: 120%;
	margin-bottom: 50px;
	font-weight: normal;
	padding-left:0.2em;
	letter-spacing:0.2em;
}

#top_contents .content .lead {
	text-align: center;
	font-size: 20px;
	line-height: 120%;
	margin-bottom: 65px;
}
#top_contents #news .ttl_01 {
	font-size: 28px;
}
#top_contents #news .news_slider {
	height: 250px;
	width: 100%;
}

#top_contents #reform_menu .menu {
	display: block;
	width: 680px;
	margin-right: auto;
	margin-left: auto;
}
#top_contents #reform_menu .menu ul {
	width: 100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
#top_contents #reform_menu .menu ul li {
	width: 150px;
	margin-bottom: 26px;
}
#top_contents #reform_menu .menu ul li > div {
	width: 150px;
}
#top_contents #reform_menu .menu ul li .btn {
	width: 150px;
	border-radius: 5px;
	background-image: url(/img/service_menu_bg.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	transition:0.4s;
}
#top_contents #reform_menu .menu ul li .btn:hover {
	opacity:0.7;
}
#top_contents #reform_menu .menu ul li.false  .btn:hover {
	opacity:1;
}
#top_contents #reform_menu .menu ul li a {
	display: block;
	box-sizing: border-box;
	width: 150px;
	height: 150px;
	padding-top: 110px;
	background-repeat: no-repeat;
	background-position: center 20px;
	font-size: 19px;
	line-height: 120%;
	color: #FFF;
	text-decoration: none;
	letter-spacing: 0.1em;
	padding-left: 0.1em;
	text-align: center;
	background-size: 83px 83px;
	font-weight:bold;
}

#top_contents #reform_menu .menu ul li:nth-child(1) a {
	background-image: url(/img/service_menu_01.png);
}
#top_contents #reform_menu .menu ul li:nth-child(2) a {
	background-image: url(/img/service_menu_02.png);
}
#top_contents #reform_menu .menu ul li:nth-child(3) a {
	background-image: url(/img/service_menu_03.png);
}
#top_contents #reform_menu .menu ul li:nth-child(4) a {
	background-image: url(/img/service_menu_04.png);
}
#top_contents #reform_menu .menu ul li:nth-child(5) a {
	background-image: url(/img/service_menu_05.png);
	letter-spacing:0;
	padding-left: 0;
}
#top_contents #reform_menu .menu ul li:nth-child(6) a {
	background-image: url(/img/service_menu_06.png);
}
#top_contents #reform_menu .menu ul li:nth-child(7) a {
	background-image: url(/img/service_menu_07.png);
}
#top_contents #reform_menu .menu ul li:nth-child(8) a {
	background-image: url(/img/service_menu_08.png);
}
#top_contents #reform_menu .menu ul li:nth-child(9) a {
	background-image: url(/img/service_menu_09.png);
}
#top_contents #reform_menu .menu ul li:nth-child(10) a {
	background-image: url(/img/service_menu_10.png);
	letter-spacing:-1px;
	padding-left: 0;
}
#top_contents #reform_menu .menu ul li:nth-child(11) a {
	background-image: url(/img/service_menu_11.png);
}
#top_contents #reform_menu .menu ul li:nth-child(12) a {
	background-image: url(/img/service_menu_12.png);
	letter-spacing:0;
	padding-left: 0;
}

#top_contents #example .main {
	display: block;
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
}
#top_contents #example .main ul {
	width: 100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
#top_contents #example .main ul li {
	width: 500px;
	height:377px;	
}
#top_contents #example .main ul li > div {
	width: 500px;
	height:377px;
}
#top_contents #example .main ul li .btn {
	width: 500px;
	height:377px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	transition:0.4s;
	display:flex;
	justify-content:center;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
	/*cursor:pointer;*/
	
}
#top_contents #example .main ul li .btn:hover {
	opacity:1;
}
#top_contents #example .main ul li:nth-child(1) .btn {
	background-image: url(/img/example_01_bg.jpg);
}
#top_contents #example .main ul li:nth-child(2) .btn {
	background-image: url(/img/example_02_bg.jpg);
}
#top_contents #example .main ul li:nth-child(3) .btn {
	background-image: url(/img/example_03_bg.jpg);
}
#top_contents #example .main ul li:nth-child(4) .btn {
	background-image: url(/img/example_04_bg.jpg);
}
#top_contents #example .main ul li a {
	display: flex;
	flex-wrap:wrap;
	justify-content:center;
	align-content:center;
	align-items:center;
	box-sizing: border-box;
	width: 240px;
	height: 203px;
	font-size: 26px;
	line-height: 40px;
	color: #FFF;
	text-decoration: none;
	letter-spacing: 0.1em;
	padding-left: 0.1em;
	text-align: center;
	background-color:rgba(17,174,130,0.7);
}
#top_contents #example .main ul li a em {
	display:block;
	width:100%;
	font-size: 20px;
}

#top_contents #example .sub {
	display: block;
	width: 100%;
}
#top_contents #example .sub ul {
	width: 100%;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	margin-top:75px;
}
#top_contents #example .sub ul li {
	width: 321px;
	margin-right: 15px;
	margin-left: 15px;
}
#top_contents #example .sub ul li a {
	display:block;
	box-sizing: border-box;
	width: 100%;
	line-height: 55px;
	padding-top:1px;
	font-size: 18px;
	text-align: center;
	color: #11ae82;
	text-decoration: none;
	border: 1px solid #11ae82;
	position: relative;
	transition:0.4s;
	letter-spacing:1px;
}
#top_contents #example .sub ul li a:hover {
	opacity:0.6;
	background-color:#11ae82;
	color: #FFF;
}
#top_contents #example .sub ul li a:after {
	display: block;
	content: "＞";
	width: 45px;
	line-height: 55px;
	padding-top:1px;
	text-align: center;
	position: absolute;
	top: 0px;
	right: 0px;
}
#top_contents #staff .main {
	text-align: center;
	line-height: 0px;
}
#top_contents #staff .staff {
	width: 480px;
	margin-right: auto;
	margin-left: auto;
	margin-top: 100px;
	display:flex;
	justify-content:space-between;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
}
#top_contents #staff .staff:nth-child(even) {
	flex-direction:row-reverse;
}
#top_contents #staff .staff .photo {
	width: 161px;
	line-height:0;
}
#top_contents #staff .staff .profile  {
	width: 280px;
}
#top_contents #staff .staff .profile .job  {
	font-size:15px;
	color: #11ae82;
	margin-bottom:10px;
	line-height:120%;
}
#top_contents #staff .staff .profile .name  {
	font-size:24px;
	color: #11ae82;
	margin-bottom:10px;
	font-weight:normal;
	line-height:120%;
}
#top_contents #staff .staff .profile .text  {
	font-size:16px;
	line-height:200%;
}

#top_contents #teian .wrapper {
	width: 620px;
	margin-right: auto;
	margin-left: auto;
	padding-bottom:110px;
}
#top_contents #teian .main {
	text-align: center;
	line-height: 0px;
}
#top_contents #teian .ttl_02 {
	font-size:23px;
	line-height:120%;
	font-weight:normal;
	margin-bottom:0.5em;
	margin-top:1em;
	margin-left:5px;
	margin-right:5px;
	text-align:left;
}
#top_contents #teian .lead {
	font-size:16px;
	line-height:190%;
	margin-left:5px;
	margin-right:5px;
	text-align:left;
}


#top_contents #teian .btn {

}
#top_contents #teian .btn a {
	display: block;
	box-sizing: border-box;
	width: 100%;
	font-size: 21px;
	text-align: center;
	color: #11ae82;
	text-decoration: none;
	border: 1px solid #11ae82;
	position: relative;
	transition: 0.4s;
	letter-spacing: 1px;
	padding-top: 20px;
	padding-bottom: 15px;
	line-height: 150%;
}
#top_contents #teian .btn a strong {
	font-size: 30px;
	font-weight:normal;
	line-height: 130%;
}
#top_contents #teian .btn a:hover {
	opacity:0.6;
	background-color:#11ae82;
	color: #FFF;
}
#top_contents #q_and_a {
	background-color: #ecf9f5;
	padding-bottom:155px;
}
#top_contents #q_and_a .ttl_01 {
	font-size: 28px;
}
#top_contents #q_and_a .list {
	width:600px;
	margin-left:auto;
	margin-right:auto;
	border-top-width: 1px;
	border-top-style: dashed;
	border-top-color: #11ae82;
	margin-bottom:50px;
}
#top_contents #q_and_a dl dt {
	padding-top: 25px;
	margin-bottom: 10px;
	font-size: 20px;
	line-height: 170%;
	color: #11ae82;
}
#top_contents #q_and_a dl dd {
	font-size: 16px;
	line-height: 200%;
	padding-bottom: 25px;
	border-bottom-width: 1px;
	border-bottom-style: dashed;
	border-bottom-color: #11ae82;
}
#top_contents #q_and_a .more {
	position: relative;
	width: 600px;
	margin-right: auto;
	margin-left: auto;
}
#top_contents #q_and_a .more a {
	background-image: url(/img/q_and_a_btn_arrow.png);
	background-repeat: no-repeat;
	background-position: center top;
	width: 50px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 15px;
	font-size: 13px;
	font-weight: 300;
	text-decoration: none;
	line-height: 16px;
	text-align: center;
	display: block;
	color: #11ae82;
	transition:0.4s;
}
#top_contents #q_and_a.on .more a {
	display:none;
}
#top_contents #q_and_a .more:after {
	content: " ";
	display: block;
	background-image: url(/img/q_and_a_img_01.png);
	background-repeat: no-repeat;
	height: 139px;
	width: 207px;
	position: absolute;
	top: 0px;
	right: -195px;
}
#top_contents #company {
	padding-bottom:50px;
}
#top_contents #company .main {
	text-align: center;
	line-height: 0px;
	margin-bottom:80px;
}
#top_contents #company dl {
	width:600px;
	margin-left:auto;
	margin-right:auto;
	line-height:200%;
	font-size:16px;
}
#top_contents #company dl dt {
	width: 8em;
	clear: both;
	float: left;
	margin-bottom:65px;
	color: #11ae82;
}
#top_contents #company dl dd {
	width:100%;
	box-sizing:border-box;
	padding-left:8em;
	margin-bottom:65px;
}
#top_contents #company .btn_01 {
	width: 320px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:95px;
}
#top_contents #company .btn_01 a {
	display:block;
	box-sizing: border-box;
	width: 100%;
	line-height: 55px;
	padding-top:1px;
	font-size: 16px;
	text-align: center;
	color: #FFF;
	text-decoration: none;
	border: 1px solid #11ae82;
	position: relative;
	transition:0.4s;
	background-color:#11ae82;
	padding-right:15px;
}
#top_contents #company .btn_01 a:hover {
	opacity:0.6;
	background-color:#FFF;
	color: #11ae82;
}
#top_contents #company .btn_01 a:after {
	display: block;
	content: "＞";
	width: 45px;
	line-height: 55px;
	padding-top:1px;
	text-align: center;
	position: absolute;
	top: 0px;
	right: 0px;
	font-size:12px;
}
#top_contents #company .map {
	width: 500px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:45px;
}
#top_contents #company .map iframe {
	/*filter: grayscale(1);*/
}


#top_contents #company .btn_02 {
	width: 320px;
	margin-left:auto;
	margin-right:auto;
}
#top_contents #company .btn_02 a {
	display:block;
	box-sizing: border-box;
	width: 100%;
	line-height: 55px;
	padding-top:1px;
	font-size: 16px;
	text-align: center;
	color: #363636;
	text-decoration: none;
	border: 1px solid #363636;
	position: relative;
	transition:0.4s;
	background-color:#FFF;
	padding-right:15px;
}
#top_contents #company .btn_02 a:hover {
	opacity:0.6;
	background-color:#363636;
	color: #FFF;
}
#top_contents #company .btn_02 a:after {
	display: block;
	content: "＞";
	width: 45px;
	line-height: 55px;
	padding-top:1px;
	text-align: center;
	position: absolute;
	top: 0px;
	right: 0px;
	font-size:12px;
}
.dummy_01 {
	text-align: center;
	width:100%;
	padding-top:85px;
}
.dummy_02 {
	text-align: center;
	width: 100%;
	padding-top: 85px;
	background-color: #f3fbf9;
}
.soon {
	text-align: center;
	width: 100%;
	padding-top: 300px;
	background-color: #f3fbf9;
	height:700px;
	font-size:30px;
	letter-spacing:0.2em;
}
.page_type_a {
	background-color: #f3fbf9;
	padding-bottom:90px;
}
.page_type_a #page_title {
	text-align:center;
	padding-top:195px;
	padding-bottom:95px;
}
.page_type_a #page_title h1 {
	font-family: "A1明朝","游明朝体", "Yu Mincho", YuMincho,  "ヒラギノ明朝 Pro W3", "Hiragino Mincho Pro", "Noto Serif JP","ＭＳ Ｐ明朝", "MS PMincho", serif;
	font-size: 58px;
	line-height: 120%;
	font-weight: bold;
	margin-bottom:90px;
}
.page_type_a #page_title h1 em {
	display:block;
	width:100%;
	font-style:normal;
	font-size: 18px;
	line-height: 120%;
	padding-top:10px;
}
.page_type_a #page_title p {
	font-size: 17px;
	line-height: 120%;
	font-weight: bold;
}

.page_type_b {
	background-color: #FFF;
	padding-bottom:90px;
}
.page_type_b #page_title {
	text-align:center;
	padding-top:235px;
	padding-bottom:145px;
}
.page_type_b #page_title h1 {
	box-sizing:border-box;
	color: #11AE82;
	text-align: center;
	font-size: 26px;
	line-height: 120%;
	font-weight: normal;
	padding-left:0.2em;
	letter-spacing:0.2em;
}

#statement .contents {
	width: 360px;
	margin-right: auto;
	margin-left: auto;
	font-size: 16px;
	line-height: 350%;
	padding-left:10px;
}
#statement .contents h2 {
	font-size: 27px;
	line-height: 120%;
	margin-bottom:2em;
	letter-spacing:0.23em;
}
#statement .contents p {
	margin-bottom:2em;
	letter-spacing:0.23em;
	white-space:nowrap;
}

#access .contents {
	width: 630px;
	margin-right: auto;
	margin-left: auto;
	font-size: 15px;
	line-height: 240%;
	margin-bottom:90px;
}
#access .contents h2 {
	font-size: 23px;
	line-height: 130%;
	margin-bottom: 1em;
	padding-left: 60px;
	background-repeat: no-repeat;
	background-position: left center;
	margin-top:65px;
}

#access .contents h2:first-child {
	margin-top:0px;
}
#access .contents h2.car {
	background-image: url(/img/access_cion_car.png);
}
#access .contents h2.train {
	background-image: url(/img/access_cion_train.png);
}

#access .contents ol.list_01 {
	counter-reset: list_01;
}
#access .contents ol.list_01 li {

	text-indent:-22px;
	padding-left:24px;
}
#access .contents ol.list_01 li:before {
	counter-increment: list_01;
	content: counter(list_01);
	display: inline-block;
	font-size: 11px;
	font-weight: bold;
	color: #FFF;
	line-height: 16px;
	background-color: #11ae82;
	text-align: center;
	width: 18px;
	margin-right: 4px;
	border-radius: 10px;
	text-indent: 0;
	padding-top: 2px;
}
#access .contents .sup em {
	display: inline-block;
	width: 24px;
	font-size: 21px;
	color: #11ae82;
	line-height: 100%;
	vertical-align: middle;
}


#privacy #page_title h1 {
	letter-spacing:-0.13em !important;
}
#privacy .contents {
	width: 900px;
	margin-right: auto;
	margin-left: auto;
	font-size: 16px;
	line-height: 190%;
}
#privacy .contents .policy dt {
	font-size: 18px;
	line-height: 180%;
	margin-top: 1.5em;
}
#contact .contents .msg {
	text-align: center;
	font-size: 16px;
	margin-bottom: 80px;
}
#contact .contents .form {
	width: 320px;
	margin-right: auto;
	margin-left: auto;
}
#contact .contents .form dl .hidden {
	display: none;
}
#contact .contents .form form dl dt {
	padding-right: 1px;
	padding-left: 1px;
	margin-top: 40px;
}
#contact .contents .form form dl dt:first-child {
	display:none;
}
#contact .contents .form form dl dd {

}
#contact .contents .form form dl dd span.label {
	display:none;
}
#contact .contents .form dl dd input {
	box-sizing: border-box;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: solid;
	border-left-style: none;
	border-bottom-width: 2px;
	border-bottom-color: #bebebe;
	width: 100%;
	font-size: 16px;
	padding: 10px;
}
#contact .contents .form dl dd textarea {
	box-sizing: border-box;
	width: 100%;
	height:12em;
	font-size: 16px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 150%;
	padding: 10px;
	border: 2px solid #bebebe;
	margin-top:5px;
}

#contact .contents .form dl dd select {
	box-sizing: border-box;
	width: 100%;
	border: 2px solid #bebebe;
	padding: 10px;
}
#contact .contents .form dl dd select option {
	font-size:16px;
}
#contact .contents .form dl dd select option:hover{
  background-color:#11ae82 !important;
  color:#FFF;
}


#contact .contents .form .sup {
	font-size: 12px;
	margin-top: 1em;
	line-height:160%;
}
#contact .contents .form form .btn {
	margin-top: 65px;
	text-align: center;
}
#contact .contents .form form .btn input {
	color: #FFF;
	background-color: #2ab790;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	width: 95%;
	padding-top: 16px;
	padding-bottom: 16px;
	font-size: 18px;
	font-family: 'Roboto',"ナウ-GM","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}


#contact .contents .form input[type="text"],
#contact .contents .form input[type="button"],
#contact .contents .form input[type="email"],
#contact .contents .form input[type="submit"],
#contact .contents .form textarea {
  border-radius: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
#flow .contents {
	width: 550px;
	margin-right: auto;
	margin-left: auto;
}
#flow .contents .flow {
	box-sizing:border-box;
	width:100%;
	padding: 25px;
	margin-bottom: 50px;
	background-color: #FFF;
	position: relative;
}
#flow .contents .flow:after {
	content: "";
	display:block;
	background-image: url(/img/flow_arrow_01.png);
	background-repeat: no-repeat;
	background-position: center center;
	height: 50px;
	width: 100%;
	position: absolute;
	left: 0px;
	bottom: -50px;
}
#flow .contents .flow:last-child:after {
	display:none;
}
#flow .contents .flow h2 {
	line-height: 120%;
	font-weight: normal;
	color: #11ae82;
	font-size: 32px;
	margin-bottom:10px;
}
#flow .contents .flow .text {
	font-size: 18px;
	line-height: 175%;
}

#flow .contents .flow .img {
	text-align: center;
	display: block;
	line-height: 0px;
	padding-top: 40px;
}
#flow .contents .flow .tel {
	text-align: center;
	margin-top: 30px;
	margin-bottom: 10px;
}
#flow .contents .flow .time {
	text-align: center;
}
#culture .contents {
	width: 1000px;
	margin-right: auto;
	margin-left: auto;
}

#culture .contents .main {
	width:100%;
	display:flex;
	justify-content:center;
	line-height:0;
	flex-wrap:wrap;
	margin-bottom:85px;
}
#culture .contents .entry {
	width:600px;
	margin-right: auto;
	margin-left: auto;
	font-family: "ナウ-GM","メイリオ", Meiryo, "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "ＭＳ Ｐゴシック", "MS PGothic", Osaka, sans-serif;
	white-space:nowrap;
}
#culture .contents .entry h2 {

	font-size:128%;
	margin-bottom:1.6em;
}
#culture .contents .entry .body {
	width:100%;
	line-height:240%;
	font-size: 15px;
	margin-bottom:30px;
}

/*

#culture .contents .entry {
	width:870px;
	display:flex;
	justify-content: space-between;
	flex-wrap:wrap;
	margin-right: auto;
	margin-left: auto;
}
#culture .contents .entry h2 {
	width: 200px;
	height: 200px;
	border-radius: 100px;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	text-align: center;
	flex-wrap: wrap;
	background-color: #11ae82;
	font-weight: normal;
	color: #FFF;
	font-size: 25px;
	line-height: 40px;
}
#culture .contents .entry .body {
	width:560px;
}

#culture .contents .entry .body ol {
	counter-reset: list_02;
}
#culture .contents .entry .body ol li {
	font-size: 16px;
	line-height:180%;
	margin-bottom: 1em;
	position: relative;
}
#culture .contents .entry .body ol li:before {
	counter-increment: list_02;
	content: counter(list_02);
	font-size: 30px;
	margin-bottom: 1em;
	width: 40px;
	position: absolute;
	left: -50px;
	top: 5px;
	color: #11ae82;
	text-align: center;
	display: block;
}

*/

#culture .contents .entry .btn {
	width: 100%;
	padding-top:65px;
}
#culture .contents .entry .btn a {
	display:block;
	box-sizing: border-box;
	width: 320px;
	margin-left:auto;
	margin-right:auto;
	line-height: 55px;
	padding-top:1px;
	font-size: 16px;
	text-align: center;
	color: #11ae82;
	text-decoration: none;
	border: 1px solid #11ae82;
	position: relative;
	transition:0.4s;
	background-color:#FFF;
	padding-right:15px;
}
#culture .contents .entry .btn a:hover {
	opacity:0.6;
	background-color:#11ae82;
	color: #FFF;
}
#culture .contents .entry .btn a:after {
	display: block;
	content: "＞";
	width: 45px;
	line-height: 55px;
	padding-top:1px;
	text-align: center;
	position: absolute;
	top: 0px;
	right: 0px;
	font-size:12px;
}



#news_detail.page_type_b #page_title h1 {
	font-size: 28px !important;
}

#news_detail > .contents {
	width: 700px;
	margin-right: auto;
	margin-left: auto;
}


#news_detail > .contents header .date {
	font-size:15px;
	font-weight:normal;
	margin-bottom:35px;
	color:#999;
}
#news_detail > .contents header .entry-title {
	font-size:24px;
	font-weight:normal;
	margin-bottom:35px;
	line-height:200%;
}
#news_detail > .contents .entry-content {
	font-size:16px;
	line-height:210%;
}
#news_detail > .contents .entry-content p {
	margin-bottom:2em;
}
#news_detail > .contents .entry-content img {
	max-width:100%;
	height:auto;
}
#news_detail > .contents .entry-content  a img {
	transition:0.4s;
}
#news_detail > .contents .entry-content  a:hover img {
	opacity:0.7;
}


#genba_blog #page_title h1 {
	margin-bottom:85px !important;
}


#genba_blog #blog_contents {
	position:relative;
	width: 520px;
	margin-right: auto;
	margin-left: auto;
}


#genba_blog #blog_contents .contents {
	width: 520px;
	margin-right: auto;
	margin-left: auto;
	margin-bottom: 65px;
}


#genba_blog #blog_contents > .contents .genba_date {
	font-size:15px;
	font-weight:normal;
}
#genba_blog #blog_contents > .contents .genba_title {
	font-size:16px;
	font-weight:normal;
	margin-bottom:15px;
	line-height:200%;
}

#genba_blog #blog_contents > .contents .genba_photo {
	width:100%;
}
#genba_blog #blog_contents > .contents .genba_photo figure {
	text-align:center;
	width:100%;
	display:block;
	line-height:0;
	margin-bottom:25px;
}
#genba_blog #blog_contents > .contents .genba_photo figure img {
	width:100%;
	height:auto;
}

#genba_blog #blog_contents > .contents .genba_body {
	font-size:16px;
	line-height:210%;
}
#genba_blog #blog_contents > .contents .genba_body p {
	margin-bottom:2em;
}
#genba_blog #blog_contents > .contents .genba_body img {
	max-width:100%;
	height:auto;
}
#genba_blog #blog_contents > .contents .genba_body  a img {
	transition:0.4s;
}
#genba_blog #blog_contents > .contents .genba_body  a:hover img {
	opacity:0.7;
}



#reform_detail .menu {
	display: block;
	width: 681px;
	margin-right: auto;
	margin-left: auto;
}
#reform_detail .menu ul {
	width: 100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
#reform_detail .menu ul li {
	width: 111px;
	border-radius: 4px;
	margin-bottom: 3px;
	background-image: url(/img/service_menu_bg.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	transition:0.4s;
}
#reform_detail .menu ul li.active:hover {
	opacity:0.7;
}
#reform_detail .menu ul li.current {
	filter: saturate(100%);
}
#reform_detail .menu ul li a {
	display: block;
	box-sizing: border-box;
	width: 111px;
	height: 111px;
	padding-top: 75px;
	background-repeat: no-repeat;
	background-position: center 15px;
	font-size: 15px;
	line-height: 120%;
	color: #FFF;
	text-decoration: none;
	letter-spacing: 0.1em;
	padding-left: 0.1em;
	text-align: center;
	background-size: 55px 55px;
}

#reform_detail  .menu ul li:nth-child(1) a {
	background-image: url(/img/service_menu_01.png);
}
#reform_detail  .menu ul li:nth-child(2) a {
	background-image: url(/img/service_menu_02.png);
}
#reform_detail  .menu ul li:nth-child(3) a {
	background-image: url(/img/service_menu_03.png);
}
#reform_detail  .menu ul li:nth-child(4) a {
	background-image: url(/img/service_menu_04.png);
}
#reform_detail  .menu ul li:nth-child(5) a {
	background-image: url(/img/service_menu_05.png);
	letter-spacing:0;
	padding-left: 0;
}
#reform_detail  .menu ul li:nth-child(6) a {
	background-image: url(/img/service_menu_06.png);
}
#reform_detail  .menu ul li:nth-child(7) a {
	background-image: url(/img/service_menu_07.png);
}
#reform_detail  .menu ul li:nth-child(8) a {
	background-image: url(/img/service_menu_08.png);
}
#reform_detail  .menu ul li:nth-child(9) a {
	background-image: url(/img/service_menu_09.png);
}
#reform_detail  .menu ul li:nth-child(10) a {
	background-image: url(/img/service_menu_10.png);
	letter-spacing:-1px;
	padding-left: 0;
}
#reform_detail  .menu ul li:nth-child(11) a {
	background-image: url(/img/service_menu_11.png);
}
#reform_detail .menu ul li:nth-child(12) a {
	background-image: url(/img/service_menu_12.png);
	letter-spacing:0;
	padding-left: 0;
}


#reform_detail .contents {
	width: 850px;
	margin-right: auto;
	margin-left: auto;
}
#reform_detail .content {
	margin-bottom: 65px;
}
#reform_detail .intro .title {
	width: 100%;
	margin-bottom: 35px;
	display:flex;
	justify-content:space-between;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
}
#reform_detail .intro .title h2 {
	box-sizing:border-box;
	width: 150px;
	height:150px ;
	border-radius: 5px;
	background-image: url(/img/service_menu_bg.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	position:relative;
	padding-top: 110px;
	font-size: 19px;
	line-height: 120%;
	color: #FFF;
	text-decoration: none;
	letter-spacing: 0.1em;
	padding-left: 0.1em;
	text-align: center;
	font-weight:bold;
}
#reform_detail .intro .title h2:before {
	content:"";
	display: block;
	box-sizing: border-box;
	width: 150px;
	height: 150px;
	padding-top: 110px;
	background-repeat: no-repeat;
	background-position: center 20px;
	background-size: 83px 83px;
	position:absolute;
	top:0px;
	left:0px;
}
#reform_detail #menu01 .intro .title h2:before {
	background-image: url(/img/service_menu_01.png);
}
#reform_detail #menu02 .intro .title h2:before {
	background-image: url(/img/service_menu_02.png);
}
#reform_detail #menu03 .intro .title h2:before {
	background-image: url(/img/service_menu_03.png);
}
#reform_detail #menu04 .intro .title h2:before {
	background-image: url(/img/service_menu_04.png);
}
#reform_detail #menu05 .intro .title h2:before {
	background-image: url(/img/service_menu_05.png);
}
#reform_detail #menu06 .intro .title h2:before {
	background-image: url(/img/service_menu_06.png);
}
#reform_detail #menu07 .intro .title h2:before {
	background-image: url(/img/service_menu_07.png);
}
#reform_detail #menu08 .intro .title h2:before {
	background-image: url(/img/service_menu_08.png);
}
#reform_detail #menu09 .intro .title h2:before {
	background-image: url(/img/service_menu_09.png);
}
#reform_detail #menu10 .intro .title h2 {
	letter-spacing:-1px;
}
#reform_detail #menu10 .intro .title h2:before {
	background-image: url(/img/service_menu_10.png);
}
#reform_detail #menu11 .intro .title h2:before {
	background-image: url(/img/service_menu_11.png);
}
#reform_detail #menu12 .intro .title h2:before {
	background-image: url(/img/service_menu_12.png);
}

#reform_detail .intro .title p {
	box-sizing: border-box;
	width: 645px;
	font-size: 26px;
	line-height: 200%;
}

#reform_detail .intro .main {
	display:block;
	line-height:0;
	margin-bottom:35px;
}
#reform_detail .intro .body {
	width:100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
#reform_detail .intro .body .text {
	box-sizing: border-box;
	width:415px;
	padding-left:5px;
	font-size:15px;
	line-height:200%;
}

#reform_detail .intro .body .sub {
	box-sizing: border-box;
	width:404px;
	display:flex;
	line-height:0;
	justify-content:space-between;
	flex-wrap:wrap;
	
}
#reform_detail .case .ttl {
	font-size: 34px;
	line-height: 37px;
	font-weight: bold;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #373737;
	display: inline-block;
	padding-right: 5px;
	padding-left: 1px;
	margin-bottom:23px;
}
#reform_detail .case .lead {
	font-size:21px;
	line-height:190%;
	margin-bottom:27px;
}
#reform_detail .case .b_a {
	width:100%;
	display:flex;
	justify-content:space-between;
	align-items: flex-start;
	flex-wrap:wrap;
	margin-bottom:45px;
	
}
#reform_detail .case .b_a:last-child {
	margin-bottom:0;
	
}
#reform_detail .case .b_a .item {
	width:350px;
	position:relative;
}
#reform_detail .case .b_a.vt .item {
	width:100%;
}
#reform_detail .case .b_a .item h3 {
	width: 113px;
	line-height: 33px;
	padding-top: 1px;
	position: absolute;
	color: #FFF;
	font-size: 18px;
	font-weight: bold;
	text-align: center;
	background-color: #363636;
	display: block;
	left: 0px;
	top: 0px;
	z-index: 1;
	letter-spacing:1px;
}
#reform_detail .case .b_a .item.after h3 {
	background-color: #11ae82;
}
#reform_detail .case .b_a .item .photo {
	line-height:0px;
	position:relative;
	z-index:0;
}
#reform_detail .case .b_a .item .caption {
	font-size:14px;
	line-height:190%;
	margin-top:0.8em;
}
#reform_detail .case .b_a .arrow {
	background-image: url(/img/reform_detail_case_arrow.png);
	background-repeat: no-repeat;
	background-position: center center;
	width: 41px;
	height:270px;
}
#reform_detail .case .b_a.vt .arrow {
	background-image: url(/img/reform_detail_case_arrow_sp.png);
	width: 100%;
	height:120px;
}

#reform_detail .point .item {
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 15px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
	background-color: #f2f2f2;
}
#reform_detail .point .item.green {
	background-color: #eaf8f4;
}
#reform_detail .point .item .photo {
	line-height: 0px;
	height: 190px;
	width: 255px;
	display:flex;
	justify-content:center;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
}
#reform_detail .point .item .photo_sp {
	display:none;
}
#reform_detail .point .item .body {
	box-sizing: border-box;
	width: 585px;
	padding-top: 15px;
	padding-right: 24px;
	padding-bottom: 15px;
}
#reform_detail .point .item .body .ttl {
	font-size: 18px;
	line-height: 180%;
	margin-bottom:5px;
}
#reform_detail .point .item  .body .ttl.offset {
	text-indent:-0.4em;
}
#reform_detail .point .item  .body p {
	font-size: 14px;
	line-height: 190%;
}
#reform_detail .feedback {
	padding-bottom:30px;
}
#reform_detail .feedback .ttl {
	color: #11ae82;
	font-size: 26px;
	line-height: 190%;
}
#reform_detail .feedback .text {
	font-size: 16px;
	line-height: 190%;
	margin-bottom:20px;
}
#reform_detail .feedback .photo {
	line-height:0;
	width:100%;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
}


#sidebar1 {
	position: fixed;
	left: auto;
	top: 235px;
	z-index:999999;
}
#sidebar1 .widget_categories {
	position: absolute;
	left: -440px;
	top: 0;
}

@media screen and (max-width: 1550px) {
#sidebar1 {
	left: 0px;
	top: 235px;
}
#sidebar1 .widget_categories {
	left: 75px;
}
}

#sidebar1 .widget_categories .widgettitle {
	font-size: 16px;
	line-height: 140%;
	margin-bottom: 20px;
	white-space: nowrap;
}
#sidebar1 .widget_categories ul li {
	font-size: 13.8px;
	line-height: 140%;
	padding-top: 3px;
	padding-bottom: 3px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #333;
	margin-bottom: 15px;
	white-space: nowrap;
}
#sidebar1 .widget_categories ul li a {
	color: #333;
	white-space: nowrap;
}
#sidebar1 .widget_categories ul li a:hover {
	color: #11ae82;
}
#sidebar1 .widget_categories ul li.current-cat a {
	color: #11ae82;
}



.-----PC_MOBILE_COMMON_CSS_END----- {}

/* スマートフォン用CSS */
@media screen and (max-width: 640px) {
	
.-----MOBILE_ONLY_CSS_START----- {}



body {
	font-size: 24px;
	line-height: 170%;
	width: 640px;
}

img {
	max-width:600px;
	height:auto;
}
br.pc_nowrap {
	display: inline;
}
br.mobile_nowrap {
	display: none;
}

.mobile_only {
	display:block;
}
.pc_only {
	display: none;
}

.pagination li {
	height: 50px;
	width: 50px;
	margin: 1px;
}
.pagination li a {
	font-size:22px;
	height: 48px;
	width: 48px;
	line-height: 48px;
}
.pagination li span {
	height: 48px;
	width: 48px;
	line-height: 48px;
}

#wrapper {
	width: 640px;
	min-width: 640px;
	margin-right: auto;
	margin-left: auto;
	overflow: hidden !important;
	position: relative;
	display: block;
	padding: 0px;
}
#header {
	height: 95px;
	z-index: 9999999999 !important;
	width: 640px;
	margin: 0px;
	padding: 0px;
}
#header .wrapper {
	height: 95px;
	z-index: 9999999999 !important;
	width: 640px;
	margin: 0px;
	padding: 0px;
	box-shadow: 0px 0px 10px 5px rgba(0,0,0,0.1);
}
#header .wrapper h1 {
	left: auto;
	right:27px;
	top: 5px;
	z-index: 2;
	font-size:16px;
	line-height:100%;
}
#header .logo {
	left: auto;
	top: 29px;
	right:30px;
}
#header .logo a {
	height: 45px;
	width: 352px;	/*background-image: url(/img/header_logo_sp.png);*/
}


#header #g_nav_open_btn {
	top: 0px;
	right:auto;
	left: 8px;
	height: 95px;
	width: 95px;
	position: absolute;
	display: block;
	overflow: hidden;
	text-indent: -9999px;
	transition:0.5s;
	z-index:100;
}
#header #g_nav_open_btn div {
	width: 35px;
	height: 2px;
	display: block;
	background-color: #373737;
	position: absolute;
	transition:0.5s;
	left: 30px;
	top: 45px;
}
#header #g_nav_open_btn div:nth-child(1) {
	top: 31px;
	transition:0.3s;
}
#header #g_nav_open_btn div:nth-child(4) {
	top: 59px;
	transition:0.3s;
}
#header #g_nav_open_btn.on div:nth-child(1),
#header #g_nav_open_btn.on div:nth-child(4) {
	opacity:0;
	top: 45px;
}
#header #g_nav_open_btn.on div:nth-child(2) {
	transform:rotate(45deg);
	background-color: #FFF;
}
#header #g_nav_open_btn.on div:nth-child(3) {
	transform:rotate(-45deg);
	background-color: #FFF;
}


#header .menu {
	position: absolute;
	width: 640px;
	height:1130px;
	left: 0px;
	top: 0px;
	display: none;
	z-index: 98;
	overflow-y:scroll;
}
#header .menu:after {
	content:"";
	display:block;
	height:180px;
	width: 640px;
}
#g_nav {
	box-sizing:border-box;
	width: 640px;
	position: static;
	bottom: auto;
	right: auto;
	text-align: center;
	margin: 0px;
	padding: 0px;
	padding-bottom:50px;
	background-color: transparent;
	background-image: url(/img/main_02.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
}
#g_nav ul {
	padding-top:95px !important;
	padding-bottom:0 !important;
	width: 640px;
	height: auto;
	text-align: center;
	margin: 0px;
	padding: 0px;
	position: static;
}
#g_nav ul li {
	text-align: center;
	width: 640px;
	height: 73px;
	padding: 0px;
	display: block;
	margin: 0px;
}
#g_nav ul li a {
	box-sizing:border-box;
	height: 70px;
	color: #FFF;
	text-decoration: none;
	font-size: 32px;
	line-height: 70px;
	margin: 0px;
	padding: 0;
	border-radius: 0;
	font-weight:normal;
	text-align:left;
	padding-left:110px;
}
#g_nav ul li:nth-of-type(1) a,
#g_nav ul li:nth-of-type(2) a,
#g_nav ul li:nth-of-type(6) a {
	font-size: 33px;
	color: #FFF;
}
#g_nav ul li a:hover {
	background-color: rgba(255,255,255,0.2);

}
#g_nav ul li a.active {
	background-color: rgba(255,255,255,0.2);
	background-image: url(/img/sp_g_nav_arrow.png);
	background-repeat: no-repeat;
	background-position: 80px center;
}
#g_nav .mobile {
	display:block;
}
#g_nav ul.mobile {
	padding-top:0px !important;
	padding-bottom:10px !important;
	width: 640px;
	height: auto;
	text-align: center;
	margin: 0px;
	padding: 0px;
	position: static;
}
#g_nav ul.mobile li {
	text-align: center;
	width: 640px;
	height: 60px;
	padding: 0px;
	display: block;
	margin: 0px;
}
#g_nav ul.mobile li a {
	box-sizing:border-box;
	height: 60px;
	color: #FFF;
	text-decoration: none;
	font-size: 25px;
	line-height: 60px;
	margin: 0px;
	padding: 0;
	border-radius: 0;
	font-weight:normal;
	text-align:left;
	padding-left:110px;
}
#g_nav ul.mobile li a em {
	font-size: 21px;
}
#g_nav ul.mobile li.privacy a {
	font-size: 18px;
}
#g_nav .line {
	display:none;
}
#g_nav .line a {
	box-sizing: border-box;
	display: block;
	color: #FFF;
	text-decoration: none;
	font-size: 30px;
	line-height:43px;
	background-image: url(/img/sp_g_nav_line.png);
	background-repeat: no-repeat;
	background-position: center top;
	height: 204px;
	width: 466px;
	padding-top: 25px;
	margin-right: auto;
	margin-left: auto;
	text-align: left;
	padding-left:25px;
	letter-spacing:0.1em;
}

#page_top {
	display:none;
}
#page_top a {
	font-size: 20px;
	line-height: 45px;
	font-weight: bold;
	color: #FFF;
	text-decoration: none;
	text-align: center;
	display: block;
	width: 300px;
	margin-right: auto;
	margin-left: auto;
	border-radius: 6px 6px 0 0;
	background-color: #006699;
	padding-top: 2px;
}
#page_top a:active {
	opacity:0.6;
}

.main_contents {
	width: 100%;
}


#sub_menu {
	position: fixed;
	z-index: 99;
	width:640px;
	right: 0px;
	bottom: 0px;
}
#sub_menu ul {
	width:100%;
	padding-right:0px;
	padding-bottom:0px;
	right: 0px;
	bottom: -40px;
	transition:1s;
	opacity:0;
	position:absolute;
}
#sub_menu.on ul {
	right: 0px;
	bottom: 0px;
	opacity:1;
	display:flex;
	justify-content:space-between;
	background-color:#FFF;
}
#sub_menu ul li {
	box-sizing:border-box;
	display: block;
	width: calc(20% - 0.8px);
	height: 62px;
	background-repeat: no-repeat;
	background-position: center center;
	overflow: hidden;
	position: relative;
	text-indent: -9999px;
	transition:0.4s;
	border-radius:0px;
}
#sub_menu ul li a {
	display: block;
	width: 100%;
	height: 62px;
	background-repeat: no-repeat;
	background-position: center center;
	overflow: hidden;
	position: relative;
	text-indent: -9999px;
	transition:0;
	border-radius:0px;
	background-color:#373737;
	margin-bottom:0px;
}
#sub_menu ul li a:hover {
	background-color:#373737;
}
#sub_menu ul li a:active {
	background-color:#373737;
	opacity:0.5;
}
#sub_menu ul li:nth-child(1) a {
	background-image: url(/img/sub_menu_01_w2.svg);
	background-size: auto 34px;
}
#sub_menu ul li:nth-child(2) a {
	background-image: url(/img/sub_menu_02_w2.svg);
	background-size: auto 27px;
}
#sub_menu ul li:nth-child(3) a {
	background-image: url(/img/sub_menu_03_w2.svg);
	background-size: auto 37px;
}
#sub_menu ul li:nth-child(4) a {
	background-image: url(/img/sub_menu_04_w2.svg);
	background-size: auto 32px;
}
#sub_menu ul li:nth-child(5) a {
	background-image: url(/img/sub_menu_05_w2.svg);
	background-size: auto 32px;
}


.main_contents {
	box-sizing: border-box;

	position: relative;
}

#page_top {
	display:none;
}
#footer {
	width: 100%;
	background-color: #FFFFFF;
	position: relative;
	z-index: 1;
}
#footer .wrapper {
	text-align:center;
	padding-top:50px;
	padding-bottom:95px;
}
#footer .wrapper .catch {
	height: 109px;
	width: 497px;
}
#footer .wrapper .tel a {
	height: 53px;
	width: 518px;
	
}
#footer .wrapper .time {
	font-size:24px;
	margin-bottom:55px;
	line-height:110%;
}
#footer .wrapper .menu_01 {
	width:600px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:10px;
}
#footer .wrapper .menu_01 ul {
	box-sizing:border-box;
	width: 100%;
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	border-top-width: 4px;
	border-left-width: 4px;
	border-top-style: solid;
	border-left-style: solid;
	border-top-color: #FFF;
	border-left-color: #FFF;
	background-color:#FFF;
}
#footer .wrapper .menu_01 ul li {
	box-sizing:border-box;
	width: 50%;
	display: flex;
	align-items: stretch;
	flex-wrap: wrap;
	border-bottom-width: 4px;
	border-right-width: 4px;
	border-bottom-style: solid;
	border-right-style: solid;
	border-bottom-color: #FFF;
	border-right-color: #FFF;
	background-color:#f5f5f5;
}
#footer .wrapper .menu_01 ul li a {
	font-size: 22px;
	line-height: 28px;
	width: 100%;
	height: 64px;
	color: #333;
	text-decoration: none;
	text-align: center;
	display: flex;
	justify-content: center;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
	transition:0.4s;
}
#footer .wrapper .menu_01 ul li a:hover {
	background-color:#f5f5f5;
}

#footer .wrapper .menu_02 {
	width:690px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:65px;
}
#footer .wrapper .menu_02 ul {
	box-sizing:border-box;
	width: 100%;
	display: flex;
	justify-content: flex-start;
	flex-wrap: wrap;
}
#footer .wrapper .menu_02 ul li a {
	white-space: nowrap;
	display: inline-block;
	padding-left: 2em;
	padding-right: 2em;
	color: #333;
	text-decoration: none;
	font-size:19px;
	font-weight:bold;
	transition:0.4s;
}
#footer .wrapper .menu_02 ul li a:hover {
	color:#11ae82;
}
#footer .wrapper .menu_02 ul li a:hover:before {
	color:#11ae82;
}
#footer .wrapper .menu_02 ul li a:before {
	content:"＞";
	display:inline-block;
	padding-right:3px;
	color:#B1B1B1;
}

#footer .wrapper .logo {
	margin-bottom:17px;
}
#footer .wrapper .logo img {
	width:380px;
	height:auto;
}
#footer .wrapper address {
	font-size:19px;
	display: block;
	margin-bottom:15px;
	line-height:140%;
}
#footer .wrapper .copyright {
	display: block;
	font-size:19px;

}


#main_image {
	width: 100%;
	height:1130px;
	padding-top:1130px;
}
#main_image #main_01 {
	width: 100%;
	height: 760px;
	background-repeat: no-repeat;
	background-position: center center;
	position: fixed;
	left: 0px;
	top: 80px;
	z-index: 0;
	display:flex;
	justify-content:center;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
	overflow:visible;
}
#main_image #main_01 #movie_box_2 {
	width: 100%;
	height: 1130px;
	display:none;
}
#main_image #main_01 .catch {
	display: block;
	text-indent: -9999;
	background-image: url(/img/main_01_catch.png);
	height: 141px;
	width: 443px;
	overflow: hidden;
	position: relative;
}

#main_image #main_02 {
	width: 100%;
	height: 1130px;
	position: relative;
	display:flex;
	justify-content:center;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
}
#main_image #main_02 .bg {
	width: 100%;
	height: 1130px;
	background-image: url(/img/main_02.jpg);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	position: absolute;
	top:0px;
	left:0px;
	opacity:0.93;
}
#main_image #main_02 .text {
	display: block;
	text-indent: -9999;
	background-image: url(/img/main_02_text.png);
	height: 880px;
	width: 480px;
	overflow: hidden;
	position: relative;
	background-size: contain;
	background-position: center center;
}

#top_contents {
	width: 100%;
	background-color:#FFF;
}
#top_contents .content {
	width: 100%;
	padding-top:125px;
}
#top_contents .content .ttl_01 {
	color: #11AE82;
	text-align: center;
	font-size: 38px;
	line-height: 120%;
	margin-bottom: 50px;
	font-weight: normal;
	padding-left:0.2em;
	letter-spacing:0.2em;
}

#top_contents .content .lead {
	text-align: center;
	font-size: 30px;
	line-height: 190%;
	margin-bottom: 65px;
}
#top_contents #news .ttl_01 {
	font-size: 40px;
}
#top_contents #news .news_slider {
	height: 380px;
	width: 100%;
}
#top_contents #reform_menu .menu {
	display: block;
	width: 600px;
	margin-right: auto;
	margin-left: auto;
}
#top_contents #reform_menu .menu ul {
	width: 600px;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
#top_contents #reform_menu .menu ul li {
	width: 182px;
	margin-bottom: 25px;
}
#top_contents #reform_menu .menu ul li > div {
	width: 182px;
}
#top_contents #reform_menu .menu ul li .btn {
	width: 182px;
	border-radius: 6px;
}
#top_contents #reform_menu .menu ul li .btn:hover {
	opacity:0.7;
}
#top_contents #reform_menu .menu ul li a {
	width: 182px;
	height: 182px;
	padding-top: 134px;
	background-position: center 22px;
	font-size: 23px;
	line-height: 120%;
	letter-spacing: 0.1em;
	padding-left:  0.1em;
	background-size: auto;
	font-weight:bold;
}



#top_contents #example .main {
	display: block;
	width: 640px;
	margin-right: auto;
	margin-left: auto;
	margin-top:65px;
}
#top_contents #example .main ul {
	width: 100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
#top_contents #example .main ul li {
	width: 640px;
	height:440px;
}
#top_contents #example .main ul li > div {
	width: 640px;
	height:377px;
}
#top_contents #example .main ul li .btn {
	width: 640px;
	height:440px;
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	transition:0.4s;
	display:flex;
	justify-content:center;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
}
#top_contents #example .main ul li a {
	display: flex;
	flex-wrap:wrap;
	justify-content:center;
	align-content:center;
	align-items:center;
	box-sizing: border-box;
	width: 315px;
	height: 270px;
	font-size: 30px;
	line-height: 50px;
	color: #FFF;
	text-decoration: none;
	letter-spacing: 0.1em;
	padding-left: 0.1em;
	text-align: center;
	background-color:rgba(17,174,130,0.7);
}
#top_contents #example .main ul li a em {
	display:block;
	width:100%;
	font-size: 26px;
}

#top_contents #example .sub {
	display: block;
	width: 100%;
}
#top_contents #example .sub ul {
	width: 100%;
	display:flex;
	justify-content:center;
	flex-wrap:wrap;
	margin-top:75px;
}
#top_contents #example .sub ul li {
	width: 496px;
	margin-bottom:35px;
}
#top_contents #example .sub ul li a {
	display:block;
	box-sizing: border-box;
	width: 100%;
	line-height: 85px;
	padding-top:2px;
	font-size: 25px;
	text-align: center;
	color: #11ae82;
	text-decoration: none;
	border: thin solid #11ae82;
	position: relative;
	transition:0.4s;
	letter-spacing:1px;
}
#top_contents #example .sub ul li a:hover {
	opacity:0.6;
	background-color:#11ae82;
	color: #FFF;
}
#top_contents #example .sub ul li a:after {
	display: block;
	content: "＞";
	width: 65px;
	line-height: 85px;
	padding-top:1px;
	text-align: center;
	position: absolute;
	top: 0px;
	right: 0px;
}
#top_contents #staff .main {
	text-align: center;
	line-height: 0px;
}
#top_contents #staff .staff {
	width: 550px;
	margin-right: auto;
	margin-left: auto;
	margin-top: 100px;
	display:flex;
	justify-content:space-between;
	align-content:center;
	align-items:center;
	flex-wrap:wrap;
}

#top_contents #staff .staff .photo {
	width: 190px;
}
#top_contents #staff .staff .photo img {
	width:100%;
	height:auto;
}
#top_contents #staff .staff .profile  {
	width: 310px;
}
#top_contents #staff .staff .profile .job  {
	font-size:18px;
	color: #11ae82;
	margin-bottom:10px;
	line-height:120%;
}
#top_contents #staff .staff .profile .name  {
	font-size:28px;
	color: #11ae82;
	margin-bottom:10px;
	font-weight:normal;
	line-height:120%;
}
#top_contents #staff .staff .profile .text  {
	font-size:22px;
	line-height:200%;
}

#top_contents #teian .wrapper {
	width: 620px;
	margin-right: auto;
	margin-left: auto;
	padding-bottom:110px;
}
#top_contents #teian .main {
	text-align: center;
	line-height: 0px;
}
#top_contents #teian .ttl_02 {
	font-size:32px;
	line-height:160%;
	font-weight:normal;
	margin-bottom:0.5em;
	margin-top:1em;
	margin-left:15px;
	margin-right:15px;
	text-align:left;
}
#top_contents #teian .lead {
	font-size:24px;
	line-height:190%;
	margin-left:15px;
	margin-right:15px;
	text-align:left;
}


#top_contents #teian .btn {
	margin-left:15px;
	margin-right:15px;
}
#top_contents #teian .btn a {
	display: block;
	box-sizing: border-box;
	width: 100%;
	font-size: 24px;
	text-align: center;
	color: #11ae82;
	text-decoration: none;
	border: thin solid #11ae82;
	position: relative;
	transition: 0.4s;
	letter-spacing: 1px;
	padding-top: 30px;
	padding-bottom: 25px;
	line-height: 150%;
}
#top_contents #teian .btn a strong {
	font-size: 36px;
	font-weight:normal;
	line-height: 130%;
}
#top_contents #teian .btn a:hover {
	opacity:0.6;
	background-color:#11ae82;
	color: #FFF;
}
#top_contents #q_and_a {
	background-color: #ecf9f5;
	padding-bottom:300px;
}
#top_contents #q_and_a .ttl_01 {
	font-size: 40px;
}
#top_contents #q_and_a .list {
	width:545px;
	margin-left:auto;
	margin-right:auto;
	border-top-width: 2px;
	border-top-style: dashed;
	border-top-color: #11ae82;
	margin-bottom:50px;
}
#top_contents #q_and_a dl dt {
	padding-top: 25px;
	margin-bottom: 10px;
	font-size: 28px;
	line-height: 170%;
	color: #11ae82;
}
#top_contents #q_and_a dl dd {
	font-size: 24px;
	line-height: 200%;
	padding-bottom: 25px;
	border-bottom-width: 2px;
	border-bottom-style: dashed;
	border-bottom-color: #11ae82;
}
#top_contents #q_and_a .more {
	position: relative;
	width: 600px;
	margin-right: auto;
	margin-left: auto;
}
#top_contents #q_and_a .more a {
	background-image: url(/img/q_and_a_btn_arrow.png);
	background-repeat: no-repeat;
	background-position: center top;
	width: 100px;
	margin-right: auto;
	margin-left: auto;
	padding-top: 25px;
	font-size: 24px;
	text-decoration: none;
	line-height: 16px;
	text-align: center;
	display: block;
	color: #11ae82;
	transition:0.4s;
}
#top_contents #q_and_a.on .more a {
	display:none;
}
#top_contents #q_and_a .more:after {
	content: " ";
	display: block;
	background-image: url(/img/q_and_a_img_01.png);
	background-repeat: no-repeat;
	background-size: contain;
	height: 210px;
	width: 310px;
	position: absolute;
	top: 90px;
	right: 145px;
	background-position: center center;
	transition:0.4s;
}
#top_contents #q_and_a.on .more:after {
	top: 40px;
}
#top_contents #company {
	padding-bottom:50px;
}
#top_contents #company .main {
	text-align: center;
	line-height: 0px;
	margin-bottom:80px;
}
#top_contents #company dl {
	width:600px;
	margin-left:auto;
	margin-right:auto;
	line-height:200%;
	font-size:26px;
}
#top_contents #company dl dt {
	width: 6em;
	clear: both;
	float: left;
	margin-bottom:65px;
	color: #11ae82;
}
#top_contents #company dl dd {
	width:100%;
	box-sizing:border-box;
	padding-left:6em;
	margin-bottom:65px;
}
#top_contents #company .btn_01 {
	width: 496px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:95px;
}
#top_contents #company .btn_01 a {
	display:block;
	box-sizing: border-box;
	width: 100%;
	line-height: 85px;
	padding-top:1px;
	font-size: 26px;
	text-align: center;
	color: #FFF;
	text-decoration: none;
	border: thin solid #11ae82;
	position: relative;
	transition:0.4s;
	background-color:#11ae82;
	padding-right:15px;
}
#top_contents #company .btn_01 a:hover {
	opacity:0.6;
	background-color:#FFF;
	color: #11ae82;
}
#top_contents #company .btn_01 a:after {
	display: block;
	content: "＞";
	width: 65px;
	line-height: 85px;
	padding-top:1px;
	text-align: center;
	position: absolute;
	top: 0px;
	right: 0px;
	font-size:20px;
}
#top_contents #company .map {
	width: 500px;
	margin-left:auto;
	margin-right:auto;
	margin-bottom:45px;
}
#top_contents #company .btn_02 {
	width: 496px;
	margin-left:auto;
	margin-right:auto;
}
#top_contents #company .btn_02 a {
	display:block;
	box-sizing: border-box;
	width: 100%;
	line-height: 85px;
	padding-top:1px;
	font-size: 26px;
	text-align: center;
	color: #363636;
	text-decoration: none;
	border: thin solid #363636;
	position: relative;
	transition:0.4s;
	background-color:#FFF;
	padding-right:15px;
}
#top_contents #company .btn_02 a:hover {
	opacity:0.6;
	background-color:#363636;
	color: #FFF;
}
#top_contents #company .btn_02 a:after {
	display: block;
	content: "＞";
	width: 65px;
	line-height: 85px;
	padding-top:1px;
	text-align: center;
	position: absolute;
	top: 0px;
	right: 0px;
	font-size:20px;
}




.page_type_a #page_title {
	text-align:center;
	padding-top:175px;
	padding-bottom:70px;
}
.page_type_a #page_title h1 {
	font-size: 52px;
	line-height: 120%;
	font-weight: bold;
	margin-bottom:85px;
}
.page_type_a #page_title h1 em {
	font-size: 23px;
}
.page_type_a #page_title p {
	font-size: 24px;
}


.page_type_b {
	background-color: #FFF;
	padding-bottom:90px;
}
.page_type_b #page_title {
	text-align:center;
	padding-top:195px;
	padding-bottom:100px;
}
.page_type_b #page_title h1 {
	font-size: 38px;
	line-height: 120%;
}


#statement .contents {
	width: 520px;
	margin-right: auto;
	margin-left: auto;
	font-size: 28px;
	padding-left:15px;
	line-height: 280%;
}
#statement .contents h2 {
	font-size: 43px;
	line-height: 120%;
	margin-bottom:2em;
}
#statement .contents p {
	font-size:23.5px;
	margin-bottom:2em;
}

#access .contents {
	width: 545px;
	margin-right: auto;
	margin-left: auto;
	font-size: 30px;
	line-height: 240%;
	margin-bottom:90px;
}
#access .contents h2 {
	font-size: 32px;
	line-height: 130%;
	margin-bottom: 1em;
	padding-left: 80px;
	background-repeat: no-repeat;
	background-position: left center;
	background-size:contain;
}

#access .contents ol.list_01 {
	counter-reset: list_01;
}
#access .contents ol.list_01 li {
	text-indent:-36px;
	padding-left:38px;
	font-size: 25px;
	line-height:170%;
	margin-bottom:10px;
}
#access .contents ol.list_01 li:before {
	counter-increment: list_01;
	content: counter(list_01);
	display: inline-block;
	font-size: 20px;
	font-weight:bold;
	color: #FFF;
	line-height: 31px;
	padding-top:1px;
	background-color: #11ae82;
	text-align: center;
	width: 32px;
	margin-right: 6px;
	border-radius: 16px;
	text-indent: 0;
}
#access .contents .sup {
	font-size: 25px;
}
#access .contents .sup em {
	display: inline-block;
	width: 38px;
	font-size: 38px;
	color: #11ae82;
	line-height: 100%;
	vertical-align: middle;
}
_::-webkit-full-page-media, _:future, :root #access .contents .sup em  {
	font-size: 35px;
}


#privacy .contents {
	width: 552px;
	font-size: 23px;
}
#privacy .contents .policy dt {
	font-size: 24px;
}


#contact .contents .msg {
	text-align: center;
	font-size: 28px;
	margin-bottom: 80px;
}
#contact .contents .form {
	width: 500px;
	margin-right: auto;
	margin-left: auto;
}
#contact .contents .form dl .hidden {
	display: none;
}
#contact .contents .form form dl dt {
	padding-right: 1px;
	padding-left: 1px;
	margin-top: 40px;
}
#contact .contents .form form dl dd {

}

#contact .contents .form dl dd input {
	box-sizing: border-box;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: solid;
	border-left-style: none;
	border-bottom-width: 2px;
	border-bottom-color: #bebebe;
	width: 100%;
	font-size: 26px;
	padding: 10px;
}
#contact .contents .form dl dd textarea {
	box-sizing: border-box;
	width: 100%;
	height:12em;
	font-size: 26px;
	font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
	line-height: 150%;
	padding: 10px;
	border: 2px solid #bebebe;
	margin-top:5px;
}

#contact .contents .form dl dd select {
	box-sizing: border-box;
	width: 100%;
	border: 2px solid #bebebe;
	padding: 20px;
	font-size: 24px;
	background-image: url(/img/select_arrow.png);
	background-repeat: no-repeat;
	background-position: right center;
	background-size:39px 15px;
}
#contact .contents .form dl dd select option {
	font-size:26px;
}

select {
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    border: none;
    outline: none;
    background: transparent;
}


#contact .contents .form .sup {
	font-size: 24px;
	letter-spacing:-1px;
	margin-top: 1em;
	line-height:160%;
}
#contact .contents .form form .btn {
	margin-top: 65px;
	text-align: center;
}
#contact .contents .form form .btn input {
	color: #FFF;
	background-color: #2ab790;
	border-top-style: none;
	border-right-style: none;
	border-bottom-style: none;
	border-left-style: none;
	width: 95%;
	padding-top: 16px;
	padding-bottom: 16px;
	font-size: 32px;
	font-family: 'Roboto',"ナウ-GM","ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", Meiryo, Osaka, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}


#flow .contents {
	width: 550px;
	margin-right: auto;
	margin-left: auto;
}
#flow .contents .flow {
	box-sizing:border-box;
	width:100%;
	padding: 25px;
	margin-bottom: 50px;
	background-color: #FFF;
	position: relative;
}
#flow .contents .flow:after {
	content: "";
	display:block;
	background-image: url(/img/flow_arrow_01.png);
	background-repeat: no-repeat;
	background-position: center center;
	height: 50px;
	width: 100%;
	position: absolute;
	left: 0px;
	bottom: -50px;
}
#flow .contents .flow h2 {
	font-size: 30px;
}
#flow .contents .flow .text {
	font-size: 22px;
	line-height: 175%;
}
#flow .contents .flow .time {
	font-size:18px;
}


#culture .contents {
	width: 600px;
}

#culture .contents .main {
	width:100%;
	display:block;
	text-align:center;
}
#culture .contents .main img {
	width:540px;
	height:auto !important;
	margin-bottom:20px;
}
#culture .contents .entry {
	width:540px;
	display:block;
	position:relative;
	white-space: normal;
}
#culture .contents .entry h2 {
	font-size: 25px;
}
#culture .contents .entry .body {
	font-size: 20px;
}

/*

#culture .contents .entry h2 {
	width: 200px;
	height: 200px;
	border-radius: 100px;
	display: flex;
	justify-content: center;
	align-content: center;
	align-items: center;
	text-align: center;
	flex-wrap: wrap;
	background-color: #11ae82;
	font-weight: normal;
	color: #FFF;
	font-size: 25px;
	line-height: 40px;
	position: absolute;
	top: -210px;
	right: -40px;
	z-index: 1;
}
#culture .contents .entry .body {
	width:500px;
	margin-left:auto;
	margin-right:0px;
}

#culture .contents .entry .body ol {
	counter-reset: list_02;
}
#culture .contents .entry .body ol li {
	font-size: 24px;
	line-height:180%;
	margin-bottom: 1em;
	position: relative;
}
#culture .contents .entry .body ol li:before {
	font-size: 42px;
	width: 40px;
	left: -40px;
	text-align: left;
}

*/

#culture .contents .entry .btn a {
	display:block;
	box-sizing: border-box;
	width: 496px;
	line-height: 85px;
	padding-top:1px;
	font-size: 26px;
	text-align: center;
	color: #11ae82;
	text-decoration: none;
	border: 1px solid #11ae82;
	position: relative;
	transition:0.4s;
	background-color:#FFF;
	padding-right:15px;
}
#culture .contents .entry .btn a:after {
	display: block;
	content: "＞";
	width: 65px;
	line-height: 85px;
	padding-top:1px;
	text-align: center;
	position: absolute;
	top: 0px;
	right: 0px;
	font-size:20px;
}


#news_detail.page_type_b #page_title h1 {
	font-size: 40px !important;
}
#news_detail > .contents {
	width: 520px;
	margin-right: auto;
	margin-left: auto;
}
#news_detail > .contents header .date {
	font-size:22px;
	margin-bottom:30px;
}
#news_detail > .contents header .entry-title {
	font-size:32px;
	margin-bottom:30px;
}
#news_detail > .contents .entry-content {
	font-size:24px;
}


#genba_blog {
	width:100% !important;
	overflow:hidden !important;
}
#genba_blog #blog_contents {
	width:100%
}
#genba_blog #blog_contents > .contents .genba_date {
	font-size:24px;
	font-weight:normal;
}
#genba_blog #blog_contents > .contents .genba_title {
	font-size:24px;
	font-weight:normal;
	margin-bottom:20px;
	line-height:200%;
}
#genba_blog #blog_contents > .contents .genba_body {
	font-size:24px;
	line-height:210%;
}
#genba_blog #blog_contents > .contents .genba_body  a img {
	transition: none;
}


#reform_detail .menu {
	display: block;
	width: 581px;
	margin-right: auto;
	margin-left: auto;
}
#reform_detail .menu ul {
	width: 100%;
	display:flex;
	justify-content:space-between;
	flex-wrap:wrap;
}
#reform_detail .menu ul li {
	width: 143px;
	border-radius: 4px;
	margin-bottom: 3px;
	background-image: url(/img/service_menu_bg.png);
	background-repeat: no-repeat;
	background-position: center center;
	background-size:cover;
	transition:0.4s;
}
#reform_detail .menu ul li.active:hover {
	opacity:0.7;
}
#reform_detail .menu ul li.current {
	filter: saturate(100%);
}
#reform_detail .menu ul li a {
	display: block;
	box-sizing: border-box;
	width: 143px;
	height: 143px;
	padding-top: 105px;
	background-repeat: no-repeat;
	background-position: center 22px;
	font-size: 20px;
	line-height: 120%;
	color: #FFF;
	text-decoration: none;
	letter-spacing: 0.1em;
	padding-left: 0.1em;
	text-align: center;
	background-size: 75px 75px;
}

#reform_detail  .menu ul li:nth-child(1) a {
	background-image: url(/img/service_menu_01.png);
}
#reform_detail  .menu ul li:nth-child(2) a {
	background-image: url(/img/service_menu_02.png);
}
#reform_detail  .menu ul li:nth-child(3) a {
	background-image: url(/img/service_menu_03.png);
}
#reform_detail  .menu ul li:nth-child(4) a {
	background-image: url(/img/service_menu_04.png);
}
#reform_detail  .menu ul li:nth-child(5) a {
	background-image: url(/img/service_menu_05.png);
	letter-spacing:0;
	padding-left: 0;
}
#reform_detail  .menu ul li:nth-child(6) a {
	background-image: url(/img/service_menu_06.png);
}
#reform_detail  .menu ul li:nth-child(7) a {
	background-image: url(/img/service_menu_07.png);
}
#reform_detail  .menu ul li:nth-child(8) a {
	background-image: url(/img/service_menu_08.png);
}
#reform_detail  .menu ul li:nth-child(9) a {
	background-image: url(/img/service_menu_09.png);
}
#reform_detail  .menu ul li:nth-child(10) a {
	background-image: url(/img/service_menu_10.png);
	letter-spacing:-1px;
	padding-left: 0;
}
#reform_detail  .menu ul li:nth-child(11) a {
	background-image: url(/img/service_menu_11.png);
}
#reform_detail .menu ul li:nth-child(12) a {
	background-image: url(/img/service_menu_12.png);
	letter-spacing:0;
	padding-left: 0;
}


#reform_detail .contents {
	width: 580px;
	margin-right: auto;
	margin-left: auto;
}
#reform_detail .content {
	margin-bottom: 65px;
}
#reform_detail .intro .title {
	margin-bottom: 30px;
}
#reform_detail .intro .title h2 {
	width: 138px;
	height:138px;
	padding-top:100px;
	font-size:20px;
}
#reform_detail .intro .title h2:before {
	width: 138px;
	height: 138px;
	background-position: center 18px;
	background-size: 75px 75px;
}

#reform_detail .intro .title p {
	width: 415px;
	font-size: 28px;
	line-height:180%;
}

#reform_detail .intro .main {
	margin-bottom:20px;
}
#reform_detail .intro .main img {
	width:100%;
	height:auto;
}
#reform_detail .intro .body {
	display:block;
}
#reform_detail .intro .body .text {
	width:100%;
	padding-left:0;
	font-size:23px;
	margin-bottom:20px;
}

#reform_detail .intro .body .sub {
	width:100%;
}
#reform_detail .intro .body .sub img {
	width:282px;
	height:auto;
}
#reform_detail .case .ttl {
	font-size: 25x;
	line-height: 28px;
	border-bottom-width: 2px;
}
#reform_detail .case .lead {
	font-size:28px;
	margin-bottom:25px;
}
#reform_detail .case .b_a {
	display:block;
	margin-bottom:100px;
	
}
#reform_detail .case .b_a .item {
	width:100%;	
}
#reform_detail .case .b_a .item h3 {
	width: 187px;
	line-height: 53px;
	padding-top: 2px;
	font-size: 32px;
	letter-spacing:2px;
}
#reform_detail .case .b_a .item .photo img {
	width:100%;
	height:auto;
}
#reform_detail .case .b_a .item .caption {
	font-size:22px;
}
#reform_detail .case .b_a .arrow {
	background-image: url(/img/reform_detail_case_arrow_sp.png);
	width: 100%;
	height:115px;
}

#reform_detail .point .item {
	box-sizing: border-box;
	width: 100%;
	margin-bottom: 25px;
	display: flex;
	justify-content: space-between;
	flex-wrap: wrap;
	align-content: center;
	align-items: center;
	background-color: #f2f2f2;
}
#reform_detail .point .item.green {
	background-color: #eaf8f4;
}
#reform_detail .point .item .photo {
	padding: 0px;
	line-height:0px;
	text-align:center;
	width:100%;
	height:auto;
}
#reform_detail .point .item .photo  {
	display:none;
}

#reform_detail .point .item .photo_sp {
	box-sizing: border-box;
	display: block;
	padding: 0px;
	line-height: 0px;
	text-align: center;
	width: 100%;
	height: auto;
	padding-top: 10px;
	padding-bottom: 20px;
}
#reform_detail .point .item .photo_sp img  {
	height: auto;
	width:310px;
}
#reform_detail .point .item .body {
	width: 100%;
	padding: 30px;
	padding-right: 25px;
}
#reform_detail .point .item .body .ttl {
	font-size: 25px;
}
#reform_detail .point .item  .body p {
	font-size: 22px;
	line-height: 190%;
}
#reform_detail .feedback {
	padding-bottom:30px;
}
#reform_detail .feedback .ttl {
	color: #11ae82;
	font-size: 36px;
	line-height: 160%;
	margin-bottom: 8px;
}
#reform_detail .feedback .text {
	font-size: 24px;
	line-height: 190%;
	margin-bottom:25px;
}
#reform_detail .feedback .photo img {
	width:100%;
	height:auto;
}


#sidebar1 {
	position: static;
	width:100%;
}
#sidebar1 .widget_categories {
	position: static;
	width: 520px;
	margin-right: auto;
	margin-left: auto;
}

#sidebar1 .widget_categories .widgettitle {
	font-size: 36px;
	line-height: 140%;
	margin-bottom: 30px;
	padding-top:50px;
}
#sidebar1 .widget_categories ul li {
	font-size: 26px;
	line-height: 140%;
	padding-top: 8px;
	padding-bottom: 8px;
	border-bottom-width: 1px;
	border-bottom-style: solid;
	border-bottom-color: #333;
	margin-bottom: 30px;
}
#sidebar1 .widget_categories ul li a {
	color: #333;
}
#sidebar1 .widget_categories ul li a:hover {
	color: #11ae82;
}
#sidebar1 .widget_categories ul li.current-cat a {
	color: #11ae82;
}


.-----MOBILE_ONLY_CSS_END----- {}

	
}
