@charset "UTF-8";


/**header--------------------------------------------------------------*/
#headerwrap {
	display:none;
}


/**footer--------------------------------------------------------------*/
#footerwrap {
	font-size: 14px;
    text-align: center;
    background: #e3e3e3;
    padding: 11px 0;
}
body #pc-backtop svg {
    fill: #fd7a42;
}
body #pc-backtop {
	right:20px;
}

/**top--------------------------------------------------------------*/
body .site {
	font-size: 18px;
    color: #000;
	font-family: "noto-sans-cjk-jp", sans-serif;
}
.site a:visited,.site a:link {
	color:inherit;
	text-decoration:underline;
	outline:none;
}
.site a:hover {
	color:#ec5285;
	text-decoration:none;
}
.site a img:hover,.module-buttons a:hover {
	opacity:0.7;
}
body .pagewidth {
  max-width: 94%;
}
body .module-fancy-heading .main-head + .sub-head:before {
  display: none;
}
.module-fancy-heading .fancy-heading {
  	margin:0;
	line-height: 1.4;
	font-size: inherit;
}
.module-fancy-heading.module .sub-head {
  padding:0;
}
.module .gallery-icon {
  cursor:default;
}
.module .module-title,.main-head,.sub-head,.image-title {
	
}
.module {
	margin-bottom:30px;
}
.module .module-title {
	margin-bottom:15px;
}
.module p:last-child {
	margin-bottom:0;
}
.module ul {
	margin:0;
	list-style:none;
}
.module li {
	line-height:1.7;
}
.module table {
	width:100%;
	border-collapse: collapse;
}
.module,ul,li,a,div,span,.image-title,tr,td,th,input {
	 box-sizing: border-box;
    -moz-box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -o-box-sizing: border-box;
    -ms-box-sizing: border-box;
}
.module_row {
	overflow: hidden;
}

