@charset "utf-8";
@import url(//use.fontawesome.com/releases/v5.0.11/css/all.css);

/*--------------------------------------------
	 BASE
--------------------------------------------*/

@media print {
#hbgNavi {
	display: none;
}
}
.hoverOpc {
	background: #fff;
}
.hoverOpc img {
	transition: 0.3s ease;
}
.over {
	transition: 0.4s ease-in-out;
}
@media screen and (min-width : 768px ) {
.over:hover {
	opacity: 0.7;
}
}
.ios .over:hover, .ios .over:active, .ios .over:link, .ios .over:visited, .ios .over::focus {
 opacity:1;
}
.cf:after {
	content: "";
	clear: both;
	display: block;
	height: 0;
}
:root .cf::after { /* IE9 */
	content: ""\9;
	clear: both\9;
	display: block\9;
	height: 0\9;
}

@media print, screen and (min-width : 768px ) {
.for_sp {
	display: none !important;
}
}

@media screen and (max-width : 767px ) {
.for_pc {
	display: none !important;
}
}
*, *:before, *:after {
	box-sizing: border-box;
}
html {
	-webkit-text-size-adjust: 100%;
}
body {
	width: 100%;
	min-width: 1250px;
	height: auto;
	color: #333333;
	font-size: 16px;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 400;
	line-height: 1.9;
	position: relative;
	background-color: #fff;
	letter-spacing: 0.05em;
}
a {
	text-decoration: none;
	color: #333333;
 //transition: 0.3s;
}
table {
	width: 100%;
}
ul.decimal li {
	list-style-type: decimal;
}
ul.disc li {
	list-style-type: disc;
}
/*--------------------------------------------
	共通パーツ
--------------------------------------------*/
/*レイアウト*/
.Inner {
	max-width: 1200px;
	margin: 0 auto;
}
.container {
	padding: 150px 0;
	position: relative;
	z-index: 0;
}
.sec_second {
	padding: 70px 0;
}
.sec_second:last-child {
	padding-bottom: 0;
}
.gInner_second {
	max-width: 900px;
	margin: 0 auto;
}
.cnt_inner {
	width: 90%;
	margin: 0 auto;
}
.flex {
	display: flex;
}
.flex_list {
	display: flex;
	flex-wrap: wrap;
}
.flex_between {
	display: flex;
	justify-content: space-between;
}
.flex_wrap {
	display: flex;
	flex-wrap: wrap;
}
.flex_wrap_between {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}
.flex_wrap .l_box {
	order: 1;
}
.flex_wrap .r_box {
	order: 2;
}
.flex_center {
	align-items: center;
}
.flex_container {
	display: flex;
	flex-direction: row;
}
.flex_wrap .r_box {
	width: 50%;
}
.flex_wrap .l_box {
	width: 50%;
}
.ls {
	letter-spacing: -0.03em;
}
.ofi {
	height: 100%;
	object-fit: cover;
	font-family: 'object-fit: cover;'
}
/*数が固定のリスト*/
.list_fix {
	display: flex;
	flex-direction: row;
}
.list_fix .list_item:last-child {
	margin-right: 0;
}

@media only screen and (max-width:767px) {
.list_fix {
	display: flex;
	flex-direction: column;
}
.list_fix .list_item {
	margin-right: 0;
}
}

@media only screen and (min-width:768px) {
.pc_w50 {
	width: 50%;
}
.pc_flex_wrap {
	display: flex;
	flex-wrap: wrap;
}
.pc_flex {
	display: flex;
}
}
/*font*/
.font_min {
	font-family: 'Noto Serif JP', serif;
}
.font_pop {
	font-family: 'Poppins', sans-serif;
}
/*セクションの配色*/
.bg_yellow {
	background-color: #fff09a;
}
.bg_orange {
	background-color: #ffce9e;
}
/*カラー*/

/*ボタン*/



.btn a {
	display: block;
	position: relative;
	line-height: 1;
	transition: 0.3s ease-in-out;
}

.btn_primary {
	font-size: 18px;
	position: relative;
	padding: 17px 0;
	border-radius: 47px;
	background: #fff;
	max-width: 400px;
	border: solid 3px #fabe00;
	text-align: center;
}
.btn_primary.orange {
	border-color: #ff942c;
}
.btn.btn_boshu span {
	font-size: 18px;
	font-weight: 500;
	line-height: 1;
	margin-top: 10px;
	display: block;
}
.btn.btn_contact span {
	display: block;
}
.btn.btn_contact .btn_txt {
	color: #fabe00;
	font-size: 20px;
	line-height: 1;
	font-weight: 500;
}
.btn.btn_contact .btn_txt.orange {
	color: #ff942c;
}
.btn.btn_contact .btn_txt:before {
	content: "\f0e0";
    font-family: "Font Awesome 5 Free";
	margin-right: 10px;
}
.btn.btn_contact .btn_txt_bottom {
	font-size: 14px;
	line-height: 1;
	margin-top: 12px;
}

