body div,body span,body object,body iframe,body h1,body h2,body h3,body h4,body h5,body h6,body p,body blockquote,body pre,body abbr,body address,body cite,body code,body del,body dfn,body em,body img,body ins,body kbd,body q,body samp,body small,body strong,body sub,body sup,body var,body b,body i,body dl,body dt,body dd,body ol,body ul,body li,body fieldset,body form,body label,body legend,body table,body caption,body tbody,body tfoot,body thead,body tr,body th,body td,body article,body aside,body canvas,body details,body figcaption,body figure,body footer,body header,body hgroup,body menu,body nav,body section,body summary,body time,body mark,body audio,body video{margin:0;padding:0;border:0;outline:0;vertical-align:baseline;background:transparent;font-weight:normal;}
body article,body aside,body details,body figcaption,body figure,body footer,body header,body hgroup,body menu,body nav,body section{display:block;}
body nav,body ul{list-style:none;}
body blockquote,body q{quotes:none;}
body blockquote:before,body blockquote:after,body q:before,body q:after{content:'';content:none;}
body a{margin:0;padding:0;font-size:100%;vertical-align:baseline;background:transparent;}
body ins{background-color:#ff9;color:#000;text-decoration:none;}
body mark{background-color:#ff9;color:#000;font-style:italic;font-weight:bold;}
body del{text-decoration:line-through;}
body abbr[title],body dfn[title]{border-bottom:1px dotted;cursor:help;}
body table{border-collapse:collapse;border-spacing:0;}
body hr{display:block;height:1px;border:0;border-top:1px solid #cccccc;margin:1em 0;padding:0;}
body input,body select{vertical-align:middle;}
body img{vertical-align:bottom;max-width:100%;}
body a,body img a{-moz-transition-property:width,opacity,transform,background,border,color;-webkit-transition-property:width,opacity,transform,background,border,color;-o-transition-property:width,opacity,transform,background,border,color;-ms-transition-property:width,opacity,transform,background,border,color;transition-property:width,opacity,transform,background,border,color;
-moz-transition-duration:0.5s;-webkit-transition-duration:0.5s;-o-transition-duration:0.5s;-ms-transition-duration:0.5s;transition-duration:0.5s;}
body a,body span{ color:inherit; font-size:inherit; font-weight:inherit;}
body *{ box-sizing:border-box;}
body{ box-sizing:border-box;}
body{font-family: 'Noto Sans JP'; margin:auto; padding:0; }

@media all and (max-width: 750px) {
	.pc{ display:none;}
	body{ font-size:16px;}
}
@media all and (min-width: 751px) {
	.spi{ display:none;}
	body{ font-size:1.6vw;}
}
@media all and (min-width: 751px) and (max-width: 1024px) {
	body{ font-size:16px;}
	body{width: 1024px;;}
}
@media all and (min-width: 1025px) and (max-width: 1280px) {
	body{ font-size:1.5625vw;}
}
@media all and (min-width: 1280px) {
	body{ font-size:20px;}
}

@font-face {font-family: 'Noto Sans JP';font-weight: 700;
src: local("Noto Sans JP Bold"),
		url("../font/NotoSansJP-Bold.woff2") format('woff2'),
		url("../font/NotoSansJP-Bold.woff") format('woff'),
		url("../font/NotoSansJP-Bold.otf") format('opentype')}

@font-face {font-family: 'Noto Sans JP';font-weight: 600;
src: local("Noto Sans JP Medium"),
		url("../font/NotoSansJP-Medium.woff2") format('woff2'),
		url("../font/NotoSansJP-Medium.woff") format('woff'),
		url("../font/NotoSansJP-Medium.otf") format('opentype')}

@font-face {font-family: 'Noto Sans JP';font-weight: 400;
src: local("Noto Sans JP Regular"),
		url("../font/NotoSansJP-Regular.woff2") format('woff2'),
		url("../font/NotoSansJP-Regular.woff") format('woff'),
		url("../font/NotoSansJP-Regular.otf") format('opentype')}

@font-face {font-family: 'Noto Sans JP';font-weight: 300;
src: local("Noto Sans JP Light"),
		url("../font/NotoSansJP-Light.woff2") format('woff2'),
		url("../font/NotoSansJP-Light.woff") format('woff'),
		url("../font/NotoSansJP-Light.otf") format('opentype')}


#body .co_wrap{ max-width: 1280px; width: 100%; margin: auto;}


#header{ font-size: 0.8em;}

#header .fixed_wrap{}

#header .logo_wrap{ width: 100%; margin:0 auto; padding:1.5em 3% 1em; display:flex;justify-content:space-between;align-items:flex-end;}
#header .logo_wrap .logo{ width: 300px; margin-right: 30px;}
#header .logo_wrap .link_wrap{display:flex;justify-content:space-between;align-items:flex-end;}
#header .logo_wrap .link_wrap a{ display: block; margin:0 0 0.2em 2em; text-decoration: none; position: relative;}
#header .logo_wrap .link_wrap a::after{ content: ""; width: 0%; height: 1px; background: #000; position: absolute; left: 0; bottom:0%;transition-property : width;	transition-duration : 0.4s;}
#header .logo_wrap .link_wrap a:hover::after{width: 100%;}

#header .nav_wrap{ background: #f7931e; color: #FFF;box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);}
#header .nav_wrap .co_wrap{	display:flex;justify-content:space-between;align-items:center;}
#header .nav_wrap .oya{ position: relative; flex: 1;}
#header .nav_wrap .oya h3{position: relative; padding: 0.75em 2em; text-align: center;}
#header .nav_wrap .oya h3::before{ content: ""; width: 0; height: 1.5em; border-left: 1px dotted #FFF; position: absolute; left: 0; top: 0; bottom: 0; margin: auto;}
#header .nav_wrap .oya:last-of-type h3::after{ content: ""; width: 0; height: 1.5em; border-left: 1px dotted #FFF; position: absolute; right: 0; top: 0; bottom: 0; margin: auto;}
#header .nav_wrap ul{ position: absolute; left: 0; top: 100%; width: 100%; padding: 0 1em; text-align: left; background: #f7931e; color: #FFF; z-index: 99; display: none;}
#header .nav_wrap ul li{ line-height: 1.2;  border-bottom: 1px rgba(255,255,255,0.5) dotted;}
#header .nav_wrap ul li:first-of-type{ border-top: 1px rgba(255,255,255,0.5) dotted;}
#header .nav_wrap ul li:last-of-type{ margin-bottom: 0; padding-bottom: 0; border-bottom: none;}
#header .nav_wrap a{ text-decoration: none; padding: 1em 0; display: block; position: relative;}
#header .nav_wrap a:hover{ color: #5555DD;}

.header_fixed #header .nav_wrap{position: fixed;top: 0;left: 0;right: 0;z-index: 9999;}


#header #sp_onoff_btn,
#header .sp_link_wrap{ display: none;}



@media all and (max-width: 750px) {
	#header{}
	#header .fixed_wrap{ height: 64px; display: block;}

	#header .logo_wrap{ background: #FFF; display:block; position: relative; height: 64px; position: fixed; top: 0; left: 0; z-index: 99;box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);}
	#header .logo_wrap .logo{max-width: 300px; width: 230px; margin-right: 0;}
	#header .logo_wrap .link_wrap{display:none;}

	#header #sp_onoff_btn{ display: block;background: #f7931e; width: 65px; height: 100%; position: absolute; right: 0; top: 0;}
	#header #sp_onoff_btn .bar{ display: block; width: 50%; height: 1px; background: #FFF; position: absolute; left: 0; top: 0;right: 0;bottom: 0; margin: auto; transition-property :top,bottom,transform;transition-duration : 0.4s;}
	#header #sp_onoff_btn .bar1{top: -1em;}
	#header #sp_onoff_btn .bar2{}
	#header #sp_onoff_btn .bar3{ bottom: -1em;}

	body.header_sp_on #header #sp_onoff_btn .bar1{top: 0em;transform: rotate(135deg);}
	body.header_sp_on #header #sp_onoff_btn .bar2{top: 0em;transform: rotate(45deg);}
	body.header_sp_on #header #sp_onoff_btn .bar3{bottom: 0em;transform: rotate(135deg);}
	body.header_sp_on{ overflow: hidden;}


	#header .nav_wrap{ display: none; background: #fef1ce; color: #f7931e;box-shadow:none; position: fixed; width: 100%; top: 64px; left: 0; height: calc(100% - 64px); overflow: auto; padding: 0 0 64px; z-index: 99;} 
	#header .nav_wrap .co_wrap{	display:block;width: 100%;;}
	#header .nav_wrap .oya {background: #FFF; width: 94%;margin: 1em auto 0; box-shadow: 3px 3px 0px 0px rgba(0, 0, 0, 0.1);}
	#header .nav_wrap .oya h3{ padding: 0.75em 1em; text-align: left; border-bottom: 3px solid #f7931e; padding-right: 4em; font-weight: bold;}
	#header .nav_wrap .oya h3::before{ content: ""; width: 3em; height: 3px; border-left: none; position: absolute; left: auto; top: auto; bottom: -3px; right: 0; background: #FFC030; margin: auto;}

	#header .nav_wrap .oya .deco{ width: 2.5em; height: 2.5em; position: absolute; right: 0.5em; top: 0.6em;}
	#header .nav_wrap .oya .deco .bar{ display: block; width: 50%; height: 2px; background: #f7931e; position: absolute; left: 0; top: 0;right: 0;bottom: 0; margin: auto; transition-property : transform;transition-duration : 0.4s;}
	#header .nav_wrap .oya .deco .bar1{top: -0;}
	#header .nav_wrap .oya .deco .bar2{top: -0; transform: rotate(90deg);}
	#header .nav_wrap .oya ul{ position: relative; left: 0; top: 0%; width: 100%; background: #EA5; display: none;}
	#header .nav_wrap .oya ul li:first-of-type{ border-top:none;}

	#header .nav_wrap .oya.on .deco .bar1{transform: rotate(180deg);}
	#header .nav_wrap .oya.on .deco .bar2{transform: rotate(180deg);}
	
	#header .sp_link_wrap{ display: block;width: 94%;margin: 2em auto 0;text-align: center;}
	#header .sp_link_wrap a{display: inline-block;color: #FFF;margin: 0em 1% 1em;width: 46%;padding: 0.7em 1em;text-align: center;background: #EA5;}

}



#fixed_bnr{ position: fixed; z-index: 20; width: 4.5em; right: 0; top: 11em; box-shadow: 0 0 0.3em 0 rgba(0, 0, 0, 0.5);}
#fixed_bnr .open_scc{}
#fixed_bnr .open_scc a{display: block;}
#fixed_bnr .sns_wrap{background: #FFF;}
#fixed_bnr .sns_wrap .icon{}
#fixed_bnr .sns_wrap .icon a{ display: block; padding: 0.75em 1.5em 0.75em 0.75em;}
#fixed_bnr .sns_wrap .icon a:hover img{ transform: translateX(10%);}

.header_fixed #fixed_bnr{ top: 5em;}
.header_fixed #line_bnr{ top: 48em;}

@media all and (max-width: 750px) {


#fixed_bnr{ width: 100%; right: 0; top:auto; bottom: 0;}
#fixed_bnr .fixed_wrap{	display:flex;justify-content:space-between;background: #0071bc; height: auto;}
#fixed_bnr .open_scc{ flex: 1;}
#fixed_bnr .open_scc a{}
#fixed_bnr .open_scc img{width: 100%; max-width: 360px;}

#fixed_bnr .sns_wrap{display:flex;justify-content:space-between;align-items:center;}
#fixed_bnr .sns_wrap .icon{}
#fixed_bnr .sns_wrap .icon a{width: 11vw;; max-width: 4em; padding: 0.75em 0.5em 0.75em; margin: 0 0.0em;}
#fixed_bnr .sns_wrap .icon a:hover img{ transform: translateX(0%);}
}


#line_bnr{ position: fixed; right: 0.5em; top: 56em; z-index:20; border-radius: 0.5em; overflow: hidden; box-shadow: 0 0 0.3em 0 rgba(0, 0, 0, 0.5); font-size: 0.8em;;  line-height: 1;}
#line_bnr .close{ position: absolute;width: 2em; height: 100%;left: 0; top: 0; background: #FFF; cursor: pointer;}
#line_bnr .close::before,
#line_bnr .close::after{content: ""; width: 1em; height: 2px; background: #353; position: absolute; right: 0.5em; top: 0; bottom: 0; margin: auto;}
#line_bnr .close::before{transform: rotate(45deg);}
#line_bnr .close::after{transform: rotate(135deg);}
#line_bnr a{display: block; text-decoration: none; padding:0.75em 0.5em 0.25em 2.5em; background:#06C755; font-weight: bold; color: #FFF;}
#line_bnr a img{ width: 4em; display: block;}



@media all and (max-width: 750px) {
#line_bnr{ font-size: 1em; bottom: 6em; left: auto; right: 1em; top: auto;}

}
@media all and (max-width: 420px) {
#line_bnr{ bottom: 4.75em;}
}




#footer .nav_wrap{ font-size: 0.8em;}
#footer .nav_wrap{ background: #fef1ce; padding: 2em 1em;}
#footer .nav_wrap .co_wrap{	display:flex;justify-content:space-between;align-items:flex-start;}
#footer .nav_wrap .oya{ position: relative; flex: 1; margin:0 0.5em;}
#footer .nav_wrap .oya:first-of-type{ margin-left: 0;}
#footer .nav_wrap .oya:last-of-type{ margin-right: 0;}

#footer .nav_wrap .oya h3{position: relative; padding: 0em 0 0.5em; text-align: left; padding-right: 0.5em; font-size: 1.2em; font-weight: 600;}
#footer .nav_wrap .oya h3::after{ content: ""; width: 100%; height: 1px; background: #000; position: absolute;bottom: 0; left: 0;}
#footer .nav_wrap ul{width: 100%; padding: 0; text-align: left; margin-bottom: 1.5em;}
#footer .nav_wrap .oya ul:last-of-type{margin-bottom: 0;}
#footer .nav_wrap ul li{ line-height: 1.2; margin-top: 0.9em; }
#footer .nav_wrap ul li:first-of-type{ border-top: 1px rgba(255,255,255,0.5) dotted;}
#footer .nav_wrap ul li:last-of-type{ margin-bottom: 0; padding-bottom: 0; border-bottom: none;}
#footer .nav_wrap a{ text-decoration: none; display: block; position: relative;}
#footer .nav_wrap a:hover{ color: #5555DD;}


#footer .foot_cont{ padding:1.5em 1em 2em;}
#footer .foot_cont .logo_wrap{ display:flex;justify-content:flex-start;align-items:flex-end;}
#footer .foot_cont .logo_wrap .logo{ width: 300px; margin-right: 30px;}
#footer .foot_cont .logo_wrap .text{}
#footer .foot_cont .copy{ margin: 0.75em auto 0;}




@media all and (max-width: 750px) {
	  
	#footer{padding-bottom: 4em;}
	#footer .nav_wrap{ display: none;}
	#footer .nav_wrap .co_wrap{	display:block;}
	#footer .nav_wrap .oya{ margin:0 auto 0;}
	#footer .nav_wrap .oya h3{margin:0 auto 0;}
	#footer .nav_wrap ul{margin-bottom: 2em;}
	#footer .nav_wrap .oya ul:last-of-type{margin-bottom: 2em;}
	#footer .nav_wrap .oya ul li br{ display: none;}


	#footer .foot_cont{ padding:0;}
	#footer .foot_cont .logo_wrap{ display:block; background: #fef1ce;padding:1.5em 1em 1em;text-align: center;}
	#footer .foot_cont .logo_wrap .logo{ max-width: 300px; margin: 0 auto 0; padding-right: 0%; width: 90%;}
	#footer .foot_cont .logo_wrap .text{ margin-top: 0.5em; font-size: 0.9em; text-align: center;}
	#footer .foot_cont .copy{ margin: 0 auto 0; font-size: 0.8em;padding:0.75em 1em 1em; }
}




/*
body .flex_wrap{
display:flex;justify-content:space-between;align-items:center;
}
*/

/*
transition-property : width;
transition-duration : 1s;
transition-timing-function : linear;
transition-delay : 0s;

-moz-transform: translateY(-50%);
-webkit-transform: translateY(-50%);
-o-transform: translateY(-50%);
-ms-transform: translateY(-50%);
transform: translateY(-50%); 
*/