/***/
.row-ed-lp {
	overflow:unset;
}
.t-lp .main-head {
    max-width: 500px;
    margin: 0 auto;
    background: #fe6b3e;
    color: #fff;
    font-size: 18px;
    border-radius: 30px;
    padding: 14px 10px;
	margin-bottom:20px;
}
.t-lp.module .sub-head {
    color:#fe6b3e;
	font-size:35px;
	padding:0 30px;
	display:inline-block;
	position:relative;
}
#pagewrap .t-lp .sub-head:before,#pagewrap .t-lp .sub-head:after {
    content: "";
    border: none;
    border-bottom: 2px solid #fe6b3e;
    width: 500px;
    position: absolute;
    top: 50%;
    left: -500px;
    display: block;
    padding: 0;
}
#pagewrap .t-lp .sub-head:after {
	left:auto;
	right:-500px;
}
.t-lp.module {
	text-align:center;
	overflow:hidden;
}
.ul1-lp li {
    color: #fff;
    font-size: 25px;
    background: #fe6b3e;
    padding: 20px 10px 0;
    text-align: center;
    writing-mode: tb-rl;
    -moz-writing-mode: vertical-rl;
    -o-writing-mode: vertical-rl;
    -webkit-writing-mode: vertical-rl;
    -webkit-text-orientation: upright;
    writing-mode: vertical-rl;
    text-orientation: upright;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
    letter-spacing: 0.1em;
    position: relative;
    margin-bottom: 45px;
}
.ul1-lp li:last-child {
	margin-bottom:35px;
}
.ul1-lp li:after {
    content: "";
    background: url(../../uploads/down1.png)no-repeat;
	background-size:100% 100%;
    width: 100%;
    height: 33px;
    display: block;
    position: absolute;
    bottom: -33px;
}
.ul1-lp li:before {
    content: "";
    background: url(../../uploads/ed_09_02.png)no-repeat;
	background-size:100% 100%;
    width: 100%;
    height: 35px;
    display: block;
    position: absolute;
    top: -35px;
}
.ul1-lp li:first-child:before {
	display:none;
}
.tab-lp tr td:last-child {
	padding-left:40px;
}
.ul2-lp li {
    color: #414141;
    font-size: 25px;
    font-weight: 700;
    line-height: 1.4;
    margin-bottom: 40px;
    position: relative;
    padding: 5px 0;
    padding-left: 65px;
}
.ul2-lp li:last-child {
	margin-bottom:0;
}
.ul2-lp ul {
	counter-reset: section;
}
.ul2-lp li:before {
    counter-increment: section;
    content: counter(section);
    border: 2px solid #fc9837;
    background: #fff;
    width: 44px;
    padding: 2px 5px 3px;
    text-align: center;
    display: block;
    box-sizing: border-box;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
}
#pagewrap .bg1-lp {
	background:url(../../uploads/bg2.png)no-repeat right top,url(../../uploads/bg2.png)no-repeat left bottom,#fff7d6;
	padding-bottom:140px;
}
.ro-lp {
	padding:60px 50px 30px;
	background:#fff;
	border-radius:50px;
	margin-bottom:35px;
}
.t1-lp .main-head {
    font-size: 25px;
    color: #fff;
    text-align: center;
    width: 42px;
    padding: 4px 5px 7px;
    background: #fe6b3e;
    border-radius: 50%;
    position: absolute;
    top: 0;
    left: 0;
}
.t1-lp.module .sub-head {
	color:#fe6b3e;
	font-size:30px;
	padding-left:60px;
}
.ro1-lp {
    background-color: #eee;
    padding: 40px 20px 10px;
    margin-bottom: 30px;
    border-radius: 20px;
}
.te-lp.module {
	padding:25px 80px;
	font-size:25px;
	color:#fff;
	background:#fe6b3e;
	border-radius:30px;
	line-height:1.7;
}
.te-lp .tb_text_wrap {
	z-index:20;
	position:relative;
}
.im-lp.module {
	margin-bottom:0;
	line-height:1;
}
#pagewrap .bg2-lp {
	background:url(../../uploads/bg2.png)no-repeat bottom 30px left,#fff7d6;
}
#pagewrap .abs01 {
	margin: 0;
    position: absolute;
    bottom: 30px;
    right: 8%;
    z-index: 10;
}
.ro2-lp {
	padding: 45px 50px 10px;
    background: #fff7d6;
    border-radius: 50px;
    margin-bottom: 50px;
}
.te1-lp.module {
	background:url(../../uploads/o.png)no-repeat center;
	background-color: #fff;
    padding: 30px 30px;
    border-radius: 20px
}
.t2-lp .main-head {
    color: #fff;
    font-size: 18px;
    background: #fc9837;
    border-radius: 30px;
    padding: 5px 10px;
    text-align: center;
}
.t2-lp.module {
	margin-bottom:15px;
}
#pagewrap .row1-lp .row_inner {
	max-width:1155px;
	width:94%;
	margin:0 auto;
}
.bg3-lp {
	background:#01a75e;
	background: linear-gradient(350deg, #01a75e, #8de64e);
}
.ro900 {
	max-width:900px;
	margin:0 auto;
}
#pagewrap .btn-lp a {
    color: #0ead5c;
    font-size: 25px;
	font-weight:700;
    padding: 31px 10px;
	background:#fff600;
	background:url(../../uploads/ar.png)no-repeat right 25px center,linear-gradient(344deg, #f0e800 50%, #fff600 50%);
}
.im1-lp.module {
	background:#fff7d6;
	padding:60px 3% 60px;
	border-radius:50px;
}
#pagewrap .bg4-lp {
	background:url(../../uploads/bg3.png)no-repeat top 55px center;
	background-size:cover;
}
.ro3-lp {
	background:#fff;
	border:2px solid #fe6b3e;
	border-radius:50px;
	padding:50px 50px 40px;
	margin-bottom:30px;
}
#pagewrap .abs2 {
    position: absolute;
    top: -59px;
    text-align: center;
    z-index: 10;
    left: 0;
    right: 0;
}
.t3-lp .main-head {
	display:inline-block;
	padding-left:60px;
	color:#fe6b3e;
	font-size:35px;
	background:url(../../uploads/ic1.png)no-repeat left center;
}
.t3-lp.module {
	text-align:center;
}
.te2-lp.module .module-title {
	color:#fe6b3e;
	font-size:18px;
	text-align:center;
	border:2px solid #fe6b3e;
	border-radius:30px;
	padding:12px 10px;
	margin-bottom:20px;
}
#pagewrap .bg5-lp {
	background:url(../../uploads/bg2.png)no-repeat left top -212px,url(../../uploads/bg2.png)no-repeat right bottom -212px;
}
.t4-lp .main-head {
	font-size:23px;
	background:url(../../uploads/bd.png)repeat-x bottom;
	padding-bottom:15px;
}