.icon_link {
	padding-right: 20px;
	position: relative;
}
.icon_link:before {
	content: '';
	background: url(../Image/icon_link.png) no-repeat;
	position: absolute;
	right: 0;
	top: 50%;
	transform: translateY(-50%);
	    width: 16px;
    height: 15px;
    background-size: contain;
}
/*hover*/

@media print, screen and (min-width : 768px ) {
.btn_primary:hover {
	opacity: 0.7;
}
}

/*タイトル*/
.ttl_01 {
	font-size: 38px;
	margin-bottom: 60px;
	line-height: 1;
	position: relative;
	text-align: center;
}
.ttl_01.en {
	font-family: 'Lato', sans-serif;
	font-weight: 700;
}
.ttl_01:before {
	content: '';
	font-family: 'Poppins', sans-serif;
	font-size: 117px;
	letter-spacing: 0.1em;
	color: #fff7c9;
	position: absolute;
	bottom: 10px;
	left: 50%;
	transform: translateX(-50%);
	z-index: -1;
	width: 100%;
}
.ttl_01.en:before {
	content: none;
}
.ttl_02 {
	
}


/*--------------------------------------------
	HEADER
--------------------------------------------*/
header {
	position: absolute;
	top: 0;
	left: 0;
	background: transparent;
	width: 100%;
	z-index: 100;
}


header .h_left h1 {
	font-size: 14px;
	line-height: 1;
	margin-top: 15px;
	font-weight: 400;
	letter-spacing: 0.1em;
}
header .h_nav {
	display: flex;
	align-items: center;
}

.drawer-open .drawer-overlay {
	display: none;
}
/*g-navi*/
header .g_nav {
	margin-right: 25px;
}
header .g_nav ul {
	display: flex;
}
header .g_nav ul li {
	margin: 0 25px;
	position: relative;
}
header .g_nav ul li:after {
	content: '';
	background: url(../Image/nav_line.png);
	position: absolute;
	right: -25px;
	top: 50%;
	transform: translateY(-5px);
	display: block;
	    width: 5px;
    height: 5px;
}
header .g_nav ul li:last-child:after {
	display: none;
}
header .g_nav ul li:first-child {
	margin-left: 0;
}
header .g_nav .nav_item {
	display: block;
	font-size: 15px;
	line-height: 1;
}
header .g_nav .nav_item:after {
	content: '';
	width: 100%;
	height: 1px;
	transform: scale(0);
	display: block;
	transition: 0.3s ease-in-out;
	background: #ea69a3;
	margin-top: 5px;
}




/*drawer*/
.drawer-hamburger {
	padding: 0;
	width: 56px;
	height: 56px;
	border-radius: 50%;
	background: #fff;
	position: fixed;
	top: 20px;
	box-shadow: 0 1px 6px 2px rgba(0,0,0,0.2);
}
.drawer--right .drawer-hamburger {
	right: 30px;
}
.drawer-hamburger-icon, .drawer-hamburger-icon:before, .drawer-hamburger-icon:after {
	background-color: #ff942c;
	width: 35px;
}

.drawer-hamburger-icon {
	margin-top: 0;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}


.drawer--right.drawer-open .drawer-hamburger:hover .drawer-hamburger-icon {
	background: transparent;
}
.drawer--right .drawer-nav {
	right: -100%;
	/*-webkit-transition: 1.8s cubic-bezier(0.190, 1.000, 0.220, 1.000);
    transition: 1.8s cubic-bezier(0.190, 1.000, 0.220, 1.000);*/
}
.drawer--right .drawer-nav {
	width: 50%;
}

.drawer--right.drawer-open .drawer-nav {
	right: 0%;
}
.drawer--right.drawer-open .drawer-hamburger {
	z-index: 999;
    
}
.drawer--right.drawer-open .header_wrap .h_logo {
	display: none;
}

.drawer-nav {
	background: #fff;
}