/* =============================================
	mobile menu settings
=============================================　*/
/* Mobile Menu Button */
#menu-button{
	visibility:hidden;
	opacity:0;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: fixed;
	z-index: 900;
	top: 10px;
	right: 10px;
	width: 48px;
	height: 48px;
	background-color: rgb(236 82 133 / 70%);
	color:#fff;
}
#menu-button.nav-on {
	visibility:visible;
	opacity:1;
}
#menu-button .ham-lines {
	position: relative;
	margin: 0 auto;
	width: 32px;
	height: 32px;
}
#menu-button .ham-lines span,
#menu-button .ham-lines::before,
#menu-button .ham-lines::after {
	position: absolute;
	display: block;
	right: 0;
	left: 0;
	margin: 0 auto;
	width: 28px;
	height: 2px;
	background-color: #fff;
	border-radius: 1px;
}
#menu-button .ham-lines span {
	bottom: 15px;
	transition: all .25s .25s;
	opacity: 1;
}
#menu-button .ham-lines::before,
#menu-button .ham-lines::after {
	content: "";
}
#menu-button .ham-lines::before{
	bottom: 24px;
	animation: menu-bar01 .75s forwards;
}
#menu-button .ham-lines::after {
	bottom: 6px;
	animation: menu-bar03 .75s forwards;
}
#menu-button .ham-text {
	font-size: 12px;
	line-height: 1;
}
#menu-button.is-active .ham-lines span {
	opacity: 0;
}
#menu-button.is-active .ham-lines::before {
	animation: active-menu-bar01 .5s forwards;
}
#menu-button.is-active .ham-lines::after {
	animation: active-menu-bar03 .5s forwards;
}
@keyframes menu-bar01 {
	0% {
		transform: translateY(9px) rotate(45deg);
	}
	50% {
		transform: translateY(9px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}
@keyframes menu-bar03 {
	0% {
		transform: translateY(-9px) rotate(-45deg);
	}
	50% {
		transform: translateY(-9px) rotate(0);
	}
	100% {
		transform: translateY(0) rotate(0);
	}
}
@keyframes active-menu-bar01 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(9px) rotate(0);
	}
	100% {
		transform: translateY(9px) rotate(45deg);
	}
}
@keyframes active-menu-bar03 {
	0% {
		transform: translateY(0) rotate(0);
	}
	50% {
		transform: translateY(-9px) rotate(0);
	}
	100% {
		transform: translateY(-9px) rotate(-45deg);
	}
}
/* Mobile Header Menu Container */
nav.nav-off{
	display:none;
}
#main-menu-container.is-active {
    position: fixed;
    z-index: 700;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    overflow-y: auto;
    background-color: #ec5285;
    color: #fff;
    display: block;
}
/* Header Main Menu */
#main-menu-container.is-active .main-menu,
#main-menu-container.is-active .sub-menu {
	margin: 0;
	list-style: none;
}
#main-menu-container.is-active .menu-item {
	margin: 0;
	padding: 8px 0 0 16px;
}
#main-menu-container.is-active .main-menu {
	position: static;
	width: 100%;
	max-width: 94%;
	margin: 0 auto 16px;
	padding: 0;
	border: none;
	border-radius: 0;
	background-color: transparent;
	box-shadow: none;
}
#main-menu-container.is-active .main-menu>li {
	margin: 0 16px;
	padding: 8px;
	border-bottom: dotted 1px #ccc;
}
#main-menu-container.is-active .main-menu>li:last-of-type {
	border-bottom: none;
}
#main-menu-container.is-active .main-menu li a {
	font-size: 16px;
	line-height: 2;
	color: #111;
}

@media screen and (max-width: 1024px) { /* mobile visibility changes for max-width */
	#menu-button{
		visibility:visible;
		opacity:1;
	}
	#main-menu-container:not(.is-active){
		display:none;
	}
	
	/**menu**/
	#headerwrap #main-menu-container li a {
		display: block;
		color: #fff;
		padding: 10px;
	}
	#headerwrap #main-menu-container li a:hover {
		opacity:0.7;
	}
	#headerwrap #main-menu-container li {
		float: none;
		text-align: center;
		padding: 0;
	}
	#headerwrap #main-menu-container ul {
		display:block;
		max-width: 94%;
		margin: 0 auto;
		padding: 10% 0;
	}
	#headerwrap #main-menu-container li a:hover, #headerwrap #main-menu-container li.current-menu-item a {
		color: #fff;
	}
	
	
	/**sub*/
	#headerwrap #main-menu-container li .sub-menu {
		position: static;
		display: block;
		width: 100%;
		background: rgb(255 255 255 / 50%);
		padding: 0;
		max-width: 100%;
		margin-top: 0;
	}
	#headerwrap #main-menu-container li .sub-menu li a {
		padding: 5px 0;
		text-decoration: none;
	}
	#headerwrap #main-menu-container li .sub-menu li {
		display: block;
		width: 100%;
		padding: 0;
	}
	
	
	
}

/* === mobile menu end === */
.sp-br{
	display: none;
}


/* =============================================

	Media Query

============================================= */

@media screen and (max-width: 1024px) { 
	
	/**header*/
	
	
	/**footer*/
	body #pc-backtop {
		display:none;
	}
	body #footer .sp-footer-icons-container a {
		background:#fd7a42;
		color:#fff;
		text-decoration:none;
		border-color:#fff;
		min-height:50px;
	}
	#pagewrap .sp-footer-icons-container {
		display:flex;
	}
	#footerwrap {
		margin-bottom:50px;
	}
	body #footer .sp-footer-icons-container svg {
		fill:#fff;
	}
	
	/*LP*/
	.ro-lp,.ro1-lp,.te-lp.module,.ro2-lp,.te1-lp.module,.ro3-lp {
		padding-left:3%;
		padding-right:3%;
	}
	
	
	
}


@media screen and (max-width: 939px) {

}


@media screen and (max-width: 768px) {

	
}


@media screen and (max-width: 680px) {
	
	
	
	/***/
	.module-image {
		text-align:center;
	}
	#pagewrap .module-gallery .gallery-item {
		width:49.25%;
		margin: 0 1.5% 1.5% 0;
		float:left;
	}
	#pagewrap .module-gallery .gallery-item:nth-of-type(2n) {
		margin-right:0;
	}
  	#pagewrap .gallery-columns-3 .gallery-item:nth-of-type(3n + 1) {
		clear:none;
	}
	.module .module-gallery-grid {
		display:block;
	}
	
	/**LP*/
	#pagewrap .bg-main {
		background:url(../../uploads/bg-main-sp_01.jpg)no-repeat center bottom;
		background-size:cover;
	}
	.im-main.module {
		width:304px;
		max-width:80%;
		margin:0 auto 20px;
		z-index:20;
	}
	.im1-main.module {
		width:170px;
		max-width:80%;
		margin:0 auto 10px;
		z-index:20;
	}
	#pagewrap .abs-main {
		position: absolute;
		top: 83px;
		left: -3%;
		z-index:11;
		max-width: 48%;
	}
	#pagewrap .abs1-main {
		position: absolute;
		top: 81px;
		right: -3%;
		z-index:11;
		max-width: 48%;
	}
	
	/***/
	#pagewrap .bg1-lp {
		padding-bottom: 30px;
	}
	#pagewrap .bg1-lp,#pagewrap .bg2-lp,#pagewrap .bg5-lp,#pagewrap .bg02-ed-sp {
		background: #fff7d6;
	}
	.t-lp.module .sub-head {
		font-size: 19px;
		display:block;
		padding:0;
	}
	#pagewrap .t-lp .sub-head:before, #pagewrap .t-lp .sub-head:after {
		display:none;
	}
	.ul2-lp li {
		font-size: 17px;
		margin-bottom: 25px;
		padding:0;
		padding-left: 40px;
	}
	.ul2-lp li:before {
		padding: 2px 5px 1px;
		width: 26px;
		font-size: 14px;
	}
	.ul1-lp li {
		font-size:14px;
		padding-top:10px;
	}
	.ul1-lp.module {
		width:64px;
		max-width:100%;
		margin-left:auto;
		margin-right:auto;
	}
	.ro-ed-sp {
		max-width:295px;
		margin:0 auto;
	}
	.ro-lp,.ro2-lp {
		background: none;
		padding-left:0;
		padding-right:0;
		border-radius: 0;
	}
	.ro2-lp {
		margin-bottom:0;
	}
	#pagewrap .bg01-ed-sp,#pagewrap .bg-sp {
		background:#fff;
	}
	.te-lp.module {
		font-size: 17px;
		text-shadow: 0 0 5px BLACK;
	}
	.te1-lp.module {
		font-size:15px;
	}
	.f15-sp.module {
		font-size:15px;
	}
	.ro2-lp {
		border-radius:0;
	}
	.ro-chan .subrow_inner {
		display:flex;
		flex-direction:column-reverse;
	}
	#pagewrap .abs01 {
		right: 0;
		max-width: 80%;
	}
	.sp-br{
		display: block;
	}
	.pc-br{
		display: none;
	}
	.im1-lp.module.tb_a3gt116 {
		padding: 15px 3%;
	}
	
/* 	by fujimoto */
	#pagewrap .br_no br {
		display: none
	}
	
	#pagewrap br.br_spon {
		display: block;
	}
}