.drawer--right .drawer-menu {
	padding: 20px 20px;
}
.drawer-overlay {
	background-color: transparent;
}
.drawer-menu .h_logo {
	text-align: center;
	margin-top: 10vh;
}
.drawer-menu li {
	border-bottom: solid 1px #dddddd;
	width: 400px;
	margin: 0 auto;
	text-align: center;
}
.drawer-menu li a {
	color: #333;
	font-weight: 500;
	font-size: 15px;
	display: block;
	padding: 15px 0;
}
.drawer-menu nav {
	padding-top: 100px;
}
.drawer-menu .btn.btn_contact {
	margin-top: 35px;
}
.drawer-menu .btn.btn_contact a {
	margin: 0 auto;
}
@media screen and (min-width : 768px ) {


	.drawer-hamburger:hover {
    cursor: pointer;
    background-color: #ff942c;
}
	 .drawer-hamburger:hover .drawer-hamburger-icon,
.drawer-hamburger:hover .drawer-hamburger-icon:before, 
.drawer-hamburger:hover .drawer-hamburger-icon:after {
	background: #fff;
}

}
/*--------------------------------------------
	FOOTER
--------------------------------------------*/
footer {
	margin-top: 30px;
	background: #f6f6f6;
}

footer .tel {
	margin-right: 55px;
}
footer .f_inner {
	padding: 30px 0;
	display: flex;
	    justify-content: space-between;
}
footer .f_left {
	display: flex;
}
footer .f_left .f_logo {
	margin-right: 20px;
}
footer .f_right .f_right_wrap {
	display: flex;
	justify-content: space-between;
	align-items: center;
}

footer .f_nav ul {
	display: flex;
}

footer .f_nav_item {
	font-size: 15px;
	margin-right: 50px;
	line-height: 1;
	display: block;
	padding-right: 18px;
	position: relative;
}
footer .f_nav li:last-child .f_nav_item {
	margin-right: 0;
}
footer .f_nav_item:after {
	content: '';
	background: url(../Image/icon_link.png) no-repeat;
	width: 13px;
	height: 12px;
	position: absolute;
	right: 0;
}
footer li:last-child .f_nav_item {
	margin-right: 0;
}
footer .f_right .f_right_wrap .f_sns .item {
	display: inline-block;
	width: 30px;
	height: 30px;
	transition: 0.4s ease-in-out;
}
footer .f_right .f_right_wrap .f_sns .item:nth-child(2){
	margin-left: 0.5em;
}
footer .f_right .f_right_wrap .f_sns {
	
}
footer .copy {
	font-size: 14px;
	line-height: 1;
	margin-top: 20px;
}

@media screen and (min-width : 768px ) {
footer .f_nav_item:hover:after {
	transform: scale(1);
}
footer .f_right .f_right_wrap .f_sns .item:hover {
	opacity: 0.7
}
}
.totop {
	width: 55px;
	height: 55px;
	transition: 0.4s ease-in-out;
	cursor: pointer;
	background-color: #fabe00;
	position: fixed;
	right: 30px;
	bottom: 30px;
	border-radius: 50%;
	text-align: center;
	opacity: 0;
	color: #fff;
	border: 1px solid #fabe00;
}
.totop.visible {
	opacity: 1;
}


.totop a {
	display: block;
}
.totop i {
	line-height: 55px;
	font-size: 20px;
	color: #fff;
}
@media only screen and (min-width:768px) {
.totop:hover {
		background: #fff;
	
	}
	.totop:hover i {
		color: #fabe00;
	}
.fadeUp {
	opacity: 0;
	transform: translateY(30px);
	transition: 1s ease-in-out;
}
.fadeRight {
	opacity: 0;
	transform: translateX(50px);
	transition: 1s ease-in-out;
}
.fadeRight.inview_active {
	opacity: 1;
	transform: translateX(0);
}
.fadeLeft {
	opacity: 0;
	transform: translateX(-50px);
	transition: 1s ease-in-out;
}
.fadeLeft.inview_active {
	opacity: 1;
	transform: translateX(0);
}
.fadeUp.inview_active {
	opacity: 1;
	transform: translateY(0px);
}
.fadeUp.delay01 {
	transition-delay: 0.3s;
}
.fadeUp.delay02 {
	transition-delay: 0.6s;
}
.fadeUp.delay03 {
	transition-delay: 0.9s;
}
.fadeUp.delay04 {
	transition-delay: 1.2s;
}
.fadeUp.delay05 {
	transition-delay: 1.5s;
}
.fadeUp.delay06 {
	transition-delay: 1.8s;
}
.fadeUp.delay08 {
	transition-delay: 2s;
}
}
@media screen and (min-width : 768px ) {

}
